Details

Time bar (total: 5.1s)

analyze172.0ms (3.4%)

Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%99.9%0.1%0%0%0%0
0%0%99.9%0.1%0%0%0%1
0%0%99.9%0.1%0%0%0%2
0%0%99.9%0.1%0%0%0%3
0%0%99.9%0.1%0%0%0%4
0%0%99.9%0.1%0%0%0%5
6.3%6.2%93.7%0.1%0%0%0%6
37.5%37.5%62.4%0.1%0%0%0%7
37.5%37.5%62.4%0.1%0%0%0%8
49.1%43.7%45.3%0.1%10.9%0%0%9
49.6%43.7%44.5%0.1%11.7%0%0%10
56.9%46.8%35.5%0.1%17.6%0%0%11
57.3%46.8%34.9%0.1%18.1%0%0%12
Compiler

Compiled 10 to 7 computations (30% saved)

sample3.2s (62.7%)

Results
900.0ms2109×body1024valid
825.0ms1969×body1024infinite
669.0ms5143×body256valid
288.0ms2070×body256infinite
239.0ms995×body512valid
233.0ms1016×body512infinite
7.0msbody2048valid
Bogosity

preprocess50.0ms (1%)

Algorithm
egg-herbie
Rules
740×fma-neg_binary64
620×fma-def_binary64
554×div-sub_binary64
485×associate-*l/_binary64
400×associate-/r*_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01122
12822
26322
314422
432922
583922
6256622
7674422
022
Stop Event
saturated
node limit
Calls
Call 1
Inputs
0
1
Outputs
0
1
Call 2
Inputs
(*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y))
(*.f64 (sin.f64 y) (/.f64 (sinh.f64 x) x))
Outputs
(*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y))
(/.f64 (*.f64 (sin.f64 x) (sinh.f64 y)) y)
(*.f64 (sinh.f64 y) (/.f64 (sin.f64 x) y))
(/.f64 (sinh.f64 y) (/.f64 y (sin.f64 x)))
(*.f64 (sin.f64 y) (/.f64 (sinh.f64 x) x))
Compiler

Compiled 11 to 8 computations (27.3% saved)

simplify38.0ms (0.8%)

Algorithm
egg-herbie
Rules
804×fma-neg_binary64
491×times-frac_binary64
419×associate-/l*_binary64
357×div-sub_binary64
352×cancel-sign-sub-inv_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0711
11611
23511
37711
417111
542811
6129511
7509211
Stop Event
node limit
Counts
1 → 3
Calls
Call 1
Inputs
(*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y))
Outputs
(*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y))
(/.f64 (sin.f64 x) (/.f64 y (sinh.f64 y)))
(*.f64 (sinh.f64 y) (/.f64 (sin.f64 x) y))

eval1.0ms (0%)

Compiler

Compiled 23 to 10 computations (56.5% saved)

prune1.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New213
Fresh101
Picked000
Done000
Total314
Error
0.0b
Counts
4 → 1
Alt Table
Click to see full alt table
StatusErrorProgram
0.0b
(/.f64 (sin.f64 x) (/.f64 y (sinh.f64 y)))
Compiler

Compiled 9 to 6 computations (33.3% saved)

localize8.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(/.f64 (sin.f64 x) (/.f64 y (sinh.f64 y)))
0.0b
(sinh.f64 y)
0.0b
(/.f64 y (sinh.f64 y))
Compiler

Compiled 19 to 6 computations (68.4% saved)

series12.0ms (0.2%)

Counts
3 → 48
Calls

12 calls:

TimeVariablePointExpression
2.0ms
y
@-inf
(/.f64 y (sinh.f64 y))
2.0ms
y
@0
(/.f64 (sin.f64 x) (/.f64 y (sinh.f64 y)))
2.0ms
y
@inf
(/.f64 y (sinh.f64 y))
1.0ms
x
@inf
(/.f64 (sin.f64 x) (/.f64 y (sinh.f64 y)))
1.0ms
x
@0
(/.f64 (sin.f64 x) (/.f64 y (sinh.f64 y)))

rewrite65.0ms (1.3%)

Algorithm
batch-egg-rewrite
Rules
920×pow1_binary64
856×add-log-exp_binary64
855×log1p-expm1-u_binary64
855×expm1-log1p-u_binary64
836×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0720
115420
2224020
Stop Event
node limit
Counts
3 → 94
Calls
Call 1
Inputs
(/.f64 y (sinh.f64 y))
(sinh.f64 y)
(/.f64 (sin.f64 x) (/.f64 y (sinh.f64 y)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (/.f64 y (sinh.f64 y))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (/.f64 1 (sinh.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y (sinh.f64 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 y (sinh.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 y) 2) (*.f64 (cbrt.f64 y) (/.f64 1 (sinh.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 y (sinh.f64 y))) (pow.f64 (cbrt.f64 (/.f64 y (sinh.f64 y))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 y (sinh.f64 y))) 2) (cbrt.f64 (/.f64 y (sinh.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 y) (*.f64 (sqrt.f64 y) (/.f64 1 (sinh.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 y (sinh.f64 y))) (sqrt.f64 (/.f64 y (sinh.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 y) (/.f64 1 (neg.f64 (sinh.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sinh.f64 y)) y)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 y) 2) 1) (/.f64 (cbrt.f64 y) (sinh.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 y) 1) (/.f64 (sqrt.f64 y) (sinh.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 (sinh.f64 y)) 2)) (/.f64 y (cbrt.f64 (sinh.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 y) 2) (pow.f64 (cbrt.f64 (sinh.f64 y)) 2)) (cbrt.f64 (/.f64 y (sinh.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 y) (pow.f64 (cbrt.f64 (sinh.f64 y)) 2)) (/.f64 (sqrt.f64 y) (cbrt.f64 (sinh.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (sinh.f64 y))) (/.f64 y (sqrt.f64 (sinh.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 y) 2) (sqrt.f64 (sinh.f64 y))) (/.f64 (cbrt.f64 y) (sqrt.f64 (sinh.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y (*.f64 2 (sinh.f64 y))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 y (sinh.f64 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 y (sinh.f64 y)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 y (sinh.f64 y))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 y (sinh.f64 y))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sinh.f64 y) y) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 y (neg.f64 (sinh.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 y (sinh.f64 y)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 y (sinh.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 y (sinh.f64 y)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 y 3) (pow.f64 (sinh.f64 y) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 y (sinh.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 y (sinh.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 y (sinh.f64 y))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (sinh.f64 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (exp.f64 y) 2) (/.f64 (exp.f64 (neg.f64 y)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sinh.f64 y) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sinh.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sinh.f64 y)) (pow.f64 (cbrt.f64 (sinh.f64 y)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sinh.f64 y)) 2) (cbrt.f64 (sinh.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sinh.f64 y)) (sqrt.f64 (sinh.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (sinh.f64 y)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 2 (*.f64 2 (sinh.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (sinh.f64 y)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 2 (sinh.f64 y))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sinh.f64 y) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sinh.f64 y) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (sinh.f64 y)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (sinh.f64 y)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (sinh.f64 y) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (sinh.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (sinh.f64 y) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (sinh.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (sinh.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (sinh.f64 y)))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (/.f64 (*.f64 (sin.f64 x) (sinh.f64 y)) y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sinh.f64 y) (/.f64 (sin.f64 x) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (sin.f64 x) (sinh.f64 y)) y) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (*.f64 (sin.f64 x) (sinh.f64 y)) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 x)) 2) (*.f64 (cbrt.f64 (sin.f64 x)) (/.f64 (sinh.f64 y) y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (*.f64 (sin.f64 x) (sinh.f64 y)) y)) (pow.f64 (cbrt.f64 (/.f64 (*.f64 (sin.f64 x) (sinh.f64 y)) y)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (*.f64 (sin.f64 x) (sinh.f64 y)) y)) 2) (cbrt.f64 (/.f64 (*.f64 (sin.f64 x) (sinh.f64 y)) y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 x)) (*.f64 (sqrt.f64 (sin.f64 x)) (/.f64 (sinh.f64 y) y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (*.f64 (sin.f64 x) (sinh.f64 y)) y)) (sqrt.f64 (/.f64 (*.f64 (sin.f64 x) (sinh.f64 y)) y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (sin.f64 x)) (/.f64 1 (neg.f64 (/.f64 y (sinh.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sinh.f64 y) y) (sin.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 x) y) (sinh.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 y) (/.f64 (sin.f64 x) (/.f64 1 (sinh.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 x)) 2) y) (/.f64 (cbrt.f64 (sin.f64 x)) (/.f64 1 (sinh.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 x)) y) (/.f64 (sqrt.f64 (sin.f64 x)) (/.f64 1 (sinh.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 x)) 2) 1) (/.f64 (cbrt.f64 (sin.f64 x)) (/.f64 y (sinh.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 x)) 1) (/.f64 (sqrt.f64 (sin.f64 x)) (/.f64 y (sinh.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 (/.f64 y (sinh.f64 y))) 2)) (/.f64 (sin.f64 x) (cbrt.f64 (/.f64 y (sinh.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 x)) 2) (pow.f64 (cbrt.f64 (/.f64 y (sinh.f64 y))) 2)) (cbrt.f64 (/.f64 (*.f64 (sin.f64 x) (sinh.f64 y)) y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 x)) (pow.f64 (cbrt.f64 (/.f64 y (sinh.f64 y))) 2)) (/.f64 (sqrt.f64 (sin.f64 x)) (cbrt.f64 (/.f64 y (sinh.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (/.f64 y (sinh.f64 y)))) (/.f64 (sin.f64 x) (sqrt.f64 (/.f64 y (sinh.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 x)) 2) (sqrt.f64 (/.f64 y (sinh.f64 y)))) (/.f64 (cbrt.f64 (sin.f64 x)) (sqrt.f64 (/.f64 y (sinh.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 x) 1) (/.f64 (sinh.f64 y) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 x) (neg.f64 y)) (neg.f64 (sinh.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (sin.f64 x) y) 1) (sinh.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (sin.f64 x) y) (pow.f64 (cbrt.f64 (sinh.f64 y)) 2)) (cbrt.f64 (sinh.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (sin.f64 x) y) (sqrt.f64 (sinh.f64 y))) (sqrt.f64 (sinh.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (*.f64 (sin.f64 x) (sinh.f64 y)) y) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (*.f64 (sin.f64 x) (sinh.f64 y)) y) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (*.f64 (sin.f64 x) (sinh.f64 y)) y)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (*.f64 (sin.f64 x) (sinh.f64 y)) y)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 y (*.f64 (sin.f64 x) (sinh.f64 y))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (sin.f64 x) (neg.f64 (/.f64 y (sinh.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (*.f64 (sin.f64 x) (sinh.f64 y)) y) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (sin.f64 x)) (/.f64 (sinh.f64 y) y)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (*.f64 (sin.f64 x) (sinh.f64 y)) y) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (/.f64 y (sinh.f64 y)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (*.f64 (sin.f64 x) (sinh.f64 y)) y)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (*.f64 (sin.f64 x) (sinh.f64 y)) y)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (*.f64 (sin.f64 x) (sinh.f64 y)) y)))))))

simplify68.0ms (1.3%)

