invcot (example 3.9)

Time bar (total: 12.5s)

analyze10.0ms (0.1%)

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 11 computations (31.3% saved)

Precisions
Click to see histograms. Total time spent on operations: 7.0ms
...c/correct-round.rkt:119:19: 4.0ms (60.5% of total)
ival-div: 1.0ms (15.1% of total)
ival-tan: 1.0ms (15.1% of total)
ival-sub: 0.0ms (0% of total)
ival-and: 0.0ms (0% of total)
const: 0.0ms (0% of total)
backward-pass: 0.0ms (0% of total)
ival-<: 0.0ms (0% of total)

sample7.2s (57.7%)

Results
5.1s4439×2valid
1.1s1341×3valid
540.0ms2423×1valid
6.0ms53×0valid
Precisions
Click to see histograms. Total time spent on operations: 6.1s
ival-tan: 4.7s (77.4% of total)
ival-div: 509.0ms (8.3% of total)
...c/correct-round.rkt:119:19: 293.0ms (4.8% of total)
backward-pass: 267.0ms (4.4% of total)
ival-sub: 159.0ms (2.6% of total)
ival-<: 116.0ms (1.9% of total)
const: 19.0ms (0.3% of total)
ival-and: 18.0ms (0.3% of total)
Bogosity

preprocess40.0ms (0.3%)

Algorithm
egg-herbie
Rules
156×fnmadd-define
138×sum3-define
112×fma-lowering-fma.f32
112×fnmsub-define
112×fmsub-define
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01217
13116
26615
314915
430315
547215
651515
752315
065
1135
2215
3325
4465
5835
61535
72495
83495
94855
106075
116395
06395
Stop Event
iter limit
saturated
saturated
Calls
Call 1
Inputs
(- (/ 1 x) (/ 1 (tan x)))
Outputs
(- (/ 1 x) (/ 1 (tan x)))
(+.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal -1 binary64) (tan.f64 x)))
Call 2
Inputs
(- (/ 1 x) (/ 1 (tan x)))
(- (/ 1 (neg x)) (/ 1 (tan (neg x))))
(neg (- (/ 1 (neg x)) (/ 1 (tan (neg x)))))
Outputs
(- (/ 1 x) (/ 1 (tan x)))
(- (recip x) (cot x))
(- (/ 1 (neg x)) (/ 1 (tan (neg x))))
(- (cot x) (recip x))
(neg (- (/ 1 (neg x)) (/ 1 (tan (neg x)))))
(- (recip x) (cot x))
Symmetry

(negabs x)

explain536.0ms (4.3%)

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-x
00-0-(/.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)
Results
320.0ms252×2valid
133.0ms96×3valid
35.0ms162×1valid
0.0ms0valid
Compiler

Compiled 51 to 20 computations (60.8% saved)

Precisions
Click to see histograms. Total time spent on operations: 384.0ms
ival-tan: 320.0ms (83.4% of total)
ival-div: 35.0ms (9.1% of total)
backward-pass: 19.0ms (5% of total)
ival-sub: 8.0ms (2.1% of total)
const: 2.0ms (0.5% of total)

eval0.0ms (0%)

Compiler

Compiled 9 to 7 computations (22.2% saved)

prune1.0ms (0%)

Alt Table
Click to see full alt table
StatusAccuracyProgram
7.0%
(-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal 1 binary64) (tan.f64 x)))
Compiler

Compiled 9 to 6 computations (33.3% saved)