Algorithm
egg-herbie
Rules
763×fma-def_binary64
393×log-prod_binary64
252×cube-prod_binary64
213×distribute-rgt-in_binary64
206×associate-*r*_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02822397
17041811
229761614
Stop Event
node limit
Counts
142 → 163
Calls
Call 1
Inputs
1
(+.f64 1 (*.f64 -1/6 (pow.f64 y 2)))
(+.f64 1 (+.f64 (*.f64 -1/6 (pow.f64 y 2)) (*.f64 7/360 (pow.f64 y 4))))
(+.f64 1 (+.f64 (*.f64 -31/15120 (pow.f64 y 6)) (+.f64 (*.f64 -1/6 (pow.f64 y 2)) (*.f64 7/360 (pow.f64 y 4)))))
(*.f64 2 (/.f64 y (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y)))))
(*.f64 2 (/.f64 y (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y)))))
(*.f64 2 (/.f64 y (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y)))))
(*.f64 2 (/.f64 y (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y)))))
(*.f64 2 (/.f64 y (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y)))))
(*.f64 2 (/.f64 y (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y)))))
(*.f64 2 (/.f64 y (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y)))))
(*.f64 2 (/.f64 y (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y)))))
y
(+.f64 y (*.f64 1/6 (pow.f64 y 3)))
(+.f64 (*.f64 1/120 (pow.f64 y 5)) (+.f64 y (*.f64 1/6 (pow.f64 y 3))))
(+.f64 (*.f64 1/5040 (pow.f64 y 7)) (+.f64 (*.f64 1/120 (pow.f64 y 5)) (+.f64 y (*.f64 1/6 (pow.f64 y 3)))))
(*.f64 1/2 (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y))))
(*.f64 1/2 (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y))))
(*.f64 1/2 (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y))))
(*.f64 1/2 (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y))))
(*.f64 1/2 (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y))))
(*.f64 1/2 (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y))))
(*.f64 1/2 (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y))))
(*.f64 1/2 (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y))))
(*.f64 1/2 (/.f64 (*.f64 (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y))) x) y))
(+.f64 (*.f64 -1/12 (/.f64 (*.f64 (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y))) (pow.f64 x 3)) y)) (*.f64 1/2 (/.f64 (*.f64 (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y))) x) y)))
(+.f64 (*.f64 -1/12 (/.f64 (*.f64 (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y))) (pow.f64 x 3)) y)) (+.f64 (*.f64 1/240 (/.f64 (*.f64 (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y))) (pow.f64 x 5)) y)) (*.f64 1/2 (/.f64 (*.f64 (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y))) x) y))))
(+.f64 (*.f64 -1/12 (/.f64 (*.f64 (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y))) (pow.f64 x 3)) y)) (+.f64 (*.f64 -1/10080 (/.f64 (*.f64 (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y))) (pow.f64 x 7)) y)) (+.f64 (*.f64 1/240 (/.f64 (*.f64 (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y))) (pow.f64 x 5)) y)) (*.f64 1/2 (/.f64 (*.f64 (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y))) x) y)))))
(*.f64 1/2 (/.f64 (*.f64 (sin.f64 x) (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y)))) y))
(*.f64 1/2 (/.f64 (*.f64 (sin.f64 x) (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y)))) y))
(*.f64 1/2 (/.f64 (*.f64 (sin.f64 x) (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y)))) y))
(*.f64 1/2 (/.f64 (*.f64 (sin.f64 x) (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y)))) y))
(*.f64 1/2 (/.f64 (*.f64 (sin.f64 x) (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y)))) y))
(*.f64 1/2 (/.f64 (*.f64 (sin.f64 x) (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y)))) y))
(*.f64 1/2 (/.f64 (*.f64 (sin.f64 x) (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y)))) y))
(*.f64 1/2 (/.f64 (*.f64 (sin.f64 x) (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y)))) y))
(sin.f64 x)
(+.f64 (sin.f64 x) (*.f64 1/6 (*.f64 (pow.f64 y 2) (sin.f64 x))))
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 y 4) (sin.f64 x))) (+.f64 (sin.f64 x) (*.f64 1/6 (*.f64 (pow.f64 y 2) (sin.f64 x)))))
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 y 4) (sin.f64 x))) (+.f64 (sin.f64 x) (+.f64 (*.f64 1/5040 (*.f64 (pow.f64 y 6) (sin.f64 x))) (*.f64 1/6 (*.f64 (pow.f64 y 2) (sin.f64 x))))))
(*.f64 1/2 (/.f64 (*.f64 (sin.f64 x) (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y)))) y))
(*.f64 1/2 (/.f64 (*.f64 (sin.f64 x) (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y)))) y))
(*.f64 1/2 (/.f64 (*.f64 (sin.f64 x) (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y)))) y))
(*.f64 1/2 (/.f64 (*.f64 (sin.f64 x) (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y)))) y))
(*.f64 1/2 (/.f64 (*.f64 (sin.f64 x) (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y)))) y))
(*.f64 1/2 (/.f64 (*.f64 (sin.f64 x) (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y)))) y))
(*.f64 1/2 (/.f64 (*.f64 (sin.f64 x) (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y)))) y))
(*.f64 1/2 (/.f64 (*.f64 (sin.f64 x) (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y)))) y))
(-.f64 (+.f64 1 (/.f64 y (sinh.f64 y))) 1)
(*.f64 y (/.f64 1 (sinh.f64 y)))
(*.f64 (/.f64 y (sinh.f64 y)) 1)
(*.f64 1 (/.f64 y (sinh.f64 y)))
(*.f64 (pow.f64 (cbrt.f64 y) 2) (*.f64 (cbrt.f64 y) (/.f64 1 (sinh.f64 y))))
(*.f64 (cbrt.f64 (/.f64 y (sinh.f64 y))) (pow.f64 (cbrt.f64 (/.f64 y (sinh.f64 y))) 2))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 y (sinh.f64 y))) 2) (cbrt.f64 (/.f64 y (sinh.f64 y))))
(*.f64 (sqrt.f64 y) (*.f64 (sqrt.f64 y) (/.f64 1 (sinh.f64 y))))
(*.f64 (sqrt.f64 (/.f64 y (sinh.f64 y))) (sqrt.f64 (/.f64 y (sinh.f64 y))))
(*.f64 (neg.f64 y) (/.f64 1 (neg.f64 (sinh.f64 y))))
(*.f64 (/.f64 1 (sinh.f64 y)) y)
(*.f64 (/.f64 (pow.f64 (cbrt.f64 y) 2) 1) (/.f64 (cbrt.f64 y) (sinh.f64 y)))
(*.f64 (/.f64 (sqrt.f64 y) 1) (/.f64 (sqrt.f64 y) (sinh.f64 y)))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (sinh.f64 y)) 2)) (/.f64 y (cbrt.f64 (sinh.f64 y))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 y) 2) (pow.f64 (cbrt.f64 (sinh.f64 y)) 2)) (cbrt.f64 (/.f64 y (sinh.f64 y))))
(*.f64 (/.f64 (sqrt.f64 y) (pow.f64 (cbrt.f64 (sinh.f64 y)) 2)) (/.f64 (sqrt.f64 y) (cbrt.f64 (sinh.f64 y))))
(*.f64 (/.f64 1 (sqrt.f64 (sinh.f64 y))) (/.f64 y (sqrt.f64 (sinh.f64 y))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 y) 2) (sqrt.f64 (sinh.f64 y))) (/.f64 (cbrt.f64 y) (sqrt.f64 (sinh.f64 y))))
(*.f64 (/.f64 y (*.f64 2 (sinh.f64 y))) 2)
(pow.f64 (/.f64 y (sinh.f64 y)) 1)
(pow.f64 (pow.f64 (/.f64 y (sinh.f64 y)) 3) 1/3)
(pow.f64 (cbrt.f64 (/.f64 y (sinh.f64 y))) 3)
(pow.f64 (sqrt.f64 (/.f64 y (sinh.f64 y))) 2)
(pow.f64 (/.f64 (sinh.f64 y) y) -1)
(neg.f64 (/.f64 y (neg.f64 (sinh.f64 y))))
(sqrt.f64 (pow.f64 (/.f64 y (sinh.f64 y)) 2))
(log.f64 (exp.f64 (/.f64 y (sinh.f64 y))))
(cbrt.f64 (pow.f64 (/.f64 y (sinh.f64 y)) 3))
(cbrt.f64 (/.f64 (pow.f64 y 3) (pow.f64 (sinh.f64 y) 3)))
(expm1.f64 (log1p.f64 (/.f64 y (sinh.f64 y))))
(log1p.f64 (expm1.f64 (/.f64 y (sinh.f64 y))))
(exp.f64 (log.f64 (/.f64 y (sinh.f64 y))))
(-.f64 (+.f64 1 (sinh.f64 y)) 1)
(-.f64 (/.f64 (exp.f64 y) 2) (/.f64 (exp.f64 (neg.f64 y)) 2))
(*.f64 (sinh.f64 y) 1)
(*.f64 1 (sinh.f64 y))
(*.f64 (cbrt.f64 (sinh.f64 y)) (pow.f64 (cbrt.f64 (sinh.f64 y)) 2))
(*.f64 (pow.f64 (cbrt.f64 (sinh.f64 y)) 2) (cbrt.f64 (sinh.f64 y)))
(*.f64 (sqrt.f64 (sinh.f64 y)) (sqrt.f64 (sinh.f64 y)))
(*.f64 (*.f64 2 (sinh.f64 y)) 1/2)
(/.f64 1 (/.f64 2 (*.f64 2 (sinh.f64 y))))
(/.f64 (*.f64 2 (sinh.f64 y)) 2)
(/.f64 (neg.f64 (*.f64 2 (sinh.f64 y))) -2)
(pow.f64 (sinh.f64 y) 1)
(pow.f64 (pow.f64 (sinh.f64 y) 3) 1/3)
(pow.f64 (cbrt.f64 (sinh.f64 y)) 3)
(pow.f64 (sqrt.f64 (sinh.f64 y)) 2)
(sqrt.f64 (pow.f64 (sinh.f64 y) 2))
(log.f64 (exp.f64 (sinh.f64 y)))
(cbrt.f64 (pow.f64 (sinh.f64 y) 3))
(expm1.f64 (log1p.f64 (sinh.f64 y)))
(log1p.f64 (expm1.f64 (sinh.f64 y)))
(exp.f64 (log.f64 (sinh.f64 y)))
(-.f64 (+.f64 1 (/.f64 (*.f64 (sin.f64 x) (sinh.f64 y)) y)) 1)
(*.f64 (sinh.f64 y) (/.f64 (sin.f64 x) y))
(*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y))
(*.f64 (/.f64 (*.f64 (sin.f64 x) (sinh.f64 y)) y) 1)
(*.f64 1 (/.f64 (*.f64 (sin.f64 x) (sinh.f64 y)) y))
(*.f64 (pow.f64 (cbrt.f64 (sin.f64 x)) 2) (*.f64 (cbrt.f64 (sin.f64 x)) (/.f64 (sinh.f64 y) y)))
(*.f64 (cbrt.f64 (/.f64 (*.f64 (sin.f64 x) (sinh.f64 y)) y)) (pow.f64 (cbrt.f64 (/.f64 (*.f64 (sin.f64 x) (sinh.f64 y)) y)) 2))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 (*.f64 (sin.f64 x) (sinh.f64 y)) y)) 2) (cbrt.f64 (/.f64 (*.f64 (sin.f64 x) (sinh.f64 y)) y)))
(*.f64 (sqrt.f64 (sin.f64 x)) (*.f64 (sqrt.f64 (sin.f64 x)) (/.f64 (sinh.f64 y) y)))
(*.f64 (sqrt.f64 (/.f64 (*.f64 (sin.f64 x) (sinh.f64 y)) y)) (sqrt.f64 (/.f64 (*.f64 (sin.f64 x) (sinh.f64 y)) y)))
(*.f64 (neg.f64 (sin.f64 x)) (/.f64 1 (neg.f64 (/.f64 y (sinh.f64 y)))))
(*.f64 (/.f64 (sinh.f64 y) y) (sin.f64 x))
(*.f64 (/.f64 (sin.f64 x) y) (sinh.f64 y))
(*.f64 (/.f64 1 y) (/.f64 (sin.f64 x) (/.f64 1 (sinh.f64 y))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 x)) 2) y) (/.f64 (cbrt.f64 (sin.f64 x)) (/.f64 1 (sinh.f64 y))))
(*.f64 (/.f64 (sqrt.f64 (sin.f64 x)) y) (/.f64 (sqrt.f64 (sin.f64 x)) (/.f64 1 (sinh.f64 y))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 x)) 2) 1) (/.f64 (cbrt.f64 (sin.f64 x)) (/.f64 y (sinh.f64 y))))
(*.f64 (/.f64 (sqrt.f64 (sin.f64 x)) 1) (/.f64 (sqrt.f64 (sin.f64 x)) (/.f64 y (sinh.f64 y))))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (/.f64 y (sinh.f64 y))) 2)) (/.f64 (sin.f64 x) (cbrt.f64 (/.f64 y (sinh.f64 y)))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 x)) 2) (pow.f64 (cbrt.f64 (/.f64 y (sinh.f64 y))) 2)) (cbrt.f64 (/.f64 (*.f64 (sin.f64 x) (sinh.f64 y)) y)))
(*.f64 (/.f64 (sqrt.f64 (sin.f64 x)) (pow.f64 (cbrt.f64 (/.f64 y (sinh.f64 y))) 2)) (/.f64 (sqrt.f64 (sin.f64 x)) (cbrt.f64 (/.f64 y (sinh.f64 y)))))
(*.f64 (/.f64 1 (sqrt.f64 (/.f64 y (sinh.f64 y)))) (/.f64 (sin.f64 x) (sqrt.f64 (/.f64 y (sinh.f64 y)))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 x)) 2) (sqrt.f64 (/.f64 y (sinh.f64 y)))) (/.f64 (cbrt.f64 (sin.f64 x)) (sqrt.f64 (/.f64 y (sinh.f64 y)))))
(*.f64 (/.f64 (sin.f64 x) 1) (/.f64 (sinh.f64 y) y))
(*.f64 (/.f64 (sin.f64 x) (neg.f64 y)) (neg.f64 (sinh.f64 y)))
(*.f64 (*.f64 (/.f64 (sin.f64 x) y) 1) (sinh.f64 y))
(*.f64 (*.f64 (/.f64 (sin.f64 x) y) (pow.f64 (cbrt.f64 (sinh.f64 y)) 2)) (cbrt.f64 (sinh.f64 y)))
(*.f64 (*.f64 (/.f64 (sin.f64 x) y) (sqrt.f64 (sinh.f64 y))) (sqrt.f64 (sinh.f64 y)))
(pow.f64 (/.f64 (*.f64 (sin.f64 x) (sinh.f64 y)) y) 1)
(pow.f64 (pow.f64 (/.f64 (*.f64 (sin.f64 x) (sinh.f64 y)) y) 3) 1/3)
(pow.f64 (cbrt.f64 (/.f64 (*.f64 (sin.f64 x) (sinh.f64 y)) y)) 3)
(pow.f64 (sqrt.f64 (/.f64 (*.f64 (sin.f64 x) (sinh.f64 y)) y)) 2)
(pow.f64 (/.f64 y (*.f64 (sin.f64 x) (sinh.f64 y))) -1)
(neg.f64 (/.f64 (sin.f64 x) (neg.f64 (/.f64 y (sinh.f64 y)))))
(sqrt.f64 (pow.f64 (/.f64 (*.f64 (sin.f64 x) (sinh.f64 y)) y) 2))
(log.f64 (pow.f64 (exp.f64 (sin.f64 x)) (/.f64 (sinh.f64 y) y)))
(cbrt.f64 (pow.f64 (/.f64 (*.f64 (sin.f64 x) (sinh.f64 y)) y) 3))
(cbrt.f64 (/.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (/.f64 y (sinh.f64 y)) 3)))
(expm1.f64 (log1p.f64 (/.f64 (*.f64 (sin.f64 x) (sinh.f64 y)) y)))
(log1p.f64 (expm1.f64 (/.f64 (*.f64 (sin.f64 x) (sinh.f64 y)) y)))
(exp.f64 (log.f64 (/.f64 (*.f64 (sin.f64 x) (sinh.f64 y)) y)))
Outputs
1
(+.f64 1 (*.f64 -1/6 (pow.f64 y 2)))
(+.f64 1 (*.f64 -1/6 (*.f64 y y)))
(fma.f64 -1/6 (*.f64 y y) 1)
(+.f64 1 (+.f64 (*.f64 -1/6 (pow.f64 y 2)) (*.f64 7/360 (pow.f64 y 4))))
(+.f64 1 (fma.f64 -1/6 (*.f64 y y) (*.f64 7/360 (pow.f64 y 4))))
(fma.f64 -1/6 (*.f64 y y) (fma.f64 7/360 (pow.f64 y 4) 1))
(+.f64 1 (+.f64 (*.f64 -31/15120 (pow.f64 y 6)) (+.f64 (*.f64 -1/6 (pow.f64 y 2)) (*.f64 7/360 (pow.f64 y 4)))))
(+.f64 1 (fma.f64 -31/15120 (pow.f64 y 6) (fma.f64 -1/6 (*.f64 y y) (*.f64 7/360 (pow.f64 y 4)))))
(fma.f64 -31/15120 (pow.f64 y 6) (fma.f64 -1/6 (*.f64 y y) (fma.f64 7/360 (pow.f64 y 4) 1)))
(*.f64 2 (/.f64 y (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y)))))
(*.f64 2 (/.f64 y (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y)))))
(/.f64 y (sinh.f64 y))
(*.f64 2 (/.f64 y (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y)))))
(*.f64 2 (/.f64 y (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y)))))
(/.f64 y (sinh.f64 y))
(*.f64 2 (/.f64 y (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y)))))
(*.f64 2 (/.f64 y (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y)))))
(/.f64 y (sinh.f64 y))
(*.f64 2 (/.f64 y (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y)))))
(*.f64 2 (/.f64 y (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y)))))
(/.f64 y (sinh.f64 y))
(*.f64 2 (/.f64 y (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y)))))
(*.f64 2 (/.f64 y (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y)))))
(/.f64 y (sinh.f64 y))
(*.f64 2 (/.f64 y (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y)))))
(*.f64 2 (/.f64 y (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y)))))
(/.f64 y (sinh.f64 y))
(*.f64 2 (/.f64 y (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y)))))
(*.f64 2 (/.f64 y (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y)))))
(/.f64 y (sinh.f64 y))
(*.f64 2 (/.f64 y (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y)))))
(*.f64 2 (/.f64 y (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y)))))
(/.f64 y (sinh.f64 y))
y
(+.f64 y (*.f64 1/6 (pow.f64 y 3)))
(fma.f64 1/6 (pow.f64 y 3) y)
(+.f64 (*.f64 1/120 (pow.f64 y 5)) (+.f64 y (*.f64 1/6 (pow.f64 y 3))))
(fma.f64 1/120 (pow.f64 y 5) (+.f64 y (*.f64 1/6 (pow.f64 y 3))))
(fma.f64 1/120 (pow.f64 y 5) (fma.f64 1/6 (pow.f64 y 3) y))
(fma.f64 1/6 (pow.f64 y 3) (fma.f64 1/120 (pow.f64 y 5) y))
(+.f64 (*.f64 1/5040 (pow.f64 y 7)) (+.f64 (*.f64 1/120 (pow.f64 y 5)) (+.f64 y (*.f64 1/6 (pow.f64 y 3)))))
(fma.f64 1/5040 (pow.f64 y 7) (fma.f64 1/120 (pow.f64 y 5) (+.f64 y (*.f64 1/6 (pow.f64 y 3)))))
(fma.f64 1/5040 (pow.f64 y 7) (fma.f64 1/120 (pow.f64 y 5) (fma.f64 1/6 (pow.f64 y 3) y)))
(fma.f64 1/5040 (pow.f64 y 7) (fma.f64 1/6 (pow.f64 y 3) (fma.f64 1/120 (pow.f64 y 5) y)))
(*.f64 1/2 (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y))))
(*.f64 (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))) 1/2)
(*.f64 1/2 (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y))))
(*.f64 (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))) 1/2)
(*.f64 1/2 (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y))))
(*.f64 (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))) 1/2)
(*.f64 1/2 (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y))))
(*.f64 (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))) 1/2)
(*.f64 1/2 (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y))))
(*.f64 (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))) 1/2)
(*.f64 1/2 (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y))))
(*.f64 (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))) 1/2)
(*.f64 1/2 (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y))))
(*.f64 (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))) 1/2)
(*.f64 1/2 (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y))))
(*.f64 (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))) 1/2)
(*.f64 1/2 (/.f64 (*.f64 (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y))) x) y))
(*.f64 1/2 (/.f64 (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))) (/.f64 y x)))
(*.f64 1/2 (*.f64 (/.f64 (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))) y) x))
(+.f64 (*.f64 -1/12 (/.f64 (*.f64 (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y))) (pow.f64 x 3)) y)) (*.f64 1/2 (/.f64 (*.f64 (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y))) x) y)))
(fma.f64 -1/12 (/.f64 (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))) (/.f64 y (pow.f64 x 3))) (*.f64 1/2 (/.f64 (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))) (/.f64 y x))))
(fma.f64 1/2 (/.f64 (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))) (/.f64 y x)) (*.f64 -1/12 (*.f64 (/.f64 (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))) y) (pow.f64 x 3))))
(fma.f64 1/2 (*.f64 (/.f64 (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))) y) x) (/.f64 -1/12 (/.f64 y (*.f64 (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))) (pow.f64 x 3)))))
(+.f64 (*.f64 -1/12 (/.f64 (*.f64 (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y))) (pow.f64 x 3)) y)) (+.f64 (*.f64 1/240 (/.f64 (*.f64 (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y))) (pow.f64 x 5)) y)) (*.f64 1/2 (/.f64 (*.f64 (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y))) x) y))))
(fma.f64 -1/12 (/.f64 (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))) (/.f64 y (pow.f64 x 3))) (fma.f64 1/240 (/.f64 (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))) (/.f64 y (pow.f64 x 5))) (*.f64 1/2 (/.f64 (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))) (/.f64 y x)))))
(fma.f64 -1/12 (*.f64 (/.f64 (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))) y) (pow.f64 x 3)) (fma.f64 1/2 (/.f64 (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))) (/.f64 y x)) (*.f64 1/240 (*.f64 (/.f64 (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))) y) (pow.f64 x 5)))))
(fma.f64 1/2 (*.f64 (/.f64 (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))) y) x) (fma.f64 -1/12 (*.f64 (/.f64 (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))) y) (pow.f64 x 3)) (/.f64 (*.f64 1/240 (*.f64 (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))) (pow.f64 x 5))) y)))
(+.f64 (*.f64 -1/12 (/.f64 (*.f64 (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y))) (pow.f64 x 3)) y)) (+.f64 (*.f64 -1/10080 (/.f64 (*.f64 (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y))) (pow.f64 x 7)) y)) (+.f64 (*.f64 1/240 (/.f64 (*.f64 (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y))) (pow.f64 x 5)) y)) (*.f64 1/2 (/.f64 (*.f64 (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y))) x) y)))))
(fma.f64 -1/12 (/.f64 (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))) (/.f64 y (pow.f64 x 3))) (fma.f64 -1/10080 (/.f64 (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))) (/.f64 y (pow.f64 x 7))) (fma.f64 1/240 (/.f64 (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))) (/.f64 y (pow.f64 x 5))) (*.f64 1/2 (/.f64 (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))) (/.f64 y x))))))
(fma.f64 -1/12 (*.f64 (/.f64 (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))) y) (pow.f64 x 3)) (fma.f64 -1/10080 (*.f64 (/.f64 (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))) y) (pow.f64 x 7)) (fma.f64 1/2 (/.f64 (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))) (/.f64 y x)) (*.f64 1/240 (*.f64 (/.f64 (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))) y) (pow.f64 x 5))))))
(fma.f64 -1/12 (*.f64 (/.f64 (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))) y) (pow.f64 x 3)) (fma.f64 1/2 (*.f64 (/.f64 (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))) y) x) (fma.f64 1/240 (*.f64 (/.f64 (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))) y) (pow.f64 x 5)) (*.f64 -1/10080 (*.f64 (/.f64 (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))) y) (pow.f64 x 7))))))
(*.f64 1/2 (/.f64 (*.f64 (sin.f64 x) (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y)))) y))
(*.f64 1/2 (/.f64 (sin.f64 x) (/.f64 y (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))))))
(*.f64 1/2 (*.f64 (/.f64 (sin.f64 x) y) (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y)))))
(*.f64 1/2 (/.f64 (*.f64 (sin.f64 x) (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y)))) y))
(*.f64 1/2 (/.f64 (sin.f64 x) (/.f64 y (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))))))
(*.f64 1/2 (*.f64 (/.f64 (sin.f64 x) y) (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y)))))
(*.f64 1/2 (/.f64 (*.f64 (sin.f64 x) (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y)))) y))
(*.f64 1/2 (/.f64 (sin.f64 x) (/.f64 y (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))))))
(*.f64 1/2 (*.f64 (/.f64 (sin.f64 x) y) (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y)))))
(*.f64 1/2 (/.f64 (*.f64 (sin.f64 x) (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y)))) y))
(*.f64 1/2 (/.f64 (sin.f64 x) (/.f64 y (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))))))
(*.f64 1/2 (*.f64 (/.f64 (sin.f64 x) y) (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y)))))
(*.f64 1/2 (/.f64 (*.f64 (sin.f64 x) (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y)))) y))
(*.f64 1/2 (/.f64 (sin.f64 x) (/.f64 y (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))))))
(*.f64 1/2 (*.f64 (/.f64 (sin.f64 x) y) (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y)))))
(*.f64 1/2 (/.f64 (*.f64 (sin.f64 x) (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y)))) y))
(*.f64 1/2 (/.f64 (sin.f64 x) (/.f64 y (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))))))
(*.f64 1/2 (*.f64 (/.f64 (sin.f64 x) y) (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y)))))
(*.f64 1/2 (/.f64 (*.f64 (sin.f64 x) (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y)))) y))
(*.f64 1/2 (/.f64 (sin.f64 x) (/.f64 y (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))))))
(*.f64 1/2 (*.f64 (/.f64 (sin.f64 x) y) (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y)))))
(*.f64 1/2 (/.f64 (*.f64 (sin.f64 x) (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y)))) y))
(*.f64 1/2 (/.f64 (sin.f64 x) (/.f64 y (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))))))
(*.f64 1/2 (*.f64 (/.f64 (sin.f64 x) y) (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y)))))
(sin.f64 x)
(+.f64 (sin.f64 x) (*.f64 1/6 (*.f64 (pow.f64 y 2) (sin.f64 x))))
(+.f64 (sin.f64 x) (*.f64 1/6 (*.f64 (*.f64 y y) (sin.f64 x))))
(fma.f64 (*.f64 (*.f64 y y) 1/6) (sin.f64 x) (sin.f64 x))
(*.f64 (sin.f64 x) (fma.f64 (*.f64 y y) 1/6 1))
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 y 4) (sin.f64 x))) (+.f64 (sin.f64 x) (*.f64 1/6 (*.f64 (pow.f64 y 2) (sin.f64 x)))))
(fma.f64 1/120 (*.f64 (pow.f64 y 4) (sin.f64 x)) (+.f64 (sin.f64 x) (*.f64 1/6 (*.f64 (*.f64 y y) (sin.f64 x)))))
(fma.f64 1/120 (*.f64 (pow.f64 y 4) (sin.f64 x)) (fma.f64 (*.f64 (*.f64 y y) 1/6) (sin.f64 x) (sin.f64 x)))
(*.f64 (sin.f64 x) (+.f64 (*.f64 (*.f64 y y) 1/6) (fma.f64 (pow.f64 y 4) 1/120 1)))
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 y 4) (sin.f64 x))) (+.f64 (sin.f64 x) (+.f64 (*.f64 1/5040 (*.f64 (pow.f64 y 6) (sin.f64 x))) (*.f64 1/6 (*.f64 (pow.f64 y 2) (sin.f64 x))))))
(fma.f64 1/120 (*.f64 (pow.f64 y 4) (sin.f64 x)) (+.f64 (sin.f64 x) (fma.f64 1/5040 (*.f64 (pow.f64 y 6) (sin.f64 x)) (*.f64 1/6 (*.f64 (*.f64 y y) (sin.f64 x))))))
(+.f64 (*.f64 (sin.f64 x) (+.f64 (*.f64 (*.f64 y y) 1/6) (*.f64 (pow.f64 y 6) 1/5040))) (fma.f64 1/120 (*.f64 (pow.f64 y 4) (sin.f64 x)) (sin.f64 x)))
(fma.f64 (sin.f64 x) (fma.f64 (*.f64 y y) 1/6 (*.f64 (pow.f64 y 6) 1/5040)) (*.f64 (sin.f64 x) (fma.f64 (pow.f64 y 4) 1/120 1)))
(*.f64 1/2 (/.f64 (*.f64 (sin.f64 x) (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y)))) y))
(*.f64 1/2 (/.f64 (sin.f64 x) (/.f64 y (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))))))
(*.f64 1/2 (*.f64 (/.f64 (sin.f64 x) y) (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y)))))
(*.f64 1/2 (/.f64 (*.f64 (sin.f64 x) (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y)))) y))
(*.f64 1/2 (/.f64 (sin.f64 x) (/.f64 y (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))))))
(*.f64 1/2 (*.f64 (/.f64 (sin.f64 x) y) (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y)))))
(*.f64 1/2 (/.f64 (*.f64 (sin.f64 x) (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y)))) y))
(*.f64 1/2 (/.f64 (sin.f64 x) (/.f64 y (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))))))
(*.f64 1/2 (*.f64 (/.f64 (sin.f64 x) y) (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y)))))
(*.f64 1/2 (/.f64 (*.f64 (sin.f64 x) (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y)))) y))
(*.f64 1/2 (/.f64 (sin.f64 x) (/.f64 y (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))))))
(*.f64 1/2 (*.f64 (/.f64 (sin.f64 x) y) (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y)))))
(*.f64 1/2 (/.f64 (*.f64 (sin.f64 x) (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y)))) y))
(*.f64 1/2 (/.f64 (sin.f64 x) (/.f64 y (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))))))
(*.f64 1/2 (*.f64 (/.f64 (sin.f64 x) y) (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y)))))
(*.f64 1/2 (/.f64 (*.f64 (sin.f64 x) (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y)))) y))
(*.f64 1/2 (/.f64 (sin.f64 x) (/.f64 y (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))))))
(*.f64 1/2 (*.f64 (/.f64 (sin.f64 x) y) (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y)))))
(*.f64 1/2 (/.f64 (*.f64 (sin.f64 x) (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y)))) y))
(*.f64 1/2 (/.f64 (sin.f64 x) (/.f64 y (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))))))
(*.f64 1/2 (*.f64 (/.f64 (sin.f64 x) y) (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y)))))
(*.f64 1/2 (/.f64 (*.f64 (sin.f64 x) (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y)))) y))
(*.f64 1/2 (/.f64 (sin.f64 x) (/.f64 y (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))))))
(*.f64 1/2 (*.f64 (/.f64 (sin.f64 x) y) (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y)))))
(-.f64 (+.f64 1 (/.f64 y (sinh.f64 y))) 1)
(*.f64 2 (/.f64 y (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y)))))
(/.f64 y (sinh.f64 y))
(*.f64 y (/.f64 1 (sinh.f64 y)))
(*.f64 2 (/.f64 y (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y)))))
(/.f64 y (sinh.f64 y))
(*.f64 (/.f64 y (sinh.f64 y)) 1)
(*.f64 2 (/.f64 y (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y)))))
(/.f64 y (sinh.f64 y))
(*.f64 1 (/.f64 y (sinh.f64 y)))
(*.f64 2 (/.f64 y (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y)))))
(/.f64 y (sinh.f64 y))
(*.f64 (pow.f64 (cbrt.f64 y) 2) (*.f64 (cbrt.f64 y) (/.f64 1 (sinh.f64 y))))
(*.f64 2 (/.f64 y (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y)))))
(/.f64 y (sinh.f64 y))
(*.f64 (cbrt.f64 (/.f64 y (sinh.f64 y))) (pow.f64 (cbrt.f64 (/.f64 y (sinh.f64 y))) 2))
(*.f64 2 (/.f64 y (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y)))))
(/.f64 y (sinh.f64 y))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 y (sinh.f64 y))) 2) (cbrt.f64 (/.f64 y (sinh.f64 y))))
(*.f64 2 (/.f64 y (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y)))))
(/.f64 y (sinh.f64 y))
(*.f64 (sqrt.f64 y) (*.f64 (sqrt.f64 y) (/.f64 1 (sinh.f64 y))))
(*.f64 2 (/.f64 y (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y)))))
(/.f64 y (sinh.f64 y))
(*.f64 (sqrt.f64 (/.f64 y (sinh.f64 y))) (sqrt.f64 (/.f64 y (sinh.f64 y))))
(*.f64 2 (/.f64 y (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y)))))
(/.f64 y (sinh.f64 y))
(*.f64 (neg.f64 y) (/.f64 1 (neg.f64 (sinh.f64 y))))
(*.f64 2 (/.f64 y (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y)))))
(/.f64 y (sinh.f64 y))
(*.f64 (/.f64 1 (sinh.f64 y)) y)
(*.f64 2 (/.f64 y (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y)))))
(/.f64 y (sinh.f64 y))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 y) 2) 1) (/.f64 (cbrt.f64 y) (sinh.f64 y)))
(*.f64 2 (/.f64 y (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y)))))
(/.f64 y (sinh.f64 y))
(*.f64 (/.f64 (sqrt.f64 y) 1) (/.f64 (sqrt.f64 y) (sinh.f64 y)))
(*.f64 2 (/.f64 y (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y)))))
(/.f64 y (sinh.f64 y))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (sinh.f64 y)) 2)) (/.f64 y (cbrt.f64 (sinh.f64 y))))
(*.f64 2 (/.f64 y (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y)))))
(/.f64 y (sinh.f64 y))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 y) 2) (pow.f64 (cbrt.f64 (sinh.f64 y)) 2)) (cbrt.f64 (/.f64 y (sinh.f64 y))))
(*.f64 (cbrt.f64 (/.f64 y (sinh.f64 y))) (/.f64 (pow.f64 (cbrt.f64 y) 2) (pow.f64 (cbrt.f64 (sinh.f64 y)) 2)))
(/.f64 (*.f64 (pow.f64 (cbrt.f64 y) 2) (cbrt.f64 (/.f64 y (sinh.f64 y)))) (pow.f64 (cbrt.f64 (sinh.f64 y)) 2))
(*.f64 (/.f64 (sqrt.f64 y) (pow.f64 (cbrt.f64 (sinh.f64 y)) 2)) (/.f64 (sqrt.f64 y) (cbrt.f64 (sinh.f64 y))))
(*.f64 2 (/.f64 y (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y)))))
(/.f64 y (sinh.f64 y))
(*.f64 (/.f64 1 (sqrt.f64 (sinh.f64 y))) (/.f64 y (sqrt.f64 (sinh.f64 y))))
(*.f64 2 (/.f64 y (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y)))))
(/.f64 y (sinh.f64 y))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 y) 2) (sqrt.f64 (sinh.f64 y))) (/.f64 (cbrt.f64 y) (sqrt.f64 (sinh.f64 y))))
(*.f64 2 (/.f64 y (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y)))))
(/.f64 y (sinh.f64 y))
(*.f64 (/.f64 y (*.f64 2 (sinh.f64 y))) 2)
(*.f64 2 (/.f64 y (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y)))))
(/.f64 y (sinh.f64 y))
(pow.f64 (/.f64 y (sinh.f64 y)) 1)
(*.f64 2 (/.f64 y (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y)))))
(/.f64 y (sinh.f64 y))
(pow.f64 (pow.f64 (/.f64 y (sinh.f64 y)) 3) 1/3)
(*.f64 2 (/.f64 y (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y)))))
(/.f64 y (sinh.f64 y))
(pow.f64 (cbrt.f64 (/.f64 y (sinh.f64 y))) 3)
(*.f64 2 (/.f64 y (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y)))))
(/.f64 y (sinh.f64 y))
(pow.f64 (sqrt.f64 (/.f64 y (sinh.f64 y))) 2)
(*.f64 2 (/.f64 y (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y)))))
(/.f64 y (sinh.f64 y))
(pow.f64 (/.f64 (sinh.f64 y) y) -1)
(*.f64 2 (/.f64 y (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y)))))
(/.f64 y (sinh.f64 y))
(neg.f64 (/.f64 y (neg.f64 (sinh.f64 y))))
(*.f64 2 (/.f64 y (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y)))))
(/.f64 y (sinh.f64 y))
(sqrt.f64 (pow.f64 (/.f64 y (sinh.f64 y)) 2))
(*.f64 2 (/.f64 y (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y)))))
(/.f64 y (sinh.f64 y))
(log.f64 (exp.f64 (/.f64 y (sinh.f64 y))))
(*.f64 2 (/.f64 y (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y)))))
(/.f64 y (sinh.f64 y))
(cbrt.f64 (pow.f64 (/.f64 y (sinh.f64 y)) 3))
(*.f64 2 (/.f64 y (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y)))))
(/.f64 y (sinh.f64 y))
(cbrt.f64 (/.f64 (pow.f64 y 3) (pow.f64 (sinh.f64 y) 3)))
(*.f64 2 (/.f64 y (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y)))))
(/.f64 y (sinh.f64 y))
(expm1.f64 (log1p.f64 (/.f64 y (sinh.f64 y))))
(*.f64 2 (/.f64 y (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y)))))
(/.f64 y (sinh.f64 y))
(log1p.f64 (expm1.f64 (/.f64 y (sinh.f64 y))))
(*.f64 2 (/.f64 y (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y)))))
(/.f64 y (sinh.f64 y))
(exp.f64 (log.f64 (/.f64 y (sinh.f64 y))))
(*.f64 2 (/.f64 y (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y)))))
(/.f64 y (sinh.f64 y))
(-.f64 (+.f64 1 (sinh.f64 y)) 1)
(+.f64 (+.f64 1 (sinh.f64 y)) -1)
(+.f64 (sinh.f64 y) 0)
(sinh.f64 y)
(-.f64 (/.f64 (exp.f64 y) 2) (/.f64 (exp.f64 (neg.f64 y)) 2))
(+.f64 (+.f64 1 (sinh.f64 y)) -1)
(+.f64 (sinh.f64 y) 0)
(sinh.f64 y)
(*.f64 (sinh.f64 y) 1)
(+.f64 (+.f64 1 (sinh.f64 y)) -1)
(+.f64 (sinh.f64 y) 0)
(sinh.f64 y)
(*.f64 1 (sinh.f64 y))
(+.f64 (+.f64 1 (sinh.f64 y)) -1)
(+.f64 (sinh.f64 y) 0)
(sinh.f64 y)
(*.f64 (cbrt.f64 (sinh.f64 y)) (pow.f64 (cbrt.f64 (sinh.f64 y)) 2))
(+.f64 (+.f64 1 (sinh.f64 y)) -1)
(+.f64 (sinh.f64 y) 0)
(sinh.f64 y)
(*.f64 (pow.f64 (cbrt.f64 (sinh.f64 y)) 2) (cbrt.f64 (sinh.f64 y)))
(+.f64 (+.f64 1 (sinh.f64 y)) -1)
(+.f64 (sinh.f64 y) 0)
(sinh.f64 y)
(*.f64 (sqrt.f64 (sinh.f64 y)) (sqrt.f64 (sinh.f64 y)))
(+.f64 (+.f64 1 (sinh.f64 y)) -1)
(+.f64 (sinh.f64 y) 0)
(sinh.f64 y)
(*.f64 (*.f64 2 (sinh.f64 y)) 1/2)
(+.f64 (+.f64 1 (sinh.f64 y)) -1)
(+.f64 (sinh.f64 y) 0)
(sinh.f64 y)
(/.f64 1 (/.f64 2 (*.f64 2 (sinh.f64 y))))
(+.f64 (+.f64 1 (sinh.f64 y)) -1)
(+.f64 (sinh.f64 y) 0)
(sinh.f64 y)
(/.f64 (*.f64 2 (sinh.f64 y)) 2)
(+.f64 (+.f64 1 (sinh.f64 y)) -1)
(+.f64 (sinh.f64 y) 0)
(sinh.f64 y)
(/.f64 (neg.f64 (*.f64 2 (sinh.f64 y))) -2)
(/.f64 (*.f64 -2 (sinh.f64 y)) -2)
(neg.f64 (/.f64 (sinh.f64 y) -1))
(/.f64 (neg.f64 (sinh.f64 y)) -1)
(pow.f64 (sinh.f64 y) 1)
(+.f64 (+.f64 1 (sinh.f64 y)) -1)
(+.f64 (sinh.f64 y) 0)
(sinh.f64 y)
(pow.f64 (pow.f64 (sinh.f64 y) 3) 1/3)
(+.f64 (+.f64 1 (sinh.f64 y)) -1)
(+.f64 (sinh.f64 y) 0)
(sinh.f64 y)
(pow.f64 (cbrt.f64 (sinh.f64 y)) 3)
(+.f64 (+.f64 1 (sinh.f64 y)) -1)
(+.f64 (sinh.f64 y) 0)
(sinh.f64 y)
(pow.f64 (sqrt.f64 (sinh.f64 y)) 2)
(+.f64 (+.f64 1 (sinh.f64 y)) -1)
(+.f64 (sinh.f64 y) 0)
(sinh.f64 y)
(sqrt.f64 (pow.f64 (sinh.f64 y) 2))
(+.f64 (+.f64 1 (sinh.f64 y)) -1)
(+.f64 (sinh.f64 y) 0)
(sinh.f64 y)
(log.f64 (exp.f64 (sinh.f64 y)))
(+.f64 (+.f64 1 (sinh.f64 y)) -1)
(+.f64 (sinh.f64 y) 0)
(sinh.f64 y)
(cbrt.f64 (pow.f64 (sinh.f64 y) 3))
(+.f64 (+.f64 1 (sinh.f64 y)) -1)
(+.f64 (sinh.f64 y) 0)
(sinh.f64 y)
(expm1.f64 (log1p.f64 (sinh.f64 y)))
(+.f64 (+.f64 1 (sinh.f64 y)) -1)
(+.f64 (sinh.f64 y) 0)
(sinh.f64 y)
(log1p.f64 (expm1.f64 (sinh.f64 y)))
(+.f64 (+.f64 1 (sinh.f64 y)) -1)
(+.f64 (sinh.f64 y) 0)
(sinh.f64 y)
(exp.f64 (log.f64 (sinh.f64 y)))
(+.f64 (+.f64 1 (sinh.f64 y)) -1)
(+.f64 (sinh.f64 y) 0)
(sinh.f64 y)
(-.f64 (+.f64 1 (/.f64 (*.f64 (sin.f64 x) (sinh.f64 y)) y)) 1)
(+.f64 1 (-.f64 (*.f64 (sinh.f64 y) (/.f64 (sin.f64 x) y)) 1))
(+.f64 (*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y)) 0)
(*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y))
(*.f64 (sinh.f64 y) (/.f64 (sin.f64 x) y))
(+.f64 1 (-.f64 (*.f64 (sinh.f64 y) (/.f64 (sin.f64 x) y)) 1))
(+.f64 (*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y)) 0)
(*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y))
(*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y))
(+.f64 1 (-.f64 (*.f64 (sinh.f64 y) (/.f64 (sin.f64 x) y)) 1))
(+.f64 (*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y)) 0)
(*.f64 (/.f64 (*.f64 (sin.f64 x) (sinh.f64 y)) y) 1)
(+.f64 1 (-.f64 (*.f64 (sinh.f64 y) (/.f64 (sin.f64 x) y)) 1))
(+.f64 (*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y)) 0)
(*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y))
(*.f64 1 (/.f64 (*.f64 (sin.f64 x) (sinh.f64 y)) y))
(+.f64 1 (-.f64 (*.f64 (sinh.f64 y) (/.f64 (sin.f64 x) y)) 1))
(+.f64 (*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y)) 0)
(*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y))
(*.f64 (pow.f64 (cbrt.f64 (sin.f64 x)) 2) (*.f64 (cbrt.f64 (sin.f64 x)) (/.f64 (sinh.f64 y) y)))
(+.f64 1 (-.f64 (*.f64 (sinh.f64 y) (/.f64 (sin.f64 x) y)) 1))
(+.f64 (*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y)) 0)
(*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y))
(*.f64 (cbrt.f64 (/.f64 (*.f64 (sin.f64 x) (sinh.f64 y)) y)) (pow.f64 (cbrt.f64 (/.f64 (*.f64 (sin.f64 x) (sinh.f64 y)) y)) 2))
(+.f64 1 (-.f64 (*.f64 (sinh.f64 y) (/.f64 (sin.f64 x) y)) 1))
(+.f64 (*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y)) 0)
(*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 (*.f64 (sin.f64 x) (sinh.f64 y)) y)) 2) (cbrt.f64 (/.f64 (*.f64 (sin.f64 x) (sinh.f64 y)) y)))
(+.f64 1 (-.f64 (*.f64 (sinh.f64 y) (/.f64 (sin.f64 x) y)) 1))
(+.f64 (*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y)) 0)
(*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y))
(*.f64 (sqrt.f64 (sin.f64 x)) (*.f64 (sqrt.f64 (sin.f64 x)) (/.f64 (sinh.f64 y) y)))
(+.f64 1 (-.f64 (*.f64 (sinh.f64 y) (/.f64 (sin.f64 x) y)) 1))
(+.f64 (*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y)) 0)
(*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y))
(*.f64 (sqrt.f64 (/.f64 (*.f64 (sin.f64 x) (sinh.f64 y)) y)) (sqrt.f64 (/.f64 (*.f64 (sin.f64 x) (sinh.f64 y)) y)))
(+.f64 1 (-.f64 (*.f64 (sinh.f64 y) (/.f64 (sin.f64 x) y)) 1))
(+.f64 (*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y)) 0)
(*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y))
(*.f64 (neg.f64 (sin.f64 x)) (/.f64 1 (neg.f64 (/.f64 y (sinh.f64 y)))))
(+.f64 1 (-.f64 (*.f64 (sinh.f64 y) (/.f64 (sin.f64 x) y)) 1))
(+.f64 (*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y)) 0)
(*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y))
(*.f64 (/.f64 (sinh.f64 y) y) (sin.f64 x))
(+.f64 1 (-.f64 (*.f64 (sinh.f64 y) (/.f64 (sin.f64 x) y)) 1))
(+.f64 (*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y)) 0)
(*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y))
(*.f64 (/.f64 (sin.f64 x) y) (sinh.f64 y))
(+.f64 1 (-.f64 (*.f64 (sinh.f64 y) (/.f64 (sin.f64 x) y)) 1))
(+.f64 (*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y)) 0)
(*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y))
(*.f64 (/.f64 1 y) (/.f64 (sin.f64 x) (/.f64 1 (sinh.f64 y))))
(+.f64 1 (-.f64 (*.f64 (sinh.f64 y) (/.f64 (sin.f64 x) y)) 1))
(+.f64 (*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y)) 0)
(*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 x)) 2) y) (/.f64 (cbrt.f64 (sin.f64 x)) (/.f64 1 (sinh.f64 y))))
(+.f64 1 (-.f64 (*.f64 (sinh.f64 y) (/.f64 (sin.f64 x) y)) 1))
(+.f64 (*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y)) 0)
(*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y))
(*.f64 (/.f64 (sqrt.f64 (sin.f64 x)) y) (/.f64 (sqrt.f64 (sin.f64 x)) (/.f64 1 (sinh.f64 y))))
(+.f64 1 (-.f64 (*.f64 (sinh.f64 y) (/.f64 (sin.f64 x) y)) 1))
(+.f64 (*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y)) 0)
(*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 x)) 2) 1) (/.f64 (cbrt.f64 (sin.f64 x)) (/.f64 y (sinh.f64 y))))
(+.f64 1 (-.f64 (*.f64 (sinh.f64 y) (/.f64 (sin.f64 x) y)) 1))
(+.f64 (*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y)) 0)
(*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y))
(*.f64 (/.f64 (sqrt.f64 (sin.f64 x)) 1) (/.f64 (sqrt.f64 (sin.f64 x)) (/.f64 y (sinh.f64 y))))
(+.f64 1 (-.f64 (*.f64 (sinh.f64 y) (/.f64 (sin.f64 x) y)) 1))
(+.f64 (*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y)) 0)
(*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (/.f64 y (sinh.f64 y))) 2)) (/.f64 (sin.f64 x) (cbrt.f64 (/.f64 y (sinh.f64 y)))))
(+.f64 1 (-.f64 (*.f64 (sinh.f64 y) (/.f64 (sin.f64 x) y)) 1))
(+.f64 (*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y)) 0)
(*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 x)) 2) (pow.f64 (cbrt.f64 (/.f64 y (sinh.f64 y))) 2)) (cbrt.f64 (/.f64 (*.f64 (sin.f64 x) (sinh.f64 y)) y)))
(*.f64 (cbrt.f64 (*.f64 (sinh.f64 y) (/.f64 (sin.f64 x) y))) (/.f64 (pow.f64 (cbrt.f64 (sin.f64 x)) 2) (pow.f64 (cbrt.f64 (/.f64 y (sinh.f64 y))) 2)))
(*.f64 (cbrt.f64 (*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y))) (/.f64 (pow.f64 (cbrt.f64 (sin.f64 x)) 2) (pow.f64 (cbrt.f64 (/.f64 y (sinh.f64 y))) 2)))
(*.f64 (/.f64 (sqrt.f64 (sin.f64 x)) (pow.f64 (cbrt.f64 (/.f64 y (sinh.f64 y))) 2)) (/.f64 (sqrt.f64 (sin.f64 x)) (cbrt.f64 (/.f64 y (sinh.f64 y)))))
(+.f64 1 (-.f64 (*.f64 (sinh.f64 y) (/.f64 (sin.f64 x) y)) 1))
(+.f64 (*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y)) 0)
(*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y))
(*.f64 (/.f64 1 (sqrt.f64 (/.f64 y (sinh.f64 y)))) (/.f64 (sin.f64 x) (sqrt.f64 (/.f64 y (sinh.f64 y)))))
(+.f64 1 (-.f64 (*.f64 (sinh.f64 y) (/.f64 (sin.f64 x) y)) 1))
(+.f64 (*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y)) 0)
(*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 x)) 2) (sqrt.f64 (/.f64 y (sinh.f64 y)))) (/.f64 (cbrt.f64 (sin.f64 x)) (sqrt.f64 (/.f64 y (sinh.f64 y)))))
(+.f64 1 (-.f64 (*.f64 (sinh.f64 y) (/.f64 (sin.f64 x) y)) 1))
(+.f64 (*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y)) 0)
(*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y))
(*.f64 (/.f64 (sin.f64 x) 1) (/.f64 (sinh.f64 y) y))
(+.f64 1 (-.f64 (*.f64 (sinh.f64 y) (/.f64 (sin.f64 x) y)) 1))
(+.f64 (*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y)) 0)
(*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y))
(*.f64 (/.f64 (sin.f64 x) (neg.f64 y)) (neg.f64 (sinh.f64 y)))
(+.f64 1 (-.f64 (*.f64 (sinh.f64 y) (/.f64 (sin.f64 x) y)) 1))
(+.f64 (*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y)) 0)
(*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y))
(*.f64 (*.f64 (/.f64 (sin.f64 x) y) 1) (sinh.f64 y))
(+.f64 1 (-.f64 (*.f64 (sinh.f64 y) (/.f64 (sin.f64 x) y)) 1))
(+.f64 (*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y)) 0)
(*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y))
(*.f64 (*.f64 (/.f64 (sin.f64 x) y) (pow.f64 (cbrt.f64 (sinh.f64 y)) 2)) (cbrt.f64 (sinh.f64 y)))
(+.f64 1 (-.f64 (*.f64 (sinh.f64 y) (/.f64 (sin.f64 x) y)) 1))
(+.f64 (*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y)) 0)
(*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y))
(*.f64 (*.f64 (/.f64 (sin.f64 x) y) (sqrt.f64 (sinh.f64 y))) (sqrt.f64 (sinh.f64 y)))
(+.f64 1 (-.f64 (*.f64 (sinh.f64 y) (/.f64 (sin.f64 x) y)) 1))
(+.f64 (*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y)) 0)
(*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y))
(pow.f64 (/.f64 (*.f64 (sin.f64 x) (sinh.f64 y)) y) 1)
(+.f64 1 (-.f64 (*.f64 (sinh.f64 y) (/.f64 (sin.f64 x) y)) 1))
(+.f64 (*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y)) 0)
(*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y))
(pow.f64 (pow.f64 (/.f64 (*.f64 (sin.f64 x) (sinh.f64 y)) y) 3) 1/3)
(+.f64 1 (-.f64 (*.f64 (sinh.f64 y) (/.f64 (sin.f64 x) y)) 1))
(+.f64 (*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y)) 0)
(*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y))
(pow.f64 (cbrt.f64 (/.f64 (*.f64 (sin.f64 x) (sinh.f64 y)) y)) 3)
(+.f64 1 (-.f64 (*.f64 (sinh.f64 y) (/.f64 (sin.f64 x) y)) 1))
(+.f64 (*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y)) 0)
(*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y))
(pow.f64 (sqrt.f64 (/.f64 (*.f64 (sin.f64 x) (sinh.f64 y)) y)) 2)
(+.f64 1 (-.f64 (*.f64 (sinh.f64 y) (/.f64 (sin.f64 x) y)) 1))
(+.f64 (*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y)) 0)
(*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y))
(pow.f64 (/.f64 y (*.f64 (sin.f64 x) (sinh.f64 y))) -1)
(+.f64 1 (-.f64 (*.f64 (sinh.f64 y) (/.f64 (sin.f64 x) y)) 1))
(+.f64 (*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y)) 0)
(*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y))
(neg.f64 (/.f64 (sin.f64 x) (neg.f64 (/.f64 y (sinh.f64 y)))))
(+.f64 1 (-.f64 (*.f64 (sinh.f64 y) (/.f64 (sin.f64 x) y)) 1))
(+.f64 (*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y)) 0)
(*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y))
(sqrt.f64 (pow.f64 (/.f64 (*.f64 (sin.f64 x) (sinh.f64 y)) y) 2))
(+.f64 1 (-.f64 (*.f64 (sinh.f64 y) (/.f64 (sin.f64 x) y)) 1))
(+.f64 (*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y)) 0)
(*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y))
(log.f64 (pow.f64 (exp.f64 (sin.f64 x)) (/.f64 (sinh.f64 y) y)))
(+.f64 1 (-.f64 (*.f64 (sinh.f64 y) (/.f64 (sin.f64 x) y)) 1))
(+.f64 (*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y)) 0)
(*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y))
(cbrt.f64 (pow.f64 (/.f64 (*.f64 (sin.f64 x) (sinh.f64 y)) y) 3))
(+.f64 1 (-.f64 (*.f64 (sinh.f64 y) (/.f64 (sin.f64 x) y)) 1))
(+.f64 (*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y)) 0)
(*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y))
(cbrt.f64 (/.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (/.f64 y (sinh.f64 y)) 3)))
(+.f64 1 (-.f64 (*.f64 (sinh.f64 y) (/.f64 (sin.f64 x) y)) 1))
(+.f64 (*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y)) 0)
(*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y))
(expm1.f64 (log1p.f64 (/.f64 (*.f64 (sin.f64 x) (sinh.f64 y)) y)))
(+.f64 1 (-.f64 (*.f64 (sinh.f64 y) (/.f64 (sin.f64 x) y)) 1))
(+.f64 (*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y)) 0)
(*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y))
(log1p.f64 (expm1.f64 (/.f64 (*.f64 (sin.f64 x) (sinh.f64 y)) y)))
(+.f64 1 (-.f64 (*.f64 (sinh.f64 y) (/.f64 (sin.f64 x) y)) 1))
(+.f64 (*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y)) 0)
(*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y))
(exp.f64 (log.f64 (/.f64 (*.f64 (sin.f64 x) (sinh.f64 y)) y)))
(+.f64 1 (-.f64 (*.f64 (sinh.f64 y) (/.f64 (sin.f64 x) y)) 1))
(+.f64 (*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y)) 0)
(*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y))

eval37.0ms (0.7%)

Compiler

Compiled 2442 to 1031 computations (57.8% saved)

prune21.0ms (0.4%)

Pruning

4 alts after pruning (3 fresh and 1 done)

PrunedKeptTotal
New1603163
Fresh000
Picked011
Done000
Total1604164
Error
0b
Counts
164 → 4
Alt Table
Click to see full alt table
StatusErrorProgram
0.0b
(/.f64 (sin.f64 x) (/.f64 y (sinh.f64 y)))
0.5b
(/.f64 (sin.f64 x) (+.f64 1 (*.f64 -1/6 (*.f64 y y))))
0.5b
(*.f64 (sin.f64 x) (fma.f64 (*.f64 y y) 1/6 1))
0.8b
(sin.f64 x)
Compiler

Compiled 36 to 26 computations (27.8% saved)

localize3.0ms (0.1%)

Compiler

Compiled 5 to 3 computations (40% saved)

localize11.0ms (0.2%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(fma.f64 (*.f64 y y) 1/6 1)
0.0b
(*.f64 (sin.f64 x) (fma.f64 (*.f64 y y) 1/6 1))
Compiler

Compiled 26 to 13 computations (50% saved)

series4.0ms (0.1%)

Counts
2 → 36
Calls

9 calls:

TimeVariablePointExpression
1.0ms
x
@0
(*.f64 (sin.f64 x) (fma.f64 (*.f64 y y) 1/6 1))
1.0ms
x
@inf
(*.f64 (sin.f64 x) (fma.f64 (*.f64 y y) 1/6 1))
1.0ms
y
@inf
(*.f64 (sin.f64 x) (fma.f64 (*.f64 y y) 1/6 1))
1.0ms
y
@0
(*.f64 (sin.f64 x) (fma.f64 (*.f64 y y) 1/6 1))
0.0ms
x
@-inf
(*.f64 (sin.f64 x) (fma.f64 (*.f64 y y) 1/6 1))

rewrite47.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
742×pow1_binary64
683×add-log-exp_binary64
682×log1p-expm1-u_binary64
682×expm1-log1p-u_binary64
668×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0921
117221
2188721
Stop Event
node limit
Counts
2 → 36
Calls
Call 1
Inputs
(*.f64 (sin.f64 x) (fma.f64 (*.f64 y y) 1/6 1))
(fma.f64 (*.f64 y y) 1/6 1)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 y (*.f64 y 1/6)) (sin.f64 x)) (sin.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 x) (*.f64 y (*.f64 y 1/6))) (sin.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 (sin.f64 x) (fma.f64 (*.f64 y y) 1/6 1))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sin.f64 x) (fma.f64 (*.f64 y y) 1/6 1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sin.f64 x) (fma.f64 (*.f64 y y) 1/6 1)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (sin.f64 x) (fma.f64 (*.f64 y y) 1/6 1))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (sin.f64 x) (fma.f64 (*.f64 y y) 1/6 1))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (sin.f64 x) (fma.f64 (*.f64 y y) 1/6 1)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (sin.f64 x)) (fma.f64 (*.f64 y y) 1/6 1)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (sin.f64 x) (fma.f64 (*.f64 y y) 1/6 1)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (fma.f64 (*.f64 y y) 1/6 1) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (fma.f64 (*.f64 y y) 1/6 1) 3) (pow.f64 (sin.f64 x) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (sin.f64 x) (fma.f64 (*.f64 y y) 1/6 1))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (sin.f64 x) (fma.f64 (*.f64 y y) 1/6 1))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (sin.f64 x) (fma.f64 (*.f64 y y) 1/6 1))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 1 (*.f64 y (*.f64 y 1/6)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y (*.f64 y 1/6)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 y (*.f64 y 1/6)) 1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (fma.f64 (*.f64 y y) 1/6 1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 (*.f64 y y) 1/6 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (*.f64 y y) 1/6 1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 (*.f64 y y) 1/6 1)) (pow.f64 (cbrt.f64 (fma.f64 (*.f64 y y) 1/6 1)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 (*.f64 y y) 1/6 1)) 2) (cbrt.f64 (fma.f64 (*.f64 y y) 1/6 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 (*.f64 y y) 1/6 1)) (sqrt.f64 (fma.f64 (*.f64 y y) 1/6 1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 y (*.f64 y 1/6)) 3) 1) (+.f64 (*.f64 (*.f64 y (*.f64 y 1/6)) (*.f64 y (*.f64 y 1/6))) (-.f64 1 (*.f64 (*.f64 y (*.f64 y 1/6)) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 y (*.f64 y 1/6)) (*.f64 y (*.f64 y 1/6))) 1) (-.f64 (*.f64 y (*.f64 y 1/6)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 (*.f64 y y) 1/6 1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (*.f64 y y) 1/6 1) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 (*.f64 y y) 1/6 1)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 (*.f64 y y) 1/6 1)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 (*.f64 y y) 1/6 1) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 (*.f64 y y) 1/6 1)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 (*.f64 y y) 1/6 1) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 (*.f64 y y) 1/6 1)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 (*.f64 y y) 1/6 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 (*.f64 y y) 1/6 1)))))))

simplify48.0ms (0.9%)

Algorithm
egg-herbie
Rules
603×fma-def_binary64
598×times-frac_binary64
412×unswap-sqr_binary64
357×log-prod_binary64
266×*-commutative_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0110877
1302874
21316834
35236830
Stop Event
node limit
Counts
72 → 72
Calls
Call 1
Inputs
(*.f64 (+.f64 1 (*.f64 1/6 (pow.f64 y 2))) x)
(+.f64 (*.f64 (+.f64 1 (*.f64 1/6 (pow.f64 y 2))) x) (*.f64 -1/6 (*.f64 (+.f64 1 (*.f64 1/6 (pow.f64 y 2))) (pow.f64 x 3))))
(+.f64 (*.f64 1/120 (*.f64 (+.f64 1 (*.f64 1/6 (pow.f64 y 2))) (pow.f64 x 5))) (+.f64 (*.f64 (+.f64 1 (*.f64 1/6 (pow.f64 y 2))) x) (*.f64 -1/6 (*.f64 (+.f64 1 (*.f64 1/6 (pow.f64 y 2))) (pow.f64 x 3)))))
(+.f64 (*.f64 1/120 (*.f64 (+.f64 1 (*.f64 1/6 (pow.f64 y 2))) (pow.f64 x 5))) (+.f64 (*.f64 (+.f64 1 (*.f64 1/6 (pow.f64 y 2))) x) (+.f64 (*.f64 -1/6 (*.f64 (+.f64 1 (*.f64 1/6 (pow.f64 y 2))) (pow.f64 x 3))) (*.f64 -1/5040 (*.f64 (+.f64 1 (*.f64 1/6 (pow.f64 y 2))) (pow.f64 x 7))))))
(*.f64 (sin.f64 x) (+.f64 1 (*.f64 1/6 (pow.f64 y 2))))
(*.f64 (sin.f64 x) (+.f64 1 (*.f64 1/6 (pow.f64 y 2))))
(*.f64 (sin.f64 x) (+.f64 1 (*.f64 1/6 (pow.f64 y 2))))
(*.f64 (sin.f64 x) (+.f64 1 (*.f64 1/6 (pow.f64 y 2))))
(*.f64 (sin.f64 x) (+.f64 1 (*.f64 1/6 (pow.f64 y 2))))
(*.f64 (sin.f64 x) (+.f64 1 (*.f64 1/6 (pow.f64 y 2))))
(*.f64 (sin.f64 x) (+.f64 1 (*.f64 1/6 (pow.f64 y 2))))
(*.f64 (sin.f64 x) (+.f64 1 (*.f64 1/6 (pow.f64 y 2))))
(sin.f64 x)
(+.f64 (sin.f64 x) (*.f64 1/6 (*.f64 (pow.f64 y 2) (sin.f64 x))))
(+.f64 (sin.f64 x) (*.f64 1/6 (*.f64 (pow.f64 y 2) (sin.f64 x))))
(+.f64 (sin.f64 x) (*.f64 1/6 (*.f64 (pow.f64 y 2) (sin.f64 x))))
(*.f64 1/6 (*.f64 (pow.f64 y 2) (sin.f64 x)))
(+.f64 (sin.f64 x) (*.f64 1/6 (*.f64 (pow.f64 y 2) (sin.f64 x))))
(+.f64 (sin.f64 x) (*.f64 1/6 (*.f64 (pow.f64 y 2) (sin.f64 x))))
(+.f64 (sin.f64 x) (*.f64 1/6 (*.f64 (pow.f64 y 2) (sin.f64 x))))
(*.f64 1/6 (*.f64 (pow.f64 y 2) (sin.f64 x)))
(+.f64 (sin.f64 x) (*.f64 1/6 (*.f64 (pow.f64 y 2) (sin.f64 x))))
(+.f64 (sin.f64 x) (*.f64 1/6 (*.f64 (pow.f64 y 2) (sin.f64 x))))
(+.f64 (sin.f64 x) (*.f64 1/6 (*.f64 (pow.f64 y 2) (sin.f64 x))))
1
(+.f64 1 (*.f64 1/6 (pow.f64 y 2)))
(+.f64 1 (*.f64 1/6 (pow.f64 y 2)))
(+.f64 1 (*.f64 1/6 (pow.f64 y 2)))
(*.f64 1/6 (pow.f64 y 2))
(+.f64 1 (*.f64 1/6 (pow.f64 y 2)))
(+.f64 1 (*.f64 1/6 (pow.f64 y 2)))
(+.f64 1 (*.f64 1/6 (pow.f64 y 2)))
(*.f64 1/6 (pow.f64 y 2))
(+.f64 1 (*.f64 1/6 (pow.f64 y 2)))
(+.f64 1 (*.f64 1/6 (pow.f64 y 2)))
(+.f64 1 (*.f64 1/6 (pow.f64 y 2)))
(+.f64 (*.f64 (*.f64 y (*.f64 y 1/6)) (sin.f64 x)) (sin.f64 x))
(+.f64 (*.f64 (sin.f64 x) (*.f64 y (*.f64 y 1/6))) (sin.f64 x))
(-.f64 (+.f64 1 (*.f64 (sin.f64 x) (fma.f64 (*.f64 y y) 1/6 1))) 1)
(pow.f64 (*.f64 (sin.f64 x) (fma.f64 (*.f64 y y) 1/6 1)) 1)
(pow.f64 (pow.f64 (*.f64 (sin.f64 x) (fma.f64 (*.f64 y y) 1/6 1)) 3) 1/3)
(pow.f64 (cbrt.f64 (*.f64 (sin.f64 x) (fma.f64 (*.f64 y y) 1/6 1))) 3)
(pow.f64 (sqrt.f64 (*.f64 (sin.f64 x) (fma.f64 (*.f64 y y) 1/6 1))) 2)
(sqrt.f64 (pow.f64 (*.f64 (sin.f64 x) (fma.f64 (*.f64 y y) 1/6 1)) 2))
(log.f64 (pow.f64 (exp.f64 (sin.f64 x)) (fma.f64 (*.f64 y y) 1/6 1)))
(cbrt.f64 (pow.f64 (*.f64 (sin.f64 x) (fma.f64 (*.f64 y y) 1/6 1)) 3))
(cbrt.f64 (*.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (fma.f64 (*.f64 y y) 1/6 1) 3)))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 (*.f64 y y) 1/6 1) 3) (pow.f64 (sin.f64 x) 3)))
(expm1.f64 (log1p.f64 (*.f64 (sin.f64 x) (fma.f64 (*.f64 y y) 1/6 1))))
(log1p.f64 (expm1.f64 (*.f64 (sin.f64 x) (fma.f64 (*.f64 y y) 1/6 1))))
(exp.f64 (log.f64 (*.f64 (sin.f64 x) (fma.f64 (*.f64 y y) 1/6 1))))
(+.f64 1 (*.f64 y (*.f64 y 1/6)))
(+.f64 (*.f64 y (*.f64 y 1/6)) 1)
(+.f64 (*.f64 (*.f64 y (*.f64 y 1/6)) 1) 1)
(-.f64 (+.f64 1 (fma.f64 (*.f64 y y) 1/6 1)) 1)
(*.f64 1 (fma.f64 (*.f64 y y) 1/6 1))
(*.f64 (fma.f64 (*.f64 y y) 1/6 1) 1)
(*.f64 (cbrt.f64 (fma.f64 (*.f64 y y) 1/6 1)) (pow.f64 (cbrt.f64 (fma.f64 (*.f64 y y) 1/6 1)) 2))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 (*.f64 y y) 1/6 1)) 2) (cbrt.f64 (fma.f64 (*.f64 y y) 1/6 1)))
(*.f64 (sqrt.f64 (fma.f64 (*.f64 y y) 1/6 1)) (sqrt.f64 (fma.f64 (*.f64 y y) 1/6 1)))
(/.f64 (+.f64 (pow.f64 (*.f64 y (*.f64 y 1/6)) 3) 1) (+.f64 (*.f64 (*.f64 y (*.f64 y 1/6)) (*.f64 y (*.f64 y 1/6))) (-.f64 1 (*.f64 (*.f64 y (*.f64 y 1/6)) 1))))
(/.f64 (-.f64 (*.f64 (*.f64 y (*.f64 y 1/6)) (*.f64 y (*.f64 y 1/6))) 1) (-.f64 (*.f64 y (*.f64 y 1/6)) 1))
(pow.f64 (fma.f64 (*.f64 y y) 1/6 1) 1)
(pow.f64 (pow.f64 (fma.f64 (*.f64 y y) 1/6 1) 3) 1/3)
(pow.f64 (cbrt.f64 (fma.f64 (*.f64 y y) 1/6 1)) 3)
(pow.f64 (sqrt.f64 (fma.f64 (*.f64 y y) 1/6 1)) 2)
(sqrt.f64 (pow.f64 (fma.f64 (*.f64 y y) 1/6 1) 2))
(log.f64 (exp.f64 (fma.f64 (*.f64 y y) 1/6 1)))
(cbrt.f64 (pow.f64 (fma.f64 (*.f64 y y) 1/6 1) 3))
(expm1.f64 (log1p.f64 (fma.f64 (*.f64 y y) 1/6 1)))
(log1p.f64 (expm1.f64 (fma.f64 (*.f64 y y) 1/6 1)))
(exp.f64 (log.f64 (fma.f64 (*.f64 y y) 1/6 1)))
Outputs
(*.f64 (+.f64 1 (*.f64 1/6 (pow.f64 y 2))) x)
(*.f64 x (fma.f64 y (*.f64 1/6 y) 1))
(*.f64 x (fma.f64 1/6 (*.f64 y y) 1))
(+.f64 (*.f64 (+.f64 1 (*.f64 1/6 (pow.f64 y 2))) x) (*.f64 -1/6 (*.f64 (+.f64 1 (*.f64 1/6 (pow.f64 y 2))) (pow.f64 x 3))))
(fma.f64 (fma.f64 y (*.f64 1/6 y) 1) x (*.f64 -1/6 (*.f64 (pow.f64 x 3) (fma.f64 y (*.f64 1/6 y) 1))))
(fma.f64 x (fma.f64 1/6 (*.f64 y y) 1) (*.f64 -1/6 (*.f64 (pow.f64 x 3) (fma.f64 1/6 (*.f64 y y) 1))))
(*.f64 (fma.f64 y (*.f64 1/6 y) 1) (+.f64 x (*.f64 -1/6 (pow.f64 x 3))))
(*.f64 (fma.f64 1/6 (*.f64 y y) 1) (+.f64 x (*.f64 -1/6 (pow.f64 x 3))))
(+.f64 (*.f64 1/120 (*.f64 (+.f64 1 (*.f64 1/6 (pow.f64 y 2))) (pow.f64 x 5))) (+.f64 (*.f64 (+.f64 1 (*.f64 1/6 (pow.f64 y 2))) x) (*.f64 -1/6 (*.f64 (+.f64 1 (*.f64 1/6 (pow.f64 y 2))) (pow.f64 x 3)))))
(fma.f64 1/120 (*.f64 (pow.f64 x 5) (fma.f64 y (*.f64 1/6 y) 1)) (fma.f64 (fma.f64 y (*.f64 1/6 y) 1) x (*.f64 -1/6 (*.f64 (pow.f64 x 3) (fma.f64 y (*.f64 1/6 y) 1)))))
(fma.f64 1/120 (*.f64 (pow.f64 x 5) (fma.f64 1/6 (*.f64 y y) 1)) (fma.f64 x (fma.f64 1/6 (*.f64 y y) 1) (*.f64 -1/6 (*.f64 (pow.f64 x 3) (fma.f64 1/6 (*.f64 y y) 1)))))
(fma.f64 x (fma.f64 y (*.f64 1/6 y) 1) (*.f64 (fma.f64 y (*.f64 1/6 y) 1) (+.f64 (*.f64 1/120 (pow.f64 x 5)) (*.f64 -1/6 (pow.f64 x 3)))))
(fma.f64 (pow.f64 x 3) (+.f64 -1/6 (*.f64 (*.f64 y y) -1/36)) (*.f64 (fma.f64 1/6 (*.f64 y y) 1) (+.f64 x (*.f64 1/120 (pow.f64 x 5)))))
(+.f64 (*.f64 1/120 (*.f64 (+.f64 1 (*.f64 1/6 (pow.f64 y 2))) (pow.f64 x 5))) (+.f64 (*.f64 (+.f64 1 (*.f64 1/6 (pow.f64 y 2))) x) (+.f64 (*.f64 -1/6 (*.f64 (+.f64 1 (*.f64 1/6 (pow.f64 y 2))) (pow.f64 x 3))) (*.f64 -1/5040 (*.f64 (+.f64 1 (*.f64 1/6 (pow.f64 y 2))) (pow.f64 x 7))))))
(fma.f64 1/120 (*.f64 (pow.f64 x 5) (fma.f64 y (*.f64 1/6 y) 1)) (fma.f64 (fma.f64 y (*.f64 1/6 y) 1) x (fma.f64 -1/6 (*.f64 (pow.f64 x 3) (fma.f64 y (*.f64 1/6 y) 1)) (*.f64 -1/5040 (*.f64 (pow.f64 x 7) (fma.f64 y (*.f64 1/6 y) 1))))))
(fma.f64 1/120 (*.f64 (pow.f64 x 5) (fma.f64 1/6 (*.f64 y y) 1)) (fma.f64 x (fma.f64 1/6 (*.f64 y y) 1) (fma.f64 -1/6 (*.f64 (pow.f64 x 3) (fma.f64 1/6 (*.f64 y y) 1)) (*.f64 -1/5040 (*.f64 (pow.f64 x 7) (fma.f64 1/6 (*.f64 y y) 1))))))
(+.f64 (*.f64 (fma.f64 y (*.f64 1/6 y) 1) (+.f64 (*.f64 -1/6 (pow.f64 x 3)) (*.f64 -1/5040 (pow.f64 x 7)))) (*.f64 (fma.f64 y (*.f64 1/6 y) 1) (+.f64 x (*.f64 1/120 (pow.f64 x 5)))))
(+.f64 (*.f64 (fma.f64 1/6 (*.f64 y y) 1) (+.f64 x (*.f64 -1/6 (pow.f64 x 3)))) (*.f64 (fma.f64 1/6 (*.f64 y y) 1) (+.f64 (*.f64 -1/5040 (pow.f64 x 7)) (*.f64 1/120 (pow.f64 x 5)))))
(*.f64 (sin.f64 x) (+.f64 1 (*.f64 1/6 (pow.f64 y 2))))
(*.f64 (sin.f64 x) (fma.f64 y (*.f64 1/6 y) 1))
(*.f64 (sin.f64 x) (fma.f64 1/6 (*.f64 y y) 1))
(*.f64 (sin.f64 x) (+.f64 1 (*.f64 1/6 (pow.f64 y 2))))
(*.f64 (sin.f64 x) (fma.f64 y (*.f64 1/6 y) 1))
(*.f64 (sin.f64 x) (fma.f64 1/6 (*.f64 y y) 1))
(*.f64 (sin.f64 x) (+.f64 1 (*.f64 1/6 (pow.f64 y 2))))
(*.f64 (sin.f64 x) (fma.f64 y (*.f64 1/6 y) 1))
(*.f64 (sin.f64 x) (fma.f64 1/6 (*.f64 y y) 1))
(*.f64 (sin.f64 x) (+.f64 1 (*.f64 1/6 (pow.f64 y 2))))
(*.f64 (sin.f64 x) (fma.f64 y (*.f64 1/6 y) 1))
(*.f64 (sin.f64 x) (fma.f64 1/6 (*.f64 y y) 1))
(*.f64 (sin.f64 x) (+.f64 1 (*.f64 1/6 (pow.f64 y 2))))
(*.f64 (sin.f64 x) (fma.f64 y (*.f64 1/6 y) 1))
(*.f64 (sin.f64 x) (fma.f64 1/6 (*.f64 y y) 1))
(*.f64 (sin.f64 x) (+.f64 1 (*.f64 1/6 (pow.f64 y 2))))
(*.f64 (sin.f64 x) (fma.f64 y (*.f64 1/6 y) 1))
(*.f64 (sin.f64 x) (fma.f64 1/6 (*.f64 y y) 1))
(*.f64 (sin.f64 x) (+.f64 1 (*.f64 1/6 (pow.f64 y 2))))
(*.f64 (sin.f64 x) (fma.f64 y (*.f64 1/6 y) 1))
(*.f64 (sin.f64 x) (fma.f64 1/6 (*.f64 y y) 1))
(*.f64 (sin.f64 x) (+.f64 1 (*.f64 1/6 (pow.f64 y 2))))
(*.f64 (sin.f64 x) (fma.f64 y (*.f64 1/6 y) 1))
(*.f64 (sin.f64 x) (fma.f64 1/6 (*.f64 y y) 1))
(sin.f64 x)
(+.f64 (sin.f64 x) (*.f64 1/6 (*.f64 (pow.f64 y 2) (sin.f64 x))))
(*.f64 (sin.f64 x) (fma.f64 y (*.f64 1/6 y) 1))
(*.f64 (sin.f64 x) (fma.f64 1/6 (*.f64 y y) 1))
(+.f64 (sin.f64 x) (*.f64 1/6 (*.f64 (pow.f64 y 2) (sin.f64 x))))
(*.f64 (sin.f64 x) (fma.f64 y (*.f64 1/6 y) 1))
(*.f64 (sin.f64 x) (fma.f64 1/6 (*.f64 y y) 1))
(+.f64 (sin.f64 x) (*.f64 1/6 (*.f64 (pow.f64 y 2) (sin.f64 x))))
(*.f64 (sin.f64 x) (fma.f64 y (*.f64 1/6 y) 1))
(*.f64 (sin.f64 x) (fma.f64 1/6 (*.f64 y y) 1))
(*.f64 1/6 (*.f64 (pow.f64 y 2) (sin.f64 x)))
(*.f64 (sin.f64 x) (*.f64 1/6 (*.f64 y y)))
(*.f64 1/6 (*.f64 y (*.f64 y (sin.f64 x))))
(+.f64 (sin.f64 x) (*.f64 1/6 (*.f64 (pow.f64 y 2) (sin.f64 x))))
(*.f64 (sin.f64 x) (fma.f64 y (*.f64 1/6 y) 1))
(*.f64 (sin.f64 x) (fma.f64 1/6 (*.f64 y y) 1))
(+.f64 (sin.f64 x) (*.f64 1/6 (*.f64 (pow.f64 y 2) (sin.f64 x))))
(*.f64 (sin.f64 x) (fma.f64 y (*.f64 1/6 y) 1))
(*.f64 (sin.f64 x) (fma.f64 1/6 (*.f64 y y) 1))
(+.f64 (sin.f64 x) (*.f64 1/6 (*.f64 (pow.f64 y 2) (sin.f64 x))))
(*.f64 (sin.f64 x) (fma.f64 y (*.f64 1/6 y) 1))
(*.f64 (sin.f64 x) (fma.f64 1/6 (*.f64 y y) 1))
(*.f64 1/6 (*.f64 (pow.f64 y 2) (sin.f64 x)))
(*.f64 (sin.f64 x) (*.f64 1/6 (*.f64 y y)))
(*.f64 1/6 (*.f64 y (*.f64 y (sin.f64 x))))
(+.f64 (sin.f64 x) (*.f64 1/6 (*.f64 (pow.f64 y 2) (sin.f64 x))))
(*.f64 (sin.f64 x) (fma.f64 y (*.f64 1/6 y) 1))
(*.f64 (sin.f64 x) (fma.f64 1/6 (*.f64 y y) 1))
(+.f64 (sin.f64 x) (*.f64 1/6 (*.f64 (pow.f64 y 2) (sin.f64 x))))
(*.f64 (sin.f64 x) (fma.f64 y (*.f64 1/6 y) 1))
(*.f64 (sin.f64 x) (fma.f64 1/6 (*.f64 y y) 1))
(+.f64 (sin.f64 x) (*.f64 1/6 (*.f64 (pow.f64 y 2) (sin.f64 x))))
(*.f64 (sin.f64 x) (fma.f64 y (*.f64 1/6 y) 1))
(*.f64 (sin.f64 x) (fma.f64 1/6 (*.f64 y y) 1))
1
(+.f64 1 (*.f64 1/6 (pow.f64 y 2)))
(fma.f64 y (*.f64 1/6 y) 1)
(fma.f64 1/6 (*.f64 y y) 1)
(+.f64 1 (*.f64 1/6 (pow.f64 y 2)))
(fma.f64 y (*.f64 1/6 y) 1)
(fma.f64 1/6 (*.f64 y y) 1)
(+.f64 1 (*.f64 1/6 (pow.f64 y 2)))
(fma.f64 y (*.f64 1/6 y) 1)
(fma.f64 1/6 (*.f64 y y) 1)
(*.f64 1/6 (pow.f64 y 2))
(*.f64 1/6 (*.f64 y y))
(+.f64 1 (*.f64 1/6 (pow.f64 y 2)))
(fma.f64 y (*.f64 1/6 y) 1)
(fma.f64 1/6 (*.f64 y y) 1)
(+.f64 1 (*.f64 1/6 (pow.f64 y 2)))
(fma.f64 y (*.f64 1/6 y) 1)
(fma.f64 1/6 (*.f64 y y) 1)
(+.f64 1 (*.f64 1/6 (pow.f64 y 2)))
(fma.f64 y (*.f64 1/6 y) 1)
(fma.f64 1/6 (*.f64 y y) 1)
(*.f64 1/6 (pow.f64 y 2))
(*.f64 1/6 (*.f64 y y))
(+.f64 1 (*.f64 1/6 (pow.f64 y 2)))
(fma.f64 y (*.f64 1/6 y) 1)
(fma.f64 1/6 (*.f64 y y) 1)
(+.f64 1 (*.f64 1/6 (pow.f64 y 2)))
(fma.f64 y (*.f64 1/6 y) 1)
(fma.f64 1/6 (*.f64 y y) 1)
(+.f64 1 (*.f64 1/6 (pow.f64 y 2)))
(fma.f64 y (*.f64 1/6 y) 1)
(fma.f64 1/6 (*.f64 y y) 1)
(+.f64 (*.f64 (*.f64 y (*.f64 y 1/6)) (sin.f64 x)) (sin.f64 x))
(*.f64 (sin.f64 x) (fma.f64 y (*.f64 1/6 y) 1))
(*.f64 (sin.f64 x) (fma.f64 1/6 (*.f64 y y) 1))
(+.f64 (*.f64 (sin.f64 x) (*.f64 y (*.f64 y 1/6))) (sin.f64 x))
(*.f64 (sin.f64 x) (fma.f64 y (*.f64 1/6 y) 1))
(*.f64 (sin.f64 x) (fma.f64 1/6 (*.f64 y y) 1))
(-.f64 (+.f64 1 (*.f64 (sin.f64 x) (fma.f64 (*.f64 y y) 1/6 1))) 1)
(*.f64 (sin.f64 x) (fma.f64 y (*.f64 1/6 y) 1))
(*.f64 (sin.f64 x) (fma.f64 1/6 (*.f64 y y) 1))
(pow.f64 (*.f64 (sin.f64 x) (fma.f64 (*.f64 y y) 1/6 1)) 1)
(*.f64 (sin.f64 x) (fma.f64 y (*.f64 1/6 y) 1))
(*.f64 (sin.f64 x) (fma.f64 1/6 (*.f64 y y) 1))
(pow.f64 (pow.f64 (*.f64 (sin.f64 x) (fma.f64 (*.f64 y y) 1/6 1)) 3) 1/3)
(*.f64 (sin.f64 x) (fma.f64 y (*.f64 1/6 y) 1))
(*.f64 (sin.f64 x) (fma.f64 1/6 (*.f64 y y) 1))
(pow.f64 (cbrt.f64 (*.f64 (sin.f64 x) (fma.f64 (*.f64 y y) 1/6 1))) 3)
(*.f64 (sin.f64 x) (fma.f64 y (*.f64 1/6 y) 1))
(*.f64 (sin.f64 x) (fma.f64 1/6 (*.f64 y y) 1))
(pow.f64 (sqrt.f64 (*.f64 (sin.f64 x) (fma.f64 (*.f64 y y) 1/6 1))) 2)
(*.f64 (sin.f64 x) (fma.f64 y (*.f64 1/6 y) 1))
(*.f64 (sin.f64 x) (fma.f64 1/6 (*.f64 y y) 1))
(sqrt.f64 (pow.f64 (*.f64 (sin.f64 x) (fma.f64 (*.f64 y y) 1/6 1)) 2))
(*.f64 (sin.f64 x) (fma.f64 y (*.f64 1/6 y) 1))
(*.f64 (sin.f64 x) (fma.f64 1/6 (*.f64 y y) 1))
(log.f64 (pow.f64 (exp.f64 (sin.f64 x)) (fma.f64 (*.f64 y y) 1/6 1)))
(*.f64 (sin.f64 x) (fma.f64 y (*.f64 1/6 y) 1))
(*.f64 (sin.f64 x) (fma.f64 1/6 (*.f64 y y) 1))
(cbrt.f64 (pow.f64 (*.f64 (sin.f64 x) (fma.f64 (*.f64 y y) 1/6 1)) 3))
(*.f64 (sin.f64 x) (fma.f64 y (*.f64 1/6 y) 1))
(*.f64 (sin.f64 x) (fma.f64 1/6 (*.f64 y y) 1))
(cbrt.f64 (*.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (fma.f64 (*.f64 y y) 1/6 1) 3)))
(*.f64 (sin.f64 x) (fma.f64 y (*.f64 1/6 y) 1))
(*.f64 (sin.f64 x) (fma.f64 1/6 (*.f64 y y) 1))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 (*.f64 y y) 1/6 1) 3) (pow.f64 (sin.f64 x) 3)))
(*.f64 (sin.f64 x) (fma.f64 y (*.f64 1/6 y) 1))
(*.f64 (sin.f64 x) (fma.f64 1/6 (*.f64 y y) 1))
(expm1.f64 (log1p.f64 (*.f64 (sin.f64 x) (fma.f64 (*.f64 y y) 1/6 1))))
(*.f64 (sin.f64 x) (fma.f64 y (*.f64 1/6 y) 1))
(*.f64 (sin.f64 x) (fma.f64 1/6 (*.f64 y y) 1))
(log1p.f64 (expm1.f64 (*.f64 (sin.f64 x) (fma.f64 (*.f64 y y) 1/6 1))))
(*.f64 (sin.f64 x) (fma.f64 y (*.f64 1/6 y) 1))
(*.f64 (sin.f64 x) (fma.f64 1/6 (*.f64 y y) 1))
(exp.f64 (log.f64 (*.f64 (sin.f64 x) (fma.f64 (*.f64 y y) 1/6 1))))
(*.f64 (sin.f64 x) (fma.f64 y (*.f64 1/6 y) 1))
(*.f64 (sin.f64 x) (fma.f64 1/6 (*.f64 y y) 1))
(+.f64 1 (*.f64 y (*.f64 y 1/6)))
(fma.f64 y (*.f64 1/6 y) 1)
(fma.f64 1/6 (*.f64 y y) 1)
(+.f64 (*.f64 y (*.f64 y 1/6)) 1)
(fma.f64 y (*.f64 1/6 y) 1)
(fma.f64 1/6 (*.f64 y y) 1)
(+.f64 (*.f64 (*.f64 y (*.f64 y 1/6)) 1) 1)
(fma.f64 y (*.f64 1/6 y) 1)
(fma.f64 1/6 (*.f64 y y) 1)
(-.f64 (+.f64 1 (fma.f64 (*.f64 y y) 1/6 1)) 1)
(fma.f64 y (*.f64 1/6 y) 1)
(fma.f64 1/6 (*.f64 y y) 1)
(*.f64 1 (fma.f64 (*.f64 y y) 1/6 1))
(fma.f64 y (*.f64 1/6 y) 1)
(fma.f64 1/6 (*.f64 y y) 1)
(*.f64 (fma.f64 (*.f64 y y) 1/6 1) 1)
(fma.f64 y (*.f64 1/6 y) 1)
(fma.f64 1/6 (*.f64 y y) 1)
(*.f64 (cbrt.f64 (fma.f64 (*.f64 y y) 1/6 1)) (pow.f64 (cbrt.f64 (fma.f64 (*.f64 y y) 1/6 1)) 2))
(fma.f64 y (*.f64 1/6 y) 1)
(fma.f64 1/6 (*.f64 y y) 1)
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 (*.f64 y y) 1/6 1)) 2) (cbrt.f64 (fma.f64 (*.f64 y y) 1/6 1)))
(fma.f64 y (*.f64 1/6 y) 1)
(fma.f64 1/6 (*.f64 y y) 1)
(*.f64 (sqrt.f64 (fma.f64 (*.f64 y y) 1/6 1)) (sqrt.f64 (fma.f64 (*.f64 y y) 1/6 1)))
(fma.f64 y (*.f64 1/6 y) 1)
(fma.f64 1/6 (*.f64 y y) 1)
(/.f64 (+.f64 (pow.f64 (*.f64 y (*.f64 y 1/6)) 3) 1) (+.f64 (*.f64 (*.f64 y (*.f64 y 1/6)) (*.f64 y (*.f64 y 1/6))) (-.f64 1 (*.f64 (*.f64 y (*.f64 y 1/6)) 1))))
(/.f64 (+.f64 1 (pow.f64 (*.f64 1/6 (*.f64 y y)) 3)) (fma.f64 (*.f64 1/6 (*.f64 y y)) (*.f64 1/6 (*.f64 y y)) (-.f64 1 (*.f64 1/6 (*.f64 y y)))))
(/.f64 (+.f64 1 (*.f64 1/216 (pow.f64 (*.f64 y y) 3))) (fma.f64 y (*.f64 1/6 (*.f64 1/6 (pow.f64 y 3))) (+.f64 1 (*.f64 (*.f64 y y) -1/6))))
(/.f64 (fma.f64 1/216 (pow.f64 (*.f64 y y) 3) 1) (fma.f64 1/36 (pow.f64 y 4) (fma.f64 y (*.f64 y -1/6) 1)))
(/.f64 (fma.f64 1/216 (pow.f64 y 6) 1) (fma.f64 1/36 (pow.f64 y 4) (fma.f64 y (*.f64 y -1/6) 1)))
(/.f64 (-.f64 (*.f64 (*.f64 y (*.f64 y 1/6)) (*.f64 y (*.f64 y 1/6))) 1) (-.f64 (*.f64 y (*.f64 y 1/6)) 1))
(fma.f64 y (*.f64 1/6 y) 1)
(fma.f64 1/6 (*.f64 y y) 1)
(pow.f64 (fma.f64 (*.f64 y y) 1/6 1) 1)
(fma.f64 y (*.f64 1/6 y) 1)
(fma.f64 1/6 (*.f64 y y) 1)
(pow.f64 (pow.f64 (fma.f64 (*.f64 y y) 1/6 1) 3) 1/3)
(fma.f64 y (*.f64 1/6 y) 1)
(fma.f64 1/6 (*.f64 y y) 1)
(pow.f64 (cbrt.f64 (fma.f64 (*.f64 y y) 1/6 1)) 3)
(fma.f64 y (*.f64 1/6 y) 1)
(fma.f64 1/6 (*.f64 y y) 1)
(pow.f64 (sqrt.f64 (fma.f64 (*.f64 y y) 1/6 1)) 2)
(fma.f64 y (*.f64 1/6 y) 1)
(fma.f64 1/6 (*.f64 y y) 1)
(sqrt.f64 (pow.f64 (fma.f64 (*.f64 y y) 1/6 1) 2))
(fma.f64 y (*.f64 1/6 y) 1)
(fma.f64 1/6 (*.f64 y y) 1)
(log.f64 (exp.f64 (fma.f64 (*.f64 y y) 1/6 1)))
(fma.f64 y (*.f64 1/6 y) 1)
(fma.f64 1/6 (*.f64 y y) 1)
(cbrt.f64 (pow.f64 (fma.f64 (*.f64 y y) 1/6 1) 3))
(fma.f64 y (*.f64 1/6 y) 1)
(fma.f64 1/6 (*.f64 y y) 1)
(expm1.f64 (log1p.f64 (fma.f64 (*.f64 y y) 1/6 1)))
(fma.f64 y (*.f64 1/6 y) 1)
(fma.f64 1/6 (*.f64 y y) 1)
(log1p.f64 (expm1.f64 (fma.f64 (*.f64 y y) 1/6 1)))
(fma.f64 y (*.f64 1/6 y) 1)
(fma.f64 1/6 (*.f64 y y) 1)
(exp.f64 (log.f64 (fma.f64 (*.f64 y y) 1/6 1)))
(fma.f64 y (*.f64 1/6 y) 1)
(fma.f64 1/6 (*.f64 y y) 1)

localize13.0ms (0.3%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.2b
(*.f64 -1/6 (*.f64 y y))
Compiler

Compiled 33 to 17 computations (48.5% saved)

series1.0ms (0%)

Counts
1 → 12
Calls

3 calls:

TimeVariablePointExpression
0.0ms
y
@0
(*.f64 -1/6 (*.f64 y y))
0.0ms
y
@inf
(*.f64 -1/6 (*.f64 y y))
0.0ms
y
@-inf
(*.f64 -1/6 (*.f64 y y))

rewrite35.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
432×pow1_binary64
422×add-sqr-sqrt_binary64
411×*-un-lft-identity_binary64
403×add-log-exp_binary64
403×log1p-expm1-u_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
057
11027
211507
Stop Event
node limit
Counts
1 → 14
Calls
Call 1
Inputs
(*.f64 -1/6 (*.f64 y y))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 -1/6 (*.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 -1/6) (*.f64 y y))) (cbrt.f64 (pow.f64 (exp.f64 -1/6) (*.f64 y y))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 -1/6) (*.f64 y y)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 -1/6) (*.f64 y y)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 -1/6) (*.f64 y y)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 -1/6 (*.f64 y y))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 -1/6 (*.f64 y y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 -1/6 (*.f64 y y)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 -1/6 (*.f64 y y))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 y (sqrt.f64 -1/6)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 1/36 (pow.f64 y 4)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 -1/6) (*.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 -1/6 (*.f64 y y)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 -1/6 (*.f64 y y))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 -1/6 (*.f64 y y))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 -1/6 (*.f64 y y))))))))

simplify39.0ms (0.8%)

Algorithm
egg-herbie
Rules
1079×log-prod_binary64
425×associate-*l*_binary64
382×associate-*r*_binary64
318×associate-+l+_binary64
306×fma-neg_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
046216
1102206
2360191
32980191
46248191
Stop Event
node limit
Counts
26 → 18
Calls
Call 1
Inputs
(*.f64 -1/6 (pow.f64 y 2))
(*.f64 -1/6 (pow.f64 y 2))
(*.f64 -1/6 (pow.f64 y 2))
(*.f64 -1/6 (pow.f64 y 2))
(*.f64 -1/6 (pow.f64 y 2))
(*.f64 -1/6 (pow.f64 y 2))
(*.f64 -1/6 (pow.f64 y 2))
(*.f64 -1/6 (pow.f64 y 2))
(*.f64 -1/6 (pow.f64 y 2))
(*.f64 -1/6 (pow.f64 y 2))
(*.f64 -1/6 (pow.f64 y 2))
(*.f64 -1/6 (pow.f64 y 2))
(+.f64 0 (*.f64 -1/6 (*.f64 y y)))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 -1/6) (*.f64 y y))) (cbrt.f64 (pow.f64 (exp.f64 -1/6) (*.f64 y y))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 -1/6) (*.f64 y y)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 -1/6) (*.f64 y y)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 -1/6) (*.f64 y y)))))
(-.f64 (+.f64 1 (*.f64 -1/6 (*.f64 y y))) 1)
(pow.f64 (*.f64 -1/6 (*.f64 y y)) 1)
(pow.f64 (pow.f64 (*.f64 -1/6 (*.f64 y y)) 3) 1/3)
(pow.f64 (cbrt.f64 (*.f64 -1/6 (*.f64 y y))) 3)
(pow.f64 (*.f64 y (sqrt.f64 -1/6)) 2)
(sqrt.f64 (*.f64 1/36 (pow.f64 y 4)))
(log.f64 (pow.f64 (exp.f64 -1/6) (*.f64 y y)))
(cbrt.f64 (pow.f64 (*.f64 -1/6 (*.f64 y y)) 3))
(expm1.f64 (log1p.f64 (*.f64 -1/6 (*.f64 y y))))
(log1p.f64 (expm1.f64 (*.f64 -1/6 (*.f64 y y))))
(exp.f64 (log.f64 (*.f64 -1/6 (*.f64 y y))))
Outputs
(*.f64 -1/6 (pow.f64 y 2))
(*.f64 -1/6 (*.f64 y y))
(*.f64 -1/6 (pow.f64 y 2))
(*.f64 -1/6 (*.f64 y y))
(*.f64 -1/6 (pow.f64 y 2))
(*.f64 -1/6 (*.f64 y y))
(*.f64 -1/6 (pow.f64 y 2))
(*.f64 -1/6 (*.f64 y y))
(*.f64 -1/6 (pow.f64 y 2))
(*.f64 -1/6 (*.f64 y y))
(*.f64 -1/6 (pow.f64 y 2))
(*.f64 -1/6 (*.f64 y y))
(*.f64 -1/6 (pow.f64 y 2))
(*.f64 -1/6 (*.f64 y y))
(*.f64 -1/6 (pow.f64 y 2))
(*.f64 -1/6 (*.f64 y y))
(*.f64 -1/6 (pow.f64 y 2))
(*.f64 -1/6 (*.f64 y y))
(*.f64 -1/6 (pow.f64 y 2))
(*.f64 -1/6 (*.f64 y y))
(*.f64 -1/6 (pow.f64 y 2))
(*.f64 -1/6 (*.f64 y y))
(*.f64 -1/6 (pow.f64 y 2))
(*.f64 -1/6 (*.f64 y y))
(+.f64 0 (*.f64 -1/6 (*.f64 y y)))
(*.f64 -1/6 (*.f64 y y))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 -1/6) (*.f64 y y))) (cbrt.f64 (pow.f64 (exp.f64 -1/6) (*.f64 y y))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 -1/6) (*.f64 y y)))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 -1/6) (*.f64 y y))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 -1/6) (*.f64 y y)))))
(*.f64 3 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 -1/6) (*.f64 y y)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 -1/6) (*.f64 y y)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 -1/6) (*.f64 y y)))))
(*.f64 -1/6 (*.f64 y y))
(-.f64 (+.f64 1 (*.f64 -1/6 (*.f64 y y))) 1)
(*.f64 -1/6 (*.f64 y y))
(pow.f64 (*.f64 -1/6 (*.f64 y y)) 1)
(*.f64 -1/6 (*.f64 y y))
(pow.f64 (pow.f64 (*.f64 -1/6 (*.f64 y y)) 3) 1/3)
(*.f64 -1/6 (*.f64 y y))
(pow.f64 (cbrt.f64 (*.f64 -1/6 (*.f64 y y))) 3)
(*.f64 -1/6 (*.f64 y y))
(pow.f64 (*.f64 y (sqrt.f64 -1/6)) 2)
(*.f64 -1/6 (*.f64 y y))
(sqrt.f64 (*.f64 1/36 (pow.f64 y 4)))
(*.f64 -1/6 (*.f64 y y))
(log.f64 (pow.f64 (exp.f64 -1/6) (*.f64 y y)))
(*.f64 -1/6 (*.f64 y y))
(cbrt.f64 (pow.f64 (*.f64 -1/6 (*.f64 y y)) 3))
(*.f64 -1/6 (*.f64 y y))
(expm1.f64 (log1p.f64 (*.f64 -1/6 (*.f64 y y))))
(*.f64 -1/6 (*.f64 y y))
(log1p.f64 (expm1.f64 (*.f64 -1/6 (*.f64 y y))))
(*.f64 -1/6 (*.f64 y y))
(exp.f64 (log.f64 (*.f64 -1/6 (*.f64 y y))))
(*.f64 -1/6 (*.f64 y y))