simplify21.0ms (0.2%)

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
156×fnmadd-define
138×sum3-define
112×fma-lowering-fma.f32
112×fnmsub-define
112×fmsub-define
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0613
11313
22113
33213
44613
58313
615313
724913
834913
948513
1060713
1163913
063913
Stop Event
iter limit
saturated
Calls
Call 1
Inputs
(- (/ 1 x) (/ 1 (tan x)))
(/ 1 x)
1
x
(/ 1 (tan x))
(tan x)
Outputs
(- (/ 1 x) (/ 1 (tan x)))
(+.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal -1 binary64) (tan.f64 x)))
(/ 1 x)
(/.f64 #s(literal 1 binary64) x)
1
#s(literal 1 binary64)
x
(/ 1 (tan x))
(/.f64 #s(literal 1 binary64) (tan.f64 x))
(tan x)
(tan.f64 x)

localize252.0ms (2%)

Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
accuracy100.0%
(/.f64 #s(literal 1 binary64) x)
accuracy100.0%
(tan.f64 x)
accuracy100.0%
(/.f64 #s(literal 1 binary64) (tan.f64 x))
accuracy7.1%
(-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal 1 binary64) (tan.f64 x)))
Results
179.0ms126×2valid
41.0ms48×3valid
19.0ms81×1valid
0.0ms0valid
Compiler

Compiled 21 to 7 computations (66.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 200.0ms
ival-tan: 173.0ms (86.4% of total)
ival-div: 13.0ms (6.5% of total)
backward-pass: 9.0ms (4.5% of total)
ival-sub: 4.0ms (2% of total)
const: 1.0ms (0.5% of total)

series4.0ms (0%)

Counts
4 → 48
Calls
Call 1
Inputs
#<alt (- (/ 1 x) (/ 1 (tan x)))>
#<alt (/ 1 x)>
#<alt (/ 1 (tan x))>
#<alt (tan x)>
Outputs
#<alt (* 1/3 x)>
#<alt (* x (+ 1/3 (* 1/45 (pow x 2))))>
#<alt (* x (+ 1/3 (* (pow x 2) (+ 1/45 (* 2/945 (pow x 2))))))>
#<alt (* x (+ 1/3 (* (pow x 2) (+ 1/45 (* (pow x 2) (+ 2/945 (* 1/4725 (pow x 2))))))))>
#<alt (* -1 (/ (cos x) (sin x)))>
#<alt (- (/ 1 x) (/ (cos x) (sin x)))>
#<alt (- (/ 1 x) (/ (cos x) (sin x)))>
#<alt (- (/ 1 x) (/ (cos x) (sin x)))>
#<alt (* -1 (/ (cos x) (sin x)))>
#<alt (- (/ 1 x) (/ (cos x) (sin x)))>
#<alt (- (/ 1 x) (/ (cos x) (sin x)))>
#<alt (- (/ 1 x) (/ (cos x) (sin x)))>
#<alt (/ 1 x)>
#<alt (/ 1 x)>
#<alt (/ 1 x)>
#<alt (/ 1 x)>
#<alt (/ 1 x)>
#<alt (/ 1 x)>
#<alt (/ 1 x)>
#<alt (/ 1 x)>
#<alt (/ 1 x)>
#<alt (/ 1 x)>
#<alt (/ 1 x)>
#<alt (/ 1 x)>
#<alt (/ 1 x)>
#<alt (/ (+ 1 (* -1/3 (pow x 2))) x)>
#<alt (/ (+ 1 (* (pow x 2) (- (* -1/45 (pow x 2)) 1/3))) x)>
#<alt (/ (+ 1 (* (pow x 2) (- (* (pow x 2) (- (* -2/945 (pow x 2)) 1/45)) 1/3))) x)>
#<alt (/ (cos x) (sin x))>
#<alt (/ (cos x) (sin x))>
#<alt (/ (cos x) (sin x))>
#<alt (/ (cos x) (sin x))>
#<alt (/ (cos x) (sin x))>
#<alt (/ (cos x) (sin x))>
#<alt (/ (cos x) (sin x))>
#<alt (/ (cos x) (sin x))>
#<alt x>
#<alt (* x (+ 1 (* 1/3 (pow x 2))))>
#<alt (* x (+ 1 (* (pow x 2) (+ 1/3 (* 2/15 (pow x 2))))))>
#<alt (* x (+ 1 (* (pow x 2) (+ 1/3 (* (pow x 2) (+ 2/15 (* 17/315 (pow x 2))))))))>
#<alt (/ (sin x) (cos x))>
#<alt (/ (sin x) (cos x))>
#<alt (/ (sin x) (cos x))>
#<alt (/ (sin x) (cos x))>
#<alt (/ (sin x) (cos x))>
#<alt (/ (sin x) (cos x))>
#<alt (/ (sin x) (cos x))>
#<alt (/ (sin x) (cos x))>
Calls

12 calls:

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

rewrite174.0ms (1.4%)

Algorithm
batch-egg-rewrite
Rules
2244×/-lowering-/.f32
2244×/-lowering-/.f64
2150×*-lowering-*.f32
2150×*-lowering-*.f64
752×sum5-define
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0611
13511
218511
3104011
0801811
Stop Event
iter limit
node limit
Counts
4 → 476
Calls
Call 1
Inputs
(- (/ 1 x) (/ 1 (tan x)))
(/ 1 x)
(/ 1 (tan x))
(tan x)
Outputs
(+.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal -1 binary64) (tan.f64 x)))
(+.f64 (/.f64 #s(literal 1 binary64) x) (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 x (tan.f64 x))) (-.f64 #s(literal 0 binary64) x)))
(+.f64 (/.f64 #s(literal 1 binary64) x) (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 x (tan.f64 x))) (+.f64 (-.f64 #s(literal 0 binary64) x) (*.f64 x #s(literal 0 binary64)))))
(+.f64 (/.f64 #s(literal 1 binary64) x) (*.f64 (+.f64 (-.f64 #s(literal 0 binary64) x) (*.f64 x #s(literal 0 binary64))) (/.f64 #s(literal 1 binary64) (*.f64 x (tan.f64 x)))))
(+.f64 (+.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal -1 binary64) (tan.f64 x))) #s(literal 0 binary64))
(+.f64 (+.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal -1 binary64) (tan.f64 x))) (fma.f64 (cos.f64 x) (/.f64 #s(literal -1 binary64) (sin.f64 x)) (/.f64 #s(literal 1 binary64) (tan.f64 x))))
(+.f64 (+.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal -1 binary64) (tan.f64 x))) (fma.f64 (/.f64 #s(literal 1 binary64) x) #s(literal 1 binary64) (/.f64 #s(literal -1 binary64) x)))
(+.f64 (+.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal -1 binary64) (tan.f64 x))) (fma.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal -1 binary64) x)))
(+.f64 (+.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal -1 binary64) (tan.f64 x))) (fma.f64 (/.f64 #s(literal -1 binary64) x) #s(literal -1 binary64) (/.f64 #s(literal -1 binary64) x)))
(+.f64 (+.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal -1 binary64) (tan.f64 x))) (fma.f64 #s(literal -1 binary64) (/.f64 #s(literal -1 binary64) x) (/.f64 #s(literal -1 binary64) x)))
(+.f64 (+.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal -1 binary64) (tan.f64 x))) (fma.f64 (/.f64 #s(literal -1 binary64) (*.f64 x (tan.f64 x))) x (/.f64 #s(literal 1 binary64) (tan.f64 x))))
(+.f64 (+.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal -1 binary64) (tan.f64 x))) (fma.f64 (/.f64 x (-.f64 #s(literal 0 binary64) (tan.f64 x))) (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal 1 binary64) (tan.f64 x))))
(+.f64 (+.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal -1 binary64) (tan.f64 x))) (fma.f64 (/.f64 #s(literal -1 binary64) x) (/.f64 x (tan.f64 x)) (/.f64 #s(literal 1 binary64) (tan.f64 x))))
(+.f64 (+.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal -1 binary64) (tan.f64 x))) (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 x (tan.f64 x))) (*.f64 x #s(literal 0 binary64))))
(+.f64 (+.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal -1 binary64) (tan.f64 x))) (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 x (tan.f64 x))) (*.f64 #s(literal 2 binary64) (*.f64 x #s(literal 0 binary64)))))
(+.f64 (+.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal -1 binary64) (tan.f64 x))) (*.f64 (*.f64 x #s(literal 0 binary64)) (/.f64 #s(literal 1 binary64) (*.f64 x (tan.f64 x)))))
(+.f64 (+.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal -1 binary64) (tan.f64 x))) (*.f64 (*.f64 #s(literal 2 binary64) (*.f64 x #s(literal 0 binary64))) (/.f64 #s(literal 1 binary64) (*.f64 x (tan.f64 x)))))
(+.f64 (/.f64 #s(literal -1 binary64) (tan.f64 x)) (/.f64 #s(literal 1 binary64) x))
(+.f64 (/.f64 #s(literal -1 binary64) (tan.f64 x)) (+.f64 (/.f64 #s(literal 1 binary64) (tan.f64 x)) (+.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal -1 binary64) (tan.f64 x)))))
(+.f64 #s(literal 0 binary64) (+.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal -1 binary64) (tan.f64 x))))
(+.f64 (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 x (tan.f64 x))) (-.f64 #s(literal 0 binary64) x)) (/.f64 #s(literal 1 binary64) x))
(+.f64 (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 x (tan.f64 x))) (*.f64 x #s(literal 0 binary64))) (+.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal -1 binary64) (tan.f64 x))))
(+.f64 (*.f64 (*.f64 x #s(literal 0 binary64)) (/.f64 #s(literal 1 binary64) (*.f64 x (tan.f64 x)))) (+.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal -1 binary64) (tan.f64 x))))
(+.f64 (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal -1 binary64) (tan.f64 x))) (/.f64 #s(literal -1 binary64) (tan.f64 x))) (/.f64 #s(literal 1 binary64) (tan.f64 x)))
(+.f64 (-.f64 (/.f64 #s(literal 1 binary64) x) #s(literal 0 binary64)) (/.f64 #s(literal -1 binary64) (tan.f64 x)))
(exp.f64 (*.f64 (log.f64 (/.f64 x (-.f64 #s(literal 1 binary64) (/.f64 x (tan.f64 x))))) #s(literal -1 binary64)))
(-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal 1 binary64) (tan.f64 x)))
(-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 (+.f64 x (*.f64 x #s(literal 0 binary64))) (*.f64 x (tan.f64 x))))
(-.f64 (/.f64 #s(literal -1 binary64) (tan.f64 x)) (/.f64 #s(literal -1 binary64) x))
(-.f64 (/.f64 #s(literal -1 binary64) (tan.f64 x)) (-.f64 (/.f64 #s(literal -1 binary64) x) #s(literal 0 binary64)))
(-.f64 (/.f64 #s(literal -1 binary64) (tan.f64 x)) (-.f64 (/.f64 #s(literal -1 binary64) (tan.f64 x)) (+.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal -1 binary64) (tan.f64 x)))))
(-.f64 #s(literal 0 binary64) (+.f64 (/.f64 #s(literal 1 binary64) (tan.f64 x)) (/.f64 #s(literal -1 binary64) x)))
(-.f64 #s(literal 0 binary64) (-.f64 (+.f64 (/.f64 #s(literal 1 binary64) (tan.f64 x)) (/.f64 #s(literal -1 binary64) x)) #s(literal 0 binary64)))
(-.f64 (/.f64 #s(literal 0 binary64) (-.f64 #s(literal 0 binary64) (*.f64 x (tan.f64 x)))) (+.f64 (/.f64 #s(literal 1 binary64) (tan.f64 x)) (/.f64 #s(literal -1 binary64) x)))
(-.f64 (/.f64 (*.f64 (tan.f64 x) (*.f64 x (tan.f64 x))) (pow.f64 (*.f64 x (tan.f64 x)) #s(literal 2 binary64))) (/.f64 (*.f64 x (*.f64 x (tan.f64 x))) (pow.f64 (*.f64 x (tan.f64 x)) #s(literal 2 binary64))))
(-.f64 (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal -1 binary64) (tan.f64 x))) (/.f64 #s(literal -1 binary64) (tan.f64 x))) (/.f64 #s(literal -1 binary64) (tan.f64 x)))
(fma.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal -1 binary64) (tan.f64 x)))
(fma.f64 #s(literal 1 binary64) (+.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal -1 binary64) (tan.f64 x))) #s(literal 0 binary64))
(fma.f64 #s(literal 1 binary64) (/.f64 #s(literal -1 binary64) (tan.f64 x)) (/.f64 #s(literal 1 binary64) x))
(fma.f64 (/.f64 #s(literal 1 binary64) x) #s(literal 1 binary64) (/.f64 #s(literal -1 binary64) (tan.f64 x)))
(fma.f64 (tan.f64 x) (/.f64 #s(literal 1 binary64) (*.f64 x (tan.f64 x))) (/.f64 #s(literal -1 binary64) (tan.f64 x)))
(fma.f64 (/.f64 #s(literal 1 binary64) (tan.f64 x)) #s(literal -1 binary64) (/.f64 #s(literal 1 binary64) x))
(fma.f64 (/.f64 #s(literal 1 binary64) (tan.f64 x)) (/.f64 (tan.f64 x) x) (/.f64 #s(literal -1 binary64) (tan.f64 x)))
(fma.f64 (+.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal -1 binary64) (tan.f64 x))) #s(literal 1 binary64) #s(literal 0 binary64))
(fma.f64 (sin.f64 x) (/.f64 (/.f64 #s(literal 1 binary64) (cos.f64 x)) (*.f64 x (tan.f64 x))) (/.f64 #s(literal -1 binary64) (tan.f64 x)))
(fma.f64 #s(literal -1 binary64) (/.f64 #s(literal 1 binary64) (tan.f64 x)) (/.f64 #s(literal 1 binary64) x))
(fma.f64 #s(literal -1 binary64) (/.f64 #s(literal -1 binary64) x) (/.f64 #s(literal -1 binary64) (tan.f64 x)))
(fma.f64 #s(literal -1 binary64) (+.f64 (/.f64 #s(literal 1 binary64) (tan.f64 x)) (/.f64 #s(literal -1 binary64) x)) #s(literal 0 binary64))
(fma.f64 (-.f64 (tan.f64 x) x) (/.f64 #s(literal 1 binary64) (*.f64 x (tan.f64 x))) #s(literal 0 binary64))
(fma.f64 (/.f64 #s(literal -1 binary64) (tan.f64 x)) #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) x))
(fma.f64 (-.f64 x (tan.f64 x)) (/.f64 #s(literal -1 binary64) (*.f64 x (tan.f64 x))) #s(literal 0 binary64))
(fma.f64 (/.f64 #s(literal 1 binary64) (*.f64 x (tan.f64 x))) (-.f64 (tan.f64 x) x) #s(literal 0 binary64))
(fma.f64 (/.f64 #s(literal -1 binary64) x) #s(literal -1 binary64) (/.f64 #s(literal -1 binary64) (tan.f64 x)))
(fma.f64 (+.f64 (/.f64 (tan.f64 x) x) #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) (tan.f64 x)) #s(literal 0 binary64))
(fma.f64 (/.f64 #s(literal 1 binary64) (sin.f64 x)) (-.f64 #s(literal 0 binary64) (cos.f64 x)) (/.f64 #s(literal 1 binary64) x))
(fma.f64 (/.f64 (sin.f64 x) x) (/.f64 (/.f64 #s(literal 1 binary64) (cos.f64 x)) (tan.f64 x)) (/.f64 #s(literal -1 binary64) (tan.f64 x)))
(fma.f64 (/.f64 (tan.f64 x) x) (/.f64 #s(literal 1 binary64) (tan.f64 x)) (/.f64 #s(literal -1 binary64) (tan.f64 x)))
(fma.f64 (/.f64 (sin.f64 x) (tan.f64 x)) (/.f64 #s(literal 1 binary64) (*.f64 x (cos.f64 x))) (/.f64 #s(literal -1 binary64) (tan.f64 x)))
(fma.f64 (/.f64 (+.f64 (/.f64 (tan.f64 x) x) #s(literal -1 binary64)) (sin.f64 x)) (cos.f64 x) #s(literal 0 binary64))
(fma.f64 (/.f64 #s(literal -1 binary64) (sin.f64 x)) (cos.f64 x) (/.f64 #s(literal 1 binary64) x))
(fma.f64 (/.f64 (-.f64 x (tan.f64 x)) (*.f64 x (sin.f64 x))) (-.f64 #s(literal 0 binary64) (cos.f64 x)) #s(literal 0 binary64))
(fma.f64 (/.f64 (tan.f64 x) (*.f64 x (sin.f64 x))) (cos.f64 x) (/.f64 #s(literal -1 binary64) (tan.f64 x)))
(fma.f64 (+.f64 (/.f64 #s(literal 1 binary64) (tan.f64 x)) (/.f64 #s(literal -1 binary64) x)) #s(literal -1 binary64) #s(literal 0 binary64))
(neg.f64 (+.f64 (/.f64 #s(literal 1 binary64) (tan.f64 x)) (/.f64 #s(literal -1 binary64) x)))
(neg.f64 (/.f64 #s(literal -1 binary64) (/.f64 x (-.f64 #s(literal 1 binary64) (/.f64 x (tan.f64 x))))))
(/.f64 #s(literal 1 binary64) (/.f64 x (-.f64 #s(literal 1 binary64) (/.f64 x (tan.f64 x)))))
(/.f64 #s(literal 1 binary64) (/.f64 (pow.f64 (*.f64 x (tan.f64 x)) #s(literal 2 binary64)) (-.f64 (*.f64 (tan.f64 x) (*.f64 x (tan.f64 x))) (*.f64 x (*.f64 x (tan.f64 x))))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal 1 binary64) (cos.f64 x)) (/.f64 (+.f64 (/.f64 (tan.f64 x) x) #s(literal -1 binary64)) (sin.f64 x))))
(/.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (/.f64 x (tan.f64 x)))))
(/.f64 (/.f64 #s(literal 1 binary64) (tan.f64 x)) (/.f64 x (-.f64 (tan.f64 x) x)))
(/.f64 (+.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal -1 binary64) (tan.f64 x))) #s(literal 1 binary64))
(/.f64 (+.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal -1 binary64) (tan.f64 x))) (*.f64 (*.f64 x (tan.f64 x)) (/.f64 #s(literal 1 binary64) (*.f64 x (tan.f64 x)))))
(/.f64 #s(literal -1 binary64) (/.f64 #s(literal 1 binary64) (+.f64 (/.f64 #s(literal 1 binary64) (tan.f64 x)) (/.f64 #s(literal -1 binary64) x))))
(/.f64 #s(literal -1 binary64) (*.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (+.f64 (/.f64 #s(literal 1 binary64) (tan.f64 x)) (/.f64 #s(literal -1 binary64) x)))))
(/.f64 (-.f64 (tan.f64 x) x) (*.f64 x (tan.f64 x)))
(/.f64 (-.f64 x (tan.f64 x)) (-.f64 #s(literal 0 binary64) (*.f64 x (tan.f64 x))))
(/.f64 (/.f64 #s(literal 1 binary64) (*.f64 x (tan.f64 x))) (/.f64 #s(literal 1 binary64) (-.f64 (tan.f64 x) x)))
(/.f64 (+.f64 (/.f64 (tan.f64 x) x) #s(literal -1 binary64)) (tan.f64 x))
(/.f64 (-.f64 (*.f64 (tan.f64 x) (*.f64 x (tan.f64 x))) (*.f64 x (*.f64 x (tan.f64 x)))) (pow.f64 (*.f64 x (tan.f64 x)) #s(literal 2 binary64)))
(/.f64 (-.f64 #s(literal 1 binary64) (/.f64 x (tan.f64 x))) x)
(/.f64 (+.f64 #s(literal -1 binary64) (/.f64 x (tan.f64 x))) (-.f64 #s(literal 0 binary64) x))
(/.f64 (+.f64 #s(literal -1 binary64) (/.f64 x (tan.f64 x))) (*.f64 (*.f64 x (tan.f64 x)) (/.f64 #s(literal -1 binary64) (tan.f64 x))))
(/.f64 (-.f64 (/.f64 (sin.f64 x) x) (cos.f64 x)) (sin.f64 x))
(/.f64 (-.f64 (/.f64 (sin.f64 x) x) (cos.f64 x)) (*.f64 (*.f64 x (tan.f64 x)) (/.f64 (cos.f64 x) x)))
(/.f64 (-.f64 (sin.f64 x) (*.f64 x (cos.f64 x))) (*.f64 x (sin.f64 x)))
(/.f64 (-.f64 (sin.f64 x) (*.f64 x (cos.f64 x))) (*.f64 (tan.f64 x) (*.f64 x (cos.f64 x))))
(/.f64 (+.f64 (/.f64 (/.f64 (tan.f64 x) x) #s(literal -1 binary64)) #s(literal 1 binary64)) (-.f64 #s(literal 0 binary64) (tan.f64 x)))
(/.f64 (+.f64 (/.f64 (/.f64 (tan.f64 x) x) #s(literal -1 binary64)) #s(literal 1 binary64)) (*.f64 (*.f64 x (tan.f64 x)) (/.f64 #s(literal -1 binary64) x)))
(/.f64 (+.f64 (/.f64 (-.f64 #s(literal 0 binary64) (sin.f64 x)) x) (cos.f64 x)) (-.f64 #s(literal 0 binary64) (sin.f64 x)))
(/.f64 (+.f64 (/.f64 (-.f64 #s(literal 0 binary64) (sin.f64 x)) x) (cos.f64 x)) (*.f64 (*.f64 x (tan.f64 x)) (/.f64 (-.f64 #s(literal 0 binary64) (cos.f64 x)) x)))
(/.f64 (+.f64 (-.f64 #s(literal 0 binary64) (sin.f64 x)) (*.f64 x (cos.f64 x))) (-.f64 #s(literal 0 binary64) (*.f64 x (sin.f64 x))))
(/.f64 (+.f64 (-.f64 #s(literal 0 binary64) (sin.f64 x)) (*.f64 x (cos.f64 x))) (/.f64 (*.f64 x (cos.f64 x)) (/.f64 #s(literal -1 binary64) (tan.f64 x))))
(/.f64 (/.f64 (-.f64 x (tan.f64 x)) x) (-.f64 #s(literal 0 binary64) (tan.f64 x)))
(/.f64 (/.f64 (+.f64 (/.f64 (tan.f64 x) x) #s(literal -1 binary64)) (sin.f64 x)) (/.f64 #s(literal 1 binary64) (cos.f64 x)))
(/.f64 (/.f64 (-.f64 x (tan.f64 x)) (*.f64 x (sin.f64 x))) (/.f64 #s(literal -1 binary64) (cos.f64 x)))
(/.f64 (*.f64 (cos.f64 x) (-.f64 (tan.f64 x) x)) (*.f64 x (sin.f64 x)))
(/.f64 (+.f64 (/.f64 #s(literal 1 binary64) (tan.f64 x)) (/.f64 #s(literal -1 binary64) x)) #s(literal -1 binary64))
(/.f64 (+.f64 #s(literal 1 binary64) (*.f64 x (/.f64 #s(literal -1 binary64) (tan.f64 x)))) x)
(/.f64 (+.f64 (/.f64 #s(literal 1 binary64) (cos.f64 x)) (*.f64 x (/.f64 #s(literal -1 binary64) (sin.f64 x)))) (/.f64 x (cos.f64 x)))
(/.f64 (+.f64 (*.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal 1 binary64) (cos.f64 x))) (/.f64 #s(literal -1 binary64) (sin.f64 x))) (/.f64 #s(literal 1 binary64) (cos.f64 x)))
(/.f64 (+.f64 (/.f64 #s(literal -1 binary64) (cos.f64 x)) (*.f64 (-.f64 #s(literal 0 binary64) x) (/.f64 #s(literal -1 binary64) (sin.f64 x)))) (*.f64 (-.f64 #s(literal 0 binary64) x) (/.f64 #s(literal 1 binary64) (cos.f64 x))))
(/.f64 (+.f64 (*.f64 (/.f64 #s(literal -1 binary64) (sin.f64 x)) x) (/.f64 #s(literal 1 binary64) (cos.f64 x))) (/.f64 x (cos.f64 x)))
(/.f64 (+.f64 (*.f64 (/.f64 #s(literal -1 binary64) (sin.f64 x)) #s(literal 1 binary64)) (/.f64 #s(literal 1 binary64) (*.f64 x (cos.f64 x)))) (/.f64 #s(literal 1 binary64) (cos.f64 x)))
(/.f64 (+.f64 (*.f64 (/.f64 #s(literal -1 binary64) (sin.f64 x)) (-.f64 #s(literal 0 binary64) x)) (*.f64 (/.f64 #s(literal 1 binary64) (cos.f64 x)) #s(literal -1 binary64))) (*.f64 (/.f64 #s(literal 1 binary64) (cos.f64 x)) (-.f64 #s(literal 0 binary64) x)))
(/.f64 (+.f64 #s(literal -1 binary64) (/.f64 (tan.f64 x) x)) (tan.f64 x))
(/.f64 (+.f64 #s(literal 1 binary64) (/.f64 (/.f64 (tan.f64 x) x) #s(literal -1 binary64))) (-.f64 #s(literal 0 binary64) (tan.f64 x)))
(/.f64 (+.f64 (/.f64 x (tan.f64 x)) #s(literal -1 binary64)) (-.f64 #s(literal 0 binary64) x))
(/.f64 (+.f64 (/.f64 x (-.f64 #s(literal 0 binary64) (tan.f64 x))) #s(literal 1 binary64)) x)
(/.f64 (-.f64 (/.f64 x (-.f64 #s(literal 0 binary64) (tan.f64 x))) #s(literal -1 binary64)) x)
(/.f64 (-.f64 #s(literal -1 binary64) (/.f64 (/.f64 (tan.f64 x) x) #s(literal -1 binary64))) (tan.f64 x))
(/.f64 (-.f64 (/.f64 #s(literal 1 binary64) (cos.f64 x)) (*.f64 x (/.f64 #s(literal 1 binary64) (sin.f64 x)))) (/.f64 x (cos.f64 x)))
(/.f64 (-.f64 (*.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal 1 binary64) (cos.f64 x))) (/.f64 #s(literal 1 binary64) (sin.f64 x))) (/.f64 #s(literal 1 binary64) (cos.f64 x)))
(/.f64 (-.f64 (/.f64 #s(literal -1 binary64) (cos.f64 x)) (*.f64 (-.f64 #s(literal 0 binary64) x) (/.f64 #s(literal 1 binary64) (sin.f64 x)))) (*.f64 (-.f64 #s(literal 0 binary64) x) (/.f64 #s(literal 1 binary64) (cos.f64 x))))
(/.f64 (-.f64 #s(literal 1 binary64) (/.f64 (tan.f64 x) x)) (-.f64 #s(literal 0 binary64) (tan.f64 x)))
(/.f64 (-.f64 (/.f64 x (tan.f64 x)) #s(literal 1 binary64)) (-.f64 #s(literal 0 binary64) x))
(/.f64 (-.f64 (*.f64 (/.f64 #s(literal -1 binary64) (sin.f64 x)) (-.f64 #s(literal 0 binary64) x)) (/.f64 #s(literal 1 binary64) (cos.f64 x))) (*.f64 (/.f64 #s(literal 1 binary64) (cos.f64 x)) (-.f64 #s(literal 0 binary64) x)))
(/.f64 (-.f64 (*.f64 (/.f64 #s(literal -1 binary64) (sin.f64 x)) x) (*.f64 (/.f64 #s(literal 1 binary64) (cos.f64 x)) #s(literal -1 binary64))) (/.f64 x (cos.f64 x)))
(/.f64 (-.f64 (*.f64 (/.f64 #s(literal -1 binary64) (sin.f64 x)) #s(literal 1 binary64)) (*.f64 (/.f64 #s(literal 1 binary64) (cos.f64 x)) (/.f64 #s(literal -1 binary64) x))) (/.f64 #s(literal 1 binary64) (cos.f64 x)))
(/.f64 (-.f64 (*.f64 (tan.f64 x) (-.f64 #s(literal 0 binary64) (*.f64 x (tan.f64 x)))) (*.f64 (*.f64 x (tan.f64 x)) (-.f64 #s(literal 0 binary64) x))) (*.f64 (*.f64 x (tan.f64 x)) (-.f64 #s(literal 0 binary64) (*.f64 x (tan.f64 x)))))
(/.f64 (-.f64 (*.f64 (tan.f64 x) (tan.f64 x)) (*.f64 x (tan.f64 x))) (*.f64 (tan.f64 x) (*.f64 x (tan.f64 x))))
(/.f64 (-.f64 (*.f64 x (tan.f64 x)) (*.f64 (*.f64 x (tan.f64 x)) (/.f64 x (tan.f64 x)))) (*.f64 x (*.f64 x (tan.f64 x))))
(/.f64 (-.f64 (*.f64 (sin.f64 x) (tan.f64 x)) (*.f64 (tan.f64 x) (*.f64 x (cos.f64 x)))) (*.f64 (*.f64 (tan.f64 x) (*.f64 x (cos.f64 x))) (tan.f64 x)))
(/.f64 (-.f64 (*.f64 (sin.f64 x) (*.f64 x (tan.f64 x))) (*.f64 (*.f64 (tan.f64 x) (*.f64 x (cos.f64 x))) x)) (*.f64 (*.f64 (tan.f64 x) (*.f64 x (cos.f64 x))) (*.f64 x (tan.f64 x))))
(/.f64 (-.f64 (*.f64 (sin.f64 x) (-.f64 #s(literal 0 binary64) (*.f64 x (tan.f64 x)))) (*.f64 (*.f64 (tan.f64 x) (*.f64 x (cos.f64 x))) (-.f64 #s(literal 0 binary64) x))) (*.f64 (*.f64 (tan.f64 x) (*.f64 x (cos.f64 x))) (-.f64 #s(literal 0 binary64) (*.f64 x (tan.f64 x)))))
(/.f64 (-.f64 (*.f64 x (sin.f64 x)) (*.f64 (*.f64 (tan.f64 x) (*.f64 x (cos.f64 x))) (/.f64 x (tan.f64 x)))) (*.f64 (*.f64 (tan.f64 x) (*.f64 x (cos.f64 x))) x))
(/.f64 (-.f64 (*.f64 (-.f64 #s(literal 0 binary64) (tan.f64 x)) (*.f64 x (tan.f64 x))) (*.f64 (-.f64 #s(literal 0 binary64) (*.f64 x (tan.f64 x))) x)) (*.f64 (-.f64 #s(literal 0 binary64) (*.f64 x (tan.f64 x))) (*.f64 x (tan.f64 x))))
(/.f64 (-.f64 (*.f64 (-.f64 #s(literal 0 binary64) (tan.f64 x)) (tan.f64 x)) (-.f64 #s(literal 0 binary64) (*.f64 x (tan.f64 x)))) (*.f64 (-.f64 #s(literal 0 binary64) (*.f64 x (tan.f64 x))) (tan.f64 x)))
(/.f64 (-.f64 (-.f64 #s(literal 0 binary64) (*.f64 x (tan.f64 x))) (*.f64 (-.f64 #s(literal 0 binary64) (*.f64 x (tan.f64 x))) (/.f64 x (tan.f64 x)))) (*.f64 (-.f64 #s(literal 0 binary64) (*.f64 x (tan.f64 x))) x))
(/.f64 (-.f64 (*.f64 (-.f64 #s(literal 0 binary64) (sin.f64 x)) (*.f64 x (tan.f64 x))) (*.f64 (/.f64 (*.f64 x (cos.f64 x)) (/.f64 #s(literal -1 binary64) (tan.f64 x))) x)) (*.f64 (/.f64 (*.f64 x (cos.f64 x)) (/.f64 #s(literal -1 binary64) (tan.f64 x))) (*.f64 x (tan.f64 x))))
(/.f64 (-.f64 (*.f64 (-.f64 #s(literal 0 binary64) (sin.f64 x)) (-.f64 #s(literal 0 binary64) (*.f64 x (tan.f64 x)))) (*.f64 (/.f64 (*.f64 x (cos.f64 x)) (/.f64 #s(literal -1 binary64) (tan.f64 x))) (-.f64 #s(literal 0 binary64) x))) (*.f64 (/.f64 (*.f64 x (cos.f64 x)) (/.f64 #s(literal -1 binary64) (tan.f64 x))) (-.f64 #s(literal 0 binary64) (*.f64 x (tan.f64 x)))))
(/.f64 (-.f64 (*.f64 (-.f64 #s(literal 0 binary64) (sin.f64 x)) (tan.f64 x)) (*.f64 (/.f64 (*.f64 x (cos.f64 x)) (/.f64 #s(literal -1 binary64) (tan.f64 x))) #s(literal 1 binary64))) (*.f64 (/.f64 (*.f64 x (cos.f64 x)) (/.f64 #s(literal -1 binary64) (tan.f64 x))) (tan.f64 x)))
(/.f64 (-.f64 (-.f64 #s(literal 0 binary64) (*.f64 x (sin.f64 x))) (*.f64 (/.f64 (*.f64 x (cos.f64 x)) (/.f64 #s(literal -1 binary64) (tan.f64 x))) (/.f64 x (tan.f64 x)))) (*.f64 (/.f64 (*.f64 x (cos.f64 x)) (/.f64 #s(literal -1 binary64) (tan.f64 x))) x))
(/.f64 (-.f64 (*.f64 (/.f64 (tan.f64 x) x) (*.f64 x (tan.f64 x))) (*.f64 x (tan.f64 x))) (*.f64 (tan.f64 x) (*.f64 x (tan.f64 x))))
(/.f64 (-.f64 (*.f64 (/.f64 (tan.f64 x) x) (-.f64 #s(literal 0 binary64) (*.f64 x (tan.f64 x)))) (-.f64 #s(literal 0 binary64) (*.f64 x (tan.f64 x)))) (*.f64 (tan.f64 x) (-.f64 #s(literal 0 binary64) (*.f64 x (tan.f64 x)))))
(/.f64 (-.f64 (*.f64 (/.f64 (tan.f64 x) x) (tan.f64 x)) (tan.f64 x)) (*.f64 (tan.f64 x) (tan.f64 x)))
(/.f64 (-.f64 (*.f64 (/.f64 (tan.f64 x) x) x) x) (*.f64 x (tan.f64 x)))
(/.f64 (-.f64 (*.f64 x (tan.f64 x)) (*.f64 x x)) (*.f64 x (*.f64 x (tan.f64 x))))
(/.f64 (-.f64 (-.f64 #s(literal 0 binary64) (*.f64 x (tan.f64 x))) (*.f64 x (-.f64 #s(literal 0 binary64) x))) (*.f64 x (-.f64 #s(literal 0 binary64) (*.f64 x (tan.f64 x)))))
(/.f64 (-.f64 x (*.f64 x (/.f64 x (tan.f64 x)))) (*.f64 x x))
(/.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (/.f64 x (tan.f64 x)))) (-.f64 #s(literal 0 binary64) x))
(/.f64 (neg.f64 (-.f64 (*.f64 (tan.f64 x) (*.f64 x (tan.f64 x))) (*.f64 x (*.f64 x (tan.f64 x))))) (neg.f64 (pow.f64 (*.f64 x (tan.f64 x)) #s(literal 2 binary64))))
(/.f64 (/.f64 (-.f64 (tan.f64 x) x) (-.f64 #s(literal 0 binary64) (tan.f64 x))) (-.f64 #s(literal 0 binary64) x))
(/.f64 (*.f64 (+.f64 (/.f64 (tan.f64 x) x) #s(literal -1 binary64)) (cos.f64 x)) (sin.f64 x))
(/.f64 (*.f64 #s(literal 1 binary64) (-.f64 (*.f64 (tan.f64 x) (*.f64 x (tan.f64 x))) (*.f64 x (*.f64 x (tan.f64 x))))) (pow.f64 (*.f64 x (tan.f64 x)) #s(literal 2 binary64)))
(/.f64 (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 x (tan.f64 x))) (+.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal -1 binary64) (tan.f64 x)))) (/.f64 #s(literal 1 binary64) (*.f64 x (tan.f64 x))))
(/.f64 (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 x (tan.f64 x))) (-.f64 x (tan.f64 x))) #s(literal -1 binary64))
(/.f64 (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 x (tan.f64 x))) (-.f64 #s(literal 1 binary64) (/.f64 x (tan.f64 x)))) (/.f64 #s(literal 1 binary64) (tan.f64 x)))
(/.f64 (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 x (tan.f64 x))) (+.f64 #s(literal -1 binary64) (/.f64 x (tan.f64 x)))) (/.f64 #s(literal -1 binary64) (tan.f64 x)))
(/.f64 (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 x (tan.f64 x))) (+.f64 (/.f64 (tan.f64 x) x) #s(literal -1 binary64))) (/.f64 #s(literal 1 binary64) x))
(/.f64 (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 x (tan.f64 x))) (-.f64 (/.f64 (sin.f64 x) x) (cos.f64 x))) (/.f64 (cos.f64 x) x))
(/.f64 (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 x (tan.f64 x))) (-.f64 (sin.f64 x) (*.f64 x (cos.f64 x)))) (cos.f64 x))
(/.f64 (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 x (tan.f64 x))) (+.f64 (/.f64 (/.f64 (tan.f64 x) x) #s(literal -1 binary64)) #s(literal 1 binary64))) (/.f64 #s(literal -1 binary64) x))
(/.f64 (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 x (tan.f64 x))) (+.f64 (/.f64 (-.f64 #s(literal 0 binary64) (sin.f64 x)) x) (cos.f64 x))) (/.f64 (-.f64 #s(literal 0 binary64) (cos.f64 x)) x))
(/.f64 (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 x (tan.f64 x))) (+.f64 (-.f64 #s(literal 0 binary64) (sin.f64 x)) (*.f64 x (cos.f64 x)))) (-.f64 #s(literal 0 binary64) (cos.f64 x)))
(/.f64 (*.f64 (+.f64 (/.f64 (tan.f64 x) x) #s(literal -1 binary64)) (-.f64 #s(literal 0 binary64) (cos.f64 x))) (-.f64 #s(literal 0 binary64) (sin.f64 x)))
(/.f64 (*.f64 (-.f64 (*.f64 (tan.f64 x) (*.f64 x (tan.f64 x))) (*.f64 x (*.f64 x (tan.f64 x)))) #s(literal 1 binary64)) (pow.f64 (*.f64 x (tan.f64 x)) #s(literal 2 binary64)))
(/.f64 (*.f64 (+.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal -1 binary64) (tan.f64 x))) (/.f64 #s(literal 1 binary64) (*.f64 x (tan.f64 x)))) (/.f64 #s(literal 1 binary64) (*.f64 x (tan.f64 x))))
(/.f64 (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 x (tan.f64 x))) (/.f64 #s(literal 1 binary64) (*.f64 x (tan.f64 x)))) (/.f64 #s(literal 1 binary64) (tan.f64 x)))
(/.f64 (*.f64 (+.f64 #s(literal -1 binary64) (/.f64 x (tan.f64 x))) (/.f64 #s(literal 1 binary64) (*.f64 x (tan.f64 x)))) (/.f64 #s(literal -1 binary64) (tan.f64 x)))
(/.f64 (*.f64 (+.f64 (/.f64 (tan.f64 x) x) #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) (*.f64 x (tan.f64 x)))) (/.f64 #s(literal 1 binary64) x))
(/.f64 (*.f64 (-.f64 (/.f64 (sin.f64 x) x) (cos.f64 x)) (/.f64 #s(literal 1 binary64) (*.f64 x (tan.f64 x)))) (/.f64 (cos.f64 x) x))
(/.f64 (*.f64 (-.f64 (sin.f64 x) (*.f64 x (cos.f64 x))) (/.f64 #s(literal 1 binary64) (*.f64 x (tan.f64 x)))) (cos.f64 x))
(/.f64 (*.f64 (+.f64 (/.f64 (/.f64 (tan.f64 x) x) #s(literal -1 binary64)) #s(literal 1 binary64)) (/.f64 #s(literal 1 binary64) (*.f64 x (tan.f64 x)))) (/.f64 #s(literal -1 binary64) x))
(/.f64 (*.f64 (+.f64 (/.f64 (-.f64 #s(literal 0 binary64) (sin.f64 x)) x) (cos.f64 x)) (/.f64 #s(literal 1 binary64) (*.f64 x (tan.f64 x)))) (/.f64 (-.f64 #s(literal 0 binary64) (cos.f64 x)) x))
(/.f64 (*.f64 (+.f64 (-.f64 #s(literal 0 binary64) (sin.f64 x)) (*.f64 x (cos.f64 x))) (/.f64 #s(literal 1 binary64) (*.f64 x (tan.f64 x)))) (-.f64 #s(literal 0 binary64) (cos.f64 x)))
(/.f64 (*.f64 (/.f64 #s(literal 1 binary64) (tan.f64 x)) (-.f64 (tan.f64 x) x)) x)
(/.f64 (*.f64 (-.f64 x (tan.f64 x)) (/.f64 #s(literal 1 binary64) (tan.f64 x))) (-.f64 #s(literal 0 binary64) x))
(/.f64 (/.f64 (-.f64 (tan.f64 x) x) (sin.f64 x)) (/.f64 x (cos.f64 x)))
(/.f64 (/.f64 (-.f64 #s(literal 1 binary64) (/.f64 x (tan.f64 x))) #s(literal -1 binary64)) (-.f64 #s(literal 0 binary64) x))
(/.f64 (/.f64 (-.f64 x (tan.f64 x)) (tan.f64 x)) (-.f64 #s(literal 0 binary64) x))
(/.f64 (/.f64 (+.f64 (/.f64 (tan.f64 x) x) #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) (cos.f64 x))) (sin.f64 x))
(/.f64 (/.f64 (-.f64 (*.f64 (tan.f64 x) (*.f64 x (tan.f64 x))) (*.f64 x (*.f64 x (tan.f64 x)))) (*.f64 x (tan.f64 x))) (*.f64 x (tan.f64 x)))
(pow.f64 (/.f64 x (-.f64 #s(literal 1 binary64) (/.f64 x (tan.f64 x)))) #s(literal -1 binary64))
(*.f64 #s(literal 1 binary64) (+.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal -1 binary64) (tan.f64 x))))
(*.f64 (/.f64 #s(literal 1 binary64) x) (-.f64 #s(literal 1 binary64) (/.f64 x (tan.f64 x))))
(*.f64 (/.f64 #s(literal 1 binary64) x) (pow.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (/.f64 x (tan.f64 x)))) #s(literal -1 binary64)))
(*.f64 (/.f64 #s(literal 1 binary64) (tan.f64 x)) (+.f64 (/.f64 (tan.f64 x) x) #s(literal -1 binary64)))
(*.f64 (+.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal -1 binary64) (tan.f64 x))) #s(literal 1 binary64))
(*.f64 (cos.f64 x) (/.f64 (+.f64 (/.f64 (tan.f64 x) x) #s(literal -1 binary64)) (sin.f64 x)))
(*.f64 #s(literal -1 binary64) (+.f64 (/.f64 #s(literal 1 binary64) (tan.f64 x)) (/.f64 #s(literal -1 binary64) x)))
(*.f64 (-.f64 (tan.f64 x) x) (/.f64 #s(literal 1 binary64) (*.f64 x (tan.f64 x))))
(*.f64 (-.f64 #s(literal 0 binary64) (cos.f64 x)) (/.f64 (-.f64 x (tan.f64 x)) (*.f64 x (sin.f64 x))))
(*.f64 (-.f64 x (tan.f64 x)) (/.f64 #s(literal -1 binary64) (*.f64 x (tan.f64 x))))
(*.f64 (/.f64 #s(literal 1 binary64) (*.f64 x (tan.f64 x))) (-.f64 (tan.f64 x) x))
(*.f64 (/.f64 #s(literal 1 binary64) (*.f64 x (tan.f64 x))) (pow.f64 (/.f64 #s(literal 1 binary64) (-.f64 (tan.f64 x) x)) #s(literal -1 binary64)))
(*.f64 (+.f64 (/.f64 (tan.f64 x) x) #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) (tan.f64 x)))
(*.f64 (-.f64 (*.f64 (tan.f64 x) (*.f64 x (tan.f64 x))) (*.f64 x (*.f64 x (tan.f64 x)))) (/.f64 #s(literal 1 binary64) (pow.f64 (*.f64 x (tan.f64 x)) #s(literal 2 binary64))))
(*.f64 (-.f64 #s(literal 1 binary64) (/.f64 x (tan.f64 x))) (/.f64 #s(literal 1 binary64) x))
(*.f64 (/.f64 (-.f64 x (tan.f64 x)) x) (/.f64 #s(literal -1 binary64) (tan.f64 x)))
(*.f64 (/.f64 #s(literal -1 binary64) (*.f64 x (tan.f64 x))) (-.f64 x (tan.f64 x)))
(*.f64 (/.f64 (+.f64 (/.f64 (tan.f64 x) x) #s(literal -1 binary64)) (sin.f64 x)) (cos.f64 x))
(*.f64 (/.f64 #s(literal 1 binary64) (*.f64 x (sin.f64 x))) (*.f64 (cos.f64 x) (-.f64 (tan.f64 x) x)))
(*.f64 (/.f64 (-.f64 x (tan.f64 x)) (*.f64 x (sin.f64 x))) (-.f64 #s(literal 0 binary64) (cos.f64 x)))
(*.f64 (/.f64 (-.f64 x (tan.f64 x)) (*.f64 x (sin.f64 x))) (/.f64 (-.f64 #s(literal 0 binary64) (cos.f64 x)) #s(literal 1 binary64)))
(*.f64 (+.f64 (/.f64 #s(literal 1 binary64) (tan.f64 x)) (/.f64 #s(literal -1 binary64) x)) #s(literal -1 binary64))
(*.f64 (/.f64 (-.f64 (tan.f64 x) x) (-.f64 #s(literal 0 binary64) (tan.f64 x))) (/.f64 #s(literal -1 binary64) x))
(*.f64 (*.f64 #s(literal 1 binary64) (/.f64 (-.f64 x (tan.f64 x)) (*.f64 x (sin.f64 x)))) (-.f64 #s(literal 0 binary64) (cos.f64 x)))
(*.f64 (*.f64 (+.f64 (/.f64 (tan.f64 x) x) #s(literal -1 binary64)) (cos.f64 x)) (/.f64 #s(literal 1 binary64) (sin.f64 x)))
(*.f64 (/.f64 (-.f64 (tan.f64 x) x) (sin.f64 x)) (/.f64 (cos.f64 x) x))
(*.f64 (/.f64 (-.f64 (tan.f64 x) x) (-.f64 #s(literal 0 binary64) (sin.f64 x))) (/.f64 (-.f64 #s(literal 0 binary64) (cos.f64 x)) x))
(*.f64 (/.f64 (-.f64 #s(literal 1 binary64) (/.f64 x (tan.f64 x))) #s(literal -1 binary64)) (/.f64 #s(literal -1 binary64) x))
(*.f64 (/.f64 (-.f64 x (tan.f64 x)) (sin.f64 x)) (/.f64 (-.f64 #s(literal 0 binary64) (cos.f64 x)) x))
(*.f64 (/.f64 (-.f64 x (tan.f64 x)) (-.f64 #s(literal 0 binary64) (sin.f64 x))) (/.f64 (cos.f64 x) x))
(*.f64 (/.f64 (/.f64 (+.f64 (/.f64 (tan.f64 x) x) #s(literal -1 binary64)) (sin.f64 x)) #s(literal -1 binary64)) (-.f64 #s(literal 0 binary64) (cos.f64 x)))
(+.f64 (/.f64 #s(literal 1 binary64) x) #s(literal 0 binary64))
(+.f64 (+.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal -1 binary64) (tan.f64 x))) (/.f64 #s(literal 1 binary64) (tan.f64 x)))
(+.f64 #s(literal 0 binary64) (/.f64 #s(literal 1 binary64) x))
(exp.f64 (-.f64 #s(literal 0 binary64) (log.f64 x)))
(-.f64 (+.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal -1 binary64) (tan.f64 x))) (/.f64 #s(literal -1 binary64) (tan.f64 x)))
(-.f64 #s(literal 0 binary64) (/.f64 #s(literal -1 binary64) x))
(-.f64 #s(literal 0 binary64) (-.f64 (/.f64 #s(literal -1 binary64) x) #s(literal 0 binary64)))
(-.f64 (/.f64 #s(literal 0 binary64) (*.f64 x (tan.f64 x))) (/.f64 (-.f64 #s(literal 0 binary64) (tan.f64 x)) (*.f64 x (tan.f64 x))))
(-.f64 (/.f64 #s(literal 0 binary64) (-.f64 #s(literal 0 binary64) (*.f64 x (tan.f64 x)))) (/.f64 (tan.f64 x) (-.f64 #s(literal 0 binary64) (*.f64 x (tan.f64 x)))))
(-.f64 (/.f64 #s(literal 0 binary64) (/.f64 (*.f64 x (cos.f64 x)) (/.f64 #s(literal -1 binary64) (tan.f64 x)))) (/.f64 (sin.f64 x) (/.f64 (*.f64 x (cos.f64 x)) (/.f64 #s(literal -1 binary64) (tan.f64 x)))))
(fma.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) x) #s(literal 0 binary64))
(fma.f64 (/.f64 #s(literal 1 binary64) x) #s(literal 1 binary64) #s(literal 0 binary64))
(fma.f64 #s(literal -1 binary64) (/.f64 #s(literal -1 binary64) x) #s(literal 0 binary64))
(fma.f64 (/.f64 #s(literal -1 binary64) x) #s(literal -1 binary64) #s(literal 0 binary64))
(neg.f64 (/.f64 #s(literal -1 binary64) x))
(neg.f64 (/.f64 (-.f64 #s(literal 0 binary64) (tan.f64 x)) (*.f64 x (tan.f64 x))))
(neg.f64 (/.f64 (tan.f64 x) (-.f64 #s(literal 0 binary64) (*.f64 x (tan.f64 x)))))
(neg.f64 (/.f64 (sin.f64 x) (/.f64 (*.f64 x (cos.f64 x)) (/.f64 #s(literal -1 binary64) (tan.f64 x)))))
(neg.f64 (/.f64 (/.f64 (tan.f64 x) x) (-.f64 #s(literal 0 binary64) (tan.f64 x))))
(neg.f64 (*.f64 (-.f64 #s(literal 0 binary64) (tan.f64 x)) (/.f64 #s(literal 1 binary64) (*.f64 x (tan.f64 x)))))
(neg.f64 (*.f64 (/.f64 #s(literal -1 binary64) (tan.f64 x)) (/.f64 (tan.f64 x) x)))
(neg.f64 (*.f64 (/.f64 (tan.f64 x) x) (/.f64 #s(literal -1 binary64) (tan.f64 x))))
(/.f64 #s(literal 1 binary64) x)
(/.f64 (/.f64 #s(literal 1 binary64) x) #s(literal 1 binary64))
(/.f64 (tan.f64 x) (*.f64 x (tan.f64 x)))
(/.f64 (sin.f64 x) (*.f64 (tan.f64 x) (*.f64 x (cos.f64 x))))
(/.f64 (sin.f64 x) (*.f64 (-.f64 #s(literal 0 binary64) (*.f64 x (tan.f64 x))) (-.f64 #s(literal 0 binary64) (cos.f64 x))))
(/.f64 #s(literal -1 binary64) (-.f64 #s(literal 0 binary64) x))
(/.f64 #s(literal -1 binary64) (*.f64 (-.f64 #s(literal 0 binary64) (*.f64 x (tan.f64 x))) (/.f64 #s(literal 1 binary64) (tan.f64 x))))
(/.f64 #s(literal -1 binary64) (*.f64 (*.f64 x (tan.f64 x)) (/.f64 #s(literal -1 binary64) (tan.f64 x))))
(/.f64 (-.f64 #s(literal 0 binary64) (tan.f64 x)) (-.f64 #s(literal 0 binary64) (*.f64 x (tan.f64 x))))
(/.f64 (-.f64 #s(literal 0 binary64) (sin.f64 x)) (/.f64 (*.f64 x (cos.f64 x)) (/.f64 #s(literal -1 binary64) (tan.f64 x))))
(/.f64 (/.f64 #s(literal 1 binary64) (*.f64 x (tan.f64 x))) (/.f64 #s(literal 1 binary64) (tan.f64 x)))
(/.f64 (/.f64 #s(literal -1 binary64) x) #s(literal -1 binary64))
(/.f64 (/.f64 (/.f64 (tan.f64 x) x) #s(literal -1 binary64)) (-.f64 #s(literal 0 binary64) (tan.f64 x)))
(/.f64 (/.f64 (tan.f64 x) x) (tan.f64 x))
(/.f64 (/.f64 (tan.f64 x) (*.f64 x (sin.f64 x))) (/.f64 #s(literal 1 binary64) (cos.f64 x)))
(/.f64 (*.f64 (tan.f64 x) (cos.f64 x)) (*.f64 x (sin.f64 x)))
(/.f64 (/.f64 (/.f64 (tan.f64 x) x) (-.f64 #s(literal 0 binary64) (sin.f64 x))) (/.f64 #s(literal -1 binary64) (cos.f64 x)))
(/.f64 (/.f64 (-.f64 #s(literal 0 binary64) (tan.f64 x)) (*.f64 x (tan.f64 x))) #s(literal -1 binary64))
(/.f64 (/.f64 (-.f64 #s(literal 0 binary64) (tan.f64 x)) (tan.f64 x)) (-.f64 #s(literal 0 binary64) x))
(/.f64 (/.f64 (/.f64 (tan.f64 x) x) (-.f64 #s(literal 0 binary64) (tan.f64 x))) #s(literal -1 binary64))
(/.f64 (/.f64 (tan.f64 x) (sin.f64 x)) (/.f64 x (cos.f64 x)))
(/.f64 (*.f64 (-.f64 #s(literal 0 binary64) (tan.f64 x)) (/.f64 #s(literal 1 binary64) (*.f64 x (tan.f64 x)))) #s(literal -1 binary64))
(/.f64 (/.f64 (tan.f64 x) (-.f64 #s(literal 0 binary64) (tan.f64 x))) (-.f64 #s(literal 0 binary64) x))
(/.f64 (*.f64 (/.f64 (tan.f64 x) x) (cos.f64 x)) (sin.f64 x))
(/.f64 (*.f64 (/.f64 (tan.f64 x) x) (/.f64 #s(literal 1 binary64) (sin.f64 x))) (/.f64 #s(literal 1 binary64) (cos.f64 x)))
(/.f64 (*.f64 #s(literal -1 binary64) (/.f64 #s(literal 1 binary64) (*.f64 x (tan.f64 x)))) (/.f64 #s(literal -1 binary64) (tan.f64 x)))
(/.f64 (*.f64 (sin.f64 x) (/.f64 #s(literal 1 binary64) (*.f64 x (tan.f64 x)))) (cos.f64 x))
(/.f64 (*.f64 (/.f64 #s(literal 1 binary64) (sin.f64 x)) (/.f64 (tan.f64 x) x)) (/.f64 #s(literal 1 binary64) (cos.f64 x)))
(/.f64 (*.f64 (cos.f64 x) (/.f64 (tan.f64 x) x)) (sin.f64 x))
(/.f64 (*.f64 (-.f64 #s(literal 0 binary64) (cos.f64 x)) (/.f64 (tan.f64 x) x)) (-.f64 #s(literal 0 binary64) (sin.f64 x)))
(/.f64 (*.f64 (/.f64 #s(literal 1 binary64) (tan.f64 x)) (tan.f64 x)) x)
(/.f64 (*.f64 (/.f64 (tan.f64 x) x) (-.f64 #s(literal 0 binary64) (cos.f64 x))) (-.f64 #s(literal 0 binary64) (sin.f64 x)))
(/.f64 (*.f64 (/.f64 (sin.f64 x) x) (/.f64 #s(literal 1 binary64) (cos.f64 x))) (tan.f64 x))
(/.f64 (*.f64 (/.f64 (sin.f64 x) (tan.f64 x)) (/.f64 #s(literal 1 binary64) (cos.f64 x))) x)
(/.f64 (*.f64 (-.f64 #s(literal 0 binary64) (sin.f64 x)) (/.f64 #s(literal 1 binary64) (*.f64 x (tan.f64 x)))) (-.f64 #s(literal 0 binary64) (cos.f64 x)))
(/.f64 (/.f64 (sin.f64 x) (*.f64 x (tan.f64 x))) (cos.f64 x))
(/.f64 (/.f64 (-.f64 #s(literal 0 binary64) (sin.f64 x)) (*.f64 x (tan.f64 x))) (-.f64 #s(literal 0 binary64) (cos.f64 x)))
(/.f64 (/.f64 (/.f64 (tan.f64 x) x) (/.f64 #s(literal 1 binary64) (cos.f64 x))) (sin.f64 x))
(pow.f64 x #s(literal -1 binary64))
(pow.f64 (/.f64 #s(literal 1 binary64) x) #s(literal 1 binary64))
(pow.f64 (exp.f64 #s(literal -1 binary64)) (log.f64 x))
(*.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) x))
(*.f64 (/.f64 #s(literal 1 binary64) x) #s(literal 1 binary64))
(*.f64 (tan.f64 x) (/.f64 #s(literal 1 binary64) (*.f64 x (tan.f64 x))))
(*.f64 (/.f64 #s(literal 1 binary64) (tan.f64 x)) (/.f64 (tan.f64 x) x))
(*.f64 (sin.f64 x) (/.f64 (/.f64 #s(literal 1 binary64) (cos.f64 x)) (*.f64 x (tan.f64 x))))
(*.f64 (cos.f64 x) (/.f64 (tan.f64 x) (*.f64 x (sin.f64 x))))
(*.f64 (cos.f64 x) (*.f64 (/.f64 #s(literal 1 binary64) (sin.f64 x)) (/.f64 (tan.f64 x) x)))
(*.f64 #s(literal -1 binary64) (/.f64 #s(literal -1 binary64) x))
(*.f64 #s(literal -1 binary64) (/.f64 (-.f64 #s(literal 0 binary64) (tan.f64 x)) (*.f64 x (tan.f64 x))))
(*.f64 #s(literal -1 binary64) (/.f64 (tan.f64 x) (-.f64 #s(literal 0 binary64) (*.f64 x (tan.f64 x)))))
(*.f64 #s(literal -1 binary64) (/.f64 (sin.f64 x) (/.f64 (*.f64 x (cos.f64 x)) (/.f64 #s(literal -1 binary64) (tan.f64 x)))))
(*.f64 #s(literal -1 binary64) (*.f64 (-.f64 #s(literal 0 binary64) (tan.f64 x)) (/.f64 #s(literal 1 binary64) (*.f64 x (tan.f64 x)))))
(*.f64 #s(literal -1 binary64) (*.f64 (/.f64 #s(literal -1 binary64) (tan.f64 x)) (/.f64 (tan.f64 x) x)))
(*.f64 (-.f64 #s(literal 0 binary64) (tan.f64 x)) (/.f64 #s(literal -1 binary64) (*.f64 x (tan.f64 x))))
(*.f64 (-.f64 #s(literal 0 binary64) (tan.f64 x)) (*.f64 #s(literal -1 binary64) (/.f64 #s(literal 1 binary64) (*.f64 x (tan.f64 x)))))
(*.f64 (/.f64 #s(literal -1 binary64) (tan.f64 x)) (/.f64 (/.f64 (tan.f64 x) x) #s(literal -1 binary64)))
(*.f64 (-.f64 #s(literal 0 binary64) (sin.f64 x)) (/.f64 #s(literal 1 binary64) (/.f64 (*.f64 x (cos.f64 x)) (/.f64 #s(literal -1 binary64) (tan.f64 x)))))
(*.f64 (-.f64 #s(literal 0 binary64) (sin.f64 x)) (/.f64 (/.f64 #s(literal 1 binary64) (cos.f64 x)) (-.f64 #s(literal 0 binary64) (*.f64 x (tan.f64 x)))))
(*.f64 (-.f64 #s(literal 0 binary64) (sin.f64 x)) (*.f64 (/.f64 #s(literal -1 binary64) (cos.f64 x)) (/.f64 #s(literal 1 binary64) (*.f64 x (tan.f64 x)))))
(*.f64 (-.f64 #s(literal 0 binary64) (sin.f64 x)) (/.f64 (/.f64 #s(literal -1 binary64) (cos.f64 x)) (*.f64 x (tan.f64 x))))
(*.f64 (/.f64 #s(literal 1 binary64) (cos.f64 x)) (*.f64 (sin.f64 x) (/.f64 #s(literal 1 binary64) (*.f64 x (tan.f64 x)))))
(*.f64 (/.f64 #s(literal 1 binary64) (cos.f64 x)) (/.f64 (sin.f64 x) (*.f64 x (tan.f64 x))))
(*.f64 (/.f64 #s(literal 1 binary64) (*.f64 x (tan.f64 x))) (tan.f64 x))
(*.f64 (/.f64 #s(literal -1 binary64) x) #s(literal -1 binary64))
(*.f64 (/.f64 #s(literal 1 binary64) (sin.f64 x)) (*.f64 (cos.f64 x) (/.f64 (tan.f64 x) x)))
(*.f64 (/.f64 (sin.f64 x) x) (/.f64 (/.f64 #s(literal 1 binary64) (cos.f64 x)) (tan.f64 x)))
(*.f64 (/.f64 (/.f64 (tan.f64 x) x) #s(literal -1 binary64)) (/.f64 #s(literal -1 binary64) (tan.f64 x)))
(*.f64 (/.f64 (tan.f64 x) x) (/.f64 #s(literal 1 binary64) (tan.f64 x)))
(*.f64 (/.f64 (/.f64 #s(literal 1 binary64) (cos.f64 x)) (tan.f64 x)) (/.f64 (sin.f64 x) x))
(*.f64 (/.f64 (sin.f64 x) (tan.f64 x)) (/.f64 #s(literal 1 binary64) (*.f64 x (cos.f64 x))))
(*.f64 (/.f64 #s(literal 1 binary64) (*.f64 x (cos.f64 x))) (/.f64 (sin.f64 x) (tan.f64 x)))
(*.f64 (/.f64 #s(literal -1 binary64) (sin.f64 x)) (*.f64 (-.f64 #s(literal 0 binary64) (cos.f64 x)) (/.f64 (tan.f64 x) x)))
(*.f64 (/.f64 (tan.f64 x) (*.f64 x (sin.f64 x))) (cos.f64 x))
(*.f64 (/.f64 (/.f64 #s(literal 1 binary64) (cos.f64 x)) (*.f64 x (tan.f64 x))) (sin.f64 x))
(*.f64 (/.f64 (/.f64 (tan.f64 x) x) (-.f64 #s(literal 0 binary64) (sin.f64 x))) (-.f64 #s(literal 0 binary64) (cos.f64 x)))
(*.f64 (/.f64 (-.f64 #s(literal 0 binary64) (tan.f64 x)) (*.f64 x (tan.f64 x))) #s(literal -1 binary64))
(*.f64 (/.f64 (tan.f64 x) (-.f64 #s(literal 0 binary64) (*.f64 x (tan.f64 x)))) #s(literal -1 binary64))
(*.f64 (/.f64 (/.f64 (tan.f64 x) x) (-.f64 #s(literal 0 binary64) (tan.f64 x))) #s(literal -1 binary64))
(*.f64 (/.f64 (-.f64 #s(literal 0 binary64) (tan.f64 x)) (*.f64 x (sin.f64 x))) (-.f64 #s(literal 0 binary64) (cos.f64 x)))
(*.f64 (/.f64 (tan.f64 x) (sin.f64 x)) (/.f64 (cos.f64 x) x))
(*.f64 (*.f64 (/.f64 (tan.f64 x) x) (/.f64 #s(literal -1 binary64) (tan.f64 x))) #s(literal -1 binary64))
(*.f64 (/.f64 (tan.f64 x) (-.f64 #s(literal 0 binary64) (tan.f64 x))) (/.f64 #s(literal -1 binary64) x))
(*.f64 (*.f64 (/.f64 (tan.f64 x) x) (cos.f64 x)) (/.f64 #s(literal 1 binary64) (sin.f64 x)))
(*.f64 (*.f64 (/.f64 (tan.f64 x) x) (/.f64 #s(literal 1 binary64) (sin.f64 x))) (cos.f64 x))
(*.f64 (*.f64 (/.f64 (tan.f64 x) x) (/.f64 #s(literal -1 binary64) (sin.f64 x))) (-.f64 #s(literal 0 binary64) (cos.f64 x)))
(*.f64 (/.f64 (tan.f64 x) (-.f64 #s(literal 0 binary64) (sin.f64 x))) (/.f64 (-.f64 #s(literal 0 binary64) (cos.f64 x)) x))
(*.f64 (/.f64 (tan.f64 x) (-.f64 #s(literal 0 binary64) (*.f64 x (sin.f64 x)))) (-.f64 #s(literal 0 binary64) (cos.f64 x)))
(*.f64 (/.f64 (-.f64 #s(literal 0 binary64) (tan.f64 x)) (sin.f64 x)) (/.f64 (-.f64 #s(literal 0 binary64) (cos.f64 x)) x))
(*.f64 (/.f64 (-.f64 #s(literal 0 binary64) (tan.f64 x)) (-.f64 #s(literal 0 binary64) (sin.f64 x))) (/.f64 (cos.f64 x) x))
(+.f64 (/.f64 #s(literal 1 binary64) (tan.f64 x)) #s(literal 0 binary64))
(+.f64 #s(literal 0 binary64) (/.f64 #s(literal 1 binary64) (tan.f64 x)))
(+.f64 (-.f64 (/.f64 #s(literal 1 binary64) (tan.f64 x)) (/.f64 #s(literal -1 binary64) (tan.f64 x))) (/.f64 #s(literal -1 binary64) (tan.f64 x)))
(exp.f64 (log.f64 (/.f64 #s(literal 1 binary64) (tan.f64 x))))
(-.f64 (/.f64 #s(literal 1 binary64) (tan.f64 x)) #s(literal 0 binary64))
(-.f64 #s(literal 0 binary64) (/.f64 #s(literal -1 binary64) (tan.f64 x)))
(-.f64 (/.f64 #s(literal 0 binary64) (*.f64 x (tan.f64 x))) (/.f64 #s(literal -1 binary64) (tan.f64 x)))
(-.f64 (/.f64 #s(literal 0 binary64) (-.f64 #s(literal 0 binary64) (*.f64 x (tan.f64 x)))) (/.f64 #s(literal -1 binary64) (tan.f64 x)))
(-.f64 (/.f64 #s(literal 0 binary64) (-.f64 #s(literal 0 binary64) (sin.f64 x))) (/.f64 #s(literal -1 binary64) (tan.f64 x)))
(-.f64 (-.f64 (/.f64 #s(literal 1 binary64) (tan.f64 x)) (/.f64 #s(literal -1 binary64) (tan.f64 x))) (/.f64 #s(literal 1 binary64) (tan.f64 x)))
(fma.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (tan.f64 x)) #s(literal 0 binary64))
(fma.f64 x (/.f64 #s(literal 1 binary64) (*.f64 x (tan.f64 x))) #s(literal 0 binary64))
(fma.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 x (tan.f64 x)) #s(literal 0 binary64))
(fma.f64 (/.f64 #s(literal 1 binary64) (tan.f64 x)) #s(literal 1 binary64) #s(literal 0 binary64))
(fma.f64 (cos.f64 x) (/.f64 #s(literal 1 binary64) (sin.f64 x)) #s(literal 0 binary64))
(fma.f64 #s(literal -1 binary64) (/.f64 #s(literal -1 binary64) (tan.f64 x)) #s(literal 0 binary64))
(fma.f64 (/.f64 #s(literal -1 binary64) (tan.f64 x)) #s(literal -1 binary64) #s(literal 0 binary64))
(fma.f64 (/.f64 #s(literal 1 binary64) (sin.f64 x)) (cos.f64 x) #s(literal 0 binary64))
(fma.f64 (/.f64 x (tan.f64 x)) (/.f64 #s(literal 1 binary64) x) #s(literal 0 binary64))
(fma.f64 (/.f64 #s(literal -1 binary64) (sin.f64 x)) (-.f64 #s(literal 0 binary64) (cos.f64 x)) #s(literal 0 binary64))
(neg.f64 (/.f64 #s(literal -1 binary64) (tan.f64 x)))
(/.f64 #s(literal 1 binary64) (tan.f64 x))
(/.f64 x (*.f64 x (tan.f64 x)))
(/.f64 (/.f64 #s(literal 1 binary64) (tan.f64 x)) #s(literal 1 binary64))
(/.f64 (cos.f64 x) (sin.f64 x))
(/.f64 #s(literal -1 binary64) (-.f64 #s(literal 0 binary64) (tan.f64 x)))
(/.f64 #s(literal -1 binary64) (*.f64 (-.f64 #s(literal 0 binary64) (*.f64 x (tan.f64 x))) (/.f64 #s(literal 1 binary64) x)))
(/.f64 #s(literal -1 binary64) (*.f64 (*.f64 x (tan.f64 x)) (/.f64 #s(literal -1 binary64) x)))
(/.f64 (-.f64 #s(literal 0 binary64) x) (-.f64 #s(literal 0 binary64) (*.f64 x (tan.f64 x))))
(/.f64 (/.f64 #s(literal -1 binary64) (tan.f64 x)) #s(literal -1 binary64))
(/.f64 (-.f64 #s(literal 0 binary64) (cos.f64 x)) (-.f64 #s(literal 0 binary64) (sin.f64 x)))
(/.f64 (/.f64 #s(literal 1 binary64) (*.f64 x (tan.f64 x))) (/.f64 #s(literal 1 binary64) x))
(/.f64 (/.f64 #s(literal 1 binary64) (sin.f64 x)) (/.f64 #s(literal 1 binary64) (cos.f64 x)))
(/.f64 (/.f64 x (-.f64 #s(literal 0 binary64) (tan.f64 x))) (-.f64 #s(literal 0 binary64) x))
(/.f64 (*.f64 x (cos.f64 x)) (*.f64 x (sin.f64 x)))
(/.f64 (/.f64 x (tan.f64 x)) x)
(/.f64 (/.f64 #s(literal -1 binary64) (sin.f64 x)) (/.f64 #s(literal -1 binary64) (cos.f64 x)))
(/.f64 (*.f64 (/.f64 #s(literal 1 binary64) x) x) (tan.f64 x))
(/.f64 (/.f64 x (-.f64 #s(literal 0 binary64) x)) (-.f64 #s(literal 0 binary64) (tan.f64 x)))
(/.f64 (/.f64 (-.f64 #s(literal 0 binary64) x) x) (-.f64 #s(literal 0 binary64) (tan.f64 x)))
(/.f64 (/.f64 x (sin.f64 x)) (/.f64 x (cos.f64 x)))
(/.f64 (*.f64 (/.f64 #s(literal -1 binary64) (sin.f64 x)) #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) (cos.f64 x)))
(/.f64 (*.f64 #s(literal -1 binary64) (/.f64 #s(literal 1 binary64) (*.f64 x (tan.f64 x)))) (/.f64 #s(literal -1 binary64) x))
(pow.f64 (tan.f64 x) #s(literal -1 binary64))
(pow.f64 (/.f64 #s(literal 1 binary64) (tan.f64 x)) #s(literal 1 binary64))
(pow.f64 (exp.f64 #s(literal -1 binary64)) (log.f64 (tan.f64 x)))
(*.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (tan.f64 x)))
(*.f64 x (/.f64 #s(literal 1 binary64) (*.f64 x (tan.f64 x))))
(*.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 x (tan.f64 x)))
(*.f64 (/.f64 #s(literal 1 binary64) (tan.f64 x)) #s(literal 1 binary64))
(*.f64 (cos.f64 x) (/.f64 #s(literal 1 binary64) (sin.f64 x)))
(*.f64 #s(literal -1 binary64) (/.f64 #s(literal -1 binary64) (tan.f64 x)))
(*.f64 (-.f64 #s(literal 0 binary64) x) (/.f64 #s(literal -1 binary64) (*.f64 x (tan.f64 x))))
(*.f64 (-.f64 #s(literal 0 binary64) x) (*.f64 #s(literal -1 binary64) (/.f64 #s(literal 1 binary64) (*.f64 x (tan.f64 x)))))
(*.f64 (/.f64 #s(literal -1 binary64) (tan.f64 x)) #s(literal -1 binary64))
(*.f64 (-.f64 #s(literal 0 binary64) (cos.f64 x)) (/.f64 #s(literal -1 binary64) (sin.f64 x)))
(*.f64 (/.f64 #s(literal 1 binary64) (*.f64 x (tan.f64 x))) x)
(*.f64 (/.f64 #s(literal -1 binary64) x) (/.f64 x (-.f64 #s(literal 0 binary64) (tan.f64 x))))
(*.f64 (/.f64 #s(literal 1 binary64) (sin.f64 x)) (cos.f64 x))
(*.f64 (/.f64 x (-.f64 #s(literal 0 binary64) (tan.f64 x))) (/.f64 #s(literal -1 binary64) x))
(*.f64 (/.f64 x (tan.f64 x)) (/.f64 #s(literal 1 binary64) x))
(*.f64 (/.f64 #s(literal -1 binary64) (sin.f64 x)) (-.f64 #s(literal 0 binary64) (cos.f64 x)))
(*.f64 (/.f64 #s(literal -1 binary64) (sin.f64 x)) (pow.f64 (/.f64 #s(literal -1 binary64) (cos.f64 x)) #s(literal -1 binary64)))
(*.f64 (/.f64 #s(literal -1 binary64) (sin.f64 x)) (/.f64 (-.f64 #s(literal 0 binary64) (cos.f64 x)) #s(literal 1 binary64)))
(*.f64 (/.f64 (-.f64 #s(literal 0 binary64) x) (*.f64 x (sin.f64 x))) (-.f64 #s(literal 0 binary64) (cos.f64 x)))
(*.f64 (/.f64 x (-.f64 #s(literal 0 binary64) x)) (/.f64 #s(literal -1 binary64) (tan.f64 x)))
(*.f64 (/.f64 x (sin.f64 x)) (/.f64 (cos.f64 x) x))
(*.f64 (*.f64 (/.f64 #s(literal -1 binary64) (sin.f64 x)) #s(literal -1 binary64)) (cos.f64 x))
(*.f64 (/.f64 x (-.f64 #s(literal 0 binary64) (sin.f64 x))) (/.f64 (-.f64 #s(literal 0 binary64) (cos.f64 x)) x))
(*.f64 (/.f64 x (-.f64 #s(literal 0 binary64) (*.f64 x (sin.f64 x)))) (-.f64 #s(literal 0 binary64) (cos.f64 x)))
(*.f64 (/.f64 (-.f64 #s(literal 0 binary64) x) (sin.f64 x)) (/.f64 (-.f64 #s(literal 0 binary64) (cos.f64 x)) x))
(*.f64 (/.f64 (-.f64 #s(literal 0 binary64) x) (-.f64 #s(literal 0 binary64) (sin.f64 x))) (/.f64 (cos.f64 x) x))
(*.f64 (/.f64 (/.f64 #s(literal 1 binary64) (sin.f64 x)) #s(literal -1 binary64)) (-.f64 #s(literal 0 binary64) (cos.f64 x)))
(+.f64 (tan.f64 x) #s(literal 0 binary64))
(+.f64 #s(literal 0 binary64) (tan.f64 x))
(exp.f64 (log.f64 (tan.f64 x)))
(-.f64 #s(literal 0 binary64) (-.f64 #s(literal 0 binary64) (tan.f64 x)))
(-.f64 #s(literal 0 binary64) (-.f64 (-.f64 #s(literal 0 binary64) (tan.f64 x)) #s(literal 0 binary64)))
(-.f64 (/.f64 #s(literal 0 binary64) (-.f64 #s(literal 0 binary64) (cos.f64 x))) (-.f64 #s(literal 0 binary64) (tan.f64 x)))
(tan.f64 x)
(fma.f64 #s(literal 1 binary64) (tan.f64 x) #s(literal 0 binary64))
(fma.f64 (tan.f64 x) #s(literal 1 binary64) #s(literal 0 binary64))
(fma.f64 (sin.f64 x) (/.f64 #s(literal 1 binary64) (cos.f64 x)) #s(literal 0 binary64))
(fma.f64 #s(literal -1 binary64) (-.f64 #s(literal 0 binary64) (tan.f64 x)) #s(literal 0 binary64))
(fma.f64 (-.f64 #s(literal 0 binary64) (tan.f64 x)) #s(literal -1 binary64) #s(literal 0 binary64))
(fma.f64 (-.f64 #s(literal 0 binary64) (sin.f64 x)) (/.f64 #s(literal -1 binary64) (cos.f64 x)) #s(literal 0 binary64))
(fma.f64 (/.f64 #s(literal 1 binary64) (cos.f64 x)) (sin.f64 x) #s(literal 0 binary64))
(neg.f64 (-.f64 #s(literal 0 binary64) (tan.f64 x)))
(neg.f64 (tan.f64 (-.f64 #s(literal 0 binary64) x)))
(neg.f64 (*.f64 (-.f64 #s(literal 0 binary64) (*.f64 x (tan.f64 x))) (/.f64 #s(literal 1 binary64) x)))
(neg.f64 (*.f64 (*.f64 x (tan.f64 x)) (/.f64 #s(literal -1 binary64) x)))
(neg.f64 (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 x (tan.f64 x))) x))
(neg.f64 (/.f64 (*.f64 x (tan.f64 x)) (-.f64 #s(literal 0 binary64) x)))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (tan.f64 x)))
(/.f64 x (/.f64 x (tan.f64 x)))
(/.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal 1 binary64) (*.f64 x (tan.f64 x))))
(/.f64 (tan.f64 x) #s(literal 1 binary64))
(/.f64 (sin.f64 x) (cos.f64 x))
(/.f64 (sin.f64 x) (*.f64 x (/.f64 (cos.f64 x) x)))
(/.f64 #s(literal -1 binary64) (/.f64 #s(literal -1 binary64) (tan.f64 x)))
(/.f64 (*.f64 x (tan.f64 x)) x)
(/.f64 (-.f64 #s(literal 0 binary64) (tan.f64 x)) #s(literal -1 binary64))
(/.f64 (-.f64 #s(literal 0 binary64) (tan.f64 x)) (*.f64 x (/.f64 #s(literal -1 binary64) x)))
(/.f64 (-.f64 #s(literal 0 binary64) x) (*.f64 x (/.f64 #s(literal -1 binary64) (tan.f64 x))))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 x (tan.f64 x))) (-.f64 #s(literal 0 binary64) x))
(/.f64 (-.f64 #s(literal 0 binary64) (sin.f64 x)) (-.f64 #s(literal 0 binary64) (cos.f64 x)))
(/.f64 (-.f64 #s(literal 0 binary64) (sin.f64 x)) (*.f64 x (/.f64 (-.f64 #s(literal 0 binary64) (cos.f64 x)) x)))
(/.f64 (/.f64 #s(literal 1 binary64) (cos.f64 x)) (/.f64 #s(literal 1 binary64) (sin.f64 x)))
(/.f64 (*.f64 x (sin.f64 x)) (*.f64 x (cos.f64 x)))
(/.f64 (/.f64 (sin.f64 x) x) (/.f64 (cos.f64 x) x))
(/.f64 (/.f64 (/.f64 (tan.f64 x) x) #s(literal -1 binary64)) (/.f64 #s(literal -1 binary64) x))
(/.f64 (/.f64 (-.f64 #s(literal 0 binary64) (sin.f64 x)) x) (/.f64 (-.f64 #s(literal 0 binary64) (cos.f64 x)) x))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 x (sin.f64 x))) (/.f64 (cos.f64 x) (/.f64 #s(literal -1 binary64) x)))
(/.f64 (/.f64 (tan.f64 x) x) (/.f64 #s(literal 1 binary64) x))
(/.f64 (exp.f64 (log.f64 (sin.f64 x))) (exp.f64 (log.f64 (cos.f64 x))))
(/.f64 (exp.f64 (log.f64 (-.f64 #s(literal 0 binary64) (tan.f64 x)))) (exp.f64 (log.f64 #s(literal -1 binary64))))
(/.f64 (exp.f64 (log.f64 (-.f64 #s(literal 0 binary64) (sin.f64 x)))) (exp.f64 (log.f64 (-.f64 #s(literal 0 binary64) (cos.f64 x)))))
(/.f64 (*.f64 (-.f64 #s(literal 0 binary64) x) (/.f64 #s(literal 1 binary64) x)) (/.f64 #s(literal -1 binary64) (tan.f64 x)))
(/.f64 (/.f64 (sin.f64 x) #s(literal -1 binary64)) (-.f64 #s(literal 0 binary64) (cos.f64 x)))
(/.f64 (/.f64 (-.f64 #s(literal 0 binary64) (sin.f64 x)) #s(literal 1 binary64)) (-.f64 #s(literal 0 binary64) (cos.f64 x)))
(/.f64 (*.f64 (-.f64 #s(literal 0 binary64) (*.f64 x (tan.f64 x))) (/.f64 #s(literal 1 binary64) x)) #s(literal -1 binary64))
(/.f64 (/.f64 (*.f64 x (tan.f64 x)) (-.f64 #s(literal 0 binary64) x)) #s(literal -1 binary64))
(/.f64 (*.f64 (*.f64 x (sin.f64 x)) (/.f64 #s(literal 1 binary64) x)) (cos.f64 x))
(/.f64 (*.f64 (-.f64 #s(literal 0 binary64) (*.f64 x (sin.f64 x))) (/.f64 #s(literal 1 binary64) x)) (-.f64 #s(literal 0 binary64) (cos.f64 x)))
(/.f64 (/.f64 #s(literal 1 binary64) (/.f64 #s(literal -1 binary64) (sin.f64 x))) (-.f64 #s(literal 0 binary64) (cos.f64 x)))
(/.f64 (/.f64 #s(literal -1 binary64) (/.f64 #s(literal 1 binary64) (sin.f64 x))) (-.f64 #s(literal 0 binary64) (cos.f64 x)))
(pow.f64 (tan.f64 x) #s(literal 1 binary64))
(pow.f64 (/.f64 #s(literal 1 binary64) (tan.f64 x)) #s(literal -1 binary64))
(*.f64 #s(literal 1 binary64) (tan.f64 x))
(*.f64 x (/.f64 (tan.f64 x) x))
(*.f64 (/.f64 #s(literal 1 binary64) x) (*.f64 x (tan.f64 x)))
(*.f64 (tan.f64 x) #s(literal 1 binary64))
(*.f64 (sin.f64 x) (/.f64 #s(literal 1 binary64) (cos.f64 x)))
(*.f64 (sin.f64 x) (pow.f64 (/.f64 #s(literal 1 binary64) (cos.f64 x)) #s(literal 1 binary64)))
(*.f64 (sin.f64 x) (*.f64 (/.f64 x (cos.f64 x)) (/.f64 #s(literal 1 binary64) x)))
(*.f64 (sin.f64 x) (*.f64 (/.f64 #s(literal -1 binary64) (cos.f64 x)) #s(literal -1 binary64)))
(*.f64 (sin.f64 x) (/.f64 (/.f64 x (cos.f64 x)) x))
(*.f64 #s(literal -1 binary64) (-.f64 #s(literal 0 binary64) (tan.f64 x)))
(*.f64 #s(literal -1 binary64) (*.f64 (-.f64 #s(literal 0 binary64) (*.f64 x (tan.f64 x))) (/.f64 #s(literal 1 binary64) x)))
(*.f64 #s(literal -1 binary64) (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 x (tan.f64 x))) x))
(*.f64 (*.f64 x (tan.f64 x)) (/.f64 #s(literal 1 binary64) x))
(*.f64 (-.f64 #s(literal 0 binary64) (tan.f64 x)) #s(literal -1 binary64))
(*.f64 (-.f64 #s(literal 0 binary64) (tan.f64 x)) (*.f64 (-.f64 #s(literal 0 binary64) x) (/.f64 #s(literal 1 binary64) x)))
(*.f64 (-.f64 #s(literal 0 binary64) (tan.f64 x)) (/.f64 (-.f64 #s(literal 0 binary64) x) x))
(*.f64 (-.f64 #s(literal 0 binary64) x) (/.f64 (/.f64 (tan.f64 x) x) #s(literal -1 binary64)))
(*.f64 (-.f64 #s(literal 0 binary64) (*.f64 x (tan.f64 x))) (/.f64 #s(literal -1 binary64) x))
(*.f64 (-.f64 #s(literal 0 binary64) (sin.f64 x)) (/.f64 #s(literal -1 binary64) (cos.f64 x)))
(*.f64 (-.f64 #s(literal 0 binary64) (sin.f64 x)) (*.f64 (/.f64 #s(literal 1 binary64) (cos.f64 x)) #s(literal -1 binary64)))
(*.f64 (-.f64 #s(literal 0 binary64) (sin.f64 x)) (*.f64 (/.f64 #s(literal -1 binary64) (cos.f64 x)) #s(literal 1 binary64)))
(*.f64 (-.f64 #s(literal 0 binary64) (sin.f64 x)) (/.f64 (/.f64 #s(literal 1 binary64) (cos.f64 x)) #s(literal -1 binary64)))
(*.f64 (-.f64 #s(literal 0 binary64) (sin.f64 x)) (/.f64 (/.f64 #s(literal -1 binary64) (cos.f64 x)) #s(literal 1 binary64)))
(*.f64 (/.f64 #s(literal 1 binary64) (cos.f64 x)) (sin.f64 x))
(*.f64 (*.f64 x (sin.f64 x)) (/.f64 #s(literal 1 binary64) (*.f64 x (cos.f64 x))))
(*.f64 (/.f64 #s(literal -1 binary64) (cos.f64 x)) (-.f64 #s(literal 0 binary64) (sin.f64 x)))
(*.f64 (pow.f64 (/.f64 #s(literal 1 binary64) (cos.f64 x)) #s(literal 1 binary64)) (sin.f64 x))
(*.f64 (pow.f64 (-.f64 #s(literal 0 binary64) (sin.f64 x)) #s(literal 1 binary64)) (pow.f64 (/.f64 #s(literal -1 binary64) (cos.f64 x)) #s(literal 1 binary64)))
(*.f64 (pow.f64 (/.f64 #s(literal -1 binary64) (sin.f64 x)) #s(literal -1 binary64)) (/.f64 #s(literal -1 binary64) (cos.f64 x)))
(*.f64 (exp.f64 (log.f64 (sin.f64 x))) (exp.f64 (log.f64 (/.f64 #s(literal 1 binary64) (cos.f64 x)))))
(*.f64 (*.f64 (*.f64 x (tan.f64 x)) (/.f64 #s(literal -1 binary64) x)) #s(literal -1 binary64))
(*.f64 (/.f64 (*.f64 x (tan.f64 x)) (-.f64 #s(literal 0 binary64) x)) #s(literal -1 binary64))

simplify223.0ms (1.8%)

Algorithm
egg-herbie
Rules
2512×*-lowering-*.f32
2512×*-lowering-*.f64
2470×sum3-define
1924×+-lowering-+.f64
1924×+-lowering-+.f32
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
067302
1186269
2560266
31806266
42709266
54422266
66045266
76589266
08077266
Stop Event
iter limit
node limit
Counts
48 → 48
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 (/ (cos x) (sin x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(- (/ 1 x) (/ (cos x) (sin x)))
(- (/ 1 x) (/ (cos x) (sin 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)
(/ 1 x)
(/ 1 x)
(/ 1 x)
(/ 1 x)
(/ 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)
(/ (cos x) (sin x))
(/ (cos x) (sin x))
(/ (cos x) (sin x))
(/ (cos x) (sin x))
(/ (cos x) (sin x))
(/ (cos x) (sin x))
(/ (cos x) (sin x))
(/ (cos x) (sin 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))))))))
(/ (sin x) (cos x))
(/ (sin x) (cos x))
(/ (sin x) (cos x))
(/ (sin x) (cos x))
(/ (sin x) (cos x))
(/ (sin x) (cos x))
(/ (sin x) (cos x))
(/ (sin x) (cos x))
Outputs
(* 1/3 x)
(*.f64 #s(literal 1/3 binary64) x)
(* x (+ 1/3 (* 1/45 (pow x 2))))
(*.f64 x (-.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal -1/45 binary64))))
(* x (+ 1/3 (* (pow x 2) (+ 1/45 (* 2/945 (pow x 2))))))
(*.f64 x (-.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))))
(* x (+ 1/3 (* (pow x 2) (+ 1/45 (* (pow x 2) (+ 2/945 (* 1/4725 (pow x 2))))))))
(*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) (+.f64 #s(literal 1/45 binary64) (*.f64 (*.f64 x x) (+.f64 #s(literal 2/945 binary64) (*.f64 (*.f64 x x) #s(literal 1/4725 binary64))))))))
(* -1 (/ (cos x) (sin x)))
(/.f64 (cos.f64 x) (-.f64 #s(literal 0 binary64) (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 (/ (cos x) (sin x)))
(/.f64 (cos.f64 x) (-.f64 #s(literal 0 binary64) (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)
(/ 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 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 (+.f64 #s(literal 1 binary64) (*.f64 x (*.f64 x #s(literal -1/3 binary64)))) x)
(/ (+ 1 (* (pow x 2) (- (* -1/45 (pow x 2)) 1/3))) x)
(/.f64 (+.f64 #s(literal 1 binary64) (*.f64 x (*.f64 x (+.f64 #s(literal -1/3 binary64) (*.f64 (*.f64 x x) #s(literal -1/45 binary64)))))) x)
(/ (+ 1 (* (pow x 2) (- (* (pow x 2) (- (* -2/945 (pow x 2)) 1/45)) 1/3))) x)
(/.f64 (+.f64 #s(literal 1 binary64) (*.f64 x (*.f64 x (+.f64 #s(literal -1/3 binary64) (*.f64 (*.f64 x x) (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 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))
(/ (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))
x
(* x (+ 1 (* 1/3 (pow x 2))))
(*.f64 x (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/3 binary64) (*.f64 x x))))
(* x (+ 1 (* (pow x 2) (+ 1/3 (* 2/15 (pow x 2))))))
(*.f64 x (+.f64 #s(literal 1 binary64) (*.f64 x (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal 2/15 binary64)))))))
(* x (+ 1 (* (pow x 2) (+ 1/3 (* (pow x 2) (+ 2/15 (* 17/315 (pow x 2))))))))
(*.f64 x (+.f64 #s(literal 1 binary64) (*.f64 (*.f64 x x) (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) (+.f64 #s(literal 2/15 binary64) (*.f64 x (*.f64 x #s(literal 17/315 binary64)))))))))
(/ (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))
(/ (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))

eval154.0ms (1.2%)

Compiler

Compiled 7681 to 1240 computations (83.9% saved)

prune60.0ms (0.5%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New5213524
Fresh000
Picked101
Done000
Total5223525
Accuracy
99.5%
Counts
525 → 3
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.5%
(*.f64 x (-.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))))
99.5%
(*.f64 x (-.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal -1/45 binary64))))
98.6%
(*.f64 #s(literal 1/3 binary64) x)
Compiler

Compiled 30 to 20 computations (33.3% saved)

simplify154.0ms (1.2%)

Algorithm
egg-herbie
Localize:

Found 9 expressions of interest:

NewMetricScoreProgram
cost-diff0
(*.f64 x x)
cost-diff0
(*.f64 (*.f64 x x) (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))
cost-diff0
(-.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64)))))
cost-diff0
(*.f64 x (-.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))))
cost-diff0
(*.f64 x x)
cost-diff0
(*.f64 (*.f64 x x) #s(literal -1/45 binary64))
cost-diff0
(-.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal -1/45 binary64)))
cost-diff0
(*.f64 x (-.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal -1/45 binary64))))
cost-diff0
(*.f64 #s(literal 1/3 binary64) x)
Rules
2142×sum3-define
2072×sum4-define
1540×fnmsub-define
1424×fmsub-define
1386×fma-lowering-fma.f32
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01477
14273
213169
341769
4119869
5239669
6513269
7787969
0803969
Stop Event
iter limit
node limit
Calls
Call 1
Inputs
(* 1/3 x)
1/3
x
(* x (- 1/3 (* (* x x) -1/45)))
x
(- 1/3 (* (* x x) -1/45))
1/3
(* (* x x) -1/45)
(* x x)
-1/45
(* x (- 1/3 (* (* x x) (+ -1/45 (* (* x x) -2/945)))))
x
(- 1/3 (* (* x x) (+ -1/45 (* (* x x) -2/945))))
1/3
(* (* x x) (+ -1/45 (* (* x x) -2/945)))
(* x x)
(+ -1/45 (* (* x x) -2/945))
-1/45
(* (* x x) -2/945)
-2/945
Outputs
(* 1/3 x)
(*.f64 #s(literal 1/3 binary64) x)
1/3
#s(literal 1/3 binary64)
x
(* x (- 1/3 (* (* x x) -1/45)))
(*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal 1/45 binary64))))
x
(- 1/3 (* (* x x) -1/45))
(+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal 1/45 binary64)))
1/3
#s(literal 1/3 binary64)
(* (* x x) -1/45)
(*.f64 (*.f64 x x) #s(literal -1/45 binary64))
(* x x)
(*.f64 x x)
-1/45
#s(literal -1/45 binary64)
(* x (- 1/3 (* (* x x) (+ -1/45 (* (* x x) -2/945)))))
(*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) (+.f64 #s(literal 1/45 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64)))))))
x
(- 1/3 (* (* x x) (+ -1/45 (* (* x x) -2/945))))
(+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) (+.f64 #s(literal 1/45 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64))))))
1/3
#s(literal 1/3 binary64)
(* (* x x) (+ -1/45 (* (* x x) -2/945)))
(*.f64 (*.f64 x x) (-.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64)))))
(* x x)
(*.f64 x x)
(+ -1/45 (* (* x x) -2/945))
(-.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64))))
-1/45
#s(literal -1/45 binary64)
(* (* x x) -2/945)
(*.f64 x (*.f64 x #s(literal -2/945 binary64)))
-2/945
#s(literal -2/945 binary64)

localize143.0ms (1.1%)

Localize:

Found 9 expressions of interest:

NewMetricScoreProgram
accuracy100.0%
(+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64)))
accuracy99.7%
(*.f64 (*.f64 x x) (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))
accuracy99.7%
(*.f64 (*.f64 x x) #s(literal -2/945 binary64))
accuracy99.5%
(*.f64 x (-.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))))
accuracy100.0%
(*.f64 x x)
accuracy100.0%
(-.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal -1/45 binary64)))
accuracy99.7%
(*.f64 (*.f64 x x) #s(literal -1/45 binary64))
accuracy99.6%
(*.f64 x (-.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal -1/45 binary64))))
accuracy99.5%
(*.f64 #s(literal 1/3 binary64) x)
Results
122.0ms256×0valid
Compiler

Compiled 92 to 15 computations (83.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 27.0ms
ival-mult: 12.0ms (44.8% of total)
...c/correct-round.rkt:119:19: 11.0ms (41.1% of total)
ival-sub: 3.0ms (11.2% of total)
ival-add: 1.0ms (3.7% of total)
const: 0.0ms (0% of total)
backward-pass: 0.0ms (0% of total)

series8.0ms (0.1%)

Counts
10 → 120
Calls
Call 1
Inputs
#<alt (* 1/3 x)>
#<alt (* x (- 1/3 (* (* x x) -1/45)))>
#<alt (- 1/3 (* (* x x) -1/45))>
#<alt (* (* x x) -1/45)>
#<alt (* x x)>
#<alt (* x (- 1/3 (* (* x x) (+ -1/45 (* (* x x) -2/945)))))>
#<alt (- 1/3 (* (* x x) (+ -1/45 (* (* x x) -2/945))))>
#<alt (* (* x x) (+ -1/45 (* (* x x) -2/945)))>
#<alt (* (* x x) -2/945)>
#<alt (+ -1/45 (* (* x x) -2/945))>
Outputs
#<alt (* 1/3 x)>
#<alt (* 1/3 x)>
#<alt (* 1/3 x)>
#<alt (* 1/3 x)>
#<alt (* 1/3 x)>
#<alt (* 1/3 x)>
#<alt (* 1/3 x)>
#<alt (* 1/3 x)>
#<alt (* 1/3 x)>
#<alt (* 1/3 x)>
#<alt (* 1/3 x)>
#<alt (* 1/3 x)>
#<alt (* 1/3 x)>
#<alt (* x (+ 1/3 (* 1/45 (pow x 2))))>
#<alt (* x (+ 1/3 (* 1/45 (pow x 2))))>
#<alt (* x (+ 1/3 (* 1/45 (pow x 2))))>
#<alt (* 1/45 (pow x 3))>
#<alt (* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))>
#<alt (* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))>
#<alt (* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))>
#<alt (* 1/45 (pow x 3))>
#<alt (* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))>
#<alt (* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))>
#<alt (* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))>
#<alt 1/3>
#<alt (+ 1/3 (* 1/45 (pow x 2)))>
#<alt (+ 1/3 (* 1/45 (pow x 2)))>
#<alt (+ 1/3 (* 1/45 (pow x 2)))>
#<alt (* 1/45 (pow x 2))>
#<alt (* (pow x 2) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))>
#<alt (* (pow x 2) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))>
#<alt (* (pow x 2) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))>
#<alt (* 1/45 (pow x 2))>
#<alt (* (pow x 2) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))>
#<alt (* (pow x 2) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))>
#<alt (* (pow x 2) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))>
#<alt (* -1/45 (pow x 2))>
#<alt (* -1/45 (pow x 2))>
#<alt (* -1/45 (pow x 2))>
#<alt (* -1/45 (pow x 2))>
#<alt (* -1/45 (pow x 2))>
#<alt (* -1/45 (pow x 2))>
#<alt (* -1/45 (pow x 2))>
#<alt (* -1/45 (pow x 2))>
#<alt (* -1/45 (pow x 2))>
#<alt (* -1/45 (pow x 2))>
#<alt (* -1/45 (pow x 2))>
#<alt (* -1/45 (pow x 2))>
#<alt (pow x 2)>
#<alt (pow x 2)>
#<alt (pow x 2)>
#<alt (pow x 2)>
#<alt (pow x 2)>
#<alt (pow x 2)>
#<alt (pow x 2)>
#<alt (pow x 2)>
#<alt (pow x 2)>
#<alt (pow x 2)>
#<alt (pow x 2)>
#<alt (pow x 2)>
#<alt (* 1/3 x)>
#<alt (* x (+ 1/3 (* 1/45 (pow x 2))))>
#<alt (* x (+ 1/3 (* (pow x 2) (+ 1/45 (* 2/945 (pow x 2))))))>
#<alt (* x (+ 1/3 (* (pow x 2) (+ 1/45 (* 2/945 (pow x 2))))))>
#<alt (* 2/945 (pow x 5))>
#<alt (* (pow x 5) (+ 2/945 (* 1/45 (/ 1 (pow x 2)))))>
#<alt (* (pow x 5) (+ 2/945 (+ (/ 1/3 (pow x 4)) (* 1/45 (/ 1 (pow x 2))))))>
#<alt (* (pow x 5) (+ 2/945 (+ (/ 1/3 (pow x 4)) (* 1/45 (/ 1 (pow x 2))))))>
#<alt (* 2/945 (pow x 5))>
#<alt (* (pow x 5) (+ 2/945 (* 1/45 (/ 1 (pow x 2)))))>
#<alt (* -1 (* (pow x 5) (- (* -1 (/ (+ 1/45 (* 1/3 (/ 1 (pow x 2)))) (pow x 2))) 2/945)))>
#<alt (* -1 (* (pow x 5) (- (* -1 (/ (+ 1/45 (* 1/3 (/ 1 (pow x 2)))) (pow x 2))) 2/945)))>
#<alt 1/3>
#<alt (+ 1/3 (* 1/45 (pow x 2)))>
#<alt (+ 1/3 (* (pow x 2) (+ 1/45 (* 2/945 (pow x 2)))))>
#<alt (+ 1/3 (* (pow x 2) (+ 1/45 (* 2/945 (pow x 2)))))>
#<alt (* 2/945 (pow x 4))>
#<alt (* (pow x 4) (+ 2/945 (* 1/45 (/ 1 (pow x 2)))))>
#<alt (* (pow x 4) (+ 2/945 (+ (/ 1/3 (pow x 4)) (* 1/45 (/ 1 (pow x 2))))))>
#<alt (* (pow x 4) (+ 2/945 (+ (/ 1/3 (pow x 4)) (* 1/45 (/ 1 (pow x 2))))))>
#<alt (* 2/945 (pow x 4))>
#<alt (* (pow x 4) (+ 2/945 (* 1/45 (/ 1 (pow x 2)))))>
#<alt (* (pow x 4) (+ 2/945 (+ (/ 1/3 (pow x 4)) (* 1/45 (/ 1 (pow x 2))))))>
#<alt (* (pow x 4) (+ 2/945 (+ (/ 1/3 (pow x 4)) (* 1/45 (/ 1 (pow x 2))))))>
#<alt (* -1/45 (pow x 2))>
#<alt (* (pow x 2) (- (* -2/945 (pow x 2)) 1/45))>
#<alt (* (pow x 2) (- (* -2/945 (pow x 2)) 1/45))>
#<alt (* (pow x 2) (- (* -2/945 (pow x 2)) 1/45))>
#<alt (* -2/945 (pow x 4))>
#<alt (* -1 (* (pow x 4) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))))>
#<alt (* -1 (* (pow x 4) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))))>
#<alt (* -1 (* (pow x 4) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))))>
#<alt (* -2/945 (pow x 4))>
#<alt (* -1 (* (pow x 4) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))))>
#<alt (* -1 (* (pow x 4) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))))>
#<alt (* -1 (* (pow x 4) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))))>
#<alt (* -2/945 (pow x 2))>
#<alt (* -2/945 (pow x 2))>
#<alt (* -2/945 (pow x 2))>
#<alt (* -2/945 (pow x 2))>
#<alt (* -2/945 (pow x 2))>
#<alt (* -2/945 (pow x 2))>
#<alt (* -2/945 (pow x 2))>
#<alt (* -2/945 (pow x 2))>
#<alt (* -2/945 (pow x 2))>
#<alt (* -2/945 (pow x 2))>
#<alt (* -2/945 (pow x 2))>
#<alt (* -2/945 (pow x 2))>
#<alt -1/45>
#<alt (- (* -2/945 (pow x 2)) 1/45)>
#<alt (- (* -2/945 (pow x 2)) 1/45)>
#<alt (- (* -2/945 (pow x 2)) 1/45)>
#<alt (* -2/945 (pow x 2))>
#<alt (* -1 (* (pow x 2) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))))>
#<alt (* -1 (* (pow x 2) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))))>
#<alt (* -1 (* (pow x 2) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))))>
#<alt (* -2/945 (pow x 2))>
#<alt (* -1 (* (pow x 2) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))))>
#<alt (* -1 (* (pow x 2) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))))>
#<alt (* -1 (* (pow x 2) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))))>
Calls

30 calls:

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

rewrite133.0ms (1.1%)

Algorithm
batch-egg-rewrite
Rules
2100×fnmadd-define
1858×sum3-define
1428×fma-define
1410×fma-lowering-fma.f32
1410×fma-lowering-fma.f64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01466
14462
213658
343658
4167358
5562758
0859058
Stop Event
iter limit
node limit
Counts
10 → 313
Calls
Call 1
Inputs
(* 1/3 x)
(* x (- 1/3 (* (* x x) -1/45)))
(- 1/3 (* (* x x) -1/45))
(* (* x x) -1/45)
(* x x)
(* x (- 1/3 (* (* x x) (+ -1/45 (* (* x x) -2/945)))))
(- 1/3 (* (* x x) (+ -1/45 (* (* x x) -2/945))))
(* (* x x) (+ -1/45 (* (* x x) -2/945)))
(* (* x x) -2/945)
(+ -1/45 (* (* x x) -2/945))
Outputs
(+.f64 (*.f64 #s(literal 1/3 binary64) x) #s(literal 0 binary64))
(neg.f64 (*.f64 (-.f64 #s(literal 0 binary64) x) #s(literal 1/3 binary64)))
(neg.f64 (*.f64 #s(literal 1/3 binary64) (-.f64 #s(literal 0 binary64) x)))
(*.f64 #s(literal 1/3 binary64) x)
(*.f64 x #s(literal 1/3 binary64))
(+.f64 (*.f64 #s(literal 1/3 binary64) x) (*.f64 x (*.f64 x (*.f64 x #s(literal 1/45 binary64)))))
(+.f64 (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 1/45 binary64))))) (+.f64 (*.f64 x (*.f64 x (*.f64 x #s(literal 1/45 binary64)))) (*.f64 x (*.f64 x (*.f64 x #s(literal -1/45 binary64))))))
(+.f64 (*.f64 x (*.f64 x (*.f64 x #s(literal 1/45 binary64)))) (*.f64 #s(literal 1/3 binary64) x))
(+.f64 #s(literal 0 binary64) (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 1/45 binary64))))))
(-.f64 (*.f64 #s(literal 1/3 binary64) x) (*.f64 x (*.f64 x (*.f64 x #s(literal -1/45 binary64)))))
(-.f64 #s(literal 0 binary64) (*.f64 x (+.f64 (*.f64 x (*.f64 x #s(literal -1/45 binary64))) #s(literal -1/3 binary64))))
(-.f64 #s(literal 0 binary64) (+.f64 (*.f64 x (*.f64 x (*.f64 x #s(literal -1/45 binary64)))) (*.f64 #s(literal -1/3 binary64) x)))
(fma.f64 #s(literal 1/3 binary64) x (*.f64 x (*.f64 x (*.f64 x #s(literal 1/45 binary64)))))
(fma.f64 x #s(literal 1/3 binary64) (*.f64 x (*.f64 x (*.f64 x #s(literal 1/45 binary64)))))
(fma.f64 x (*.f64 x (*.f64 x #s(literal 1/45 binary64))) (*.f64 #s(literal 1/3 binary64) x))
(fma.f64 (*.f64 x x) (*.f64 x #s(literal 1/45 binary64)) (*.f64 #s(literal 1/3 binary64) x))
(fma.f64 #s(literal -1/45 binary64) (-.f64 #s(literal 0 binary64) (*.f64 x (*.f64 x x))) (*.f64 #s(literal 1/3 binary64) x))
(fma.f64 (*.f64 x (*.f64 x #s(literal -1/45 binary64))) (-.f64 #s(literal 0 binary64) x) (*.f64 #s(literal 1/3 binary64) x))
(fma.f64 (*.f64 x (*.f64 x #s(literal 1/45 binary64))) x (*.f64 #s(literal 1/3 binary64) x))
(fma.f64 (-.f64 #s(literal 0 binary64) (*.f64 x x)) (*.f64 x #s(literal -1/45 binary64)) (*.f64 #s(literal 1/3 binary64) x))
(fma.f64 (*.f64 x #s(literal -1/45 binary64)) (-.f64 #s(literal 0 binary64) (*.f64 x x)) (*.f64 #s(literal 1/3 binary64) x))
(fma.f64 #s(literal -1 binary64) (*.f64 x (*.f64 x (*.f64 x #s(literal -1/45 binary64)))) (*.f64 #s(literal 1/3 binary64) x))
(fma.f64 (-.f64 #s(literal 0 binary64) x) (*.f64 x (*.f64 x #s(literal -1/45 binary64))) (*.f64 #s(literal 1/3 binary64) x))
(fma.f64 #s(literal 1/45 binary64) (*.f64 x (*.f64 x x)) (*.f64 #s(literal 1/3 binary64) x))
(fma.f64 (*.f64 x #s(literal 1/45 binary64)) (*.f64 x x) (*.f64 #s(literal 1/3 binary64) x))
(fma.f64 (*.f64 x (*.f64 x x)) #s(literal 1/45 binary64) (*.f64 #s(literal 1/3 binary64) x))
(fma.f64 (*.f64 x (*.f64 x (*.f64 x #s(literal -1/45 binary64)))) #s(literal -1 binary64) (*.f64 #s(literal 1/3 binary64) x))
(fma.f64 (-.f64 #s(literal 0 binary64) (*.f64 x (*.f64 x x))) #s(literal -1/45 binary64) (*.f64 #s(literal 1/3 binary64) x))
(neg.f64 (*.f64 x (+.f64 (*.f64 x (*.f64 x #s(literal -1/45 binary64))) #s(literal -1/3 binary64))))
(neg.f64 (+.f64 (*.f64 x (*.f64 x (*.f64 x #s(literal -1/45 binary64)))) (*.f64 #s(literal -1/3 binary64) x)))
(neg.f64 (*.f64 (-.f64 #s(literal 0 binary64) x) (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 1/45 binary64))))))
(neg.f64 (*.f64 (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 1/45 binary64)))) (-.f64 #s(literal 0 binary64) x)))
(*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 1/45 binary64)))))
(*.f64 (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 1/45 binary64)))) x)
(*.f64 #s(literal -1 binary64) (*.f64 x (+.f64 (*.f64 x (*.f64 x #s(literal -1/45 binary64))) #s(literal -1/3 binary64))))
(*.f64 (-.f64 #s(literal 0 binary64) x) (+.f64 (*.f64 x (*.f64 x #s(literal -1/45 binary64))) #s(literal -1/3 binary64)))
(*.f64 (+.f64 (*.f64 x (*.f64 x #s(literal -1/45 binary64))) #s(literal -1/3 binary64)) (-.f64 #s(literal 0 binary64) x))
(+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 1/45 binary64))))
(+.f64 (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 1/45 binary64)))) #s(literal 0 binary64))
(+.f64 (*.f64 x (*.f64 x #s(literal 1/45 binary64))) #s(literal 1/3 binary64))
(+.f64 #s(literal 0 binary64) (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 1/45 binary64)))))
(-.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal -1/45 binary64))))
(-.f64 (*.f64 x (*.f64 x #s(literal 1/45 binary64))) #s(literal -1/3 binary64))
(-.f64 #s(literal 0 binary64) (+.f64 (*.f64 x (*.f64 x #s(literal -1/45 binary64))) #s(literal -1/3 binary64)))
(fma.f64 x (*.f64 x #s(literal 1/45 binary64)) #s(literal 1/3 binary64))
(fma.f64 (*.f64 x x) #s(literal 1/45 binary64) #s(literal 1/3 binary64))
(fma.f64 #s(literal -1/45 binary64) (-.f64 #s(literal 0 binary64) (*.f64 x x)) #s(literal 1/3 binary64))
(fma.f64 (*.f64 x (*.f64 x #s(literal -1/45 binary64))) #s(literal -1 binary64) #s(literal 1/3 binary64))
(fma.f64 (-.f64 #s(literal 0 binary64) (*.f64 x x)) #s(literal -1/45 binary64) #s(literal 1/3 binary64))
(fma.f64 (*.f64 x #s(literal -1/45 binary64)) (-.f64 #s(literal 0 binary64) x) #s(literal 1/3 binary64))
(fma.f64 #s(literal -1 binary64) (*.f64 x (*.f64 x #s(literal -1/45 binary64))) #s(literal 1/3 binary64))
(fma.f64 (-.f64 #s(literal 0 binary64) x) (*.f64 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))
(fma.f64 (*.f64 x #s(literal 1/45 binary64)) x #s(literal 1/3 binary64))
(neg.f64 (+.f64 (*.f64 x (*.f64 x #s(literal -1/45 binary64))) #s(literal -1/3 binary64)))
(*.f64 #s(literal -1 binary64) (+.f64 (*.f64 x (*.f64 x #s(literal -1/45 binary64))) #s(literal -1/3 binary64)))
(+.f64 (*.f64 x (*.f64 x #s(literal -1/45 binary64))) #s(literal 0 binary64))
(-.f64 (*.f64 x (*.f64 x #s(literal -1/45 binary64))) #s(literal 0 binary64))
(-.f64 #s(literal 0 binary64) (*.f64 x (*.f64 x #s(literal 1/45 binary64))))
(fma.f64 x (*.f64 x #s(literal -1/45 binary64)) #s(literal 0 binary64))
(fma.f64 (*.f64 x x) #s(literal -1/45 binary64) #s(literal 0 binary64))
(fma.f64 #s(literal -1/45 binary64) (*.f64 x x) #s(literal 0 binary64))
(fma.f64 (*.f64 x #s(literal -1/45 binary64)) x #s(literal 0 binary64))
(neg.f64 (*.f64 x (*.f64 x #s(literal 1/45 binary64))))
(*.f64 x (*.f64 x #s(literal -1/45 binary64)))
(*.f64 (*.f64 x x) #s(literal -1/45 binary64))
(*.f64 #s(literal -1/45 binary64) (*.f64 x x))
(*.f64 (*.f64 x (*.f64 x #s(literal -1/45 binary64))) #s(literal 1 binary64))
(*.f64 (*.f64 x (*.f64 x #s(literal 1/45 binary64))) #s(literal -1 binary64))
(*.f64 (-.f64 #s(literal 0 binary64) (*.f64 x x)) #s(literal 1/45 binary64))
(*.f64 (*.f64 x #s(literal -1/45 binary64)) x)
(*.f64 #s(literal -1 binary64) (*.f64 x (*.f64 x #s(literal 1/45 binary64))))
(*.f64 (-.f64 #s(literal 0 binary64) x) (*.f64 x #s(literal 1/45 binary64)))
(*.f64 #s(literal 1/45 binary64) (-.f64 #s(literal 0 binary64) (*.f64 x x)))
(*.f64 (*.f64 x #s(literal 1/45 binary64)) (-.f64 #s(literal 0 binary64) x))
(*.f64 #s(literal 1 binary64) (*.f64 x (*.f64 x #s(literal -1/45 binary64))))
(+.f64 (*.f64 x x) #s(literal 0 binary64))
(+.f64 #s(literal 0 binary64) (*.f64 x x))
(exp.f64 (*.f64 #s(literal 2 binary64) (log.f64 x)))
(-.f64 (*.f64 x x) #s(literal 0 binary64))
(-.f64 #s(literal 0 binary64) (-.f64 #s(literal 0 binary64) (*.f64 x x)))
(fma.f64 x x #s(literal 0 binary64))
(fma.f64 (*.f64 x x) #s(literal 1 binary64) #s(literal 0 binary64))
(fma.f64 (-.f64 #s(literal 0 binary64) (*.f64 x x)) #s(literal -1 binary64) #s(literal 0 binary64))
(fma.f64 #s(literal -1 binary64) (-.f64 #s(literal 0 binary64) (*.f64 x x)) #s(literal 0 binary64))
(fma.f64 (-.f64 #s(literal 0 binary64) x) (-.f64 #s(literal 0 binary64) x) #s(literal 0 binary64))
(fma.f64 #s(literal 1 binary64) (*.f64 x x) #s(literal 0 binary64))
(neg.f64 (-.f64 #s(literal 0 binary64) (*.f64 x x)))
(pow.f64 x #s(literal 2 binary64))
(pow.f64 (-.f64 #s(literal 0 binary64) x) #s(literal 2 binary64))
(pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 x))
(*.f64 x x)
(*.f64 (*.f64 x x) #s(literal 1 binary64))
(*.f64 (-.f64 #s(literal 0 binary64) (*.f64 x x)) #s(literal -1 binary64))
(*.f64 #s(literal -1 binary64) (-.f64 #s(literal 0 binary64) (*.f64 x x)))
(*.f64 (-.f64 #s(literal 0 binary64) x) (-.f64 #s(literal 0 binary64) x))
(*.f64 #s(literal 1 binary64) (*.f64 x x))
(+.f64 (*.f64 #s(literal 1/3 binary64) x) (*.f64 x (*.f64 (*.f64 x x) (+.f64 #s(literal 1/45 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64)))))))
(+.f64 (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 1/45 binary64))))) (*.f64 x (*.f64 (*.f64 x (*.f64 x (*.f64 x x))) #s(literal 2/945 binary64))))
(+.f64 (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) (+.f64 #s(literal 1/45 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64))))))) (+.f64 (*.f64 x (*.f64 (*.f64 x x) (+.f64 #s(literal 1/45 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64)))))) (*.f64 (*.f64 x x) (*.f64 x (-.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64))))))))
(+.f64 (*.f64 x (*.f64 (*.f64 x x) (+.f64 #s(literal 1/45 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64)))))) (*.f64 #s(literal 1/3 binary64) x))
(+.f64 (*.f64 x (*.f64 x (*.f64 x #s(literal 1/45 binary64)))) (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x (*.f64 x (*.f64 x x))) #s(literal 2/945 binary64)))))
(+.f64 (*.f64 x (*.f64 (*.f64 x (*.f64 x (*.f64 x x))) #s(literal 2/945 binary64))) (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 1/45 binary64))))))
(+.f64 #s(literal 0 binary64) (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) (+.f64 #s(literal 1/45 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64))))))))
(+.f64 (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x (*.f64 x (*.f64 x x))) #s(literal 2/945 binary64)))) (*.f64 x (*.f64 x (*.f64 x #s(literal 1/45 binary64)))))
(-.f64 (*.f64 #s(literal 1/3 binary64) x) (*.f64 (*.f64 x x) (*.f64 x (-.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64)))))))
(-.f64 (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 1/45 binary64))))) (*.f64 x (*.f64 #s(literal -2/945 binary64) (*.f64 x (*.f64 x (*.f64 x x))))))
(-.f64 (*.f64 x (*.f64 (*.f64 x (*.f64 x (*.f64 x x))) #s(literal 2/945 binary64))) (*.f64 x (+.f64 (*.f64 x (*.f64 x #s(literal -1/45 binary64))) #s(literal -1/3 binary64))))
(-.f64 (*.f64 x (*.f64 (*.f64 x (*.f64 x (*.f64 x x))) #s(literal 2/945 binary64))) (+.f64 (*.f64 x (*.f64 x (*.f64 x #s(literal -1/45 binary64)))) (*.f64 #s(literal -1/3 binary64) x)))
(-.f64 #s(literal 0 binary64) (*.f64 x (+.f64 (*.f64 (*.f64 x x) (-.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64))))) #s(literal -1/3 binary64))))
(-.f64 #s(literal 0 binary64) (+.f64 (*.f64 (*.f64 x x) (*.f64 x (-.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64)))))) (*.f64 #s(literal -1/3 binary64) x)))
(-.f64 #s(literal 0 binary64) (+.f64 (*.f64 x (*.f64 x (*.f64 x #s(literal -1/45 binary64)))) (*.f64 (+.f64 (*.f64 #s(literal -2/945 binary64) (*.f64 x (*.f64 x (*.f64 x x)))) #s(literal -1/3 binary64)) x)))
(-.f64 (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x (*.f64 x (*.f64 x x))) #s(literal 2/945 binary64)))) (*.f64 x (*.f64 x (*.f64 x #s(literal -1/45 binary64)))))
(fma.f64 #s(literal 1/3 binary64) x (*.f64 x (*.f64 (*.f64 x x) (+.f64 #s(literal 1/45 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64)))))))
(fma.f64 x #s(literal 1/3 binary64) (*.f64 x (*.f64 (*.f64 x x) (+.f64 #s(literal 1/45 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64)))))))
(fma.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 1/45 binary64)))) (*.f64 x (*.f64 (*.f64 x (*.f64 x (*.f64 x x))) #s(literal 2/945 binary64))))
(fma.f64 x (*.f64 (*.f64 x x) (+.f64 #s(literal 1/45 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64))))) (*.f64 #s(literal 1/3 binary64) x))
(fma.f64 x (*.f64 x (*.f64 x #s(literal 1/45 binary64))) (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x (*.f64 x (*.f64 x x))) #s(literal 2/945 binary64)))))
(fma.f64 x (*.f64 (*.f64 x (*.f64 x (*.f64 x x))) #s(literal 2/945 binary64)) (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 1/45 binary64))))))
(fma.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x (*.f64 x (*.f64 x x))) #s(literal 2/945 binary64))) (*.f64 x (*.f64 x (*.f64 x #s(literal 1/45 binary64)))))
(fma.f64 (*.f64 x x) (*.f64 x (+.f64 #s(literal 1/45 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64))))) (*.f64 #s(literal 1/3 binary64) x))
(fma.f64 (*.f64 x x) (*.f64 x #s(literal 1/45 binary64)) (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x (*.f64 x (*.f64 x x))) #s(literal 2/945 binary64)))))
(fma.f64 (*.f64 x x) (*.f64 x (*.f64 x (*.f64 x #s(literal 2/945 binary64)))) (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 1/45 binary64))))))
(fma.f64 #s(literal -1/45 binary64) (-.f64 #s(literal 0 binary64) (*.f64 x (*.f64 x x))) (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x (*.f64 x (*.f64 x x))) #s(literal 2/945 binary64)))))
(fma.f64 (*.f64 x (*.f64 x #s(literal -1/45 binary64))) (-.f64 #s(literal 0 binary64) x) (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x (*.f64 x (*.f64 x x))) #s(literal 2/945 binary64)))))
(fma.f64 (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 1/45 binary64)))) x (*.f64 x (*.f64 (*.f64 x (*.f64 x (*.f64 x x))) #s(literal 2/945 binary64))))
(fma.f64 #s(literal -2/945 binary64) (*.f64 x (-.f64 #s(literal 0 binary64) (*.f64 x (*.f64 x (*.f64 x x))))) (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 1/45 binary64))))))
(fma.f64 (*.f64 x (*.f64 x #s(literal -2/945 binary64))) (-.f64 #s(literal 0 binary64) (*.f64 x (*.f64 x x))) (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 1/45 binary64))))))
(fma.f64 (-.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64)))) (-.f64 #s(literal 0 binary64) (*.f64 x (*.f64 x x))) (*.f64 #s(literal 1/3 binary64) x))
(fma.f64 (*.f64 (*.f64 x x) (+.f64 #s(literal 1/45 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64))))) x (*.f64 #s(literal 1/3 binary64) x))
(fma.f64 (*.f64 x (*.f64 x #s(literal 1/45 binary64))) x (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x (*.f64 x (*.f64 x x))) #s(literal 2/945 binary64)))))
(fma.f64 (-.f64 #s(literal 0 binary64) (*.f64 x x)) (*.f64 x #s(literal -1/45 binary64)) (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x (*.f64 x (*.f64 x x))) #s(literal 2/945 binary64)))))
(fma.f64 (-.f64 #s(literal 0 binary64) (*.f64 x x)) (*.f64 x (-.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64))))) (*.f64 #s(literal 1/3 binary64) x))
(fma.f64 (-.f64 #s(literal 0 binary64) (*.f64 x x)) (*.f64 (*.f64 x x) (*.f64 x #s(literal -2/945 binary64))) (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 1/45 binary64))))))
(fma.f64 (*.f64 #s(literal -2/945 binary64) (*.f64 x (*.f64 x (*.f64 x x)))) (-.f64 #s(literal 0 binary64) x) (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 1/45 binary64))))))
(fma.f64 (*.f64 x #s(literal -1/45 binary64)) (-.f64 #s(literal 0 binary64) (*.f64 x x)) (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x (*.f64 x (*.f64 x x))) #s(literal 2/945 binary64)))))
(fma.f64 (*.f64 x #s(literal -2/945 binary64)) (-.f64 #s(literal 0 binary64) (*.f64 x (*.f64 x (*.f64 x x)))) (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 1/45 binary64))))))
(fma.f64 (*.f64 x (-.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64))))) (-.f64 #s(literal 0 binary64) (*.f64 x x)) (*.f64 #s(literal 1/3 binary64) x))
(fma.f64 #s(literal -1 binary64) (*.f64 x (*.f64 x (*.f64 x #s(literal -1/45 binary64)))) (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x (*.f64 x (*.f64 x x))) #s(literal 2/945 binary64)))))
(fma.f64 #s(literal -1 binary64) (*.f64 (*.f64 x x) (*.f64 x (-.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64)))))) (*.f64 #s(literal 1/3 binary64) x))
(fma.f64 #s(literal -1 binary64) (*.f64 x (*.f64 #s(literal -2/945 binary64) (*.f64 x (*.f64 x (*.f64 x x))))) (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 1/45 binary64))))))
(fma.f64 (-.f64 #s(literal 0 binary64) x) (*.f64 x (*.f64 x #s(literal -1/45 binary64))) (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x (*.f64 x (*.f64 x x))) #s(literal 2/945 binary64)))))
(fma.f64 (-.f64 #s(literal 0 binary64) x) (*.f64 #s(literal -2/945 binary64) (*.f64 x (*.f64 x (*.f64 x x)))) (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 1/45 binary64))))))
(fma.f64 (-.f64 #s(literal 0 binary64) x) (*.f64 (*.f64 x x) (-.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64))))) (*.f64 #s(literal 1/3 binary64) x))
(fma.f64 (+.f64 #s(literal 1/45 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64)))) (*.f64 x (*.f64 x x)) (*.f64 #s(literal 1/3 binary64) x))
(fma.f64 #s(literal 1/45 binary64) (*.f64 x (*.f64 x x)) (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x (*.f64 x (*.f64 x x))) #s(literal 2/945 binary64)))))
(fma.f64 (*.f64 x (+.f64 #s(literal 1/45 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64))))) (*.f64 x x) (*.f64 #s(literal 1/3 binary64) x))
(fma.f64 (*.f64 x #s(literal 1/45 binary64)) (*.f64 x x) (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x (*.f64 x (*.f64 x x))) #s(literal 2/945 binary64)))))
(fma.f64 (*.f64 (*.f64 x (*.f64 x (*.f64 x x))) #s(literal 2/945 binary64)) x (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 1/45 binary64))))))
(fma.f64 (*.f64 (*.f64 x x) (*.f64 x #s(literal -2/945 binary64))) (-.f64 #s(literal 0 binary64) (*.f64 x x)) (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 1/45 binary64))))))
(fma.f64 (*.f64 x (*.f64 x x)) (+.f64 #s(literal 1/45 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64)))) (*.f64 #s(literal 1/3 binary64) x))
(fma.f64 (*.f64 x (*.f64 x x)) #s(literal 1/45 binary64) (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x (*.f64 x (*.f64 x x))) #s(literal 2/945 binary64)))))
(fma.f64 (*.f64 x (*.f64 x x)) (*.f64 x (*.f64 x #s(literal 2/945 binary64))) (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 1/45 binary64))))))
(fma.f64 (*.f64 x (*.f64 x (*.f64 x x))) (*.f64 x #s(literal 2/945 binary64)) (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 1/45 binary64))))))
(fma.f64 #s(literal 2/945 binary64) (*.f64 x (*.f64 x (*.f64 x (*.f64 x x)))) (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 1/45 binary64))))))
(fma.f64 (*.f64 x (*.f64 x #s(literal 2/945 binary64))) (*.f64 x (*.f64 x x)) (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 1/45 binary64))))))
(fma.f64 (*.f64 x (*.f64 x (*.f64 x #s(literal 2/945 binary64)))) (*.f64 x x) (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 1/45 binary64))))))
(fma.f64 (-.f64 #s(literal 0 binary64) (*.f64 x (*.f64 x (*.f64 x x)))) (*.f64 x #s(literal -2/945 binary64)) (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 1/45 binary64))))))
(fma.f64 (*.f64 x #s(literal 2/945 binary64)) (*.f64 x (*.f64 x (*.f64 x x))) (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 1/45 binary64))))))
(fma.f64 (*.f64 x (*.f64 x (*.f64 x #s(literal -1/45 binary64)))) #s(literal -1 binary64) (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x (*.f64 x (*.f64 x x))) #s(literal 2/945 binary64)))))
(fma.f64 (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x (*.f64 x (*.f64 x x))) #s(literal 2/945 binary64))) x (*.f64 x (*.f64 x (*.f64 x #s(literal 1/45 binary64)))))
(fma.f64 (-.f64 #s(literal 0 binary64) (*.f64 x (*.f64 x x))) #s(literal -1/45 binary64) (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x (*.f64 x (*.f64 x x))) #s(literal 2/945 binary64)))))
(fma.f64 (-.f64 #s(literal 0 binary64) (*.f64 x (*.f64 x x))) (*.f64 x (*.f64 x #s(literal -2/945 binary64))) (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 1/45 binary64))))))
(fma.f64 (-.f64 #s(literal 0 binary64) (*.f64 x (*.f64 x x))) (-.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64)))) (*.f64 #s(literal 1/3 binary64) x))
(fma.f64 (*.f64 (*.f64 x x) (-.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64))))) (-.f64 #s(literal 0 binary64) x) (*.f64 #s(literal 1/3 binary64) x))
(fma.f64 (*.f64 (*.f64 x x) (*.f64 x (-.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64)))))) #s(literal -1 binary64) (*.f64 #s(literal 1/3 binary64) x))
(fma.f64 (*.f64 x (*.f64 #s(literal -2/945 binary64) (*.f64 x (*.f64 x (*.f64 x x))))) #s(literal -1 binary64) (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 1/45 binary64))))))
(fma.f64 (*.f64 x (*.f64 x (*.f64 x (*.f64 x x)))) #s(literal 2/945 binary64) (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 1/45 binary64))))))
(fma.f64 (*.f64 x (-.f64 #s(literal 0 binary64) (*.f64 x (*.f64 x (*.f64 x x))))) #s(literal -2/945 binary64) (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 1/45 binary64))))))
(neg.f64 (*.f64 x (+.f64 (*.f64 (*.f64 x x) (-.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64))))) #s(literal -1/3 binary64))))
(neg.f64 (+.f64 (*.f64 (*.f64 x x) (*.f64 x (-.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64)))))) (*.f64 #s(literal -1/3 binary64) x)))
(neg.f64 (+.f64 (*.f64 x (*.f64 x (*.f64 x #s(literal -1/45 binary64)))) (*.f64 (+.f64 (*.f64 #s(literal -2/945 binary64) (*.f64 x (*.f64 x (*.f64 x x)))) #s(literal -1/3 binary64)) x)))
(neg.f64 (*.f64 (-.f64 #s(literal 0 binary64) x) (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) (+.f64 #s(literal 1/45 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64))))))))
(neg.f64 (*.f64 (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) (+.f64 #s(literal 1/45 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64)))))) (-.f64 #s(literal 0 binary64) x)))
(*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) (+.f64 #s(literal 1/45 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64)))))))
(*.f64 (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) (+.f64 #s(literal 1/45 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64)))))) x)
(*.f64 #s(literal -1 binary64) (*.f64 x (+.f64 (*.f64 (*.f64 x x) (-.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64))))) #s(literal -1/3 binary64))))
(*.f64 (-.f64 #s(literal 0 binary64) x) (+.f64 (*.f64 (*.f64 x x) (-.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64))))) #s(literal -1/3 binary64)))
(*.f64 (+.f64 (*.f64 (*.f64 x x) (-.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64))))) #s(literal -1/3 binary64)) (-.f64 #s(literal 0 binary64) x))
(+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) (+.f64 #s(literal 1/45 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64))))))
(+.f64 (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 1/45 binary64)))) (*.f64 (*.f64 x (*.f64 x (*.f64 x x))) #s(literal 2/945 binary64)))
(+.f64 (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) (+.f64 #s(literal 1/45 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64)))))) (+.f64 (*.f64 (*.f64 x (*.f64 x (*.f64 x x))) #s(literal 2/945 binary64)) (*.f64 #s(literal -2/945 binary64) (*.f64 x (*.f64 x (*.f64 x x))))))
(+.f64 (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) (+.f64 #s(literal 1/45 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64)))))) (+.f64 (*.f64 x (*.f64 x #s(literal 1/45 binary64))) (*.f64 x (*.f64 x #s(literal -1/45 binary64)))))
(+.f64 (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) (+.f64 #s(literal 1/45 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64)))))) #s(literal 0 binary64))
(+.f64 (*.f64 (*.f64 x x) (+.f64 #s(literal 1/45 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64))))) #s(literal 1/3 binary64))
(+.f64 (*.f64 (*.f64 x x) (+.f64 #s(literal 1/45 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64))))) (+.f64 (+.f64 (*.f64 (*.f64 x (*.f64 x (*.f64 x x))) #s(literal 2/945 binary64)) (*.f64 #s(literal -2/945 binary64) (*.f64 x (*.f64 x (*.f64 x x))))) #s(literal 1/3 binary64)))
(+.f64 (*.f64 (*.f64 x x) (+.f64 #s(literal 1/45 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64))))) (+.f64 (+.f64 (*.f64 x (*.f64 x #s(literal 1/45 binary64))) (*.f64 x (*.f64 x #s(literal -1/45 binary64)))) #s(literal 1/3 binary64)))
(+.f64 (*.f64 x (*.f64 x #s(literal 1/45 binary64))) (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x (*.f64 x (*.f64 x x))) #s(literal 2/945 binary64))))
(+.f64 (*.f64 (*.f64 x (*.f64 x (*.f64 x x))) #s(literal 2/945 binary64)) (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 1/45 binary64)))))
(+.f64 (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x (*.f64 x (*.f64 x x))) #s(literal 2/945 binary64))) (*.f64 x (*.f64 x #s(literal 1/45 binary64))))
(+.f64 #s(literal 0 binary64) (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) (+.f64 #s(literal 1/45 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64)))))))
(-.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) (-.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64))))))
(-.f64 (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 1/45 binary64)))) (*.f64 #s(literal -2/945 binary64) (*.f64 x (*.f64 x (*.f64 x x)))))
(-.f64 (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) (+.f64 #s(literal 1/45 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64)))))) #s(literal 0 binary64))
(-.f64 (*.f64 (*.f64 x x) (+.f64 #s(literal 1/45 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64))))) #s(literal -1/3 binary64))
(-.f64 (*.f64 x (*.f64 x #s(literal 1/45 binary64))) (+.f64 (*.f64 #s(literal -2/945 binary64) (*.f64 x (*.f64 x (*.f64 x x)))) #s(literal -1/3 binary64)))
(-.f64 (*.f64 (*.f64 x (*.f64 x (*.f64 x x))) #s(literal 2/945 binary64)) (+.f64 (*.f64 x (*.f64 x #s(literal -1/45 binary64))) #s(literal -1/3 binary64)))
(-.f64 (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x (*.f64 x (*.f64 x x))) #s(literal 2/945 binary64))) (*.f64 x (*.f64 x #s(literal -1/45 binary64))))
(-.f64 #s(literal 0 binary64) (+.f64 (*.f64 (*.f64 x x) (-.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64))))) #s(literal -1/3 binary64)))
(fma.f64 x (*.f64 x (+.f64 #s(literal 1/45 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64))))) #s(literal 1/3 binary64))
(fma.f64 x (*.f64 x #s(literal 1/45 binary64)) (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x (*.f64 x (*.f64 x x))) #s(literal 2/945 binary64))))
(fma.f64 x (*.f64 x (*.f64 x (*.f64 x #s(literal 2/945 binary64)))) (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 1/45 binary64)))))
(fma.f64 (*.f64 x x) (+.f64 #s(literal 1/45 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64)))) #s(literal 1/3 binary64))
(fma.f64 (*.f64 x x) #s(literal 1/45 binary64) (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x (*.f64 x (*.f64 x x))) #s(literal 2/945 binary64))))
(fma.f64 (*.f64 x x) (*.f64 x (*.f64 x #s(literal 2/945 binary64))) (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 1/45 binary64)))))
(fma.f64 #s(literal -1/45 binary64) (-.f64 #s(literal 0 binary64) (*.f64 x x)) (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x (*.f64 x (*.f64 x x))) #s(literal 2/945 binary64))))
(fma.f64 (*.f64 x (*.f64 x #s(literal -1/45 binary64))) #s(literal -1 binary64) (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x (*.f64 x (*.f64 x x))) #s(literal 2/945 binary64))))
(fma.f64 #s(literal -2/945 binary64) (-.f64 #s(literal 0 binary64) (*.f64 x (*.f64 x (*.f64 x x)))) (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 1/45 binary64)))))
(fma.f64 (*.f64 x (*.f64 x #s(literal -2/945 binary64))) (-.f64 #s(literal 0 binary64) (*.f64 x x)) (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 1/45 binary64)))))
(fma.f64 (-.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64)))) (-.f64 #s(literal 0 binary64) (*.f64 x x)) #s(literal 1/3 binary64))
(fma.f64 (-.f64 #s(literal 0 binary64) (*.f64 x x)) #s(literal -1/45 binary64) (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x (*.f64 x (*.f64 x x))) #s(literal 2/945 binary64))))
(fma.f64 (-.f64 #s(literal 0 binary64) (*.f64 x x)) (*.f64 x (*.f64 x #s(literal -2/945 binary64))) (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 1/45 binary64)))))
(fma.f64 (-.f64 #s(literal 0 binary64) (*.f64 x x)) (-.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64)))) #s(literal 1/3 binary64))
(fma.f64 (*.f64 #s(literal -2/945 binary64) (*.f64 x (*.f64 x (*.f64 x x)))) #s(literal -1 binary64) (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 1/45 binary64)))))
(fma.f64 (*.f64 x #s(literal -1/45 binary64)) (-.f64 #s(literal 0 binary64) x) (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x (*.f64 x (*.f64 x x))) #s(literal 2/945 binary64))))
(fma.f64 (*.f64 x #s(literal -2/945 binary64)) (-.f64 #s(literal 0 binary64) (*.f64 x (*.f64 x x))) (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 1/45 binary64)))))
(fma.f64 (*.f64 x (-.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64))))) (-.f64 #s(literal 0 binary64) x) #s(literal 1/3 binary64))
(fma.f64 #s(literal -1 binary64) (*.f64 x (*.f64 x #s(literal -1/45 binary64))) (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x (*.f64 x (*.f64 x x))) #s(literal 2/945 binary64))))
(fma.f64 #s(literal -1 binary64) (*.f64 #s(literal -2/945 binary64) (*.f64 x (*.f64 x (*.f64 x x)))) (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 1/45 binary64)))))
(fma.f64 #s(literal -1 binary64) (+.f64 (*.f64 (*.f64 x x) (-.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64))))) #s(literal -1/3 binary64)) #s(literal 0 binary64))
(fma.f64 #s(literal -1 binary64) (+.f64 (*.f64 x (*.f64 x #s(literal -1/45 binary64))) #s(literal -1/3 binary64)) (*.f64 (*.f64 x (*.f64 x (*.f64 x x))) #s(literal 2/945 binary64)))
(fma.f64 #s(literal -1 binary64) (*.f64 (*.f64 x x) (-.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64))))) #s(literal 1/3 binary64))
(fma.f64 (-.f64 #s(literal 0 binary64) x) (*.f64 x #s(literal -1/45 binary64)) (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x (*.f64 x (*.f64 x x))) #s(literal 2/945 binary64))))
(fma.f64 (-.f64 #s(literal 0 binary64) x) (*.f64 x (-.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64))))) #s(literal 1/3 binary64))
(fma.f64 (-.f64 #s(literal 0 binary64) x) (*.f64 (*.f64 x x) (*.f64 x #s(literal -2/945 binary64))) (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 1/45 binary64)))))
(fma.f64 (+.f64 #s(literal 1/45 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64)))) (*.f64 x x) #s(literal 1/3 binary64))
(fma.f64 #s(literal 1/45 binary64) (*.f64 x x) (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x (*.f64 x (*.f64 x x))) #s(literal 2/945 binary64))))
(fma.f64 (*.f64 x (+.f64 #s(literal 1/45 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64))))) x #s(literal 1/3 binary64))
(fma.f64 (*.f64 x #s(literal 1/45 binary64)) x (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x (*.f64 x (*.f64 x x))) #s(literal 2/945 binary64))))
(fma.f64 (*.f64 (*.f64 x x) (*.f64 x #s(literal -2/945 binary64))) (-.f64 #s(literal 0 binary64) x) (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 1/45 binary64)))))
(fma.f64 (*.f64 x (*.f64 x x)) (*.f64 x #s(literal 2/945 binary64)) (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 1/45 binary64)))))
(fma.f64 (*.f64 x (*.f64 x (*.f64 x x))) #s(literal 2/945 binary64) (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 1/45 binary64)))))
(fma.f64 #s(literal 2/945 binary64) (*.f64 x (*.f64 x (*.f64 x x))) (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 1/45 binary64)))))
(fma.f64 (*.f64 x (*.f64 x #s(literal 2/945 binary64))) (*.f64 x x) (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 1/45 binary64)))))
(fma.f64 (*.f64 x (*.f64 x (*.f64 x #s(literal 2/945 binary64)))) x (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 1/45 binary64)))))
(fma.f64 (-.f64 #s(literal 0 binary64) (*.f64 x (*.f64 x (*.f64 x x)))) #s(literal -2/945 binary64) (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 1/45 binary64)))))
(fma.f64 (*.f64 x #s(literal 2/945 binary64)) (*.f64 x (*.f64 x x)) (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 1/45 binary64)))))
(fma.f64 (-.f64 #s(literal 0 binary64) (*.f64 x (*.f64 x x))) (*.f64 x #s(literal -2/945 binary64)) (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 1/45 binary64)))))
(fma.f64 (*.f64 (*.f64 x x) (-.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64))))) #s(literal -1 binary64) #s(literal 1/3 binary64))
(neg.f64 (+.f64 (*.f64 (*.f64 x x) (-.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64))))) #s(literal -1/3 binary64)))
(*.f64 #s(literal -1 binary64) (+.f64 (*.f64 (*.f64 x x) (-.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64))))) #s(literal -1/3 binary64)))
(+.f64 (*.f64 x (*.f64 x #s(literal -1/45 binary64))) (*.f64 #s(literal -2/945 binary64) (*.f64 x (*.f64 x (*.f64 x x)))))
(+.f64 (*.f64 #s(literal -2/945 binary64) (*.f64 x (*.f64 x (*.f64 x x)))) (*.f64 x (*.f64 x #s(literal -1/45 binary64))))
(+.f64 (*.f64 (*.f64 x x) (-.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64))))) #s(literal 0 binary64))
(+.f64 (*.f64 (*.f64 x x) (-.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64))))) (+.f64 (*.f64 x (*.f64 x #s(literal -1/45 binary64))) (*.f64 x (*.f64 x #s(literal 1/45 binary64)))))
(+.f64 #s(literal 0 binary64) (*.f64 (*.f64 x x) (-.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64))))))
(-.f64 (*.f64 x (*.f64 x #s(literal -1/45 binary64))) (*.f64 (*.f64 x (*.f64 x (*.f64 x x))) #s(literal 2/945 binary64)))
(-.f64 (*.f64 #s(literal -2/945 binary64) (*.f64 x (*.f64 x (*.f64 x x)))) (*.f64 x (*.f64 x #s(literal 1/45 binary64))))
(-.f64 (*.f64 (*.f64 x x) (-.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64))))) #s(literal 0 binary64))
(fma.f64 x (*.f64 x #s(literal -1/45 binary64)) (*.f64 #s(literal -2/945 binary64) (*.f64 x (*.f64 x (*.f64 x x)))))
(fma.f64 x (*.f64 x (-.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64))))) #s(literal 0 binary64))
(fma.f64 x (*.f64 (*.f64 x x) (*.f64 x #s(literal -2/945 binary64))) (*.f64 x (*.f64 x #s(literal -1/45 binary64))))
(fma.f64 (*.f64 x x) #s(literal -1/45 binary64) (*.f64 #s(literal -2/945 binary64) (*.f64 x (*.f64 x (*.f64 x x)))))
(fma.f64 (*.f64 x x) (*.f64 x (*.f64 x #s(literal -2/945 binary64))) (*.f64 x (*.f64 x #s(literal -1/45 binary64))))
(fma.f64 (*.f64 x x) (-.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64)))) #s(literal 0 binary64))
(fma.f64 #s(literal -1/45 binary64) (*.f64 x x) (*.f64 #s(literal -2/945 binary64) (*.f64 x (*.f64 x (*.f64 x x)))))
(fma.f64 #s(literal -2/945 binary64) (*.f64 x (*.f64 x (*.f64 x x))) (*.f64 x (*.f64 x #s(literal -1/45 binary64))))
(fma.f64 (*.f64 x (*.f64 x #s(literal -2/945 binary64))) (*.f64 x x) (*.f64 x (*.f64 x #s(literal -1/45 binary64))))
(fma.f64 (-.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64)))) (*.f64 x x) #s(literal 0 binary64))
(fma.f64 (-.f64 #s(literal 0 binary64) (*.f64 x x)) (*.f64 x (*.f64 x #s(literal 2/945 binary64))) (*.f64 x (*.f64 x #s(literal -1/45 binary64))))
(fma.f64 (*.f64 #s(literal -2/945 binary64) (*.f64 x (*.f64 x (*.f64 x x)))) #s(literal 1 binary64) (*.f64 x (*.f64 x #s(literal -1/45 binary64))))
(fma.f64 (*.f64 x #s(literal -1/45 binary64)) x (*.f64 #s(literal -2/945 binary64) (*.f64 x (*.f64 x (*.f64 x x)))))
(fma.f64 (*.f64 x #s(literal -2/945 binary64)) (*.f64 x (*.f64 x x)) (*.f64 x (*.f64 x #s(literal -1/45 binary64))))
(fma.f64 (*.f64 x (-.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64))))) x #s(literal 0 binary64))
(fma.f64 #s(literal -1 binary64) (*.f64 (*.f64 x (*.f64 x (*.f64 x x))) #s(literal 2/945 binary64)) (*.f64 x (*.f64 x #s(literal -1/45 binary64))))
(fma.f64 (-.f64 #s(literal 0 binary64) x) (*.f64 x (*.f64 x (*.f64 x #s(literal 2/945 binary64)))) (*.f64 x (*.f64 x #s(literal -1/45 binary64))))
(fma.f64 (*.f64 (*.f64 x (*.f64 x (*.f64 x x))) #s(literal 2/945 binary64)) #s(literal -1 binary64) (*.f64 x (*.f64 x #s(literal -1/45 binary64))))
(fma.f64 (*.f64 (*.f64 x x) (*.f64 x #s(literal -2/945 binary64))) x (*.f64 x (*.f64 x #s(literal -1/45 binary64))))
(fma.f64 (*.f64 x (*.f64 x x)) (*.f64 x #s(literal -2/945 binary64)) (*.f64 x (*.f64 x #s(literal -1/45 binary64))))
(fma.f64 (*.f64 x (*.f64 x (*.f64 x x))) #s(literal -2/945 binary64) (*.f64 x (*.f64 x #s(literal -1/45 binary64))))
(fma.f64 #s(literal 1 binary64) (*.f64 #s(literal -2/945 binary64) (*.f64 x (*.f64 x (*.f64 x x)))) (*.f64 x (*.f64 x #s(literal -1/45 binary64))))
(fma.f64 #s(literal 2/945 binary64) (-.f64 #s(literal 0 binary64) (*.f64 x (*.f64 x (*.f64 x x)))) (*.f64 x (*.f64 x #s(literal -1/45 binary64))))
(fma.f64 (*.f64 x (*.f64 x #s(literal 2/945 binary64))) (-.f64 #s(literal 0 binary64) (*.f64 x x)) (*.f64 x (*.f64 x #s(literal -1/45 binary64))))
(fma.f64 (*.f64 x (*.f64 x (*.f64 x #s(literal 2/945 binary64)))) (-.f64 #s(literal 0 binary64) x) (*.f64 x (*.f64 x #s(literal -1/45 binary64))))
(fma.f64 (-.f64 #s(literal 0 binary64) (*.f64 x (*.f64 x (*.f64 x x)))) #s(literal 2/945 binary64) (*.f64 x (*.f64 x #s(literal -1/45 binary64))))
(fma.f64 (*.f64 x #s(literal 2/945 binary64)) (-.f64 #s(literal 0 binary64) (*.f64 x (*.f64 x x))) (*.f64 x (*.f64 x #s(literal -1/45 binary64))))
(fma.f64 (-.f64 #s(literal 0 binary64) (*.f64 x (*.f64 x x))) (*.f64 x #s(literal 2/945 binary64)) (*.f64 x (*.f64 x #s(literal -1/45 binary64))))
(neg.f64 (*.f64 (*.f64 x x) (+.f64 #s(literal 1/45 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64))))))
(*.f64 x (*.f64 x (-.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64))))))
(*.f64 (*.f64 x x) (-.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64)))))
(*.f64 (-.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64)))) (*.f64 x x))
(*.f64 (*.f64 x (-.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64))))) x)
(+.f64 #s(literal 0 binary64) (*.f64 x (*.f64 x #s(literal -2/945 binary64))))
(-.f64 #s(literal 0 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64))))
(neg.f64 (*.f64 x (*.f64 x #s(literal 2/945 binary64))))
(*.f64 x (*.f64 x #s(literal -2/945 binary64)))
(*.f64 (*.f64 x x) #s(literal -2/945 binary64))
(*.f64 #s(literal -2/945 binary64) (*.f64 x x))
(*.f64 (*.f64 x (*.f64 x #s(literal -2/945 binary64))) #s(literal 1 binary64))
(*.f64 (-.f64 #s(literal 0 binary64) (*.f64 x x)) #s(literal 2/945 binary64))
(*.f64 (*.f64 x #s(literal -2/945 binary64)) x)
(*.f64 #s(literal -1 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64))))
(*.f64 (-.f64 #s(literal 0 binary64) x) (*.f64 x #s(literal 2/945 binary64)))
(*.f64 #s(literal 1 binary64) (*.f64 x (*.f64 x #s(literal -2/945 binary64))))
(*.f64 #s(literal 2/945 binary64) (-.f64 #s(literal 0 binary64) (*.f64 x x)))
(*.f64 (*.f64 x (*.f64 x #s(literal 2/945 binary64))) #s(literal -1 binary64))
(*.f64 (*.f64 x #s(literal 2/945 binary64)) (-.f64 #s(literal 0 binary64) x))
(+.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x #s(literal -2/945 binary64))))
(+.f64 (*.f64 x (*.f64 x #s(literal -2/945 binary64))) #s(literal -1/45 binary64))
(-.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64))))
(-.f64 (*.f64 x (*.f64 x #s(literal -2/945 binary64))) #s(literal 1/45 binary64))
(fma.f64 x (*.f64 x #s(literal -2/945 binary64)) #s(literal -1/45 binary64))
(fma.f64 (*.f64 x x) #s(literal -2/945 binary64) #s(literal -1/45 binary64))
(fma.f64 #s(literal -2/945 binary64) (*.f64 x x) #s(literal -1/45 binary64))
(fma.f64 (*.f64 x (*.f64 x #s(literal -2/945 binary64))) #s(literal 1 binary64) #s(literal -1/45 binary64))
(fma.f64 (-.f64 #s(literal 0 binary64) (*.f64 x x)) #s(literal 2/945 binary64) #s(literal -1/45 binary64))
(fma.f64 (*.f64 x #s(literal -2/945 binary64)) x #s(literal -1/45 binary64))
(fma.f64 #s(literal -1 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64))) #s(literal -1/45 binary64))
(fma.f64 (-.f64 #s(literal 0 binary64) x) (*.f64 x #s(literal 2/945 binary64)) #s(literal -1/45 binary64))
(fma.f64 #s(literal 1 binary64) (*.f64 x (*.f64 x #s(literal -2/945 binary64))) #s(literal -1/45 binary64))
(fma.f64 #s(literal 2/945 binary64) (-.f64 #s(literal 0 binary64) (*.f64 x x)) #s(literal -1/45 binary64))
(fma.f64 (*.f64 x (*.f64 x #s(literal 2/945 binary64))) #s(literal -1 binary64) #s(literal -1/45 binary64))
(fma.f64 (*.f64 x #s(literal 2/945 binary64)) (-.f64 #s(literal 0 binary64) x) #s(literal -1/45 binary64))

simplify241.0ms (1.9%)

Algorithm
egg-herbie
Rules
2532×*-lowering-*.f32
2532×*-lowering-*.f64
2240×fma-lowering-fma.f32
2240×fma-lowering-fma.f64
1718×/-lowering-/.f32
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
055782
1171622
2540622
31499618
43155616
57550616
08423616
Stop Event
iter limit
node limit
Counts
120 → 120
Calls
Call 1
Inputs
(* 1/3 x)
(* 1/3 x)
(* 1/3 x)
(* 1/3 x)
(* 1/3 x)
(* 1/3 x)
(* 1/3 x)
(* 1/3 x)
(* 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 (* 1/45 (pow x 2))))
(* x (+ 1/3 (* 1/45 (pow x 2))))
(* 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 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/3
(+ 1/3 (* 1/45 (pow x 2)))
(+ 1/3 (* 1/45 (pow x 2)))
(+ 1/3 (* 1/45 (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)))))
(* 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)))))
(* -1/45 (pow x 2))
(* -1/45 (pow x 2))
(* -1/45 (pow x 2))
(* -1/45 (pow x 2))
(* -1/45 (pow x 2))
(* -1/45 (pow x 2))
(* -1/45 (pow x 2))
(* -1/45 (pow x 2))
(* -1/45 (pow x 2))
(* -1/45 (pow x 2))
(* -1/45 (pow x 2))
(* -1/45 (pow x 2))
(pow x 2)
(pow x 2)
(pow x 2)
(pow x 2)
(pow x 2)
(pow x 2)
(pow x 2)
(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 (* 2/945 (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))))))
(* 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/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)))))
(* 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 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))))))
(* -1/45 (pow x 2))
(* (pow x 2) (- (* -2/945 (pow x 2)) 1/45))
(* (pow x 2) (- (* -2/945 (pow x 2)) 1/45))
(* (pow x 2) (- (* -2/945 (pow x 2)) 1/45))
(* -2/945 (pow x 4))
(* -1 (* (pow x 4) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))))
(* -1 (* (pow x 4) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))))
(* -1 (* (pow x 4) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))))
(* -2/945 (pow x 4))
(* -1 (* (pow x 4) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))))
(* -1 (* (pow x 4) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))))
(* -1 (* (pow x 4) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))))
(* -2/945 (pow x 2))
(* -2/945 (pow x 2))
(* -2/945 (pow x 2))
(* -2/945 (pow x 2))
(* -2/945 (pow x 2))
(* -2/945 (pow x 2))
(* -2/945 (pow x 2))
(* -2/945 (pow x 2))
(* -2/945 (pow x 2))
(* -2/945 (pow x 2))
(* -2/945 (pow x 2))
(* -2/945 (pow x 2))
-1/45
(- (* -2/945 (pow x 2)) 1/45)
(- (* -2/945 (pow x 2)) 1/45)
(- (* -2/945 (pow x 2)) 1/45)
(* -2/945 (pow x 2))
(* -1 (* (pow x 2) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))))
(* -1 (* (pow x 2) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))))
(* -1 (* (pow x 2) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))))
(* -2/945 (pow x 2))
(* -1 (* (pow x 2) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))))
(* -1 (* (pow x 2) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))))
(* -1 (* (pow x 2) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))))
Outputs
(* 1/3 x)
(*.f64 #s(literal 1/3 binary64) x)
(* 1/3 x)
(*.f64 #s(literal 1/3 binary64) x)
(* 1/3 x)
(*.f64 #s(literal 1/3 binary64) x)
(* 1/3 x)
(*.f64 #s(literal 1/3 binary64) x)
(* 1/3 x)
(*.f64 #s(literal 1/3 binary64) x)
(* 1/3 x)
(*.f64 #s(literal 1/3 binary64) x)
(* 1/3 x)
(*.f64 #s(literal 1/3 binary64) x)
(* 1/3 x)
(*.f64 #s(literal 1/3 binary64) x)
(* 1/3 x)
(*.f64 #s(literal 1/3 binary64) x)
(* 1/3 x)
(*.f64 #s(literal 1/3 binary64) x)
(* 1/3 x)
(*.f64 #s(literal 1/3 binary64) x)
(* 1/3 x)
(*.f64 #s(literal 1/3 binary64) x)
(* 1/3 x)
(*.f64 #s(literal 1/3 binary64) x)
(* x (+ 1/3 (* 1/45 (pow x 2))))
(*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 #s(literal 1/45 binary64) (*.f64 x x))))
(* x (+ 1/3 (* 1/45 (pow x 2))))
(*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 #s(literal 1/45 binary64) (*.f64 x x))))
(* x (+ 1/3 (* 1/45 (pow x 2))))
(*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 #s(literal 1/45 binary64) (*.f64 x x))))
(* 1/45 (pow x 3))
(*.f64 x (*.f64 #s(literal 1/45 binary64) (*.f64 x x)))
(* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 #s(literal 1/45 binary64) (*.f64 x x))))
(* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 #s(literal 1/45 binary64) (*.f64 x x))))
(* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 #s(literal 1/45 binary64) (*.f64 x x))))
(* 1/45 (pow x 3))
(*.f64 x (*.f64 #s(literal 1/45 binary64) (*.f64 x x)))
(* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 #s(literal 1/45 binary64) (*.f64 x x))))
(* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 #s(literal 1/45 binary64) (*.f64 x x))))
(* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 #s(literal 1/45 binary64) (*.f64 x x))))
1/3
#s(literal 1/3 binary64)
(+ 1/3 (* 1/45 (pow x 2)))
(+.f64 #s(literal 1/3 binary64) (*.f64 #s(literal 1/45 binary64) (*.f64 x x)))
(+ 1/3 (* 1/45 (pow x 2)))
(+.f64 #s(literal 1/3 binary64) (*.f64 #s(literal 1/45 binary64) (*.f64 x x)))
(+ 1/3 (* 1/45 (pow x 2)))
(+.f64 #s(literal 1/3 binary64) (*.f64 #s(literal 1/45 binary64) (*.f64 x x)))
(* 1/45 (pow x 2))
(*.f64 #s(literal 1/45 binary64) (*.f64 x x))
(* (pow x 2) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(+.f64 #s(literal 1/3 binary64) (*.f64 #s(literal 1/45 binary64) (*.f64 x x)))
(* (pow x 2) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(+.f64 #s(literal 1/3 binary64) (*.f64 #s(literal 1/45 binary64) (*.f64 x x)))
(* (pow x 2) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(+.f64 #s(literal 1/3 binary64) (*.f64 #s(literal 1/45 binary64) (*.f64 x x)))
(* 1/45 (pow x 2))
(*.f64 #s(literal 1/45 binary64) (*.f64 x x))
(* (pow x 2) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(+.f64 #s(literal 1/3 binary64) (*.f64 #s(literal 1/45 binary64) (*.f64 x x)))
(* (pow x 2) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(+.f64 #s(literal 1/3 binary64) (*.f64 #s(literal 1/45 binary64) (*.f64 x x)))
(* (pow x 2) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(+.f64 #s(literal 1/3 binary64) (*.f64 #s(literal 1/45 binary64) (*.f64 x x)))
(* -1/45 (pow x 2))
(*.f64 x (*.f64 x #s(literal -1/45 binary64)))
(* -1/45 (pow x 2))
(*.f64 x (*.f64 x #s(literal -1/45 binary64)))
(* -1/45 (pow x 2))
(*.f64 x (*.f64 x #s(literal -1/45 binary64)))
(* -1/45 (pow x 2))
(*.f64 x (*.f64 x #s(literal -1/45 binary64)))
(* -1/45 (pow x 2))
(*.f64 x (*.f64 x #s(literal -1/45 binary64)))
(* -1/45 (pow x 2))
(*.f64 x (*.f64 x #s(literal -1/45 binary64)))
(* -1/45 (pow x 2))
(*.f64 x (*.f64 x #s(literal -1/45 binary64)))
(* -1/45 (pow x 2))
(*.f64 x (*.f64 x #s(literal -1/45 binary64)))
(* -1/45 (pow x 2))
(*.f64 x (*.f64 x #s(literal -1/45 binary64)))
(* -1/45 (pow x 2))
(*.f64 x (*.f64 x #s(literal -1/45 binary64)))
(* -1/45 (pow x 2))
(*.f64 x (*.f64 x #s(literal -1/45 binary64)))
(* -1/45 (pow x 2))
(*.f64 x (*.f64 x #s(literal -1/45 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)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(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 #s(literal 1/3 binary64) x)
(* x (+ 1/3 (* 1/45 (pow x 2))))
(*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 #s(literal 1/45 binary64) (*.f64 x x))))
(* x (+ 1/3 (* (pow x 2) (+ 1/45 (* 2/945 (pow x 2))))))
(*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) (+.f64 #s(literal 1/45 binary64) (*.f64 (*.f64 x x) #s(literal 2/945 binary64))))))
(* x (+ 1/3 (* (pow x 2) (+ 1/45 (* 2/945 (pow x 2))))))
(*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) (+.f64 #s(literal 1/45 binary64) (*.f64 (*.f64 x x) #s(literal 2/945 binary64))))))
(* 2/945 (pow x 5))
(*.f64 x (*.f64 #s(literal 2/945 binary64) (*.f64 x (*.f64 x (*.f64 x x)))))
(* (pow x 5) (+ 2/945 (* 1/45 (/ 1 (pow x 2)))))
(*.f64 x (*.f64 (*.f64 x x) (+.f64 #s(literal 1/45 binary64) (*.f64 (*.f64 x x) #s(literal 2/945 binary64)))))
(* (pow x 5) (+ 2/945 (+ (/ 1/3 (pow x 4)) (* 1/45 (/ 1 (pow x 2))))))
(*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) (+.f64 #s(literal 1/45 binary64) (*.f64 (*.f64 x x) #s(literal 2/945 binary64))))))
(* (pow x 5) (+ 2/945 (+ (/ 1/3 (pow x 4)) (* 1/45 (/ 1 (pow x 2))))))
(*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) (+.f64 #s(literal 1/45 binary64) (*.f64 (*.f64 x x) #s(literal 2/945 binary64))))))
(* 2/945 (pow x 5))
(*.f64 x (*.f64 #s(literal 2/945 binary64) (*.f64 x (*.f64 x (*.f64 x x)))))
(* (pow x 5) (+ 2/945 (* 1/45 (/ 1 (pow x 2)))))
(*.f64 x (*.f64 (*.f64 x x) (+.f64 #s(literal 1/45 binary64) (*.f64 (*.f64 x x) #s(literal 2/945 binary64)))))
(* -1 (* (pow x 5) (- (* -1 (/ (+ 1/45 (* 1/3 (/ 1 (pow x 2)))) (pow x 2))) 2/945)))
(*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) (+.f64 #s(literal 1/45 binary64) (*.f64 (*.f64 x x) #s(literal 2/945 binary64))))))
(* -1 (* (pow x 5) (- (* -1 (/ (+ 1/45 (* 1/3 (/ 1 (pow x 2)))) (pow x 2))) 2/945)))
(*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) (+.f64 #s(literal 1/45 binary64) (*.f64 (*.f64 x x) #s(literal 2/945 binary64))))))
1/3
#s(literal 1/3 binary64)
(+ 1/3 (* 1/45 (pow x 2)))
(+.f64 #s(literal 1/3 binary64) (*.f64 #s(literal 1/45 binary64) (*.f64 x x)))
(+ 1/3 (* (pow x 2) (+ 1/45 (* 2/945 (pow x 2)))))
(+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) (+.f64 #s(literal 1/45 binary64) (*.f64 (*.f64 x x) #s(literal 2/945 binary64)))))
(+ 1/3 (* (pow x 2) (+ 1/45 (* 2/945 (pow x 2)))))
(+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) (+.f64 #s(literal 1/45 binary64) (*.f64 (*.f64 x x) #s(literal 2/945 binary64)))))
(* 2/945 (pow x 4))
(*.f64 #s(literal 2/945 binary64) (*.f64 x (*.f64 x (*.f64 x x))))
(* (pow x 4) (+ 2/945 (* 1/45 (/ 1 (pow x 2)))))
(*.f64 (*.f64 x x) (+.f64 #s(literal 1/45 binary64) (*.f64 (*.f64 x x) #s(literal 2/945 binary64))))
(* (pow x 4) (+ 2/945 (+ (/ 1/3 (pow x 4)) (* 1/45 (/ 1 (pow x 2))))))
(+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) (+.f64 #s(literal 1/45 binary64) (*.f64 (*.f64 x x) #s(literal 2/945 binary64)))))
(* (pow x 4) (+ 2/945 (+ (/ 1/3 (pow x 4)) (* 1/45 (/ 1 (pow x 2))))))
(+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) (+.f64 #s(literal 1/45 binary64) (*.f64 (*.f64 x x) #s(literal 2/945 binary64)))))
(* 2/945 (pow x 4))
(*.f64 #s(literal 2/945 binary64) (*.f64 x (*.f64 x (*.f64 x x))))
(* (pow x 4) (+ 2/945 (* 1/45 (/ 1 (pow x 2)))))
(*.f64 (*.f64 x x) (+.f64 #s(literal 1/45 binary64) (*.f64 (*.f64 x x) #s(literal 2/945 binary64))))
(* (pow x 4) (+ 2/945 (+ (/ 1/3 (pow x 4)) (* 1/45 (/ 1 (pow x 2))))))
(+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) (+.f64 #s(literal 1/45 binary64) (*.f64 (*.f64 x x) #s(literal 2/945 binary64)))))
(* (pow x 4) (+ 2/945 (+ (/ 1/3 (pow x 4)) (* 1/45 (/ 1 (pow x 2))))))
(+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) (+.f64 #s(literal 1/45 binary64) (*.f64 (*.f64 x x) #s(literal 2/945 binary64)))))
(* -1/45 (pow x 2))
(*.f64 x (*.f64 x #s(literal -1/45 binary64)))
(* (pow x 2) (- (* -2/945 (pow x 2)) 1/45))
(*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x #s(literal -2/945 binary64))))))
(* (pow x 2) (- (* -2/945 (pow x 2)) 1/45))
(*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x #s(literal -2/945 binary64))))))
(* (pow x 2) (- (* -2/945 (pow x 2)) 1/45))
(*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x #s(literal -2/945 binary64))))))
(* -2/945 (pow x 4))
(*.f64 x (*.f64 (*.f64 x (*.f64 x x)) #s(literal -2/945 binary64)))
(* -1 (* (pow x 4) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))))
(*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x #s(literal -2/945 binary64))))))
(* -1 (* (pow x 4) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))))
(*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x #s(literal -2/945 binary64))))))
(* -1 (* (pow x 4) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))))
(*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x #s(literal -2/945 binary64))))))
(* -2/945 (pow x 4))
(*.f64 x (*.f64 (*.f64 x (*.f64 x x)) #s(literal -2/945 binary64)))
(* -1 (* (pow x 4) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))))
(*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x #s(literal -2/945 binary64))))))
(* -1 (* (pow x 4) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))))
(*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x #s(literal -2/945 binary64))))))
(* -1 (* (pow x 4) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))))
(*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x #s(literal -2/945 binary64))))))
(* -2/945 (pow x 2))
(*.f64 x (*.f64 x #s(literal -2/945 binary64)))
(* -2/945 (pow x 2))
(*.f64 x (*.f64 x #s(literal -2/945 binary64)))
(* -2/945 (pow x 2))
(*.f64 x (*.f64 x #s(literal -2/945 binary64)))
(* -2/945 (pow x 2))
(*.f64 x (*.f64 x #s(literal -2/945 binary64)))
(* -2/945 (pow x 2))
(*.f64 x (*.f64 x #s(literal -2/945 binary64)))
(* -2/945 (pow x 2))
(*.f64 x (*.f64 x #s(literal -2/945 binary64)))
(* -2/945 (pow x 2))
(*.f64 x (*.f64 x #s(literal -2/945 binary64)))
(* -2/945 (pow x 2))
(*.f64 x (*.f64 x #s(literal -2/945 binary64)))
(* -2/945 (pow x 2))
(*.f64 x (*.f64 x #s(literal -2/945 binary64)))
(* -2/945 (pow x 2))
(*.f64 x (*.f64 x #s(literal -2/945 binary64)))
(* -2/945 (pow x 2))
(*.f64 x (*.f64 x #s(literal -2/945 binary64)))
(* -2/945 (pow x 2))
(*.f64 x (*.f64 x #s(literal -2/945 binary64)))
-1/45
#s(literal -1/45 binary64)
(- (* -2/945 (pow x 2)) 1/45)
(+.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x #s(literal -2/945 binary64))))
(- (* -2/945 (pow x 2)) 1/45)
(+.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x #s(literal -2/945 binary64))))
(- (* -2/945 (pow x 2)) 1/45)
(+.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x #s(literal -2/945 binary64))))
(* -2/945 (pow x 2))
(*.f64 x (*.f64 x #s(literal -2/945 binary64)))
(* -1 (* (pow x 2) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))))
(+.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x #s(literal -2/945 binary64))))
(* -1 (* (pow x 2) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))))
(+.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x #s(literal -2/945 binary64))))
(* -1 (* (pow x 2) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))))
(+.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x #s(literal -2/945 binary64))))
(* -2/945 (pow x 2))
(*.f64 x (*.f64 x #s(literal -2/945 binary64)))
(* -1 (* (pow x 2) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))))
(+.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x #s(literal -2/945 binary64))))
(* -1 (* (pow x 2) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))))
(+.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x #s(literal -2/945 binary64))))
(* -1 (* (pow x 2) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))))
(+.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x #s(literal -2/945 binary64))))

eval70.0ms (0.6%)

Compiler

Compiled 7425 to 921 computations (87.6% saved)

prune64.0ms (0.5%)

Pruning

5 alts after pruning (2 fresh and 3 done)

PrunedKeptTotal
New4972499
Fresh000
Picked033
Done000
Total4975502
Accuracy
99.6%
Counts
502 → 5
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.5%
(-.f64 (*.f64 #s(literal 1/3 binary64) x) (*.f64 (*.f64 x x) (*.f64 x (-.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64)))))))
99.5%
(-.f64 (*.f64 #s(literal 1/3 binary64) x) (*.f64 x (*.f64 x (*.f64 x #s(literal -1/45 binary64)))))
99.5%
(*.f64 x (-.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))))
99.5%
(*.f64 x (-.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal -1/45 binary64))))
98.6%
(*.f64 #s(literal 1/3 binary64) x)
Compiler

Compiled 60 to 40 computations (33.3% saved)

simplify155.0ms (1.2%)

Algorithm
egg-herbie
Localize:

Found 8 expressions of interest:

NewMetricScoreProgram
cost-diff0
(*.f64 x x)
cost-diff0
(*.f64 (*.f64 x x) (*.f64 x (-.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64))))))
cost-diff0
(*.f64 #s(literal 1/3 binary64) x)
cost-diff128
(-.f64 (*.f64 #s(literal 1/3 binary64) x) (*.f64 (*.f64 x x) (*.f64 x (-.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64)))))))
cost-diff0
(*.f64 x (*.f64 x #s(literal -1/45 binary64)))
cost-diff0
(*.f64 x (*.f64 x (*.f64 x #s(literal -1/45 binary64))))
cost-diff0
(*.f64 #s(literal 1/3 binary64) x)
cost-diff128
(-.f64 (*.f64 #s(literal 1/3 binary64) x) (*.f64 x (*.f64 x (*.f64 x #s(literal -1/45 binary64)))))
Rules
2352×sum3-define
2336×sum4-define
2134×fnmadd-define
1400×fma-define
1384×sum5-define
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01683
15081
214775
345173
4156273
5401173
6752373
0854773
Stop Event
iter limit
node limit
Calls
Call 1
Inputs
(- (* 1/3 x) (* x (* x (* x -1/45))))
(* 1/3 x)
1/3
x
(* x (* x (* x -1/45)))
(* x (* x -1/45))
(* x -1/45)
-1/45
(- (* 1/3 x) (* (* x x) (* x (- -1/45 (* x (* x 2/945))))))
(* 1/3 x)
1/3
x
(* (* x x) (* x (- -1/45 (* x (* x 2/945)))))
(* x x)
(* x (- -1/45 (* x (* x 2/945))))
(- -1/45 (* x (* x 2/945)))
-1/45
(* x (* x 2/945))
(* x 2/945)
2/945
Outputs
(- (* 1/3 x) (* x (* x (* x -1/45))))
(*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal 1/45 binary64))))
(* 1/3 x)
(*.f64 #s(literal 1/3 binary64) x)
1/3
#s(literal 1/3 binary64)
x
(* x (* x (* x -1/45)))
(*.f64 x (*.f64 #s(literal -1/45 binary64) (*.f64 x x)))
(* x (* x -1/45))
(*.f64 #s(literal -1/45 binary64) (*.f64 x x))
(* x -1/45)
(*.f64 x #s(literal -1/45 binary64))
-1/45
#s(literal -1/45 binary64)
(- (* 1/3 x) (* (* x x) (* x (- -1/45 (* x (* x 2/945))))))
(*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x (+.f64 (*.f64 x (*.f64 x #s(literal 2/945 binary64))) #s(literal 1/45 binary64))))))
(* 1/3 x)
(*.f64 #s(literal 1/3 binary64) x)
1/3
#s(literal 1/3 binary64)
x
(* (* x x) (* x (- -1/45 (* x (* x 2/945)))))
(*.f64 (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))) (*.f64 x (*.f64 x x)))
(* x x)
(*.f64 x x)
(* x (- -1/45 (* x (* x 2/945))))
(*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))
(- -1/45 (* x (* x 2/945)))
(+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64)))
-1/45
#s(literal -1/45 binary64)
(* x (* x 2/945))
(*.f64 x (*.f64 x #s(literal 2/945 binary64)))
(* x 2/945)
(*.f64 x #s(literal 2/945 binary64))
2/945
#s(literal 2/945 binary64)

localize94.0ms (0.8%)

Localize:

Found 8 expressions of interest:

NewMetricScoreProgram
accuracy99.8%
(*.f64 x (*.f64 x #s(literal 2/945 binary64)))
accuracy99.7%
(*.f64 x (-.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64)))))
accuracy99.5%
(*.f64 #s(literal 1/3 binary64) x)
accuracy99.3%
(*.f64 x #s(literal 2/945 binary64))
accuracy99.8%
(*.f64 x (*.f64 x (*.f64 x #s(literal -1/45 binary64))))
accuracy99.7%
(*.f64 x (*.f64 x #s(literal -1/45 binary64)))
accuracy99.7%
(*.f64 x #s(literal -1/45 binary64))
accuracy99.5%
(*.f64 #s(literal 1/3 binary64) x)
Results
71.0ms256×0valid
Compiler

Compiled 98 to 17 computations (82.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 34.0ms
ival-mult: 19.0ms (56% of total)
...c/correct-round.rkt:119:19: 11.0ms (32.4% of total)
ival-sub: 3.0ms (8.8% of total)
const: 0.0ms (0% of total)
backward-pass: 0.0ms (0% of total)

series377.0ms (3%)

Counts
11 → 132
Calls
Call 1
Inputs
#<alt (- (* 1/3 x) (* x (* x (* x -1/45))))>
#<alt (* 1/3 x)>
#<alt (* x (* x (* x -1/45)))>
#<alt (* x (* x -1/45))>
#<alt (- (* 1/3 x) (* (* x x) (* x (- -1/45 (* x (* x 2/945))))))>
#<alt (* (* x x) (* x (- -1/45 (* x (* x 2/945)))))>
#<alt (* x x)>
#<alt (* x -1/45)>
#<alt (* x 2/945)>
#<alt (* x (- -1/45 (* x (* x 2/945))))>
#<alt (* x (* x 2/945))>
Outputs
#<alt (* 1/3 x)>
#<alt (* x (+ 1/3 (* 1/45 (pow x 2))))>
#<alt (* x (+ 1/3 (* 1/45 (pow x 2))))>
#<alt (* x (+ 1/3 (* 1/45 (pow x 2))))>
#<alt (* 1/45 (pow x 3))>
#<alt (* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))>
#<alt (* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))>
#<alt (* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))>
#<alt (* 1/45 (pow x 3))>
#<alt (* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))>
#<alt (* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))>
#<alt (* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))>
#<alt (* 1/3 x)>
#<alt (* 1/3 x)>
#<alt (* 1/3 x)>
#<alt (* 1/3 x)>
#<alt (* 1/3 x)>
#<alt (* 1/3 x)>
#<alt (* 1/3 x)>
#<alt (* 1/3 x)>
#<alt (* 1/3 x)>
#<alt (* 1/3 x)>
#<alt (* 1/3 x)>
#<alt (* 1/3 x)>
#<alt (* -1/45 (pow x 3))>
#<alt (* -1/45 (pow x 3))>
#<alt (* -1/45 (pow x 3))>
#<alt (* -1/45 (pow x 3))>
#<alt (* -1/45 (pow x 3))>
#<alt (* -1/45 (pow x 3))>
#<alt (* -1/45 (pow x 3))>
#<alt (* -1/45 (pow x 3))>
#<alt (* -1/45 (pow x 3))>
#<alt (* -1/45 (pow x 3))>
#<alt (* -1/45 (pow x 3))>
#<alt (* -1/45 (pow x 3))>
#<alt (* -1/45 (pow x 2))>
#<alt (* -1/45 (pow x 2))>
#<alt (* -1/45 (pow x 2))>
#<alt (* -1/45 (pow x 2))>
#<alt (* -1/45 (pow x 2))>
#<alt (* -1/45 (pow x 2))>
#<alt (* -1/45 (pow x 2))>
#<alt (* -1/45 (pow x 2))>
#<alt (* -1/45 (pow x 2))>
#<alt (* -1/45 (pow x 2))>
#<alt (* -1/45 (pow x 2))>
#<alt (* -1/45 (pow x 2))>
#<alt (* 1/3 x)>
#<alt (* x (+ 1/3 (* 1/45 (pow x 2))))>
#<alt (* x (+ 1/3 (* (pow x 2) (+ 1/45 (* 2/945 (pow x 2))))))>
#<alt (* x (+ 1/3 (* (pow x 2) (+ 1/45 (* 2/945 (pow x 2))))))>
#<alt (* 2/945 (pow x 5))>
#<alt (* (pow x 5) (+ 2/945 (* 1/45 (/ 1 (pow x 2)))))>
#<alt (* (pow x 5) (+ 2/945 (+ (/ 1/3 (pow x 4)) (* 1/45 (/ 1 (pow x 2))))))>
#<alt (* (pow x 5) (+ 2/945 (+ (/ 1/3 (pow x 4)) (* 1/45 (/ 1 (pow x 2))))))>
#<alt (* 2/945 (pow x 5))>
#<alt (* (pow x 5) (+ 2/945 (* 1/45 (/ 1 (pow x 2)))))>
#<alt (* -1 (* (pow x 5) (- (* -1 (/ (+ 1/45 (* 1/3 (/ 1 (pow x 2)))) (pow x 2))) 2/945)))>
#<alt (* -1 (* (pow x 5) (- (* -1 (/ (+ 1/45 (* 1/3 (/ 1 (pow x 2)))) (pow x 2))) 2/945)))>
#<alt (* -1/45 (pow x 3))>
#<alt (* (pow x 3) (- (* -2/945 (pow x 2)) 1/45))>
#<alt (* (pow x 3) (- (* -2/945 (pow x 2)) 1/45))>
#<alt (* (pow x 3) (- (* -2/945 (pow x 2)) 1/45))>
#<alt (* -2/945 (pow x 5))>
#<alt (* -1 (* (pow x 5) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))))>
#<alt (* -1 (* (pow x 5) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))))>
#<alt (* -1 (* (pow x 5) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))))>
#<alt (* -2/945 (pow x 5))>
#<alt (* -1 (* (pow x 5) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))))>
#<alt (* -1 (* (pow x 5) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))))>
#<alt (* -1 (* (pow x 5) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))))>
#<alt (pow x 2)>
#<alt (pow x 2)>
#<alt (pow x 2)>
#<alt (pow x 2)>
#<alt (pow x 2)>
#<alt (pow x 2)>
#<alt (pow x 2)>
#<alt (pow x 2)>
#<alt (pow x 2)>
#<alt (pow x 2)>
#<alt (pow x 2)>
#<alt (pow x 2)>
#<alt (* -1/45 x)>
#<alt (* -1/45 x)>
#<alt (* -1/45 x)>
#<alt (* -1/45 x)>
#<alt (* -1/45 x)>
#<alt (* -1/45 x)>
#<alt (* -1/45 x)>
#<alt (* -1/45 x)>
#<alt (* -1/45 x)>
#<alt (* -1/45 x)>
#<alt (* -1/45 x)>
#<alt (* -1/45 x)>
#<alt (* 2/945 x)>
#<alt (* 2/945 x)>
#<alt (* 2/945 x)>
#<alt (* 2/945 x)>
#<alt (* 2/945 x)>
#<alt (* 2/945 x)>
#<alt (* 2/945 x)>
#<alt (* 2/945 x)>
#<alt (* 2/945 x)>
#<alt (* 2/945 x)>
#<alt (* 2/945 x)>
#<alt (* 2/945 x)>
#<alt (* -1/45 x)>
#<alt (* x (- (* -2/945 (pow x 2)) 1/45))>
#<alt (* x (- (* -2/945 (pow x 2)) 1/45))>
#<alt (* x (- (* -2/945 (pow x 2)) 1/45))>
#<alt (* -2/945 (pow x 3))>
#<alt (* -1 (* (pow x 3) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))))>
#<alt (* -1 (* (pow x 3) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))))>
#<alt (* -1 (* (pow x 3) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))))>
#<alt (* -2/945 (pow x 3))>
#<alt (* -1 (* (pow x 3) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))))>
#<alt (* -1 (* (pow x 3) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))))>
#<alt (* -1 (* (pow x 3) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))))>
#<alt (* 2/945 (pow x 2))>
#<alt (* 2/945 (pow x 2))>
#<alt (* 2/945 (pow x 2))>
#<alt (* 2/945 (pow x 2))>
#<alt (* 2/945 (pow x 2))>
#<alt (* 2/945 (pow x 2))>
#<alt (* 2/945 (pow x 2))>
#<alt (* 2/945 (pow x 2))>
#<alt (* 2/945 (pow x 2))>
#<alt (* 2/945 (pow x 2))>
#<alt (* 2/945 (pow x 2))>
#<alt (* 2/945 (pow x 2))>
Calls

33 calls:

TimeVariablePointExpression
0.0ms
x
@inf
(- (* 1/3 x) (* x (* x (* x -1/45))))
0.0ms
x
@-inf
(- (* 1/3 x) (* (* x x) (* x (- -1/45 (* x (* x 2/945))))))
0.0ms
x
@-inf
(* x (* x (* x -1/45)))
0.0ms
x
@0
(* x (- -1/45 (* x (* x 2/945))))
0.0ms
x
@0
(- (* 1/3 x) (* x (* x (* x -1/45))))

rewrite166.0ms (1.3%)

Algorithm
batch-egg-rewrite
Rules
2370×fma-lowering-fma.f32
2370×fma-lowering-fma.f64
1770×fmm-def
1672×prod-diff
1474×fnmsub-define
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01667
16463
223560
3124458
4717858
0872558
Stop Event
iter limit
node limit
Counts
11 → 337
Calls
Call 1
Inputs
(- (* 1/3 x) (* x (* x (* x -1/45))))
(* 1/3 x)
(* x (* x (* x -1/45)))
(* x (* x -1/45))
(- (* 1/3 x) (* (* x x) (* x (- -1/45 (* x (* x 2/945))))))
(* (* x x) (* x (- -1/45 (* x (* x 2/945)))))
(* x x)
(* x -1/45)
(* x 2/945)
(* x (- -1/45 (* x (* x 2/945))))
(* x (* x 2/945))
Outputs
(+.f64 (*.f64 #s(literal 1/3 binary64) x) (*.f64 x (*.f64 (*.f64 x x) #s(literal 1/45 binary64))))
(+.f64 (*.f64 x (*.f64 #s(literal -1/45 binary64) (*.f64 x x))) (+.f64 (*.f64 #s(literal 1/3 binary64) x) (*.f64 (*.f64 x (*.f64 x x)) #s(literal 2/45 binary64))))
(+.f64 #s(literal 0 binary64) (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal 1/45 binary64)))))
(+.f64 (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal 1/45 binary64)))) #s(literal 0 binary64))
(+.f64 (*.f64 x (*.f64 (*.f64 x x) #s(literal 1/45 binary64))) (*.f64 #s(literal 1/3 binary64) x))
(+.f64 (*.f64 (*.f64 x (*.f64 x x)) #s(literal 2/45 binary64)) (+.f64 (*.f64 x (*.f64 #s(literal -1/45 binary64) (*.f64 x x))) (*.f64 #s(literal 1/3 binary64) x)))
(+.f64 (+.f64 (*.f64 #s(literal 1/3 binary64) x) (*.f64 (*.f64 x (*.f64 x x)) #s(literal 2/45 binary64))) (*.f64 x (*.f64 #s(literal -1/45 binary64) (*.f64 x x))))
(+.f64 (+.f64 (*.f64 #s(literal 1/3 binary64) x) (*.f64 (*.f64 x (*.f64 x x)) #s(literal 2/45 binary64))) (+.f64 (*.f64 x (*.f64 #s(literal -1/45 binary64) (*.f64 x x))) #s(literal 0 binary64)))
(-.f64 (*.f64 #s(literal 1/3 binary64) x) (*.f64 x (*.f64 #s(literal -1/45 binary64) (*.f64 x x))))
(-.f64 (*.f64 #s(literal 1/3 binary64) x) (+.f64 (*.f64 x (*.f64 #s(literal -1/45 binary64) (*.f64 x x))) #s(literal 0 binary64)))
(-.f64 #s(literal 0 binary64) (*.f64 x (-.f64 (*.f64 #s(literal -1/45 binary64) (*.f64 x x)) #s(literal 1/3 binary64))))
(-.f64 #s(literal 0 binary64) (-.f64 (*.f64 x (-.f64 (*.f64 #s(literal -1/45 binary64) (*.f64 x x)) #s(literal 1/3 binary64))) #s(literal 0 binary64)))
(-.f64 #s(literal 0 binary64) (-.f64 #s(literal 0 binary64) (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal 1/45 binary64))))))
(-.f64 #s(literal 0 binary64) (-.f64 (+.f64 (*.f64 x (*.f64 #s(literal -1/45 binary64) (*.f64 x x))) #s(literal 0 binary64)) (*.f64 #s(literal 1/3 binary64) x)))
(-.f64 (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal 1/45 binary64)))) #s(literal 0 binary64))
(fma.f64 #s(literal 1/3 binary64) x (*.f64 x (*.f64 (*.f64 x x) #s(literal 1/45 binary64))))
(fma.f64 x #s(literal 1/3 binary64) (*.f64 x (*.f64 (*.f64 x x) #s(literal 1/45 binary64))))
(fma.f64 x (*.f64 (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 #s(literal 1/3 binary64) x))
(fma.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal 1/45 binary64))) #s(literal 0 binary64))
(fma.f64 x (*.f64 (*.f64 x x) #s(literal 0 binary64)) (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal 1/45 binary64)))))
(fma.f64 x (+.f64 (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal 1/45 binary64))) (*.f64 (*.f64 x x) #s(literal 0 binary64))) #s(literal 0 binary64))
(fma.f64 x (+.f64 (*.f64 (*.f64 x x) #s(literal 0 binary64)) (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal 1/45 binary64)))) #s(literal 0 binary64))
(fma.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal 0 binary64))) (*.f64 x (*.f64 (*.f64 x x) #s(literal 1/45 binary64))))
(fma.f64 x (+.f64 (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))) (-.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))))) (*.f64 x (*.f64 (*.f64 x x) #s(literal 1/45 binary64))))
(fma.f64 x (+.f64 (*.f64 #s(literal -1/45 binary64) (*.f64 x x)) (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal 1/45 binary64)))) (*.f64 x (*.f64 (*.f64 x x) #s(literal 1/45 binary64))))
(fma.f64 x (+.f64 (*.f64 (*.f64 x x) #s(literal 0 binary64)) #s(literal 1/3 binary64)) (*.f64 x (*.f64 (*.f64 x x) #s(literal 1/45 binary64))))
(fma.f64 #s(literal -1/45 binary64) #s(literal 0 binary64) (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal 1/45 binary64)))))
(fma.f64 #s(literal -1/45 binary64) (-.f64 #s(literal 0 binary64) (*.f64 x (*.f64 x x))) (*.f64 #s(literal 1/3 binary64) x))
(fma.f64 (*.f64 x #s(literal -1/45 binary64)) (-.f64 #s(literal 0 binary64) (*.f64 x x)) (*.f64 #s(literal 1/3 binary64) x))
(fma.f64 (*.f64 x #s(literal -1/45 binary64)) (*.f64 x (*.f64 #s(literal 0 binary64) x)) (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal 1/45 binary64)))))
(fma.f64 (*.f64 #s(literal -1/45 binary64) (*.f64 x x)) (-.f64 #s(literal 0 binary64) x) (*.f64 #s(literal 1/3 binary64) x))
(fma.f64 (*.f64 #s(literal -1/45 binary64) (*.f64 x x)) (*.f64 #s(literal 0 binary64) x) (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal 1/45 binary64)))))
(fma.f64 (*.f64 x (*.f64 #s(literal -1/45 binary64) (*.f64 x x))) #s(literal -1 binary64) (*.f64 #s(literal 1/3 binary64) x))
(fma.f64 (*.f64 x x) (*.f64 x #s(literal 1/45 binary64)) (*.f64 #s(literal 1/3 binary64) x))
(fma.f64 (*.f64 x x) (*.f64 x #s(literal 0 binary64)) (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal 1/45 binary64)))))
(fma.f64 #s(literal 0 binary64) (*.f64 x (*.f64 #s(literal -1/45 binary64) (*.f64 x x))) (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal 1/45 binary64)))))
(fma.f64 (*.f64 (*.f64 x x) #s(literal 1/45 binary64)) x (*.f64 #s(literal 1/3 binary64) x))
(fma.f64 #s(literal 2 binary64) #s(literal 0 binary64) (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal 1/45 binary64)))))
(fma.f64 (-.f64 #s(literal 0 binary64) (*.f64 x x)) (*.f64 x #s(literal -1/45 binary64)) (*.f64 #s(literal 1/3 binary64) x))
(fma.f64 (-.f64 #s(literal 0 binary64) x) (*.f64 #s(literal -1/45 binary64) (*.f64 x x)) (*.f64 #s(literal 1/3 binary64) x))
(fma.f64 (*.f64 x (*.f64 x x)) #s(literal 1/45 binary64) (*.f64 #s(literal 1/3 binary64) x))
(fma.f64 (*.f64 x #s(literal 1/45 binary64)) (*.f64 x x) (*.f64 #s(literal 1/3 binary64) x))
(fma.f64 #s(literal -1 binary64) (*.f64 x (*.f64 #s(literal -1/45 binary64) (*.f64 x x))) (*.f64 #s(literal 1/3 binary64) x))
(fma.f64 (-.f64 #s(literal 0 binary64) (*.f64 x (*.f64 x x))) #s(literal -1/45 binary64) (*.f64 #s(literal 1/3 binary64) x))
(fma.f64 (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal 1/45 binary64))) x #s(literal 0 binary64))
(neg.f64 (*.f64 x (-.f64 (*.f64 #s(literal -1/45 binary64) (*.f64 x x)) #s(literal 1/3 binary64))))
(*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal 1/45 binary64))))
(*.f64 x (+.f64 (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal 1/45 binary64))) (*.f64 (*.f64 x x) #s(literal 0 binary64))))
(*.f64 x (+.f64 (*.f64 (*.f64 x x) #s(literal 0 binary64)) (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal 1/45 binary64)))))
(*.f64 (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal 1/45 binary64))) x)
(+.f64 (*.f64 #s(literal 1/3 binary64) x) #s(literal 0 binary64))
(+.f64 (*.f64 x (*.f64 #s(literal -1/45 binary64) (*.f64 x x))) (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal 1/45 binary64)))))
(+.f64 (*.f64 x (*.f64 #s(literal -1/45 binary64) (*.f64 x x))) (+.f64 (*.f64 x (*.f64 x (*.f64 x (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))) (*.f64 x (-.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64)))))))))
(+.f64 (*.f64 x (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64)))))) (*.f64 x (-.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))))))
(+.f64 (*.f64 x (-.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))))) (*.f64 x (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64)))))))
(+.f64 (*.f64 x (-.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))))) (+.f64 (*.f64 x (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64)))))) #s(literal 0 binary64)))
(+.f64 #s(literal 0 binary64) (*.f64 #s(literal 1/3 binary64) x))
(+.f64 (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal 1/45 binary64)))) (*.f64 x (*.f64 #s(literal -1/45 binary64) (*.f64 x x))))
(+.f64 (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal 1/45 binary64)))) (+.f64 (*.f64 x (*.f64 #s(literal -1/45 binary64) (*.f64 x x))) #s(literal 0 binary64)))
(+.f64 (*.f64 (*.f64 x (*.f64 x x)) (+.f64 (*.f64 x (*.f64 x #s(literal 2/945 binary64))) #s(literal 1/45 binary64))) (+.f64 (*.f64 x (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64)))))) (*.f64 #s(literal 1/3 binary64) x)))
(+.f64 (*.f64 x (*.f64 (*.f64 x x) #s(literal 1/45 binary64))) (+.f64 (*.f64 x (*.f64 #s(literal -1/45 binary64) (*.f64 x x))) (*.f64 #s(literal 1/3 binary64) x)))
(+.f64 (*.f64 x (*.f64 x (*.f64 x (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))) (+.f64 (*.f64 x (*.f64 #s(literal -1/45 binary64) (*.f64 x x))) (*.f64 x (-.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64)))))))))
(+.f64 (+.f64 (*.f64 (*.f64 x x) (*.f64 x (*.f64 x (*.f64 x #s(literal 2/945 binary64))))) #s(literal 0 binary64)) (+.f64 (*.f64 x (*.f64 x (*.f64 x (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))) (*.f64 #s(literal 1/3 binary64) x)))
(+.f64 (+.f64 (*.f64 x (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64)))))) #s(literal 0 binary64)) (*.f64 x (-.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))))))
(+.f64 (+.f64 (*.f64 x (*.f64 #s(literal -1/45 binary64) (*.f64 x x))) #s(literal 0 binary64)) (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal 1/45 binary64)))))
(+.f64 (+.f64 (*.f64 #s(literal 1/3 binary64) x) (*.f64 x (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))))) (*.f64 (*.f64 x (*.f64 x x)) (+.f64 (*.f64 x (*.f64 x #s(literal 2/945 binary64))) #s(literal 1/45 binary64))))
(+.f64 (+.f64 (*.f64 #s(literal 1/3 binary64) x) (+.f64 (*.f64 (*.f64 x x) (*.f64 x (*.f64 x (*.f64 x #s(literal 2/945 binary64))))) #s(literal 0 binary64))) (*.f64 x (*.f64 x (*.f64 x (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))))
(+.f64 (+.f64 (*.f64 #s(literal 1/3 binary64) x) (*.f64 x (*.f64 #s(literal -1/45 binary64) (*.f64 x x)))) (*.f64 x (*.f64 (*.f64 x x) #s(literal 1/45 binary64))))
(+.f64 (+.f64 (*.f64 x (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64)))))) (*.f64 #s(literal 1/3 binary64) x)) (*.f64 (*.f64 x (*.f64 x x)) (+.f64 (*.f64 x (*.f64 x #s(literal 2/945 binary64))) #s(literal 1/45 binary64))))
(+.f64 (+.f64 (*.f64 x (*.f64 #s(literal -1/45 binary64) (*.f64 x x))) (*.f64 #s(literal 1/3 binary64) x)) (*.f64 x (*.f64 (*.f64 x x) #s(literal 1/45 binary64))))
(-.f64 (*.f64 #s(literal 1/3 binary64) x) #s(literal 0 binary64))
(-.f64 (*.f64 x (*.f64 #s(literal -1/45 binary64) (*.f64 x x))) (*.f64 x (-.f64 (*.f64 #s(literal -1/45 binary64) (*.f64 x x)) #s(literal 1/3 binary64))))
(-.f64 (*.f64 x (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64)))))) (*.f64 x (-.f64 (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))) #s(literal 1/3 binary64))))
(-.f64 #s(literal 0 binary64) (-.f64 #s(literal 0 binary64) (*.f64 #s(literal 1/3 binary64) x)))
(-.f64 (+.f64 (*.f64 x (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64)))))) #s(literal 0 binary64)) (*.f64 x (-.f64 (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))) #s(literal 1/3 binary64))))
(-.f64 (+.f64 (*.f64 x (*.f64 #s(literal -1/45 binary64) (*.f64 x x))) #s(literal 0 binary64)) (*.f64 x (-.f64 (*.f64 #s(literal -1/45 binary64) (*.f64 x x)) #s(literal 1/3 binary64))))
(-.f64 (+.f64 (*.f64 x (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64)))))) (*.f64 #s(literal 1/3 binary64) x)) (*.f64 x (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64)))))))
(-.f64 (+.f64 (*.f64 x (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64)))))) (*.f64 #s(literal 1/3 binary64) x)) (+.f64 (*.f64 x (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64)))))) #s(literal 0 binary64)))
(-.f64 (+.f64 (*.f64 x (*.f64 #s(literal -1/45 binary64) (*.f64 x x))) (*.f64 #s(literal 1/3 binary64) x)) (*.f64 x (*.f64 #s(literal -1/45 binary64) (*.f64 x x))))
(-.f64 (+.f64 (*.f64 x (*.f64 #s(literal -1/45 binary64) (*.f64 x x))) (*.f64 #s(literal 1/3 binary64) x)) (+.f64 (*.f64 x (*.f64 #s(literal -1/45 binary64) (*.f64 x x))) #s(literal 0 binary64)))
(-.f64 (+.f64 (*.f64 x (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64)))))) (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal 1/45 binary64))))) (*.f64 x (*.f64 x (*.f64 x (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))))
(fma.f64 #s(literal 1/3 binary64) x #s(literal 0 binary64))
(fma.f64 x #s(literal 1/3 binary64) #s(literal 0 binary64))
(fma.f64 x (*.f64 #s(literal -1/45 binary64) (*.f64 x x)) (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal 1/45 binary64)))))
(fma.f64 x (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))) (*.f64 x (-.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))))))
(fma.f64 x (*.f64 (*.f64 x x) #s(literal 0 binary64)) (*.f64 #s(literal 1/3 binary64) x))
(fma.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal 0 binary64))) #s(literal 0 binary64))
(fma.f64 x (+.f64 (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))) (-.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))))) #s(literal 0 binary64))
(fma.f64 x (+.f64 (*.f64 #s(literal -1/45 binary64) (*.f64 x x)) (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal 1/45 binary64)))) #s(literal 0 binary64))
(fma.f64 x (+.f64 (*.f64 #s(literal -1/45 binary64) (*.f64 x x)) (*.f64 (*.f64 x x) #s(literal 0 binary64))) (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal 1/45 binary64)))))
(fma.f64 x (+.f64 (*.f64 (*.f64 x x) #s(literal 0 binary64)) #s(literal 1/3 binary64)) #s(literal 0 binary64))
(fma.f64 x (+.f64 (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))) (*.f64 (*.f64 x x) #s(literal 0 binary64))) (*.f64 x (-.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))))))
(fma.f64 x (-.f64 (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))) (*.f64 (*.f64 x x) #s(literal 0 binary64))) (*.f64 x (-.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))))))
(fma.f64 x (-.f64 (*.f64 #s(literal -1/45 binary64) (*.f64 x x)) (*.f64 (*.f64 x x) #s(literal 0 binary64))) (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal 1/45 binary64)))))
(fma.f64 #s(literal -1/45 binary64) #s(literal 0 binary64) (*.f64 #s(literal 1/3 binary64) x))
(fma.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x x)) (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal 1/45 binary64)))))
(fma.f64 #s(literal -1/45 binary64) (+.f64 (*.f64 x (*.f64 x x)) #s(literal 0 binary64)) (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal 1/45 binary64)))))
(fma.f64 #s(literal -1/45 binary64) (-.f64 (*.f64 x (*.f64 x x)) #s(literal 0 binary64)) (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal 1/45 binary64)))))
(fma.f64 (*.f64 x #s(literal -1/45 binary64)) (*.f64 x x) (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal 1/45 binary64)))))
(fma.f64 (*.f64 x #s(literal -1/45 binary64)) (*.f64 x (*.f64 #s(literal 0 binary64) x)) (*.f64 #s(literal 1/3 binary64) x))
(fma.f64 (*.f64 x #s(literal -1/45 binary64)) (+.f64 (*.f64 x x) (*.f64 x (*.f64 #s(literal 0 binary64) x))) (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal 1/45 binary64)))))
(fma.f64 (*.f64 x #s(literal -1/45 binary64)) (-.f64 (*.f64 x x) (*.f64 x (*.f64 #s(literal 0 binary64) x))) (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal 1/45 binary64)))))
(fma.f64 (*.f64 #s(literal -1/45 binary64) (*.f64 x x)) x (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal 1/45 binary64)))))
(fma.f64 (*.f64 #s(literal -1/45 binary64) (*.f64 x x)) (*.f64 #s(literal 0 binary64) x) (*.f64 #s(literal 1/3 binary64) x))
(fma.f64 (*.f64 #s(literal -1/45 binary64) (*.f64 x x)) (+.f64 x (*.f64 #s(literal 0 binary64) x)) (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal 1/45 binary64)))))
(fma.f64 (*.f64 #s(literal -1/45 binary64) (*.f64 x x)) (-.f64 x (*.f64 #s(literal 0 binary64) x)) (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal 1/45 binary64)))))
(fma.f64 (*.f64 x x) (*.f64 x #s(literal -1/45 binary64)) (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal 1/45 binary64)))))
(fma.f64 (*.f64 x x) (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64)))) (*.f64 x (-.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))))))
(fma.f64 (*.f64 x x) (*.f64 x #s(literal 0 binary64)) (*.f64 #s(literal 1/3 binary64) x))
(fma.f64 (*.f64 x x) (+.f64 (*.f64 x #s(literal -1/45 binary64)) (*.f64 x #s(literal 0 binary64))) (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal 1/45 binary64)))))
(fma.f64 (*.f64 x x) (+.f64 (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64)))) (*.f64 x #s(literal 0 binary64))) (*.f64 x (-.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))))))
(fma.f64 (*.f64 x x) (-.f64 (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64)))) (*.f64 x #s(literal 0 binary64))) (*.f64 x (-.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))))))
(fma.f64 (*.f64 x x) (-.f64 (*.f64 x #s(literal -1/45 binary64)) (*.f64 x #s(literal 0 binary64))) (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal 1/45 binary64)))))
(fma.f64 (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))) #s(literal 0 binary64) (*.f64 #s(literal 1/3 binary64) x))
(fma.f64 (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))) (*.f64 x (*.f64 x x)) (*.f64 x (-.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))))))
(fma.f64 (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))) (+.f64 (*.f64 x (*.f64 x x)) #s(literal 0 binary64)) (*.f64 x (-.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))))))
(fma.f64 (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))) (-.f64 (*.f64 x (*.f64 x x)) #s(literal 0 binary64)) (*.f64 x (-.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))))))
(fma.f64 (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64)))) (*.f64 x x) (*.f64 x (-.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))))))
(fma.f64 (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64)))) (*.f64 x (*.f64 #s(literal 0 binary64) x)) (*.f64 #s(literal 1/3 binary64) x))
(fma.f64 (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64)))) (+.f64 (*.f64 x x) (*.f64 x (*.f64 #s(literal 0 binary64) x))) (*.f64 x (-.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))))))
(fma.f64 (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64)))) (-.f64 (*.f64 x x) (*.f64 x (*.f64 #s(literal 0 binary64) x))) (*.f64 x (-.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))))))
(fma.f64 #s(literal 0 binary64) (*.f64 x (*.f64 #s(literal -1/45 binary64) (*.f64 x x))) (*.f64 #s(literal 1/3 binary64) x))
(fma.f64 #s(literal 0 binary64) (*.f64 x (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64)))))) (*.f64 #s(literal 1/3 binary64) x))
(fma.f64 (*.f64 x (*.f64 x x)) #s(literal -1/45 binary64) (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal 1/45 binary64)))))
(fma.f64 (*.f64 x (*.f64 x x)) (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))) (*.f64 x (-.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))))))
(fma.f64 (*.f64 x (*.f64 x x)) #s(literal 0 binary64) (*.f64 #s(literal 1/3 binary64) x))
(fma.f64 (*.f64 x (*.f64 x x)) (+.f64 (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))) #s(literal 0 binary64)) (*.f64 x (-.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))))))
(fma.f64 (*.f64 x (*.f64 x x)) (-.f64 (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))) #s(literal 0 binary64)) (*.f64 x (-.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))))))
(fma.f64 (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))) x (*.f64 x (-.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))))))
(fma.f64 (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))) (*.f64 #s(literal 0 binary64) x) (*.f64 #s(literal 1/3 binary64) x))
(fma.f64 (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))) (+.f64 x (*.f64 #s(literal 0 binary64) x)) (*.f64 x (-.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))))))
(fma.f64 (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))) (-.f64 x (*.f64 #s(literal 0 binary64) x)) (*.f64 x (-.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))))))
(fma.f64 #s(literal 1 binary64) (*.f64 x (*.f64 #s(literal -1/45 binary64) (*.f64 x x))) (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal 1/45 binary64)))))
(fma.f64 #s(literal 1 binary64) (*.f64 x (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64)))))) (*.f64 x (-.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))))))
(*.f64 #s(literal 1/3 binary64) x)
(*.f64 x #s(literal 1/3 binary64))
(*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal 0 binary64))))
(*.f64 x (+.f64 (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))) (-.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))))))
(*.f64 x (+.f64 (*.f64 #s(literal -1/45 binary64) (*.f64 x x)) (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal 1/45 binary64)))))
(*.f64 x (+.f64 (*.f64 (*.f64 x x) #s(literal 0 binary64)) #s(literal 1/3 binary64)))
(*.f64 x (*.f64 #s(literal -1/45 binary64) (*.f64 x x)))
(*.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x x)))
(*.f64 (*.f64 x #s(literal -1/45 binary64)) (*.f64 x x))
(*.f64 (*.f64 #s(literal -1/45 binary64) (*.f64 x x)) x)
(*.f64 (*.f64 x x) (*.f64 x #s(literal -1/45 binary64)))
(*.f64 (*.f64 x (*.f64 x x)) #s(literal -1/45 binary64))
(*.f64 x (*.f64 x #s(literal -1/45 binary64)))
(*.f64 #s(literal -1/45 binary64) (*.f64 x x))
(*.f64 (*.f64 x #s(literal -1/45 binary64)) x)
(*.f64 (*.f64 x x) #s(literal -1/45 binary64))
(+.f64 (*.f64 #s(literal 1/3 binary64) x) (*.f64 (*.f64 x (*.f64 x x)) (+.f64 (*.f64 x (*.f64 x #s(literal 2/945 binary64))) #s(literal 1/45 binary64))))
(+.f64 (*.f64 x (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64)))))) (+.f64 (*.f64 #s(literal 1/3 binary64) x) (*.f64 (*.f64 x (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64)))))) #s(literal -2 binary64))))
(+.f64 (*.f64 x (-.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))))) #s(literal 0 binary64))
(+.f64 (*.f64 x (-.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))))) (-.f64 (*.f64 (*.f64 x x) (*.f64 x (*.f64 x (*.f64 x #s(literal 2/945 binary64))))) (*.f64 (*.f64 x x) (*.f64 x (*.f64 x (*.f64 x #s(literal 2/945 binary64)))))))
(+.f64 #s(literal 0 binary64) (*.f64 x (-.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))))))
(+.f64 (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal 1/45 binary64)))) (*.f64 (*.f64 x x) (*.f64 x (*.f64 x (*.f64 x #s(literal 2/945 binary64))))))
(+.f64 (*.f64 (*.f64 x (*.f64 x x)) (+.f64 (*.f64 x (*.f64 x #s(literal 2/945 binary64))) #s(literal 1/45 binary64))) (*.f64 #s(literal 1/3 binary64) x))
(+.f64 (*.f64 x (*.f64 (*.f64 x x) #s(literal 1/45 binary64))) (+.f64 (*.f64 (*.f64 x x) (*.f64 x (*.f64 x (*.f64 x #s(literal 2/945 binary64))))) (*.f64 #s(literal 1/3 binary64) x)))
(+.f64 (*.f64 x (*.f64 (*.f64 x x) #s(literal 1/45 binary64))) (-.f64 (*.f64 #s(literal 1/3 binary64) x) (*.f64 x (*.f64 x (*.f64 x (*.f64 (*.f64 x x) #s(literal -2/945 binary64)))))))
(+.f64 (*.f64 (*.f64 x x) (*.f64 x (*.f64 x (*.f64 x #s(literal 2/945 binary64))))) (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal 1/45 binary64)))))
(+.f64 (+.f64 (*.f64 (*.f64 x x) (*.f64 x (*.f64 x (*.f64 x #s(literal 2/945 binary64))))) #s(literal 0 binary64)) (+.f64 (*.f64 x (*.f64 x (*.f64 x (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))) (*.f64 x (-.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64)))))))))
(+.f64 (+.f64 (*.f64 #s(literal 1/3 binary64) x) (*.f64 (*.f64 x (*.f64 x x)) #s(literal 2/45 binary64))) (-.f64 (*.f64 x (*.f64 #s(literal -1/45 binary64) (*.f64 x x))) (*.f64 x (*.f64 x (*.f64 x (*.f64 (*.f64 x x) #s(literal -2/945 binary64)))))))
(+.f64 (*.f64 (*.f64 x (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64)))))) #s(literal -2 binary64)) (+.f64 (*.f64 x (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64)))))) (*.f64 #s(literal 1/3 binary64) x)))
(+.f64 (+.f64 (*.f64 #s(literal 1/3 binary64) x) (*.f64 (*.f64 x (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64)))))) #s(literal -2 binary64))) (*.f64 x (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64)))))))
(+.f64 (+.f64 (*.f64 #s(literal 1/3 binary64) x) (*.f64 (*.f64 x (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64)))))) #s(literal -2 binary64))) (+.f64 (*.f64 x (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64)))))) #s(literal 0 binary64)))
(+.f64 (+.f64 (*.f64 #s(literal 1/3 binary64) x) (*.f64 (*.f64 x x) (*.f64 x (*.f64 x (*.f64 x #s(literal 2/945 binary64)))))) (*.f64 x (*.f64 (*.f64 x x) #s(literal 1/45 binary64))))
(+.f64 (+.f64 (*.f64 x (-.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))))) (+.f64 (*.f64 (*.f64 x x) (*.f64 x (*.f64 x (*.f64 x #s(literal 2/945 binary64))))) #s(literal 0 binary64))) (*.f64 x (*.f64 x (*.f64 x (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))))
(+.f64 (+.f64 (+.f64 (*.f64 #s(literal 1/3 binary64) x) (*.f64 (*.f64 x (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64)))))) #s(literal -2 binary64))) (*.f64 x (*.f64 #s(literal -1/45 binary64) (*.f64 x x)))) (*.f64 x (*.f64 x (*.f64 x (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))))
(+.f64 (+.f64 (+.f64 (*.f64 #s(literal 1/3 binary64) x) (*.f64 (*.f64 x (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64)))))) #s(literal -2 binary64))) (*.f64 x (*.f64 x (*.f64 x (*.f64 (*.f64 x x) #s(literal -2/945 binary64)))))) (*.f64 x (*.f64 #s(literal -1/45 binary64) (*.f64 x x))))
(-.f64 (*.f64 #s(literal 1/3 binary64) x) (*.f64 x (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64)))))))
(-.f64 (*.f64 #s(literal 1/3 binary64) x) (+.f64 (*.f64 x (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64)))))) #s(literal 0 binary64)))
(-.f64 (*.f64 #s(literal 1/3 binary64) x) (+.f64 (+.f64 (*.f64 x (*.f64 #s(literal -1/45 binary64) (*.f64 x x))) #s(literal 0 binary64)) (*.f64 x (*.f64 x (*.f64 x (*.f64 (*.f64 x x) #s(literal -2/945 binary64)))))))
(-.f64 (*.f64 x (-.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))))) #s(literal 0 binary64))
(-.f64 #s(literal 0 binary64) (*.f64 x (-.f64 (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))) #s(literal 1/3 binary64))))
(-.f64 #s(literal 0 binary64) (-.f64 (*.f64 x (-.f64 (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))) #s(literal 1/3 binary64))) #s(literal 0 binary64)))
(-.f64 #s(literal 0 binary64) (-.f64 #s(literal 0 binary64) (*.f64 x (-.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64)))))))))
(-.f64 #s(literal 0 binary64) (-.f64 (+.f64 (*.f64 x (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64)))))) #s(literal 0 binary64)) (*.f64 #s(literal 1/3 binary64) x)))
(-.f64 #s(literal 0 binary64) (+.f64 (*.f64 x (-.f64 (*.f64 #s(literal -1/45 binary64) (*.f64 x x)) #s(literal 1/3 binary64))) (*.f64 x (*.f64 x (*.f64 x (*.f64 (*.f64 x x) #s(literal -2/945 binary64)))))))
(-.f64 (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal 1/45 binary64)))) (*.f64 x (*.f64 x (*.f64 x (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))))
(-.f64 (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal 1/45 binary64)))) (*.f64 (*.f64 x (*.f64 x x)) (-.f64 (*.f64 (*.f64 x x) #s(literal -2/945 binary64)) #s(literal 0 binary64))))
(-.f64 (*.f64 x (*.f64 (*.f64 x x) #s(literal 1/45 binary64))) (-.f64 (*.f64 x (*.f64 x (*.f64 x (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))) (*.f64 #s(literal 1/3 binary64) x)))
(-.f64 (-.f64 (*.f64 #s(literal 1/3 binary64) x) (*.f64 x (*.f64 x (*.f64 x (*.f64 (*.f64 x x) #s(literal -2/945 binary64)))))) (*.f64 x (*.f64 #s(literal -1/45 binary64) (*.f64 x x))))
(fma.f64 #s(literal 1/3 binary64) x (*.f64 (*.f64 x (*.f64 x x)) (+.f64 (*.f64 x (*.f64 x #s(literal 2/945 binary64))) #s(literal 1/45 binary64))))
(fma.f64 #s(literal 1/3 binary64) x (neg.f64 (+.f64 (+.f64 (*.f64 x (*.f64 #s(literal -1/45 binary64) (*.f64 x x))) #s(literal 0 binary64)) (*.f64 x (*.f64 x (*.f64 x (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))))))
(fma.f64 x #s(literal 1/3 binary64) (*.f64 (*.f64 x (*.f64 x x)) (+.f64 (*.f64 x (*.f64 x #s(literal 2/945 binary64))) #s(literal 1/45 binary64))))
(fma.f64 x #s(literal 1/3 binary64) (neg.f64 (+.f64 (+.f64 (*.f64 x (*.f64 #s(literal -1/45 binary64) (*.f64 x x))) #s(literal 0 binary64)) (*.f64 x (*.f64 x (*.f64 x (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))))))
(fma.f64 x (*.f64 (*.f64 x x) #s(literal 1/45 binary64)) (neg.f64 (-.f64 (*.f64 x (*.f64 x (*.f64 x (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))) (*.f64 #s(literal 1/3 binary64) x))))
(fma.f64 x (*.f64 x (*.f64 x (+.f64 (*.f64 x (*.f64 x #s(literal 2/945 binary64))) #s(literal 1/45 binary64)))) (*.f64 #s(literal 1/3 binary64) x))
(fma.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal 1/45 binary64))) (*.f64 (*.f64 x x) (*.f64 x (*.f64 x (*.f64 x #s(literal 2/945 binary64))))))
(fma.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal 1/45 binary64))) (neg.f64 (*.f64 (*.f64 x (*.f64 x x)) (-.f64 (*.f64 (*.f64 x x) #s(literal -2/945 binary64)) #s(literal 0 binary64)))))
(fma.f64 x (-.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64)))))) #s(literal 0 binary64))
(fma.f64 x (*.f64 (*.f64 x x) #s(literal 0 binary64)) (*.f64 x (-.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))))))
(fma.f64 x (+.f64 (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal 1/45 binary64))) (*.f64 (*.f64 x x) #s(literal 0 binary64))) (*.f64 (*.f64 x x) (*.f64 x (*.f64 x (*.f64 x #s(literal 2/945 binary64))))))
(fma.f64 x (+.f64 (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal 1/45 binary64))) (*.f64 (*.f64 x x) #s(literal 0 binary64))) (neg.f64 (*.f64 (*.f64 x (*.f64 x x)) (-.f64 (*.f64 (*.f64 x x) #s(literal -2/945 binary64)) #s(literal 0 binary64)))))
(fma.f64 x (+.f64 (*.f64 (*.f64 x x) #s(literal 0 binary64)) (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal 1/45 binary64)))) (*.f64 (*.f64 x x) (*.f64 x (*.f64 x (*.f64 x #s(literal 2/945 binary64))))))
(fma.f64 x (+.f64 (*.f64 (*.f64 x x) #s(literal 0 binary64)) (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal 1/45 binary64)))) (neg.f64 (*.f64 (*.f64 x (*.f64 x x)) (-.f64 (*.f64 (*.f64 x x) #s(literal -2/945 binary64)) #s(literal 0 binary64)))))
(fma.f64 x (+.f64 (-.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64)))))) (*.f64 (*.f64 x x) #s(literal 0 binary64))) #s(literal 0 binary64))
(fma.f64 x (+.f64 (*.f64 (*.f64 x x) #s(literal 0 binary64)) (-.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))))) #s(literal 0 binary64))
(fma.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal 0 binary64))) (*.f64 (*.f64 x (*.f64 x x)) (+.f64 (*.f64 x (*.f64 x #s(literal 2/945 binary64))) #s(literal 1/45 binary64))))
(fma.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal 0 binary64))) (neg.f64 (+.f64 (+.f64 (*.f64 x (*.f64 #s(literal -1/45 binary64) (*.f64 x x))) #s(literal 0 binary64)) (*.f64 x (*.f64 x (*.f64 x (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))))))
(fma.f64 x (+.f64 (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))) (-.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))))) (*.f64 (*.f64 x (*.f64 x x)) (+.f64 (*.f64 x (*.f64 x #s(literal 2/945 binary64))) #s(literal 1/45 binary64))))
(fma.f64 x (+.f64 (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))) (-.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))))) (neg.f64 (+.f64 (+.f64 (*.f64 x (*.f64 #s(literal -1/45 binary64) (*.f64 x x))) #s(literal 0 binary64)) (*.f64 x (*.f64 x (*.f64 x (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))))))
(fma.f64 x (+.f64 (*.f64 (*.f64 x x) #s(literal 0 binary64)) (*.f64 (*.f64 x x) #s(literal 1/45 binary64))) (neg.f64 (-.f64 (*.f64 x (*.f64 x (*.f64 x (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))) (*.f64 #s(literal 1/3 binary64) x))))
(fma.f64 x (+.f64 (*.f64 (*.f64 x x) #s(literal 1/45 binary64)) (*.f64 (*.f64 x x) #s(literal 0 binary64))) (neg.f64 (-.f64 (*.f64 x (*.f64 x (*.f64 x (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))) (*.f64 #s(literal 1/3 binary64) x))))
(fma.f64 x (+.f64 (*.f64 #s(literal -1/45 binary64) (*.f64 x x)) (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal 1/45 binary64)))) (*.f64 (*.f64 x (*.f64 x x)) (+.f64 (*.f64 x (*.f64 x #s(literal 2/945 binary64))) #s(literal 1/45 binary64))))
(fma.f64 x (+.f64 (*.f64 #s(literal -1/45 binary64) (*.f64 x x)) (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal 1/45 binary64)))) (neg.f64 (+.f64 (+.f64 (*.f64 x (*.f64 #s(literal -1/45 binary64) (*.f64 x x))) #s(literal 0 binary64)) (*.f64 x (*.f64 x (*.f64 x (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))))))
(fma.f64 x (+.f64 (*.f64 (*.f64 x x) #s(literal 0 binary64)) #s(literal 1/3 binary64)) (*.f64 (*.f64 x (*.f64 x x)) (+.f64 (*.f64 x (*.f64 x #s(literal 2/945 binary64))) #s(literal 1/45 binary64))))
(fma.f64 x (+.f64 (*.f64 (*.f64 x x) #s(literal 0 binary64)) #s(literal 1/3 binary64)) (neg.f64 (+.f64 (+.f64 (*.f64 x (*.f64 #s(literal -1/45 binary64) (*.f64 x x))) #s(literal 0 binary64)) (*.f64 x (*.f64 x (*.f64 x (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))))))
(fma.f64 #s(literal -1/45 binary64) (-.f64 #s(literal 0 binary64) (*.f64 x (*.f64 x x))) (neg.f64 (-.f64 (*.f64 x (*.f64 x (*.f64 x (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))) (*.f64 #s(literal 1/3 binary64) x))))
(fma.f64 #s(literal -1/45 binary64) (+.f64 (-.f64 #s(literal 0 binary64) (*.f64 x (*.f64 x x))) #s(literal 0 binary64)) (neg.f64 (-.f64 (*.f64 x (*.f64 x (*.f64 x (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))) (*.f64 #s(literal 1/3 binary64) x))))
(fma.f64 (*.f64 x #s(literal -1/45 binary64)) (-.f64 #s(literal 0 binary64) (*.f64 x x)) (neg.f64 (-.f64 (*.f64 x (*.f64 x (*.f64 x (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))) (*.f64 #s(literal 1/3 binary64) x))))
(fma.f64 (*.f64 x #s(literal -1/45 binary64)) (+.f64 (*.f64 x (*.f64 #s(literal 0 binary64) x)) (-.f64 #s(literal 0 binary64) (*.f64 x x))) (neg.f64 (-.f64 (*.f64 x (*.f64 x (*.f64 x (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))) (*.f64 #s(literal 1/3 binary64) x))))
(fma.f64 (*.f64 x #s(literal -1/45 binary64)) (+.f64 (-.f64 #s(literal 0 binary64) (*.f64 x x)) (*.f64 x (*.f64 #s(literal 0 binary64) x))) (neg.f64 (-.f64 (*.f64 x (*.f64 x (*.f64 x (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))) (*.f64 #s(literal 1/3 binary64) x))))
(fma.f64 (*.f64 #s(literal -1/45 binary64) (*.f64 x x)) (-.f64 #s(literal 0 binary64) x) (neg.f64 (-.f64 (*.f64 x (*.f64 x (*.f64 x (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))) (*.f64 #s(literal 1/3 binary64) x))))
(fma.f64 (*.f64 #s(literal -1/45 binary64) (*.f64 x x)) (+.f64 (*.f64 #s(literal 0 binary64) x) (-.f64 #s(literal 0 binary64) x)) (neg.f64 (-.f64 (*.f64 x (*.f64 x (*.f64 x (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))) (*.f64 #s(literal 1/3 binary64) x))))
(fma.f64 (*.f64 #s(literal -1/45 binary64) (*.f64 x x)) (+.f64 (-.f64 #s(literal 0 binary64) x) (*.f64 #s(literal 0 binary64) x)) (neg.f64 (-.f64 (*.f64 x (*.f64 x (*.f64 x (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))) (*.f64 #s(literal 1/3 binary64) x))))
(fma.f64 (*.f64 x (*.f64 #s(literal -1/45 binary64) (*.f64 x x))) #s(literal -1 binary64) (neg.f64 (-.f64 (*.f64 x (*.f64 x (*.f64 x (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))) (*.f64 #s(literal 1/3 binary64) x))))
(fma.f64 (*.f64 x x) (*.f64 x (+.f64 (*.f64 x (*.f64 x #s(literal 2/945 binary64))) #s(literal 1/45 binary64))) (*.f64 #s(literal 1/3 binary64) x))
(fma.f64 (*.f64 x x) (*.f64 x #s(literal 1/45 binary64)) (neg.f64 (-.f64 (*.f64 x (*.f64 x (*.f64 x (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))) (*.f64 #s(literal 1/3 binary64) x))))
(fma.f64 (*.f64 x x) (*.f64 x #s(literal 0 binary64)) (*.f64 x (-.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))))))
(fma.f64 (*.f64 x x) (+.f64 (*.f64 x #s(literal 0 binary64)) (*.f64 x #s(literal 1/45 binary64))) (neg.f64 (-.f64 (*.f64 x (*.f64 x (*.f64 x (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))) (*.f64 #s(literal 1/3 binary64) x))))
(fma.f64 (*.f64 x x) (+.f64 (*.f64 x #s(literal 1/45 binary64)) (*.f64 x #s(literal 0 binary64))) (neg.f64 (-.f64 (*.f64 x (*.f64 x (*.f64 x (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))) (*.f64 #s(literal 1/3 binary64) x))))
(fma.f64 (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))) #s(literal 0 binary64) (*.f64 x (-.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))))))
(fma.f64 (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))) (-.f64 #s(literal 0 binary64) (*.f64 x (*.f64 x x))) (*.f64 #s(literal 1/3 binary64) x))
(fma.f64 (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64)))) (-.f64 #s(literal 0 binary64) (*.f64 x x)) (*.f64 #s(literal 1/3 binary64) x))
(fma.f64 (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64)))) (*.f64 x (*.f64 #s(literal 0 binary64) x)) (*.f64 x (-.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))))))
(fma.f64 (*.f64 x (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64)))))) #s(literal -1 binary64) (*.f64 #s(literal 1/3 binary64) x))
(fma.f64 (*.f64 x (+.f64 (*.f64 x (*.f64 x #s(literal 2/945 binary64))) #s(literal 1/45 binary64))) (*.f64 x x) (*.f64 #s(literal 1/3 binary64) x))
(fma.f64 #s(literal 0 binary64) (*.f64 x (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64)))))) (*.f64 x (-.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))))))
(fma.f64 (*.f64 (*.f64 x x) #s(literal 1/45 binary64)) x (neg.f64 (-.f64 (*.f64 x (*.f64 x (*.f64 x (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))) (*.f64 #s(literal 1/3 binary64) x))))
(fma.f64 #s(literal 2 binary64) #s(literal 0 binary64) (*.f64 x (-.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))))))
(fma.f64 (-.f64 #s(literal 0 binary64) (*.f64 x x)) (*.f64 x #s(literal -1/45 binary64)) (neg.f64 (-.f64 (*.f64 x (*.f64 x (*.f64 x (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))) (*.f64 #s(literal 1/3 binary64) x))))
(fma.f64 (-.f64 #s(literal 0 binary64) (*.f64 x x)) (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64)))) (*.f64 #s(literal 1/3 binary64) x))
(fma.f64 (-.f64 #s(literal 0 binary64) x) (*.f64 #s(literal -1/45 binary64) (*.f64 x x)) (neg.f64 (-.f64 (*.f64 x (*.f64 x (*.f64 x (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))) (*.f64 #s(literal 1/3 binary64) x))))
(fma.f64 (-.f64 #s(literal 0 binary64) x) (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))) (*.f64 #s(literal 1/3 binary64) x))
(fma.f64 (*.f64 x (*.f64 x x)) #s(literal 0 binary64) (*.f64 x (-.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))))))
(fma.f64 (*.f64 x (*.f64 x x)) (+.f64 (*.f64 x (*.f64 x #s(literal 2/945 binary64))) #s(literal 1/45 binary64)) (*.f64 #s(literal 1/3 binary64) x))
(fma.f64 (*.f64 x (*.f64 x x)) #s(literal 1/45 binary64) (neg.f64 (-.f64 (*.f64 x (*.f64 x (*.f64 x (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))) (*.f64 #s(literal 1/3 binary64) x))))
(fma.f64 (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))) (-.f64 #s(literal 0 binary64) x) (*.f64 #s(literal 1/3 binary64) x))
(fma.f64 (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))) (*.f64 #s(literal 0 binary64) x) (*.f64 x (-.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))))))
(fma.f64 (*.f64 x #s(literal 1/45 binary64)) (*.f64 x x) (neg.f64 (-.f64 (*.f64 x (*.f64 x (*.f64 x (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))) (*.f64 #s(literal 1/3 binary64) x))))
(fma.f64 (*.f64 x (*.f64 x (+.f64 (*.f64 x (*.f64 x #s(literal 2/945 binary64))) #s(literal 1/45 binary64)))) x (*.f64 #s(literal 1/3 binary64) x))
(fma.f64 (+.f64 (*.f64 x (*.f64 x #s(literal 2/945 binary64))) #s(literal 1/45 binary64)) (*.f64 x (*.f64 x x)) (*.f64 #s(literal 1/3 binary64) x))
(fma.f64 #s(literal -1 binary64) (*.f64 x (*.f64 #s(literal -1/45 binary64) (*.f64 x x))) (neg.f64 (-.f64 (*.f64 x (*.f64 x (*.f64 x (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))) (*.f64 #s(literal 1/3 binary64) x))))
(fma.f64 #s(literal -1 binary64) (*.f64 x (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64)))))) (*.f64 #s(literal 1/3 binary64) x))
(fma.f64 #s(literal -1 binary64) (+.f64 (*.f64 x (*.f64 #s(literal -1/45 binary64) (*.f64 x x))) #s(literal 0 binary64)) (neg.f64 (-.f64 (*.f64 x (*.f64 x (*.f64 x (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))) (*.f64 #s(literal 1/3 binary64) x))))
(fma.f64 (-.f64 #s(literal 0 binary64) (*.f64 x (*.f64 x x))) #s(literal -1/45 binary64) (neg.f64 (-.f64 (*.f64 x (*.f64 x (*.f64 x (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))) (*.f64 #s(literal 1/3 binary64) x))))
(fma.f64 (-.f64 #s(literal 0 binary64) (*.f64 x (*.f64 x x))) (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))) (*.f64 #s(literal 1/3 binary64) x))
(fma.f64 #s(literal 1/45 binary64) (*.f64 x (*.f64 x x)) (neg.f64 (-.f64 (*.f64 x (*.f64 x (*.f64 x (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))) (*.f64 #s(literal 1/3 binary64) x))))
(fma.f64 (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal 1/45 binary64))) x (*.f64 (*.f64 x x) (*.f64 x (*.f64 x (*.f64 x #s(literal 2/945 binary64))))))
(fma.f64 (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal 1/45 binary64))) x (neg.f64 (*.f64 (*.f64 x (*.f64 x x)) (-.f64 (*.f64 (*.f64 x x) #s(literal -2/945 binary64)) #s(literal 0 binary64)))))
(fma.f64 (-.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64)))))) x #s(literal 0 binary64))
(neg.f64 (*.f64 x (-.f64 (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))) #s(literal 1/3 binary64))))
(*.f64 x (-.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64)))))))
(*.f64 x (+.f64 (-.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64)))))) (*.f64 (*.f64 x x) #s(literal 0 binary64))))
(*.f64 x (+.f64 (*.f64 (*.f64 x x) #s(literal 0 binary64)) (-.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))))))
(*.f64 (-.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64)))))) x)
(+.f64 (*.f64 x (*.f64 #s(literal -1/45 binary64) (*.f64 x x))) (*.f64 x (*.f64 x (*.f64 x (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))))
(+.f64 (*.f64 x (*.f64 x (*.f64 x (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))) (*.f64 x (*.f64 #s(literal -1/45 binary64) (*.f64 x x))))
(-.f64 (*.f64 x (*.f64 #s(literal -1/45 binary64) (*.f64 x x))) (*.f64 (*.f64 x x) (*.f64 x (*.f64 x (*.f64 x #s(literal 2/945 binary64))))))
(fma.f64 x (*.f64 #s(literal -1/45 binary64) (*.f64 x x)) (*.f64 x (*.f64 x (*.f64 x (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))))
(fma.f64 x (*.f64 x (*.f64 x (*.f64 (*.f64 x x) #s(literal -2/945 binary64)))) (*.f64 x (*.f64 #s(literal -1/45 binary64) (*.f64 x x))))
(fma.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x x)) (*.f64 x (*.f64 x (*.f64 x (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))))
(fma.f64 (*.f64 x #s(literal -1/45 binary64)) (*.f64 x x) (*.f64 x (*.f64 x (*.f64 x (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))))
(fma.f64 (*.f64 #s(literal -1/45 binary64) (*.f64 x x)) x (*.f64 x (*.f64 x (*.f64 x (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))))
(fma.f64 (*.f64 x x) (*.f64 x #s(literal -1/45 binary64)) (*.f64 x (*.f64 x (*.f64 x (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))))
(fma.f64 (*.f64 x x) (*.f64 x (*.f64 (*.f64 x x) #s(literal -2/945 binary64))) (*.f64 x (*.f64 #s(literal -1/45 binary64) (*.f64 x x))))
(fma.f64 (*.f64 x #s(literal 2/945 binary64)) (*.f64 x (-.f64 #s(literal 0 binary64) (*.f64 x (*.f64 x x)))) (*.f64 x (*.f64 #s(literal -1/45 binary64) (*.f64 x x))))
(fma.f64 (*.f64 (*.f64 x x) #s(literal -2/945 binary64)) (*.f64 x (*.f64 x x)) (*.f64 x (*.f64 #s(literal -1/45 binary64) (*.f64 x x))))
(fma.f64 (-.f64 #s(literal 0 binary64) (*.f64 x x)) (*.f64 x (*.f64 x (*.f64 x #s(literal 2/945 binary64)))) (*.f64 x (*.f64 #s(literal -1/45 binary64) (*.f64 x x))))
(fma.f64 (-.f64 #s(literal 0 binary64) x) (*.f64 (*.f64 x x) (*.f64 x (*.f64 x #s(literal 2/945 binary64)))) (*.f64 x (*.f64 #s(literal -1/45 binary64) (*.f64 x x))))
(fma.f64 (*.f64 x (*.f64 x x)) #s(literal -1/45 binary64) (*.f64 x (*.f64 x (*.f64 x (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))))
(fma.f64 (*.f64 x (*.f64 x x)) (*.f64 (*.f64 x x) #s(literal -2/945 binary64)) (*.f64 x (*.f64 #s(literal -1/45 binary64) (*.f64 x x))))
(fma.f64 #s(literal -1 binary64) (*.f64 (*.f64 x x) (*.f64 x (*.f64 x (*.f64 x #s(literal 2/945 binary64))))) (*.f64 x (*.f64 #s(literal -1/45 binary64) (*.f64 x x))))
(fma.f64 (*.f64 x #s(literal -2/945 binary64)) (*.f64 x (*.f64 x (*.f64 x x))) (*.f64 x (*.f64 #s(literal -1/45 binary64) (*.f64 x x))))
(fma.f64 (-.f64 #s(literal 0 binary64) (*.f64 x (*.f64 x x))) (*.f64 x (*.f64 x #s(literal 2/945 binary64))) (*.f64 x (*.f64 #s(literal -1/45 binary64) (*.f64 x x))))
(fma.f64 (*.f64 x (*.f64 (*.f64 x x) #s(literal -2/945 binary64))) (*.f64 x x) (*.f64 x (*.f64 #s(literal -1/45 binary64) (*.f64 x x))))
(fma.f64 (*.f64 (*.f64 x x) (*.f64 x (*.f64 x #s(literal 2/945 binary64)))) (-.f64 #s(literal 0 binary64) x) (*.f64 x (*.f64 #s(literal -1/45 binary64) (*.f64 x x))))
(fma.f64 (*.f64 x (*.f64 x (*.f64 (*.f64 x x) #s(literal -2/945 binary64)))) x (*.f64 x (*.f64 #s(literal -1/45 binary64) (*.f64 x x))))
(fma.f64 (*.f64 x (*.f64 x (*.f64 x x))) (*.f64 x #s(literal -2/945 binary64)) (*.f64 x (*.f64 #s(literal -1/45 binary64) (*.f64 x x))))
(fma.f64 (*.f64 (*.f64 x x) (*.f64 x (*.f64 x x))) #s(literal -2/945 binary64) (*.f64 x (*.f64 #s(literal -1/45 binary64) (*.f64 x x))))
(fma.f64 (*.f64 x (*.f64 x (-.f64 #s(literal 0 binary64) (*.f64 x (*.f64 x x))))) #s(literal 2/945 binary64) (*.f64 x (*.f64 #s(literal -1/45 binary64) (*.f64 x x))))
(fma.f64 (*.f64 x (-.f64 #s(literal 0 binary64) (*.f64 x (*.f64 x x)))) (*.f64 x #s(literal 2/945 binary64)) (*.f64 x (*.f64 #s(literal -1/45 binary64) (*.f64 x x))))
(*.f64 x (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))))
(*.f64 (*.f64 x x) (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64)))))
(*.f64 (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))) (*.f64 x (*.f64 x x)))
(*.f64 (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64)))) (*.f64 x x))
(*.f64 (*.f64 x (*.f64 x x)) (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))
(*.f64 (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))) x)
(exp.f64 (*.f64 #s(literal 2 binary64) (log.f64 x)))
(exp.f64 (+.f64 (log.f64 x) (log.f64 x)))
(pow.f64 x #s(literal 2 binary64))
(pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 x))
(*.f64 x x)
(*.f64 x #s(literal -1/45 binary64))
(*.f64 #s(literal -1/45 binary64) x)
(*.f64 x #s(literal 2/945 binary64))
(*.f64 #s(literal 2/945 binary64) x)
(+.f64 (*.f64 x #s(literal -1/45 binary64)) (*.f64 x (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))
(+.f64 (*.f64 x (*.f64 (*.f64 x x) #s(literal -2/945 binary64))) (*.f64 x #s(literal -1/45 binary64)))
(-.f64 (*.f64 x #s(literal -1/45 binary64)) (*.f64 x (*.f64 x (*.f64 x #s(literal 2/945 binary64)))))
(fma.f64 x #s(literal -1/45 binary64) (*.f64 x (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))
(fma.f64 x (*.f64 (*.f64 x x) #s(literal -2/945 binary64)) (*.f64 x #s(literal -1/45 binary64)))
(fma.f64 #s(literal -1/45 binary64) x (*.f64 x (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))
(fma.f64 (*.f64 x x) (*.f64 x #s(literal -2/945 binary64)) (*.f64 x #s(literal -1/45 binary64)))
(fma.f64 (*.f64 x #s(literal 2/945 binary64)) (-.f64 #s(literal 0 binary64) (*.f64 x x)) (*.f64 x #s(literal -1/45 binary64)))
(fma.f64 (*.f64 x (*.f64 x #s(literal 2/945 binary64))) (-.f64 #s(literal 0 binary64) x) (*.f64 x #s(literal -1/45 binary64)))
(fma.f64 (*.f64 (*.f64 x x) #s(literal -2/945 binary64)) x (*.f64 x #s(literal -1/45 binary64)))
(fma.f64 (-.f64 #s(literal 0 binary64) (*.f64 x x)) (*.f64 x #s(literal 2/945 binary64)) (*.f64 x #s(literal -1/45 binary64)))
(fma.f64 (-.f64 #s(literal 0 binary64) x) (*.f64 x (*.f64 x #s(literal 2/945 binary64))) (*.f64 x #s(literal -1/45 binary64)))
(fma.f64 (*.f64 x (*.f64 x x)) #s(literal -2/945 binary64) (*.f64 x #s(literal -1/45 binary64)))
(fma.f64 #s(literal -1 binary64) (*.f64 x (*.f64 x (*.f64 x #s(literal 2/945 binary64)))) (*.f64 x #s(literal -1/45 binary64)))
(fma.f64 (*.f64 x #s(literal -2/945 binary64)) (*.f64 x x) (*.f64 x #s(literal -1/45 binary64)))
(fma.f64 (-.f64 #s(literal 0 binary64) (*.f64 x (*.f64 x x))) #s(literal 2/945 binary64) (*.f64 x #s(literal -1/45 binary64)))
(*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))
(*.f64 (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))) x)
(+.f64 #s(literal 0 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64))))
(-.f64 #s(literal 0 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64)))
(neg.f64 (*.f64 (*.f64 x x) #s(literal -2/945 binary64)))
(*.f64 x (*.f64 x #s(literal 2/945 binary64)))
(*.f64 x (neg.f64 (*.f64 x #s(literal -2/945 binary64))))
(*.f64 (*.f64 x x) #s(literal 2/945 binary64))
(*.f64 #s(literal 2/945 binary64) (*.f64 x x))
(*.f64 #s(literal 2/945 binary64) (neg.f64 (-.f64 #s(literal 0 binary64) (*.f64 x x))))
(*.f64 (*.f64 x #s(literal 2/945 binary64)) x)
(*.f64 (*.f64 x #s(literal 2/945 binary64)) (neg.f64 (-.f64 #s(literal 0 binary64) x)))
(*.f64 (*.f64 x (*.f64 x #s(literal 2/945 binary64))) #s(literal 1 binary64))
(*.f64 (*.f64 (*.f64 x x) #s(literal -2/945 binary64)) #s(literal -1 binary64))
(*.f64 (-.f64 #s(literal 0 binary64) (*.f64 x x)) #s(literal -2/945 binary64))
(*.f64 (-.f64 #s(literal 0 binary64) x) (*.f64 x #s(literal -2/945 binary64)))
(*.f64 #s(literal 1 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64))))
(*.f64 #s(literal -1 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64)))
(*.f64 (*.f64 x #s(literal -2/945 binary64)) (-.f64 #s(literal 0 binary64) x))
(*.f64 #s(literal -2/945 binary64) (-.f64 #s(literal 0 binary64) (*.f64 x x)))
(*.f64 (neg.f64 (*.f64 x #s(literal -2/945 binary64))) x)
(*.f64 (neg.f64 (-.f64 #s(literal 0 binary64) x)) (*.f64 x #s(literal 2/945 binary64)))
(*.f64 (neg.f64 (-.f64 #s(literal 0 binary64) (*.f64 x x))) #s(literal 2/945 binary64))

simplify218.0ms (1.7%)

Algorithm
egg-herbie
Rules
2298×*-lowering-*.f32
2298×*-lowering-*.f64
1596×fma-define
1428×/-lowering-/.f32
1428×/-lowering-/.f64
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
056742
1158642
2500642
31414642
44000640
08113640
Stop Event
iter limit
node limit
Counts
132 → 132
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/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 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/3 x)
(* 1/3 x)
(* 1/3 x)
(* 1/3 x)
(* 1/3 x)
(* 1/3 x)
(* 1/3 x)
(* 1/3 x)
(* 1/3 x)
(* 1/3 x)
(* 1/3 x)
(* 1/3 x)
(* -1/45 (pow x 3))
(* -1/45 (pow x 3))
(* -1/45 (pow x 3))
(* -1/45 (pow x 3))
(* -1/45 (pow x 3))
(* -1/45 (pow x 3))
(* -1/45 (pow x 3))
(* -1/45 (pow x 3))
(* -1/45 (pow x 3))
(* -1/45 (pow x 3))
(* -1/45 (pow x 3))
(* -1/45 (pow x 3))
(* -1/45 (pow x 2))
(* -1/45 (pow x 2))
(* -1/45 (pow x 2))
(* -1/45 (pow x 2))
(* -1/45 (pow x 2))
(* -1/45 (pow x 2))
(* -1/45 (pow x 2))
(* -1/45 (pow x 2))
(* -1/45 (pow x 2))
(* -1/45 (pow x 2))
(* -1/45 (pow x 2))
(* -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))))))
(* 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 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/45 (pow x 3))
(* (pow x 3) (- (* -2/945 (pow x 2)) 1/45))
(* (pow x 3) (- (* -2/945 (pow x 2)) 1/45))
(* (pow x 3) (- (* -2/945 (pow x 2)) 1/45))
(* -2/945 (pow x 5))
(* -1 (* (pow x 5) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))))
(* -1 (* (pow x 5) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))))
(* -1 (* (pow x 5) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))))
(* -2/945 (pow x 5))
(* -1 (* (pow x 5) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))))
(* -1 (* (pow x 5) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))))
(* -1 (* (pow x 5) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))))
(pow x 2)
(pow x 2)
(pow x 2)
(pow x 2)
(pow x 2)
(pow x 2)
(pow x 2)
(pow x 2)
(pow x 2)
(pow x 2)
(pow x 2)
(pow x 2)
(* -1/45 x)
(* -1/45 x)
(* -1/45 x)
(* -1/45 x)
(* -1/45 x)
(* -1/45 x)
(* -1/45 x)
(* -1/45 x)
(* -1/45 x)
(* -1/45 x)
(* -1/45 x)
(* -1/45 x)
(* 2/945 x)
(* 2/945 x)
(* 2/945 x)
(* 2/945 x)
(* 2/945 x)
(* 2/945 x)
(* 2/945 x)
(* 2/945 x)
(* 2/945 x)
(* 2/945 x)
(* 2/945 x)
(* 2/945 x)
(* -1/45 x)
(* x (- (* -2/945 (pow x 2)) 1/45))
(* x (- (* -2/945 (pow x 2)) 1/45))
(* x (- (* -2/945 (pow x 2)) 1/45))
(* -2/945 (pow x 3))
(* -1 (* (pow x 3) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))))
(* -1 (* (pow x 3) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))))
(* -1 (* (pow x 3) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))))
(* -2/945 (pow x 3))
(* -1 (* (pow x 3) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))))
(* -1 (* (pow x 3) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))))
(* -1 (* (pow x 3) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))))
(* 2/945 (pow x 2))
(* 2/945 (pow x 2))
(* 2/945 (pow x 2))
(* 2/945 (pow x 2))
(* 2/945 (pow x 2))
(* 2/945 (pow x 2))
(* 2/945 (pow x 2))
(* 2/945 (pow x 2))
(* 2/945 (pow x 2))
(* 2/945 (pow x 2))
(* 2/945 (pow x 2))
(* 2/945 (pow x 2))
Outputs
(* 1/3 x)
(*.f64 #s(literal 1/3 binary64) x)
(* x (+ 1/3 (* 1/45 (pow x 2))))
(*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 #s(literal 1/45 binary64) (*.f64 x x))))
(* x (+ 1/3 (* 1/45 (pow x 2))))
(*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 #s(literal 1/45 binary64) (*.f64 x x))))
(* x (+ 1/3 (* 1/45 (pow x 2))))
(*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 #s(literal 1/45 binary64) (*.f64 x x))))
(* 1/45 (pow x 3))
(*.f64 #s(literal 1/45 binary64) (*.f64 x (*.f64 x x)))
(* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 #s(literal 1/45 binary64) (*.f64 x x))))
(* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 #s(literal 1/45 binary64) (*.f64 x x))))
(* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 #s(literal 1/45 binary64) (*.f64 x x))))
(* 1/45 (pow x 3))
(*.f64 #s(literal 1/45 binary64) (*.f64 x (*.f64 x x)))
(* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 #s(literal 1/45 binary64) (*.f64 x x))))
(* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 #s(literal 1/45 binary64) (*.f64 x x))))
(* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 #s(literal 1/45 binary64) (*.f64 x x))))
(* 1/3 x)
(*.f64 #s(literal 1/3 binary64) x)
(* 1/3 x)
(*.f64 #s(literal 1/3 binary64) x)
(* 1/3 x)
(*.f64 #s(literal 1/3 binary64) x)
(* 1/3 x)
(*.f64 #s(literal 1/3 binary64) x)
(* 1/3 x)
(*.f64 #s(literal 1/3 binary64) x)
(* 1/3 x)
(*.f64 #s(literal 1/3 binary64) x)
(* 1/3 x)
(*.f64 #s(literal 1/3 binary64) x)
(* 1/3 x)
(*.f64 #s(literal 1/3 binary64) x)
(* 1/3 x)
(*.f64 #s(literal 1/3 binary64) x)
(* 1/3 x)
(*.f64 #s(literal 1/3 binary64) x)
(* 1/3 x)
(*.f64 #s(literal 1/3 binary64) x)
(* 1/3 x)
(*.f64 #s(literal 1/3 binary64) x)
(* -1/45 (pow x 3))
(*.f64 x (*.f64 x (*.f64 x #s(literal -1/45 binary64))))
(* -1/45 (pow x 3))
(*.f64 x (*.f64 x (*.f64 x #s(literal -1/45 binary64))))
(* -1/45 (pow x 3))
(*.f64 x (*.f64 x (*.f64 x #s(literal -1/45 binary64))))
(* -1/45 (pow x 3))
(*.f64 x (*.f64 x (*.f64 x #s(literal -1/45 binary64))))
(* -1/45 (pow x 3))
(*.f64 x (*.f64 x (*.f64 x #s(literal -1/45 binary64))))
(* -1/45 (pow x 3))
(*.f64 x (*.f64 x (*.f64 x #s(literal -1/45 binary64))))
(* -1/45 (pow x 3))
(*.f64 x (*.f64 x (*.f64 x #s(literal -1/45 binary64))))
(* -1/45 (pow x 3))
(*.f64 x (*.f64 x (*.f64 x #s(literal -1/45 binary64))))
(* -1/45 (pow x 3))
(*.f64 x (*.f64 x (*.f64 x #s(literal -1/45 binary64))))
(* -1/45 (pow x 3))
(*.f64 x (*.f64 x (*.f64 x #s(literal -1/45 binary64))))
(* -1/45 (pow x 3))
(*.f64 x (*.f64 x (*.f64 x #s(literal -1/45 binary64))))
(* -1/45 (pow x 3))
(*.f64 x (*.f64 x (*.f64 x #s(literal -1/45 binary64))))
(* -1/45 (pow x 2))
(*.f64 x (*.f64 x #s(literal -1/45 binary64)))
(* -1/45 (pow x 2))
(*.f64 x (*.f64 x #s(literal -1/45 binary64)))
(* -1/45 (pow x 2))
(*.f64 x (*.f64 x #s(literal -1/45 binary64)))
(* -1/45 (pow x 2))
(*.f64 x (*.f64 x #s(literal -1/45 binary64)))
(* -1/45 (pow x 2))
(*.f64 x (*.f64 x #s(literal -1/45 binary64)))
(* -1/45 (pow x 2))
(*.f64 x (*.f64 x #s(literal -1/45 binary64)))
(* -1/45 (pow x 2))
(*.f64 x (*.f64 x #s(literal -1/45 binary64)))
(* -1/45 (pow x 2))
(*.f64 x (*.f64 x #s(literal -1/45 binary64)))
(* -1/45 (pow x 2))
(*.f64 x (*.f64 x #s(literal -1/45 binary64)))
(* -1/45 (pow x 2))
(*.f64 x (*.f64 x #s(literal -1/45 binary64)))
(* -1/45 (pow x 2))
(*.f64 x (*.f64 x #s(literal -1/45 binary64)))
(* -1/45 (pow x 2))
(*.f64 x (*.f64 x #s(literal -1/45 binary64)))
(* 1/3 x)
(*.f64 #s(literal 1/3 binary64) x)
(* x (+ 1/3 (* 1/45 (pow x 2))))
(*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 #s(literal 1/45 binary64) (*.f64 x x))))
(* x (+ 1/3 (* (pow x 2) (+ 1/45 (* 2/945 (pow x 2))))))
(*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x (+.f64 #s(literal 1/45 binary64) (*.f64 (*.f64 x x) #s(literal 2/945 binary64)))))))
(* x (+ 1/3 (* (pow x 2) (+ 1/45 (* 2/945 (pow x 2))))))
(*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x (+.f64 #s(literal 1/45 binary64) (*.f64 (*.f64 x x) #s(literal 2/945 binary64)))))))
(* 2/945 (pow x 5))
(*.f64 (*.f64 x x) (*.f64 x (*.f64 (*.f64 x x) #s(literal 2/945 binary64))))
(* (pow x 5) (+ 2/945 (* 1/45 (/ 1 (pow x 2)))))
(*.f64 x (*.f64 x (*.f64 x (+.f64 #s(literal 1/45 binary64) (*.f64 (*.f64 x x) #s(literal 2/945 binary64))))))
(* (pow x 5) (+ 2/945 (+ (/ 1/3 (pow x 4)) (* 1/45 (/ 1 (pow x 2))))))
(*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x (+.f64 #s(literal 1/45 binary64) (*.f64 (*.f64 x x) #s(literal 2/945 binary64)))))))
(* (pow x 5) (+ 2/945 (+ (/ 1/3 (pow x 4)) (* 1/45 (/ 1 (pow x 2))))))
(*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x (+.f64 #s(literal 1/45 binary64) (*.f64 (*.f64 x x) #s(literal 2/945 binary64)))))))
(* 2/945 (pow x 5))
(*.f64 (*.f64 x x) (*.f64 x (*.f64 (*.f64 x x) #s(literal 2/945 binary64))))
(* (pow x 5) (+ 2/945 (* 1/45 (/ 1 (pow x 2)))))
(*.f64 x (*.f64 x (*.f64 x (+.f64 #s(literal 1/45 binary64) (*.f64 (*.f64 x x) #s(literal 2/945 binary64))))))
(* -1 (* (pow x 5) (- (* -1 (/ (+ 1/45 (* 1/3 (/ 1 (pow x 2)))) (pow x 2))) 2/945)))
(*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x (+.f64 #s(literal 1/45 binary64) (*.f64 (*.f64 x x) #s(literal 2/945 binary64)))))))
(* -1 (* (pow x 5) (- (* -1 (/ (+ 1/45 (* 1/3 (/ 1 (pow x 2)))) (pow x 2))) 2/945)))
(*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x (+.f64 #s(literal 1/45 binary64) (*.f64 (*.f64 x x) #s(literal 2/945 binary64)))))))
(* -1/45 (pow x 3))
(*.f64 x (*.f64 x (*.f64 x #s(literal -1/45 binary64))))
(* (pow x 3) (- (* -2/945 (pow x 2)) 1/45))
(*.f64 x (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x #s(literal -2/945 binary64)))))))
(* (pow x 3) (- (* -2/945 (pow x 2)) 1/45))
(*.f64 x (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x #s(literal -2/945 binary64)))))))
(* (pow x 3) (- (* -2/945 (pow x 2)) 1/45))
(*.f64 x (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x #s(literal -2/945 binary64)))))))
(* -2/945 (pow x 5))
(*.f64 x (*.f64 x (*.f64 x (*.f64 x (*.f64 x #s(literal -2/945 binary64))))))
(* -1 (* (pow x 5) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))))
(*.f64 x (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x #s(literal -2/945 binary64)))))))
(* -1 (* (pow x 5) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))))
(*.f64 x (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x #s(literal -2/945 binary64)))))))
(* -1 (* (pow x 5) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))))
(*.f64 x (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x #s(literal -2/945 binary64)))))))
(* -2/945 (pow x 5))
(*.f64 x (*.f64 x (*.f64 x (*.f64 x (*.f64 x #s(literal -2/945 binary64))))))
(* -1 (* (pow x 5) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))))
(*.f64 x (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x #s(literal -2/945 binary64)))))))
(* -1 (* (pow x 5) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))))
(*.f64 x (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x #s(literal -2/945 binary64)))))))
(* -1 (* (pow x 5) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))))
(*.f64 x (*.f64 x (*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x #s(literal -2/945 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)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(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/45 x)
(*.f64 x #s(literal -1/45 binary64))
(* -1/45 x)
(*.f64 x #s(literal -1/45 binary64))
(* -1/45 x)
(*.f64 x #s(literal -1/45 binary64))
(* -1/45 x)
(*.f64 x #s(literal -1/45 binary64))
(* -1/45 x)
(*.f64 x #s(literal -1/45 binary64))
(* -1/45 x)
(*.f64 x #s(literal -1/45 binary64))
(* -1/45 x)
(*.f64 x #s(literal -1/45 binary64))
(* -1/45 x)
(*.f64 x #s(literal -1/45 binary64))
(* -1/45 x)
(*.f64 x #s(literal -1/45 binary64))
(* -1/45 x)
(*.f64 x #s(literal -1/45 binary64))
(* -1/45 x)
(*.f64 x #s(literal -1/45 binary64))
(* -1/45 x)
(*.f64 x #s(literal -1/45 binary64))
(* 2/945 x)
(*.f64 x #s(literal 2/945 binary64))
(* 2/945 x)
(*.f64 x #s(literal 2/945 binary64))
(* 2/945 x)
(*.f64 x #s(literal 2/945 binary64))
(* 2/945 x)
(*.f64 x #s(literal 2/945 binary64))
(* 2/945 x)
(*.f64 x #s(literal 2/945 binary64))
(* 2/945 x)
(*.f64 x #s(literal 2/945 binary64))
(* 2/945 x)
(*.f64 x #s(literal 2/945 binary64))
(* 2/945 x)
(*.f64 x #s(literal 2/945 binary64))
(* 2/945 x)
(*.f64 x #s(literal 2/945 binary64))
(* 2/945 x)
(*.f64 x #s(literal 2/945 binary64))
(* 2/945 x)
(*.f64 x #s(literal 2/945 binary64))
(* 2/945 x)
(*.f64 x #s(literal 2/945 binary64))
(* -1/45 x)
(*.f64 x #s(literal -1/45 binary64))
(* x (- (* -2/945 (pow x 2)) 1/45))
(*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x #s(literal -2/945 binary64)))))
(* x (- (* -2/945 (pow x 2)) 1/45))
(*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x #s(literal -2/945 binary64)))))
(* x (- (* -2/945 (pow x 2)) 1/45))
(*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x #s(literal -2/945 binary64)))))
(* -2/945 (pow x 3))
(*.f64 x (*.f64 x (*.f64 x #s(literal -2/945 binary64))))
(* -1 (* (pow x 3) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))))
(*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x #s(literal -2/945 binary64)))))
(* -1 (* (pow x 3) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))))
(*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x #s(literal -2/945 binary64)))))
(* -1 (* (pow x 3) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))))
(*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x #s(literal -2/945 binary64)))))
(* -2/945 (pow x 3))
(*.f64 x (*.f64 x (*.f64 x #s(literal -2/945 binary64))))
(* -1 (* (pow x 3) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))))
(*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x #s(literal -2/945 binary64)))))
(* -1 (* (pow x 3) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))))
(*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x #s(literal -2/945 binary64)))))
(* -1 (* (pow x 3) (+ 2/945 (* 1/45 (/ 1 (pow x 2))))))
(*.f64 x (+.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x #s(literal -2/945 binary64)))))
(* 2/945 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 2/945 binary64))
(* 2/945 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 2/945 binary64))
(* 2/945 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 2/945 binary64))
(* 2/945 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 2/945 binary64))
(* 2/945 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 2/945 binary64))
(* 2/945 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 2/945 binary64))
(* 2/945 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 2/945 binary64))
(* 2/945 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 2/945 binary64))
(* 2/945 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 2/945 binary64))
(* 2/945 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 2/945 binary64))
(* 2/945 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 2/945 binary64))
(* 2/945 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 2/945 binary64))

eval64.0ms (0.5%)

Compiler

Compiled 12704 to 843 computations (93.4% saved)

prune51.0ms (0.4%)

Pruning

6 alts after pruning (1 fresh and 5 done)

PrunedKeptTotal
New5701571
Fresh000
Picked022
Done033
Total5706576
Accuracy
99.6%
Counts
576 → 6
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.5%
(-.f64 (*.f64 #s(literal 1/3 binary64) x) (*.f64 (*.f64 x x) (*.f64 x (-.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64)))))))
99.5%
(-.f64 (*.f64 #s(literal 1/3 binary64) x) (*.f64 x (*.f64 x (*.f64 x #s(literal -1/45 binary64)))))
99.5%
(+.f64 (+.f64 (*.f64 #s(literal 1/3 binary64) x) (*.f64 (*.f64 x (*.f64 x x)) #s(literal 2/45 binary64))) (*.f64 x (*.f64 #s(literal -1/45 binary64) (*.f64 x x))))
99.5%
(*.f64 x (-.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))))
99.5%
(*.f64 x (-.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal -1/45 binary64))))
98.6%
(*.f64 #s(literal 1/3 binary64) x)
Compiler

Compiled 80 to 52 computations (35% saved)

simplify12.0ms (0.1%)

Algorithm
egg-herbie
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
cost-diff0
(*.f64 (*.f64 x (*.f64 x x)) #s(literal 2/45 binary64))
cost-diff0
(*.f64 #s(literal 1/3 binary64) x)
cost-diff128
(+.f64 (*.f64 #s(literal 1/3 binary64) x) (*.f64 (*.f64 x (*.f64 x x)) #s(literal 2/45 binary64)))
cost-diff512
(+.f64 (+.f64 (*.f64 #s(literal 1/3 binary64) x) (*.f64 (*.f64 x (*.f64 x x)) #s(literal 2/45 binary64))) (*.f64 x (*.f64 #s(literal -1/45 binary64) (*.f64 x x))))
Rules
176×fma-define
168×fma-lowering-fma.f32
168×fma-lowering-fma.f64
94×*-lowering-*.f32
94×*-lowering-*.f64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01250
13247
27641
316140
421140
522740
022740
Stop Event
iter limit
saturated
Calls
Call 1
Inputs
(+ (+ (* 1/3 x) (* (* x (* x x)) 2/45)) (* x (* -1/45 (* x x))))
(+ (* 1/3 x) (* (* x (* x x)) 2/45))
(* 1/3 x)
1/3
x
(* (* x (* x x)) 2/45)
(* x (* x x))
(* x x)
2/45
(* x (* -1/45 (* x x)))
(* -1/45 (* x x))
-1/45
Outputs
(+ (+ (* 1/3 x) (* (* x (* x x)) 2/45)) (* x (* -1/45 (* x x))))
(*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal 1/45 binary64))))
(+ (* 1/3 x) (* (* x (* x x)) 2/45))
(*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal 2/45 binary64))))
(* 1/3 x)
(*.f64 #s(literal 1/3 binary64) x)
1/3
#s(literal 1/3 binary64)
x
(* (* x (* x x)) 2/45)
(*.f64 x (*.f64 (*.f64 x x) #s(literal 2/45 binary64)))
(* x (* x x))
(*.f64 x (*.f64 x x))
(* x x)
(*.f64 x x)
2/45
#s(literal 2/45 binary64)
(* x (* -1/45 (* x x)))
(*.f64 x (*.f64 (*.f64 x x) #s(literal -1/45 binary64)))
(* -1/45 (* x x))
(*.f64 (*.f64 x x) #s(literal -1/45 binary64))
-1/45
#s(literal -1/45 binary64)

localize76.0ms (0.6%)

Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
accuracy99.8%
(*.f64 x (*.f64 #s(literal -1/45 binary64) (*.f64 x x)))
accuracy99.8%
(*.f64 (*.f64 x (*.f64 x x)) #s(literal 2/45 binary64))
accuracy99.7%
(*.f64 #s(literal -1/45 binary64) (*.f64 x x))
accuracy99.5%
(*.f64 #s(literal 1/3 binary64) x)
Results
56.0ms256×0valid
Compiler

Compiled 66 to 13 computations (80.3% saved)

Precisions
Click to see histograms. Total time spent on operations: 33.0ms
...c/correct-round.rkt:119:19: 18.0ms (55.1% of total)
ival-mult: 12.0ms (36.7% of total)
ival-add: 2.0ms (6.1% of total)
const: 0.0ms (0% of total)
backward-pass: 0.0ms (0% of total)

series2.0ms (0%)

Counts
6 → 72
Calls
Call 1
Inputs
#<alt (+ (+ (* 1/3 x) (* (* x (* x x)) 2/45)) (* x (* -1/45 (* x x))))>
#<alt (+ (* 1/3 x) (* (* x (* x x)) 2/45))>
#<alt (* 1/3 x)>
#<alt (* (* x (* x x)) 2/45)>
#<alt (* -1/45 (* x x))>
#<alt (* x (* -1/45 (* x x)))>
Outputs
#<alt (* 1/3 x)>
#<alt (* x (+ 1/3 (* 1/45 (pow x 2))))>
#<alt (* x (+ 1/3 (* 1/45 (pow x 2))))>
#<alt (* x (+ 1/3 (* 1/45 (pow x 2))))>
#<alt (* 1/45 (pow x 3))>
#<alt (* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))>
#<alt (* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))>
#<alt (* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))>
#<alt (* 1/45 (pow x 3))>
#<alt (* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))>
#<alt (* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))>
#<alt (* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))>
#<alt (* 1/3 x)>
#<alt (* x (+ 1/3 (* 2/45 (pow x 2))))>
#<alt (* x (+ 1/3 (* 2/45 (pow x 2))))>
#<alt (* x (+ 1/3 (* 2/45 (pow x 2))))>
#<alt (* 2/45 (pow x 3))>
#<alt (* (pow x 3) (+ 2/45 (* 1/3 (/ 1 (pow x 2)))))>
#<alt (* (pow x 3) (+ 2/45 (* 1/3 (/ 1 (pow x 2)))))>
#<alt (* (pow x 3) (+ 2/45 (* 1/3 (/ 1 (pow x 2)))))>
#<alt (* 2/45 (pow x 3))>
#<alt (* (pow x 3) (+ 2/45 (* 1/3 (/ 1 (pow x 2)))))>
#<alt (* (pow x 3) (+ 2/45 (* 1/3 (/ 1 (pow x 2)))))>
#<alt (* (pow x 3) (+ 2/45 (* 1/3 (/ 1 (pow x 2)))))>
#<alt (* 1/3 x)>
#<alt (* 1/3 x)>
#<alt (* 1/3 x)>
#<alt (* 1/3 x)>
#<alt (* 1/3 x)>
#<alt (* 1/3 x)>
#<alt (* 1/3 x)>
#<alt (* 1/3 x)>
#<alt (* 1/3 x)>
#<alt (* 1/3 x)>
#<alt (* 1/3 x)>
#<alt (* 1/3 x)>
#<alt (* 2/45 (pow x 3))>
#<alt (* 2/45 (pow x 3))>
#<alt (* 2/45 (pow x 3))>
#<alt (* 2/45 (pow x 3))>
#<alt (* 2/45 (pow x 3))>
#<alt (* 2/45 (pow x 3))>
#<alt (* 2/45 (pow x 3))>
#<alt (* 2/45 (pow x 3))>
#<alt (* 2/45 (pow x 3))>
#<alt (* 2/45 (pow x 3))>
#<alt (* 2/45 (pow x 3))>
#<alt (* 2/45 (pow x 3))>
#<alt (* -1/45 (pow x 2))>
#<alt (* -1/45 (pow x 2))>
#<alt (* -1/45 (pow x 2))>
#<alt (* -1/45 (pow x 2))>
#<alt (* -1/45 (pow x 2))>
#<alt (* -1/45 (pow x 2))>
#<alt (* -1/45 (pow x 2))>
#<alt (* -1/45 (pow x 2))>
#<alt (* -1/45 (pow x 2))>
#<alt (* -1/45 (pow x 2))>
#<alt (* -1/45 (pow x 2))>
#<alt (* -1/45 (pow x 2))>
#<alt (* -1/45 (pow x 3))>
#<alt (* -1/45 (pow x 3))>
#<alt (* -1/45 (pow x 3))>
#<alt (* -1/45 (pow x 3))>
#<alt (* -1/45 (pow x 3))>
#<alt (* -1/45 (pow x 3))>
#<alt (* -1/45 (pow x 3))>
#<alt (* -1/45 (pow x 3))>
#<alt (* -1/45 (pow x 3))>
#<alt (* -1/45 (pow x 3))>
#<alt (* -1/45 (pow x 3))>
#<alt (* -1/45 (pow x 3))>
Calls

18 calls:

TimeVariablePointExpression
0.0ms
x
@-inf
(* (* x (* x x)) 2/45)
0.0ms
x
@inf
(* (* x (* x x)) 2/45)
0.0ms
x
@0
(+ (+ (* 1/3 x) (* (* x (* x x)) 2/45)) (* x (* -1/45 (* x x))))
0.0ms
x
@inf
(+ (+ (* 1/3 x) (* (* x (* x x)) 2/45)) (* x (* -1/45 (* x x))))
0.0ms
x
@0
(* (* x (* x x)) 2/45)

rewrite27.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
180×fma-define
172×fma-lowering-fma.f32
172×fma-lowering-fma.f64
102×*-lowering-*.f32
102×*-lowering-*.f64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01241
13438
28532
317931
424331
527431
628731
028731
Stop Event
iter limit
saturated
Counts
6 → 62
Calls
Call 1
Inputs
(+ (+ (* 1/3 x) (* (* x (* x x)) 2/45)) (* x (* -1/45 (* x x))))
(+ (* 1/3 x) (* (* x (* x x)) 2/45))
(* 1/3 x)
(* (* x (* x x)) 2/45)
(* -1/45 (* x x))
(* x (* -1/45 (* x x)))
Outputs
(+.f64 (*.f64 #s(literal 1/3 binary64) x) (*.f64 (*.f64 x x) (*.f64 x #s(literal 1/45 binary64))))
(+.f64 (*.f64 x (*.f64 x (*.f64 x #s(literal 2/45 binary64)))) (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal -1/45 binary64)))))
(+.f64 (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 2/45 binary64))))) (*.f64 x (*.f64 (*.f64 x x) #s(literal -1/45 binary64))))
(+.f64 (*.f64 x (*.f64 (*.f64 x x) #s(literal -1/45 binary64))) (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 2/45 binary64))))))
(+.f64 (*.f64 (*.f64 x x) (*.f64 x #s(literal 1/45 binary64))) (*.f64 #s(literal 1/3 binary64) x))
(+.f64 (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal -1/45 binary64)))) (*.f64 x (*.f64 x (*.f64 x #s(literal 2/45 binary64)))))
(fma.f64 #s(literal 1/3 binary64) x (*.f64 (*.f64 x x) (*.f64 x #s(literal 1/45 binary64))))
(fma.f64 x #s(literal 1/3 binary64) (*.f64 (*.f64 x x) (*.f64 x #s(literal 1/45 binary64))))
(fma.f64 x (*.f64 (*.f64 x x) #s(literal -1/45 binary64)) (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 2/45 binary64))))))
(fma.f64 x (*.f64 x (*.f64 x #s(literal 2/45 binary64))) (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal -1/45 binary64)))))
(fma.f64 x (*.f64 x (*.f64 x #s(literal 1/45 binary64))) (*.f64 #s(literal 1/3 binary64) x))
(fma.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 2/45 binary64)))) (*.f64 x (*.f64 (*.f64 x x) #s(literal -1/45 binary64))))
(fma.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal -1/45 binary64))) (*.f64 x (*.f64 x (*.f64 x #s(literal 2/45 binary64)))))
(fma.f64 (*.f64 x x) (*.f64 x #s(literal -1/45 binary64)) (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 2/45 binary64))))))
(fma.f64 (*.f64 x x) (*.f64 x #s(literal 2/45 binary64)) (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal -1/45 binary64)))))
(fma.f64 (*.f64 x x) (*.f64 x #s(literal 1/45 binary64)) (*.f64 #s(literal 1/3 binary64) x))
(fma.f64 (*.f64 x (*.f64 x x)) #s(literal 2/45 binary64) (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal -1/45 binary64)))))
(fma.f64 (*.f64 x (*.f64 x x)) #s(literal -1/45 binary64) (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 2/45 binary64))))))
(fma.f64 (*.f64 x (*.f64 x x)) #s(literal 1/45 binary64) (*.f64 #s(literal 1/3 binary64) x))
(fma.f64 #s(literal 2/45 binary64) (*.f64 x (*.f64 x x)) (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal -1/45 binary64)))))
(fma.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x x)) (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 2/45 binary64))))))
(fma.f64 (*.f64 (*.f64 x x) #s(literal -1/45 binary64)) x (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 2/45 binary64))))))
(fma.f64 (*.f64 x #s(literal -1/45 binary64)) (*.f64 x x) (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 2/45 binary64))))))
(fma.f64 (*.f64 x (*.f64 x #s(literal 2/45 binary64))) x (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal -1/45 binary64)))))
(fma.f64 (*.f64 x (*.f64 x #s(literal 1/45 binary64))) x (*.f64 #s(literal 1/3 binary64) x))
(fma.f64 (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 2/45 binary64)))) x (*.f64 x (*.f64 (*.f64 x x) #s(literal -1/45 binary64))))
(fma.f64 (*.f64 x #s(literal 2/45 binary64)) (*.f64 x x) (*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal -1/45 binary64)))))
(fma.f64 (*.f64 x #s(literal 1/45 binary64)) (*.f64 x x) (*.f64 #s(literal 1/3 binary64) x))
(fma.f64 #s(literal 1/45 binary64) (*.f64 x (*.f64 x x)) (*.f64 #s(literal 1/3 binary64) x))
(fma.f64 (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal -1/45 binary64))) x (*.f64 x (*.f64 x (*.f64 x #s(literal 2/45 binary64)))))
(*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 1/45 binary64)))))
(*.f64 (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 1/45 binary64)))) x)
(+.f64 (*.f64 #s(literal 1/3 binary64) x) (*.f64 x (*.f64 x (*.f64 x #s(literal 2/45 binary64)))))
(+.f64 (*.f64 x (*.f64 x (*.f64 x #s(literal 2/45 binary64)))) (*.f64 #s(literal 1/3 binary64) x))
(fma.f64 #s(literal 1/3 binary64) x (*.f64 x (*.f64 x (*.f64 x #s(literal 2/45 binary64)))))
(fma.f64 x #s(literal 1/3 binary64) (*.f64 x (*.f64 x (*.f64 x #s(literal 2/45 binary64)))))
(fma.f64 x (*.f64 x (*.f64 x #s(literal 2/45 binary64))) (*.f64 #s(literal 1/3 binary64) x))
(fma.f64 (*.f64 x x) (*.f64 x #s(literal 2/45 binary64)) (*.f64 #s(literal 1/3 binary64) x))
(fma.f64 (*.f64 x (*.f64 x x)) #s(literal 2/45 binary64) (*.f64 #s(literal 1/3 binary64) x))
(fma.f64 #s(literal 2/45 binary64) (*.f64 x (*.f64 x x)) (*.f64 #s(literal 1/3 binary64) x))
(fma.f64 (*.f64 x (*.f64 x #s(literal 2/45 binary64))) x (*.f64 #s(literal 1/3 binary64) x))
(fma.f64 (*.f64 x #s(literal 2/45 binary64)) (*.f64 x x) (*.f64 #s(literal 1/3 binary64) x))
(*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 2/45 binary64)))))
(*.f64 (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 2/45 binary64)))) x)
(*.f64 #s(literal 1/3 binary64) x)
(*.f64 x #s(literal 1/3 binary64))
(*.f64 x (*.f64 x (*.f64 x #s(literal 2/45 binary64))))
(*.f64 (*.f64 x x) (*.f64 x #s(literal 2/45 binary64)))
(*.f64 (*.f64 x (*.f64 x x)) #s(literal 2/45 binary64))
(*.f64 #s(literal 2/45 binary64) (*.f64 x (*.f64 x x)))
(*.f64 (*.f64 x (*.f64 x #s(literal 2/45 binary64))) x)
(*.f64 (*.f64 x #s(literal 2/45 binary64)) (*.f64 x x))
(*.f64 x (*.f64 x #s(literal -1/45 binary64)))
(*.f64 (*.f64 x x) #s(literal -1/45 binary64))
(*.f64 #s(literal -1/45 binary64) (*.f64 x x))
(*.f64 (*.f64 x #s(literal -1/45 binary64)) x)
(*.f64 x (*.f64 (*.f64 x x) #s(literal -1/45 binary64)))
(*.f64 (*.f64 x x) (*.f64 x #s(literal -1/45 binary64)))
(*.f64 (*.f64 x (*.f64 x x)) #s(literal -1/45 binary64))
(*.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x x)))
(*.f64 (*.f64 (*.f64 x x) #s(literal -1/45 binary64)) x)
(*.f64 (*.f64 x #s(literal -1/45 binary64)) (*.f64 x x))

simplify315.0ms (2.5%)

Algorithm
egg-herbie
Rules
5576×*-lowering-*.f32
5576×*-lowering-*.f64
3538×cube-prod
2378×/-lowering-/.f32
2378×/-lowering-/.f64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
027404
169356
2174356
3377356
4595356
51147356
62046356
72330356
82778356
93096356
103495356
113993356
124574356
134928356
145135356
155298356
165470356
175650356
186398356
197578356
207990356
08074356
Stop Event
iter limit
node limit
Counts
72 → 72
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/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 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/3 x)
(* x (+ 1/3 (* 2/45 (pow x 2))))
(* x (+ 1/3 (* 2/45 (pow x 2))))
(* x (+ 1/3 (* 2/45 (pow x 2))))
(* 2/45 (pow x 3))
(* (pow x 3) (+ 2/45 (* 1/3 (/ 1 (pow x 2)))))
(* (pow x 3) (+ 2/45 (* 1/3 (/ 1 (pow x 2)))))
(* (pow x 3) (+ 2/45 (* 1/3 (/ 1 (pow x 2)))))
(* 2/45 (pow x 3))
(* (pow x 3) (+ 2/45 (* 1/3 (/ 1 (pow x 2)))))
(* (pow x 3) (+ 2/45 (* 1/3 (/ 1 (pow x 2)))))
(* (pow x 3) (+ 2/45 (* 1/3 (/ 1 (pow x 2)))))
(* 1/3 x)
(* 1/3 x)
(* 1/3 x)
(* 1/3 x)
(* 1/3 x)
(* 1/3 x)
(* 1/3 x)
(* 1/3 x)
(* 1/3 x)
(* 1/3 x)
(* 1/3 x)
(* 1/3 x)
(* 2/45 (pow x 3))
(* 2/45 (pow x 3))
(* 2/45 (pow x 3))
(* 2/45 (pow x 3))
(* 2/45 (pow x 3))
(* 2/45 (pow x 3))
(* 2/45 (pow x 3))
(* 2/45 (pow x 3))
(* 2/45 (pow x 3))
(* 2/45 (pow x 3))
(* 2/45 (pow x 3))
(* 2/45 (pow x 3))
(* -1/45 (pow x 2))
(* -1/45 (pow x 2))
(* -1/45 (pow x 2))
(* -1/45 (pow x 2))
(* -1/45 (pow x 2))
(* -1/45 (pow x 2))
(* -1/45 (pow x 2))
(* -1/45 (pow x 2))
(* -1/45 (pow x 2))
(* -1/45 (pow x 2))
(* -1/45 (pow x 2))
(* -1/45 (pow x 2))
(* -1/45 (pow x 3))
(* -1/45 (pow x 3))
(* -1/45 (pow x 3))
(* -1/45 (pow x 3))
(* -1/45 (pow x 3))
(* -1/45 (pow x 3))
(* -1/45 (pow x 3))
(* -1/45 (pow x 3))
(* -1/45 (pow x 3))
(* -1/45 (pow x 3))
(* -1/45 (pow x 3))
(* -1/45 (pow x 3))
Outputs
(* 1/3 x)
(*.f64 #s(literal 1/3 binary64) x)
(* x (+ 1/3 (* 1/45 (pow x 2))))
(*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 1/45 binary64)))))
(* x (+ 1/3 (* 1/45 (pow x 2))))
(*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 1/45 binary64)))))
(* x (+ 1/3 (* 1/45 (pow x 2))))
(*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 1/45 binary64)))))
(* 1/45 (pow x 3))
(*.f64 x (*.f64 x (*.f64 x #s(literal 1/45 binary64))))
(* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 1/45 binary64)))))
(* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 1/45 binary64)))))
(* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 1/45 binary64)))))
(* 1/45 (pow x 3))
(*.f64 x (*.f64 x (*.f64 x #s(literal 1/45 binary64))))
(* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 1/45 binary64)))))
(* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 1/45 binary64)))))
(* (pow x 3) (+ 1/45 (* 1/3 (/ 1 (pow x 2)))))
(*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 1/45 binary64)))))
(* 1/3 x)
(*.f64 #s(literal 1/3 binary64) x)
(* x (+ 1/3 (* 2/45 (pow x 2))))
(*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 2/45 binary64)))))
(* x (+ 1/3 (* 2/45 (pow x 2))))
(*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 2/45 binary64)))))
(* x (+ 1/3 (* 2/45 (pow x 2))))
(*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 2/45 binary64)))))
(* 2/45 (pow x 3))
(*.f64 x (*.f64 x (*.f64 x #s(literal 2/45 binary64))))
(* (pow x 3) (+ 2/45 (* 1/3 (/ 1 (pow x 2)))))
(*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 2/45 binary64)))))
(* (pow x 3) (+ 2/45 (* 1/3 (/ 1 (pow x 2)))))
(*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 2/45 binary64)))))
(* (pow x 3) (+ 2/45 (* 1/3 (/ 1 (pow x 2)))))
(*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 2/45 binary64)))))
(* 2/45 (pow x 3))
(*.f64 x (*.f64 x (*.f64 x #s(literal 2/45 binary64))))
(* (pow x 3) (+ 2/45 (* 1/3 (/ 1 (pow x 2)))))
(*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 2/45 binary64)))))
(* (pow x 3) (+ 2/45 (* 1/3 (/ 1 (pow x 2)))))
(*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 2/45 binary64)))))
(* (pow x 3) (+ 2/45 (* 1/3 (/ 1 (pow x 2)))))
(*.f64 x (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 2/45 binary64)))))
(* 1/3 x)
(*.f64 #s(literal 1/3 binary64) x)
(* 1/3 x)
(*.f64 #s(literal 1/3 binary64) x)
(* 1/3 x)
(*.f64 #s(literal 1/3 binary64) x)
(* 1/3 x)
(*.f64 #s(literal 1/3 binary64) x)
(* 1/3 x)
(*.f64 #s(literal 1/3 binary64) x)
(* 1/3 x)
(*.f64 #s(literal 1/3 binary64) x)
(* 1/3 x)
(*.f64 #s(literal 1/3 binary64) x)
(* 1/3 x)
(*.f64 #s(literal 1/3 binary64) x)
(* 1/3 x)
(*.f64 #s(literal 1/3 binary64) x)
(* 1/3 x)
(*.f64 #s(literal 1/3 binary64) x)
(* 1/3 x)
(*.f64 #s(literal 1/3 binary64) x)
(* 1/3 x)
(*.f64 #s(literal 1/3 binary64) x)
(* 2/45 (pow x 3))
(*.f64 x (*.f64 x (*.f64 x #s(literal 2/45 binary64))))
(* 2/45 (pow x 3))
(*.f64 x (*.f64 x (*.f64 x #s(literal 2/45 binary64))))
(* 2/45 (pow x 3))
(*.f64 x (*.f64 x (*.f64 x #s(literal 2/45 binary64))))
(* 2/45 (pow x 3))
(*.f64 x (*.f64 x (*.f64 x #s(literal 2/45 binary64))))
(* 2/45 (pow x 3))
(*.f64 x (*.f64 x (*.f64 x #s(literal 2/45 binary64))))
(* 2/45 (pow x 3))
(*.f64 x (*.f64 x (*.f64 x #s(literal 2/45 binary64))))
(* 2/45 (pow x 3))
(*.f64 x (*.f64 x (*.f64 x #s(literal 2/45 binary64))))
(* 2/45 (pow x 3))
(*.f64 x (*.f64 x (*.f64 x #s(literal 2/45 binary64))))
(* 2/45 (pow x 3))
(*.f64 x (*.f64 x (*.f64 x #s(literal 2/45 binary64))))
(* 2/45 (pow x 3))
(*.f64 x (*.f64 x (*.f64 x #s(literal 2/45 binary64))))
(* 2/45 (pow x 3))
(*.f64 x (*.f64 x (*.f64 x #s(literal 2/45 binary64))))
(* 2/45 (pow x 3))
(*.f64 x (*.f64 x (*.f64 x #s(literal 2/45 binary64))))
(* -1/45 (pow x 2))
(*.f64 x (*.f64 x #s(literal -1/45 binary64)))
(* -1/45 (pow x 2))
(*.f64 x (*.f64 x #s(literal -1/45 binary64)))
(* -1/45 (pow x 2))
(*.f64 x (*.f64 x #s(literal -1/45 binary64)))
(* -1/45 (pow x 2))
(*.f64 x (*.f64 x #s(literal -1/45 binary64)))
(* -1/45 (pow x 2))
(*.f64 x (*.f64 x #s(literal -1/45 binary64)))
(* -1/45 (pow x 2))
(*.f64 x (*.f64 x #s(literal -1/45 binary64)))
(* -1/45 (pow x 2))
(*.f64 x (*.f64 x #s(literal -1/45 binary64)))
(* -1/45 (pow x 2))
(*.f64 x (*.f64 x #s(literal -1/45 binary64)))
(* -1/45 (pow x 2))
(*.f64 x (*.f64 x #s(literal -1/45 binary64)))
(* -1/45 (pow x 2))
(*.f64 x (*.f64 x #s(literal -1/45 binary64)))
(* -1/45 (pow x 2))
(*.f64 x (*.f64 x #s(literal -1/45 binary64)))
(* -1/45 (pow x 2))
(*.f64 x (*.f64 x #s(literal -1/45 binary64)))
(* -1/45 (pow x 3))
(*.f64 x (*.f64 x (*.f64 x #s(literal -1/45 binary64))))
(* -1/45 (pow x 3))
(*.f64 x (*.f64 x (*.f64 x #s(literal -1/45 binary64))))
(* -1/45 (pow x 3))
(*.f64 x (*.f64 x (*.f64 x #s(literal -1/45 binary64))))
(* -1/45 (pow x 3))
(*.f64 x (*.f64 x (*.f64 x #s(literal -1/45 binary64))))
(* -1/45 (pow x 3))
(*.f64 x (*.f64 x (*.f64 x #s(literal -1/45 binary64))))
(* -1/45 (pow x 3))
(*.f64 x (*.f64 x (*.f64 x #s(literal -1/45 binary64))))
(* -1/45 (pow x 3))
(*.f64 x (*.f64 x (*.f64 x #s(literal -1/45 binary64))))
(* -1/45 (pow x 3))
(*.f64 x (*.f64 x (*.f64 x #s(literal -1/45 binary64))))
(* -1/45 (pow x 3))
(*.f64 x (*.f64 x (*.f64 x #s(literal -1/45 binary64))))
(* -1/45 (pow x 3))
(*.f64 x (*.f64 x (*.f64 x #s(literal -1/45 binary64))))
(* -1/45 (pow x 3))
(*.f64 x (*.f64 x (*.f64 x #s(literal -1/45 binary64))))
(* -1/45 (pow x 3))
(*.f64 x (*.f64 x (*.f64 x #s(literal -1/45 binary64))))

eval14.0ms (0.1%)

Compiler

Compiled 2207 to 117 computations (94.7% saved)

prune12.0ms (0.1%)

Pruning

7 alts after pruning (2 fresh and 5 done)

PrunedKeptTotal
New1322134
Fresh000
Picked101
Done055
Total1337140
Accuracy
99.6%
Counts
140 → 7
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.5%
(fma.f64 (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal -1/45 binary64))) x (*.f64 x (*.f64 x (*.f64 x #s(literal 2/45 binary64)))))
99.5%
(-.f64 (*.f64 #s(literal 1/3 binary64) x) (*.f64 (*.f64 x x) (*.f64 x (-.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64)))))))
99.5%
(-.f64 (*.f64 #s(literal 1/3 binary64) x) (*.f64 x (*.f64 x (*.f64 x #s(literal -1/45 binary64)))))
99.5%
(+.f64 (*.f64 (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 2/45 binary64)))) x) (*.f64 x (*.f64 #s(literal -1/45 binary64) (*.f64 x x))))
99.5%
(*.f64 x (-.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))))
99.5%
(*.f64 x (-.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal -1/45 binary64))))
98.6%
(*.f64 #s(literal 1/3 binary64) x)
Compiler

Compiled 211 to 108 computations (48.8% saved)

regimes6.0ms (0.1%)

Counts
9 → 1
Calls
Call 1
Inputs
(*.f64 #s(literal 1/3 binary64) x)
(*.f64 x (-.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal -1/45 binary64))))
(-.f64 (*.f64 #s(literal 1/3 binary64) x) (*.f64 x (*.f64 x (*.f64 x #s(literal -1/45 binary64)))))
(*.f64 x (-.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))))
(+.f64 (*.f64 (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 2/45 binary64)))) x) (*.f64 x (*.f64 #s(literal -1/45 binary64) (*.f64 x x))))
(-.f64 (*.f64 #s(literal 1/3 binary64) x) (*.f64 (*.f64 x x) (*.f64 x (-.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64)))))))
(+.f64 (+.f64 (*.f64 #s(literal 1/3 binary64) x) (*.f64 (*.f64 x (*.f64 x x)) #s(literal 2/45 binary64))) (*.f64 x (*.f64 #s(literal -1/45 binary64) (*.f64 x x))))
(-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal 1 binary64) (tan.f64 x)))
(fma.f64 (+.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal -1/45 binary64))) x (*.f64 x (*.f64 x (*.f64 x #s(literal 2/45 binary64)))))
Outputs
(-.f64 (*.f64 #s(literal 1/3 binary64) x) (*.f64 (*.f64 x x) (*.f64 x (-.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64)))))))
Calls

2 calls:

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

Compiled 11 to 7 computations (36.4% saved)

regimes2.0ms (0%)

Counts
5 → 1
Calls
Call 1
Inputs
(*.f64 #s(literal 1/3 binary64) x)
(*.f64 x (-.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal -1/45 binary64))))
(-.f64 (*.f64 #s(literal 1/3 binary64) x) (*.f64 x (*.f64 x (*.f64 x #s(literal -1/45 binary64)))))
(*.f64 x (-.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))))
(+.f64 (*.f64 (+.f64 #s(literal 1/3 binary64) (*.f64 x (*.f64 x #s(literal 2/45 binary64)))) x) (*.f64 x (*.f64 #s(literal -1/45 binary64) (*.f64 x x))))
Outputs
(*.f64 x (-.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))))
Calls

1 calls:

2.0ms
x
Results
AccuracySegmentsBranch
99.5%1x
Compiler

Compiled 2 to 1 computations (50% saved)

regimes2.0ms (0%)

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

1 calls:

2.0ms
x
Results
AccuracySegmentsBranch
99.5%1x
Compiler

Compiled 2 to 1 computations (50% saved)

regimes5.0ms (0%)

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

1 calls:

4.0ms
x
Results
AccuracySegmentsBranch
99.5%1x
Compiler

Compiled 2 to 1 computations (50% saved)

regimes1.0ms (0%)

Accuracy

Total 0.0b remaining (0%)

Threshold costs 0b (0%)

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

1 calls:

1.0ms
x
Results
AccuracySegmentsBranch
98.6%1x
Compiler

Compiled 2 to 1 computations (50% saved)

simplify38.0ms (0.3%)

Algorithm
egg-herbie
Rules
348×unsub-neg_binary64
270×distribute-lft-neg-in_binary64
216×neg-mul-1_binary64
136×distribute-rgt-neg-in_binary64
118×neg-sub0_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02555
16155
210955
315155
419055
522755
627355
734655
854955
982855
1090955
1195655
1299755
13100455
14102055
Stop Event
saturated
Calls
Call 1
Inputs
(-.f64 (*.f64 #s(literal 1/3 binary64) x) (*.f64 (*.f64 x x) (*.f64 x (-.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64)))))))
(*.f64 x (-.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))))
(-.f64 (*.f64 #s(literal 1/3 binary64) x) (*.f64 x (*.f64 x (*.f64 x #s(literal -1/45 binary64)))))
(*.f64 x (-.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal -1/45 binary64))))
(*.f64 #s(literal 1/3 binary64) x)
Outputs
(-.f64 (*.f64 #s(literal 1/3 binary64) x) (*.f64 (*.f64 x x) (*.f64 x (-.f64 #s(literal -1/45 binary64) (*.f64 x (*.f64 x #s(literal 2/945 binary64)))))))
(+.f64 (*.f64 #s(literal 1/3 binary64) x) (*.f64 (*.f64 x x) (*.f64 x (-.f64 (*.f64 x (*.f64 x #s(literal 2/945 binary64))) #s(literal -1/45 binary64)))))
(*.f64 x (-.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) (+.f64 #s(literal -1/45 binary64) (*.f64 (*.f64 x x) #s(literal -2/945 binary64))))))
(-.f64 (*.f64 #s(literal 1/3 binary64) x) (*.f64 x (*.f64 x (*.f64 x #s(literal -1/45 binary64)))))
(*.f64 x (-.f64 #s(literal 1/3 binary64) (*.f64 (*.f64 x x) #s(literal -1/45 binary64))))
(*.f64 #s(literal 1/3 binary64) x)

soundness1.3s (10.4%)

Rules
2512×*-lowering-*.f32
2512×*-lowering-*.f64
2470×sum3-define
2100×fnmadd-define
1924×+-lowering-+.f64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01466
14462
213658
343658
4167358
5562758
0859058
067302
1186269
2560266
31806266
42709266
54422266
66045266
76589266
08077266
Stop Event
fuel
iter limit
node limit
iter limit
node limit
Compiler

Compiled 95 to 53 computations (44.2% saved)

preprocess55.0ms (0.4%)

Remove

(negabs x)

Compiler

Compiled 252 to 144 computations (42.9% saved)

end0.0ms (0%)

Profiling

Loading profile data...