eval27.0ms (0.5%)

Compiler

Compiled 1429 to 915 computations (36% saved)

prune12.0ms (0.2%)

Pruning

4 alts after pruning (2 fresh and 2 done)

PrunedKeptTotal
New88290
Fresh000
Picked101
Done123
Total90494
Error
0b
Counts
94 → 4
Alt Table
Click to see full alt table
StatusErrorProgram
0.0b
(/.f64 (sin.f64 x) (/.f64 y (sinh.f64 y)))
0.5b
(*.f64 (sin.f64 x) (/.f64 (-.f64 (*.f64 (*.f64 y (*.f64 y 1/6)) (*.f64 y (*.f64 y 1/6))) 1) (-.f64 (*.f64 y (*.f64 y 1/6)) 1)))
32.1b
(*.f64 x (fma.f64 y (*.f64 1/6 y) 1))
0.8b
(sin.f64 x)
Compiler

Compiled 49 to 35 computations (28.6% saved)

localize9.0ms (0.2%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(*.f64 x (fma.f64 y (*.f64 1/6 y) 1))
0.3b
(*.f64 1/6 y)
Compiler

Compiled 23 to 15 computations (34.8% saved)

series7.0ms (0.1%)

Counts
2 → 24
Calls

9 calls:

TimeVariablePointExpression
3.0ms
y
@-inf
(*.f64 x (fma.f64 y (*.f64 1/6 y) 1))
1.0ms
x
@0
(*.f64 x (fma.f64 y (*.f64 1/6 y) 1))
1.0ms
y
@0
(*.f64 x (fma.f64 y (*.f64 1/6 y) 1))
1.0ms
y
@inf
(*.f64 x (fma.f64 y (*.f64 1/6 y) 1))
0.0ms
x
@-inf
(*.f64 x (fma.f64 y (*.f64 1/6 y) 1))

rewrite45.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
678×pow1_binary64
623×add-log-exp_binary64
623×log1p-expm1-u_binary64
623×expm1-log1p-u_binary64
610×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0815
115315
2168615
Stop Event
node limit
Counts
2 → 26
Calls
Call 1
Inputs
(*.f64 1/6 y)
(*.f64 x (fma.f64 y (*.f64 1/6 y) 1))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 1/6 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 1/6 y) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 1/6 y) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 1/6 y)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 1/6 y)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 1/6 y) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 1/6) y))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 1/6 y) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 1/6 y)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 1/6 y)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 1/6 y)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 y (*.f64 1/6 y)) x) x)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (*.f64 y (*.f64 1/6 y))) x)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 x (fma.f64 y (*.f64 1/6 y) 1))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 x (fma.f64 y (*.f64 1/6 y) 1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 x (fma.f64 y (*.f64 1/6 y) 1)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 x (fma.f64 y (*.f64 1/6 y) 1))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 x (fma.f64 y (*.f64 1/6 y) 1))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 x (fma.f64 y (*.f64 1/6 y) 1)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 x) (fma.f64 y (*.f64 1/6 y) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 x (fma.f64 y (*.f64 1/6 y) 1)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 x 3) (pow.f64 (fma.f64 y (*.f64 1/6 y) 1) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (fma.f64 y (*.f64 1/6 y) 1) 3) (pow.f64 x 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 x (fma.f64 y (*.f64 1/6 y) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 x (fma.f64 y (*.f64 1/6 y) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 x (fma.f64 y (*.f64 1/6 y) 1))))))))

simplify38.0ms (0.7%)

Algorithm
egg-herbie
Rules
692×log-prod_binary64
652×associate-*l*_binary64
547×associate-*r*_binary64
369×associate-+r+_binary64
324×associate-+l+_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
071599
1178494
2672461
34495461
Stop Event
node limit
Counts
50 → 38
Calls
Call 1
Inputs
(*.f64 (+.f64 1 (*.f64 1/6 (pow.f64 y 2))) x)
(*.f64 (+.f64 1 (*.f64 1/6 (pow.f64 y 2))) x)
(*.f64 (+.f64 1 (*.f64 1/6 (pow.f64 y 2))) x)
(*.f64 (+.f64 1 (*.f64 1/6 (pow.f64 y 2))) x)
(*.f64 (+.f64 1 (*.f64 1/6 (pow.f64 y 2))) x)
(*.f64 (+.f64 1 (*.f64 1/6 (pow.f64 y 2))) x)
(*.f64 (+.f64 1 (*.f64 1/6 (pow.f64 y 2))) x)
(*.f64 (+.f64 1 (*.f64 1/6 (pow.f64 y 2))) x)
(*.f64 (+.f64 1 (*.f64 1/6 (pow.f64 y 2))) x)
(*.f64 (+.f64 1 (*.f64 1/6 (pow.f64 y 2))) x)
(*.f64 (+.f64 1 (*.f64 1/6 (pow.f64 y 2))) x)
(*.f64 (+.f64 1 (*.f64 1/6 (pow.f64 y 2))) x)
x
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 y 2) x)) x)
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 y 2) x)) x)
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 y 2) x)) x)
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 y 2) x)) x)
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 y 2) x)) x)
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 y 2) x)) x)
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 y 2) x)) x)
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 y 2) x)) x)
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 y 2) x)) x)
(-.f64 (+.f64 1 (*.f64 1/6 y)) 1)
(pow.f64 (*.f64 1/6 y) 1)
(pow.f64 (pow.f64 (*.f64 1/6 y) 3) 1/3)
(pow.f64 (cbrt.f64 (*.f64 1/6 y)) 3)
(pow.f64 (sqrt.f64 (*.f64 1/6 y)) 2)
(sqrt.f64 (pow.f64 (*.f64 1/6 y) 2))
(log.f64 (pow.f64 (exp.f64 1/6) y))
(cbrt.f64 (pow.f64 (*.f64 1/6 y) 3))
(expm1.f64 (log1p.f64 (*.f64 1/6 y)))
(log1p.f64 (expm1.f64 (*.f64 1/6 y)))
(exp.f64 (log.f64 (*.f64 1/6 y)))
(+.f64 (*.f64 (*.f64 y (*.f64 1/6 y)) x) x)
(+.f64 (*.f64 x (*.f64 y (*.f64 1/6 y))) x)
(-.f64 (+.f64 1 (*.f64 x (fma.f64 y (*.f64 1/6 y) 1))) 1)
(pow.f64 (*.f64 x (fma.f64 y (*.f64 1/6 y) 1)) 1)
(pow.f64 (pow.f64 (*.f64 x (fma.f64 y (*.f64 1/6 y) 1)) 3) 1/3)
(pow.f64 (cbrt.f64 (*.f64 x (fma.f64 y (*.f64 1/6 y) 1))) 3)
(pow.f64 (sqrt.f64 (*.f64 x (fma.f64 y (*.f64 1/6 y) 1))) 2)
(sqrt.f64 (pow.f64 (*.f64 x (fma.f64 y (*.f64 1/6 y) 1)) 2))
(log.f64 (pow.f64 (exp.f64 x) (fma.f64 y (*.f64 1/6 y) 1)))
(cbrt.f64 (pow.f64 (*.f64 x (fma.f64 y (*.f64 1/6 y) 1)) 3))
(cbrt.f64 (*.f64 (pow.f64 x 3) (pow.f64 (fma.f64 y (*.f64 1/6 y) 1) 3)))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 y (*.f64 1/6 y) 1) 3) (pow.f64 x 3)))
(expm1.f64 (log1p.f64 (*.f64 x (fma.f64 y (*.f64 1/6 y) 1))))
(log1p.f64 (expm1.f64 (*.f64 x (fma.f64 y (*.f64 1/6 y) 1))))
(exp.f64 (log.f64 (*.f64 x (fma.f64 y (*.f64 1/6 y) 1))))
Outputs
(*.f64 (+.f64 1 (*.f64 1/6 (pow.f64 y 2))) x)
(*.f64 (+.f64 1 (*.f64 1/6 (*.f64 y y))) x)
(fma.f64 y (*.f64 y (*.f64 1/6 x)) x)
(*.f64 x (fma.f64 y (*.f64 1/6 y) 1))
(*.f64 (+.f64 1 (*.f64 1/6 (pow.f64 y 2))) x)
(*.f64 (+.f64 1 (*.f64 1/6 (*.f64 y y))) x)
(fma.f64 y (*.f64 y (*.f64 1/6 x)) x)
(*.f64 x (fma.f64 y (*.f64 1/6 y) 1))
(*.f64 (+.f64 1 (*.f64 1/6 (pow.f64 y 2))) x)
(*.f64 (+.f64 1 (*.f64 1/6 (*.f64 y y))) x)
(fma.f64 y (*.f64 y (*.f64 1/6 x)) x)
(*.f64 x (fma.f64 y (*.f64 1/6 y) 1))
(*.f64 (+.f64 1 (*.f64 1/6 (pow.f64 y 2))) x)
(*.f64 (+.f64 1 (*.f64 1/6 (*.f64 y y))) x)
(fma.f64 y (*.f64 y (*.f64 1/6 x)) x)
(*.f64 x (fma.f64 y (*.f64 1/6 y) 1))
(*.f64 (+.f64 1 (*.f64 1/6 (pow.f64 y 2))) x)
(*.f64 (+.f64 1 (*.f64 1/6 (*.f64 y y))) x)
(fma.f64 y (*.f64 y (*.f64 1/6 x)) x)
(*.f64 x (fma.f64 y (*.f64 1/6 y) 1))
(*.f64 (+.f64 1 (*.f64 1/6 (pow.f64 y 2))) x)
(*.f64 (+.f64 1 (*.f64 1/6 (*.f64 y y))) x)
(fma.f64 y (*.f64 y (*.f64 1/6 x)) x)
(*.f64 x (fma.f64 y (*.f64 1/6 y) 1))
(*.f64 (+.f64 1 (*.f64 1/6 (pow.f64 y 2))) x)
(*.f64 (+.f64 1 (*.f64 1/6 (*.f64 y y))) x)
(fma.f64 y (*.f64 y (*.f64 1/6 x)) x)
(*.f64 x (fma.f64 y (*.f64 1/6 y) 1))
(*.f64 (+.f64 1 (*.f64 1/6 (pow.f64 y 2))) x)
(*.f64 (+.f64 1 (*.f64 1/6 (*.f64 y y))) x)
(fma.f64 y (*.f64 y (*.f64 1/6 x)) x)
(*.f64 x (fma.f64 y (*.f64 1/6 y) 1))
(*.f64 (+.f64 1 (*.f64 1/6 (pow.f64 y 2))) x)
(*.f64 (+.f64 1 (*.f64 1/6 (*.f64 y y))) x)
(fma.f64 y (*.f64 y (*.f64 1/6 x)) x)
(*.f64 x (fma.f64 y (*.f64 1/6 y) 1))
(*.f64 (+.f64 1 (*.f64 1/6 (pow.f64 y 2))) x)
(*.f64 (+.f64 1 (*.f64 1/6 (*.f64 y y))) x)
(fma.f64 y (*.f64 y (*.f64 1/6 x)) x)
(*.f64 x (fma.f64 y (*.f64 1/6 y) 1))
(*.f64 (+.f64 1 (*.f64 1/6 (pow.f64 y 2))) x)
(*.f64 (+.f64 1 (*.f64 1/6 (*.f64 y y))) x)
(fma.f64 y (*.f64 y (*.f64 1/6 x)) x)
(*.f64 x (fma.f64 y (*.f64 1/6 y) 1))
(*.f64 (+.f64 1 (*.f64 1/6 (pow.f64 y 2))) x)
(*.f64 (+.f64 1 (*.f64 1/6 (*.f64 y y))) x)
(fma.f64 y (*.f64 y (*.f64 1/6 x)) x)
(*.f64 x (fma.f64 y (*.f64 1/6 y) 1))
x
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 y 2) x)) x)
(*.f64 (+.f64 1 (*.f64 1/6 (*.f64 y y))) x)
(fma.f64 y (*.f64 y (*.f64 1/6 x)) x)
(*.f64 x (fma.f64 y (*.f64 1/6 y) 1))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 y 2) x)) x)
(*.f64 (+.f64 1 (*.f64 1/6 (*.f64 y y))) x)
(fma.f64 y (*.f64 y (*.f64 1/6 x)) x)
(*.f64 x (fma.f64 y (*.f64 1/6 y) 1))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 y 2) x)) x)
(*.f64 (+.f64 1 (*.f64 1/6 (*.f64 y y))) x)
(fma.f64 y (*.f64 y (*.f64 1/6 x)) x)
(*.f64 x (fma.f64 y (*.f64 1/6 y) 1))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (*.f64 y y) x))
(*.f64 y (*.f64 y (*.f64 1/6 x)))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 y 2) x)) x)
(*.f64 (+.f64 1 (*.f64 1/6 (*.f64 y y))) x)
(fma.f64 y (*.f64 y (*.f64 1/6 x)) x)
(*.f64 x (fma.f64 y (*.f64 1/6 y) 1))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 y 2) x)) x)
(*.f64 (+.f64 1 (*.f64 1/6 (*.f64 y y))) x)
(fma.f64 y (*.f64 y (*.f64 1/6 x)) x)
(*.f64 x (fma.f64 y (*.f64 1/6 y) 1))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 y 2) x)) x)
(*.f64 (+.f64 1 (*.f64 1/6 (*.f64 y y))) x)
(fma.f64 y (*.f64 y (*.f64 1/6 x)) x)
(*.f64 x (fma.f64 y (*.f64 1/6 y) 1))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (*.f64 y y) x))
(*.f64 y (*.f64 y (*.f64 1/6 x)))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 y 2) x)) x)
(*.f64 (+.f64 1 (*.f64 1/6 (*.f64 y y))) x)
(fma.f64 y (*.f64 y (*.f64 1/6 x)) x)
(*.f64 x (fma.f64 y (*.f64 1/6 y) 1))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 y 2) x)) x)
(*.f64 (+.f64 1 (*.f64 1/6 (*.f64 y y))) x)
(fma.f64 y (*.f64 y (*.f64 1/6 x)) x)
(*.f64 x (fma.f64 y (*.f64 1/6 y) 1))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 y 2) x)) x)
(*.f64 (+.f64 1 (*.f64 1/6 (*.f64 y y))) x)
(fma.f64 y (*.f64 y (*.f64 1/6 x)) x)
(*.f64 x (fma.f64 y (*.f64 1/6 y) 1))
(-.f64 (+.f64 1 (*.f64 1/6 y)) 1)
(+.f64 (+.f64 1 (*.f64 1/6 y)) -1)
(+.f64 (*.f64 1/6 y) 0)
(*.f64 1/6 y)
(pow.f64 (*.f64 1/6 y) 1)
(+.f64 (+.f64 1 (*.f64 1/6 y)) -1)
(+.f64 (*.f64 1/6 y) 0)
(*.f64 1/6 y)
(pow.f64 (pow.f64 (*.f64 1/6 y) 3) 1/3)
(+.f64 (+.f64 1 (*.f64 1/6 y)) -1)
(+.f64 (*.f64 1/6 y) 0)
(*.f64 1/6 y)
(pow.f64 (cbrt.f64 (*.f64 1/6 y)) 3)
(+.f64 (+.f64 1 (*.f64 1/6 y)) -1)
(+.f64 (*.f64 1/6 y) 0)
(*.f64 1/6 y)
(pow.f64 (sqrt.f64 (*.f64 1/6 y)) 2)
(+.f64 (+.f64 1 (*.f64 1/6 y)) -1)
(+.f64 (*.f64 1/6 y) 0)
(*.f64 1/6 y)
(sqrt.f64 (pow.f64 (*.f64 1/6 y) 2))
(+.f64 (+.f64 1 (*.f64 1/6 y)) -1)
(+.f64 (*.f64 1/6 y) 0)
(*.f64 1/6 y)
(log.f64 (pow.f64 (exp.f64 1/6) y))
(+.f64 (+.f64 1 (*.f64 1/6 y)) -1)
(+.f64 (*.f64 1/6 y) 0)
(*.f64 1/6 y)
(cbrt.f64 (pow.f64 (*.f64 1/6 y) 3))
(+.f64 (+.f64 1 (*.f64 1/6 y)) -1)
(+.f64 (*.f64 1/6 y) 0)
(*.f64 1/6 y)
(expm1.f64 (log1p.f64 (*.f64 1/6 y)))
(+.f64 (+.f64 1 (*.f64 1/6 y)) -1)
(+.f64 (*.f64 1/6 y) 0)
(*.f64 1/6 y)
(log1p.f64 (expm1.f64 (*.f64 1/6 y)))
(+.f64 (+.f64 1 (*.f64 1/6 y)) -1)
(+.f64 (*.f64 1/6 y) 0)
(*.f64 1/6 y)
(exp.f64 (log.f64 (*.f64 1/6 y)))
(+.f64 (+.f64 1 (*.f64 1/6 y)) -1)
(+.f64 (*.f64 1/6 y) 0)
(*.f64 1/6 y)
(+.f64 (*.f64 (*.f64 y (*.f64 1/6 y)) x) x)
(*.f64 (+.f64 1 (*.f64 1/6 (*.f64 y y))) x)
(fma.f64 y (*.f64 y (*.f64 1/6 x)) x)
(*.f64 x (fma.f64 y (*.f64 1/6 y) 1))
(+.f64 (*.f64 x (*.f64 y (*.f64 1/6 y))) x)
(*.f64 (+.f64 1 (*.f64 1/6 (*.f64 y y))) x)
(fma.f64 y (*.f64 y (*.f64 1/6 x)) x)
(*.f64 x (fma.f64 y (*.f64 1/6 y) 1))
(-.f64 (+.f64 1 (*.f64 x (fma.f64 y (*.f64 1/6 y) 1))) 1)
(*.f64 (+.f64 1 (*.f64 1/6 (*.f64 y y))) x)
(fma.f64 y (*.f64 y (*.f64 1/6 x)) x)
(*.f64 x (fma.f64 y (*.f64 1/6 y) 1))
(pow.f64 (*.f64 x (fma.f64 y (*.f64 1/6 y) 1)) 1)
(*.f64 (+.f64 1 (*.f64 1/6 (*.f64 y y))) x)
(fma.f64 y (*.f64 y (*.f64 1/6 x)) x)
(*.f64 x (fma.f64 y (*.f64 1/6 y) 1))
(pow.f64 (pow.f64 (*.f64 x (fma.f64 y (*.f64 1/6 y) 1)) 3) 1/3)
(*.f64 (+.f64 1 (*.f64 1/6 (*.f64 y y))) x)
(fma.f64 y (*.f64 y (*.f64 1/6 x)) x)
(*.f64 x (fma.f64 y (*.f64 1/6 y) 1))
(pow.f64 (cbrt.f64 (*.f64 x (fma.f64 y (*.f64 1/6 y) 1))) 3)
(*.f64 (+.f64 1 (*.f64 1/6 (*.f64 y y))) x)
(fma.f64 y (*.f64 y (*.f64 1/6 x)) x)
(*.f64 x (fma.f64 y (*.f64 1/6 y) 1))
(pow.f64 (sqrt.f64 (*.f64 x (fma.f64 y (*.f64 1/6 y) 1))) 2)
(*.f64 (+.f64 1 (*.f64 1/6 (*.f64 y y))) x)
(fma.f64 y (*.f64 y (*.f64 1/6 x)) x)
(*.f64 x (fma.f64 y (*.f64 1/6 y) 1))
(sqrt.f64 (pow.f64 (*.f64 x (fma.f64 y (*.f64 1/6 y) 1)) 2))
(*.f64 (+.f64 1 (*.f64 1/6 (*.f64 y y))) x)
(fma.f64 y (*.f64 y (*.f64 1/6 x)) x)
(*.f64 x (fma.f64 y (*.f64 1/6 y) 1))
(log.f64 (pow.f64 (exp.f64 x) (fma.f64 y (*.f64 1/6 y) 1)))
(*.f64 (+.f64 1 (*.f64 1/6 (*.f64 y y))) x)
(fma.f64 y (*.f64 y (*.f64 1/6 x)) x)
(*.f64 x (fma.f64 y (*.f64 1/6 y) 1))
(cbrt.f64 (pow.f64 (*.f64 x (fma.f64 y (*.f64 1/6 y) 1)) 3))
(*.f64 (+.f64 1 (*.f64 1/6 (*.f64 y y))) x)
(fma.f64 y (*.f64 y (*.f64 1/6 x)) x)
(*.f64 x (fma.f64 y (*.f64 1/6 y) 1))
(cbrt.f64 (*.f64 (pow.f64 x 3) (pow.f64 (fma.f64 y (*.f64 1/6 y) 1) 3)))
(*.f64 (+.f64 1 (*.f64 1/6 (*.f64 y y))) x)
(fma.f64 y (*.f64 y (*.f64 1/6 x)) x)
(*.f64 x (fma.f64 y (*.f64 1/6 y) 1))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 y (*.f64 1/6 y) 1) 3) (pow.f64 x 3)))
(*.f64 (+.f64 1 (*.f64 1/6 (*.f64 y y))) x)
(fma.f64 y (*.f64 y (*.f64 1/6 x)) x)
(*.f64 x (fma.f64 y (*.f64 1/6 y) 1))
(expm1.f64 (log1p.f64 (*.f64 x (fma.f64 y (*.f64 1/6 y) 1))))
(*.f64 (+.f64 1 (*.f64 1/6 (*.f64 y y))) x)
(fma.f64 y (*.f64 y (*.f64 1/6 x)) x)
(*.f64 x (fma.f64 y (*.f64 1/6 y) 1))
(log1p.f64 (expm1.f64 (*.f64 x (fma.f64 y (*.f64 1/6 y) 1))))
(*.f64 (+.f64 1 (*.f64 1/6 (*.f64 y y))) x)
(fma.f64 y (*.f64 y (*.f64 1/6 x)) x)
(*.f64 x (fma.f64 y (*.f64 1/6 y) 1))
(exp.f64 (log.f64 (*.f64 x (fma.f64 y (*.f64 1/6 y) 1))))
(*.f64 (+.f64 1 (*.f64 1/6 (*.f64 y y))) x)
(fma.f64 y (*.f64 y (*.f64 1/6 x)) x)
(*.f64 x (fma.f64 y (*.f64 1/6 y) 1))

localize33.0ms (0.7%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(*.f64 (sin.f64 x) (/.f64 (-.f64 (*.f64 (*.f64 y (*.f64 y 1/6)) (*.f64 y (*.f64 y 1/6))) 1) (-.f64 (*.f64 y (*.f64 y 1/6)) 1)))
0.1b
(*.f64 (*.f64 y (*.f64 y 1/6)) (*.f64 y (*.f64 y 1/6)))
0.2b
(*.f64 y (*.f64 y 1/6))
0.3b
(*.f64 y 1/6)
Compiler

Compiled 92 to 62 computations (32.6% saved)

series9.0ms (0.2%)

Counts
4 → 60
Calls

15 calls:

TimeVariablePointExpression
2.0ms
y
@inf
(*.f64 (sin.f64 x) (/.f64 (-.f64 (*.f64 (*.f64 y (*.f64 y 1/6)) (*.f64 y (*.f64 y 1/6))) 1) (-.f64 (*.f64 y (*.f64 y 1/6)) 1)))
1.0ms
x
@inf
(*.f64 (sin.f64 x) (/.f64 (-.f64 (*.f64 (*.f64 y (*.f64 y 1/6)) (*.f64 y (*.f64 y 1/6))) 1) (-.f64 (*.f64 y (*.f64 y 1/6)) 1)))
1.0ms
x
@0
(*.f64 (sin.f64 x) (/.f64 (-.f64 (*.f64 (*.f64 y (*.f64 y 1/6)) (*.f64 y (*.f64 y 1/6))) 1) (-.f64 (*.f64 y (*.f64 y 1/6)) 1)))
1.0ms
x
@-inf
(*.f64 (sin.f64 x) (/.f64 (-.f64 (*.f64 (*.f64 y (*.f64 y 1/6)) (*.f64 y (*.f64 y 1/6))) 1) (-.f64 (*.f64 y (*.f64 y 1/6)) 1)))
1.0ms
y
@0
(*.f64 (sin.f64 x) (/.f64 (-.f64 (*.f64 (*.f64 y (*.f64 y 1/6)) (*.f64 y (*.f64 y 1/6))) 1) (-.f64 (*.f64 y (*.f64 y 1/6)) 1)))

rewrite65.0ms (1.3%)

Algorithm
batch-egg-rewrite
Rules
766×log-prod_binary64
399×fma-def_binary64
374×fma-neg_binary64
350×pow2_binary64
244×pow1/3_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01349
129134
2410134
Stop Event
node limit
Counts
4 → 109
Calls
Call 1
Inputs
(*.f64 y 1/6)
(*.f64 y (*.f64 y 1/6))
(*.f64 (*.f64 y (*.f64 y 1/6)) (*.f64 y (*.f64 y 1/6)))
(*.f64 (sin.f64 x) (/.f64 (-.f64 (*.f64 (*.f64 y (*.f64 y 1/6)) (*.f64 y (*.f64 y 1/6))) 1) (-.f64 (*.f64 y (*.f64 y 1/6)) 1)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 y 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 y) 1/6)) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 y) 1/6))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 y) 1/6))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 y) 1/6))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 y 1/6))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 y 1/6) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 y 1/6) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 y 1/6)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 y 1/6)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (*.f64 y y) 1/36))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 y) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 y 1/6))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 y 1/6) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 y 1/6)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 y 1/6)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 y 1/6)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 y 1/6)) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 y (*.f64 y 1/6)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 y) (*.f64 y 1/6))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 y) (*.f64 y 1/6)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 y) (*.f64 y 1/6)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 y) (*.f64 y 1/6)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (fma.f64 y (*.f64 y 1/6) 1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 y (*.f64 y 1/6)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (*.f64 y y) 2) 1/36) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 y (*.f64 y 1/6))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 y (sqrt.f64 1/6)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (*.f64 y y) 3) 1/216) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (pow.f64 (*.f64 y y) 2) 1/36))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 y (*.f64 y 1/6)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 y) (*.f64 y 1/6)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 y (*.f64 y 1/6)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (*.f64 y y) 3) 1/216))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 y (*.f64 y 1/6))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (*.f64 (log1p.f64 (*.f64 y (*.f64 y 1/6))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 y (*.f64 y 1/6))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 y (*.f64 y 1/6))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 y (*.f64 y 1/6))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 y (*.f64 y 1/6) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 -1) (/.f64 1 (fma.f64 y (*.f64 y 1/6) -1)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 y (*.f64 y 1/6) 1) 1 -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 y (*.f64 y 1/6) 1) (*.f64 (fma.f64 y (*.f64 y 1/6) -1) (/.f64 1 (fma.f64 y (*.f64 y 1/6) -1))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 y (*.f64 y 1/6) 1)) (pow.f64 (cbrt.f64 (fma.f64 y (*.f64 y 1/6) 1)) 2) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 y (*.f64 y 1/6) 1)) 2) (cbrt.f64 (fma.f64 y (*.f64 y 1/6) 1)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 -1)) 2) (*.f64 (cbrt.f64 (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 -1)) (/.f64 1 (fma.f64 y (*.f64 y 1/6) -1))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (hypot.f64 1 (*.f64 y (sqrt.f64 1/6))) (hypot.f64 1 (*.f64 y (sqrt.f64 1/6))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 -1)) (*.f64 (sqrt.f64 (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 -1)) (/.f64 1 (fma.f64 y (*.f64 y 1/6) -1))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 -1)) (/.f64 1 (neg.f64 (fma.f64 y (*.f64 y 1/6) -1))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (fma.f64 y (*.f64 y 1/6) -1)) (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 -1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (cbrt.f64 (pow.f64 (fma.f64 y (*.f64 y 1/6) -1) 2))) (/.f64 (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 -1) (cbrt.f64 (fma.f64 y (*.f64 y 1/6) -1))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (sqrt.f64 (fma.f64 y (*.f64 y 1/6) -1))) (/.f64 (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 -1) (sqrt.f64 (fma.f64 y (*.f64 y 1/6) -1))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 -1)) 2) 1) (/.f64 (cbrt.f64 (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 -1)) (fma.f64 y (*.f64 y 1/6) -1)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 -1)) 1) (/.f64 (sqrt.f64 (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 -1)) (fma.f64 y (*.f64 y 1/6) -1)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (fma.f64 y (*.f64 y 1/6) 1) 1) (/.f64 (fma.f64 y (*.f64 y 1/6) -1) (fma.f64 y (*.f64 y 1/6) -1)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 -1)) 2) (cbrt.f64 (pow.f64 (fma.f64 y (*.f64 y 1/6) -1) 2))) (cbrt.f64 (fma.f64 y (*.f64 y 1/6) 1)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 -1)) (cbrt.f64 (pow.f64 (fma.f64 y (*.f64 y 1/6) -1) 2))) (/.f64 (sqrt.f64 (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 -1)) (cbrt.f64 (fma.f64 y (*.f64 y 1/6) -1))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (fma.f64 y (*.f64 y 1/6) 1) (cbrt.f64 (pow.f64 (fma.f64 y (*.f64 y 1/6) -1) 2))) (/.f64 (fma.f64 y (*.f64 y 1/6) -1) (cbrt.f64 (fma.f64 y (*.f64 y 1/6) -1))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 -1)) 2) (sqrt.f64 (fma.f64 y (*.f64 y 1/6) -1))) (/.f64 (cbrt.f64 (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 -1)) (sqrt.f64 (fma.f64 y (*.f64 y 1/6) -1))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (fma.f64 y (*.f64 y 1/6) 1) (sqrt.f64 (fma.f64 y (*.f64 y 1/6) -1))) (/.f64 (fma.f64 y (*.f64 y 1/6) -1) (sqrt.f64 (fma.f64 y (*.f64 y 1/6) -1))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 -1) (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 -1)) (fma.f64 y (*.f64 y 1/6) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 -1) (fma.f64 (pow.f64 (*.f64 y y) 3) 1/216 -1)) (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 (fma.f64 y (*.f64 y 1/6) 1)) -1)))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (pow.f64 (*.f64 y y) 2) 1/36))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (*.f64 (pow.f64 (*.f64 y y) 2) 1/36))) 2)) (log.f64 (cbrt.f64 (exp.f64 (*.f64 (pow.f64 (*.f64 y y) 2) 1/36)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (*.f64 (pow.f64 (*.f64 y y) 2) 1/36)))) (log.f64 (sqrt.f64 (exp.f64 (*.f64 (pow.f64 (*.f64 y y) 2) 1/36)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 y (*.f64 y 1/6)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (*.f64 y y) 2) 1/36) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cbrt.f64 (*.f64 y (*.f64 y 1/6))) 2) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 y (*.f64 y 1/6)) 6) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 y (*.f64 y 1/6)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (*.f64 (pow.f64 (*.f64 y y) 2) 1/36)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (pow.f64 (*.f64 y y) 2) 1/36))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 y (*.f64 y 1/6)) 6))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (pow.f64 (*.f64 y y) 2) 1/36)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (pow.f64 (*.f64 y y) 2) 1/36)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 2 (log.f64 (*.f64 y (*.f64 y 1/6)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 y (*.f64 y 1/6))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 2 (log.f64 (*.f64 y (*.f64 y 1/6)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 1) 1 -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 1)) 2) (cbrt.f64 (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 1)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (hypot.f64 1 (*.f64 y (*.f64 y 1/6))) (hypot.f64 1 (*.f64 y (*.f64 y 1/6))) -1)))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (sin.f64 x) (fma.f64 y (*.f64 y 1/6) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 x)) (fma.f64 y (*.f64 y 1/6) 1))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 x)) (fma.f64 y (*.f64 y 1/6) 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 x)) (fma.f64 y (*.f64 y 1/6) 1)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 x)) (fma.f64 y (*.f64 y 1/6) 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 x) (fma.f64 y (*.f64 y 1/6) 1)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sin.f64 x) (/.f64 1 (fma.f64 y (*.f64 y 1/6) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 y (*.f64 y 1/6) -1) (*.f64 (sin.f64 x) (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 -1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 x) (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 -1)) (fma.f64 y (*.f64 y 1/6) -1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 (sin.f64 x) (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 -1))) (neg.f64 (fma.f64 y (*.f64 y 1/6) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sin.f64 x) (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 -1)) 1) (fma.f64 y (*.f64 y 1/6) -1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sin.f64 x) (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 -1)) (cbrt.f64 (pow.f64 (fma.f64 y (*.f64 y 1/6) -1) 2))) (cbrt.f64 (fma.f64 y (*.f64 y 1/6) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sin.f64 x) (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 -1)) (sqrt.f64 (fma.f64 y (*.f64 y 1/6) -1))) (sqrt.f64 (fma.f64 y (*.f64 y 1/6) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 -1)) (sin.f64 x)) (neg.f64 (fma.f64 y (*.f64 y 1/6) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 x) (neg.f64 (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 -1))) (neg.f64 (fma.f64 y (*.f64 y 1/6) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sin.f64 x) (fma.f64 y (*.f64 y 1/6) 1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sin.f64 x) (fma.f64 y (*.f64 y 1/6) 1)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (sin.f64 x) (fma.f64 y (*.f64 y 1/6) 1))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (sin.f64 x) (fma.f64 y (*.f64 y 1/6) 1))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (fma.f64 y (*.f64 y 1/6) 1) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (fma.f64 y (*.f64 y 1/6) 1) 3) (pow.f64 (sin.f64 x) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 y (*.f64 y 1/6) -1) (*.f64 (sin.f64 x) (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 -1))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (sin.f64 x) (fma.f64 y (*.f64 y 1/6) 1)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (sin.f64 x)) (fma.f64 y (*.f64 y 1/6) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 x) (fma.f64 y (*.f64 y 1/6) 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (sin.f64 x) (fma.f64 y (*.f64 y 1/6) 1)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (fma.f64 y (*.f64 y 1/6) 1) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (fma.f64 y (*.f64 y 1/6) 1) 3) (pow.f64 (sin.f64 x) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (sin.f64 x) (fma.f64 y (*.f64 y 1/6) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (sin.f64 x) (fma.f64 y (*.f64 y 1/6) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (sin.f64 x) (fma.f64 y (*.f64 y 1/6) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 x) (fma.f64 y (*.f64 y 1/6) 1))) 1))))))

simplify59.0ms (1.2%)

Algorithm
egg-herbie
Rules
743×fma-def_binary64
563×distribute-rgt-in_binary64
560×times-frac_binary64
540×distribute-lft-in_binary64
417×unswap-sqr_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02962416
16942348
219971793
Stop Event
node limit
Counts
169 → 163
Calls
Call 1
Inputs
(*.f64 1/6 y)
(*.f64 1/6 y)
(*.f64 1/6 y)
(*.f64 1/6 y)
(*.f64 1/6 y)
(*.f64 1/6 y)
(*.f64 1/6 y)
(*.f64 1/6 y)
(*.f64 1/6 y)
(*.f64 1/6 y)
(*.f64 1/6 y)
(*.f64 1/6 y)
(*.f64 1/6 (pow.f64 y 2))
(*.f64 1/6 (pow.f64 y 2))
(*.f64 1/6 (pow.f64 y 2))
(*.f64 1/6 (pow.f64 y 2))
(*.f64 1/6 (pow.f64 y 2))
(*.f64 1/6 (pow.f64 y 2))
(*.f64 1/6 (pow.f64 y 2))
(*.f64 1/6 (pow.f64 y 2))
(*.f64 1/6 (pow.f64 y 2))
(*.f64 1/6 (pow.f64 y 2))
(*.f64 1/6 (pow.f64 y 2))
(*.f64 1/6 (pow.f64 y 2))
(*.f64 1/36 (pow.f64 y 4))
(*.f64 1/36 (pow.f64 y 4))
(*.f64 1/36 (pow.f64 y 4))
(*.f64 1/36 (pow.f64 y 4))
(*.f64 1/36 (pow.f64 y 4))
(*.f64 1/36 (pow.f64 y 4))
(*.f64 1/36 (pow.f64 y 4))
(*.f64 1/36 (pow.f64 y 4))
(*.f64 1/36 (pow.f64 y 4))
(*.f64 1/36 (pow.f64 y 4))
(*.f64 1/36 (pow.f64 y 4))
(*.f64 1/36 (pow.f64 y 4))
(/.f64 (*.f64 (-.f64 (*.f64 1/36 (pow.f64 y 4)) 1) x) (-.f64 (*.f64 1/6 (pow.f64 y 2)) 1))
(+.f64 (/.f64 (*.f64 (-.f64 (*.f64 1/36 (pow.f64 y 4)) 1) x) (-.f64 (*.f64 1/6 (pow.f64 y 2)) 1)) (*.f64 -1/6 (/.f64 (*.f64 (-.f64 (*.f64 1/36 (pow.f64 y 4)) 1) (pow.f64 x 3)) (-.f64 (*.f64 1/6 (pow.f64 y 2)) 1))))
(+.f64 (/.f64 (*.f64 (-.f64 (*.f64 1/36 (pow.f64 y 4)) 1) x) (-.f64 (*.f64 1/6 (pow.f64 y 2)) 1)) (+.f64 (*.f64 -1/6 (/.f64 (*.f64 (-.f64 (*.f64 1/36 (pow.f64 y 4)) 1) (pow.f64 x 3)) (-.f64 (*.f64 1/6 (pow.f64 y 2)) 1))) (*.f64 1/120 (/.f64 (*.f64 (-.f64 (*.f64 1/36 (pow.f64 y 4)) 1) (pow.f64 x 5)) (-.f64 (*.f64 1/6 (pow.f64 y 2)) 1)))))
(+.f64 (*.f64 -1/5040 (/.f64 (*.f64 (-.f64 (*.f64 1/36 (pow.f64 y 4)) 1) (pow.f64 x 7)) (-.f64 (*.f64 1/6 (pow.f64 y 2)) 1))) (+.f64 (/.f64 (*.f64 (-.f64 (*.f64 1/36 (pow.f64 y 4)) 1) x) (-.f64 (*.f64 1/6 (pow.f64 y 2)) 1)) (+.f64 (*.f64 -1/6 (/.f64 (*.f64 (-.f64 (*.f64 1/36 (pow.f64 y 4)) 1) (pow.f64 x 3)) (-.f64 (*.f64 1/6 (pow.f64 y 2)) 1))) (*.f64 1/120 (/.f64 (*.f64 (-.f64 (*.f64 1/36 (pow.f64 y 4)) 1) (pow.f64 x 5)) (-.f64 (*.f64 1/6 (pow.f64 y 2)) 1))))))
(/.f64 (*.f64 (-.f64 (*.f64 1/36 (pow.f64 y 4)) 1) (sin.f64 x)) (-.f64 (*.f64 1/6 (pow.f64 y 2)) 1))
(/.f64 (*.f64 (-.f64 (*.f64 1/36 (pow.f64 y 4)) 1) (sin.f64 x)) (-.f64 (*.f64 1/6 (pow.f64 y 2)) 1))
(/.f64 (*.f64 (-.f64 (*.f64 1/36 (pow.f64 y 4)) 1) (sin.f64 x)) (-.f64 (*.f64 1/6 (pow.f64 y 2)) 1))
(/.f64 (*.f64 (-.f64 (*.f64 1/36 (pow.f64 y 4)) 1) (sin.f64 x)) (-.f64 (*.f64 1/6 (pow.f64 y 2)) 1))
(/.f64 (*.f64 (-.f64 (*.f64 1/36 (pow.f64 y 4)) 1) (sin.f64 x)) (-.f64 (*.f64 1/6 (pow.f64 y 2)) 1))
(/.f64 (*.f64 (-.f64 (*.f64 1/36 (pow.f64 y 4)) 1) (sin.f64 x)) (-.f64 (*.f64 1/6 (pow.f64 y 2)) 1))
(/.f64 (*.f64 (-.f64 (*.f64 1/36 (pow.f64 y 4)) 1) (sin.f64 x)) (-.f64 (*.f64 1/6 (pow.f64 y 2)) 1))
(/.f64 (*.f64 (-.f64 (*.f64 1/36 (pow.f64 y 4)) 1) (sin.f64 x)) (-.f64 (*.f64 1/6 (pow.f64 y 2)) 1))
(sin.f64 x)
(+.f64 (sin.f64 x) (*.f64 1/6 (*.f64 (pow.f64 y 2) (sin.f64 x))))
(+.f64 (sin.f64 x) (*.f64 1/6 (*.f64 (pow.f64 y 2) (sin.f64 x))))
(+.f64 (sin.f64 x) (*.f64 1/6 (*.f64 (pow.f64 y 2) (sin.f64 x))))
(*.f64 1/6 (*.f64 (pow.f64 y 2) (sin.f64 x)))
(+.f64 (sin.f64 x) (*.f64 1/6 (*.f64 (pow.f64 y 2) (sin.f64 x))))
(+.f64 (sin.f64 x) (*.f64 1/6 (*.f64 (pow.f64 y 2) (sin.f64 x))))
(+.f64 (sin.f64 x) (*.f64 1/6 (*.f64 (pow.f64 y 2) (sin.f64 x))))
(*.f64 1/6 (*.f64 (pow.f64 y 2) (sin.f64 x)))
(+.f64 (sin.f64 x) (*.f64 1/6 (*.f64 (pow.f64 y 2) (sin.f64 x))))
(+.f64 (sin.f64 x) (*.f64 1/6 (*.f64 (pow.f64 y 2) (sin.f64 x))))
(+.f64 (sin.f64 x) (*.f64 1/6 (*.f64 (pow.f64 y 2) (sin.f64 x))))
(+.f64 0 (*.f64 y 1/6))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 y) 1/6)) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 y) 1/6))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 y) 1/6))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 y) 1/6))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 y 1/6))) 1)
(pow.f64 (*.f64 y 1/6) 1)
(pow.f64 (pow.f64 (*.f64 y 1/6) 3) 1/3)
(pow.f64 (cbrt.f64 (*.f64 y 1/6)) 3)
(pow.f64 (sqrt.f64 (*.f64 y 1/6)) 2)
(sqrt.f64 (*.f64 (*.f64 y y) 1/36))
(log.f64 (pow.f64 (exp.f64 y) 1/6))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 y 1/6))))
(cbrt.f64 (pow.f64 (*.f64 y 1/6) 3))
(expm1.f64 (log1p.f64 (*.f64 y 1/6)))
(log1p.f64 (expm1.f64 (*.f64 y 1/6)))
(exp.f64 (log.f64 (*.f64 y 1/6)))
(exp.f64 (*.f64 (log.f64 (*.f64 y 1/6)) 1))
(+.f64 0 (*.f64 y (*.f64 y 1/6)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 y) (*.f64 y 1/6))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 y) (*.f64 y 1/6)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 y) (*.f64 y 1/6)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 y) (*.f64 y 1/6)))))
(-.f64 (fma.f64 y (*.f64 y 1/6) 1) 1)
(pow.f64 (*.f64 y (*.f64 y 1/6)) 1)
(pow.f64 (*.f64 (pow.f64 (*.f64 y y) 2) 1/36) 1/2)
(pow.f64 (cbrt.f64 (*.f64 y (*.f64 y 1/6))) 3)
(pow.f64 (*.f64 y (sqrt.f64 1/6)) 2)
(pow.f64 (*.f64 (pow.f64 (*.f64 y y) 3) 1/216) 1/3)
(sqrt.f64 (*.f64 (pow.f64 (*.f64 y y) 2) 1/36))
(fabs.f64 (*.f64 y (*.f64 y 1/6)))
(log.f64 (pow.f64 (exp.f64 y) (*.f64 y 1/6)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 y (*.f64 y 1/6)))))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 y y) 3) 1/216))
(expm1.f64 (log1p.f64 (*.f64 y (*.f64 y 1/6))))
(expm1.f64 (*.f64 (log1p.f64 (*.f64 y (*.f64 y 1/6))) 1))
(log1p.f64 (expm1.f64 (*.f64 y (*.f64 y 1/6))))
(exp.f64 (log.f64 (*.f64 y (*.f64 y 1/6))))
(exp.f64 (*.f64 (log.f64 (*.f64 y (*.f64 y 1/6))) 1))
(fma.f64 1 (fma.f64 y (*.f64 y 1/6) 1) -1)
(fma.f64 (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 -1) (/.f64 1 (fma.f64 y (*.f64 y 1/6) -1)) -1)
(fma.f64 (fma.f64 y (*.f64 y 1/6) 1) 1 -1)
(fma.f64 (fma.f64 y (*.f64 y 1/6) 1) (*.f64 (fma.f64 y (*.f64 y 1/6) -1) (/.f64 1 (fma.f64 y (*.f64 y 1/6) -1))) -1)
(fma.f64 (cbrt.f64 (fma.f64 y (*.f64 y 1/6) 1)) (pow.f64 (cbrt.f64 (fma.f64 y (*.f64 y 1/6) 1)) 2) -1)
(fma.f64 (pow.f64 (cbrt.f64 (fma.f64 y (*.f64 y 1/6) 1)) 2) (cbrt.f64 (fma.f64 y (*.f64 y 1/6) 1)) -1)
(fma.f64 (pow.f64 (cbrt.f64 (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 -1)) 2) (*.f64 (cbrt.f64 (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 -1)) (/.f64 1 (fma.f64 y (*.f64 y 1/6) -1))) -1)
(fma.f64 (hypot.f64 1 (*.f64 y (sqrt.f64 1/6))) (hypot.f64 1 (*.f64 y (sqrt.f64 1/6))) -1)
(fma.f64 (sqrt.f64 (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 -1)) (*.f64 (sqrt.f64 (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 -1)) (/.f64 1 (fma.f64 y (*.f64 y 1/6) -1))) -1)
(fma.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 -1)) (/.f64 1 (neg.f64 (fma.f64 y (*.f64 y 1/6) -1))) -1)
(fma.f64 (/.f64 1 (fma.f64 y (*.f64 y 1/6) -1)) (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 -1) -1)
(fma.f64 (/.f64 1 (cbrt.f64 (pow.f64 (fma.f64 y (*.f64 y 1/6) -1) 2))) (/.f64 (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 -1) (cbrt.f64 (fma.f64 y (*.f64 y 1/6) -1))) -1)
(fma.f64 (/.f64 1 (sqrt.f64 (fma.f64 y (*.f64 y 1/6) -1))) (/.f64 (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 -1) (sqrt.f64 (fma.f64 y (*.f64 y 1/6) -1))) -1)
(fma.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 -1)) 2) 1) (/.f64 (cbrt.f64 (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 -1)) (fma.f64 y (*.f64 y 1/6) -1)) -1)
(fma.f64 (/.f64 (sqrt.f64 (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 -1)) 1) (/.f64 (sqrt.f64 (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 -1)) (fma.f64 y (*.f64 y 1/6) -1)) -1)
(fma.f64 (/.f64 (fma.f64 y (*.f64 y 1/6) 1) 1) (/.f64 (fma.f64 y (*.f64 y 1/6) -1) (fma.f64 y (*.f64 y 1/6) -1)) -1)
(fma.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 -1)) 2) (cbrt.f64 (pow.f64 (fma.f64 y (*.f64 y 1/6) -1) 2))) (cbrt.f64 (fma.f64 y (*.f64 y 1/6) 1)) -1)
(fma.f64 (/.f64 (sqrt.f64 (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 -1)) (cbrt.f64 (pow.f64 (fma.f64 y (*.f64 y 1/6) -1) 2))) (/.f64 (sqrt.f64 (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 -1)) (cbrt.f64 (fma.f64 y (*.f64 y 1/6) -1))) -1)
(fma.f64 (/.f64 (fma.f64 y (*.f64 y 1/6) 1) (cbrt.f64 (pow.f64 (fma.f64 y (*.f64 y 1/6) -1) 2))) (/.f64 (fma.f64 y (*.f64 y 1/6) -1) (cbrt.f64 (fma.f64 y (*.f64 y 1/6) -1))) -1)
(fma.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 -1)) 2) (sqrt.f64 (fma.f64 y (*.f64 y 1/6) -1))) (/.f64 (cbrt.f64 (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 -1)) (sqrt.f64 (fma.f64 y (*.f64 y 1/6) -1))) -1)
(fma.f64 (/.f64 (fma.f64 y (*.f64 y 1/6) 1) (sqrt.f64 (fma.f64 y (*.f64 y 1/6) -1))) (/.f64 (fma.f64 y (*.f64 y 1/6) -1) (sqrt.f64 (fma.f64 y (*.f64 y 1/6) -1))) -1)
(fma.f64 (/.f64 (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 -1) (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 -1)) (fma.f64 y (*.f64 y 1/6) 1) -1)
(fma.f64 (/.f64 (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 -1) (fma.f64 (pow.f64 (*.f64 y y) 3) 1/216 -1)) (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 (fma.f64 y (*.f64 y 1/6) 1)) -1)
(+.f64 0 (*.f64 (pow.f64 (*.f64 y y) 2) 1/36))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (*.f64 (pow.f64 (*.f64 y y) 2) 1/36))) 2)) (log.f64 (cbrt.f64 (exp.f64 (*.f64 (pow.f64 (*.f64 y y) 2) 1/36)))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (*.f64 (pow.f64 (*.f64 y y) 2) 1/36)))) (log.f64 (sqrt.f64 (exp.f64 (*.f64 (pow.f64 (*.f64 y y) 2) 1/36)))))
(-.f64 (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 1) 1)
(pow.f64 (*.f64 y (*.f64 y 1/6)) 2)
(pow.f64 (*.f64 (pow.f64 (*.f64 y y) 2) 1/36) 1)
(pow.f64 (pow.f64 (cbrt.f64 (*.f64 y (*.f64 y 1/6))) 2) 3)
(pow.f64 (pow.f64 (*.f64 y (*.f64 y 1/6)) 6) 1/3)
(sqrt.f64 (pow.f64 (*.f64 y (*.f64 y 1/6)) 4))
(log.f64 (exp.f64 (*.f64 (pow.f64 (*.f64 y y) 2) 1/36)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (pow.f64 (*.f64 y y) 2) 1/36))))
(cbrt.f64 (pow.f64 (*.f64 y (*.f64 y 1/6)) 6))
(expm1.f64 (log1p.f64 (*.f64 (pow.f64 (*.f64 y y) 2) 1/36)))
(log1p.f64 (expm1.f64 (*.f64 (pow.f64 (*.f64 y y) 2) 1/36)))
(exp.f64 (*.f64 2 (log.f64 (*.f64 y (*.f64 y 1/6)))))
(exp.f64 (*.f64 (log.f64 (*.f64 y (*.f64 y 1/6))) 2))
(exp.f64 (*.f64 (*.f64 2 (log.f64 (*.f64 y (*.f64 y 1/6)))) 1))
(fma.f64 1 (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 1) -1)
(fma.f64 (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 1) 1 -1)
(fma.f64 (pow.f64 (cbrt.f64 (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 1)) 2) (cbrt.f64 (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 1)) -1)
(fma.f64 (hypot.f64 1 (*.f64 y (*.f64 y 1/6))) (hypot.f64 1 (*.f64 y (*.f64 y 1/6))) -1)
(+.f64 0 (*.f64 (sin.f64 x) (fma.f64 y (*.f64 y 1/6) 1)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 x)) (fma.f64 y (*.f64 y 1/6) 1))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 x)) (fma.f64 y (*.f64 y 1/6) 1)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 x)) (fma.f64 y (*.f64 y 1/6) 1)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 x)) (fma.f64 y (*.f64 y 1/6) 1)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 x) (fma.f64 y (*.f64 y 1/6) 1)))) 1)
(/.f64 (sin.f64 x) (/.f64 1 (fma.f64 y (*.f64 y 1/6) 1)))
(/.f64 1 (/.f64 (fma.f64 y (*.f64 y 1/6) -1) (*.f64 (sin.f64 x) (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 -1))))
(/.f64 (*.f64 (sin.f64 x) (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 -1)) (fma.f64 y (*.f64 y 1/6) -1))
(/.f64 (neg.f64 (*.f64 (sin.f64 x) (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 -1))) (neg.f64 (fma.f64 y (*.f64 y 1/6) -1)))
(/.f64 (/.f64 (*.f64 (sin.f64 x) (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 -1)) 1) (fma.f64 y (*.f64 y 1/6) -1))
(/.f64 (/.f64 (*.f64 (sin.f64 x) (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 -1)) (cbrt.f64 (pow.f64 (fma.f64 y (*.f64 y 1/6) -1) 2))) (cbrt.f64 (fma.f64 y (*.f64 y 1/6) -1)))
(/.f64 (/.f64 (*.f64 (sin.f64 x) (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 -1)) (sqrt.f64 (fma.f64 y (*.f64 y 1/6) -1))) (sqrt.f64 (fma.f64 y (*.f64 y 1/6) -1)))
(/.f64 (*.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 -1)) (sin.f64 x)) (neg.f64 (fma.f64 y (*.f64 y 1/6) -1)))
(/.f64 (*.f64 (sin.f64 x) (neg.f64 (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 -1))) (neg.f64 (fma.f64 y (*.f64 y 1/6) -1)))
(pow.f64 (*.f64 (sin.f64 x) (fma.f64 y (*.f64 y 1/6) 1)) 1)
(pow.f64 (pow.f64 (*.f64 (sin.f64 x) (fma.f64 y (*.f64 y 1/6) 1)) 3) 1/3)
(pow.f64 (cbrt.f64 (*.f64 (sin.f64 x) (fma.f64 y (*.f64 y 1/6) 1))) 3)
(pow.f64 (sqrt.f64 (*.f64 (sin.f64 x) (fma.f64 y (*.f64 y 1/6) 1))) 2)
(pow.f64 (*.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (fma.f64 y (*.f64 y 1/6) 1) 3)) 1/3)
(pow.f64 (*.f64 (pow.f64 (fma.f64 y (*.f64 y 1/6) 1) 3) (pow.f64 (sin.f64 x) 3)) 1/3)
(pow.f64 (/.f64 (fma.f64 y (*.f64 y 1/6) -1) (*.f64 (sin.f64 x) (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 -1))) -1)
(sqrt.f64 (pow.f64 (*.f64 (sin.f64 x) (fma.f64 y (*.f64 y 1/6) 1)) 2))
(log.f64 (pow.f64 (exp.f64 (sin.f64 x)) (fma.f64 y (*.f64 y 1/6) 1)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 x) (fma.f64 y (*.f64 y 1/6) 1)))))
(cbrt.f64 (pow.f64 (*.f64 (sin.f64 x) (fma.f64 y (*.f64 y 1/6) 1)) 3))
(cbrt.f64 (*.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (fma.f64 y (*.f64 y 1/6) 1) 3)))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 y (*.f64 y 1/6) 1) 3) (pow.f64 (sin.f64 x) 3)))
(expm1.f64 (log1p.f64 (*.f64 (sin.f64 x) (fma.f64 y (*.f64 y 1/6) 1))))
(log1p.f64 (expm1.f64 (*.f64 (sin.f64 x) (fma.f64 y (*.f64 y 1/6) 1))))
(exp.f64 (log.f64 (*.f64 (sin.f64 x) (fma.f64 y (*.f64 y 1/6) 1))))
(exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 x) (fma.f64 y (*.f64 y 1/6) 1))) 1))
Outputs
(*.f64 1/6 y)
(*.f64 1/6 y)
(*.f64 1/6 y)
(*.f64 1/6 y)
(*.f64 1/6 y)
(*.f64 1/6 y)
(*.f64 1/6 y)
(*.f64 1/6 y)
(*.f64 1/6 y)
(*.f64 1/6 y)
(*.f64 1/6 y)
(*.f64 1/6 y)
(*.f64 1/6 (pow.f64 y 2))
(*.f64 1/6 (*.f64 y y))
(*.f64 1/6 (pow.f64 y 2))
(*.f64 1/6 (*.f64 y y))
(*.f64 1/6 (pow.f64 y 2))
(*.f64 1/6 (*.f64 y y))
(*.f64 1/6 (pow.f64 y 2))
(*.f64 1/6 (*.f64 y y))
(*.f64 1/6 (pow.f64 y 2))
(*.f64 1/6 (*.f64 y y))
(*.f64 1/6 (pow.f64 y 2))
(*.f64 1/6 (*.f64 y y))
(*.f64 1/6 (pow.f64 y 2))
(*.f64 1/6 (*.f64 y y))
(*.f64 1/6 (pow.f64 y 2))
(*.f64 1/6 (*.f64 y y))
(*.f64 1/6 (pow.f64 y 2))
(*.f64 1/6 (*.f64 y y))
(*.f64 1/6 (pow.f64 y 2))
(*.f64 1/6 (*.f64 y y))
(*.f64 1/6 (pow.f64 y 2))
(*.f64 1/6 (*.f64 y y))
(*.f64 1/6 (pow.f64 y 2))
(*.f64 1/6 (*.f64 y y))
(*.f64 1/36 (pow.f64 y 4))
(*.f64 1/36 (pow.f64 y 4))
(*.f64 1/36 (pow.f64 y 4))
(*.f64 1/36 (pow.f64 y 4))
(*.f64 1/36 (pow.f64 y 4))
(*.f64 1/36 (pow.f64 y 4))
(*.f64 1/36 (pow.f64 y 4))
(*.f64 1/36 (pow.f64 y 4))
(*.f64 1/36 (pow.f64 y 4))
(*.f64 1/36 (pow.f64 y 4))
(*.f64 1/36 (pow.f64 y 4))
(*.f64 1/36 (pow.f64 y 4))
(/.f64 (*.f64 (-.f64 (*.f64 1/36 (pow.f64 y 4)) 1) x) (-.f64 (*.f64 1/6 (pow.f64 y 2)) 1))
(/.f64 (*.f64 x (fma.f64 1/36 (pow.f64 y 4) -1)) (fma.f64 1/6 (*.f64 y y) -1))
(*.f64 (fma.f64 1/6 (*.f64 y y) 1) x)
(+.f64 (/.f64 (*.f64 (-.f64 (*.f64 1/36 (pow.f64 y 4)) 1) x) (-.f64 (*.f64 1/6 (pow.f64 y 2)) 1)) (*.f64 -1/6 (/.f64 (*.f64 (-.f64 (*.f64 1/36 (pow.f64 y 4)) 1) (pow.f64 x 3)) (-.f64 (*.f64 1/6 (pow.f64 y 2)) 1))))
(+.f64 (/.f64 (*.f64 x (fma.f64 1/36 (pow.f64 y 4) -1)) (fma.f64 1/6 (*.f64 y y) -1)) (*.f64 -1/6 (/.f64 (*.f64 (pow.f64 x 3) (fma.f64 1/36 (pow.f64 y 4) -1)) (fma.f64 1/6 (*.f64 y y) -1))))
(fma.f64 -1/6 (*.f64 (/.f64 (fma.f64 1/36 (pow.f64 y 4) -1) (fma.f64 1/6 (*.f64 y y) -1)) (pow.f64 x 3)) (/.f64 (*.f64 x (fma.f64 1/36 (pow.f64 y 4) -1)) (fma.f64 1/6 (*.f64 y y) -1)))
(fma.f64 -1/6 (*.f64 (fma.f64 1/6 (*.f64 y y) 1) (pow.f64 x 3)) (*.f64 (fma.f64 1/6 (*.f64 y y) 1) x))
(+.f64 (/.f64 (*.f64 (-.f64 (*.f64 1/36 (pow.f64 y 4)) 1) x) (-.f64 (*.f64 1/6 (pow.f64 y 2)) 1)) (+.f64 (*.f64 -1/6 (/.f64 (*.f64 (-.f64 (*.f64 1/36 (pow.f64 y 4)) 1) (pow.f64 x 3)) (-.f64 (*.f64 1/6 (pow.f64 y 2)) 1))) (*.f64 1/120 (/.f64 (*.f64 (-.f64 (*.f64 1/36 (pow.f64 y 4)) 1) (pow.f64 x 5)) (-.f64 (*.f64 1/6 (pow.f64 y 2)) 1)))))
(+.f64 (/.f64 (*.f64 x (fma.f64 1/36 (pow.f64 y 4) -1)) (fma.f64 1/6 (*.f64 y y) -1)) (fma.f64 -1/6 (/.f64 (*.f64 (pow.f64 x 3) (fma.f64 1/36 (pow.f64 y 4) -1)) (fma.f64 1/6 (*.f64 y y) -1)) (*.f64 1/120 (/.f64 (*.f64 (pow.f64 x 5) (fma.f64 1/36 (pow.f64 y 4) -1)) (fma.f64 1/6 (*.f64 y y) -1)))))
(+.f64 (/.f64 (*.f64 x (fma.f64 1/36 (pow.f64 y 4) -1)) (fma.f64 1/6 (*.f64 y y) -1)) (fma.f64 1/120 (*.f64 (/.f64 (fma.f64 1/36 (pow.f64 y 4) -1) (fma.f64 1/6 (*.f64 y y) -1)) (pow.f64 x 5)) (/.f64 (*.f64 (fma.f64 1/36 (pow.f64 y 4) -1) -1/6) (/.f64 (fma.f64 1/6 (*.f64 y y) -1) (pow.f64 x 3)))))
(fma.f64 -1/6 (*.f64 (fma.f64 1/6 (*.f64 y y) 1) (pow.f64 x 3)) (fma.f64 1/120 (*.f64 (fma.f64 1/6 (*.f64 y y) 1) (pow.f64 x 5)) (*.f64 (fma.f64 1/6 (*.f64 y y) 1) x)))
(+.f64 (*.f64 -1/5040 (/.f64 (*.f64 (-.f64 (*.f64 1/36 (pow.f64 y 4)) 1) (pow.f64 x 7)) (-.f64 (*.f64 1/6 (pow.f64 y 2)) 1))) (+.f64 (/.f64 (*.f64 (-.f64 (*.f64 1/36 (pow.f64 y 4)) 1) x) (-.f64 (*.f64 1/6 (pow.f64 y 2)) 1)) (+.f64 (*.f64 -1/6 (/.f64 (*.f64 (-.f64 (*.f64 1/36 (pow.f64 y 4)) 1) (pow.f64 x 3)) (-.f64 (*.f64 1/6 (pow.f64 y 2)) 1))) (*.f64 1/120 (/.f64 (*.f64 (-.f64 (*.f64 1/36 (pow.f64 y 4)) 1) (pow.f64 x 5)) (-.f64 (*.f64 1/6 (pow.f64 y 2)) 1))))))
(fma.f64 -1/5040 (/.f64 (*.f64 (pow.f64 x 7) (fma.f64 1/36 (pow.f64 y 4) -1)) (fma.f64 1/6 (*.f64 y y) -1)) (+.f64 (/.f64 (*.f64 x (fma.f64 1/36 (pow.f64 y 4) -1)) (fma.f64 1/6 (*.f64 y y) -1)) (fma.f64 -1/6 (/.f64 (*.f64 (pow.f64 x 3) (fma.f64 1/36 (pow.f64 y 4) -1)) (fma.f64 1/6 (*.f64 y y) -1)) (*.f64 1/120 (/.f64 (*.f64 (pow.f64 x 5) (fma.f64 1/36 (pow.f64 y 4) -1)) (fma.f64 1/6 (*.f64 y y) -1))))))
(+.f64 (fma.f64 1/120 (*.f64 (/.f64 (fma.f64 1/36 (pow.f64 y 4) -1) (fma.f64 1/6 (*.f64 y y) -1)) (pow.f64 x 5)) (/.f64 (*.f64 (fma.f64 1/36 (pow.f64 y 4) -1) -1/6) (/.f64 (fma.f64 1/6 (*.f64 y y) -1) (pow.f64 x 3)))) (fma.f64 -1/5040 (*.f64 (/.f64 (fma.f64 1/36 (pow.f64 y 4) -1) (fma.f64 1/6 (*.f64 y y) -1)) (pow.f64 x 7)) (/.f64 (*.f64 x (fma.f64 1/36 (pow.f64 y 4) -1)) (fma.f64 1/6 (*.f64 y y) -1))))
(fma.f64 -1/5040 (*.f64 (fma.f64 1/6 (*.f64 y y) 1) (pow.f64 x 7)) (fma.f64 -1/6 (*.f64 (fma.f64 1/6 (*.f64 y y) 1) (pow.f64 x 3)) (fma.f64 1/120 (*.f64 (fma.f64 1/6 (*.f64 y y) 1) (pow.f64 x 5)) (*.f64 (fma.f64 1/6 (*.f64 y y) 1) x))))
(/.f64 (*.f64 (-.f64 (*.f64 1/36 (pow.f64 y 4)) 1) (sin.f64 x)) (-.f64 (*.f64 1/6 (pow.f64 y 2)) 1))
(/.f64 (sin.f64 x) (/.f64 (fma.f64 1/6 (*.f64 y y) -1) (fma.f64 1/36 (pow.f64 y 4) -1)))
(*.f64 (/.f64 (fma.f64 1/36 (pow.f64 y 4) -1) (fma.f64 1/6 (*.f64 y y) -1)) (sin.f64 x))
(*.f64 (sin.f64 x) (fma.f64 1/6 (*.f64 y y) 1))
(/.f64 (*.f64 (-.f64 (*.f64 1/36 (pow.f64 y 4)) 1) (sin.f64 x)) (-.f64 (*.f64 1/6 (pow.f64 y 2)) 1))
(/.f64 (sin.f64 x) (/.f64 (fma.f64 1/6 (*.f64 y y) -1) (fma.f64 1/36 (pow.f64 y 4) -1)))
(*.f64 (/.f64 (fma.f64 1/36 (pow.f64 y 4) -1) (fma.f64 1/6 (*.f64 y y) -1)) (sin.f64 x))
(*.f64 (sin.f64 x) (fma.f64 1/6 (*.f64 y y) 1))
(/.f64 (*.f64 (-.f64 (*.f64 1/36 (pow.f64 y 4)) 1) (sin.f64 x)) (-.f64 (*.f64 1/6 (pow.f64 y 2)) 1))
(/.f64 (sin.f64 x) (/.f64 (fma.f64 1/6 (*.f64 y y) -1) (fma.f64 1/36 (pow.f64 y 4) -1)))
(*.f64 (/.f64 (fma.f64 1/36 (pow.f64 y 4) -1) (fma.f64 1/6 (*.f64 y y) -1)) (sin.f64 x))
(*.f64 (sin.f64 x) (fma.f64 1/6 (*.f64 y y) 1))
(/.f64 (*.f64 (-.f64 (*.f64 1/36 (pow.f64 y 4)) 1) (sin.f64 x)) (-.f64 (*.f64 1/6 (pow.f64 y 2)) 1))
(/.f64 (sin.f64 x) (/.f64 (fma.f64 1/6 (*.f64 y y) -1) (fma.f64 1/36 (pow.f64 y 4) -1)))
(*.f64 (/.f64 (fma.f64 1/36 (pow.f64 y 4) -1) (fma.f64 1/6 (*.f64 y y) -1)) (sin.f64 x))
(*.f64 (sin.f64 x) (fma.f64 1/6 (*.f64 y y) 1))
(/.f64 (*.f64 (-.f64 (*.f64 1/36 (pow.f64 y 4)) 1) (sin.f64 x)) (-.f64 (*.f64 1/6 (pow.f64 y 2)) 1))
(/.f64 (sin.f64 x) (/.f64 (fma.f64 1/6 (*.f64 y y) -1) (fma.f64 1/36 (pow.f64 y 4) -1)))
(*.f64 (/.f64 (fma.f64 1/36 (pow.f64 y 4) -1) (fma.f64 1/6 (*.f64 y y) -1)) (sin.f64 x))
(*.f64 (sin.f64 x) (fma.f64 1/6 (*.f64 y y) 1))
(/.f64 (*.f64 (-.f64 (*.f64 1/36 (pow.f64 y 4)) 1) (sin.f64 x)) (-.f64 (*.f64 1/6 (pow.f64 y 2)) 1))
(/.f64 (sin.f64 x) (/.f64 (fma.f64 1/6 (*.f64 y y) -1) (fma.f64 1/36 (pow.f64 y 4) -1)))
(*.f64 (/.f64 (fma.f64 1/36 (pow.f64 y 4) -1) (fma.f64 1/6 (*.f64 y y) -1)) (sin.f64 x))
(*.f64 (sin.f64 x) (fma.f64 1/6 (*.f64 y y) 1))
(/.f64 (*.f64 (-.f64 (*.f64 1/36 (pow.f64 y 4)) 1) (sin.f64 x)) (-.f64 (*.f64 1/6 (pow.f64 y 2)) 1))
(/.f64 (sin.f64 x) (/.f64 (fma.f64 1/6 (*.f64 y y) -1) (fma.f64 1/36 (pow.f64 y 4) -1)))
(*.f64 (/.f64 (fma.f64 1/36 (pow.f64 y 4) -1) (fma.f64 1/6 (*.f64 y y) -1)) (sin.f64 x))
(*.f64 (sin.f64 x) (fma.f64 1/6 (*.f64 y y) 1))
(/.f64 (*.f64 (-.f64 (*.f64 1/36 (pow.f64 y 4)) 1) (sin.f64 x)) (-.f64 (*.f64 1/6 (pow.f64 y 2)) 1))
(/.f64 (sin.f64 x) (/.f64 (fma.f64 1/6 (*.f64 y y) -1) (fma.f64 1/36 (pow.f64 y 4) -1)))
(*.f64 (/.f64 (fma.f64 1/36 (pow.f64 y 4) -1) (fma.f64 1/6 (*.f64 y y) -1)) (sin.f64 x))
(*.f64 (sin.f64 x) (fma.f64 1/6 (*.f64 y y) 1))
(sin.f64 x)
(+.f64 (sin.f64 x) (*.f64 1/6 (*.f64 (pow.f64 y 2) (sin.f64 x))))
(/.f64 (sin.f64 x) (/.f64 (fma.f64 1/6 (*.f64 y y) -1) (fma.f64 1/36 (pow.f64 y 4) -1)))
(*.f64 (/.f64 (fma.f64 1/36 (pow.f64 y 4) -1) (fma.f64 1/6 (*.f64 y y) -1)) (sin.f64 x))
(*.f64 (sin.f64 x) (fma.f64 1/6 (*.f64 y y) 1))
(+.f64 (sin.f64 x) (*.f64 1/6 (*.f64 (pow.f64 y 2) (sin.f64 x))))
(/.f64 (sin.f64 x) (/.f64 (fma.f64 1/6 (*.f64 y y) -1) (fma.f64 1/36 (pow.f64 y 4) -1)))
(*.f64 (/.f64 (fma.f64 1/36 (pow.f64 y 4) -1) (fma.f64 1/6 (*.f64 y y) -1)) (sin.f64 x))
(*.f64 (sin.f64 x) (fma.f64 1/6 (*.f64 y y) 1))
(+.f64 (sin.f64 x) (*.f64 1/6 (*.f64 (pow.f64 y 2) (sin.f64 x))))
(/.f64 (sin.f64 x) (/.f64 (fma.f64 1/6 (*.f64 y y) -1) (fma.f64 1/36 (pow.f64 y 4) -1)))
(*.f64 (/.f64 (fma.f64 1/36 (pow.f64 y 4) -1) (fma.f64 1/6 (*.f64 y y) -1)) (sin.f64 x))
(*.f64 (sin.f64 x) (fma.f64 1/6 (*.f64 y y) 1))
(*.f64 1/6 (*.f64 (pow.f64 y 2) (sin.f64 x)))
(*.f64 (*.f64 1/6 (*.f64 y y)) (sin.f64 x))
(*.f64 y (*.f64 (*.f64 1/6 y) (sin.f64 x)))
(*.f64 (sin.f64 x) (*.f64 1/6 (*.f64 y y)))
(+.f64 (sin.f64 x) (*.f64 1/6 (*.f64 (pow.f64 y 2) (sin.f64 x))))
(/.f64 (sin.f64 x) (/.f64 (fma.f64 1/6 (*.f64 y y) -1) (fma.f64 1/36 (pow.f64 y 4) -1)))
(*.f64 (/.f64 (fma.f64 1/36 (pow.f64 y 4) -1) (fma.f64 1/6 (*.f64 y y) -1)) (sin.f64 x))
(*.f64 (sin.f64 x) (fma.f64 1/6 (*.f64 y y) 1))
(+.f64 (sin.f64 x) (*.f64 1/6 (*.f64 (pow.f64 y 2) (sin.f64 x))))
(/.f64 (sin.f64 x) (/.f64 (fma.f64 1/6 (*.f64 y y) -1) (fma.f64 1/36 (pow.f64 y 4) -1)))
(*.f64 (/.f64 (fma.f64 1/36 (pow.f64 y 4) -1) (fma.f64 1/6 (*.f64 y y) -1)) (sin.f64 x))
(*.f64 (sin.f64 x) (fma.f64 1/6 (*.f64 y y) 1))
(+.f64 (sin.f64 x) (*.f64 1/6 (*.f64 (pow.f64 y 2) (sin.f64 x))))
(/.f64 (sin.f64 x) (/.f64 (fma.f64 1/6 (*.f64 y y) -1) (fma.f64 1/36 (pow.f64 y 4) -1)))
(*.f64 (/.f64 (fma.f64 1/36 (pow.f64 y 4) -1) (fma.f64 1/6 (*.f64 y y) -1)) (sin.f64 x))
(*.f64 (sin.f64 x) (fma.f64 1/6 (*.f64 y y) 1))
(*.f64 1/6 (*.f64 (pow.f64 y 2) (sin.f64 x)))
(*.f64 (*.f64 1/6 (*.f64 y y)) (sin.f64 x))
(*.f64 y (*.f64 (*.f64 1/6 y) (sin.f64 x)))
(*.f64 (sin.f64 x) (*.f64 1/6 (*.f64 y y)))
(+.f64 (sin.f64 x) (*.f64 1/6 (*.f64 (pow.f64 y 2) (sin.f64 x))))
(/.f64 (sin.f64 x) (/.f64 (fma.f64 1/6 (*.f64 y y) -1) (fma.f64 1/36 (pow.f64 y 4) -1)))
(*.f64 (/.f64 (fma.f64 1/36 (pow.f64 y 4) -1) (fma.f64 1/6 (*.f64 y y) -1)) (sin.f64 x))
(*.f64 (sin.f64 x) (fma.f64 1/6 (*.f64 y y) 1))
(+.f64 (sin.f64 x) (*.f64 1/6 (*.f64 (pow.f64 y 2) (sin.f64 x))))
(/.f64 (sin.f64 x) (/.f64 (fma.f64 1/6 (*.f64 y y) -1) (fma.f64 1/36 (pow.f64 y 4) -1)))
(*.f64 (/.f64 (fma.f64 1/36 (pow.f64 y 4) -1) (fma.f64 1/6 (*.f64 y y) -1)) (sin.f64 x))
(*.f64 (sin.f64 x) (fma.f64 1/6 (*.f64 y y) 1))
(+.f64 (sin.f64 x) (*.f64 1/6 (*.f64 (pow.f64 y 2) (sin.f64 x))))
(/.f64 (sin.f64 x) (/.f64 (fma.f64 1/6 (*.f64 y y) -1) (fma.f64 1/36 (pow.f64 y 4) -1)))
(*.f64 (/.f64 (fma.f64 1/36 (pow.f64 y 4) -1) (fma.f64 1/6 (*.f64 y y) -1)) (sin.f64 x))
(*.f64 (sin.f64 x) (fma.f64 1/6 (*.f64 y y) 1))
(+.f64 0 (*.f64 y 1/6))
(*.f64 1/6 y)
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 y) 1/6)) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 y) 1/6))))
(*.f64 3 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 y) 1/6))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 y) 1/6))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 y) 1/6))))
(*.f64 1/6 y)
(-.f64 (exp.f64 (log1p.f64 (*.f64 y 1/6))) 1)
(*.f64 1/6 y)
(pow.f64 (*.f64 y 1/6) 1)
(*.f64 1/6 y)
(pow.f64 (pow.f64 (*.f64 y 1/6) 3) 1/3)
(*.f64 1/6 y)
(pow.f64 (cbrt.f64 (*.f64 y 1/6)) 3)
(*.f64 1/6 y)
(pow.f64 (sqrt.f64 (*.f64 y 1/6)) 2)
(*.f64 1/6 y)
(sqrt.f64 (*.f64 (*.f64 y y) 1/36))
(*.f64 1/6 y)
(log.f64 (pow.f64 (exp.f64 y) 1/6))
(*.f64 1/6 y)
(log.f64 (+.f64 1 (expm1.f64 (*.f64 y 1/6))))
(*.f64 1/6 y)
(cbrt.f64 (pow.f64 (*.f64 y 1/6) 3))
(*.f64 1/6 y)
(expm1.f64 (log1p.f64 (*.f64 y 1/6)))
(*.f64 1/6 y)
(log1p.f64 (expm1.f64 (*.f64 y 1/6)))
(*.f64 1/6 y)
(exp.f64 (log.f64 (*.f64 y 1/6)))
(*.f64 1/6 y)
(exp.f64 (*.f64 (log.f64 (*.f64 y 1/6)) 1))
(*.f64 1/6 y)
(+.f64 0 (*.f64 y (*.f64 y 1/6)))
(*.f64 1/6 (*.f64 y y))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 y) (*.f64 y 1/6))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 y) (*.f64 y 1/6)))))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 y) (*.f64 1/6 y))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 y) (*.f64 1/6 y)))))
(*.f64 3 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 y) (*.f64 1/6 y)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 y) (*.f64 y 1/6)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 y) (*.f64 y 1/6)))))
(*.f64 1/6 (*.f64 y y))
(-.f64 (fma.f64 y (*.f64 y 1/6) 1) 1)
(*.f64 1/6 (*.f64 y y))
(pow.f64 (*.f64 y (*.f64 y 1/6)) 1)
(*.f64 1/6 (*.f64 y y))
(pow.f64 (*.f64 (pow.f64 (*.f64 y y) 2) 1/36) 1/2)
(*.f64 1/6 (*.f64 y y))
(pow.f64 (cbrt.f64 (*.f64 y (*.f64 y 1/6))) 3)
(*.f64 1/6 (*.f64 y y))
(pow.f64 (*.f64 y (sqrt.f64 1/6)) 2)
(*.f64 1/6 (*.f64 y y))
(pow.f64 (*.f64 (pow.f64 (*.f64 y y) 3) 1/216) 1/3)
(*.f64 1/6 (*.f64 y y))
(sqrt.f64 (*.f64 (pow.f64 (*.f64 y y) 2) 1/36))
(*.f64 1/6 (*.f64 y y))
(fabs.f64 (*.f64 y (*.f64 y 1/6)))
(*.f64 1/6 (*.f64 y y))
(log.f64 (pow.f64 (exp.f64 y) (*.f64 y 1/6)))
(*.f64 1/6 (*.f64 y y))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 y (*.f64 y 1/6)))))
(*.f64 1/6 (*.f64 y y))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 y y) 3) 1/216))
(*.f64 1/6 (*.f64 y y))
(expm1.f64 (log1p.f64 (*.f64 y (*.f64 y 1/6))))
(*.f64 1/6 (*.f64 y y))
(expm1.f64 (*.f64 (log1p.f64 (*.f64 y (*.f64 y 1/6))) 1))
(*.f64 1/6 (*.f64 y y))
(log1p.f64 (expm1.f64 (*.f64 y (*.f64 y 1/6))))
(*.f64 1/6 (*.f64 y y))
(exp.f64 (log.f64 (*.f64 y (*.f64 y 1/6))))
(*.f64 1/6 (*.f64 y y))
(exp.f64 (*.f64 (log.f64 (*.f64 y (*.f64 y 1/6))) 1))
(*.f64 1/6 (*.f64 y y))
(fma.f64 1 (fma.f64 y (*.f64 y 1/6) 1) -1)
(*.f64 1/6 (*.f64 y y))
(fma.f64 (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 -1) (/.f64 1 (fma.f64 y (*.f64 y 1/6) -1)) -1)
(*.f64 1/6 (*.f64 y y))
(fma.f64 (fma.f64 y (*.f64 y 1/6) 1) 1 -1)
(*.f64 1/6 (*.f64 y y))
(fma.f64 (fma.f64 y (*.f64 y 1/6) 1) (*.f64 (fma.f64 y (*.f64 y 1/6) -1) (/.f64 1 (fma.f64 y (*.f64 y 1/6) -1))) -1)
(*.f64 1/6 (*.f64 y y))
(fma.f64 (cbrt.f64 (fma.f64 y (*.f64 y 1/6) 1)) (pow.f64 (cbrt.f64 (fma.f64 y (*.f64 y 1/6) 1)) 2) -1)
(*.f64 1/6 (*.f64 y y))
(fma.f64 (pow.f64 (cbrt.f64 (fma.f64 y (*.f64 y 1/6) 1)) 2) (cbrt.f64 (fma.f64 y (*.f64 y 1/6) 1)) -1)
(*.f64 1/6 (*.f64 y y))
(fma.f64 (pow.f64 (cbrt.f64 (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 -1)) 2) (*.f64 (cbrt.f64 (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 -1)) (/.f64 1 (fma.f64 y (*.f64 y 1/6) -1))) -1)
(*.f64 1/6 (*.f64 y y))
(fma.f64 (hypot.f64 1 (*.f64 y (sqrt.f64 1/6))) (hypot.f64 1 (*.f64 y (sqrt.f64 1/6))) -1)
(fma.f64 (sqrt.f64 (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 -1)) (*.f64 (sqrt.f64 (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 -1)) (/.f64 1 (fma.f64 y (*.f64 y 1/6) -1))) -1)
(*.f64 1/6 (*.f64 y y))
(fma.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 -1)) (/.f64 1 (neg.f64 (fma.f64 y (*.f64 y 1/6) -1))) -1)
(*.f64 1/6 (*.f64 y y))
(fma.f64 (/.f64 1 (fma.f64 y (*.f64 y 1/6) -1)) (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 -1) -1)
(*.f64 1/6 (*.f64 y y))
(fma.f64 (/.f64 1 (cbrt.f64 (pow.f64 (fma.f64 y (*.f64 y 1/6) -1) 2))) (/.f64 (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 -1) (cbrt.f64 (fma.f64 y (*.f64 y 1/6) -1))) -1)
(fma.f64 (/.f64 1 (cbrt.f64 (pow.f64 (fma.f64 1/6 (*.f64 y y) -1) 2))) (/.f64 (fma.f64 1/36 (pow.f64 y 4) -1) (cbrt.f64 (fma.f64 1/6 (*.f64 y y) -1))) -1)
(+.f64 -1 (/.f64 (/.f64 (fma.f64 1/36 (pow.f64 y 4) -1) (cbrt.f64 (fma.f64 1/6 (*.f64 y y) -1))) (cbrt.f64 (pow.f64 (fma.f64 1/6 (*.f64 y y) -1) 2))))
(fma.f64 (/.f64 1 (sqrt.f64 (fma.f64 y (*.f64 y 1/6) -1))) (/.f64 (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 -1) (sqrt.f64 (fma.f64 y (*.f64 y 1/6) -1))) -1)
(*.f64 1/6 (*.f64 y y))
(fma.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 -1)) 2) 1) (/.f64 (cbrt.f64 (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 -1)) (fma.f64 y (*.f64 y 1/6) -1)) -1)
(*.f64 1/6 (*.f64 y y))
(fma.f64 (/.f64 (sqrt.f64 (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 -1)) 1) (/.f64 (sqrt.f64 (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 -1)) (fma.f64 y (*.f64 y 1/6) -1)) -1)
(*.f64 1/6 (*.f64 y y))
(fma.f64 (/.f64 (fma.f64 y (*.f64 y 1/6) 1) 1) (/.f64 (fma.f64 y (*.f64 y 1/6) -1) (fma.f64 y (*.f64 y 1/6) -1)) -1)
(*.f64 1/6 (*.f64 y y))
(fma.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 -1)) 2) (cbrt.f64 (pow.f64 (fma.f64 y (*.f64 y 1/6) -1) 2))) (cbrt.f64 (fma.f64 y (*.f64 y 1/6) 1)) -1)
(fma.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 1/36 (pow.f64 y 4) -1)) 2) (cbrt.f64 (pow.f64 (fma.f64 1/6 (*.f64 y y) -1) 2))) (cbrt.f64 (fma.f64 y (*.f64 1/6 y) 1)) -1)
(fma.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 1/36 (pow.f64 y 4) -1)) 2) (cbrt.f64 (pow.f64 (fma.f64 1/6 (*.f64 y y) -1) 2))) (cbrt.f64 (fma.f64 1/6 (*.f64 y y) 1)) -1)
(fma.f64 (cbrt.f64 (fma.f64 1/6 (*.f64 y y) 1)) (/.f64 (pow.f64 (cbrt.f64 (fma.f64 1/36 (pow.f64 y 4) -1)) 2) (cbrt.f64 (pow.f64 (fma.f64 1/6 (*.f64 y y) -1) 2))) -1)
(fma.f64 (/.f64 (sqrt.f64 (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 -1)) (cbrt.f64 (pow.f64 (fma.f64 y (*.f64 y 1/6) -1) 2))) (/.f64 (sqrt.f64 (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 -1)) (cbrt.f64 (fma.f64 y (*.f64 y 1/6) -1))) -1)
(fma.f64 (/.f64 (sqrt.f64 (fma.f64 1/36 (pow.f64 y 4) -1)) (cbrt.f64 (pow.f64 (fma.f64 1/6 (*.f64 y y) -1) 2))) (/.f64 (sqrt.f64 (fma.f64 1/36 (pow.f64 y 4) -1)) (cbrt.f64 (fma.f64 1/6 (*.f64 y y) -1))) -1)
(fma.f64 (/.f64 (fma.f64 y (*.f64 y 1/6) 1) (cbrt.f64 (pow.f64 (fma.f64 y (*.f64 y 1/6) -1) 2))) (/.f64 (fma.f64 y (*.f64 y 1/6) -1) (cbrt.f64 (fma.f64 y (*.f64 y 1/6) -1))) -1)
(fma.f64 (/.f64 (fma.f64 y (*.f64 1/6 y) 1) (cbrt.f64 (pow.f64 (fma.f64 1/6 (*.f64 y y) -1) 2))) (/.f64 (fma.f64 1/6 (*.f64 y y) -1) (cbrt.f64 (fma.f64 1/6 (*.f64 y y) -1))) -1)
(fma.f64 (/.f64 (fma.f64 1/6 (*.f64 y y) 1) (cbrt.f64 (pow.f64 (fma.f64 1/6 (*.f64 y y) -1) 2))) (/.f64 (fma.f64 1/6 (*.f64 y y) -1) (cbrt.f64 (fma.f64 1/6 (*.f64 y y) -1))) -1)
(fma.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 -1)) 2) (sqrt.f64 (fma.f64 y (*.f64 y 1/6) -1))) (/.f64 (cbrt.f64 (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 -1)) (sqrt.f64 (fma.f64 y (*.f64 y 1/6) -1))) -1)
(*.f64 1/6 (*.f64 y y))
(fma.f64 (/.f64 (fma.f64 y (*.f64 y 1/6) 1) (sqrt.f64 (fma.f64 y (*.f64 y 1/6) -1))) (/.f64 (fma.f64 y (*.f64 y 1/6) -1) (sqrt.f64 (fma.f64 y (*.f64 y 1/6) -1))) -1)
(*.f64 1/6 (*.f64 y y))
(fma.f64 (/.f64 (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 -1) (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 -1)) (fma.f64 y (*.f64 y 1/6) 1) -1)
(*.f64 1/6 (*.f64 y y))
(fma.f64 (/.f64 (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 -1) (fma.f64 (pow.f64 (*.f64 y y) 3) 1/216 -1)) (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 (fma.f64 y (*.f64 y 1/6) 1)) -1)
(fma.f64 (/.f64 (fma.f64 1/36 (pow.f64 y 4) -1) (fma.f64 (pow.f64 (*.f64 y y) 3) 1/216 -1)) (fma.f64 (pow.f64 y 4) 1/36 (fma.f64 y (*.f64 1/6 y) 1)) -1)
(fma.f64 (/.f64 (fma.f64 1/36 (pow.f64 y 4) -1) (fma.f64 (pow.f64 y 6) 1/216 -1)) (fma.f64 1/36 (pow.f64 y 4) (fma.f64 1/6 (*.f64 y y) 1)) -1)
(+.f64 0 (*.f64 (pow.f64 (*.f64 y y) 2) 1/36))
(*.f64 1/36 (pow.f64 y 4))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (*.f64 (pow.f64 (*.f64 y y) 2) 1/36))) 2)) (log.f64 (cbrt.f64 (exp.f64 (*.f64 (pow.f64 (*.f64 y y) 2) 1/36)))))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (pow.f64 y 4)) 1/36)) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (pow.f64 y 4)) 1/36))))
(*.f64 3 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (pow.f64 y 4)) 1/36))))
(*.f64 3 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 1/36) (pow.f64 y 4)))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (*.f64 (pow.f64 (*.f64 y y) 2) 1/36)))) (log.f64 (sqrt.f64 (exp.f64 (*.f64 (pow.f64 (*.f64 y y) 2) 1/36)))))
(*.f64 2 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (pow.f64 y 4)) 1/36))))
(*.f64 2 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 1/36) (pow.f64 y 4)))))
(-.f64 (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 1) 1)
(*.f64 1/36 (pow.f64 y 4))
(pow.f64 (*.f64 y (*.f64 y 1/6)) 2)
(*.f64 1/36 (pow.f64 y 4))
(pow.f64 (*.f64 (pow.f64 (*.f64 y y) 2) 1/36) 1)
(*.f64 1/36 (pow.f64 y 4))
(pow.f64 (pow.f64 (cbrt.f64 (*.f64 y (*.f64 y 1/6))) 2) 3)
(*.f64 1/36 (pow.f64 y 4))
(pow.f64 (pow.f64 (*.f64 y (*.f64 y 1/6)) 6) 1/3)
(cbrt.f64 (pow.f64 (*.f64 1/6 (*.f64 y y)) 6))
(sqrt.f64 (pow.f64 (*.f64 y (*.f64 y 1/6)) 4))
(*.f64 1/36 (pow.f64 y 4))
(log.f64 (exp.f64 (*.f64 (pow.f64 (*.f64 y y) 2) 1/36)))
(*.f64 1/36 (pow.f64 y 4))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (pow.f64 (*.f64 y y) 2) 1/36))))
(*.f64 1/36 (pow.f64 y 4))
(cbrt.f64 (pow.f64 (*.f64 y (*.f64 y 1/6)) 6))
(cbrt.f64 (pow.f64 (*.f64 1/6 (*.f64 y y)) 6))
(expm1.f64 (log1p.f64 (*.f64 (pow.f64 (*.f64 y y) 2) 1/36)))
(*.f64 1/36 (pow.f64 y 4))
(log1p.f64 (expm1.f64 (*.f64 (pow.f64 (*.f64 y y) 2) 1/36)))
(*.f64 1/36 (pow.f64 y 4))
(exp.f64 (*.f64 2 (log.f64 (*.f64 y (*.f64 y 1/6)))))
(*.f64 1/36 (pow.f64 y 4))
(exp.f64 (*.f64 (log.f64 (*.f64 y (*.f64 y 1/6))) 2))
(*.f64 1/36 (pow.f64 y 4))
(exp.f64 (*.f64 (*.f64 2 (log.f64 (*.f64 y (*.f64 y 1/6)))) 1))
(*.f64 1/36 (pow.f64 y 4))
(fma.f64 1 (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 1) -1)
(*.f64 1/36 (pow.f64 y 4))
(fma.f64 (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 1) 1 -1)
(*.f64 1/36 (pow.f64 y 4))
(fma.f64 (pow.f64 (cbrt.f64 (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 1)) 2) (cbrt.f64 (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 1)) -1)
(*.f64 1/36 (pow.f64 y 4))
(fma.f64 (hypot.f64 1 (*.f64 y (*.f64 y 1/6))) (hypot.f64 1 (*.f64 y (*.f64 y 1/6))) -1)
(fma.f64 (hypot.f64 1 (*.f64 1/6 (*.f64 y y))) (hypot.f64 1 (*.f64 1/6 (*.f64 y y))) -1)
(+.f64 0 (*.f64 (sin.f64 x) (fma.f64 y (*.f64 y 1/6) 1)))
(/.f64 (sin.f64 x) (/.f64 (fma.f64 1/6 (*.f64 y y) -1) (fma.f64 1/36 (pow.f64 y 4) -1)))
(*.f64 (/.f64 (fma.f64 1/36 (pow.f64 y 4) -1) (fma.f64 1/6 (*.f64 y y) -1)) (sin.f64 x))
(*.f64 (sin.f64 x) (fma.f64 1/6 (*.f64 y y) 1))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 x)) (fma.f64 y (*.f64 y 1/6) 1))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 x)) (fma.f64 y (*.f64 y 1/6) 1)))))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 x)) (fma.f64 y (*.f64 1/6 y) 1))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 x)) (fma.f64 y (*.f64 1/6 y) 1)))))
(*.f64 3 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 x)) (fma.f64 1/6 (*.f64 y y) 1)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 x)) (fma.f64 y (*.f64 y 1/6) 1)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 x)) (fma.f64 y (*.f64 y 1/6) 1)))))
(/.f64 (sin.f64 x) (/.f64 (fma.f64 1/6 (*.f64 y y) -1) (fma.f64 1/36 (pow.f64 y 4) -1)))
(*.f64 (/.f64 (fma.f64 1/36 (pow.f64 y 4) -1) (fma.f64 1/6 (*.f64 y y) -1)) (sin.f64 x))
(*.f64 (sin.f64 x) (fma.f64 1/6 (*.f64 y y) 1))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 x) (fma.f64 y (*.f64 y 1/6) 1)))) 1)
(/.f64 (sin.f64 x) (/.f64 (fma.f64 1/6 (*.f64 y y) -1) (fma.f64 1/36 (pow.f64 y 4) -1)))
(*.f64 (/.f64 (fma.f64 1/36 (pow.f64 y 4) -1) (fma.f64 1/6 (*.f64 y y) -1)) (sin.f64 x))
(*.f64 (sin.f64 x) (fma.f64 1/6 (*.f64 y y) 1))
(/.f64 (sin.f64 x) (/.f64 1 (fma.f64 y (*.f64 y 1/6) 1)))
(/.f64 (sin.f64 x) (/.f64 (fma.f64 1/6 (*.f64 y y) -1) (fma.f64 1/36 (pow.f64 y 4) -1)))
(*.f64 (/.f64 (fma.f64 1/36 (pow.f64 y 4) -1) (fma.f64 1/6 (*.f64 y y) -1)) (sin.f64 x))
(*.f64 (sin.f64 x) (fma.f64 1/6 (*.f64 y y) 1))
(/.f64 1 (/.f64 (fma.f64 y (*.f64 y 1/6) -1) (*.f64 (sin.f64 x) (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 -1))))
(/.f64 (sin.f64 x) (/.f64 (fma.f64 1/6 (*.f64 y y) -1) (fma.f64 1/36 (pow.f64 y 4) -1)))
(*.f64 (/.f64 (fma.f64 1/36 (pow.f64 y 4) -1) (fma.f64 1/6 (*.f64 y y) -1)) (sin.f64 x))
(*.f64 (sin.f64 x) (fma.f64 1/6 (*.f64 y y) 1))
(/.f64 (*.f64 (sin.f64 x) (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 -1)) (fma.f64 y (*.f64 y 1/6) -1))
(/.f64 (sin.f64 x) (/.f64 (fma.f64 1/6 (*.f64 y y) -1) (fma.f64 1/36 (pow.f64 y 4) -1)))
(*.f64 (/.f64 (fma.f64 1/36 (pow.f64 y 4) -1) (fma.f64 1/6 (*.f64 y y) -1)) (sin.f64 x))
(*.f64 (sin.f64 x) (fma.f64 1/6 (*.f64 y y) 1))
(/.f64 (neg.f64 (*.f64 (sin.f64 x) (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 -1))) (neg.f64 (fma.f64 y (*.f64 y 1/6) -1)))
(/.f64 (sin.f64 x) (/.f64 (fma.f64 1/6 (*.f64 y y) -1) (fma.f64 1/36 (pow.f64 y 4) -1)))
(*.f64 (/.f64 (fma.f64 1/36 (pow.f64 y 4) -1) (fma.f64 1/6 (*.f64 y y) -1)) (sin.f64 x))
(*.f64 (sin.f64 x) (fma.f64 1/6 (*.f64 y y) 1))
(/.f64 (/.f64 (*.f64 (sin.f64 x) (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 -1)) 1) (fma.f64 y (*.f64 y 1/6) -1))
(/.f64 (sin.f64 x) (/.f64 (fma.f64 1/6 (*.f64 y y) -1) (fma.f64 1/36 (pow.f64 y 4) -1)))
(*.f64 (/.f64 (fma.f64 1/36 (pow.f64 y 4) -1) (fma.f64 1/6 (*.f64 y y) -1)) (sin.f64 x))
(*.f64 (sin.f64 x) (fma.f64 1/6 (*.f64 y y) 1))
(/.f64 (/.f64 (*.f64 (sin.f64 x) (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 -1)) (cbrt.f64 (pow.f64 (fma.f64 y (*.f64 y 1/6) -1) 2))) (cbrt.f64 (fma.f64 y (*.f64 y 1/6) -1)))
(/.f64 (*.f64 (sin.f64 x) (fma.f64 1/36 (pow.f64 y 4) -1)) (*.f64 (cbrt.f64 (fma.f64 1/6 (*.f64 y y) -1)) (cbrt.f64 (pow.f64 (fma.f64 1/6 (*.f64 y y) -1) 2))))
(/.f64 (sin.f64 x) (/.f64 (*.f64 (cbrt.f64 (pow.f64 (fma.f64 1/6 (*.f64 y y) -1) 2)) (cbrt.f64 (fma.f64 1/6 (*.f64 y y) -1))) (fma.f64 1/36 (pow.f64 y 4) -1)))
(/.f64 (/.f64 (*.f64 (sin.f64 x) (fma.f64 1/36 (pow.f64 y 4) -1)) (cbrt.f64 (fma.f64 1/6 (*.f64 y y) -1))) (cbrt.f64 (pow.f64 (fma.f64 1/6 (*.f64 y y) -1) 2)))
(/.f64 (/.f64 (*.f64 (sin.f64 x) (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 -1)) (sqrt.f64 (fma.f64 y (*.f64 y 1/6) -1))) (sqrt.f64 (fma.f64 y (*.f64 y 1/6) -1)))
(/.f64 (sin.f64 x) (/.f64 (fma.f64 1/6 (*.f64 y y) -1) (fma.f64 1/36 (pow.f64 y 4) -1)))
(*.f64 (/.f64 (fma.f64 1/36 (pow.f64 y 4) -1) (fma.f64 1/6 (*.f64 y y) -1)) (sin.f64 x))
(*.f64 (sin.f64 x) (fma.f64 1/6 (*.f64 y y) 1))
(/.f64 (*.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 -1)) (sin.f64 x)) (neg.f64 (fma.f64 y (*.f64 y 1/6) -1)))
(/.f64 (sin.f64 x) (/.f64 (fma.f64 1/6 (*.f64 y y) -1) (fma.f64 1/36 (pow.f64 y 4) -1)))
(*.f64 (/.f64 (fma.f64 1/36 (pow.f64 y 4) -1) (fma.f64 1/6 (*.f64 y y) -1)) (sin.f64 x))
(*.f64 (sin.f64 x) (fma.f64 1/6 (*.f64 y y) 1))
(/.f64 (*.f64 (sin.f64 x) (neg.f64 (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 -1))) (neg.f64 (fma.f64 y (*.f64 y 1/6) -1)))
(/.f64 (sin.f64 x) (/.f64 (fma.f64 1/6 (*.f64 y y) -1) (fma.f64 1/36 (pow.f64 y 4) -1)))
(*.f64 (/.f64 (fma.f64 1/36 (pow.f64 y 4) -1) (fma.f64 1/6 (*.f64 y y) -1)) (sin.f64 x))
(*.f64 (sin.f64 x) (fma.f64 1/6 (*.f64 y y) 1))
(pow.f64 (*.f64 (sin.f64 x) (fma.f64 y (*.f64 y 1/6) 1)) 1)
(/.f64 (sin.f64 x) (/.f64 (fma.f64 1/6 (*.f64 y y) -1) (fma.f64 1/36 (pow.f64 y 4) -1)))
(*.f64 (/.f64 (fma.f64 1/36 (pow.f64 y 4) -1) (fma.f64 1/6 (*.f64 y y) -1)) (sin.f64 x))
(*.f64 (sin.f64 x) (fma.f64 1/6 (*.f64 y y) 1))
(pow.f64 (pow.f64 (*.f64 (sin.f64 x) (fma.f64 y (*.f64 y 1/6) 1)) 3) 1/3)
(/.f64 (sin.f64 x) (/.f64 (fma.f64 1/6 (*.f64 y y) -1) (fma.f64 1/36 (pow.f64 y 4) -1)))
(*.f64 (/.f64 (fma.f64 1/36 (pow.f64 y 4) -1) (fma.f64 1/6 (*.f64 y y) -1)) (sin.f64 x))
(*.f64 (sin.f64 x) (fma.f64 1/6 (*.f64 y y) 1))
(pow.f64 (cbrt.f64 (*.f64 (sin.f64 x) (fma.f64 y (*.f64 y 1/6) 1))) 3)
(/.f64 (sin.f64 x) (/.f64 (fma.f64 1/6 (*.f64 y y) -1) (fma.f64 1/36 (pow.f64 y 4) -1)))
(*.f64 (/.f64 (fma.f64 1/36 (pow.f64 y 4) -1) (fma.f64 1/6 (*.f64 y y) -1)) (sin.f64 x))
(*.f64 (sin.f64 x) (fma.f64 1/6 (*.f64 y y) 1))
(pow.f64 (sqrt.f64 (*.f64 (sin.f64 x) (fma.f64 y (*.f64 y 1/6) 1))) 2)
(/.f64 (sin.f64 x) (/.f64 (fma.f64 1/6 (*.f64 y y) -1) (fma.f64 1/36 (pow.f64 y 4) -1)))
(*.f64 (/.f64 (fma.f64 1/36 (pow.f64 y 4) -1) (fma.f64 1/6 (*.f64 y y) -1)) (sin.f64 x))
(*.f64 (sin.f64 x) (fma.f64 1/6 (*.f64 y y) 1))
(pow.f64 (*.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (fma.f64 y (*.f64 y 1/6) 1) 3)) 1/3)
(/.f64 (sin.f64 x) (/.f64 (fma.f64 1/6 (*.f64 y y) -1) (fma.f64 1/36 (pow.f64 y 4) -1)))
(*.f64 (/.f64 (fma.f64 1/36 (pow.f64 y 4) -1) (fma.f64 1/6 (*.f64 y y) -1)) (sin.f64 x))
(*.f64 (sin.f64 x) (fma.f64 1/6 (*.f64 y y) 1))
(pow.f64 (*.f64 (pow.f64 (fma.f64 y (*.f64 y 1/6) 1) 3) (pow.f64 (sin.f64 x) 3)) 1/3)
(/.f64 (sin.f64 x) (/.f64 (fma.f64 1/6 (*.f64 y y) -1) (fma.f64 1/36 (pow.f64 y 4) -1)))
(*.f64 (/.f64 (fma.f64 1/36 (pow.f64 y 4) -1) (fma.f64 1/6 (*.f64 y y) -1)) (sin.f64 x))
(*.f64 (sin.f64 x) (fma.f64 1/6 (*.f64 y y) 1))
(pow.f64 (/.f64 (fma.f64 y (*.f64 y 1/6) -1) (*.f64 (sin.f64 x) (fma.f64 (pow.f64 (*.f64 y y) 2) 1/36 -1))) -1)
(/.f64 (sin.f64 x) (/.f64 (fma.f64 1/6 (*.f64 y y) -1) (fma.f64 1/36 (pow.f64 y 4) -1)))
(*.f64 (/.f64 (fma.f64 1/36 (pow.f64 y 4) -1) (fma.f64 1/6 (*.f64 y y) -1)) (sin.f64 x))
(*.f64 (sin.f64 x) (fma.f64 1/6 (*.f64 y y) 1))
(sqrt.f64 (pow.f64 (*.f64 (sin.f64 x) (fma.f64 y (*.f64 y 1/6) 1)) 2))
(/.f64 (sin.f64 x) (/.f64 (fma.f64 1/6 (*.f64 y y) -1) (fma.f64 1/36 (pow.f64 y 4) -1)))
(*.f64 (/.f64 (fma.f64 1/36 (pow.f64 y 4) -1) (fma.f64 1/6 (*.f64 y y) -1)) (sin.f64 x))
(*.f64 (sin.f64 x) (fma.f64 1/6 (*.f64 y y) 1))
(log.f64 (pow.f64 (exp.f64 (sin.f64 x)) (fma.f64 y (*.f64 y 1/6) 1)))
(/.f64 (sin.f64 x) (/.f64 (fma.f64 1/6 (*.f64 y y) -1) (fma.f64 1/36 (pow.f64 y 4) -1)))
(*.f64 (/.f64 (fma.f64 1/36 (pow.f64 y 4) -1) (fma.f64 1/6 (*.f64 y y) -1)) (sin.f64 x))
(*.f64 (sin.f64 x) (fma.f64 1/6 (*.f64 y y) 1))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 x) (fma.f64 y (*.f64 y 1/6) 1)))))
(/.f64 (sin.f64 x) (/.f64 (fma.f64 1/6 (*.f64 y y) -1) (fma.f64 1/36 (pow.f64 y 4) -1)))
(*.f64 (/.f64 (fma.f64 1/36 (pow.f64 y 4) -1) (fma.f64 1/6 (*.f64 y y) -1)) (sin.f64 x))
(*.f64 (sin.f64 x) (fma.f64 1/6 (*.f64 y y) 1))
(cbrt.f64 (pow.f64 (*.f64 (sin.f64 x) (fma.f64 y (*.f64 y 1/6) 1)) 3))
(/.f64 (sin.f64 x) (/.f64 (fma.f64 1/6 (*.f64 y y) -1) (fma.f64 1/36 (pow.f64 y 4) -1)))
(*.f64 (/.f64 (fma.f64 1/36 (pow.f64 y 4) -1) (fma.f64 1/6 (*.f64 y y) -1)) (sin.f64 x))
(*.f64 (sin.f64 x) (fma.f64 1/6 (*.f64 y y) 1))
(cbrt.f64 (*.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (fma.f64 y (*.f64 y 1/6) 1) 3)))
(/.f64 (sin.f64 x) (/.f64 (fma.f64 1/6 (*.f64 y y) -1) (fma.f64 1/36 (pow.f64 y 4) -1)))
(*.f64 (/.f64 (fma.f64 1/36 (pow.f64 y 4) -1) (fma.f64 1/6 (*.f64 y y) -1)) (sin.f64 x))
(*.f64 (sin.f64 x) (fma.f64 1/6 (*.f64 y y) 1))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 y (*.f64 y 1/6) 1) 3) (pow.f64 (sin.f64 x) 3)))
(/.f64 (sin.f64 x) (/.f64 (fma.f64 1/6 (*.f64 y y) -1) (fma.f64 1/36 (pow.f64 y 4) -1)))
(*.f64 (/.f64 (fma.f64 1/36 (pow.f64 y 4) -1) (fma.f64 1/6 (*.f64 y y) -1)) (sin.f64 x))
(*.f64 (sin.f64 x) (fma.f64 1/6 (*.f64 y y) 1))
(expm1.f64 (log1p.f64 (*.f64 (sin.f64 x) (fma.f64 y (*.f64 y 1/6) 1))))
(/.f64 (sin.f64 x) (/.f64 (fma.f64 1/6 (*.f64 y y) -1) (fma.f64 1/36 (pow.f64 y 4) -1)))
(*.f64 (/.f64 (fma.f64 1/36 (pow.f64 y 4) -1) (fma.f64 1/6 (*.f64 y y) -1)) (sin.f64 x))
(*.f64 (sin.f64 x) (fma.f64 1/6 (*.f64 y y) 1))
(log1p.f64 (expm1.f64 (*.f64 (sin.f64 x) (fma.f64 y (*.f64 y 1/6) 1))))
(/.f64 (sin.f64 x) (/.f64 (fma.f64 1/6 (*.f64 y y) -1) (fma.f64 1/36 (pow.f64 y 4) -1)))
(*.f64 (/.f64 (fma.f64 1/36 (pow.f64 y 4) -1) (fma.f64 1/6 (*.f64 y y) -1)) (sin.f64 x))
(*.f64 (sin.f64 x) (fma.f64 1/6 (*.f64 y y) 1))
(exp.f64 (log.f64 (*.f64 (sin.f64 x) (fma.f64 y (*.f64 y 1/6) 1))))
(/.f64 (sin.f64 x) (/.f64 (fma.f64 1/6 (*.f64 y y) -1) (fma.f64 1/36 (pow.f64 y 4) -1)))
(*.f64 (/.f64 (fma.f64 1/36 (pow.f64 y 4) -1) (fma.f64 1/6 (*.f64 y y) -1)) (sin.f64 x))
(*.f64 (sin.f64 x) (fma.f64 1/6 (*.f64 y y) 1))
(exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 x) (fma.f64 y (*.f64 y 1/6) 1))) 1))
(/.f64 (sin.f64 x) (/.f64 (fma.f64 1/6 (*.f64 y y) -1) (fma.f64 1/36 (pow.f64 y 4) -1)))
(*.f64 (/.f64 (fma.f64 1/36 (pow.f64 y 4) -1) (fma.f64 1/6 (*.f64 y y) -1)) (sin.f64 x))
(*.f64 (sin.f64 x) (fma.f64 1/6 (*.f64 y y) 1))

eval186.0ms (3.7%)

Compiler

Compiled 10319 to 7254 computations (29.7% saved)

prune63.0ms (1.2%)

Pruning

7 alts after pruning (4 fresh and 3 done)

PrunedKeptTotal
New3454349
Fresh000
Picked011
Done123
Total3467353
Error
0b
Counts
353 → 7
Alt Table
Click to see full alt table
StatusErrorProgram
0.0b
(/.f64 (sin.f64 x) (/.f64 y (sinh.f64 y)))
32.1b
(+.f64 (*.f64 (*.f64 y (*.f64 1/6 y)) x) x)
0.5b
(*.f64 (sin.f64 x) (/.f64 (-.f64 (*.f64 (*.f64 y (*.f64 y 1/6)) (*.f64 y (*.f64 y 1/6))) 1) (-.f64 (*.f64 y (*.f64 y 1/6)) 1)))
61.0b
(*.f64 y (*.f64 y (*.f64 1/6 x)))
61.0b
(*.f64 1/6 (*.f64 (*.f64 y y) x))
0.8b
(sin.f64 x)
32.3b
x
Compiler

Compiled 71 to 49 computations (31% saved)

localize6.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.2b
(*.f64 1/6 (*.f64 (*.f64 y y) x))
7.6b
(*.f64 (*.f64 y y) x)
Compiler

Compiled 20 to 7 computations (65% saved)

series5.0ms (0.1%)

Counts
2 → 48
Calls

12 calls:

TimeVariablePointExpression
0.0ms
y
@inf
(*.f64 (*.f64 y y) x)
0.0ms
x
@0
(*.f64 (*.f64 y y) x)
0.0ms
x
@inf
(*.f64 (*.f64 y y) x)
0.0ms
x
@0
(*.f64 1/6 (*.f64 (*.f64 y y) x))
0.0ms
y
@0
(*.f64 (*.f64 y y) x)

rewrite44.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
646×pow1_binary64
597×add-log-exp_binary64
597×log1p-expm1-u_binary64
597×expm1-log1p-u_binary64
583×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0717
114317
2168017
Stop Event
node limit
Counts
2 → 22
Calls
Call 1
Inputs
(*.f64 (*.f64 y y) x)
(*.f64 1/6 (*.f64 (*.f64 y y) x))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 (*.f64 y y) x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (*.f64 y y) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (*.f64 y y) x) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (*.f64 y y) x)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 y (sqrt.f64 x)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (pow.f64 y 4) (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 x) (*.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (*.f64 y y) x) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (*.f64 y y) x)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (*.f64 y y) x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (*.f64 y y) x)))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 (*.f64 y y) (*.f64 x 1/6))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (*.f64 y y) (*.f64 x 1/6)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (*.f64 y y) (*.f64 x 1/6)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (*.f64 y y) (*.f64 x 1/6))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sqrt.f64 1/6) (*.f64 y (sqrt.f64 x))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 1/36 (*.f64 (pow.f64 y 4) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 1/6) (*.f64 (*.f64 y y) x)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (*.f64 y y) (*.f64 x 1/6)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (*.f64 y y) (*.f64 x 1/6))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (*.f64 y y) (*.f64 x 1/6))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (*.f64 y y) (*.f64 x 1/6))))))))

simplify57.0ms (1.1%)

Algorithm
egg-herbie
Rules
649×fma-def_binary64
601×log-prod_binary64
507×fma-neg_binary64
418×associate-*l/_binary64
408×unswap-sqr_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
063595
1161595
2712595
32670595
47374595
Stop Event
node limit
Counts
70 → 29
Calls
Call 1
Inputs
(*.f64 (pow.f64 y 2) x)
(*.f64 (pow.f64 y 2) x)
(*.f64 (pow.f64 y 2) x)
(*.f64 (pow.f64 y 2) x)
(*.f64 (pow.f64 y 2) x)
(*.f64 (pow.f64 y 2) x)
(*.f64 (pow.f64 y 2) x)
(*.f64 (pow.f64 y 2) x)
(*.f64 (pow.f64 y 2) x)
(*.f64 (pow.f64 y 2) x)
(*.f64 (pow.f64 y 2) x)
(*.f64 (pow.f64 y 2) x)
(*.f64 (pow.f64 y 2) x)
(*.f64 (pow.f64 y 2) x)
(*.f64 (pow.f64 y 2) x)
(*.f64 (pow.f64 y 2) x)
(*.f64 (pow.f64 y 2) x)
(*.f64 (pow.f64 y 2) x)
(*.f64 (pow.f64 y 2) x)
(*.f64 (pow.f64 y 2) x)
(*.f64 (pow.f64 y 2) x)
(*.f64 (pow.f64 y 2) x)
(*.f64 (pow.f64 y 2) x)
(*.f64 (pow.f64 y 2) x)
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(-.f64 (+.f64 1 (*.f64 (*.f64 y y) x)) 1)
(pow.f64 (*.f64 (*.f64 y y) x) 1)
(pow.f64 (pow.f64 (*.f64 (*.f64 y y) x) 3) 1/3)
(pow.f64 (cbrt.f64 (*.f64 (*.f64 y y) x)) 3)
(pow.f64 (*.f64 y (sqrt.f64 x)) 2)
(sqrt.f64 (*.f64 (pow.f64 y 4) (*.f64 x x)))
(log.f64 (pow.f64 (exp.f64 x) (*.f64 y y)))
(cbrt.f64 (pow.f64 (*.f64 (*.f64 y y) x) 3))
(expm1.f64 (log1p.f64 (*.f64 (*.f64 y y) x)))
(log1p.f64 (expm1.f64 (*.f64 (*.f64 y y) x)))
(exp.f64 (log.f64 (*.f64 (*.f64 y y) x)))
(-.f64 (+.f64 1 (*.f64 (*.f64 y y) (*.f64 x 1/6))) 1)
(pow.f64 (*.f64 (*.f64 y y) (*.f64 x 1/6)) 1)
(pow.f64 (pow.f64 (*.f64 (*.f64 y y) (*.f64 x 1/6)) 3) 1/3)
(pow.f64 (cbrt.f64 (*.f64 (*.f64 y y) (*.f64 x 1/6))) 3)
(pow.f64 (*.f64 (sqrt.f64 1/6) (*.f64 y (sqrt.f64 x))) 2)
(sqrt.f64 (*.f64 1/36 (*.f64 (pow.f64 y 4) (*.f64 x x))))
(log.f64 (pow.f64 (exp.f64 1/6) (*.f64 (*.f64 y y) x)))
(cbrt.f64 (pow.f64 (*.f64 (*.f64 y y) (*.f64 x 1/6)) 3))
(expm1.f64 (log1p.f64 (*.f64 (*.f64 y y) (*.f64 x 1/6))))
(log1p.f64 (expm1.f64 (*.f64 (*.f64 y y) (*.f64 x 1/6))))
(exp.f64 (log.f64 (*.f64 (*.f64 y y) (*.f64 x 1/6))))
Outputs
(*.f64 (pow.f64 y 2) x)
(*.f64 y (*.f64 y x))
(*.f64 (pow.f64 y 2) x)
(*.f64 y (*.f64 y x))
(*.f64 (pow.f64 y 2) x)
(*.f64 y (*.f64 y x))
(*.f64 (pow.f64 y 2) x)
(*.f64 y (*.f64 y x))
(*.f64 (pow.f64 y 2) x)
(*.f64 y (*.f64 y x))
(*.f64 (pow.f64 y 2) x)
(*.f64 y (*.f64 y x))
(*.f64 (pow.f64 y 2) x)
(*.f64 y (*.f64 y x))
(*.f64 (pow.f64 y 2) x)
(*.f64 y (*.f64 y x))
(*.f64 (pow.f64 y 2) x)
(*.f64 y (*.f64 y x))
(*.f64 (pow.f64 y 2) x)
(*.f64 y (*.f64 y x))
(*.f64 (pow.f64 y 2) x)
(*.f64 y (*.f64 y x))
(*.f64 (pow.f64 y 2) x)
(*.f64 y (*.f64 y x))
(*.f64 (pow.f64 y 2) x)
(*.f64 y (*.f64 y x))
(*.f64 (pow.f64 y 2) x)
(*.f64 y (*.f64 y x))
(*.f64 (pow.f64 y 2) x)
(*.f64 y (*.f64 y x))
(*.f64 (pow.f64 y 2) x)
(*.f64 y (*.f64 y x))
(*.f64 (pow.f64 y 2) x)
(*.f64 y (*.f64 y x))
(*.f64 (pow.f64 y 2) x)
(*.f64 y (*.f64 y x))
(*.f64 (pow.f64 y 2) x)
(*.f64 y (*.f64 y x))
(*.f64 (pow.f64 y 2) x)
(*.f64 y (*.f64 y x))
(*.f64 (pow.f64 y 2) x)
(*.f64 y (*.f64 y x))
(*.f64 (pow.f64 y 2) x)
(*.f64 y (*.f64 y x))
(*.f64 (pow.f64 y 2) x)
(*.f64 y (*.f64 y x))
(*.f64 (pow.f64 y 2) x)
(*.f64 y (*.f64 y x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 (*.f64 y y) (*.f64 x 1/6))
(*.f64 y (*.f64 (*.f64 y x) 1/6))
(*.f64 y (*.f64 1/6 (*.f64 y x)))
(*.f64 y (*.f64 y (*.f64 x 1/6)))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 (*.f64 y y) (*.f64 x 1/6))
(*.f64 y (*.f64 (*.f64 y x) 1/6))
(*.f64 y (*.f64 1/6 (*.f64 y x)))
(*.f64 y (*.f64 y (*.f64 x 1/6)))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 (*.f64 y y) (*.f64 x 1/6))
(*.f64 y (*.f64 (*.f64 y x) 1/6))
(*.f64 y (*.f64 1/6 (*.f64 y x)))
(*.f64 y (*.f64 y (*.f64 x 1/6)))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 (*.f64 y y) (*.f64 x 1/6))
(*.f64 y (*.f64 (*.f64 y x) 1/6))
(*.f64 y (*.f64 1/6 (*.f64 y x)))
(*.f64 y (*.f64 y (*.f64 x 1/6)))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 (*.f64 y y) (*.f64 x 1/6))
(*.f64 y (*.f64 (*.f64 y x) 1/6))
(*.f64 y (*.f64 1/6 (*.f64 y x)))
(*.f64 y (*.f64 y (*.f64 x 1/6)))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 (*.f64 y y) (*.f64 x 1/6))
(*.f64 y (*.f64 (*.f64 y x) 1/6))
(*.f64 y (*.f64 1/6 (*.f64 y x)))
(*.f64 y (*.f64 y (*.f64 x 1/6)))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 (*.f64 y y) (*.f64 x 1/6))
(*.f64 y (*.f64 (*.f64 y x) 1/6))
(*.f64 y (*.f64 1/6 (*.f64 y x)))
(*.f64 y (*.f64 y (*.f64 x 1/6)))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 (*.f64 y y) (*.f64 x 1/6))
(*.f64 y (*.f64 (*.f64 y x) 1/6))
(*.f64 y (*.f64 1/6 (*.f64 y x)))
(*.f64 y (*.f64 y (*.f64 x 1/6)))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 (*.f64 y y) (*.f64 x 1/6))
(*.f64 y (*.f64 (*.f64 y x) 1/6))
(*.f64 y (*.f64 1/6 (*.f64 y x)))
(*.f64 y (*.f64 y (*.f64 x 1/6)))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 (*.f64 y y) (*.f64 x 1/6))
(*.f64 y (*.f64 (*.f64 y x) 1/6))
(*.f64 y (*.f64 1/6 (*.f64 y x)))
(*.f64 y (*.f64 y (*.f64 x 1/6)))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 (*.f64 y y) (*.f64 x 1/6))
(*.f64 y (*.f64 (*.f64 y x) 1/6))
(*.f64 y (*.f64 1/6 (*.f64 y x)))
(*.f64 y (*.f64 y (*.f64 x 1/6)))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 (*.f64 y y) (*.f64 x 1/6))
(*.f64 y (*.f64 (*.f64 y x) 1/6))
(*.f64 y (*.f64 1/6 (*.f64 y x)))
(*.f64 y (*.f64 y (*.f64 x 1/6)))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 (*.f64 y y) (*.f64 x 1/6))
(*.f64 y (*.f64 (*.f64 y x) 1/6))
(*.f64 y (*.f64 1/6 (*.f64 y x)))
(*.f64 y (*.f64 y (*.f64 x 1/6)))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 (*.f64 y y) (*.f64 x 1/6))
(*.f64 y (*.f64 (*.f64 y x) 1/6))
(*.f64 y (*.f64 1/6 (*.f64 y x)))
(*.f64 y (*.f64 y (*.f64 x 1/6)))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 (*.f64 y y) (*.f64 x 1/6))
(*.f64 y (*.f64 (*.f64 y x) 1/6))
(*.f64 y (*.f64 1/6 (*.f64 y x)))
(*.f64 y (*.f64 y (*.f64 x 1/6)))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 (*.f64 y y) (*.f64 x 1/6))
(*.f64 y (*.f64 (*.f64 y x) 1/6))
(*.f64 y (*.f64 1/6 (*.f64 y x)))
(*.f64 y (*.f64 y (*.f64 x 1/6)))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 (*.f64 y y) (*.f64 x 1/6))
(*.f64 y (*.f64 (*.f64 y x) 1/6))
(*.f64 y (*.f64 1/6 (*.f64 y x)))
(*.f64 y (*.f64 y (*.f64 x 1/6)))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 (*.f64 y y) (*.f64 x 1/6))
(*.f64 y (*.f64 (*.f64 y x) 1/6))
(*.f64 y (*.f64 1/6 (*.f64 y x)))
(*.f64 y (*.f64 y (*.f64 x 1/6)))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 (*.f64 y y) (*.f64 x 1/6))
(*.f64 y (*.f64 (*.f64 y x) 1/6))
(*.f64 y (*.f64 1/6 (*.f64 y x)))
(*.f64 y (*.f64 y (*.f64 x 1/6)))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 (*.f64 y y) (*.f64 x 1/6))
(*.f64 y (*.f64 (*.f64 y x) 1/6))
(*.f64 y (*.f64 1/6 (*.f64 y x)))
(*.f64 y (*.f64 y (*.f64 x 1/6)))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 (*.f64 y y) (*.f64 x 1/6))
(*.f64 y (*.f64 (*.f64 y x) 1/6))
(*.f64 y (*.f64 1/6 (*.f64 y x)))
(*.f64 y (*.f64 y (*.f64 x 1/6)))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 (*.f64 y y) (*.f64 x 1/6))
(*.f64 y (*.f64 (*.f64 y x) 1/6))
(*.f64 y (*.f64 1/6 (*.f64 y x)))
(*.f64 y (*.f64 y (*.f64 x 1/6)))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 (*.f64 y y) (*.f64 x 1/6))
(*.f64 y (*.f64 (*.f64 y x) 1/6))
(*.f64 y (*.f64 1/6 (*.f64 y x)))
(*.f64 y (*.f64 y (*.f64 x 1/6)))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 (*.f64 y y) (*.f64 x 1/6))
(*.f64 y (*.f64 (*.f64 y x) 1/6))
(*.f64 y (*.f64 1/6 (*.f64 y x)))
(*.f64 y (*.f64 y (*.f64 x 1/6)))
(-.f64 (+.f64 1 (*.f64 (*.f64 y y) x)) 1)
(*.f64 y (*.f64 y x))
(pow.f64 (*.f64 (*.f64 y y) x) 1)
(*.f64 y (*.f64 y x))
(pow.f64 (pow.f64 (*.f64 (*.f64 y y) x) 3) 1/3)
(*.f64 y (*.f64 y x))
(pow.f64 (cbrt.f64 (*.f64 (*.f64 y y) x)) 3)
(*.f64 y (*.f64 y x))
(pow.f64 (*.f64 y (sqrt.f64 x)) 2)
(*.f64 y (*.f64 y x))
(sqrt.f64 (*.f64 (pow.f64 y 4) (*.f64 x x)))
(*.f64 y (*.f64 y x))
(log.f64 (pow.f64 (exp.f64 x) (*.f64 y y)))
(*.f64 y (*.f64 y x))
(cbrt.f64 (pow.f64 (*.f64 (*.f64 y y) x) 3))
(*.f64 y (*.f64 y x))
(expm1.f64 (log1p.f64 (*.f64 (*.f64 y y) x)))
(*.f64 y (*.f64 y x))
(log1p.f64 (expm1.f64 (*.f64 (*.f64 y y) x)))
(*.f64 y (*.f64 y x))
(exp.f64 (log.f64 (*.f64 (*.f64 y y) x)))
(*.f64 y (*.f64 y x))
(-.f64 (+.f64 1 (*.f64 (*.f64 y y) (*.f64 x 1/6))) 1)
(*.f64 (*.f64 y y) (*.f64 x 1/6))
(*.f64 y (*.f64 (*.f64 y x) 1/6))
(*.f64 y (*.f64 1/6 (*.f64 y x)))
(*.f64 y (*.f64 y (*.f64 x 1/6)))
(pow.f64 (*.f64 (*.f64 y y) (*.f64 x 1/6)) 1)
(*.f64 (*.f64 y y) (*.f64 x 1/6))
(*.f64 y (*.f64 (*.f64 y x) 1/6))
(*.f64 y (*.f64 1/6 (*.f64 y x)))
(*.f64 y (*.f64 y (*.f64 x 1/6)))
(pow.f64 (pow.f64 (*.f64 (*.f64 y y) (*.f64 x 1/6)) 3) 1/3)
(*.f64 (*.f64 y y) (*.f64 x 1/6))
(*.f64 y (*.f64 (*.f64 y x) 1/6))
(*.f64 y (*.f64 1/6 (*.f64 y x)))
(*.f64 y (*.f64 y (*.f64 x 1/6)))
(pow.f64 (cbrt.f64 (*.f64 (*.f64 y y) (*.f64 x 1/6))) 3)
(*.f64 (*.f64 y y) (*.f64 x 1/6))
(*.f64 y (*.f64 (*.f64 y x) 1/6))
(*.f64 y (*.f64 1/6 (*.f64 y x)))
(*.f64 y (*.f64 y (*.f64 x 1/6)))
(pow.f64 (*.f64 (sqrt.f64 1/6) (*.f64 y (sqrt.f64 x))) 2)
(*.f64 (*.f64 y y) (*.f64 x 1/6))
(*.f64 y (*.f64 (*.f64 y x) 1/6))
(*.f64 y (*.f64 1/6 (*.f64 y x)))
(*.f64 y (*.f64 y (*.f64 x 1/6)))
(sqrt.f64 (*.f64 1/36 (*.f64 (pow.f64 y 4) (*.f64 x x))))
(*.f64 (*.f64 y y) (*.f64 x 1/6))
(*.f64 y (*.f64 (*.f64 y x) 1/6))
(*.f64 y (*.f64 1/6 (*.f64 y x)))
(*.f64 y (*.f64 y (*.f64 x 1/6)))
(log.f64 (pow.f64 (exp.f64 1/6) (*.f64 (*.f64 y y) x)))
(*.f64 (*.f64 y y) (*.f64 x 1/6))
(*.f64 y (*.f64 (*.f64 y x) 1/6))
(*.f64 y (*.f64 1/6 (*.f64 y x)))
(*.f64 y (*.f64 y (*.f64 x 1/6)))
(cbrt.f64 (pow.f64 (*.f64 (*.f64 y y) (*.f64 x 1/6)) 3))
(*.f64 (*.f64 y y) (*.f64 x 1/6))
(*.f64 y (*.f64 (*.f64 y x) 1/6))
(*.f64 y (*.f64 1/6 (*.f64 y x)))
(*.f64 y (*.f64 y (*.f64 x 1/6)))
(expm1.f64 (log1p.f64 (*.f64 (*.f64 y y) (*.f64 x 1/6))))
(*.f64 (*.f64 y y) (*.f64 x 1/6))
(*.f64 y (*.f64 (*.f64 y x) 1/6))
(*.f64 y (*.f64 1/6 (*.f64 y x)))
(*.f64 y (*.f64 y (*.f64 x 1/6)))
(log1p.f64 (expm1.f64 (*.f64 (*.f64 y y) (*.f64 x 1/6))))
(*.f64 (*.f64 y y) (*.f64 x 1/6))
(*.f64 y (*.f64 (*.f64 y x) 1/6))
(*.f64 y (*.f64 1/6 (*.f64 y x)))
(*.f64 y (*.f64 y (*.f64 x 1/6)))
(exp.f64 (log.f64 (*.f64 (*.f64 y y) (*.f64 x 1/6))))
(*.f64 (*.f64 y y) (*.f64 x 1/6))
(*.f64 y (*.f64 (*.f64 y x) 1/6))
(*.f64 y (*.f64 1/6 (*.f64 y x)))
(*.f64 y (*.f64 y (*.f64 x 1/6)))

localize8.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.1b
(*.f64 y (*.f64 y (*.f64 1/6 x)))
0.2b
(*.f64 y (*.f64 1/6 x))
0.3b
(*.f64 1/6 x)
Compiler

Compiled 20 to 12 computations (40% saved)

series6.0ms (0.1%)

Counts
3 → 48
Calls

15 calls:

TimeVariablePointExpression
1.0ms
x
@0
(*.f64 y (*.f64 1/6 x))
1.0ms
y
@0
(*.f64 y (*.f64 1/6 x))
1.0ms
x
@inf
(*.f64 y (*.f64 1/6 x))
0.0ms
y
@-inf
(*.f64 y (*.f64 1/6 x))
0.0ms
y
@inf
(*.f64 y (*.f64 1/6 x))

rewrite45.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
662×pow1_binary64
610×add-log-exp_binary64
610×log1p-expm1-u_binary64
610×expm1-log1p-u_binary64
598×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0721
114221
2167421
Stop Event
node limit
Counts
3 → 37
Calls
Call 1
Inputs
(*.f64 1/6 x)
(*.f64 y (*.f64 1/6 x))
(*.f64 y (*.f64 y (*.f64 1/6 x)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 1/6 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 1/6 x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 1/6 x) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 1/6 x)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 1/6 x)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 1/6 x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 1/6) x))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 1/6 x) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 1/6 x)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 1/6 x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 1/6 x)))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 1/6 (*.f64 x y))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 1/6 (*.f64 x y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 1/6 (*.f64 x y)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 1/6 (*.f64 x y))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 1/6 (*.f64 x y))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 1/6 (*.f64 x y)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 y) (*.f64 1/6 x)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 1/6 (*.f64 x y)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (*.f64 1/6 x) 3) (pow.f64 y 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 y 3) (pow.f64 (*.f64 1/6 x) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 1/6 (*.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 1/6 (*.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 1/6 (*.f64 x y))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 (*.f64 (*.f64 y y) 1/6) x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (*.f64 (*.f64 y y) 1/6) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (*.f64 (*.f64 y y) 1/6) x) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (*.f64 (*.f64 y y) 1/6) x)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 y (sqrt.f64 (*.f64 1/6 x))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (*.f64 (*.f64 y y) 1/6) x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (*.f64 y y)) (*.f64 1/6 x)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (*.f64 (*.f64 y y) 1/6) x) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 y 3) (pow.f64 (*.f64 1/6 (*.f64 x y)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (*.f64 1/6 (*.f64 x y)) 3) (pow.f64 y 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (*.f64 (*.f64 y y) 1/6) x)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (*.f64 (*.f64 y y) 1/6) x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (*.f64 (*.f64 y y) 1/6) x)))))))

simplify52.0ms (1%)

Algorithm
egg-herbie
Rules
774×log-prod_binary64
656×unswap-sqr_binary64
640×fma-neg_binary64
207×fabs-mul_binary64
203×log-pow_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
091739
1220706
2969673
33999673
47537673
Stop Event
node limit
Counts
85 → 44
Calls
Call 1
Inputs
(*.f64 1/6 (*.f64 y x))
(*.f64 1/6 (*.f64 y x))
(*.f64 1/6 (*.f64 y x))
(*.f64 1/6 (*.f64 y x))
(*.f64 1/6 (*.f64 y x))
(*.f64 1/6 (*.f64 y x))
(*.f64 1/6 (*.f64 y x))
(*.f64 1/6 (*.f64 y x))
(*.f64 1/6 (*.f64 y x))
(*.f64 1/6 (*.f64 y x))
(*.f64 1/6 (*.f64 y x))
(*.f64 1/6 (*.f64 y x))
(*.f64 1/6 (*.f64 y x))
(*.f64 1/6 (*.f64 y x))
(*.f64 1/6 (*.f64 y x))
(*.f64 1/6 (*.f64 y x))
(*.f64 1/6 (*.f64 y x))
(*.f64 1/6 (*.f64 y x))
(*.f64 1/6 (*.f64 y x))
(*.f64 1/6 (*.f64 y x))
(*.f64 1/6 (*.f64 y x))
(*.f64 1/6 (*.f64 y x))
(*.f64 1/6 (*.f64 y x))
(*.f64 1/6 (*.f64 y x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(-.f64 (+.f64 1 (*.f64 1/6 x)) 1)
(pow.f64 (*.f64 1/6 x) 1)
(pow.f64 (pow.f64 (*.f64 1/6 x) 3) 1/3)
(pow.f64 (cbrt.f64 (*.f64 1/6 x)) 3)
(pow.f64 (sqrt.f64 (*.f64 1/6 x)) 2)
(sqrt.f64 (pow.f64 (*.f64 1/6 x) 2))
(log.f64 (pow.f64 (exp.f64 1/6) x))
(cbrt.f64 (pow.f64 (*.f64 1/6 x) 3))
(expm1.f64 (log1p.f64 (*.f64 1/6 x)))
(log1p.f64 (expm1.f64 (*.f64 1/6 x)))
(exp.f64 (log.f64 (*.f64 1/6 x)))
(-.f64 (+.f64 1 (*.f64 1/6 (*.f64 x y))) 1)
(pow.f64 (*.f64 1/6 (*.f64 x y)) 1)
(pow.f64 (pow.f64 (*.f64 1/6 (*.f64 x y)) 3) 1/3)
(pow.f64 (cbrt.f64 (*.f64 1/6 (*.f64 x y))) 3)
(pow.f64 (sqrt.f64 (*.f64 1/6 (*.f64 x y))) 2)
(sqrt.f64 (pow.f64 (*.f64 1/6 (*.f64 x y)) 2))
(log.f64 (pow.f64 (exp.f64 y) (*.f64 1/6 x)))
(cbrt.f64 (pow.f64 (*.f64 1/6 (*.f64 x y)) 3))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 1/6 x) 3) (pow.f64 y 3)))
(cbrt.f64 (*.f64 (pow.f64 y 3) (pow.f64 (*.f64 1/6 x) 3)))
(expm1.f64 (log1p.f64 (*.f64 1/6 (*.f64 x y))))
(log1p.f64 (expm1.f64 (*.f64 1/6 (*.f64 x y))))
(exp.f64 (log.f64 (*.f64 1/6 (*.f64 x y))))
(-.f64 (+.f64 1 (*.f64 (*.f64 (*.f64 y y) 1/6) x)) 1)
(pow.f64 (*.f64 (*.f64 (*.f64 y y) 1/6) x) 1)
(pow.f64 (pow.f64 (*.f64 (*.f64 (*.f64 y y) 1/6) x) 3) 1/3)
(pow.f64 (cbrt.f64 (*.f64 (*.f64 (*.f64 y y) 1/6) x)) 3)
(pow.f64 (*.f64 y (sqrt.f64 (*.f64 1/6 x))) 2)
(sqrt.f64 (pow.f64 (*.f64 (*.f64 (*.f64 y y) 1/6) x) 2))
(log.f64 (pow.f64 (exp.f64 (*.f64 y y)) (*.f64 1/6 x)))
(cbrt.f64 (pow.f64 (*.f64 (*.f64 (*.f64 y y) 1/6) x) 3))
(cbrt.f64 (*.f64 (pow.f64 y 3) (pow.f64 (*.f64 1/6 (*.f64 x y)) 3)))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 1/6 (*.f64 x y)) 3) (pow.f64 y 3)))
(expm1.f64 (log1p.f64 (*.f64 (*.f64 (*.f64 y y) 1/6) x)))
(log1p.f64 (expm1.f64 (*.f64 (*.f64 (*.f64 y y) 1/6) x)))
(exp.f64 (log.f64 (*.f64 (*.f64 (*.f64 y y) 1/6) x)))
Outputs
(*.f64 1/6 (*.f64 y x))
(*.f64 1/6 (*.f64 y x))
(*.f64 1/6 (*.f64 y x))
(*.f64 1/6 (*.f64 y x))
(*.f64 1/6 (*.f64 y x))
(*.f64 1/6 (*.f64 y x))
(*.f64 1/6 (*.f64 y x))
(*.f64 1/6 (*.f64 y x))
(*.f64 1/6 (*.f64 y x))
(*.f64 1/6 (*.f64 y x))
(*.f64 1/6 (*.f64 y x))
(*.f64 1/6 (*.f64 y x))
(*.f64 1/6 (*.f64 y x))
(*.f64 1/6 (*.f64 y x))
(*.f64 1/6 (*.f64 y x))
(*.f64 1/6 (*.f64 y x))
(*.f64 1/6 (*.f64 y x))
(*.f64 1/6 (*.f64 y x))
(*.f64 1/6 (*.f64 y x))
(*.f64 1/6 (*.f64 y x))
(*.f64 1/6 (*.f64 y x))
(*.f64 1/6 (*.f64 y x))
(*.f64 1/6 (*.f64 y x))
(*.f64 1/6 (*.f64 y x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 x (*.f64 y y)))
(*.f64 1/6 (*.f64 y (*.f64 y x)))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 x (*.f64 y y)))
(*.f64 1/6 (*.f64 y (*.f64 y x)))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 x (*.f64 y y)))
(*.f64 1/6 (*.f64 y (*.f64 y x)))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 x (*.f64 y y)))
(*.f64 1/6 (*.f64 y (*.f64 y x)))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 x (*.f64 y y)))
(*.f64 1/6 (*.f64 y (*.f64 y x)))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 x (*.f64 y y)))
(*.f64 1/6 (*.f64 y (*.f64 y x)))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 x (*.f64 y y)))
(*.f64 1/6 (*.f64 y (*.f64 y x)))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 x (*.f64 y y)))
(*.f64 1/6 (*.f64 y (*.f64 y x)))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 x (*.f64 y y)))
(*.f64 1/6 (*.f64 y (*.f64 y x)))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 x (*.f64 y y)))
(*.f64 1/6 (*.f64 y (*.f64 y x)))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 x (*.f64 y y)))
(*.f64 1/6 (*.f64 y (*.f64 y x)))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 x (*.f64 y y)))
(*.f64 1/6 (*.f64 y (*.f64 y x)))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 x (*.f64 y y)))
(*.f64 1/6 (*.f64 y (*.f64 y x)))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 x (*.f64 y y)))
(*.f64 1/6 (*.f64 y (*.f64 y x)))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 x (*.f64 y y)))
(*.f64 1/6 (*.f64 y (*.f64 y x)))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 x (*.f64 y y)))
(*.f64 1/6 (*.f64 y (*.f64 y x)))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 x (*.f64 y y)))
(*.f64 1/6 (*.f64 y (*.f64 y x)))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 x (*.f64 y y)))
(*.f64 1/6 (*.f64 y (*.f64 y x)))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 x (*.f64 y y)))
(*.f64 1/6 (*.f64 y (*.f64 y x)))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 x (*.f64 y y)))
(*.f64 1/6 (*.f64 y (*.f64 y x)))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 x (*.f64 y y)))
(*.f64 1/6 (*.f64 y (*.f64 y x)))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 x (*.f64 y y)))
(*.f64 1/6 (*.f64 y (*.f64 y x)))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 x (*.f64 y y)))
(*.f64 1/6 (*.f64 y (*.f64 y x)))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 x (*.f64 y y)))
(*.f64 1/6 (*.f64 y (*.f64 y x)))
(-.f64 (+.f64 1 (*.f64 1/6 x)) 1)
(+.f64 1 (-.f64 (*.f64 1/6 x) 1))
(+.f64 (*.f64 1/6 x) 0)
(*.f64 1/6 x)
(pow.f64 (*.f64 1/6 x) 1)
(+.f64 1 (-.f64 (*.f64 1/6 x) 1))
(+.f64 (*.f64 1/6 x) 0)
(*.f64 1/6 x)
(pow.f64 (pow.f64 (*.f64 1/6 x) 3) 1/3)
(+.f64 1 (-.f64 (*.f64 1/6 x) 1))
(+.f64 (*.f64 1/6 x) 0)
(*.f64 1/6 x)
(pow.f64 (cbrt.f64 (*.f64 1/6 x)) 3)
(+.f64 1 (-.f64 (*.f64 1/6 x) 1))
(+.f64 (*.f64 1/6 x) 0)
(*.f64 1/6 x)
(pow.f64 (sqrt.f64 (*.f64 1/6 x)) 2)
(+.f64 1 (-.f64 (*.f64 1/6 x) 1))
(+.f64 (*.f64 1/6 x) 0)
(*.f64 1/6 x)
(sqrt.f64 (pow.f64 (*.f64 1/6 x) 2))
(+.f64 1 (-.f64 (*.f64 1/6 x) 1))
(+.f64 (*.f64 1/6 x) 0)
(*.f64 1/6 x)
(log.f64 (pow.f64 (exp.f64 1/6) x))
(+.f64 1 (-.f64 (*.f64 1/6 x) 1))
(+.f64 (*.f64 1/6 x) 0)
(*.f64 1/6 x)
(cbrt.f64 (pow.f64 (*.f64 1/6 x) 3))
(+.f64 1 (-.f64 (*.f64 1/6 x) 1))
(+.f64 (*.f64 1/6 x) 0)
(*.f64 1/6 x)
(expm1.f64 (log1p.f64 (*.f64 1/6 x)))
(+.f64 1 (-.f64 (*.f64 1/6 x) 1))
(+.f64 (*.f64 1/6 x) 0)
(*.f64 1/6 x)
(log1p.f64 (expm1.f64 (*.f64 1/6 x)))
(+.f64 1 (-.f64 (*.f64 1/6 x) 1))
(+.f64 (*.f64 1/6 x) 0)
(*.f64 1/6 x)
(exp.f64 (log.f64 (*.f64 1/6 x)))
(+.f64 1 (-.f64 (*.f64 1/6 x) 1))
(+.f64 (*.f64 1/6 x) 0)
(*.f64 1/6 x)
(-.f64 (+.f64 1 (*.f64 1/6 (*.f64 x y))) 1)
(*.f64 1/6 (*.f64 y x))
(pow.f64 (*.f64 1/6 (*.f64 x y)) 1)
(*.f64 1/6 (*.f64 y x))
(pow.f64 (pow.f64 (*.f64 1/6 (*.f64 x y)) 3) 1/3)
(*.f64 1/6 (*.f64 y x))
(pow.f64 (cbrt.f64 (*.f64 1/6 (*.f64 x y))) 3)
(*.f64 1/6 (*.f64 y x))
(pow.f64 (sqrt.f64 (*.f64 1/6 (*.f64 x y))) 2)
(*.f64 1/6 (*.f64 y x))
(sqrt.f64 (pow.f64 (*.f64 1/6 (*.f64 x y)) 2))
(*.f64 1/6 (*.f64 y x))
(log.f64 (pow.f64 (exp.f64 y) (*.f64 1/6 x)))
(*.f64 1/6 (*.f64 y x))
(cbrt.f64 (pow.f64 (*.f64 1/6 (*.f64 x y)) 3))
(*.f64 1/6 (*.f64 y x))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 1/6 x) 3) (pow.f64 y 3)))
(*.f64 1/6 (*.f64 y x))
(cbrt.f64 (*.f64 (pow.f64 y 3) (pow.f64 (*.f64 1/6 x) 3)))
(*.f64 1/6 (*.f64 y x))
(expm1.f64 (log1p.f64 (*.f64 1/6 (*.f64 x y))))
(*.f64 1/6 (*.f64 y x))
(log1p.f64 (expm1.f64 (*.f64 1/6 (*.f64 x y))))
(*.f64 1/6 (*.f64 y x))
(exp.f64 (log.f64 (*.f64 1/6 (*.f64 x y))))
(*.f64 1/6 (*.f64 y x))
(-.f64 (+.f64 1 (*.f64 (*.f64 (*.f64 y y) 1/6) x)) 1)
(*.f64 1/6 (*.f64 x (*.f64 y y)))
(*.f64 1/6 (*.f64 y (*.f64 y x)))
(pow.f64 (*.f64 (*.f64 (*.f64 y y) 1/6) x) 1)
(*.f64 1/6 (*.f64 x (*.f64 y y)))
(*.f64 1/6 (*.f64 y (*.f64 y x)))
(pow.f64 (pow.f64 (*.f64 (*.f64 (*.f64 y y) 1/6) x) 3) 1/3)
(*.f64 1/6 (*.f64 x (*.f64 y y)))
(*.f64 1/6 (*.f64 y (*.f64 y x)))
(pow.f64 (cbrt.f64 (*.f64 (*.f64 (*.f64 y y) 1/6) x)) 3)
(*.f64 1/6 (*.f64 x (*.f64 y y)))
(*.f64 1/6 (*.f64 y (*.f64 y x)))
(pow.f64 (*.f64 y (sqrt.f64 (*.f64 1/6 x))) 2)
(*.f64 1/6 (*.f64 x (*.f64 y y)))
(*.f64 1/6 (*.f64 y (*.f64 y x)))
(sqrt.f64 (pow.f64 (*.f64 (*.f64 (*.f64 y y) 1/6) x) 2))
(*.f64 1/6 (*.f64 x (*.f64 y y)))
(*.f64 1/6 (*.f64 y (*.f64 y x)))
(log.f64 (pow.f64 (exp.f64 (*.f64 y y)) (*.f64 1/6 x)))
(*.f64 1/6 (*.f64 x (*.f64 y y)))
(*.f64 1/6 (*.f64 y (*.f64 y x)))
(cbrt.f64 (pow.f64 (*.f64 (*.f64 (*.f64 y y) 1/6) x) 3))
(*.f64 1/6 (*.f64 x (*.f64 y y)))
(*.f64 1/6 (*.f64 y (*.f64 y x)))
(cbrt.f64 (*.f64 (pow.f64 y 3) (pow.f64 (*.f64 1/6 (*.f64 x y)) 3)))
(*.f64 1/6 (*.f64 x (*.f64 y y)))
(*.f64 1/6 (*.f64 y (*.f64 y x)))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 1/6 (*.f64 x y)) 3) (pow.f64 y 3)))
(*.f64 1/6 (*.f64 x (*.f64 y y)))
(*.f64 1/6 (*.f64 y (*.f64 y x)))
(expm1.f64 (log1p.f64 (*.f64 (*.f64 (*.f64 y y) 1/6) x)))
(*.f64 1/6 (*.f64 x (*.f64 y y)))
(*.f64 1/6 (*.f64 y (*.f64 y x)))
(log1p.f64 (expm1.f64 (*.f64 (*.f64 (*.f64 y y) 1/6) x)))
(*.f64 1/6 (*.f64 x (*.f64 y y)))
(*.f64 1/6 (*.f64 y (*.f64 y x)))
(exp.f64 (log.f64 (*.f64 (*.f64 (*.f64 y y) 1/6) x)))
(*.f64 1/6 (*.f64 x (*.f64 y y)))
(*.f64 1/6 (*.f64 y (*.f64 y x)))

localize11.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.2b
(*.f64 y (*.f64 1/6 y))
0.3b
(*.f64 1/6 y)
7.6b
(*.f64 (*.f64 y (*.f64 1/6 y)) x)
Compiler

Compiled 29 to 17 computations (41.4% saved)

series2.0ms (0%)

Counts
2 → 36
Calls

9 calls:

TimeVariablePointExpression
0.0ms
y
@0
(*.f64 (*.f64 y (*.f64 1/6 y)) x)
0.0ms
x
@-inf
(*.f64 (*.f64 y (*.f64 1/6 y)) x)
0.0ms
y
@inf
(*.f64 (*.f64 y (*.f64 1/6 y)) x)
0.0ms
y
@-inf
(*.f64 (*.f64 y (*.f64 1/6 y)) x)
0.0ms
x
@inf
(*.f64 (*.f64 y (*.f64 1/6 y)) x)

rewrite42.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
661×pow1_binary64
609×add-log-exp_binary64
609×log1p-expm1-u_binary64
609×expm1-log1p-u_binary64
596×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0717
114217
2166617
Stop Event
node limit
Counts
2 → 26
Calls
Call 1
Inputs
(*.f64 (*.f64 y (*.f64 1/6 y)) x)
(*.f64 y (*.f64 1/6 y))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 y (*.f64 y (*.f64 1/6 x)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 y (*.f64 y (*.f64 1/6 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 y (*.f64 y (*.f64 1/6 x))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 y (*.f64 y (*.f64 1/6 x)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 y (*.f64 y (*.f64 1/6 x)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 y (*.f64 y (*.f64 1/6 x))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 x) (*.f64 y (*.f64 y 1/6))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 y (*.f64 y (*.f64 1/6 x))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (*.f64 y (*.f64 y 1/6)) 3) (pow.f64 x 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 x 3) (pow.f64 (*.f64 y (*.f64 y 1/6)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 y (*.f64 y (*.f64 1/6 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 y (*.f64 y (*.f64 1/6 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 y (*.f64 y (*.f64 1/6 x)))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 y (*.f64 y 1/6))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 y (*.f64 y 1/6)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 y (*.f64 y 1/6)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 y (*.f64 y 1/6))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 y (*.f64 y 1/6))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 y (*.f64 y 1/6)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 y) (*.f64 y 1/6)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 y (*.f64 y 1/6)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 y 3) (pow.f64 (*.f64 y 1/6) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (*.f64 y 1/6) 3) (pow.f64 y 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 y (*.f64 y 1/6))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 y (*.f64 y 1/6))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 y (*.f64 y 1/6))))))))

simplify36.0ms (0.7%)

Algorithm
egg-herbie
Rules
643×distribute-rgt-in_binary64
614×distribute-lft-in_binary64
534×log-prod_binary64
485×fma-def_binary64
365×unswap-sqr_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
070545
1174545
2718545
32618545
Stop Event
node limit
Counts
62 → 33
Calls
Call 1
Inputs
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (pow.f64 y 2))
(*.f64 1/6 (pow.f64 y 2))
(*.f64 1/6 (pow.f64 y 2))
(*.f64 1/6 (pow.f64 y 2))
(*.f64 1/6 (pow.f64 y 2))
(*.f64 1/6 (pow.f64 y 2))
(*.f64 1/6 (pow.f64 y 2))
(*.f64 1/6 (pow.f64 y 2))
(*.f64 1/6 (pow.f64 y 2))
(*.f64 1/6 (pow.f64 y 2))
(*.f64 1/6 (pow.f64 y 2))
(*.f64 1/6 (pow.f64 y 2))
(-.f64 (+.f64 1 (*.f64 y (*.f64 y (*.f64 1/6 x)))) 1)
(pow.f64 (*.f64 y (*.f64 y (*.f64 1/6 x))) 1)
(pow.f64 (pow.f64 (*.f64 y (*.f64 y (*.f64 1/6 x))) 3) 1/3)
(pow.f64 (cbrt.f64 (*.f64 y (*.f64 y (*.f64 1/6 x)))) 3)
(pow.f64 (sqrt.f64 (*.f64 y (*.f64 y (*.f64 1/6 x)))) 2)
(sqrt.f64 (pow.f64 (*.f64 y (*.f64 y (*.f64 1/6 x))) 2))
(log.f64 (pow.f64 (exp.f64 x) (*.f64 y (*.f64 y 1/6))))
(cbrt.f64 (pow.f64 (*.f64 y (*.f64 y (*.f64 1/6 x))) 3))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 y (*.f64 y 1/6)) 3) (pow.f64 x 3)))
(cbrt.f64 (*.f64 (pow.f64 x 3) (pow.f64 (*.f64 y (*.f64 y 1/6)) 3)))
(expm1.f64 (log1p.f64 (*.f64 y (*.f64 y (*.f64 1/6 x)))))
(log1p.f64 (expm1.f64 (*.f64 y (*.f64 y (*.f64 1/6 x)))))
(exp.f64 (log.f64 (*.f64 y (*.f64 y (*.f64 1/6 x)))))
(-.f64 (+.f64 1 (*.f64 y (*.f64 y 1/6))) 1)
(pow.f64 (*.f64 y (*.f64 y 1/6)) 1)
(pow.f64 (pow.f64 (*.f64 y (*.f64 y 1/6)) 3) 1/3)
(pow.f64 (cbrt.f64 (*.f64 y (*.f64 y 1/6))) 3)
(pow.f64 (sqrt.f64 (*.f64 y (*.f64 y 1/6))) 2)
(sqrt.f64 (pow.f64 (*.f64 y (*.f64 y 1/6)) 2))
(log.f64 (pow.f64 (exp.f64 y) (*.f64 y 1/6)))
(cbrt.f64 (pow.f64 (*.f64 y (*.f64 y 1/6)) 3))
(cbrt.f64 (*.f64 (pow.f64 y 3) (pow.f64 (*.f64 y 1/6) 3)))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 y 1/6) 3) (pow.f64 y 3)))
(expm1.f64 (log1p.f64 (*.f64 y (*.f64 y 1/6))))
(log1p.f64 (expm1.f64 (*.f64 y (*.f64 y 1/6))))
(exp.f64 (log.f64 (*.f64 y (*.f64 y 1/6))))
Outputs
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (*.f64 y y) x))
(*.f64 y (*.f64 1/6 (*.f64 x y)))
(*.f64 (*.f64 1/6 y) (*.f64 y x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (*.f64 y y) x))
(*.f64 y (*.f64 1/6 (*.f64 x y)))
(*.f64 (*.f64 1/6 y) (*.f64 y x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (*.f64 y y) x))
(*.f64 y (*.f64 1/6 (*.f64 x y)))
(*.f64 (*.f64 1/6 y) (*.f64 y x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (*.f64 y y) x))
(*.f64 y (*.f64 1/6 (*.f64 x y)))
(*.f64 (*.f64 1/6 y) (*.f64 y x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (*.f64 y y) x))
(*.f64 y (*.f64 1/6 (*.f64 x y)))
(*.f64 (*.f64 1/6 y) (*.f64 y x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (*.f64 y y) x))
(*.f64 y (*.f64 1/6 (*.f64 x y)))
(*.f64 (*.f64 1/6 y) (*.f64 y x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (*.f64 y y) x))
(*.f64 y (*.f64 1/6 (*.f64 x y)))
(*.f64 (*.f64 1/6 y) (*.f64 y x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (*.f64 y y) x))
(*.f64 y (*.f64 1/6 (*.f64 x y)))
(*.f64 (*.f64 1/6 y) (*.f64 y x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (*.f64 y y) x))
(*.f64 y (*.f64 1/6 (*.f64 x y)))
(*.f64 (*.f64 1/6 y) (*.f64 y x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (*.f64 y y) x))
(*.f64 y (*.f64 1/6 (*.f64 x y)))
(*.f64 (*.f64 1/6 y) (*.f64 y x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (*.f64 y y) x))
(*.f64 y (*.f64 1/6 (*.f64 x y)))
(*.f64 (*.f64 1/6 y) (*.f64 y x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (*.f64 y y) x))
(*.f64 y (*.f64 1/6 (*.f64 x y)))
(*.f64 (*.f64 1/6 y) (*.f64 y x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (*.f64 y y) x))
(*.f64 y (*.f64 1/6 (*.f64 x y)))
(*.f64 (*.f64 1/6 y) (*.f64 y x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (*.f64 y y) x))
(*.f64 y (*.f64 1/6 (*.f64 x y)))
(*.f64 (*.f64 1/6 y) (*.f64 y x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (*.f64 y y) x))
(*.f64 y (*.f64 1/6 (*.f64 x y)))
(*.f64 (*.f64 1/6 y) (*.f64 y x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (*.f64 y y) x))
(*.f64 y (*.f64 1/6 (*.f64 x y)))
(*.f64 (*.f64 1/6 y) (*.f64 y x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (*.f64 y y) x))
(*.f64 y (*.f64 1/6 (*.f64 x y)))
(*.f64 (*.f64 1/6 y) (*.f64 y x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (*.f64 y y) x))
(*.f64 y (*.f64 1/6 (*.f64 x y)))
(*.f64 (*.f64 1/6 y) (*.f64 y x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (*.f64 y y) x))
(*.f64 y (*.f64 1/6 (*.f64 x y)))
(*.f64 (*.f64 1/6 y) (*.f64 y x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (*.f64 y y) x))
(*.f64 y (*.f64 1/6 (*.f64 x y)))
(*.f64 (*.f64 1/6 y) (*.f64 y x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (*.f64 y y) x))
(*.f64 y (*.f64 1/6 (*.f64 x y)))
(*.f64 (*.f64 1/6 y) (*.f64 y x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (*.f64 y y) x))
(*.f64 y (*.f64 1/6 (*.f64 x y)))
(*.f64 (*.f64 1/6 y) (*.f64 y x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (*.f64 y y) x))
(*.f64 y (*.f64 1/6 (*.f64 x y)))
(*.f64 (*.f64 1/6 y) (*.f64 y x))
(*.f64 1/6 (*.f64 (pow.f64 y 2) x))
(*.f64 1/6 (*.f64 (*.f64 y y) x))
(*.f64 y (*.f64 1/6 (*.f64 x y)))
(*.f64 (*.f64 1/6 y) (*.f64 y x))
(*.f64 1/6 (pow.f64 y 2))
(*.f64 y (*.f64 1/6 y))
(*.f64 1/6 (*.f64 y y))
(*.f64 1/6 (pow.f64 y 2))
(*.f64 y (*.f64 1/6 y))
(*.f64 1/6 (*.f64 y y))
(*.f64 1/6 (pow.f64 y 2))
(*.f64 y (*.f64 1/6 y))
(*.f64 1/6 (*.f64 y y))
(*.f64 1/6 (pow.f64 y 2))
(*.f64 y (*.f64 1/6 y))
(*.f64 1/6 (*.f64 y y))
(*.f64 1/6 (pow.f64 y 2))
(*.f64 y (*.f64 1/6 y))
(*.f64 1/6 (*.f64 y y))
(*.f64 1/6 (pow.f64 y 2))
(*.f64 y (*.f64 1/6 y))
(*.f64 1/6 (*.f64 y y))
(*.f64 1/6 (pow.f64 y 2))
(*.f64 y (*.f64 1/6 y))
(*.f64 1/6 (*.f64 y y))
(*.f64 1/6 (pow.f64 y 2))
(*.f64 y (*.f64 1/6 y))
(*.f64 1/6 (*.f64 y y))
(*.f64 1/6 (pow.f64 y 2))
(*.f64 y (*.f64 1/6 y))
(*.f64 1/6 (*.f64 y y))
(*.f64 1/6 (pow.f64 y 2))
(*.f64 y (*.f64 1/6 y))
(*.f64 1/6 (*.f64 y y))
(*.f64 1/6 (pow.f64 y 2))
(*.f64 y (*.f64 1/6 y))
(*.f64 1/6 (*.f64 y y))
(*.f64 1/6 (pow.f64 y 2))
(*.f64 y (*.f64 1/6 y))
(*.f64 1/6 (*.f64 y y))
(-.f64 (+.f64 1 (*.f64 y (*.f64 y (*.f64 1/6 x)))) 1)
(*.f64 1/6 (*.f64 (*.f64 y y) x))
(*.f64 y (*.f64 1/6 (*.f64 x y)))
(*.f64 (*.f64 1/6 y) (*.f64 y x))
(pow.f64 (*.f64 y (*.f64 y (*.f64 1/6 x))) 1)
(*.f64 1/6 (*.f64 (*.f64 y y) x))
(*.f64 y (*.f64 1/6 (*.f64 x y)))
(*.f64 (*.f64 1/6 y) (*.f64 y x))
(pow.f64 (pow.f64 (*.f64 y (*.f64 y (*.f64 1/6 x))) 3) 1/3)
(*.f64 1/6 (*.f64 (*.f64 y y) x))
(*.f64 y (*.f64 1/6 (*.f64 x y)))
(*.f64 (*.f64 1/6 y) (*.f64 y x))
(pow.f64 (cbrt.f64 (*.f64 y (*.f64 y (*.f64 1/6 x)))) 3)
(*.f64 1/6 (*.f64 (*.f64 y y) x))
(*.f64 y (*.f64 1/6 (*.f64 x y)))
(*.f64 (*.f64 1/6 y) (*.f64 y x))
(pow.f64 (sqrt.f64 (*.f64 y (*.f64 y (*.f64 1/6 x)))) 2)
(*.f64 1/6 (*.f64 (*.f64 y y) x))
(*.f64 y (*.f64 1/6 (*.f64 x y)))
(*.f64 (*.f64 1/6 y) (*.f64 y x))
(sqrt.f64 (pow.f64 (*.f64 y (*.f64 y (*.f64 1/6 x))) 2))
(*.f64 1/6 (*.f64 (*.f64 y y) x))
(*.f64 y (*.f64 1/6 (*.f64 x y)))
(*.f64 (*.f64 1/6 y) (*.f64 y x))
(log.f64 (pow.f64 (exp.f64 x) (*.f64 y (*.f64 y 1/6))))
(*.f64 1/6 (*.f64 (*.f64 y y) x))
(*.f64 y (*.f64 1/6 (*.f64 x y)))
(*.f64 (*.f64 1/6 y) (*.f64 y x))
(cbrt.f64 (pow.f64 (*.f64 y (*.f64 y (*.f64 1/6 x))) 3))
(*.f64 1/6 (*.f64 (*.f64 y y) x))
(*.f64 y (*.f64 1/6 (*.f64 x y)))
(*.f64 (*.f64 1/6 y) (*.f64 y x))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 y (*.f64 y 1/6)) 3) (pow.f64 x 3)))
(*.f64 1/6 (*.f64 (*.f64 y y) x))
(*.f64 y (*.f64 1/6 (*.f64 x y)))
(*.f64 (*.f64 1/6 y) (*.f64 y x))
(cbrt.f64 (*.f64 (pow.f64 x 3) (pow.f64 (*.f64 y (*.f64 y 1/6)) 3)))
(*.f64 1/6 (*.f64 (*.f64 y y) x))
(*.f64 y (*.f64 1/6 (*.f64 x y)))
(*.f64 (*.f64 1/6 y) (*.f64 y x))
(expm1.f64 (log1p.f64 (*.f64 y (*.f64 y (*.f64 1/6 x)))))
(*.f64 1/6 (*.f64 (*.f64 y y) x))
(*.f64 y (*.f64 1/6 (*.f64 x y)))
(*.f64 (*.f64 1/6 y) (*.f64 y x))
(log1p.f64 (expm1.f64 (*.f64 y (*.f64 y (*.f64 1/6 x)))))
(*.f64 1/6 (*.f64 (*.f64 y y) x))
(*.f64 y (*.f64 1/6 (*.f64 x y)))
(*.f64 (*.f64 1/6 y) (*.f64 y x))
(exp.f64 (log.f64 (*.f64 y (*.f64 y (*.f64 1/6 x)))))
(*.f64 1/6 (*.f64 (*.f64 y y) x))
(*.f64 y (*.f64 1/6 (*.f64 x y)))
(*.f64 (*.f64 1/6 y) (*.f64 y x))
(-.f64 (+.f64 1 (*.f64 y (*.f64 y 1/6))) 1)
(*.f64 y (*.f64 1/6 y))
(*.f64 1/6 (*.f64 y y))
(pow.f64 (*.f64 y (*.f64 y 1/6)) 1)
(*.f64 y (*.f64 1/6 y))
(*.f64 1/6 (*.f64 y y))
(pow.f64 (pow.f64 (*.f64 y (*.f64 y 1/6)) 3) 1/3)
(*.f64 y (*.f64 1/6 y))
(*.f64 1/6 (*.f64 y y))
(pow.f64 (cbrt.f64 (*.f64 y (*.f64 y 1/6))) 3)
(*.f64 y (*.f64 1/6 y))
(*.f64 1/6 (*.f64 y y))
(pow.f64 (sqrt.f64 (*.f64 y (*.f64 y 1/6))) 2)
(*.f64 y (*.f64 1/6 y))
(*.f64 1/6 (*.f64 y y))
(sqrt.f64 (pow.f64 (*.f64 y (*.f64 y 1/6)) 2))
(*.f64 y (*.f64 1/6 y))
(*.f64 1/6 (*.f64 y y))
(log.f64 (pow.f64 (exp.f64 y) (*.f64 y 1/6)))
(*.f64 y (*.f64 1/6 y))
(*.f64 1/6 (*.f64 y y))
(cbrt.f64 (pow.f64 (*.f64 y (*.f64 y 1/6)) 3))
(*.f64 y (*.f64 1/6 y))
(*.f64 1/6 (*.f64 y y))
(cbrt.f64 (*.f64 (pow.f64 y 3) (pow.f64 (*.f64 y 1/6) 3)))
(*.f64 y (*.f64 1/6 y))
(*.f64 1/6 (*.f64 y y))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 y 1/6) 3) (pow.f64 y 3)))
(*.f64 y (*.f64 1/6 y))
(*.f64 1/6 (*.f64 y y))
(expm1.f64 (log1p.f64 (*.f64 y (*.f64 y 1/6))))
(*.f64 y (*.f64 1/6 y))
(*.f64 1/6 (*.f64 y y))
(log1p.f64 (expm1.f64 (*.f64 y (*.f64 y 1/6))))
(*.f64 y (*.f64 1/6 y))
(*.f64 1/6 (*.f64 y y))
(exp.f64 (log.f64 (*.f64 y (*.f64 y 1/6))))
(*.f64 y (*.f64 1/6 y))
(*.f64 1/6 (*.f64 y y))

eval26.0ms (0.5%)

Compiler

Compiled 1223 to 761 computations (37.8% saved)

prune19.0ms (0.4%)

Pruning

11 alts after pruning (5 fresh and 6 done)

PrunedKeptTotal
New1164120
Fresh011
Picked011
Done055
Total11611127
Error
0b
Counts
127 → 11
Alt Table
Click to see full alt table
StatusErrorProgram
0.0b
(/.f64 (sin.f64 x) (/.f64 y (sinh.f64 y)))
61.2b
(-.f64 (+.f64 1 (*.f64 (*.f64 (*.f64 y y) 1/6) x)) 1)
32.1b
(+.f64 (*.f64 (*.f64 y (*.f64 1/6 y)) x) x)
61.0b
(*.f64 (*.f64 y y) (*.f64 x 1/6))
0.5b
(*.f64 (sin.f64 x) (/.f64 (-.f64 (*.f64 (*.f64 y (*.f64 y 1/6)) (*.f64 y (*.f64 y 1/6))) 1) (-.f64 (*.f64 y (*.f64 y 1/6)) 1)))
61.0b
(*.f64 y (*.f64 (*.f64 y x) 1/6))
61.0b
(*.f64 y (*.f64 y (*.f64 1/6 x)))
61.0b
(*.f64 1/6 (*.f64 (*.f64 y y) x))
61.0b
(*.f64 1/6 (*.f64 y (*.f64 y x)))
0.8b
(sin.f64 x)
32.3b
x
Compiler

Compiled 111 to 77 computations (30.6% saved)

regimes38.0ms (0.7%)

Counts
15 → 1
Calls
Call 1
Inputs
x
(*.f64 1/6 (*.f64 y (*.f64 y x)))
(*.f64 1/6 (*.f64 (*.f64 y y) x))
(*.f64 y (*.f64 y (*.f64 1/6 x)))
(*.f64 y (*.f64 (*.f64 y x) 1/6))
(*.f64 (*.f64 y y) (*.f64 x 1/6))
(+.f64 (*.f64 (*.f64 y (*.f64 1/6 y)) x) x)
(-.f64 (+.f64 1 (*.f64 (*.f64 (*.f64 y y) 1/6) x)) 1)
(sin.f64 x)
(*.f64 x (fma.f64 y (*.f64 1/6 y) 1))
(/.f64 (sin.f64 x) (+.f64 1 (*.f64 -1/6 (*.f64 y y))))
(*.f64 (sin.f64 x) (/.f64 (-.f64 (*.f64 (*.f64 y (*.f64 y 1/6)) (*.f64 y (*.f64 y 1/6))) 1) (-.f64 (*.f64 y (*.f64 y 1/6)) 1)))
(*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y))
(/.f64 (sin.f64 x) (/.f64 y (sinh.f64 y)))
(*.f64 (sin.f64 x) (fma.f64 (*.f64 y y) 1/6 1))
Outputs
(/.f64 (sin.f64 x) (/.f64 y (sinh.f64 y)))
Calls

5 calls:

10.0ms
(sin.f64 x)
8.0ms
y
7.0ms
(*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y))
7.0ms
x
2.0ms
(/.f64 (sinh.f64 y) y)
Results
ErrorSegmentsBranch
0.0b1x
0.0b1y
0.0b1(*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y))
0.0b1(sin.f64 x)
0.0b1(/.f64 (sinh.f64 y) y)
Compiler

Compiled 150 to 85 computations (43.3% saved)

regimes33.0ms (0.6%)

Counts
13 → 1
Calls
Call 1
Inputs
x
(*.f64 1/6 (*.f64 y (*.f64 y x)))
(*.f64 1/6 (*.f64 (*.f64 y y) x))
(*.f64 y (*.f64 y (*.f64 1/6 x)))
(*.f64 y (*.f64 (*.f64 y x) 1/6))
(*.f64 (*.f64 y y) (*.f64 x 1/6))
(+.f64 (*.f64 (*.f64 y (*.f64 1/6 y)) x) x)
(-.f64 (+.f64 1 (*.f64 (*.f64 (*.f64 y y) 1/6) x)) 1)
(sin.f64 x)
(*.f64 x (fma.f64 y (*.f64 1/6 y) 1))
(/.f64 (sin.f64 x) (+.f64 1 (*.f64 -1/6 (*.f64 y y))))
(*.f64 (sin.f64 x) (/.f64 (-.f64 (*.f64 (*.f64 y (*.f64 y 1/6)) (*.f64 y (*.f64 y 1/6))) 1) (-.f64 (*.f64 y (*.f64 y 1/6)) 1)))
(*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y))
Outputs
(*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y))
Calls

5 calls:

7.0ms
y
7.0ms
(sin.f64 x)
7.0ms
(*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y))
6.0ms
x
2.0ms
(/.f64 (sinh.f64 y) y)
Results
ErrorSegmentsBranch
0.0b1x
0.0b1y
0.0b1(*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y))
0.0b1(sin.f64 x)
0.0b1(/.f64 (sinh.f64 y) y)
Compiler

Compiled 134 to 79 computations (41% saved)

regimes25.0ms (0.5%)

Counts
12 → 1
Calls
Call 1
Inputs
x
(*.f64 1/6 (*.f64 y (*.f64 y x)))
(*.f64 1/6 (*.f64 (*.f64 y y) x))
(*.f64 y (*.f64 y (*.f64 1/6 x)))
(*.f64 y (*.f64 (*.f64 y x) 1/6))
(*.f64 (*.f64 y y) (*.f64 x 1/6))
(+.f64 (*.f64 (*.f64 y (*.f64 1/6 y)) x) x)
(-.f64 (+.f64 1 (*.f64 (*.f64 (*.f64 y y) 1/6) x)) 1)
(sin.f64 x)
(*.f64 x (fma.f64 y (*.f64 1/6 y) 1))
(/.f64 (sin.f64 x) (+.f64 1 (*.f64 -1/6 (*.f64 y y))))
(*.f64 (sin.f64 x) (/.f64 (-.f64 (*.f64 (*.f64 y (*.f64 y 1/6)) (*.f64 y (*.f64 y 1/6))) 1) (-.f64 (*.f64 y (*.f64 y 1/6)) 1)))
Outputs
(*.f64 (sin.f64 x) (/.f64 (-.f64 (*.f64 (*.f64 y (*.f64 y 1/6)) (*.f64 y (*.f64 y 1/6))) 1) (-.f64 (*.f64 y (*.f64 y 1/6)) 1)))
Calls

3 calls:

8.0ms
(sin.f64 x)
6.0ms
x
6.0ms
y
Results
ErrorSegmentsBranch
0.5b1x
0.5b1y
0.5b1(sin.f64 x)
Compiler

Compiled 112 to 66 computations (41.1% saved)

regimes21.0ms (0.4%)

Counts
11 → 1
Calls
Call 1
Inputs
x
(*.f64 1/6 (*.f64 y (*.f64 y x)))
(*.f64 1/6 (*.f64 (*.f64 y y) x))
(*.f64 y (*.f64 y (*.f64 1/6 x)))
(*.f64 y (*.f64 (*.f64 y x) 1/6))
(*.f64 (*.f64 y y) (*.f64 x 1/6))
(+.f64 (*.f64 (*.f64 y (*.f64 1/6 y)) x) x)
(-.f64 (+.f64 1 (*.f64 (*.f64 (*.f64 y y) 1/6) x)) 1)
(sin.f64 x)
(*.f64 x (fma.f64 y (*.f64 1/6 y) 1))
(/.f64 (sin.f64 x) (+.f64 1 (*.f64 -1/6 (*.f64 y y))))
Outputs
(/.f64 (sin.f64 x) (+.f64 1 (*.f64 -1/6 (*.f64 y y))))
Calls

3 calls:

7.0ms
x
6.0ms
(sin.f64 x)
6.0ms
y
Results
ErrorSegmentsBranch
0.5b1x
0.5b1y
0.5b1(sin.f64 x)
Compiler

Compiled 88 to 50 computations (43.2% saved)

regimes20.0ms (0.4%)

Counts
10 → 1
Calls
Call 1
Inputs
x
(*.f64 1/6 (*.f64 y (*.f64 y x)))
(*.f64 1/6 (*.f64 (*.f64 y y) x))
(*.f64 y (*.f64 y (*.f64 1/6 x)))
(*.f64 y (*.f64 (*.f64 y x) 1/6))
(*.f64 (*.f64 y y) (*.f64 x 1/6))
(+.f64 (*.f64 (*.f64 y (*.f64 1/6 y)) x) x)
(-.f64 (+.f64 1 (*.f64 (*.f64 (*.f64 y y) 1/6) x)) 1)
(sin.f64 x)
(*.f64 x (fma.f64 y (*.f64 1/6 y) 1))
Outputs
(sin.f64 x)
Calls

3 calls:

6.0ms
y
6.0ms
(sin.f64 x)
6.0ms
x
Results
ErrorSegmentsBranch
0.8b1x
0.8b1y
0.8b1(sin.f64 x)
Compiler

Compiled 78 to 45 computations (42.3% saved)

regimes13.0ms (0.3%)

Counts
8 → 1
Calls
Call 1
Inputs
x
(*.f64 1/6 (*.f64 y (*.f64 y x)))
(*.f64 1/6 (*.f64 (*.f64 y y) x))
(*.f64 y (*.f64 y (*.f64 1/6 x)))
(*.f64 y (*.f64 (*.f64 y x) 1/6))
(*.f64 (*.f64 y y) (*.f64 x 1/6))
(+.f64 (*.f64 (*.f64 y (*.f64 1/6 y)) x) x)
(-.f64 (+.f64 1 (*.f64 (*.f64 (*.f64 y y) 1/6) x)) 1)
Outputs
(+.f64 (*.f64 (*.f64 y (*.f64 1/6 y)) x) x)
Calls

2 calls:

6.0ms
y
5.0ms
x
Results
ErrorSegmentsBranch
32.1b1x
32.1b1y
Compiler

Compiled 64 to 36 computations (43.8% saved)

regimes30.0ms (0.6%)

Accuracy

Total -29.0b remaining (-89.5%)

Threshold costs -29.0b (-89.5%)

Counts
6 → 1
Calls
Call 1
Inputs
x
(*.f64 1/6 (*.f64 y (*.f64 y x)))
(*.f64 1/6 (*.f64 (*.f64 y y) x))
(*.f64 y (*.f64 y (*.f64 1/6 x)))
(*.f64 y (*.f64 (*.f64 y x) 1/6))
(*.f64 (*.f64 y y) (*.f64 x 1/6))
Outputs
x
Calls

2 calls:

24.0ms
x
4.0ms
y
Results
ErrorSegmentsBranch
32.3b1x
32.3b1y
Compiler

Compiled 44 to 24 computations (45.5% saved)

simplify5.0ms (0.1%)

Algorithm
egg-herbie
Rules
*-commutative_binary64
+-commutative_binary64
sub-neg_binary64
1-exp_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02790
14290
24490
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(/.f64 (sin.f64 x) (/.f64 y (sinh.f64 y)))
(*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y))
(*.f64 (sin.f64 x) (/.f64 (-.f64 (*.f64 (*.f64 y (*.f64 y 1/6)) (*.f64 y (*.f64 y 1/6))) 1) (-.f64 (*.f64 y (*.f64 y 1/6)) 1)))
(/.f64 (sin.f64 x) (+.f64 1 (*.f64 -1/6 (*.f64 y y))))
(sin.f64 x)
(+.f64 (*.f64 (*.f64 y (*.f64 1/6 y)) x) x)
x
Outputs
(/.f64 (sin.f64 x) (/.f64 y (sinh.f64 y)))
(*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y))
(*.f64 (sin.f64 x) (/.f64 (-.f64 (*.f64 (*.f64 y (*.f64 y 1/6)) (*.f64 y (*.f64 y 1/6))) 1) (-.f64 (*.f64 y (*.f64 y 1/6)) 1)))
(*.f64 (sin.f64 x) (/.f64 (+.f64 (*.f64 (*.f64 y (*.f64 y 1/6)) (*.f64 y (*.f64 y 1/6))) -1) (+.f64 (*.f64 y (*.f64 y 1/6)) -1)))
(/.f64 (sin.f64 x) (+.f64 1 (*.f64 -1/6 (*.f64 y y))))
(sin.f64 x)
(+.f64 (*.f64 (*.f64 y (*.f64 1/6 y)) x) x)
(+.f64 x (*.f64 x (*.f64 y (*.f64 y 1/6))))
x
Compiler

Compiled 74 to 52 computations (29.7% saved)

soundness84.0ms (1.7%)

Algorithm
egg-herbie
Rules
804×fma-neg_binary64
491×times-frac_binary64
419×associate-/l*_binary64
357×div-sub_binary64
352×cancel-sign-sub-inv_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0711
11611
23511
37711
417111
542811
6129511
7509211
Stop Event
node limit
Compiler

Compiled 27 to 18 computations (33.3% saved)

end41.0ms (0.8%)

Compiler

Compiled 62 to 35 computations (43.5% saved)

Profiling

Loading profile data...