Details

Time bar (total: 19.1s)

analyze234.0ms (1.2%)

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
0%0%99.9%0.1%0%0%0%6
25%25%74.9%0.1%0%0%0%7
37.5%37.4%62.4%0.1%0%0%0%8
37.5%37.4%62.4%0.1%0%0%0%9
56.3%56.2%43.7%0.1%0%0%0%10
65.6%65.5%34.3%0.1%0%0%0%11
65.6%65.5%34.3%0.1%0%0%0%12
Compiler

Compiled 13 to 9 computations (30.8% saved)

sample1.8s (9.4%)

Results
976.0ms6193×body256valid
604.0ms1383×body1024valid
204.0ms677×body512valid
3.0msbody2048valid
Bogosity

preprocess16.0ms (0.1%)

Algorithm
egg-herbie
Rules
24×fma-def_binary64
20×+-commutative_binary64
12×associate-+r+_binary64
12×associate-+l+_binary64
*-commutative_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02256
14248
27848
310248
033
Stop Event
saturated
saturated
Calls
Call 1
Inputs
0
1
2
Outputs
0
1
2
Call 2
Inputs
(+.f64 (+.f64 x (sin.f64 y)) (*.f64 z (cos.f64 y)))
(+.f64 (+.f64 y (sin.f64 x)) (*.f64 z (cos.f64 x)))
(+.f64 (+.f64 z (sin.f64 y)) (*.f64 x (cos.f64 y)))
(+.f64 (+.f64 x (sin.f64 z)) (*.f64 y (cos.f64 z)))
Outputs
(+.f64 (+.f64 x (sin.f64 y)) (*.f64 z (cos.f64 y)))
(+.f64 x (+.f64 (sin.f64 y) (*.f64 z (cos.f64 y))))
(fma.f64 z (cos.f64 y) (+.f64 x (sin.f64 y)))
(+.f64 x (fma.f64 z (cos.f64 y) (sin.f64 y)))
(+.f64 (+.f64 y (sin.f64 x)) (*.f64 z (cos.f64 x)))
(fma.f64 z (cos.f64 x) (+.f64 y (sin.f64 x)))
(+.f64 (sin.f64 x) (fma.f64 z (cos.f64 x) y))
(+.f64 (+.f64 z (sin.f64 y)) (*.f64 x (cos.f64 y)))
(+.f64 z (+.f64 (sin.f64 y) (*.f64 x (cos.f64 y))))
(fma.f64 x (cos.f64 y) (+.f64 (sin.f64 y) z))
(+.f64 (sin.f64 y) (fma.f64 x (cos.f64 y) z))
(+.f64 (+.f64 x (sin.f64 z)) (*.f64 y (cos.f64 z)))
(+.f64 x (+.f64 (sin.f64 z) (*.f64 y (cos.f64 z))))
(fma.f64 y (cos.f64 z) (+.f64 x (sin.f64 z)))
(+.f64 x (fma.f64 y (cos.f64 z) (sin.f64 z)))
Compiler

Compiled 15 to 11 computations (26.7% saved)

simplify6.0ms (0%)

Algorithm
egg-herbie
Rules
fma-def_binary64
+-commutative_binary64
associate-+r+_binary64
associate-+l+_binary64
*-commutative_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0914
11412
22312
32912
Stop Event
saturated
Counts
1 → 2
Calls
Call 1
Inputs
(+.f64 (+.f64 x (sin.f64 y)) (*.f64 z (cos.f64 y)))
Outputs
(+.f64 (+.f64 x (sin.f64 y)) (*.f64 z (cos.f64 y)))
(fma.f64 z (cos.f64 y) (+.f64 x (sin.f64 y)))

eval1.0ms (0%)

Compiler

Compiled 20 to 9 computations (55% saved)

prune1.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New112
Fresh011
Picked000
Done000
Total123
Error
0.0b
Counts
3 → 1
Alt Table
Click to see full alt table
StatusErrorProgram
0.0b
(+.f64 (+.f64 x (sin.f64 y)) (*.f64 z (cos.f64 y)))
Compiler

Compiled 12 to 8 computations (33.3% saved)

localize11.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(+.f64 x (sin.f64 y))
0.1b
(*.f64 z (cos.f64 y))
Compiler

Compiled 27 to 8 computations (70.4% saved)

series15.0ms (0.1%)

Counts
2 → 40
Calls

12 calls:

TimeVariablePointExpression
2.0ms
y
@0
(+.f64 x (sin.f64 y))
2.0ms
z
@0
(*.f64 z (cos.f64 y))
2.0ms
y
@0
(*.f64 z (cos.f64 y))
1.0ms
z
@inf
(*.f64 z (cos.f64 y))
1.0ms
y
@inf
(*.f64 z (cos.f64 y))
Compiler

Compiled 485 to 368 computations (24.1% saved)

rewrite46.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
890×pow1_binary64
820×add-log-exp_binary64
820×log1p-expm1-u_binary64
820×expm1-log1p-u_binary64
801×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0812
116612
2220112
Stop Event
node limit
Counts
2 → 46
Calls
Call 1
Inputs
(*.f64 z (cos.f64 y))
(+.f64 x (sin.f64 y))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 z (cos.f64 y))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 z (cos.f64 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 z (cos.f64 y)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 z (cos.f64 y))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 z (cos.f64 y)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 z) (cos.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 z (cos.f64 y)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 z 3) (pow.f64 (cos.f64 y) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (cos.f64 y) 3) (pow.f64 z 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 z (cos.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 z (cos.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 z (cos.f64 y))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (+.f64 x (sin.f64 y))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 x x) (-.f64 x (sin.f64 y))) (/.f64 (pow.f64 (sin.f64 y) 2) (-.f64 x (sin.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 x (sin.f64 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 x (sin.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (+.f64 x (sin.f64 y))) (pow.f64 (cbrt.f64 (+.f64 x (sin.f64 y))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (+.f64 x (sin.f64 y))) 2) (cbrt.f64 (+.f64 x (sin.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (+.f64 x (sin.f64 y))) (sqrt.f64 (+.f64 x (sin.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 x 3) (pow.f64 (sin.f64 y) 3)) (/.f64 1 (fma.f64 x x (*.f64 (sin.f64 y) (-.f64 (sin.f64 y) x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 x x) (pow.f64 (sin.f64 y) 2)) (/.f64 1 (-.f64 x (sin.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 x x (*.f64 (sin.f64 y) (-.f64 (sin.f64 y) x))) (+.f64 (pow.f64 x 3) (pow.f64 (sin.f64 y) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 x (sin.f64 y)) (-.f64 (*.f64 x x) (pow.f64 (sin.f64 y) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 x 3) (pow.f64 (sin.f64 y) 3)) (fma.f64 x x (*.f64 (sin.f64 y) (-.f64 (sin.f64 y) x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 x 3) (pow.f64 (sin.f64 y) 3)) (+.f64 (pow.f64 (sin.f64 y) 2) (-.f64 (*.f64 x x) (*.f64 x (sin.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 x x) (pow.f64 (sin.f64 y) 2)) (-.f64 x (sin.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 x 3) (pow.f64 (sin.f64 y) 3))) (neg.f64 (fma.f64 x x (*.f64 (sin.f64 y) (-.f64 (sin.f64 y) x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (*.f64 x x) (pow.f64 (sin.f64 y) 2))) (neg.f64 (-.f64 x (sin.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (sin.f64 y) 2) (*.f64 x x)) (-.f64 (sin.f64 y) x))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 x (sin.f64 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (+.f64 x (sin.f64 y)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (+.f64 x (sin.f64 y))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (+.f64 x (sin.f64 y))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (+.f64 x (sin.f64 y)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (+.f64 x (sin.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (+.f64 x (sin.f64 y)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (+.f64 x (sin.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (+.f64 x (sin.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (+.f64 x (sin.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 x (sin.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (sin.f64 y) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x) (sin.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (sin.f64 y)) 2) (cbrt.f64 (sin.f64 y)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (sqrt.f64 x) (sin.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (sin.f64 y)) (sqrt.f64 (sin.f64 y)) x)))))

simplify72.0ms (0.4%)

Algorithm
egg-herbie
Rules
639×associate-/r*_binary64
379×fma-def_binary64
376×fma-neg_binary64
347×div-sub_binary64
312×unswap-sqr_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0146771
1370754
21150750
34204683
Stop Event
node limit
Counts
86 → 77
Calls
Call 1
Inputs
(*.f64 (cos.f64 y) z)
(*.f64 (cos.f64 y) z)
(*.f64 (cos.f64 y) z)
(*.f64 (cos.f64 y) z)
(*.f64 (cos.f64 y) z)
(*.f64 (cos.f64 y) z)
(*.f64 (cos.f64 y) z)
(*.f64 (cos.f64 y) z)
(*.f64 (cos.f64 y) z)
(*.f64 (cos.f64 y) z)
(*.f64 (cos.f64 y) z)
(*.f64 (cos.f64 y) z)
z
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y 2) z)) z)
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y 2) z)) (+.f64 z (*.f64 1/24 (*.f64 (pow.f64 y 4) z))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y 2) z)) (+.f64 z (+.f64 (*.f64 1/24 (*.f64 (pow.f64 y 4) z)) (*.f64 -1/720 (*.f64 z (pow.f64 y 6))))))
(sin.f64 y)
(+.f64 (sin.f64 y) x)
(+.f64 (sin.f64 y) x)
(+.f64 (sin.f64 y) x)
x
(+.f64 (sin.f64 y) x)
(+.f64 (sin.f64 y) x)
(+.f64 (sin.f64 y) x)
x
(+.f64 (sin.f64 y) x)
(+.f64 (sin.f64 y) x)
(+.f64 (sin.f64 y) x)
x
(+.f64 y x)
(+.f64 (*.f64 -1/6 (pow.f64 y 3)) (+.f64 y x))
(+.f64 (*.f64 -1/6 (pow.f64 y 3)) (+.f64 y (+.f64 (*.f64 1/120 (pow.f64 y 5)) x)))
(+.f64 (sin.f64 y) x)
(+.f64 (sin.f64 y) x)
(+.f64 (sin.f64 y) x)
(+.f64 (sin.f64 y) x)
(+.f64 (sin.f64 y) x)
(+.f64 (sin.f64 y) x)
(+.f64 (sin.f64 y) x)
(+.f64 (sin.f64 y) x)
(-.f64 (+.f64 1 (*.f64 z (cos.f64 y))) 1)
(pow.f64 (*.f64 z (cos.f64 y)) 1)
(pow.f64 (pow.f64 (*.f64 z (cos.f64 y)) 3) 1/3)
(pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 3)
(pow.f64 (sqrt.f64 (*.f64 z (cos.f64 y))) 2)
(sqrt.f64 (pow.f64 (*.f64 z (cos.f64 y)) 2))
(log.f64 (pow.f64 (exp.f64 z) (cos.f64 y)))
(cbrt.f64 (pow.f64 (*.f64 z (cos.f64 y)) 3))
(cbrt.f64 (*.f64 (pow.f64 z 3) (pow.f64 (cos.f64 y) 3)))
(cbrt.f64 (*.f64 (pow.f64 (cos.f64 y) 3) (pow.f64 z 3)))
(expm1.f64 (log1p.f64 (*.f64 z (cos.f64 y))))
(log1p.f64 (expm1.f64 (*.f64 z (cos.f64 y))))
(exp.f64 (log.f64 (*.f64 z (cos.f64 y))))
(-.f64 (+.f64 1 (+.f64 x (sin.f64 y))) 1)
(-.f64 (/.f64 (*.f64 x x) (-.f64 x (sin.f64 y))) (/.f64 (pow.f64 (sin.f64 y) 2) (-.f64 x (sin.f64 y))))
(*.f64 (+.f64 x (sin.f64 y)) 1)
(*.f64 1 (+.f64 x (sin.f64 y)))
(*.f64 (cbrt.f64 (+.f64 x (sin.f64 y))) (pow.f64 (cbrt.f64 (+.f64 x (sin.f64 y))) 2))
(*.f64 (pow.f64 (cbrt.f64 (+.f64 x (sin.f64 y))) 2) (cbrt.f64 (+.f64 x (sin.f64 y))))
(*.f64 (sqrt.f64 (+.f64 x (sin.f64 y))) (sqrt.f64 (+.f64 x (sin.f64 y))))
(*.f64 (+.f64 (pow.f64 x 3) (pow.f64 (sin.f64 y) 3)) (/.f64 1 (fma.f64 x x (*.f64 (sin.f64 y) (-.f64 (sin.f64 y) x)))))
(*.f64 (-.f64 (*.f64 x x) (pow.f64 (sin.f64 y) 2)) (/.f64 1 (-.f64 x (sin.f64 y))))
(/.f64 1 (/.f64 (fma.f64 x x (*.f64 (sin.f64 y) (-.f64 (sin.f64 y) x))) (+.f64 (pow.f64 x 3) (pow.f64 (sin.f64 y) 3))))
(/.f64 1 (/.f64 (-.f64 x (sin.f64 y)) (-.f64 (*.f64 x x) (pow.f64 (sin.f64 y) 2))))
(/.f64 (+.f64 (pow.f64 x 3) (pow.f64 (sin.f64 y) 3)) (fma.f64 x x (*.f64 (sin.f64 y) (-.f64 (sin.f64 y) x))))
(/.f64 (+.f64 (pow.f64 x 3) (pow.f64 (sin.f64 y) 3)) (+.f64 (pow.f64 (sin.f64 y) 2) (-.f64 (*.f64 x x) (*.f64 x (sin.f64 y)))))
(/.f64 (-.f64 (*.f64 x x) (pow.f64 (sin.f64 y) 2)) (-.f64 x (sin.f64 y)))
(/.f64 (neg.f64 (+.f64 (pow.f64 x 3) (pow.f64 (sin.f64 y) 3))) (neg.f64 (fma.f64 x x (*.f64 (sin.f64 y) (-.f64 (sin.f64 y) x)))))
(/.f64 (neg.f64 (-.f64 (*.f64 x x) (pow.f64 (sin.f64 y) 2))) (neg.f64 (-.f64 x (sin.f64 y))))
(/.f64 (-.f64 (pow.f64 (sin.f64 y) 2) (*.f64 x x)) (-.f64 (sin.f64 y) x))
(pow.f64 (+.f64 x (sin.f64 y)) 1)
(pow.f64 (pow.f64 (+.f64 x (sin.f64 y)) 3) 1/3)
(pow.f64 (cbrt.f64 (+.f64 x (sin.f64 y))) 3)
(pow.f64 (sqrt.f64 (+.f64 x (sin.f64 y))) 2)
(sqrt.f64 (pow.f64 (+.f64 x (sin.f64 y)) 2))
(log.f64 (exp.f64 (+.f64 x (sin.f64 y))))
(cbrt.f64 (pow.f64 (+.f64 x (sin.f64 y)) 3))
(expm1.f64 (log1p.f64 (+.f64 x (sin.f64 y))))
(log1p.f64 (expm1.f64 (+.f64 x (sin.f64 y))))
(exp.f64 (log.f64 (+.f64 x (sin.f64 y))))
(fma.f64 1 x (sin.f64 y))
(fma.f64 1 (sin.f64 y) x)
(fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x) (sin.f64 y))
(fma.f64 (pow.f64 (cbrt.f64 (sin.f64 y)) 2) (cbrt.f64 (sin.f64 y)) x)
(fma.f64 (sqrt.f64 x) (sqrt.f64 x) (sin.f64 y))
(fma.f64 (sqrt.f64 (sin.f64 y)) (sqrt.f64 (sin.f64 y)) x)
Outputs
(*.f64 (cos.f64 y) z)
(*.f64 (cos.f64 y) z)
(*.f64 (cos.f64 y) z)
(*.f64 (cos.f64 y) z)
(*.f64 (cos.f64 y) z)
(*.f64 (cos.f64 y) z)
(*.f64 (cos.f64 y) z)
(*.f64 (cos.f64 y) z)
(*.f64 (cos.f64 y) z)
(*.f64 (cos.f64 y) z)
(*.f64 (cos.f64 y) z)
(*.f64 (cos.f64 y) z)
z
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y 2) z)) z)
(fma.f64 -1/2 (*.f64 z (*.f64 y y)) z)
(fma.f64 -1/2 (*.f64 y (*.f64 y z)) z)
(*.f64 z (fma.f64 -1/2 (*.f64 y y) 1))
(*.f64 z (fma.f64 (*.f64 y -1/2) y 1))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y 2) z)) (+.f64 z (*.f64 1/24 (*.f64 (pow.f64 y 4) z))))
(+.f64 (fma.f64 -1/2 (*.f64 z (*.f64 y y)) z) (*.f64 1/24 (*.f64 z (pow.f64 y 4))))
(fma.f64 -1/2 (*.f64 y (*.f64 y z)) (fma.f64 1/24 (*.f64 z (pow.f64 y 4)) z))
(*.f64 z (+.f64 (*.f64 y (*.f64 y -1/2)) (fma.f64 1/24 (pow.f64 y 4) 1)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y 2) z)) (+.f64 z (+.f64 (*.f64 1/24 (*.f64 (pow.f64 y 4) z)) (*.f64 -1/720 (*.f64 z (pow.f64 y 6))))))
(+.f64 (fma.f64 -1/2 (*.f64 z (*.f64 y y)) z) (fma.f64 1/24 (*.f64 z (pow.f64 y 4)) (*.f64 -1/720 (*.f64 z (pow.f64 y 6)))))
(+.f64 (fma.f64 -1/2 (*.f64 y (*.f64 y z)) z) (fma.f64 1/24 (*.f64 z (pow.f64 y 4)) (*.f64 (pow.f64 y 6) (*.f64 z -1/720))))
(fma.f64 z (*.f64 y (*.f64 y -1/2)) (*.f64 z (+.f64 (fma.f64 1/24 (pow.f64 y 4) 1) (*.f64 -1/720 (pow.f64 y 6)))))
(*.f64 z (+.f64 (*.f64 y (*.f64 y -1/2)) (+.f64 (fma.f64 1/24 (pow.f64 y 4) 1) (*.f64 -1/720 (pow.f64 y 6)))))
(sin.f64 y)
(+.f64 (sin.f64 y) x)
(+.f64 (sin.f64 y) x)
(+.f64 (sin.f64 y) x)
x
(+.f64 (sin.f64 y) x)
(+.f64 (sin.f64 y) x)
(+.f64 (sin.f64 y) x)
x
(+.f64 (sin.f64 y) x)
(+.f64 (sin.f64 y) x)
(+.f64 (sin.f64 y) x)
x
(+.f64 y x)
(+.f64 (*.f64 -1/6 (pow.f64 y 3)) (+.f64 y x))
(fma.f64 -1/6 (pow.f64 y 3) (+.f64 y x))
(+.f64 x (fma.f64 -1/6 (pow.f64 y 3) y))
(+.f64 y (fma.f64 -1/6 (pow.f64 y 3) x))
(+.f64 (*.f64 -1/6 (pow.f64 y 3)) (+.f64 y (+.f64 (*.f64 1/120 (pow.f64 y 5)) x)))
(fma.f64 -1/6 (pow.f64 y 3) (+.f64 y (fma.f64 1/120 (pow.f64 y 5) x)))
(+.f64 (fma.f64 1/120 (pow.f64 y 5) x) (fma.f64 -1/6 (pow.f64 y 3) y))
(+.f64 y (fma.f64 -1/6 (pow.f64 y 3) (fma.f64 1/120 (pow.f64 y 5) x)))
(+.f64 (sin.f64 y) x)
(+.f64 (sin.f64 y) x)
(+.f64 (sin.f64 y) x)
(+.f64 (sin.f64 y) x)
(+.f64 (sin.f64 y) x)
(+.f64 (sin.f64 y) x)
(+.f64 (sin.f64 y) x)
(+.f64 (sin.f64 y) x)
(-.f64 (+.f64 1 (*.f64 z (cos.f64 y))) 1)
(*.f64 (cos.f64 y) z)
(pow.f64 (*.f64 z (cos.f64 y)) 1)
(*.f64 (cos.f64 y) z)
(pow.f64 (pow.f64 (*.f64 z (cos.f64 y)) 3) 1/3)
(*.f64 (cos.f64 y) z)
(pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 3)
(*.f64 (cos.f64 y) z)
(pow.f64 (sqrt.f64 (*.f64 z (cos.f64 y))) 2)
(*.f64 (cos.f64 y) z)
(sqrt.f64 (pow.f64 (*.f64 z (cos.f64 y)) 2))
(*.f64 (cos.f64 y) z)
(log.f64 (pow.f64 (exp.f64 z) (cos.f64 y)))
(*.f64 (cos.f64 y) z)
(cbrt.f64 (pow.f64 (*.f64 z (cos.f64 y)) 3))
(*.f64 (cos.f64 y) z)
(cbrt.f64 (*.f64 (pow.f64 z 3) (pow.f64 (cos.f64 y) 3)))
(*.f64 (cos.f64 y) z)
(cbrt.f64 (*.f64 (pow.f64 (cos.f64 y) 3) (pow.f64 z 3)))
(*.f64 (cos.f64 y) z)
(expm1.f64 (log1p.f64 (*.f64 z (cos.f64 y))))
(*.f64 (cos.f64 y) z)
(log1p.f64 (expm1.f64 (*.f64 z (cos.f64 y))))
(*.f64 (cos.f64 y) z)
(exp.f64 (log.f64 (*.f64 z (cos.f64 y))))
(*.f64 (cos.f64 y) z)
(-.f64 (+.f64 1 (+.f64 x (sin.f64 y))) 1)
(+.f64 (sin.f64 y) x)
(-.f64 (/.f64 (*.f64 x x) (-.f64 x (sin.f64 y))) (/.f64 (pow.f64 (sin.f64 y) 2) (-.f64 x (sin.f64 y))))
(/.f64 (-.f64 (*.f64 x x) (pow.f64 (sin.f64 y) 2)) (-.f64 x (sin.f64 y)))
(/.f64 (+.f64 (sin.f64 y) x) 1)
(*.f64 (+.f64 x (sin.f64 y)) 1)
(+.f64 (sin.f64 y) x)
(*.f64 1 (+.f64 x (sin.f64 y)))
(+.f64 (sin.f64 y) x)
(*.f64 (cbrt.f64 (+.f64 x (sin.f64 y))) (pow.f64 (cbrt.f64 (+.f64 x (sin.f64 y))) 2))
(+.f64 (sin.f64 y) x)
(*.f64 (pow.f64 (cbrt.f64 (+.f64 x (sin.f64 y))) 2) (cbrt.f64 (+.f64 x (sin.f64 y))))
(+.f64 (sin.f64 y) x)
(*.f64 (sqrt.f64 (+.f64 x (sin.f64 y))) (sqrt.f64 (+.f64 x (sin.f64 y))))
(+.f64 (sin.f64 y) x)
(*.f64 (+.f64 (pow.f64 x 3) (pow.f64 (sin.f64 y) 3)) (/.f64 1 (fma.f64 x x (*.f64 (sin.f64 y) (-.f64 (sin.f64 y) x)))))
(/.f64 (*.f64 (+.f64 (pow.f64 x 3) (pow.f64 (sin.f64 y) 3)) 1) (fma.f64 x x (*.f64 (sin.f64 y) (-.f64 (sin.f64 y) x))))
(/.f64 (+.f64 (pow.f64 x 3) (pow.f64 (sin.f64 y) 3)) (fma.f64 x x (*.f64 (sin.f64 y) (-.f64 (sin.f64 y) x))))
(/.f64 (+.f64 (pow.f64 x 3) (pow.f64 (sin.f64 y) 3)) (fma.f64 (sin.f64 y) (-.f64 (sin.f64 y) x) (*.f64 x x)))
(*.f64 (-.f64 (*.f64 x x) (pow.f64 (sin.f64 y) 2)) (/.f64 1 (-.f64 x (sin.f64 y))))
(/.f64 (-.f64 (*.f64 x x) (pow.f64 (sin.f64 y) 2)) (-.f64 x (sin.f64 y)))
(/.f64 (+.f64 (sin.f64 y) x) 1)
(/.f64 1 (/.f64 (fma.f64 x x (*.f64 (sin.f64 y) (-.f64 (sin.f64 y) x))) (+.f64 (pow.f64 x 3) (pow.f64 (sin.f64 y) 3))))
(/.f64 (*.f64 (+.f64 (pow.f64 x 3) (pow.f64 (sin.f64 y) 3)) 1) (fma.f64 x x (*.f64 (sin.f64 y) (-.f64 (sin.f64 y) x))))
(/.f64 (+.f64 (pow.f64 x 3) (pow.f64 (sin.f64 y) 3)) (fma.f64 x x (*.f64 (sin.f64 y) (-.f64 (sin.f64 y) x))))
(/.f64 (+.f64 (pow.f64 x 3) (pow.f64 (sin.f64 y) 3)) (fma.f64 (sin.f64 y) (-.f64 (sin.f64 y) x) (*.f64 x x)))
(/.f64 1 (/.f64 (-.f64 x (sin.f64 y)) (-.f64 (*.f64 x x) (pow.f64 (sin.f64 y) 2))))
(/.f64 (-.f64 (*.f64 x x) (pow.f64 (sin.f64 y) 2)) (-.f64 x (sin.f64 y)))
(/.f64 (+.f64 (sin.f64 y) x) 1)
(/.f64 (+.f64 (pow.f64 x 3) (pow.f64 (sin.f64 y) 3)) (fma.f64 x x (*.f64 (sin.f64 y) (-.f64 (sin.f64 y) x))))
(/.f64 (*.f64 (+.f64 (pow.f64 x 3) (pow.f64 (sin.f64 y) 3)) 1) (fma.f64 x x (*.f64 (sin.f64 y) (-.f64 (sin.f64 y) x))))
(/.f64 (+.f64 (pow.f64 x 3) (pow.f64 (sin.f64 y) 3)) (fma.f64 (sin.f64 y) (-.f64 (sin.f64 y) x) (*.f64 x x)))
(/.f64 (+.f64 (pow.f64 x 3) (pow.f64 (sin.f64 y) 3)) (+.f64 (pow.f64 (sin.f64 y) 2) (-.f64 (*.f64 x x) (*.f64 x (sin.f64 y)))))
(/.f64 (*.f64 (+.f64 (pow.f64 x 3) (pow.f64 (sin.f64 y) 3)) 1) (fma.f64 x x (*.f64 (sin.f64 y) (-.f64 (sin.f64 y) x))))
(/.f64 (+.f64 (pow.f64 x 3) (pow.f64 (sin.f64 y) 3)) (fma.f64 x x (*.f64 (sin.f64 y) (-.f64 (sin.f64 y) x))))
(/.f64 (+.f64 (pow.f64 x 3) (pow.f64 (sin.f64 y) 3)) (fma.f64 (sin.f64 y) (-.f64 (sin.f64 y) x) (*.f64 x x)))
(/.f64 (-.f64 (*.f64 x x) (pow.f64 (sin.f64 y) 2)) (-.f64 x (sin.f64 y)))
(/.f64 (+.f64 (sin.f64 y) x) 1)
(/.f64 (neg.f64 (+.f64 (pow.f64 x 3) (pow.f64 (sin.f64 y) 3))) (neg.f64 (fma.f64 x x (*.f64 (sin.f64 y) (-.f64 (sin.f64 y) x)))))
(/.f64 (*.f64 (+.f64 (pow.f64 x 3) (pow.f64 (sin.f64 y) 3)) 1) (fma.f64 x x (*.f64 (sin.f64 y) (-.f64 (sin.f64 y) x))))
(/.f64 (+.f64 (pow.f64 x 3) (pow.f64 (sin.f64 y) 3)) (fma.f64 x x (*.f64 (sin.f64 y) (-.f64 (sin.f64 y) x))))
(/.f64 (+.f64 (pow.f64 x 3) (pow.f64 (sin.f64 y) 3)) (fma.f64 (sin.f64 y) (-.f64 (sin.f64 y) x) (*.f64 x x)))
(/.f64 (neg.f64 (-.f64 (*.f64 x x) (pow.f64 (sin.f64 y) 2))) (neg.f64 (-.f64 x (sin.f64 y))))
(/.f64 (-.f64 (*.f64 x x) (pow.f64 (sin.f64 y) 2)) (-.f64 x (sin.f64 y)))
(/.f64 (+.f64 (sin.f64 y) x) 1)
(/.f64 (-.f64 (pow.f64 (sin.f64 y) 2) (*.f64 x x)) (-.f64 (sin.f64 y) x))
(/.f64 (-.f64 (*.f64 x x) (pow.f64 (sin.f64 y) 2)) (-.f64 x (sin.f64 y)))
(/.f64 (+.f64 (sin.f64 y) x) 1)
(pow.f64 (+.f64 x (sin.f64 y)) 1)
(+.f64 (sin.f64 y) x)
(pow.f64 (pow.f64 (+.f64 x (sin.f64 y)) 3) 1/3)
(+.f64 (sin.f64 y) x)
(pow.f64 (cbrt.f64 (+.f64 x (sin.f64 y))) 3)
(+.f64 (sin.f64 y) x)
(pow.f64 (sqrt.f64 (+.f64 x (sin.f64 y))) 2)
(+.f64 (sin.f64 y) x)
(sqrt.f64 (pow.f64 (+.f64 x (sin.f64 y)) 2))
(+.f64 (sin.f64 y) x)
(log.f64 (exp.f64 (+.f64 x (sin.f64 y))))
(+.f64 (sin.f64 y) x)
(cbrt.f64 (pow.f64 (+.f64 x (sin.f64 y)) 3))
(+.f64 (sin.f64 y) x)
(expm1.f64 (log1p.f64 (+.f64 x (sin.f64 y))))
(+.f64 (sin.f64 y) x)
(log1p.f64 (expm1.f64 (+.f64 x (sin.f64 y))))
(+.f64 (sin.f64 y) x)
(exp.f64 (log.f64 (+.f64 x (sin.f64 y))))
(+.f64 (sin.f64 y) x)
(fma.f64 1 x (sin.f64 y))
(+.f64 (sin.f64 y) x)
(fma.f64 1 (sin.f64 y) x)
(+.f64 (sin.f64 y) x)
(fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x) (sin.f64 y))
(+.f64 (sin.f64 y) x)
(fma.f64 (pow.f64 (cbrt.f64 (sin.f64 y)) 2) (cbrt.f64 (sin.f64 y)) x)
(+.f64 (sin.f64 y) x)
(fma.f64 (sqrt.f64 x) (sqrt.f64 x) (sin.f64 y))
(+.f64 (sin.f64 y) x)
(fma.f64 (sqrt.f64 (sin.f64 y)) (sqrt.f64 (sin.f64 y)) x)
(+.f64 (sin.f64 y) x)

eval27.0ms (0.1%)

Compiler

Compiled 1203 to 472 computations (60.8% saved)

prune19.0ms (0.1%)

Pruning

7 alts after pruning (7 fresh and 0 done)

PrunedKeptTotal
New70777
Fresh000
Picked101
Done000
Total71778
Error
0.0b
Counts
78 → 7
Alt Table
Click to see full alt table
StatusErrorProgram
31.3b
(+.f64 (+.f64 x (sin.f64 y)) (pow.f64 (sqrt.f64 (*.f64 z (cos.f64 y))) 2))
0.6b
(+.f64 (+.f64 x (sin.f64 y)) (pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 3))
23.8b
(+.f64 (+.f64 x (sin.f64 y)) (cbrt.f64 (pow.f64 (*.f64 z (cos.f64 y)) 3)))
23.7b
(+.f64 (+.f64 x (sin.f64 y)) (cbrt.f64 (*.f64 (pow.f64 (cos.f64 y) 3) (pow.f64 z 3))))
11.4b
(+.f64 (+.f64 x (sin.f64 y)) z)
26.3b
(+.f64 (sin.f64 y) (*.f64 z (cos.f64 y)))
9.2b
(+.f64 x (*.f64 z (cos.f64 y)))
Compiler

Compiled 180 to 130 computations (27.8% saved)

localize16.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(+.f64 x (sin.f64 y))
0.1b
(*.f64 z (cos.f64 y))
0.6b
(cbrt.f64 (*.f64 z (cos.f64 y)))
0.8b
(pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 3)
Compiler

Compiled 43 to 14 computations (67.4% saved)

series3.6s (18.7%)

Counts
2 → 24
Calls

12 calls:

TimeVariablePointExpression
1.2s
z
@-inf
(pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 3)
836.0ms
z
@0
(pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 3)
805.0ms
z
@inf
(pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 3)
277.0ms
z
@-inf
(cbrt.f64 (*.f64 z (cos.f64 y)))
207.0ms
z
@0
(cbrt.f64 (*.f64 z (cos.f64 y)))
Compiler

Compiled 315071 to 256230 computations (18.7% saved)

rewrite48.0ms (0.3%)

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

Useful iterations: 0 (0.0ms)

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

simplify50.0ms (0.3%)

Algorithm
egg-herbie
Rules
713×fma-def_binary64
683×associate-/l*_binary64
629×associate-/r*_binary64
260×distribute-rgt-in_binary64
259×associate-*l/_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02131964
15921416
22075889
Stop Event
node limit
Counts
76 → 88
Calls
Call 1
Inputs
(*.f64 (pow.f64 (pow.f64 z 1/3) 2) (pow.f64 z 1/3))
(+.f64 (*.f64 (pow.f64 y 2) (+.f64 (*.f64 -1/6 z) (*.f64 (+.f64 (*.f64 -1/6 (/.f64 (*.f64 (pow.f64 z 1/3) z) (pow.f64 (pow.f64 z 1/3) 2))) (*.f64 -1/6 (/.f64 (*.f64 z (pow.f64 z 1/3)) (pow.f64 (pow.f64 z 1/3) 2)))) (pow.f64 z 1/3)))) (*.f64 (pow.f64 (pow.f64 z 1/3) 2) (pow.f64 z 1/3)))
(+.f64 (*.f64 (pow.f64 y 2) (+.f64 (*.f64 -1/6 z) (*.f64 (+.f64 (*.f64 -1/6 (/.f64 (*.f64 (pow.f64 z 1/3) z) (pow.f64 (pow.f64 z 1/3) 2))) (*.f64 -1/6 (/.f64 (*.f64 z (pow.f64 z 1/3)) (pow.f64 (pow.f64 z 1/3) 2)))) (pow.f64 z 1/3)))) (+.f64 (*.f64 (pow.f64 (pow.f64 z 1/3) 2) (pow.f64 z 1/3)) (*.f64 (+.f64 (*.f64 (+.f64 (*.f64 1/36 (/.f64 (pow.f64 z 2) (pow.f64 (pow.f64 (pow.f64 z 1/3) 2) 2))) (*.f64 2/3 (/.f64 (*.f64 (-.f64 (*.f64 1/24 z) (+.f64 (*.f64 1/36 (/.f64 (*.f64 (pow.f64 z 2) (pow.f64 z 1/3)) (pow.f64 (pow.f64 (pow.f64 z 1/3) 2) 2))) (*.f64 1/18 (/.f64 (*.f64 (pow.f64 z 2) (pow.f64 z 1/3)) (pow.f64 (pow.f64 (pow.f64 z 1/3) 2) 2))))) (pow.f64 z 1/3)) (pow.f64 (pow.f64 z 1/3) 2)))) (pow.f64 z 1/3)) (+.f64 (*.f64 1/3 (-.f64 (*.f64 1/24 z) (+.f64 (*.f64 1/36 (/.f64 (*.f64 (pow.f64 z 2) (pow.f64 z 1/3)) (pow.f64 (pow.f64 (pow.f64 z 1/3) 2) 2))) (*.f64 1/18 (/.f64 (*.f64 (pow.f64 z 2) (pow.f64 z 1/3)) (pow.f64 (pow.f64 (pow.f64 z 1/3) 2) 2)))))) (*.f64 -1/6 (/.f64 (*.f64 (+.f64 (*.f64 -1/6 (/.f64 (*.f64 (pow.f64 z 1/3) z) (pow.f64 (pow.f64 z 1/3) 2))) (*.f64 -1/6 (/.f64 (*.f64 z (pow.f64 z 1/3)) (pow.f64 (pow.f64 z 1/3) 2)))) z) (pow.f64 (pow.f64 z 1/3) 2))))) (pow.f64 y 4))))
(+.f64 (*.f64 (pow.f64 y 2) (+.f64 (*.f64 -1/6 z) (*.f64 (+.f64 (*.f64 -1/6 (/.f64 (*.f64 (pow.f64 z 1/3) z) (pow.f64 (pow.f64 z 1/3) 2))) (*.f64 -1/6 (/.f64 (*.f64 z (pow.f64 z 1/3)) (pow.f64 (pow.f64 z 1/3) 2)))) (pow.f64 z 1/3)))) (+.f64 (*.f64 (pow.f64 (pow.f64 z 1/3) 2) (pow.f64 z 1/3)) (+.f64 (*.f64 (+.f64 (*.f64 (pow.f64 z 1/3) (+.f64 (*.f64 2/3 (/.f64 (*.f64 (pow.f64 z 1/3) (-.f64 (*.f64 -1/720 z) (+.f64 (*.f64 -1/6 (/.f64 (*.f64 (-.f64 (*.f64 1/24 z) (+.f64 (*.f64 1/36 (/.f64 (*.f64 (pow.f64 z 2) (pow.f64 z 1/3)) (pow.f64 (pow.f64 (pow.f64 z 1/3) 2) 2))) (*.f64 1/18 (/.f64 (*.f64 (pow.f64 z 2) (pow.f64 z 1/3)) (pow.f64 (pow.f64 (pow.f64 z 1/3) 2) 2))))) (*.f64 (pow.f64 z 1/3) z)) (pow.f64 (pow.f64 (pow.f64 z 1/3) 2) 2))) (+.f64 (*.f64 -1/6 (/.f64 (*.f64 (-.f64 (*.f64 1/24 z) (+.f64 (*.f64 1/36 (/.f64 (*.f64 (pow.f64 z 2) (pow.f64 z 1/3)) (pow.f64 (pow.f64 (pow.f64 z 1/3) 2) 2))) (*.f64 1/18 (/.f64 (*.f64 (pow.f64 z 2) (pow.f64 z 1/3)) (pow.f64 (pow.f64 (pow.f64 z 1/3) 2) 2))))) (*.f64 z (pow.f64 z 1/3))) (pow.f64 (pow.f64 (pow.f64 z 1/3) 2) 2))) (*.f64 -1/216 (/.f64 (pow.f64 z 3) (pow.f64 (pow.f64 (pow.f64 z 1/3) 2) 3))))))) (pow.f64 (pow.f64 z 1/3) 2))) (*.f64 -1/9 (/.f64 (*.f64 (-.f64 (*.f64 1/24 z) (+.f64 (*.f64 1/36 (/.f64 (*.f64 (pow.f64 z 2) (pow.f64 z 1/3)) (pow.f64 (pow.f64 (pow.f64 z 1/3) 2) 2))) (*.f64 1/18 (/.f64 (*.f64 (pow.f64 z 2) (pow.f64 z 1/3)) (pow.f64 (pow.f64 (pow.f64 z 1/3) 2) 2))))) z) (pow.f64 (pow.f64 (pow.f64 z 1/3) 2) 2))))) (+.f64 (*.f64 1/3 (/.f64 (*.f64 (-.f64 (*.f64 1/24 z) (+.f64 (*.f64 1/36 (/.f64 (*.f64 (pow.f64 z 2) (pow.f64 z 1/3)) (pow.f64 (pow.f64 (pow.f64 z 1/3) 2) 2))) (*.f64 1/18 (/.f64 (*.f64 (pow.f64 z 2) (pow.f64 z 1/3)) (pow.f64 (pow.f64 (pow.f64 z 1/3) 2) 2))))) (+.f64 (*.f64 -1/6 (/.f64 (*.f64 (pow.f64 z 1/3) z) (pow.f64 (pow.f64 z 1/3) 2))) (*.f64 -1/6 (/.f64 (*.f64 z (pow.f64 z 1/3)) (pow.f64 (pow.f64 z 1/3) 2))))) (pow.f64 (pow.f64 z 1/3) 2))) (+.f64 (*.f64 1/3 (-.f64 (*.f64 -1/720 z) (+.f64 (*.f64 -1/6 (/.f64 (*.f64 (-.f64 (*.f64 1/24 z) (+.f64 (*.f64 1/36 (/.f64 (*.f64 (pow.f64 z 2) (pow.f64 z 1/3)) (pow.f64 (pow.f64 (pow.f64 z 1/3) 2) 2))) (*.f64 1/18 (/.f64 (*.f64 (pow.f64 z 2) (pow.f64 z 1/3)) (pow.f64 (pow.f64 (pow.f64 z 1/3) 2) 2))))) (*.f64 (pow.f64 z 1/3) z)) (pow.f64 (pow.f64 (pow.f64 z 1/3) 2) 2))) (+.f64 (*.f64 -1/6 (/.f64 (*.f64 (-.f64 (*.f64 1/24 z) (+.f64 (*.f64 1/36 (/.f64 (*.f64 (pow.f64 z 2) (pow.f64 z 1/3)) (pow.f64 (pow.f64 (pow.f64 z 1/3) 2) 2))) (*.f64 1/18 (/.f64 (*.f64 (pow.f64 z 2) (pow.f64 z 1/3)) (pow.f64 (pow.f64 (pow.f64 z 1/3) 2) 2))))) (*.f64 z (pow.f64 z 1/3))) (pow.f64 (pow.f64 (pow.f64 z 1/3) 2) 2))) (*.f64 -1/216 (/.f64 (pow.f64 z 3) (pow.f64 (pow.f64 (pow.f64 z 1/3) 2) 3))))))) (*.f64 -1/6 (/.f64 (*.f64 (+.f64 (*.f64 1/36 (/.f64 (pow.f64 z 2) (pow.f64 (pow.f64 (pow.f64 z 1/3) 2) 2))) (*.f64 2/3 (/.f64 (*.f64 (-.f64 (*.f64 1/24 z) (+.f64 (*.f64 1/36 (/.f64 (*.f64 (pow.f64 z 2) (pow.f64 z 1/3)) (pow.f64 (pow.f64 (pow.f64 z 1/3) 2) 2))) (*.f64 1/18 (/.f64 (*.f64 (pow.f64 z 2) (pow.f64 z 1/3)) (pow.f64 (pow.f64 (pow.f64 z 1/3) 2) 2))))) (pow.f64 z 1/3)) (pow.f64 (pow.f64 z 1/3) 2)))) z) (pow.f64 (pow.f64 z 1/3) 2)))))) (pow.f64 y 6)) (*.f64 (+.f64 (*.f64 (+.f64 (*.f64 1/36 (/.f64 (pow.f64 z 2) (pow.f64 (pow.f64 (pow.f64 z 1/3) 2) 2))) (*.f64 2/3 (/.f64 (*.f64 (-.f64 (*.f64 1/24 z) (+.f64 (*.f64 1/36 (/.f64 (*.f64 (pow.f64 z 2) (pow.f64 z 1/3)) (pow.f64 (pow.f64 (pow.f64 z 1/3) 2) 2))) (*.f64 1/18 (/.f64 (*.f64 (pow.f64 z 2) (pow.f64 z 1/3)) (pow.f64 (pow.f64 (pow.f64 z 1/3) 2) 2))))) (pow.f64 z 1/3)) (pow.f64 (pow.f64 z 1/3) 2)))) (pow.f64 z 1/3)) (+.f64 (*.f64 1/3 (-.f64 (*.f64 1/24 z) (+.f64 (*.f64 1/36 (/.f64 (*.f64 (pow.f64 z 2) (pow.f64 z 1/3)) (pow.f64 (pow.f64 (pow.f64 z 1/3) 2) 2))) (*.f64 1/18 (/.f64 (*.f64 (pow.f64 z 2) (pow.f64 z 1/3)) (pow.f64 (pow.f64 (pow.f64 z 1/3) 2) 2)))))) (*.f64 -1/6 (/.f64 (*.f64 (+.f64 (*.f64 -1/6 (/.f64 (*.f64 (pow.f64 z 1/3) z) (pow.f64 (pow.f64 z 1/3) 2))) (*.f64 -1/6 (/.f64 (*.f64 z (pow.f64 z 1/3)) (pow.f64 (pow.f64 z 1/3) 2)))) z) (pow.f64 (pow.f64 z 1/3) 2))))) (pow.f64 y 4)))))
(*.f64 (pow.f64 (pow.f64 (*.f64 (cos.f64 y) z) 1/3) 2) (pow.f64 (*.f64 (cos.f64 y) z) 1/3))
(*.f64 (pow.f64 (pow.f64 (*.f64 (cos.f64 y) z) 1/3) 2) (pow.f64 (*.f64 (cos.f64 y) z) 1/3))
(*.f64 (pow.f64 (pow.f64 (*.f64 (cos.f64 y) z) 1/3) 2) (pow.f64 (*.f64 (cos.f64 y) z) 1/3))
(*.f64 (pow.f64 (pow.f64 (*.f64 (cos.f64 y) z) 1/3) 2) (pow.f64 (*.f64 (cos.f64 y) z) 1/3))
(*.f64 (pow.f64 (pow.f64 (*.f64 (cos.f64 y) z) 1/3) 2) (pow.f64 (*.f64 (cos.f64 y) z) 1/3))
(*.f64 (pow.f64 (pow.f64 (*.f64 (cos.f64 y) z) 1/3) 2) (pow.f64 (*.f64 (cos.f64 y) z) 1/3))
(*.f64 (pow.f64 (pow.f64 (*.f64 (cos.f64 y) z) 1/3) 2) (pow.f64 (*.f64 (cos.f64 y) z) 1/3))
(*.f64 (pow.f64 (pow.f64 (*.f64 (cos.f64 y) z) 1/3) 2) (pow.f64 (*.f64 (cos.f64 y) z) 1/3))
(pow.f64 z 1/3)
(+.f64 (*.f64 -1/6 (/.f64 (*.f64 (pow.f64 y 2) z) (pow.f64 (pow.f64 z 1/3) 2))) (pow.f64 z 1/3))
(+.f64 (*.f64 -1/6 (/.f64 (*.f64 (pow.f64 y 2) z) (pow.f64 (pow.f64 z 1/3) 2))) (+.f64 (*.f64 1/3 (/.f64 (*.f64 (-.f64 (*.f64 1/24 z) (+.f64 (*.f64 1/36 (/.f64 (*.f64 (pow.f64 z 2) (pow.f64 z 1/3)) (pow.f64 (pow.f64 (pow.f64 z 1/3) 2) 2))) (*.f64 1/18 (/.f64 (*.f64 (pow.f64 z 2) (pow.f64 z 1/3)) (pow.f64 (pow.f64 (pow.f64 z 1/3) 2) 2))))) (pow.f64 y 4)) (pow.f64 (pow.f64 z 1/3) 2))) (pow.f64 z 1/3)))
(+.f64 (*.f64 -1/6 (/.f64 (*.f64 (pow.f64 y 2) z) (pow.f64 (pow.f64 z 1/3) 2))) (+.f64 (*.f64 1/3 (/.f64 (*.f64 (-.f64 (*.f64 1/24 z) (+.f64 (*.f64 1/36 (/.f64 (*.f64 (pow.f64 z 2) (pow.f64 z 1/3)) (pow.f64 (pow.f64 (pow.f64 z 1/3) 2) 2))) (*.f64 1/18 (/.f64 (*.f64 (pow.f64 z 2) (pow.f64 z 1/3)) (pow.f64 (pow.f64 (pow.f64 z 1/3) 2) 2))))) (pow.f64 y 4)) (pow.f64 (pow.f64 z 1/3) 2))) (+.f64 (pow.f64 z 1/3) (*.f64 1/3 (/.f64 (*.f64 (-.f64 (*.f64 -1/720 z) (+.f64 (*.f64 -1/6 (/.f64 (*.f64 (-.f64 (*.f64 1/24 z) (+.f64 (*.f64 1/36 (/.f64 (*.f64 (pow.f64 z 2) (pow.f64 z 1/3)) (pow.f64 (pow.f64 (pow.f64 z 1/3) 2) 2))) (*.f64 1/18 (/.f64 (*.f64 (pow.f64 z 2) (pow.f64 z 1/3)) (pow.f64 (pow.f64 (pow.f64 z 1/3) 2) 2))))) (*.f64 (pow.f64 z 1/3) z)) (pow.f64 (pow.f64 (pow.f64 z 1/3) 2) 2))) (+.f64 (*.f64 -1/6 (/.f64 (*.f64 (-.f64 (*.f64 1/24 z) (+.f64 (*.f64 1/36 (/.f64 (*.f64 (pow.f64 z 2) (pow.f64 z 1/3)) (pow.f64 (pow.f64 (pow.f64 z 1/3) 2) 2))) (*.f64 1/18 (/.f64 (*.f64 (pow.f64 z 2) (pow.f64 z 1/3)) (pow.f64 (pow.f64 (pow.f64 z 1/3) 2) 2))))) (*.f64 z (pow.f64 z 1/3))) (pow.f64 (pow.f64 (pow.f64 z 1/3) 2) 2))) (*.f64 -1/216 (/.f64 (pow.f64 z 3) (pow.f64 (pow.f64 (pow.f64 z 1/3) 2) 3)))))) (pow.f64 y 6)) (pow.f64 (pow.f64 z 1/3) 2))))))
(pow.f64 (*.f64 (cos.f64 y) z) 1/3)
(pow.f64 (*.f64 (cos.f64 y) z) 1/3)
(pow.f64 (*.f64 (cos.f64 y) z) 1/3)
(pow.f64 (*.f64 (cos.f64 y) z) 1/3)
(pow.f64 (*.f64 (cos.f64 y) z) 1/3)
(pow.f64 (*.f64 (cos.f64 y) z) 1/3)
(pow.f64 (*.f64 (cos.f64 y) z) 1/3)
(pow.f64 (*.f64 (cos.f64 y) z) 1/3)
(-.f64 (+.f64 1 (*.f64 z (cos.f64 y))) 1)
(*.f64 z (cos.f64 y))
(*.f64 (cos.f64 y) z)
(*.f64 (*.f64 z (cos.f64 y)) 1)
(*.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) (pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 2))
(*.f64 1 (*.f64 z (cos.f64 y)))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 2) (cbrt.f64 (*.f64 z (cos.f64 y))))
(*.f64 (cbrt.f64 z) (*.f64 (cbrt.f64 (cos.f64 y)) (pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 2)))
(*.f64 (pow.f64 (cbrt.f64 z) 2) (*.f64 (cbrt.f64 z) (cos.f64 y)))
(*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 z (cos.f64 y)))) 2) (*.f64 (cbrt.f64 (cbrt.f64 (*.f64 z (cos.f64 y)))) (pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 2)))
(*.f64 (pow.f64 (cbrt.f64 (cos.f64 y)) 2) (*.f64 (cbrt.f64 (cos.f64 y)) z))
(*.f64 (sqrt.f64 (*.f64 z (cos.f64 y))) (sqrt.f64 (*.f64 z (cos.f64 y))))
(*.f64 (sqrt.f64 z) (*.f64 (sqrt.f64 z) (cos.f64 y)))
(*.f64 (pow.f64 (*.f64 z (cos.f64 y)) 1/6) (*.f64 (pow.f64 (*.f64 z (cos.f64 y)) 1/6) (pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 2)))
(*.f64 (sqrt.f64 (cos.f64 y)) (*.f64 (sqrt.f64 (cos.f64 y)) z))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 z (cos.f64 y)))) 2) 3) (cbrt.f64 (*.f64 z (cos.f64 y))))
(*.f64 (pow.f64 (pow.f64 (*.f64 z (cos.f64 y)) 1/6) 3) (pow.f64 (pow.f64 (*.f64 z (cos.f64 y)) 1/6) 3))
(*.f64 (*.f64 z (pow.f64 (cbrt.f64 (cos.f64 y)) 2)) (cbrt.f64 (cos.f64 y)))
(*.f64 (*.f64 z (sqrt.f64 (cos.f64 y))) (sqrt.f64 (cos.f64 y)))
(*.f64 (*.f64 (cos.f64 y) (pow.f64 (cbrt.f64 z) 2)) (cbrt.f64 z))
(*.f64 (*.f64 (cos.f64 y) (sqrt.f64 z)) (sqrt.f64 z))
(*.f64 (*.f64 (pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 2) 1) (cbrt.f64 (*.f64 z (cos.f64 y))))
(*.f64 (*.f64 (pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 2) (cbrt.f64 z)) (cbrt.f64 (cos.f64 y)))
(*.f64 (*.f64 (pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 2) (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 z (cos.f64 y)))) 2)) (cbrt.f64 (cbrt.f64 (*.f64 z (cos.f64 y)))))
(*.f64 (*.f64 (pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 2) (pow.f64 (*.f64 z (cos.f64 y)) 1/6)) (pow.f64 (*.f64 z (cos.f64 y)) 1/6))
(sqrt.f64 (pow.f64 (*.f64 z (cos.f64 y)) 2))
(log.f64 (pow.f64 (exp.f64 z) (cos.f64 y)))
(cbrt.f64 (pow.f64 (*.f64 z (cos.f64 y)) 3))
(expm1.f64 (log1p.f64 (*.f64 z (cos.f64 y))))
(log1p.f64 (expm1.f64 (*.f64 z (cos.f64 y))))
(exp.f64 (log.f64 (*.f64 z (cos.f64 y))))
(-.f64 (+.f64 1 (cbrt.f64 (*.f64 z (cos.f64 y)))) 1)
(*.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 1)
(*.f64 1 (cbrt.f64 (*.f64 z (cos.f64 y))))
(*.f64 (cbrt.f64 z) (cbrt.f64 (cos.f64 y)))
(*.f64 (cbrt.f64 (cbrt.f64 (*.f64 z (cos.f64 y)))) (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 z (cos.f64 y)))) 2))
(*.f64 (cbrt.f64 (cbrt.f64 (*.f64 z (cos.f64 y)))) (pow.f64 (pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 2) 1/3))
(*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 z (cos.f64 y)))) 2) (cbrt.f64 (cbrt.f64 (*.f64 z (cos.f64 y)))))
(*.f64 (cbrt.f64 (cos.f64 y)) (cbrt.f64 z))
(*.f64 (pow.f64 (*.f64 z (cos.f64 y)) 1/6) (pow.f64 (*.f64 z (cos.f64 y)) 1/6))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 2) 1/3) (cbrt.f64 (cbrt.f64 (*.f64 z (cos.f64 y)))))
(*.f64 (pow.f64 1 1/3) (cbrt.f64 (*.f64 z (cos.f64 y))))
(*.f64 (pow.f64 (sqrt.f64 (*.f64 z (cos.f64 y))) 1/3) (pow.f64 (sqrt.f64 (*.f64 z (cos.f64 y))) 1/3))
(pow.f64 (*.f64 z (cos.f64 y)) 1/3)
(pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 1)
(pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 z (cos.f64 y)))) 3)
(pow.f64 (pow.f64 (*.f64 z (cos.f64 y)) 1/6) 2)
(sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 2))
(log.f64 (exp.f64 (cbrt.f64 (*.f64 z (cos.f64 y)))))
(expm1.f64 (log1p.f64 (cbrt.f64 (*.f64 z (cos.f64 y)))))
(log1p.f64 (expm1.f64 (cbrt.f64 (*.f64 z (cos.f64 y)))))
(exp.f64 (log.f64 (cbrt.f64 (*.f64 z (cos.f64 y)))))
Outputs
(*.f64 (pow.f64 (pow.f64 z 1/3) 2) (pow.f64 z 1/3))
(pow.f64 (cbrt.f64 z) 3)
z
(+.f64 (*.f64 (pow.f64 y 2) (+.f64 (*.f64 -1/6 z) (*.f64 (+.f64 (*.f64 -1/6 (/.f64 (*.f64 (pow.f64 z 1/3) z) (pow.f64 (pow.f64 z 1/3) 2))) (*.f64 -1/6 (/.f64 (*.f64 z (pow.f64 z 1/3)) (pow.f64 (pow.f64 z 1/3) 2)))) (pow.f64 z 1/3)))) (*.f64 (pow.f64 (pow.f64 z 1/3) 2) (pow.f64 z 1/3)))
(fma.f64 (*.f64 y y) (fma.f64 -1/6 z (*.f64 (cbrt.f64 z) (*.f64 -1/6 (+.f64 (/.f64 (*.f64 z (cbrt.f64 z)) (pow.f64 (cbrt.f64 z) 2)) (/.f64 (*.f64 z (cbrt.f64 z)) (pow.f64 (cbrt.f64 z) 2)))))) (pow.f64 (cbrt.f64 z) 3))
(fma.f64 (*.f64 y y) (fma.f64 (cbrt.f64 z) (*.f64 (/.f64 z (/.f64 (pow.f64 (cbrt.f64 z) 2) (cbrt.f64 z))) -1/3) (*.f64 z -1/6)) z)
(fma.f64 y (*.f64 y (fma.f64 z -1/6 (/.f64 z -3))) z)
(+.f64 (*.f64 (pow.f64 y 2) (+.f64 (*.f64 -1/6 z) (*.f64 (+.f64 (*.f64 -1/6 (/.f64 (*.f64 (pow.f64 z 1/3) z) (pow.f64 (pow.f64 z 1/3) 2))) (*.f64 -1/6 (/.f64 (*.f64 z (pow.f64 z 1/3)) (pow.f64 (pow.f64 z 1/3) 2)))) (pow.f64 z 1/3)))) (+.f64 (*.f64 (pow.f64 (pow.f64 z 1/3) 2) (pow.f64 z 1/3)) (*.f64 (+.f64 (*.f64 (+.f64 (*.f64 1/36 (/.f64 (pow.f64 z 2) (pow.f64 (pow.f64 (pow.f64 z 1/3) 2) 2))) (*.f64 2/3 (/.f64 (*.f64 (-.f64 (*.f64 1/24 z) (+.f64 (*.f64 1/36 (/.f64 (*.f64 (pow.f64 z 2) (pow.f64 z 1/3)) (pow.f64 (pow.f64 (pow.f64 z 1/3) 2) 2))) (*.f64 1/18 (/.f64 (*.f64 (pow.f64 z 2) (pow.f64 z 1/3)) (pow.f64 (pow.f64 (pow.f64 z 1/3) 2) 2))))) (pow.f64 z 1/3)) (pow.f64 (pow.f64 z 1/3) 2)))) (pow.f64 z 1/3)) (+.f64 (*.f64 1/3 (-.f64 (*.f64 1/24 z) (+.f64 (*.f64 1/36 (/.f64 (*.f64 (pow.f64 z 2) (pow.f64 z 1/3)) (pow.f64 (pow.f64 (pow.f64 z 1/3) 2) 2))) (*.f64 1/18 (/.f64 (*.f64 (pow.f64 z 2) (pow.f64 z 1/3)) (pow.f64 (pow.f64 (pow.f64 z 1/3) 2) 2)))))) (*.f64 -1/6 (/.f64 (*.f64 (+.f64 (*.f64 -1/6 (/.f64 (*.f64 (pow.f64 z 1/3) z) (pow.f64 (pow.f64 z 1/3) 2))) (*.f64 -1/6 (/.f64 (*.f64 z (pow.f64 z 1/3)) (pow.f64 (pow.f64 z 1/3) 2)))) z) (pow.f64 (pow.f64 z 1/3) 2))))) (pow.f64 y 4))))
(+.f64 (fma.f64 (*.f64 y y) (fma.f64 -1/6 z (*.f64 (cbrt.f64 z) (*.f64 -1/6 (+.f64 (/.f64 (*.f64 z (cbrt.f64 z)) (pow.f64 (cbrt.f64 z) 2)) (/.f64 (*.f64 z (cbrt.f64 z)) (pow.f64 (cbrt.f64 z) 2)))))) (pow.f64 (cbrt.f64 z) 3)) (*.f64 (fma.f64 (fma.f64 1/36 (/.f64 (*.f64 z z) (pow.f64 (pow.f64 (cbrt.f64 z) 2) 2)) (*.f64 2/3 (/.f64 (-.f64 (*.f64 z 1/24) (*.f64 (/.f64 (*.f64 (cbrt.f64 z) (*.f64 z z)) (pow.f64 (pow.f64 (cbrt.f64 z) 2) 2)) 1/12)) (/.f64 (pow.f64 (cbrt.f64 z) 2) (cbrt.f64 z))))) (cbrt.f64 z) (fma.f64 1/3 (-.f64 (*.f64 z 1/24) (*.f64 (/.f64 (*.f64 (cbrt.f64 z) (*.f64 z z)) (pow.f64 (pow.f64 (cbrt.f64 z) 2) 2)) 1/12)) (*.f64 -1/6 (/.f64 (*.f64 -1/6 (+.f64 (/.f64 (*.f64 z (cbrt.f64 z)) (pow.f64 (cbrt.f64 z) 2)) (/.f64 (*.f64 z (cbrt.f64 z)) (pow.f64 (cbrt.f64 z) 2)))) (/.f64 (pow.f64 (cbrt.f64 z) 2) z))))) (pow.f64 y 4)))
(fma.f64 (*.f64 y y) (fma.f64 (cbrt.f64 z) (*.f64 (/.f64 z (/.f64 (pow.f64 (cbrt.f64 z) 2) (cbrt.f64 z))) -1/3) (*.f64 z -1/6)) (fma.f64 (fma.f64 (cbrt.f64 z) (fma.f64 2/3 (*.f64 (/.f64 (fma.f64 z 1/24 (*.f64 (/.f64 (*.f64 (cbrt.f64 z) (*.f64 z z)) (*.f64 z (cbrt.f64 z))) -1/12)) (pow.f64 (cbrt.f64 z) 2)) (cbrt.f64 z)) (/.f64 (*.f64 1/36 (*.f64 z z)) (*.f64 z (cbrt.f64 z)))) (fma.f64 1/3 (fma.f64 z 1/24 (*.f64 (/.f64 (*.f64 (cbrt.f64 z) (*.f64 z z)) (*.f64 z (cbrt.f64 z))) -1/12)) (*.f64 -1/6 (*.f64 (/.f64 (*.f64 (/.f64 z (/.f64 (pow.f64 (cbrt.f64 z) 2) (cbrt.f64 z))) -1/3) (pow.f64 (cbrt.f64 z) 2)) z)))) (pow.f64 y 4) z))
(fma.f64 (fma.f64 1/3 (fma.f64 z 1/24 (*.f64 z -1/12)) (fma.f64 -1/6 (/.f64 z -3) (+.f64 (*.f64 z 1/36) (/.f64 2/3 (/.f64 1 (fma.f64 z 1/24 (*.f64 z -1/12))))))) (pow.f64 y 4) (fma.f64 y (*.f64 y (fma.f64 z -1/6 (/.f64 z -3))) z))
(+.f64 (*.f64 (pow.f64 y 2) (+.f64 (*.f64 -1/6 z) (*.f64 (+.f64 (*.f64 -1/6 (/.f64 (*.f64 (pow.f64 z 1/3) z) (pow.f64 (pow.f64 z 1/3) 2))) (*.f64 -1/6 (/.f64 (*.f64 z (pow.f64 z 1/3)) (pow.f64 (pow.f64 z 1/3) 2)))) (pow.f64 z 1/3)))) (+.f64 (*.f64 (pow.f64 (pow.f64 z 1/3) 2) (pow.f64 z 1/3)) (+.f64 (*.f64 (+.f64 (*.f64 (pow.f64 z 1/3) (+.f64 (*.f64 2/3 (/.f64 (*.f64 (pow.f64 z 1/3) (-.f64 (*.f64 -1/720 z) (+.f64 (*.f64 -1/6 (/.f64 (*.f64 (-.f64 (*.f64 1/24 z) (+.f64 (*.f64 1/36 (/.f64 (*.f64 (pow.f64 z 2) (pow.f64 z 1/3)) (pow.f64 (pow.f64 (pow.f64 z 1/3) 2) 2))) (*.f64 1/18 (/.f64 (*.f64 (pow.f64 z 2) (pow.f64 z 1/3)) (pow.f64 (pow.f64 (pow.f64 z 1/3) 2) 2))))) (*.f64 (pow.f64 z 1/3) z)) (pow.f64 (pow.f64 (pow.f64 z 1/3) 2) 2))) (+.f64 (*.f64 -1/6 (/.f64 (*.f64 (-.f64 (*.f64 1/24 z) (+.f64 (*.f64 1/36 (/.f64 (*.f64 (pow.f64 z 2) (pow.f64 z 1/3)) (pow.f64 (pow.f64 (pow.f64 z 1/3) 2) 2))) (*.f64 1/18 (/.f64 (*.f64 (pow.f64 z 2) (pow.f64 z 1/3)) (pow.f64 (pow.f64 (pow.f64 z 1/3) 2) 2))))) (*.f64 z (pow.f64 z 1/3))) (pow.f64 (pow.f64 (pow.f64 z 1/3) 2) 2))) (*.f64 -1/216 (/.f64 (pow.f64 z 3) (pow.f64 (pow.f64 (pow.f64 z 1/3) 2) 3))))))) (pow.f64 (pow.f64 z 1/3) 2))) (*.f64 -1/9 (/.f64 (*.f64 (-.f64 (*.f64 1/24 z) (+.f64 (*.f64 1/36 (/.f64 (*.f64 (pow.f64 z 2) (pow.f64 z 1/3)) (pow.f64 (pow.f64 (pow.f64 z 1/3) 2) 2))) (*.f64 1/18 (/.f64 (*.f64 (pow.f64 z 2) (pow.f64 z 1/3)) (pow.f64 (pow.f64 (pow.f64 z 1/3) 2) 2))))) z) (pow.f64 (pow.f64 (pow.f64 z 1/3) 2) 2))))) (+.f64 (*.f64 1/3 (/.f64 (*.f64 (-.f64 (*.f64 1/24 z) (+.f64 (*.f64 1/36 (/.f64 (*.f64 (pow.f64 z 2) (pow.f64 z 1/3)) (pow.f64 (pow.f64 (pow.f64 z 1/3) 2) 2))) (*.f64 1/18 (/.f64 (*.f64 (pow.f64 z 2) (pow.f64 z 1/3)) (pow.f64 (pow.f64 (pow.f64 z 1/3) 2) 2))))) (+.f64 (*.f64 -1/6 (/.f64 (*.f64 (pow.f64 z 1/3) z) (pow.f64 (pow.f64 z 1/3) 2))) (*.f64 -1/6 (/.f64 (*.f64 z (pow.f64 z 1/3)) (pow.f64 (pow.f64 z 1/3) 2))))) (pow.f64 (pow.f64 z 1/3) 2))) (+.f64 (*.f64 1/3 (-.f64 (*.f64 -1/720 z) (+.f64 (*.f64 -1/6 (/.f64 (*.f64 (-.f64 (*.f64 1/24 z) (+.f64 (*.f64 1/36 (/.f64 (*.f64 (pow.f64 z 2) (pow.f64 z 1/3)) (pow.f64 (pow.f64 (pow.f64 z 1/3) 2) 2))) (*.f64 1/18 (/.f64 (*.f64 (pow.f64 z 2) (pow.f64 z 1/3)) (pow.f64 (pow.f64 (pow.f64 z 1/3) 2) 2))))) (*.f64 (pow.f64 z 1/3) z)) (pow.f64 (pow.f64 (pow.f64 z 1/3) 2) 2))) (+.f64 (*.f64 -1/6 (/.f64 (*.f64 (-.f64 (*.f64 1/24 z) (+.f64 (*.f64 1/36 (/.f64 (*.f64 (pow.f64 z 2) (pow.f64 z 1/3)) (pow.f64 (pow.f64 (pow.f64 z 1/3) 2) 2))) (*.f64 1/18 (/.f64 (*.f64 (pow.f64 z 2) (pow.f64 z 1/3)) (pow.f64 (pow.f64 (pow.f64 z 1/3) 2) 2))))) (*.f64 z (pow.f64 z 1/3))) (pow.f64 (pow.f64 (pow.f64 z 1/3) 2) 2))) (*.f64 -1/216 (/.f64 (pow.f64 z 3) (pow.f64 (pow.f64 (pow.f64 z 1/3) 2) 3))))))) (*.f64 -1/6 (/.f64 (*.f64 (+.f64 (*.f64 1/36 (/.f64 (pow.f64 z 2) (pow.f64 (pow.f64 (pow.f64 z 1/3) 2) 2))) (*.f64 2/3 (/.f64 (*.f64 (-.f64 (*.f64 1/24 z) (+.f64 (*.f64 1/36 (/.f64 (*.f64 (pow.f64 z 2) (pow.f64 z 1/3)) (pow.f64 (pow.f64 (pow.f64 z 1/3) 2) 2))) (*.f64 1/18 (/.f64 (*.f64 (pow.f64 z 2) (pow.f64 z 1/3)) (pow.f64 (pow.f64 (pow.f64 z 1/3) 2) 2))))) (pow.f64 z 1/3)) (pow.f64 (pow.f64 z 1/3) 2)))) z) (pow.f64 (pow.f64 z 1/3) 2)))))) (pow.f64 y 6)) (*.f64 (+.f64 (*.f64 (+.f64 (*.f64 1/36 (/.f64 (pow.f64 z 2) (pow.f64 (pow.f64 (pow.f64 z 1/3) 2) 2))) (*.f64 2/3 (/.f64 (*.f64 (-.f64 (*.f64 1/24 z) (+.f64 (*.f64 1/36 (/.f64 (*.f64 (pow.f64 z 2) (pow.f64 z 1/3)) (pow.f64 (pow.f64 (pow.f64 z 1/3) 2) 2))) (*.f64 1/18 (/.f64 (*.f64 (pow.f64 z 2) (pow.f64 z 1/3)) (pow.f64 (pow.f64 (pow.f64 z 1/3) 2) 2))))) (pow.f64 z 1/3)) (pow.f64 (pow.f64 z 1/3) 2)))) (pow.f64 z 1/3)) (+.f64 (*.f64 1/3 (-.f64 (*.f64 1/24 z) (+.f64 (*.f64 1/36 (/.f64 (*.f64 (pow.f64 z 2) (pow.f64 z 1/3)) (pow.f64 (pow.f64 (pow.f64 z 1/3) 2) 2))) (*.f64 1/18 (/.f64 (*.f64 (pow.f64 z 2) (pow.f64 z 1/3)) (pow.f64 (pow.f64 (pow.f64 z 1/3) 2) 2)))))) (*.f64 -1/6 (/.f64 (*.f64 (+.f64 (*.f64 -1/6 (/.f64 (*.f64 (pow.f64 z 1/3) z) (pow.f64 (pow.f64 z 1/3) 2))) (*.f64 -1/6 (/.f64 (*.f64 z (pow.f64 z 1/3)) (pow.f64 (pow.f64 z 1/3) 2)))) z) (pow.f64 (pow.f64 z 1/3) 2))))) (pow.f64 y 4)))))
(+.f64 (fma.f64 (*.f64 y y) (fma.f64 -1/6 z (*.f64 (cbrt.f64 z) (*.f64 -1/6 (+.f64 (/.f64 (*.f64 z (cbrt.f64 z)) (pow.f64 (cbrt.f64 z) 2)) (/.f64 (*.f64 z (cbrt.f64 z)) (pow.f64 (cbrt.f64 z) 2)))))) (pow.f64 (cbrt.f64 z) 3)) (fma.f64 (fma.f64 (cbrt.f64 z) (fma.f64 2/3 (/.f64 (cbrt.f64 z) (/.f64 (pow.f64 (cbrt.f64 z) 2) (-.f64 (*.f64 z -1/720) (fma.f64 -1/6 (/.f64 (-.f64 (*.f64 z 1/24) (*.f64 (/.f64 (*.f64 (cbrt.f64 z) (*.f64 z z)) (pow.f64 (pow.f64 (cbrt.f64 z) 2) 2)) 1/12)) (/.f64 (pow.f64 (pow.f64 (cbrt.f64 z) 2) 2) (*.f64 z (cbrt.f64 z)))) (fma.f64 -1/6 (/.f64 (-.f64 (*.f64 z 1/24) (*.f64 (/.f64 (*.f64 (cbrt.f64 z) (*.f64 z z)) (pow.f64 (pow.f64 (cbrt.f64 z) 2) 2)) 1/12)) (/.f64 (pow.f64 (pow.f64 (cbrt.f64 z) 2) 2) (*.f64 z (cbrt.f64 z)))) (*.f64 -1/216 (/.f64 (pow.f64 z 3) (pow.f64 (pow.f64 (cbrt.f64 z) 2) 3)))))))) (*.f64 -1/9 (/.f64 (-.f64 (*.f64 z 1/24) (*.f64 (/.f64 (*.f64 (cbrt.f64 z) (*.f64 z z)) (pow.f64 (pow.f64 (cbrt.f64 z) 2) 2)) 1/12)) (/.f64 (pow.f64 (pow.f64 (cbrt.f64 z) 2) 2) z)))) (fma.f64 1/3 (/.f64 (*.f64 (*.f64 -1/6 (+.f64 (/.f64 (*.f64 z (cbrt.f64 z)) (pow.f64 (cbrt.f64 z) 2)) (/.f64 (*.f64 z (cbrt.f64 z)) (pow.f64 (cbrt.f64 z) 2)))) (-.f64 (*.f64 z 1/24) (*.f64 (/.f64 (*.f64 (cbrt.f64 z) (*.f64 z z)) (pow.f64 (pow.f64 (cbrt.f64 z) 2) 2)) 1/12))) (pow.f64 (cbrt.f64 z) 2)) (fma.f64 1/3 (-.f64 (*.f64 z -1/720) (fma.f64 -1/6 (/.f64 (-.f64 (*.f64 z 1/24) (*.f64 (/.f64 (*.f64 (cbrt.f64 z) (*.f64 z z)) (pow.f64 (pow.f64 (cbrt.f64 z) 2) 2)) 1/12)) (/.f64 (pow.f64 (pow.f64 (cbrt.f64 z) 2) 2) (*.f64 z (cbrt.f64 z)))) (fma.f64 -1/6 (/.f64 (-.f64 (*.f64 z 1/24) (*.f64 (/.f64 (*.f64 (cbrt.f64 z) (*.f64 z z)) (pow.f64 (pow.f64 (cbrt.f64 z) 2) 2)) 1/12)) (/.f64 (pow.f64 (pow.f64 (cbrt.f64 z) 2) 2) (*.f64 z (cbrt.f64 z)))) (*.f64 -1/216 (/.f64 (pow.f64 z 3) (pow.f64 (pow.f64 (cbrt.f64 z) 2) 3)))))) (*.f64 -1/6 (/.f64 (fma.f64 1/36 (/.f64 (*.f64 z z) (pow.f64 (pow.f64 (cbrt.f64 z) 2) 2)) (*.f64 2/3 (/.f64 (-.f64 (*.f64 z 1/24) (*.f64 (/.f64 (*.f64 (cbrt.f64 z) (*.f64 z z)) (pow.f64 (pow.f64 (cbrt.f64 z) 2) 2)) 1/12)) (/.f64 (pow.f64 (cbrt.f64 z) 2) (cbrt.f64 z))))) (/.f64 (pow.f64 (cbrt.f64 z) 2) z)))))) (pow.f64 y 6) (*.f64 (fma.f64 (fma.f64 1/36 (/.f64 (*.f64 z z) (pow.f64 (pow.f64 (cbrt.f64 z) 2) 2)) (*.f64 2/3 (/.f64 (-.f64 (*.f64 z 1/24) (*.f64 (/.f64 (*.f64 (cbrt.f64 z) (*.f64 z z)) (pow.f64 (pow.f64 (cbrt.f64 z) 2) 2)) 1/12)) (/.f64 (pow.f64 (cbrt.f64 z) 2) (cbrt.f64 z))))) (cbrt.f64 z) (fma.f64 1/3 (-.f64 (*.f64 z 1/24) (*.f64 (/.f64 (*.f64 (cbrt.f64 z) (*.f64 z z)) (pow.f64 (pow.f64 (cbrt.f64 z) 2) 2)) 1/12)) (*.f64 -1/6 (/.f64 (*.f64 -1/6 (+.f64 (/.f64 (*.f64 z (cbrt.f64 z)) (pow.f64 (cbrt.f64 z) 2)) (/.f64 (*.f64 z (cbrt.f64 z)) (pow.f64 (cbrt.f64 z) 2)))) (/.f64 (pow.f64 (cbrt.f64 z) 2) z))))) (pow.f64 y 4))))
(+.f64 (fma.f64 (fma.f64 (cbrt.f64 z) (fma.f64 2/3 (*.f64 (/.f64 (cbrt.f64 z) (pow.f64 (cbrt.f64 z) 2)) (-.f64 (*.f64 z -1/720) (+.f64 (*.f64 -1/216 (/.f64 (pow.f64 z 3) (*.f64 z z))) (*.f64 (*.f64 (/.f64 (fma.f64 z 1/24 (*.f64 (/.f64 (*.f64 (cbrt.f64 z) (*.f64 z z)) (*.f64 z (cbrt.f64 z))) -1/12)) (*.f64 z (cbrt.f64 z))) (*.f64 z (cbrt.f64 z))) -1/3)))) (*.f64 -1/9 (/.f64 z (/.f64 (*.f64 z (cbrt.f64 z)) (fma.f64 z 1/24 (*.f64 (/.f64 (*.f64 (cbrt.f64 z) (*.f64 z z)) (*.f64 z (cbrt.f64 z))) -1/12)))))) (fma.f64 1/3 (*.f64 (/.f64 (fma.f64 z 1/24 (*.f64 (/.f64 (*.f64 (cbrt.f64 z) (*.f64 z z)) (*.f64 z (cbrt.f64 z))) -1/12)) (pow.f64 (cbrt.f64 z) 2)) (*.f64 (/.f64 z (/.f64 (pow.f64 (cbrt.f64 z) 2) (cbrt.f64 z))) -1/3)) (fma.f64 1/3 (-.f64 (*.f64 z -1/720) (+.f64 (*.f64 -1/216 (/.f64 (pow.f64 z 3) (*.f64 z z))) (*.f64 (*.f64 (/.f64 (fma.f64 z 1/24 (*.f64 (/.f64 (*.f64 (cbrt.f64 z) (*.f64 z z)) (*.f64 z (cbrt.f64 z))) -1/12)) (*.f64 z (cbrt.f64 z))) (*.f64 z (cbrt.f64 z))) -1/3))) (*.f64 -1/6 (*.f64 (/.f64 (fma.f64 2/3 (*.f64 (/.f64 (fma.f64 z 1/24 (*.f64 (/.f64 (*.f64 (cbrt.f64 z) (*.f64 z z)) (*.f64 z (cbrt.f64 z))) -1/12)) (pow.f64 (cbrt.f64 z) 2)) (cbrt.f64 z)) (/.f64 (*.f64 1/36 (*.f64 z z)) (*.f64 z (cbrt.f64 z)))) (pow.f64 (cbrt.f64 z) 2)) z))))) (pow.f64 y 6) (*.f64 (fma.f64 (cbrt.f64 z) (fma.f64 2/3 (*.f64 (/.f64 (fma.f64 z 1/24 (*.f64 (/.f64 (*.f64 (cbrt.f64 z) (*.f64 z z)) (*.f64 z (cbrt.f64 z))) -1/12)) (pow.f64 (cbrt.f64 z) 2)) (cbrt.f64 z)) (/.f64 (*.f64 1/36 (*.f64 z z)) (*.f64 z (cbrt.f64 z)))) (fma.f64 1/3 (fma.f64 z 1/24 (*.f64 (/.f64 (*.f64 (cbrt.f64 z) (*.f64 z z)) (*.f64 z (cbrt.f64 z))) -1/12)) (*.f64 -1/6 (*.f64 (/.f64 (*.f64 (/.f64 z (/.f64 (pow.f64 (cbrt.f64 z) 2) (cbrt.f64 z))) -1/3) (pow.f64 (cbrt.f64 z) 2)) z)))) (pow.f64 y 4))) (fma.f64 (*.f64 y y) (fma.f64 (cbrt.f64 z) (*.f64 (/.f64 z (/.f64 (pow.f64 (cbrt.f64 z) 2) (cbrt.f64 z))) -1/3) (*.f64 z -1/6)) z))
(fma.f64 y (*.f64 y (fma.f64 z -1/6 (/.f64 z -3))) (fma.f64 (fma.f64 1/3 (fma.f64 z 1/24 (*.f64 z -1/12)) (fma.f64 -1/6 (/.f64 z -3) (+.f64 (*.f64 z 1/36) (/.f64 2/3 (/.f64 1 (fma.f64 z 1/24 (*.f64 z -1/12))))))) (pow.f64 y 4) (fma.f64 (fma.f64 2/3 (/.f64 (-.f64 (*.f64 z -1/720) (fma.f64 z -1/216 (-.f64 (/.f64 z -72) (/.f64 z -36)))) 1) (fma.f64 (+.f64 (/.f64 z 24) (*.f64 z -1/12)) -1/9 (fma.f64 1/3 (-.f64 (*.f64 z -1/720) (fma.f64 z -1/216 (-.f64 (/.f64 z -72) (/.f64 z -36)))) (fma.f64 -1/6 (+.f64 (*.f64 z 1/36) (/.f64 2/3 (/.f64 1 (fma.f64 z 1/24 (*.f64 z -1/12))))) (/.f64 (fma.f64 z 1/24 (*.f64 z -1/12)) -9))))) (pow.f64 y 6) z)))
(*.f64 (pow.f64 (pow.f64 (*.f64 (cos.f64 y) z) 1/3) 2) (pow.f64 (*.f64 (cos.f64 y) z) 1/3))
(pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 3)
(*.f64 z (cos.f64 y))
(*.f64 (pow.f64 (pow.f64 (*.f64 (cos.f64 y) z) 1/3) 2) (pow.f64 (*.f64 (cos.f64 y) z) 1/3))
(pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 3)
(*.f64 z (cos.f64 y))
(*.f64 (pow.f64 (pow.f64 (*.f64 (cos.f64 y) z) 1/3) 2) (pow.f64 (*.f64 (cos.f64 y) z) 1/3))
(pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 3)
(*.f64 z (cos.f64 y))
(*.f64 (pow.f64 (pow.f64 (*.f64 (cos.f64 y) z) 1/3) 2) (pow.f64 (*.f64 (cos.f64 y) z) 1/3))
(pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 3)
(*.f64 z (cos.f64 y))
(*.f64 (pow.f64 (pow.f64 (*.f64 (cos.f64 y) z) 1/3) 2) (pow.f64 (*.f64 (cos.f64 y) z) 1/3))
(pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 3)
(*.f64 z (cos.f64 y))
(*.f64 (pow.f64 (pow.f64 (*.f64 (cos.f64 y) z) 1/3) 2) (pow.f64 (*.f64 (cos.f64 y) z) 1/3))
(pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 3)
(*.f64 z (cos.f64 y))
(*.f64 (pow.f64 (pow.f64 (*.f64 (cos.f64 y) z) 1/3) 2) (pow.f64 (*.f64 (cos.f64 y) z) 1/3))
(pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 3)
(*.f64 z (cos.f64 y))
(*.f64 (pow.f64 (pow.f64 (*.f64 (cos.f64 y) z) 1/3) 2) (pow.f64 (*.f64 (cos.f64 y) z) 1/3))
(pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 3)
(*.f64 z (cos.f64 y))
(pow.f64 z 1/3)
(cbrt.f64 z)
(+.f64 (*.f64 -1/6 (/.f64 (*.f64 (pow.f64 y 2) z) (pow.f64 (pow.f64 z 1/3) 2))) (pow.f64 z 1/3))
(fma.f64 -1/6 (/.f64 (*.f64 y y) (/.f64 (pow.f64 (cbrt.f64 z) 2) z)) (cbrt.f64 z))
(fma.f64 -1/6 (*.f64 (/.f64 (*.f64 y y) (pow.f64 (cbrt.f64 z) 2)) z) (cbrt.f64 z))
(fma.f64 -1/6 (*.f64 (cbrt.f64 z) (*.f64 y y)) (cbrt.f64 z))
(+.f64 (*.f64 -1/6 (/.f64 (*.f64 (pow.f64 y 2) z) (pow.f64 (pow.f64 z 1/3) 2))) (+.f64 (*.f64 1/3 (/.f64 (*.f64 (-.f64 (*.f64 1/24 z) (+.f64 (*.f64 1/36 (/.f64 (*.f64 (pow.f64 z 2) (pow.f64 z 1/3)) (pow.f64 (pow.f64 (pow.f64 z 1/3) 2) 2))) (*.f64 1/18 (/.f64 (*.f64 (pow.f64 z 2) (pow.f64 z 1/3)) (pow.f64 (pow.f64 (pow.f64 z 1/3) 2) 2))))) (pow.f64 y 4)) (pow.f64 (pow.f64 z 1/3) 2))) (pow.f64 z 1/3)))
(fma.f64 -1/6 (/.f64 (*.f64 y y) (/.f64 (pow.f64 (cbrt.f64 z) 2) z)) (fma.f64 1/3 (/.f64 (-.f64 (*.f64 z 1/24) (*.f64 (/.f64 (*.f64 (cbrt.f64 z) (*.f64 z z)) (pow.f64 (pow.f64 (cbrt.f64 z) 2) 2)) 1/12)) (/.f64 (pow.f64 (cbrt.f64 z) 2) (pow.f64 y 4))) (cbrt.f64 z)))
(fma.f64 -1/6 (*.f64 (/.f64 (*.f64 y y) (pow.f64 (cbrt.f64 z) 2)) z) (fma.f64 1/3 (*.f64 (/.f64 (fma.f64 z 1/24 (*.f64 (/.f64 (*.f64 (cbrt.f64 z) (*.f64 z z)) (*.f64 z (cbrt.f64 z))) -1/12)) (pow.f64 (cbrt.f64 z) 2)) (pow.f64 y 4)) (cbrt.f64 z)))
(fma.f64 1/3 (*.f64 (/.f64 (fma.f64 z 1/24 (*.f64 z -1/12)) (/.f64 z (cbrt.f64 z))) (pow.f64 y 4)) (fma.f64 -1/6 (*.f64 (cbrt.f64 z) (*.f64 y y)) (cbrt.f64 z)))
(+.f64 (*.f64 -1/6 (/.f64 (*.f64 (pow.f64 y 2) z) (pow.f64 (pow.f64 z 1/3) 2))) (+.f64 (*.f64 1/3 (/.f64 (*.f64 (-.f64 (*.f64 1/24 z) (+.f64 (*.f64 1/36 (/.f64 (*.f64 (pow.f64 z 2) (pow.f64 z 1/3)) (pow.f64 (pow.f64 (pow.f64 z 1/3) 2) 2))) (*.f64 1/18 (/.f64 (*.f64 (pow.f64 z 2) (pow.f64 z 1/3)) (pow.f64 (pow.f64 (pow.f64 z 1/3) 2) 2))))) (pow.f64 y 4)) (pow.f64 (pow.f64 z 1/3) 2))) (+.f64 (pow.f64 z 1/3) (*.f64 1/3 (/.f64 (*.f64 (-.f64 (*.f64 -1/720 z) (+.f64 (*.f64 -1/6 (/.f64 (*.f64 (-.f64 (*.f64 1/24 z) (+.f64 (*.f64 1/36 (/.f64 (*.f64 (pow.f64 z 2) (pow.f64 z 1/3)) (pow.f64 (pow.f64 (pow.f64 z 1/3) 2) 2))) (*.f64 1/18 (/.f64 (*.f64 (pow.f64 z 2) (pow.f64 z 1/3)) (pow.f64 (pow.f64 (pow.f64 z 1/3) 2) 2))))) (*.f64 (pow.f64 z 1/3) z)) (pow.f64 (pow.f64 (pow.f64 z 1/3) 2) 2))) (+.f64 (*.f64 -1/6 (/.f64 (*.f64 (-.f64 (*.f64 1/24 z) (+.f64 (*.f64 1/36 (/.f64 (*.f64 (pow.f64 z 2) (pow.f64 z 1/3)) (pow.f64 (pow.f64 (pow.f64 z 1/3) 2) 2))) (*.f64 1/18 (/.f64 (*.f64 (pow.f64 z 2) (pow.f64 z 1/3)) (pow.f64 (pow.f64 (pow.f64 z 1/3) 2) 2))))) (*.f64 z (pow.f64 z 1/3))) (pow.f64 (pow.f64 (pow.f64 z 1/3) 2) 2))) (*.f64 -1/216 (/.f64 (pow.f64 z 3) (pow.f64 (pow.f64 (pow.f64 z 1/3) 2) 3)))))) (pow.f64 y 6)) (pow.f64 (pow.f64 z 1/3) 2))))))
(fma.f64 -1/6 (/.f64 (*.f64 y y) (/.f64 (pow.f64 (cbrt.f64 z) 2) z)) (+.f64 (fma.f64 1/3 (/.f64 (-.f64 (*.f64 z 1/24) (*.f64 (/.f64 (*.f64 (cbrt.f64 z) (*.f64 z z)) (pow.f64 (pow.f64 (cbrt.f64 z) 2) 2)) 1/12)) (/.f64 (pow.f64 (cbrt.f64 z) 2) (pow.f64 y 4))) (cbrt.f64 z)) (*.f64 1/3 (/.f64 (-.f64 (*.f64 z -1/720) (fma.f64 -1/6 (/.f64 (-.f64 (*.f64 z 1/24) (*.f64 (/.f64 (*.f64 (cbrt.f64 z) (*.f64 z z)) (pow.f64 (pow.f64 (cbrt.f64 z) 2) 2)) 1/12)) (/.f64 (pow.f64 (pow.f64 (cbrt.f64 z) 2) 2) (*.f64 z (cbrt.f64 z)))) (fma.f64 -1/6 (/.f64 (-.f64 (*.f64 z 1/24) (*.f64 (/.f64 (*.f64 (cbrt.f64 z) (*.f64 z z)) (pow.f64 (pow.f64 (cbrt.f64 z) 2) 2)) 1/12)) (/.f64 (pow.f64 (pow.f64 (cbrt.f64 z) 2) 2) (*.f64 z (cbrt.f64 z)))) (*.f64 -1/216 (/.f64 (pow.f64 z 3) (pow.f64 (pow.f64 (cbrt.f64 z) 2) 3)))))) (/.f64 (pow.f64 (cbrt.f64 z) 2) (pow.f64 y 6))))))
(fma.f64 -1/6 (*.f64 (/.f64 (*.f64 y y) (pow.f64 (cbrt.f64 z) 2)) z) (fma.f64 1/3 (*.f64 (/.f64 (fma.f64 z 1/24 (*.f64 (/.f64 (*.f64 (cbrt.f64 z) (*.f64 z z)) (*.f64 z (cbrt.f64 z))) -1/12)) (pow.f64 (cbrt.f64 z) 2)) (pow.f64 y 4)) (fma.f64 1/3 (/.f64 (-.f64 (*.f64 z -1/720) (+.f64 (*.f64 -1/216 (/.f64 (pow.f64 z 3) (*.f64 z z))) (*.f64 (*.f64 (/.f64 (fma.f64 z 1/24 (*.f64 (/.f64 (*.f64 (cbrt.f64 z) (*.f64 z z)) (*.f64 z (cbrt.f64 z))) -1/12)) (*.f64 z (cbrt.f64 z))) (*.f64 z (cbrt.f64 z))) -1/3))) (/.f64 (pow.f64 (cbrt.f64 z) 2) (pow.f64 y 6))) (cbrt.f64 z))))
(fma.f64 -1/6 (*.f64 (cbrt.f64 z) (*.f64 y y)) (fma.f64 1/3 (*.f64 (/.f64 (fma.f64 z 1/24 (*.f64 z -1/12)) (/.f64 z (cbrt.f64 z))) (pow.f64 y 4)) (fma.f64 1/3 (*.f64 (/.f64 (pow.f64 y 6) (/.f64 z (cbrt.f64 z))) (-.f64 (*.f64 z -1/720) (fma.f64 z -1/216 (-.f64 (/.f64 z -72) (/.f64 z -36))))) (cbrt.f64 z))))
(pow.f64 (*.f64 (cos.f64 y) z) 1/3)
(cbrt.f64 (*.f64 z (cos.f64 y)))
(pow.f64 (*.f64 (cos.f64 y) z) 1/3)
(cbrt.f64 (*.f64 z (cos.f64 y)))
(pow.f64 (*.f64 (cos.f64 y) z) 1/3)
(cbrt.f64 (*.f64 z (cos.f64 y)))
(pow.f64 (*.f64 (cos.f64 y) z) 1/3)
(cbrt.f64 (*.f64 z (cos.f64 y)))
(pow.f64 (*.f64 (cos.f64 y) z) 1/3)
(cbrt.f64 (*.f64 z (cos.f64 y)))
(pow.f64 (*.f64 (cos.f64 y) z) 1/3)
(cbrt.f64 (*.f64 z (cos.f64 y)))
(pow.f64 (*.f64 (cos.f64 y) z) 1/3)
(cbrt.f64 (*.f64 z (cos.f64 y)))
(pow.f64 (*.f64 (cos.f64 y) z) 1/3)
(cbrt.f64 (*.f64 z (cos.f64 y)))
(-.f64 (+.f64 1 (*.f64 z (cos.f64 y))) 1)
(pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 3)
(*.f64 z (cos.f64 y))
(*.f64 z (cos.f64 y))
(pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 3)
(*.f64 (cos.f64 y) z)
(pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 3)
(*.f64 z (cos.f64 y))
(*.f64 (*.f64 z (cos.f64 y)) 1)
(pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 3)
(*.f64 z (cos.f64 y))
(*.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) (pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 2))
(pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 3)
(*.f64 z (cos.f64 y))
(*.f64 1 (*.f64 z (cos.f64 y)))
(pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 3)
(*.f64 z (cos.f64 y))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 2) (cbrt.f64 (*.f64 z (cos.f64 y))))
(pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 3)
(*.f64 z (cos.f64 y))
(*.f64 (cbrt.f64 z) (*.f64 (cbrt.f64 (cos.f64 y)) (pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 2)))
(*.f64 (cbrt.f64 z) (*.f64 (pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 2) (cbrt.f64 (cos.f64 y))))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 2) (*.f64 (cbrt.f64 z) (cbrt.f64 (cos.f64 y))))
(*.f64 (pow.f64 (cbrt.f64 z) 2) (*.f64 (cbrt.f64 z) (cos.f64 y)))
(pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 3)
(*.f64 z (cos.f64 y))
(*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 z (cos.f64 y)))) 2) (*.f64 (cbrt.f64 (cbrt.f64 (*.f64 z (cos.f64 y)))) (pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 2)))
(pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 3)
(*.f64 z (cos.f64 y))
(*.f64 (pow.f64 (cbrt.f64 (cos.f64 y)) 2) (*.f64 (cbrt.f64 (cos.f64 y)) z))
(pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 3)
(*.f64 z (cos.f64 y))
(*.f64 (sqrt.f64 (*.f64 z (cos.f64 y))) (sqrt.f64 (*.f64 z (cos.f64 y))))
(pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 3)
(*.f64 z (cos.f64 y))
(*.f64 (sqrt.f64 z) (*.f64 (sqrt.f64 z) (cos.f64 y)))
(pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 3)
(*.f64 z (cos.f64 y))
(*.f64 (pow.f64 (*.f64 z (cos.f64 y)) 1/6) (*.f64 (pow.f64 (*.f64 z (cos.f64 y)) 1/6) (pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 2)))
(pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 3)
(*.f64 z (cos.f64 y))
(*.f64 (sqrt.f64 (cos.f64 y)) (*.f64 (sqrt.f64 (cos.f64 y)) z))
(pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 3)
(*.f64 z (cos.f64 y))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 z (cos.f64 y)))) 2) 3) (cbrt.f64 (*.f64 z (cos.f64 y))))
(pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 3)
(*.f64 z (cos.f64 y))
(*.f64 (pow.f64 (pow.f64 (*.f64 z (cos.f64 y)) 1/6) 3) (pow.f64 (pow.f64 (*.f64 z (cos.f64 y)) 1/6) 3))
(pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 3)
(*.f64 z (cos.f64 y))
(*.f64 (*.f64 z (pow.f64 (cbrt.f64 (cos.f64 y)) 2)) (cbrt.f64 (cos.f64 y)))
(pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 3)
(*.f64 z (cos.f64 y))
(*.f64 (*.f64 z (sqrt.f64 (cos.f64 y))) (sqrt.f64 (cos.f64 y)))
(pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 3)
(*.f64 z (cos.f64 y))
(*.f64 (*.f64 (cos.f64 y) (pow.f64 (cbrt.f64 z) 2)) (cbrt.f64 z))
(pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 3)
(*.f64 z (cos.f64 y))
(*.f64 (*.f64 (cos.f64 y) (sqrt.f64 z)) (sqrt.f64 z))
(pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 3)
(*.f64 z (cos.f64 y))
(*.f64 (*.f64 (pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 2) 1) (cbrt.f64 (*.f64 z (cos.f64 y))))
(pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 3)
(*.f64 z (cos.f64 y))
(*.f64 (*.f64 (pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 2) (cbrt.f64 z)) (cbrt.f64 (cos.f64 y)))
(*.f64 (cbrt.f64 z) (*.f64 (pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 2) (cbrt.f64 (cos.f64 y))))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 2) (*.f64 (cbrt.f64 z) (cbrt.f64 (cos.f64 y))))
(*.f64 (*.f64 (pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 2) (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 z (cos.f64 y)))) 2)) (cbrt.f64 (cbrt.f64 (*.f64 z (cos.f64 y)))))
(pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 3)
(*.f64 z (cos.f64 y))
(*.f64 (*.f64 (pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 2) (pow.f64 (*.f64 z (cos.f64 y)) 1/6)) (pow.f64 (*.f64 z (cos.f64 y)) 1/6))
(pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 3)
(*.f64 z (cos.f64 y))
(sqrt.f64 (pow.f64 (*.f64 z (cos.f64 y)) 2))
(pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 3)
(*.f64 z (cos.f64 y))
(log.f64 (pow.f64 (exp.f64 z) (cos.f64 y)))
(pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 3)
(*.f64 z (cos.f64 y))
(cbrt.f64 (pow.f64 (*.f64 z (cos.f64 y)) 3))
(pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 3)
(*.f64 z (cos.f64 y))
(expm1.f64 (log1p.f64 (*.f64 z (cos.f64 y))))
(pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 3)
(*.f64 z (cos.f64 y))
(log1p.f64 (expm1.f64 (*.f64 z (cos.f64 y))))
(pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 3)
(*.f64 z (cos.f64 y))
(exp.f64 (log.f64 (*.f64 z (cos.f64 y))))
(pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 3)
(*.f64 z (cos.f64 y))
(-.f64 (+.f64 1 (cbrt.f64 (*.f64 z (cos.f64 y)))) 1)
(cbrt.f64 (*.f64 z (cos.f64 y)))
(*.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 1)
(cbrt.f64 (*.f64 z (cos.f64 y)))
(*.f64 1 (cbrt.f64 (*.f64 z (cos.f64 y))))
(cbrt.f64 (*.f64 z (cos.f64 y)))
(*.f64 (cbrt.f64 z) (cbrt.f64 (cos.f64 y)))
(*.f64 (cbrt.f64 (cbrt.f64 (*.f64 z (cos.f64 y)))) (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 z (cos.f64 y)))) 2))
(cbrt.f64 (*.f64 z (cos.f64 y)))
(*.f64 (cbrt.f64 (cbrt.f64 (*.f64 z (cos.f64 y)))) (pow.f64 (pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 2) 1/3))
(cbrt.f64 (*.f64 z (cos.f64 y)))
(*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 z (cos.f64 y)))) 2) (cbrt.f64 (cbrt.f64 (*.f64 z (cos.f64 y)))))
(cbrt.f64 (*.f64 z (cos.f64 y)))
(*.f64 (cbrt.f64 (cos.f64 y)) (cbrt.f64 z))
(*.f64 (cbrt.f64 z) (cbrt.f64 (cos.f64 y)))
(*.f64 (pow.f64 (*.f64 z (cos.f64 y)) 1/6) (pow.f64 (*.f64 z (cos.f64 y)) 1/6))
(cbrt.f64 (*.f64 z (cos.f64 y)))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 2) 1/3) (cbrt.f64 (cbrt.f64 (*.f64 z (cos.f64 y)))))
(cbrt.f64 (*.f64 z (cos.f64 y)))
(*.f64 (pow.f64 1 1/3) (cbrt.f64 (*.f64 z (cos.f64 y))))
(cbrt.f64 (*.f64 z (cos.f64 y)))
(*.f64 (pow.f64 (sqrt.f64 (*.f64 z (cos.f64 y))) 1/3) (pow.f64 (sqrt.f64 (*.f64 z (cos.f64 y))) 1/3))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 z (cos.f64 y)))) (cbrt.f64 (sqrt.f64 (*.f64 z (cos.f64 y)))))
(pow.f64 (*.f64 z (cos.f64 y)) 1/3)
(cbrt.f64 (*.f64 z (cos.f64 y)))
(pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 1)
(cbrt.f64 (*.f64 z (cos.f64 y)))
(pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 z (cos.f64 y)))) 3)
(cbrt.f64 (*.f64 z (cos.f64 y)))
(pow.f64 (pow.f64 (*.f64 z (cos.f64 y)) 1/6) 2)
(cbrt.f64 (*.f64 z (cos.f64 y)))
(sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 2))
(cbrt.f64 (*.f64 z (cos.f64 y)))
(log.f64 (exp.f64 (cbrt.f64 (*.f64 z (cos.f64 y)))))
(cbrt.f64 (*.f64 z (cos.f64 y)))
(expm1.f64 (log1p.f64 (cbrt.f64 (*.f64 z (cos.f64 y)))))
(cbrt.f64 (*.f64 z (cos.f64 y)))
(log1p.f64 (expm1.f64 (cbrt.f64 (*.f64 z (cos.f64 y)))))
(cbrt.f64 (*.f64 z (cos.f64 y)))
(exp.f64 (log.f64 (cbrt.f64 (*.f64 z (cos.f64 y)))))
(cbrt.f64 (*.f64 z (cos.f64 y)))

localize9.0ms (0%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.1b
(*.f64 z (cos.f64 y))
Compiler

Compiled 18 to 6 computations (66.7% saved)

localize7.0ms (0%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(+.f64 x (sin.f64 y))
Compiler

Compiled 18 to 6 computations (66.7% saved)

localize10.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (sin.f64 y) (*.f64 z (cos.f64 y)))
0.1b
(*.f64 z (cos.f64 y))
Compiler

Compiled 20 to 7 computations (65% saved)

series8.0ms (0%)

Counts
1 → 24
Calls

6 calls:

TimeVariablePointExpression
1.0ms
z
@0
(+.f64 (sin.f64 y) (*.f64 z (cos.f64 y)))
1.0ms
y
@inf
(+.f64 (sin.f64 y) (*.f64 z (cos.f64 y)))
1.0ms
y
@-inf
(+.f64 (sin.f64 y) (*.f64 z (cos.f64 y)))
1.0ms
z
@-inf
(+.f64 (sin.f64 y) (*.f64 z (cos.f64 y)))
1.0ms
z
@inf
(+.f64 (sin.f64 y) (*.f64 z (cos.f64 y)))
Compiler

Compiled 278 to 205 computations (26.3% saved)

rewrite44.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
809×pow1_binary64
748×add-log-exp_binary64
748×log1p-expm1-u_binary64
748×expm1-log1p-u_binary64
731×add-exp-log_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0711
11479
220069
Stop Event
node limit
Counts
1 → 35
Calls
Call 1
Inputs
(+.f64 (sin.f64 y) (*.f64 z (cos.f64 y)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (fma.f64 z (cos.f64 y) (sin.f64 y))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (sin.f64 y) 2) (-.f64 (sin.f64 y) (*.f64 z (cos.f64 y)))) (/.f64 (pow.f64 (*.f64 z (cos.f64 y)) 2) (-.f64 (sin.f64 y) (*.f64 z (cos.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 z (cos.f64 y) (sin.f64 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 z (cos.f64 y) (sin.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 z (cos.f64 y) (sin.f64 y))) (pow.f64 (cbrt.f64 (fma.f64 z (cos.f64 y) (sin.f64 y))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 z (cos.f64 y) (sin.f64 y))) 2) (cbrt.f64 (fma.f64 z (cos.f64 y) (sin.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 z (cos.f64 y) (sin.f64 y))) (sqrt.f64 (fma.f64 z (cos.f64 y) (sin.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (sin.f64 y) 3) (pow.f64 (*.f64 z (cos.f64 y)) 3)) (/.f64 1 (+.f64 (pow.f64 (sin.f64 y) 2) (*.f64 (*.f64 z (cos.f64 y)) (-.f64 (*.f64 z (cos.f64 y)) (sin.f64 y))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (sin.f64 y) 2) (pow.f64 (*.f64 z (cos.f64 y)) 2)) (/.f64 1 (-.f64 (sin.f64 y) (*.f64 z (cos.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (pow.f64 (sin.f64 y) 2) (*.f64 (*.f64 z (cos.f64 y)) (-.f64 (*.f64 z (cos.f64 y)) (sin.f64 y)))) (+.f64 (pow.f64 (sin.f64 y) 3) (pow.f64 (*.f64 z (cos.f64 y)) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 (sin.f64 y) (*.f64 z (cos.f64 y))) (-.f64 (pow.f64 (sin.f64 y) 2) (pow.f64 (*.f64 z (cos.f64 y)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (sin.f64 y) 3) (pow.f64 (*.f64 z (cos.f64 y)) 3)) (+.f64 (pow.f64 (sin.f64 y) 2) (*.f64 (*.f64 z (cos.f64 y)) (-.f64 (*.f64 z (cos.f64 y)) (sin.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (sin.f64 y) 3) (pow.f64 (*.f64 z (cos.f64 y)) 3)) (+.f64 (pow.f64 (*.f64 z (cos.f64 y)) 2) (-.f64 (pow.f64 (sin.f64 y) 2) (*.f64 (*.f64 (sin.f64 y) z) (cos.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (sin.f64 y) 2) (pow.f64 (*.f64 z (cos.f64 y)) 2)) (-.f64 (sin.f64 y) (*.f64 z (cos.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 (sin.f64 y) 3) (pow.f64 (*.f64 z (cos.f64 y)) 3))) (neg.f64 (+.f64 (pow.f64 (sin.f64 y) 2) (*.f64 (*.f64 z (cos.f64 y)) (-.f64 (*.f64 z (cos.f64 y)) (sin.f64 y))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 y) 2) (pow.f64 (*.f64 z (cos.f64 y)) 2))) (neg.f64 (-.f64 (sin.f64 y) (*.f64 z (cos.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 z (cos.f64 y)) 2) (pow.f64 (sin.f64 y) 2)) (-.f64 (*.f64 z (cos.f64 y)) (sin.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 z (cos.f64 y) (sin.f64 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 z (cos.f64 y) (sin.f64 y)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 z (cos.f64 y) (sin.f64 y))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 z (cos.f64 y) (sin.f64 y))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 z (cos.f64 y) (sin.f64 y)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 z (cos.f64 y) (sin.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 z (cos.f64 y) (sin.f64 y)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 z (cos.f64 y) (sin.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 z (cos.f64 y) (sin.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 z (cos.f64 y) (sin.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 z (cos.f64 y) (sin.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 y) z (sin.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (sin.f64 y) (*.f64 z (cos.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 z (cos.f64 y)) (sin.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 2) (cbrt.f64 (*.f64 z (cos.f64 y))) (sin.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (sin.f64 y)) 2) (cbrt.f64 (sin.f64 y)) (*.f64 z (cos.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 z (cos.f64 y))) (sqrt.f64 (*.f64 z (cos.f64 y))) (sin.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (sin.f64 y)) (sqrt.f64 (sin.f64 y)) (*.f64 z (cos.f64 y)))))))

simplify49.0ms (0.3%)

Algorithm
egg-herbie
Rules
721×fma-neg_binary64
519×associate-*l*_binary64
454×associate-*r*_binary64
442×div-sub_binary64
280×fma-def_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
098723
1252698
2844698
35059698
Stop Event
node limit
Counts
59 → 52
Calls
Call 1
Inputs
z
(+.f64 y z)
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y 2) z)) (+.f64 y z))
(+.f64 (*.f64 -1/6 (pow.f64 y 3)) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y 2) z)) (+.f64 y z)))
(+.f64 (*.f64 (cos.f64 y) z) (sin.f64 y))
(+.f64 (*.f64 (cos.f64 y) z) (sin.f64 y))
(+.f64 (*.f64 (cos.f64 y) z) (sin.f64 y))
(+.f64 (*.f64 (cos.f64 y) z) (sin.f64 y))
(+.f64 (*.f64 (cos.f64 y) z) (sin.f64 y))
(+.f64 (*.f64 (cos.f64 y) z) (sin.f64 y))
(+.f64 (*.f64 (cos.f64 y) z) (sin.f64 y))
(+.f64 (*.f64 (cos.f64 y) z) (sin.f64 y))
(sin.f64 y)
(+.f64 (*.f64 (cos.f64 y) z) (sin.f64 y))
(+.f64 (*.f64 (cos.f64 y) z) (sin.f64 y))
(+.f64 (*.f64 (cos.f64 y) z) (sin.f64 y))
(*.f64 (cos.f64 y) z)
(+.f64 (*.f64 (cos.f64 y) z) (sin.f64 y))
(+.f64 (*.f64 (cos.f64 y) z) (sin.f64 y))
(+.f64 (*.f64 (cos.f64 y) z) (sin.f64 y))
(*.f64 (cos.f64 y) z)
(+.f64 (*.f64 (cos.f64 y) z) (sin.f64 y))
(+.f64 (*.f64 (cos.f64 y) z) (sin.f64 y))
(+.f64 (*.f64 (cos.f64 y) z) (sin.f64 y))
(-.f64 (+.f64 1 (fma.f64 z (cos.f64 y) (sin.f64 y))) 1)
(-.f64 (/.f64 (pow.f64 (sin.f64 y) 2) (-.f64 (sin.f64 y) (*.f64 z (cos.f64 y)))) (/.f64 (pow.f64 (*.f64 z (cos.f64 y)) 2) (-.f64 (sin.f64 y) (*.f64 z (cos.f64 y)))))
(*.f64 (fma.f64 z (cos.f64 y) (sin.f64 y)) 1)
(*.f64 1 (fma.f64 z (cos.f64 y) (sin.f64 y)))
(*.f64 (cbrt.f64 (fma.f64 z (cos.f64 y) (sin.f64 y))) (pow.f64 (cbrt.f64 (fma.f64 z (cos.f64 y) (sin.f64 y))) 2))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 z (cos.f64 y) (sin.f64 y))) 2) (cbrt.f64 (fma.f64 z (cos.f64 y) (sin.f64 y))))
(*.f64 (sqrt.f64 (fma.f64 z (cos.f64 y) (sin.f64 y))) (sqrt.f64 (fma.f64 z (cos.f64 y) (sin.f64 y))))
(*.f64 (+.f64 (pow.f64 (sin.f64 y) 3) (pow.f64 (*.f64 z (cos.f64 y)) 3)) (/.f64 1 (+.f64 (pow.f64 (sin.f64 y) 2) (*.f64 (*.f64 z (cos.f64 y)) (-.f64 (*.f64 z (cos.f64 y)) (sin.f64 y))))))
(*.f64 (-.f64 (pow.f64 (sin.f64 y) 2) (pow.f64 (*.f64 z (cos.f64 y)) 2)) (/.f64 1 (-.f64 (sin.f64 y) (*.f64 z (cos.f64 y)))))
(/.f64 1 (/.f64 (+.f64 (pow.f64 (sin.f64 y) 2) (*.f64 (*.f64 z (cos.f64 y)) (-.f64 (*.f64 z (cos.f64 y)) (sin.f64 y)))) (+.f64 (pow.f64 (sin.f64 y) 3) (pow.f64 (*.f64 z (cos.f64 y)) 3))))
(/.f64 1 (/.f64 (-.f64 (sin.f64 y) (*.f64 z (cos.f64 y))) (-.f64 (pow.f64 (sin.f64 y) 2) (pow.f64 (*.f64 z (cos.f64 y)) 2))))
(/.f64 (+.f64 (pow.f64 (sin.f64 y) 3) (pow.f64 (*.f64 z (cos.f64 y)) 3)) (+.f64 (pow.f64 (sin.f64 y) 2) (*.f64 (*.f64 z (cos.f64 y)) (-.f64 (*.f64 z (cos.f64 y)) (sin.f64 y)))))
(/.f64 (+.f64 (pow.f64 (sin.f64 y) 3) (pow.f64 (*.f64 z (cos.f64 y)) 3)) (+.f64 (pow.f64 (*.f64 z (cos.f64 y)) 2) (-.f64 (pow.f64 (sin.f64 y) 2) (*.f64 (*.f64 (sin.f64 y) z) (cos.f64 y)))))
(/.f64 (-.f64 (pow.f64 (sin.f64 y) 2) (pow.f64 (*.f64 z (cos.f64 y)) 2)) (-.f64 (sin.f64 y) (*.f64 z (cos.f64 y))))
(/.f64 (neg.f64 (+.f64 (pow.f64 (sin.f64 y) 3) (pow.f64 (*.f64 z (cos.f64 y)) 3))) (neg.f64 (+.f64 (pow.f64 (sin.f64 y) 2) (*.f64 (*.f64 z (cos.f64 y)) (-.f64 (*.f64 z (cos.f64 y)) (sin.f64 y))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 y) 2) (pow.f64 (*.f64 z (cos.f64 y)) 2))) (neg.f64 (-.f64 (sin.f64 y) (*.f64 z (cos.f64 y)))))
(/.f64 (-.f64 (pow.f64 (*.f64 z (cos.f64 y)) 2) (pow.f64 (sin.f64 y) 2)) (-.f64 (*.f64 z (cos.f64 y)) (sin.f64 y)))
(pow.f64 (fma.f64 z (cos.f64 y) (sin.f64 y)) 1)
(pow.f64 (pow.f64 (fma.f64 z (cos.f64 y) (sin.f64 y)) 3) 1/3)
(pow.f64 (cbrt.f64 (fma.f64 z (cos.f64 y) (sin.f64 y))) 3)
(pow.f64 (sqrt.f64 (fma.f64 z (cos.f64 y) (sin.f64 y))) 2)
(sqrt.f64 (pow.f64 (fma.f64 z (cos.f64 y) (sin.f64 y)) 2))
(log.f64 (exp.f64 (fma.f64 z (cos.f64 y) (sin.f64 y))))
(cbrt.f64 (pow.f64 (fma.f64 z (cos.f64 y) (sin.f64 y)) 3))
(expm1.f64 (log1p.f64 (fma.f64 z (cos.f64 y) (sin.f64 y))))
(log1p.f64 (expm1.f64 (fma.f64 z (cos.f64 y) (sin.f64 y))))
(exp.f64 (log.f64 (fma.f64 z (cos.f64 y) (sin.f64 y))))
(fma.f64 z (cos.f64 y) (sin.f64 y))
(fma.f64 (cos.f64 y) z (sin.f64 y))
(fma.f64 1 (sin.f64 y) (*.f64 z (cos.f64 y)))
(fma.f64 1 (*.f64 z (cos.f64 y)) (sin.f64 y))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 2) (cbrt.f64 (*.f64 z (cos.f64 y))) (sin.f64 y))
(fma.f64 (pow.f64 (cbrt.f64 (sin.f64 y)) 2) (cbrt.f64 (sin.f64 y)) (*.f64 z (cos.f64 y)))
(fma.f64 (sqrt.f64 (*.f64 z (cos.f64 y))) (sqrt.f64 (*.f64 z (cos.f64 y))) (sin.f64 y))
(fma.f64 (sqrt.f64 (sin.f64 y)) (sqrt.f64 (sin.f64 y)) (*.f64 z (cos.f64 y)))
Outputs
z
(+.f64 y z)
(+.f64 z y)
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y 2) z)) (+.f64 y z))
(fma.f64 -1/2 (*.f64 z (*.f64 y y)) (+.f64 z y))
(+.f64 z (fma.f64 (*.f64 y y) (*.f64 z -1/2) y))
(+.f64 (*.f64 -1/6 (pow.f64 y 3)) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y 2) z)) (+.f64 y z)))
(fma.f64 -1/6 (pow.f64 y 3) (fma.f64 -1/2 (*.f64 z (*.f64 y y)) (+.f64 z y)))
(+.f64 z (fma.f64 -1/6 (pow.f64 y 3) (fma.f64 (*.f64 y y) (*.f64 z -1/2) y)))
(+.f64 (*.f64 (cos.f64 y) z) (sin.f64 y))
(fma.f64 z (cos.f64 y) (sin.f64 y))
(+.f64 (*.f64 (cos.f64 y) z) (sin.f64 y))
(fma.f64 z (cos.f64 y) (sin.f64 y))
(+.f64 (*.f64 (cos.f64 y) z) (sin.f64 y))
(fma.f64 z (cos.f64 y) (sin.f64 y))
(+.f64 (*.f64 (cos.f64 y) z) (sin.f64 y))
(fma.f64 z (cos.f64 y) (sin.f64 y))
(+.f64 (*.f64 (cos.f64 y) z) (sin.f64 y))
(fma.f64 z (cos.f64 y) (sin.f64 y))
(+.f64 (*.f64 (cos.f64 y) z) (sin.f64 y))
(fma.f64 z (cos.f64 y) (sin.f64 y))
(+.f64 (*.f64 (cos.f64 y) z) (sin.f64 y))
(fma.f64 z (cos.f64 y) (sin.f64 y))
(+.f64 (*.f64 (cos.f64 y) z) (sin.f64 y))
(fma.f64 z (cos.f64 y) (sin.f64 y))
(sin.f64 y)
(+.f64 (*.f64 (cos.f64 y) z) (sin.f64 y))
(fma.f64 z (cos.f64 y) (sin.f64 y))
(+.f64 (*.f64 (cos.f64 y) z) (sin.f64 y))
(fma.f64 z (cos.f64 y) (sin.f64 y))
(+.f64 (*.f64 (cos.f64 y) z) (sin.f64 y))
(fma.f64 z (cos.f64 y) (sin.f64 y))
(*.f64 (cos.f64 y) z)
(*.f64 z (cos.f64 y))
(+.f64 (*.f64 (cos.f64 y) z) (sin.f64 y))
(fma.f64 z (cos.f64 y) (sin.f64 y))
(+.f64 (*.f64 (cos.f64 y) z) (sin.f64 y))
(fma.f64 z (cos.f64 y) (sin.f64 y))
(+.f64 (*.f64 (cos.f64 y) z) (sin.f64 y))
(fma.f64 z (cos.f64 y) (sin.f64 y))
(*.f64 (cos.f64 y) z)
(*.f64 z (cos.f64 y))
(+.f64 (*.f64 (cos.f64 y) z) (sin.f64 y))
(fma.f64 z (cos.f64 y) (sin.f64 y))
(+.f64 (*.f64 (cos.f64 y) z) (sin.f64 y))
(fma.f64 z (cos.f64 y) (sin.f64 y))
(+.f64 (*.f64 (cos.f64 y) z) (sin.f64 y))
(fma.f64 z (cos.f64 y) (sin.f64 y))
(-.f64 (+.f64 1 (fma.f64 z (cos.f64 y) (sin.f64 y))) 1)
(fma.f64 z (cos.f64 y) (sin.f64 y))
(-.f64 (/.f64 (pow.f64 (sin.f64 y) 2) (-.f64 (sin.f64 y) (*.f64 z (cos.f64 y)))) (/.f64 (pow.f64 (*.f64 z (cos.f64 y)) 2) (-.f64 (sin.f64 y) (*.f64 z (cos.f64 y)))))
(fma.f64 z (cos.f64 y) (sin.f64 y))
(*.f64 (fma.f64 z (cos.f64 y) (sin.f64 y)) 1)
(fma.f64 z (cos.f64 y) (sin.f64 y))
(*.f64 1 (fma.f64 z (cos.f64 y) (sin.f64 y)))
(fma.f64 z (cos.f64 y) (sin.f64 y))
(*.f64 (cbrt.f64 (fma.f64 z (cos.f64 y) (sin.f64 y))) (pow.f64 (cbrt.f64 (fma.f64 z (cos.f64 y) (sin.f64 y))) 2))
(fma.f64 z (cos.f64 y) (sin.f64 y))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 z (cos.f64 y) (sin.f64 y))) 2) (cbrt.f64 (fma.f64 z (cos.f64 y) (sin.f64 y))))
(fma.f64 z (cos.f64 y) (sin.f64 y))
(*.f64 (sqrt.f64 (fma.f64 z (cos.f64 y) (sin.f64 y))) (sqrt.f64 (fma.f64 z (cos.f64 y) (sin.f64 y))))
(fma.f64 z (cos.f64 y) (sin.f64 y))
(*.f64 (+.f64 (pow.f64 (sin.f64 y) 3) (pow.f64 (*.f64 z (cos.f64 y)) 3)) (/.f64 1 (+.f64 (pow.f64 (sin.f64 y) 2) (*.f64 (*.f64 z (cos.f64 y)) (-.f64 (*.f64 z (cos.f64 y)) (sin.f64 y))))))
(/.f64 (*.f64 (+.f64 (pow.f64 (sin.f64 y) 3) (pow.f64 (*.f64 z (cos.f64 y)) 3)) 1) (+.f64 (pow.f64 (sin.f64 y) 2) (*.f64 (*.f64 z (cos.f64 y)) (-.f64 (*.f64 z (cos.f64 y)) (sin.f64 y)))))
(/.f64 (+.f64 (pow.f64 (sin.f64 y) 3) (pow.f64 (*.f64 z (cos.f64 y)) 3)) (fma.f64 (*.f64 z (cos.f64 y)) (fma.f64 z (cos.f64 y) (neg.f64 (sin.f64 y))) (pow.f64 (sin.f64 y) 2)))
(/.f64 (+.f64 (pow.f64 (sin.f64 y) 3) (pow.f64 (*.f64 z (cos.f64 y)) 3)) (fma.f64 (sin.f64 y) (-.f64 (sin.f64 y) (*.f64 z (cos.f64 y))) (pow.f64 (*.f64 z (cos.f64 y)) 2)))
(/.f64 (+.f64 (pow.f64 (sin.f64 y) 3) (pow.f64 (*.f64 z (cos.f64 y)) 3)) (fma.f64 (*.f64 z (cos.f64 y)) (-.f64 (*.f64 z (cos.f64 y)) (sin.f64 y)) (pow.f64 (sin.f64 y) 2)))
(*.f64 (-.f64 (pow.f64 (sin.f64 y) 2) (pow.f64 (*.f64 z (cos.f64 y)) 2)) (/.f64 1 (-.f64 (sin.f64 y) (*.f64 z (cos.f64 y)))))
(fma.f64 z (cos.f64 y) (sin.f64 y))
(/.f64 1 (/.f64 (+.f64 (pow.f64 (sin.f64 y) 2) (*.f64 (*.f64 z (cos.f64 y)) (-.f64 (*.f64 z (cos.f64 y)) (sin.f64 y)))) (+.f64 (pow.f64 (sin.f64 y) 3) (pow.f64 (*.f64 z (cos.f64 y)) 3))))
(/.f64 (*.f64 (+.f64 (pow.f64 (sin.f64 y) 3) (pow.f64 (*.f64 z (cos.f64 y)) 3)) 1) (+.f64 (pow.f64 (sin.f64 y) 2) (*.f64 (*.f64 z (cos.f64 y)) (-.f64 (*.f64 z (cos.f64 y)) (sin.f64 y)))))
(/.f64 (+.f64 (pow.f64 (sin.f64 y) 3) (pow.f64 (*.f64 z (cos.f64 y)) 3)) (fma.f64 (*.f64 z (cos.f64 y)) (fma.f64 z (cos.f64 y) (neg.f64 (sin.f64 y))) (pow.f64 (sin.f64 y) 2)))
(/.f64 (+.f64 (pow.f64 (sin.f64 y) 3) (pow.f64 (*.f64 z (cos.f64 y)) 3)) (fma.f64 (sin.f64 y) (-.f64 (sin.f64 y) (*.f64 z (cos.f64 y))) (pow.f64 (*.f64 z (cos.f64 y)) 2)))
(/.f64 (+.f64 (pow.f64 (sin.f64 y) 3) (pow.f64 (*.f64 z (cos.f64 y)) 3)) (fma.f64 (*.f64 z (cos.f64 y)) (-.f64 (*.f64 z (cos.f64 y)) (sin.f64 y)) (pow.f64 (sin.f64 y) 2)))
(/.f64 1 (/.f64 (-.f64 (sin.f64 y) (*.f64 z (cos.f64 y))) (-.f64 (pow.f64 (sin.f64 y) 2) (pow.f64 (*.f64 z (cos.f64 y)) 2))))
(fma.f64 z (cos.f64 y) (sin.f64 y))
(/.f64 (+.f64 (pow.f64 (sin.f64 y) 3) (pow.f64 (*.f64 z (cos.f64 y)) 3)) (+.f64 (pow.f64 (sin.f64 y) 2) (*.f64 (*.f64 z (cos.f64 y)) (-.f64 (*.f64 z (cos.f64 y)) (sin.f64 y)))))
(/.f64 (*.f64 (+.f64 (pow.f64 (sin.f64 y) 3) (pow.f64 (*.f64 z (cos.f64 y)) 3)) 1) (+.f64 (pow.f64 (sin.f64 y) 2) (*.f64 (*.f64 z (cos.f64 y)) (-.f64 (*.f64 z (cos.f64 y)) (sin.f64 y)))))
(/.f64 (+.f64 (pow.f64 (sin.f64 y) 3) (pow.f64 (*.f64 z (cos.f64 y)) 3)) (fma.f64 (*.f64 z (cos.f64 y)) (fma.f64 z (cos.f64 y) (neg.f64 (sin.f64 y))) (pow.f64 (sin.f64 y) 2)))
(/.f64 (+.f64 (pow.f64 (sin.f64 y) 3) (pow.f64 (*.f64 z (cos.f64 y)) 3)) (fma.f64 (sin.f64 y) (-.f64 (sin.f64 y) (*.f64 z (cos.f64 y))) (pow.f64 (*.f64 z (cos.f64 y)) 2)))
(/.f64 (+.f64 (pow.f64 (sin.f64 y) 3) (pow.f64 (*.f64 z (cos.f64 y)) 3)) (fma.f64 (*.f64 z (cos.f64 y)) (-.f64 (*.f64 z (cos.f64 y)) (sin.f64 y)) (pow.f64 (sin.f64 y) 2)))
(/.f64 (+.f64 (pow.f64 (sin.f64 y) 3) (pow.f64 (*.f64 z (cos.f64 y)) 3)) (+.f64 (pow.f64 (*.f64 z (cos.f64 y)) 2) (-.f64 (pow.f64 (sin.f64 y) 2) (*.f64 (*.f64 (sin.f64 y) z) (cos.f64 y)))))
(/.f64 (*.f64 (+.f64 (pow.f64 (sin.f64 y) 3) (pow.f64 (*.f64 z (cos.f64 y)) 3)) 1) (+.f64 (pow.f64 (sin.f64 y) 2) (*.f64 (*.f64 z (cos.f64 y)) (-.f64 (*.f64 z (cos.f64 y)) (sin.f64 y)))))
(/.f64 (+.f64 (pow.f64 (sin.f64 y) 3) (pow.f64 (*.f64 z (cos.f64 y)) 3)) (fma.f64 (*.f64 z (cos.f64 y)) (fma.f64 z (cos.f64 y) (neg.f64 (sin.f64 y))) (pow.f64 (sin.f64 y) 2)))
(/.f64 (+.f64 (pow.f64 (sin.f64 y) 3) (pow.f64 (*.f64 z (cos.f64 y)) 3)) (fma.f64 (sin.f64 y) (-.f64 (sin.f64 y) (*.f64 z (cos.f64 y))) (pow.f64 (*.f64 z (cos.f64 y)) 2)))
(/.f64 (+.f64 (pow.f64 (sin.f64 y) 3) (pow.f64 (*.f64 z (cos.f64 y)) 3)) (fma.f64 (*.f64 z (cos.f64 y)) (-.f64 (*.f64 z (cos.f64 y)) (sin.f64 y)) (pow.f64 (sin.f64 y) 2)))
(/.f64 (-.f64 (pow.f64 (sin.f64 y) 2) (pow.f64 (*.f64 z (cos.f64 y)) 2)) (-.f64 (sin.f64 y) (*.f64 z (cos.f64 y))))
(fma.f64 z (cos.f64 y) (sin.f64 y))
(/.f64 (neg.f64 (+.f64 (pow.f64 (sin.f64 y) 3) (pow.f64 (*.f64 z (cos.f64 y)) 3))) (neg.f64 (+.f64 (pow.f64 (sin.f64 y) 2) (*.f64 (*.f64 z (cos.f64 y)) (-.f64 (*.f64 z (cos.f64 y)) (sin.f64 y))))))
(/.f64 (*.f64 (+.f64 (pow.f64 (sin.f64 y) 3) (pow.f64 (*.f64 z (cos.f64 y)) 3)) 1) (+.f64 (pow.f64 (sin.f64 y) 2) (*.f64 (*.f64 z (cos.f64 y)) (-.f64 (*.f64 z (cos.f64 y)) (sin.f64 y)))))
(/.f64 (+.f64 (pow.f64 (sin.f64 y) 3) (pow.f64 (*.f64 z (cos.f64 y)) 3)) (fma.f64 (*.f64 z (cos.f64 y)) (fma.f64 z (cos.f64 y) (neg.f64 (sin.f64 y))) (pow.f64 (sin.f64 y) 2)))
(/.f64 (+.f64 (pow.f64 (sin.f64 y) 3) (pow.f64 (*.f64 z (cos.f64 y)) 3)) (fma.f64 (sin.f64 y) (-.f64 (sin.f64 y) (*.f64 z (cos.f64 y))) (pow.f64 (*.f64 z (cos.f64 y)) 2)))
(/.f64 (+.f64 (pow.f64 (sin.f64 y) 3) (pow.f64 (*.f64 z (cos.f64 y)) 3)) (fma.f64 (*.f64 z (cos.f64 y)) (-.f64 (*.f64 z (cos.f64 y)) (sin.f64 y)) (pow.f64 (sin.f64 y) 2)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 y) 2) (pow.f64 (*.f64 z (cos.f64 y)) 2))) (neg.f64 (-.f64 (sin.f64 y) (*.f64 z (cos.f64 y)))))
(fma.f64 z (cos.f64 y) (sin.f64 y))
(/.f64 (-.f64 (pow.f64 (*.f64 z (cos.f64 y)) 2) (pow.f64 (sin.f64 y) 2)) (-.f64 (*.f64 z (cos.f64 y)) (sin.f64 y)))
(fma.f64 z (cos.f64 y) (sin.f64 y))
(pow.f64 (fma.f64 z (cos.f64 y) (sin.f64 y)) 1)
(fma.f64 z (cos.f64 y) (sin.f64 y))
(pow.f64 (pow.f64 (fma.f64 z (cos.f64 y) (sin.f64 y)) 3) 1/3)
(fma.f64 z (cos.f64 y) (sin.f64 y))
(pow.f64 (cbrt.f64 (fma.f64 z (cos.f64 y) (sin.f64 y))) 3)
(fma.f64 z (cos.f64 y) (sin.f64 y))
(pow.f64 (sqrt.f64 (fma.f64 z (cos.f64 y) (sin.f64 y))) 2)
(fma.f64 z (cos.f64 y) (sin.f64 y))
(sqrt.f64 (pow.f64 (fma.f64 z (cos.f64 y) (sin.f64 y)) 2))
(fma.f64 z (cos.f64 y) (sin.f64 y))
(log.f64 (exp.f64 (fma.f64 z (cos.f64 y) (sin.f64 y))))
(fma.f64 z (cos.f64 y) (sin.f64 y))
(cbrt.f64 (pow.f64 (fma.f64 z (cos.f64 y) (sin.f64 y)) 3))
(fma.f64 z (cos.f64 y) (sin.f64 y))
(expm1.f64 (log1p.f64 (fma.f64 z (cos.f64 y) (sin.f64 y))))
(fma.f64 z (cos.f64 y) (sin.f64 y))
(log1p.f64 (expm1.f64 (fma.f64 z (cos.f64 y) (sin.f64 y))))
(fma.f64 z (cos.f64 y) (sin.f64 y))
(exp.f64 (log.f64 (fma.f64 z (cos.f64 y) (sin.f64 y))))
(fma.f64 z (cos.f64 y) (sin.f64 y))
(fma.f64 z (cos.f64 y) (sin.f64 y))
(fma.f64 (cos.f64 y) z (sin.f64 y))
(fma.f64 z (cos.f64 y) (sin.f64 y))
(fma.f64 1 (sin.f64 y) (*.f64 z (cos.f64 y)))
(fma.f64 z (cos.f64 y) (sin.f64 y))
(fma.f64 1 (*.f64 z (cos.f64 y)) (sin.f64 y))
(fma.f64 z (cos.f64 y) (sin.f64 y))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 2) (cbrt.f64 (*.f64 z (cos.f64 y))) (sin.f64 y))
(fma.f64 z (cos.f64 y) (sin.f64 y))
(fma.f64 (pow.f64 (cbrt.f64 (sin.f64 y)) 2) (cbrt.f64 (sin.f64 y)) (*.f64 z (cos.f64 y)))
(fma.f64 z (cos.f64 y) (sin.f64 y))
(fma.f64 (sqrt.f64 (*.f64 z (cos.f64 y))) (sqrt.f64 (*.f64 z (cos.f64 y))) (sin.f64 y))
(fma.f64 z (cos.f64 y) (sin.f64 y))
(fma.f64 (sqrt.f64 (sin.f64 y)) (sqrt.f64 (sin.f64 y)) (*.f64 z (cos.f64 y)))
(fma.f64 z (cos.f64 y) (sin.f64 y))

localize18.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(+.f64 x (sin.f64 y))
0.1b
(*.f64 z (cos.f64 y))
0.1b
(pow.f64 (*.f64 z (cos.f64 y)) 3)
41.1b
(cbrt.f64 (pow.f64 (*.f64 z (cos.f64 y)) 3))
Compiler

Compiled 44 to 17 computations (61.4% saved)

series45.0ms (0.2%)

Counts
2 → 48
Calls

12 calls:

TimeVariablePointExpression
13.0ms
y
@0
(cbrt.f64 (pow.f64 (*.f64 z (cos.f64 y)) 3))
6.0ms
z
@-inf
(pow.f64 (*.f64 z (cos.f64 y)) 3)
4.0ms
y
@inf
(cbrt.f64 (pow.f64 (*.f64 z (cos.f64 y)) 3))
4.0ms
y
@-inf
(cbrt.f64 (pow.f64 (*.f64 z (cos.f64 y)) 3))
4.0ms
z
@inf
(cbrt.f64 (pow.f64 (*.f64 z (cos.f64 y)) 3))
Compiler

Compiled 1967 to 1519 computations (22.8% saved)

rewrite49.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
645×pow1_binary64
603×add-log-exp_binary64
603×log1p-expm1-u_binary64
603×expm1-log1p-u_binary64
586×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify52.0ms (0.3%)

Algorithm
egg-herbie
Rules
467×associate-/r*_binary64
456×distribute-rgt-in_binary64
449×associate-/l*_binary64
445×distribute-lft-in_binary64
225×associate-*r*_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02161998
15911281
224781162
Stop Event
node limit
Counts
102 → 98
Calls
Call 1
Inputs
(*.f64 (pow.f64 (*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y)) 1/3) z)
(*.f64 (pow.f64 (*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y)) 1/3) z)
(*.f64 (pow.f64 (*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y)) 1/3) z)
(*.f64 (pow.f64 (*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y)) 1/3) z)
(*.f64 (pow.f64 (*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y)) 1/3) z)
(*.f64 (pow.f64 (*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y)) 1/3) z)
(*.f64 (pow.f64 (*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y)) 1/3) z)
(*.f64 (pow.f64 (*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y)) 1/3) z)
(*.f64 -1 (*.f64 (cbrt.f64 -1) (*.f64 (pow.f64 (*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y)) 1/3) z)))
(*.f64 -1 (*.f64 (cbrt.f64 -1) (*.f64 (pow.f64 (*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y)) 1/3) z)))
(*.f64 -1 (*.f64 (cbrt.f64 -1) (*.f64 (pow.f64 (*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y)) 1/3) z)))
(*.f64 -1 (*.f64 (cbrt.f64 -1) (*.f64 (pow.f64 (*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y)) 1/3) z)))
(pow.f64 (*.f64 (pow.f64 z 2) z) 1/3)
(+.f64 (*.f64 1/3 (/.f64 (*.f64 (pow.f64 y 2) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 z 2) z)) (*.f64 -1 (*.f64 (pow.f64 z 2) z)))) (pow.f64 (pow.f64 (*.f64 (pow.f64 z 2) z) 1/3) 2))) (pow.f64 (*.f64 (pow.f64 z 2) z) 1/3))
(+.f64 (*.f64 1/3 (/.f64 (*.f64 (pow.f64 y 4) (-.f64 (+.f64 (*.f64 (+.f64 (*.f64 1/4 (pow.f64 z 2)) (*.f64 1/12 (pow.f64 z 2))) z) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 z 2) z)) (*.f64 1/2 (*.f64 (pow.f64 z 2) z)))) (*.f64 1/3 (/.f64 (*.f64 (pow.f64 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 z 2) z)) (*.f64 -1 (*.f64 (pow.f64 z 2) z))) 2) (pow.f64 (*.f64 (pow.f64 z 2) z) 1/3)) (pow.f64 (pow.f64 (pow.f64 (*.f64 (pow.f64 z 2) z) 1/3) 2) 2))))) (pow.f64 (pow.f64 (*.f64 (pow.f64 z 2) z) 1/3) 2))) (+.f64 (*.f64 1/3 (/.f64 (*.f64 (pow.f64 y 2) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 z 2) z)) (*.f64 -1 (*.f64 (pow.f64 z 2) z)))) (pow.f64 (pow.f64 (*.f64 (pow.f64 z 2) z) 1/3) 2))) (pow.f64 (*.f64 (pow.f64 z 2) z) 1/3)))
(+.f64 (*.f64 1/3 (/.f64 (*.f64 (pow.f64 y 4) (-.f64 (+.f64 (*.f64 (+.f64 (*.f64 1/4 (pow.f64 z 2)) (*.f64 1/12 (pow.f64 z 2))) z) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 z 2) z)) (*.f64 1/2 (*.f64 (pow.f64 z 2) z)))) (*.f64 1/3 (/.f64 (*.f64 (pow.f64 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 z 2) z)) (*.f64 -1 (*.f64 (pow.f64 z 2) z))) 2) (pow.f64 (*.f64 (pow.f64 z 2) z) 1/3)) (pow.f64 (pow.f64 (pow.f64 (*.f64 (pow.f64 z 2) z) 1/3) 2) 2))))) (pow.f64 (pow.f64 (*.f64 (pow.f64 z 2) z) 1/3) 2))) (+.f64 (*.f64 1/3 (/.f64 (*.f64 (-.f64 (+.f64 (*.f64 -1/720 (*.f64 (pow.f64 z 2) z)) (+.f64 (*.f64 -1/24 (*.f64 (pow.f64 z 2) z)) (+.f64 (*.f64 (+.f64 (*.f64 -1/360 (pow.f64 z 2)) (*.f64 -1/24 (pow.f64 z 2))) z) (*.f64 -1/2 (*.f64 (+.f64 (*.f64 1/4 (pow.f64 z 2)) (*.f64 1/12 (pow.f64 z 2))) z))))) (+.f64 (*.f64 1/3 (/.f64 (*.f64 (-.f64 (+.f64 (*.f64 (+.f64 (*.f64 1/4 (pow.f64 z 2)) (*.f64 1/12 (pow.f64 z 2))) z) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 z 2) z)) (*.f64 1/2 (*.f64 (pow.f64 z 2) z)))) (*.f64 1/3 (/.f64 (*.f64 (pow.f64 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 z 2) z)) (*.f64 -1 (*.f64 (pow.f64 z 2) z))) 2) (pow.f64 (*.f64 (pow.f64 z 2) z) 1/3)) (pow.f64 (pow.f64 (pow.f64 (*.f64 (pow.f64 z 2) z) 1/3) 2) 2)))) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 z 2) z)) (*.f64 -1 (*.f64 (pow.f64 z 2) z))) (pow.f64 (*.f64 (pow.f64 z 2) z) 1/3))) (pow.f64 (pow.f64 (pow.f64 (*.f64 (pow.f64 z 2) z) 1/3) 2) 2))) (+.f64 (*.f64 1/3 (/.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 z 2) z)) (*.f64 -1 (*.f64 (pow.f64 z 2) z))) (*.f64 (-.f64 (+.f64 (*.f64 (+.f64 (*.f64 1/4 (pow.f64 z 2)) (*.f64 1/12 (pow.f64 z 2))) z) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 z 2) z)) (*.f64 1/2 (*.f64 (pow.f64 z 2) z)))) (*.f64 1/3 (/.f64 (*.f64 (pow.f64 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 z 2) z)) (*.f64 -1 (*.f64 (pow.f64 z 2) z))) 2) (pow.f64 (*.f64 (pow.f64 z 2) z) 1/3)) (pow.f64 (pow.f64 (pow.f64 (*.f64 (pow.f64 z 2) z) 1/3) 2) 2)))) (pow.f64 (*.f64 (pow.f64 z 2) z) 1/3))) (pow.f64 (pow.f64 (pow.f64 (*.f64 (pow.f64 z 2) z) 1/3) 2) 2))) (*.f64 1/27 (/.f64 (pow.f64 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 z 2) z)) (*.f64 -1 (*.f64 (pow.f64 z 2) z))) 3) (pow.f64 (pow.f64 (pow.f64 (*.f64 (pow.f64 z 2) z) 1/3) 2) 3)))))) (pow.f64 y 6)) (pow.f64 (pow.f64 (*.f64 (pow.f64 z 2) z) 1/3) 2))) (+.f64 (*.f64 1/3 (/.f64 (*.f64 (pow.f64 y 2) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 z 2) z)) (*.f64 -1 (*.f64 (pow.f64 z 2) z)))) (pow.f64 (pow.f64 (*.f64 (pow.f64 z 2) z) 1/3) 2))) (pow.f64 (*.f64 (pow.f64 z 2) z) 1/3))))
(pow.f64 (*.f64 (pow.f64 z 2) (*.f64 (pow.f64 (cos.f64 y) 2) (*.f64 (cos.f64 y) z))) 1/3)
(pow.f64 (*.f64 (pow.f64 z 2) (*.f64 (pow.f64 (cos.f64 y) 2) (*.f64 (cos.f64 y) z))) 1/3)
(pow.f64 (*.f64 (pow.f64 z 2) (*.f64 (pow.f64 (cos.f64 y) 2) (*.f64 (cos.f64 y) z))) 1/3)
(pow.f64 (*.f64 (pow.f64 z 2) (*.f64 (pow.f64 (cos.f64 y) 2) (*.f64 (cos.f64 y) z))) 1/3)
(pow.f64 (*.f64 (pow.f64 z 2) (*.f64 (pow.f64 (cos.f64 y) 2) (*.f64 (cos.f64 y) z))) 1/3)
(pow.f64 (*.f64 (pow.f64 z 2) (*.f64 (pow.f64 (cos.f64 y) 2) (*.f64 (cos.f64 y) z))) 1/3)
(pow.f64 (*.f64 (pow.f64 z 2) (*.f64 (pow.f64 (cos.f64 y) 2) (*.f64 (cos.f64 y) z))) 1/3)
(pow.f64 (*.f64 (pow.f64 z 2) (*.f64 (pow.f64 (cos.f64 y) 2) (*.f64 (cos.f64 y) z))) 1/3)
(*.f64 (pow.f64 (cos.f64 y) 2) (*.f64 (pow.f64 z 3) (cos.f64 y)))
(*.f64 (pow.f64 (cos.f64 y) 2) (*.f64 (pow.f64 z 3) (cos.f64 y)))
(*.f64 (pow.f64 (cos.f64 y) 2) (*.f64 (pow.f64 z 3) (cos.f64 y)))
(*.f64 (pow.f64 (cos.f64 y) 2) (*.f64 (pow.f64 z 3) (cos.f64 y)))
(*.f64 (pow.f64 (/.f64 1 z) -3) (*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y)))
(*.f64 (pow.f64 (/.f64 1 z) -3) (*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y)))
(*.f64 (pow.f64 (/.f64 1 z) -3) (*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y)))
(*.f64 (pow.f64 (/.f64 1 z) -3) (*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y)))
(*.f64 -1 (*.f64 (pow.f64 (cos.f64 y) 2) (*.f64 (cos.f64 y) (pow.f64 (/.f64 -1 z) -3))))
(*.f64 -1 (*.f64 (pow.f64 (cos.f64 y) 2) (*.f64 (cos.f64 y) (pow.f64 (/.f64 -1 z) -3))))
(*.f64 -1 (*.f64 (pow.f64 (cos.f64 y) 2) (*.f64 (cos.f64 y) (pow.f64 (/.f64 -1 z) -3))))
(*.f64 -1 (*.f64 (pow.f64 (cos.f64 y) 2) (*.f64 (cos.f64 y) (pow.f64 (/.f64 -1 z) -3))))
(*.f64 (pow.f64 z 2) z)
(+.f64 (*.f64 (pow.f64 y 2) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 z 2) z)) (*.f64 -1 (*.f64 (pow.f64 z 2) z)))) (*.f64 (pow.f64 z 2) z))
(+.f64 (*.f64 (+.f64 (*.f64 (+.f64 (*.f64 1/4 (pow.f64 z 2)) (*.f64 1/12 (pow.f64 z 2))) z) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 z 2) z)) (*.f64 1/2 (*.f64 (pow.f64 z 2) z)))) (pow.f64 y 4)) (+.f64 (*.f64 (pow.f64 y 2) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 z 2) z)) (*.f64 -1 (*.f64 (pow.f64 z 2) z)))) (*.f64 (pow.f64 z 2) z)))
(+.f64 (*.f64 (+.f64 (*.f64 (+.f64 (*.f64 1/4 (pow.f64 z 2)) (*.f64 1/12 (pow.f64 z 2))) z) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 z 2) z)) (*.f64 1/2 (*.f64 (pow.f64 z 2) z)))) (pow.f64 y 4)) (+.f64 (*.f64 (pow.f64 y 2) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 z 2) z)) (*.f64 -1 (*.f64 (pow.f64 z 2) z)))) (+.f64 (*.f64 (pow.f64 z 2) z) (*.f64 (+.f64 (*.f64 -1/720 (*.f64 (pow.f64 z 2) z)) (+.f64 (*.f64 -1/24 (*.f64 (pow.f64 z 2) z)) (+.f64 (*.f64 (+.f64 (*.f64 -1/360 (pow.f64 z 2)) (*.f64 -1/24 (pow.f64 z 2))) z) (*.f64 -1/2 (*.f64 (+.f64 (*.f64 1/4 (pow.f64 z 2)) (*.f64 1/12 (pow.f64 z 2))) z))))) (pow.f64 y 6)))))
(*.f64 (pow.f64 z 2) (*.f64 (pow.f64 (cos.f64 y) 2) (*.f64 z (cos.f64 y))))
(*.f64 (pow.f64 z 2) (*.f64 (pow.f64 (cos.f64 y) 2) (*.f64 z (cos.f64 y))))
(*.f64 (pow.f64 z 2) (*.f64 (pow.f64 (cos.f64 y) 2) (*.f64 z (cos.f64 y))))
(*.f64 (pow.f64 z 2) (*.f64 (pow.f64 (cos.f64 y) 2) (*.f64 z (cos.f64 y))))
(*.f64 (pow.f64 z 2) (*.f64 (pow.f64 (cos.f64 y) 2) (*.f64 z (cos.f64 y))))
(*.f64 (pow.f64 z 2) (*.f64 (pow.f64 (cos.f64 y) 2) (*.f64 z (cos.f64 y))))
(*.f64 (pow.f64 z 2) (*.f64 (pow.f64 (cos.f64 y) 2) (*.f64 z (cos.f64 y))))
(*.f64 (pow.f64 z 2) (*.f64 (pow.f64 (cos.f64 y) 2) (*.f64 z (cos.f64 y))))
(-.f64 (+.f64 1 (*.f64 z (cos.f64 y))) 1)
(*.f64 z (cos.f64 y))
(*.f64 (cos.f64 y) z)
(*.f64 (*.f64 z (cos.f64 y)) 1)
(*.f64 1 (*.f64 z (cos.f64 y)))
(*.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) (pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 2))
(*.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) (pow.f64 (pow.f64 (*.f64 z (cos.f64 y)) 2) 1/3))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 2) (cbrt.f64 (*.f64 z (cos.f64 y))))
(*.f64 (pow.f64 (cbrt.f64 z) 2) (*.f64 (cbrt.f64 z) (cos.f64 y)))
(*.f64 (pow.f64 (cbrt.f64 (cos.f64 y)) 2) (*.f64 (cbrt.f64 (cos.f64 y)) z))
(*.f64 (sqrt.f64 (*.f64 z (cos.f64 y))) (sqrt.f64 (*.f64 z (cos.f64 y))))
(*.f64 (sqrt.f64 z) (*.f64 (sqrt.f64 z) (cos.f64 y)))
(*.f64 (sqrt.f64 (cos.f64 y)) (*.f64 (sqrt.f64 (cos.f64 y)) z))
(*.f64 (pow.f64 (pow.f64 (*.f64 z (cos.f64 y)) 2) 1/3) (cbrt.f64 (*.f64 z (cos.f64 y))))
(*.f64 (pow.f64 1 1/3) (*.f64 z (cos.f64 y)))
(*.f64 (pow.f64 (pow.f64 (*.f64 z (cos.f64 y)) 3/2) 1/3) (pow.f64 (pow.f64 (*.f64 z (cos.f64 y)) 3/2) 1/3))
(*.f64 (*.f64 z (pow.f64 (cbrt.f64 (cos.f64 y)) 2)) (cbrt.f64 (cos.f64 y)))
(*.f64 (*.f64 z (sqrt.f64 (cos.f64 y))) (sqrt.f64 (cos.f64 y)))
(*.f64 (*.f64 (cos.f64 y) (pow.f64 (cbrt.f64 z) 2)) (cbrt.f64 z))
(*.f64 (*.f64 (cos.f64 y) (sqrt.f64 z)) (sqrt.f64 z))
(pow.f64 (*.f64 z (cos.f64 y)) 1)
(pow.f64 (pow.f64 (*.f64 z (cos.f64 y)) 3) 1/3)
(pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 3)
(pow.f64 (sqrt.f64 (*.f64 z (cos.f64 y))) 2)
(sqrt.f64 (pow.f64 (*.f64 z (cos.f64 y)) 2))
(log.f64 (pow.f64 (exp.f64 z) (cos.f64 y)))
(expm1.f64 (log1p.f64 (*.f64 z (cos.f64 y))))
(log1p.f64 (expm1.f64 (*.f64 z (cos.f64 y))))
(exp.f64 (log.f64 (*.f64 z (cos.f64 y))))
(-.f64 (+.f64 1 (pow.f64 (*.f64 z (cos.f64 y)) 3)) 1)
(*.f64 z (*.f64 (cos.f64 y) (pow.f64 (*.f64 z (cos.f64 y)) 2)))
(*.f64 (cos.f64 y) (*.f64 z (pow.f64 (*.f64 z (cos.f64 y)) 2)))
(*.f64 (*.f64 z (cos.f64 y)) (pow.f64 (*.f64 z (cos.f64 y)) 2))
(*.f64 (pow.f64 (*.f64 z (cos.f64 y)) 3) 1)
(*.f64 1 (pow.f64 (*.f64 z (cos.f64 y)) 3))
(*.f64 (pow.f64 (*.f64 z (cos.f64 y)) 2) (*.f64 z (cos.f64 y)))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 2) (*.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) (pow.f64 (*.f64 z (cos.f64 y)) 2)))
(*.f64 (sqrt.f64 (*.f64 z (cos.f64 y))) (*.f64 (sqrt.f64 (*.f64 z (cos.f64 y))) (pow.f64 (*.f64 z (cos.f64 y)) 2)))
(*.f64 (pow.f64 z 3) (pow.f64 (cos.f64 y) 3))
(*.f64 (pow.f64 (cos.f64 y) 3) (pow.f64 z 3))
(*.f64 (pow.f64 (*.f64 z (cos.f64 y)) 3/2) (pow.f64 (*.f64 z (cos.f64 y)) 3/2))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 2) 3) (*.f64 z (cos.f64 y)))
(*.f64 (pow.f64 (sqrt.f64 (*.f64 z (cos.f64 y))) 3) (pow.f64 (sqrt.f64 (*.f64 z (cos.f64 y))) 3))
(*.f64 (*.f64 (pow.f64 (*.f64 z (cos.f64 y)) 2) z) (cos.f64 y))
(*.f64 (*.f64 (pow.f64 (*.f64 z (cos.f64 y)) 2) (cos.f64 y)) z)
(*.f64 (*.f64 (pow.f64 (*.f64 z (cos.f64 y)) 2) 1) (*.f64 z (cos.f64 y)))
(*.f64 (*.f64 (pow.f64 (*.f64 z (cos.f64 y)) 2) (pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 2)) (cbrt.f64 (*.f64 z (cos.f64 y))))
(*.f64 (*.f64 (pow.f64 (*.f64 z (cos.f64 y)) 2) (sqrt.f64 (*.f64 z (cos.f64 y)))) (sqrt.f64 (*.f64 z (cos.f64 y))))
(sqrt.f64 (pow.f64 (*.f64 z (cos.f64 y)) 6))
(log.f64 (exp.f64 (pow.f64 (*.f64 z (cos.f64 y)) 3)))
(cbrt.f64 (pow.f64 (pow.f64 (*.f64 z (cos.f64 y)) 3) 3))
(expm1.f64 (log1p.f64 (pow.f64 (*.f64 z (cos.f64 y)) 3)))
(log1p.f64 (expm1.f64 (pow.f64 (*.f64 z (cos.f64 y)) 3)))
(exp.f64 (*.f64 3 (log.f64 (*.f64 z (cos.f64 y)))))
Outputs
(*.f64 (pow.f64 (*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y)) 1/3) z)
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 y) 3)) z)
(*.f64 (cos.f64 y) z)
(*.f64 (pow.f64 (*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y)) 1/3) z)
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 y) 3)) z)
(*.f64 (cos.f64 y) z)
(*.f64 (pow.f64 (*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y)) 1/3) z)
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 y) 3)) z)
(*.f64 (cos.f64 y) z)
(*.f64 (pow.f64 (*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y)) 1/3) z)
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 y) 3)) z)
(*.f64 (cos.f64 y) z)
(*.f64 (pow.f64 (*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y)) 1/3) z)
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 y) 3)) z)
(*.f64 (cos.f64 y) z)
(*.f64 (pow.f64 (*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y)) 1/3) z)
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 y) 3)) z)
(*.f64 (cos.f64 y) z)
(*.f64 (pow.f64 (*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y)) 1/3) z)
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 y) 3)) z)
(*.f64 (cos.f64 y) z)
(*.f64 (pow.f64 (*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y)) 1/3) z)
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 y) 3)) z)
(*.f64 (cos.f64 y) z)
(*.f64 -1 (*.f64 (cbrt.f64 -1) (*.f64 (pow.f64 (*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y)) 1/3) z)))
(neg.f64 (*.f64 (*.f64 (cbrt.f64 (pow.f64 (cos.f64 y) 3)) z) (cbrt.f64 -1)))
(*.f64 (cbrt.f64 -1) (neg.f64 (*.f64 (cos.f64 y) z)))
(*.f64 (cbrt.f64 -1) (*.f64 (cos.f64 y) (neg.f64 z)))
(*.f64 -1 (*.f64 (cbrt.f64 -1) (*.f64 (pow.f64 (*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y)) 1/3) z)))
(neg.f64 (*.f64 (*.f64 (cbrt.f64 (pow.f64 (cos.f64 y) 3)) z) (cbrt.f64 -1)))
(*.f64 (cbrt.f64 -1) (neg.f64 (*.f64 (cos.f64 y) z)))
(*.f64 (cbrt.f64 -1) (*.f64 (cos.f64 y) (neg.f64 z)))
(*.f64 -1 (*.f64 (cbrt.f64 -1) (*.f64 (pow.f64 (*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y)) 1/3) z)))
(neg.f64 (*.f64 (*.f64 (cbrt.f64 (pow.f64 (cos.f64 y) 3)) z) (cbrt.f64 -1)))
(*.f64 (cbrt.f64 -1) (neg.f64 (*.f64 (cos.f64 y) z)))
(*.f64 (cbrt.f64 -1) (*.f64 (cos.f64 y) (neg.f64 z)))
(*.f64 -1 (*.f64 (cbrt.f64 -1) (*.f64 (pow.f64 (*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y)) 1/3) z)))
(neg.f64 (*.f64 (*.f64 (cbrt.f64 (pow.f64 (cos.f64 y) 3)) z) (cbrt.f64 -1)))
(*.f64 (cbrt.f64 -1) (neg.f64 (*.f64 (cos.f64 y) z)))
(*.f64 (cbrt.f64 -1) (*.f64 (cos.f64 y) (neg.f64 z)))
(pow.f64 (*.f64 (pow.f64 z 2) z) 1/3)
(cbrt.f64 (pow.f64 z 3))
z
(+.f64 (*.f64 1/3 (/.f64 (*.f64 (pow.f64 y 2) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 z 2) z)) (*.f64 -1 (*.f64 (pow.f64 z 2) z)))) (pow.f64 (pow.f64 (*.f64 (pow.f64 z 2) z) 1/3) 2))) (pow.f64 (*.f64 (pow.f64 z 2) z) 1/3))
(fma.f64 1/3 (/.f64 (*.f64 (*.f64 y y) (*.f64 (pow.f64 z 3) -3/2)) (pow.f64 (cbrt.f64 (pow.f64 z 3)) 2)) (cbrt.f64 (pow.f64 z 3)))
(fma.f64 1/3 (/.f64 y (/.f64 (*.f64 (/.f64 z (pow.f64 z 3)) (/.f64 z -3/2)) y)) z)
(fma.f64 1/3 (*.f64 (/.f64 (*.f64 y y) z) (/.f64 -3/2 (/.f64 z (pow.f64 z 3)))) z)
(+.f64 (*.f64 1/3 (/.f64 (*.f64 (pow.f64 y 4) (-.f64 (+.f64 (*.f64 (+.f64 (*.f64 1/4 (pow.f64 z 2)) (*.f64 1/12 (pow.f64 z 2))) z) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 z 2) z)) (*.f64 1/2 (*.f64 (pow.f64 z 2) z)))) (*.f64 1/3 (/.f64 (*.f64 (pow.f64 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 z 2) z)) (*.f64 -1 (*.f64 (pow.f64 z 2) z))) 2) (pow.f64 (*.f64 (pow.f64 z 2) z) 1/3)) (pow.f64 (pow.f64 (pow.f64 (*.f64 (pow.f64 z 2) z) 1/3) 2) 2))))) (pow.f64 (pow.f64 (*.f64 (pow.f64 z 2) z) 1/3) 2))) (+.f64 (*.f64 1/3 (/.f64 (*.f64 (pow.f64 y 2) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 z 2) z)) (*.f64 -1 (*.f64 (pow.f64 z 2) z)))) (pow.f64 (pow.f64 (*.f64 (pow.f64 z 2) z) 1/3) 2))) (pow.f64 (*.f64 (pow.f64 z 2) z) 1/3)))
(fma.f64 1/3 (/.f64 (*.f64 (pow.f64 y 4) (+.f64 (fma.f64 (*.f64 (*.f64 z z) 1/3) z (*.f64 (pow.f64 z 3) 13/24)) (*.f64 -1/3 (/.f64 (*.f64 (cbrt.f64 (pow.f64 z 3)) (pow.f64 (*.f64 (pow.f64 z 3) -3/2) 2)) (pow.f64 (pow.f64 (cbrt.f64 (pow.f64 z 3)) 2) 2))))) (pow.f64 (cbrt.f64 (pow.f64 z 3)) 2)) (fma.f64 1/3 (/.f64 (*.f64 (*.f64 y y) (*.f64 (pow.f64 z 3) -3/2)) (pow.f64 (cbrt.f64 (pow.f64 z 3)) 2)) (cbrt.f64 (pow.f64 z 3))))
(fma.f64 1/3 (*.f64 (/.f64 (pow.f64 y 4) z) (/.f64 (-.f64 (fma.f64 (pow.f64 z 3) 13/24 (*.f64 (pow.f64 z 3) 1/3)) (/.f64 (*.f64 (*.f64 (pow.f64 (*.f64 z z) 3) 9/4) 1/3) (/.f64 (pow.f64 z 4) z))) z)) (fma.f64 1/3 (/.f64 y (/.f64 (*.f64 (/.f64 z (pow.f64 z 3)) (/.f64 z -3/2)) y)) z))
(+.f64 z (*.f64 (/.f64 1/3 z) (+.f64 (/.f64 (pow.f64 z 3) (/.f64 z (*.f64 -3/2 (*.f64 y y)))) (/.f64 (pow.f64 y 4) (/.f64 z (+.f64 (*.f64 (pow.f64 z 3) 7/8) (*.f64 (*.f64 (/.f64 (*.f64 (pow.f64 z 6) 9/4) (pow.f64 z 4)) z) -1/3)))))))
(+.f64 (*.f64 1/3 (/.f64 (*.f64 (pow.f64 y 4) (-.f64 (+.f64 (*.f64 (+.f64 (*.f64 1/4 (pow.f64 z 2)) (*.f64 1/12 (pow.f64 z 2))) z) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 z 2) z)) (*.f64 1/2 (*.f64 (pow.f64 z 2) z)))) (*.f64 1/3 (/.f64 (*.f64 (pow.f64 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 z 2) z)) (*.f64 -1 (*.f64 (pow.f64 z 2) z))) 2) (pow.f64 (*.f64 (pow.f64 z 2) z) 1/3)) (pow.f64 (pow.f64 (pow.f64 (*.f64 (pow.f64 z 2) z) 1/3) 2) 2))))) (pow.f64 (pow.f64 (*.f64 (pow.f64 z 2) z) 1/3) 2))) (+.f64 (*.f64 1/3 (/.f64 (*.f64 (-.f64 (+.f64 (*.f64 -1/720 (*.f64 (pow.f64 z 2) z)) (+.f64 (*.f64 -1/24 (*.f64 (pow.f64 z 2) z)) (+.f64 (*.f64 (+.f64 (*.f64 -1/360 (pow.f64 z 2)) (*.f64 -1/24 (pow.f64 z 2))) z) (*.f64 -1/2 (*.f64 (+.f64 (*.f64 1/4 (pow.f64 z 2)) (*.f64 1/12 (pow.f64 z 2))) z))))) (+.f64 (*.f64 1/3 (/.f64 (*.f64 (-.f64 (+.f64 (*.f64 (+.f64 (*.f64 1/4 (pow.f64 z 2)) (*.f64 1/12 (pow.f64 z 2))) z) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 z 2) z)) (*.f64 1/2 (*.f64 (pow.f64 z 2) z)))) (*.f64 1/3 (/.f64 (*.f64 (pow.f64 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 z 2) z)) (*.f64 -1 (*.f64 (pow.f64 z 2) z))) 2) (pow.f64 (*.f64 (pow.f64 z 2) z) 1/3)) (pow.f64 (pow.f64 (pow.f64 (*.f64 (pow.f64 z 2) z) 1/3) 2) 2)))) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 z 2) z)) (*.f64 -1 (*.f64 (pow.f64 z 2) z))) (pow.f64 (*.f64 (pow.f64 z 2) z) 1/3))) (pow.f64 (pow.f64 (pow.f64 (*.f64 (pow.f64 z 2) z) 1/3) 2) 2))) (+.f64 (*.f64 1/3 (/.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 z 2) z)) (*.f64 -1 (*.f64 (pow.f64 z 2) z))) (*.f64 (-.f64 (+.f64 (*.f64 (+.f64 (*.f64 1/4 (pow.f64 z 2)) (*.f64 1/12 (pow.f64 z 2))) z) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 z 2) z)) (*.f64 1/2 (*.f64 (pow.f64 z 2) z)))) (*.f64 1/3 (/.f64 (*.f64 (pow.f64 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 z 2) z)) (*.f64 -1 (*.f64 (pow.f64 z 2) z))) 2) (pow.f64 (*.f64 (pow.f64 z 2) z) 1/3)) (pow.f64 (pow.f64 (pow.f64 (*.f64 (pow.f64 z 2) z) 1/3) 2) 2)))) (pow.f64 (*.f64 (pow.f64 z 2) z) 1/3))) (pow.f64 (pow.f64 (pow.f64 (*.f64 (pow.f64 z 2) z) 1/3) 2) 2))) (*.f64 1/27 (/.f64 (pow.f64 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 z 2) z)) (*.f64 -1 (*.f64 (pow.f64 z 2) z))) 3) (pow.f64 (pow.f64 (pow.f64 (*.f64 (pow.f64 z 2) z) 1/3) 2) 3)))))) (pow.f64 y 6)) (pow.f64 (pow.f64 (*.f64 (pow.f64 z 2) z) 1/3) 2))) (+.f64 (*.f64 1/3 (/.f64 (*.f64 (pow.f64 y 2) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 z 2) z)) (*.f64 -1 (*.f64 (pow.f64 z 2) z)))) (pow.f64 (pow.f64 (*.f64 (pow.f64 z 2) z) 1/3) 2))) (pow.f64 (*.f64 (pow.f64 z 2) z) 1/3))))
(fma.f64 1/3 (/.f64 (*.f64 (pow.f64 y 4) (+.f64 (fma.f64 (*.f64 (*.f64 z z) 1/3) z (*.f64 (pow.f64 z 3) 13/24)) (*.f64 -1/3 (/.f64 (*.f64 (cbrt.f64 (pow.f64 z 3)) (pow.f64 (*.f64 (pow.f64 z 3) -3/2) 2)) (pow.f64 (pow.f64 (cbrt.f64 (pow.f64 z 3)) 2) 2))))) (pow.f64 (cbrt.f64 (pow.f64 z 3)) 2)) (fma.f64 1/3 (/.f64 (-.f64 (fma.f64 -1/720 (pow.f64 z 3) (fma.f64 -1/24 (pow.f64 z 3) (fma.f64 (*.f64 (*.f64 z z) -2/45) z (*.f64 -1/2 (*.f64 z (*.f64 (*.f64 z z) 1/3)))))) (fma.f64 1/3 (/.f64 (+.f64 (fma.f64 (*.f64 (*.f64 z z) 1/3) z (*.f64 (pow.f64 z 3) 13/24)) (*.f64 -1/3 (/.f64 (*.f64 (cbrt.f64 (pow.f64 z 3)) (pow.f64 (*.f64 (pow.f64 z 3) -3/2) 2)) (pow.f64 (pow.f64 (cbrt.f64 (pow.f64 z 3)) 2) 2)))) (/.f64 (pow.f64 (pow.f64 (cbrt.f64 (pow.f64 z 3)) 2) 2) (*.f64 (cbrt.f64 (pow.f64 z 3)) (*.f64 (pow.f64 z 3) -3/2)))) (fma.f64 1/3 (/.f64 (*.f64 (pow.f64 z 3) -3/2) (/.f64 (pow.f64 (pow.f64 (cbrt.f64 (pow.f64 z 3)) 2) 2) (*.f64 (cbrt.f64 (pow.f64 z 3)) (+.f64 (fma.f64 (*.f64 (*.f64 z z) 1/3) z (*.f64 (pow.f64 z 3) 13/24)) (*.f64 -1/3 (/.f64 (*.f64 (cbrt.f64 (pow.f64 z 3)) (pow.f64 (*.f64 (pow.f64 z 3) -3/2) 2)) (pow.f64 (pow.f64 (cbrt.f64 (pow.f64 z 3)) 2) 2))))))) (*.f64 1/27 (/.f64 (pow.f64 (*.f64 (pow.f64 z 3) -3/2) 3) (pow.f64 (pow.f64 (cbrt.f64 (pow.f64 z 3)) 2) 3)))))) (/.f64 (pow.f64 (cbrt.f64 (pow.f64 z 3)) 2) (pow.f64 y 6))) (fma.f64 1/3 (/.f64 (*.f64 (*.f64 y y) (*.f64 (pow.f64 z 3) -3/2)) (pow.f64 (cbrt.f64 (pow.f64 z 3)) 2)) (cbrt.f64 (pow.f64 z 3)))))
(fma.f64 1/3 (*.f64 (/.f64 (pow.f64 y 4) z) (/.f64 (-.f64 (fma.f64 (pow.f64 z 3) 13/24 (*.f64 (pow.f64 z 3) 1/3)) (/.f64 (*.f64 (*.f64 (pow.f64 (*.f64 z z) 3) 9/4) 1/3) (/.f64 (pow.f64 z 4) z))) z)) (fma.f64 1/3 (*.f64 (/.f64 (+.f64 (*.f64 (pow.f64 z 3) -31/720) (-.f64 (fma.f64 -1/2 (*.f64 (pow.f64 z 3) 1/3) (*.f64 (pow.f64 z 3) -2/45)) (fma.f64 1/3 (/.f64 (-.f64 (fma.f64 (pow.f64 z 3) 13/24 (*.f64 (pow.f64 z 3) 1/3)) (/.f64 (*.f64 (*.f64 (pow.f64 (*.f64 z z) 3) 9/4) 1/3) (/.f64 (pow.f64 z 4) z))) (/.f64 (pow.f64 z 4) (*.f64 (pow.f64 z 4) -3/2))) (fma.f64 1/3 (/.f64 (-.f64 (fma.f64 (pow.f64 z 3) 13/24 (*.f64 (pow.f64 z 3) 1/3)) (/.f64 (*.f64 (*.f64 (pow.f64 (*.f64 z z) 3) 9/4) 1/3) (/.f64 (pow.f64 z 4) z))) (/.f64 (pow.f64 z 4) (*.f64 (pow.f64 z 4) -3/2))) (*.f64 1/27 (/.f64 (*.f64 (pow.f64 (pow.f64 z 3) 3) -27/8) (pow.f64 (*.f64 z z) 3))))))) (*.f64 z z)) (pow.f64 y 6)) (fma.f64 1/3 (/.f64 y (/.f64 (*.f64 (/.f64 z (pow.f64 z 3)) (/.f64 z -3/2)) y)) z)))
(+.f64 (fma.f64 1/3 (*.f64 (/.f64 (*.f64 y y) z) (/.f64 -3/2 (/.f64 z (pow.f64 z 3)))) z) (*.f64 (/.f64 1/3 z) (+.f64 (/.f64 (pow.f64 y 4) (/.f64 z (+.f64 (*.f64 (pow.f64 z 3) 7/8) (*.f64 (*.f64 (/.f64 (*.f64 (pow.f64 z 6) 9/4) (pow.f64 z 4)) z) -1/3)))) (/.f64 (+.f64 (-.f64 (+.f64 (*.f64 (pow.f64 z 3) -7/80) (*.f64 -1/2 (*.f64 (pow.f64 z 3) 1/3))) (*.f64 (/.f64 (+.f64 (*.f64 (pow.f64 z 3) 7/8) (*.f64 (*.f64 (/.f64 (*.f64 (pow.f64 z 6) 9/4) (pow.f64 z 4)) z) -1/3)) (/.f64 (pow.f64 z 4) (*.f64 (pow.f64 z 4) -3/2))) 2/3)) (*.f64 (/.f64 (*.f64 (pow.f64 (pow.f64 z 3) 3) -27/8) (pow.f64 z 6)) -1/27)) (/.f64 z (pow.f64 y 6))))))
(pow.f64 (*.f64 (pow.f64 z 2) (*.f64 (pow.f64 (cos.f64 y) 2) (*.f64 (cos.f64 y) z))) 1/3)
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 y) 3)) z)
(*.f64 (cos.f64 y) z)
(pow.f64 (*.f64 (pow.f64 z 2) (*.f64 (pow.f64 (cos.f64 y) 2) (*.f64 (cos.f64 y) z))) 1/3)
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 y) 3)) z)
(*.f64 (cos.f64 y) z)
(pow.f64 (*.f64 (pow.f64 z 2) (*.f64 (pow.f64 (cos.f64 y) 2) (*.f64 (cos.f64 y) z))) 1/3)
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 y) 3)) z)
(*.f64 (cos.f64 y) z)
(pow.f64 (*.f64 (pow.f64 z 2) (*.f64 (pow.f64 (cos.f64 y) 2) (*.f64 (cos.f64 y) z))) 1/3)
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 y) 3)) z)
(*.f64 (cos.f64 y) z)
(pow.f64 (*.f64 (pow.f64 z 2) (*.f64 (pow.f64 (cos.f64 y) 2) (*.f64 (cos.f64 y) z))) 1/3)
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 y) 3)) z)
(*.f64 (cos.f64 y) z)
(pow.f64 (*.f64 (pow.f64 z 2) (*.f64 (pow.f64 (cos.f64 y) 2) (*.f64 (cos.f64 y) z))) 1/3)
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 y) 3)) z)
(*.f64 (cos.f64 y) z)
(pow.f64 (*.f64 (pow.f64 z 2) (*.f64 (pow.f64 (cos.f64 y) 2) (*.f64 (cos.f64 y) z))) 1/3)
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 y) 3)) z)
(*.f64 (cos.f64 y) z)
(pow.f64 (*.f64 (pow.f64 z 2) (*.f64 (pow.f64 (cos.f64 y) 2) (*.f64 (cos.f64 y) z))) 1/3)
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 y) 3)) z)
(*.f64 (cos.f64 y) z)
(*.f64 (pow.f64 (cos.f64 y) 2) (*.f64 (pow.f64 z 3) (cos.f64 y)))
(*.f64 (pow.f64 (cos.f64 y) 2) (*.f64 (cos.f64 y) (pow.f64 z 3)))
(pow.f64 (*.f64 (cos.f64 y) z) 3)
(*.f64 (pow.f64 (cos.f64 y) 2) (*.f64 (pow.f64 z 3) (cos.f64 y)))
(*.f64 (pow.f64 (cos.f64 y) 2) (*.f64 (cos.f64 y) (pow.f64 z 3)))
(pow.f64 (*.f64 (cos.f64 y) z) 3)
(*.f64 (pow.f64 (cos.f64 y) 2) (*.f64 (pow.f64 z 3) (cos.f64 y)))
(*.f64 (pow.f64 (cos.f64 y) 2) (*.f64 (cos.f64 y) (pow.f64 z 3)))
(pow.f64 (*.f64 (cos.f64 y) z) 3)
(*.f64 (pow.f64 (cos.f64 y) 2) (*.f64 (pow.f64 z 3) (cos.f64 y)))
(*.f64 (pow.f64 (cos.f64 y) 2) (*.f64 (cos.f64 y) (pow.f64 z 3)))
(pow.f64 (*.f64 (cos.f64 y) z) 3)
(*.f64 (pow.f64 (/.f64 1 z) -3) (*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y)))
(*.f64 (pow.f64 (cos.f64 y) 3) (pow.f64 (/.f64 1 z) -3))
(*.f64 (pow.f64 (/.f64 1 z) -3) (*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y)))
(*.f64 (pow.f64 (cos.f64 y) 3) (pow.f64 (/.f64 1 z) -3))
(*.f64 (pow.f64 (/.f64 1 z) -3) (*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y)))
(*.f64 (pow.f64 (cos.f64 y) 3) (pow.f64 (/.f64 1 z) -3))
(*.f64 (pow.f64 (/.f64 1 z) -3) (*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y)))
(*.f64 (pow.f64 (cos.f64 y) 3) (pow.f64 (/.f64 1 z) -3))
(*.f64 -1 (*.f64 (pow.f64 (cos.f64 y) 2) (*.f64 (cos.f64 y) (pow.f64 (/.f64 -1 z) -3))))
(neg.f64 (*.f64 (pow.f64 (cos.f64 y) 3) (pow.f64 (/.f64 -1 z) -3)))
(*.f64 (pow.f64 (cos.f64 y) 3) (neg.f64 (pow.f64 (/.f64 -1 z) -3)))
(*.f64 -1 (*.f64 (pow.f64 (cos.f64 y) 2) (*.f64 (cos.f64 y) (pow.f64 (/.f64 -1 z) -3))))
(neg.f64 (*.f64 (pow.f64 (cos.f64 y) 3) (pow.f64 (/.f64 -1 z) -3)))
(*.f64 (pow.f64 (cos.f64 y) 3) (neg.f64 (pow.f64 (/.f64 -1 z) -3)))
(*.f64 -1 (*.f64 (pow.f64 (cos.f64 y) 2) (*.f64 (cos.f64 y) (pow.f64 (/.f64 -1 z) -3))))
(neg.f64 (*.f64 (pow.f64 (cos.f64 y) 3) (pow.f64 (/.f64 -1 z) -3)))
(*.f64 (pow.f64 (cos.f64 y) 3) (neg.f64 (pow.f64 (/.f64 -1 z) -3)))
(*.f64 -1 (*.f64 (pow.f64 (cos.f64 y) 2) (*.f64 (cos.f64 y) (pow.f64 (/.f64 -1 z) -3))))
(neg.f64 (*.f64 (pow.f64 (cos.f64 y) 3) (pow.f64 (/.f64 -1 z) -3)))
(*.f64 (pow.f64 (cos.f64 y) 3) (neg.f64 (pow.f64 (/.f64 -1 z) -3)))
(*.f64 (pow.f64 z 2) z)
(pow.f64 z 3)
(+.f64 (*.f64 (pow.f64 y 2) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 z 2) z)) (*.f64 -1 (*.f64 (pow.f64 z 2) z)))) (*.f64 (pow.f64 z 2) z))
(fma.f64 (*.f64 y y) (*.f64 (pow.f64 z 3) -3/2) (pow.f64 z 3))
(+.f64 (*.f64 (+.f64 (*.f64 (+.f64 (*.f64 1/4 (pow.f64 z 2)) (*.f64 1/12 (pow.f64 z 2))) z) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 z 2) z)) (*.f64 1/2 (*.f64 (pow.f64 z 2) z)))) (pow.f64 y 4)) (+.f64 (*.f64 (pow.f64 y 2) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 z 2) z)) (*.f64 -1 (*.f64 (pow.f64 z 2) z)))) (*.f64 (pow.f64 z 2) z)))
(fma.f64 (fma.f64 (*.f64 (*.f64 z z) 1/3) z (*.f64 (pow.f64 z 3) 13/24)) (pow.f64 y 4) (fma.f64 (*.f64 y y) (*.f64 (pow.f64 z 3) -3/2) (pow.f64 z 3)))
(fma.f64 (pow.f64 y 4) (fma.f64 (pow.f64 z 3) 13/24 (*.f64 (pow.f64 z 3) 1/3)) (fma.f64 (*.f64 y y) (*.f64 (pow.f64 z 3) -3/2) (pow.f64 z 3)))
(fma.f64 (pow.f64 y 4) (*.f64 (pow.f64 z 3) 7/8) (fma.f64 (*.f64 y y) (*.f64 (pow.f64 z 3) -3/2) (pow.f64 z 3)))
(+.f64 (*.f64 (+.f64 (*.f64 (+.f64 (*.f64 1/4 (pow.f64 z 2)) (*.f64 1/12 (pow.f64 z 2))) z) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 z 2) z)) (*.f64 1/2 (*.f64 (pow.f64 z 2) z)))) (pow.f64 y 4)) (+.f64 (*.f64 (pow.f64 y 2) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 z 2) z)) (*.f64 -1 (*.f64 (pow.f64 z 2) z)))) (+.f64 (*.f64 (pow.f64 z 2) z) (*.f64 (+.f64 (*.f64 -1/720 (*.f64 (pow.f64 z 2) z)) (+.f64 (*.f64 -1/24 (*.f64 (pow.f64 z 2) z)) (+.f64 (*.f64 (+.f64 (*.f64 -1/360 (pow.f64 z 2)) (*.f64 -1/24 (pow.f64 z 2))) z) (*.f64 -1/2 (*.f64 (+.f64 (*.f64 1/4 (pow.f64 z 2)) (*.f64 1/12 (pow.f64 z 2))) z))))) (pow.f64 y 6)))))
(fma.f64 (fma.f64 (*.f64 (*.f64 z z) 1/3) z (*.f64 (pow.f64 z 3) 13/24)) (pow.f64 y 4) (+.f64 (fma.f64 (*.f64 y y) (*.f64 (pow.f64 z 3) -3/2) (pow.f64 z 3)) (*.f64 (fma.f64 -1/720 (pow.f64 z 3) (fma.f64 -1/24 (pow.f64 z 3) (fma.f64 (*.f64 (*.f64 z z) -2/45) z (*.f64 -1/2 (*.f64 z (*.f64 (*.f64 z z) 1/3)))))) (pow.f64 y 6))))
(fma.f64 (pow.f64 y 4) (fma.f64 (pow.f64 z 3) 13/24 (*.f64 (pow.f64 z 3) 1/3)) (fma.f64 (*.f64 y y) (*.f64 (pow.f64 z 3) -3/2) (fma.f64 (+.f64 (fma.f64 -1/2 (*.f64 (pow.f64 z 3) 1/3) (*.f64 (pow.f64 z 3) -2/45)) (*.f64 (pow.f64 z 3) -31/720)) (pow.f64 y 6) (pow.f64 z 3))))
(fma.f64 (pow.f64 y 4) (*.f64 (pow.f64 z 3) 7/8) (fma.f64 (*.f64 y y) (*.f64 (pow.f64 z 3) -3/2) (fma.f64 (+.f64 (*.f64 (pow.f64 z 3) -7/80) (*.f64 -1/2 (*.f64 (pow.f64 z 3) 1/3))) (pow.f64 y 6) (pow.f64 z 3))))
(*.f64 (pow.f64 z 2) (*.f64 (pow.f64 (cos.f64 y) 2) (*.f64 z (cos.f64 y))))
(*.f64 (pow.f64 (cos.f64 y) 2) (*.f64 (cos.f64 y) (pow.f64 z 3)))
(pow.f64 (*.f64 (cos.f64 y) z) 3)
(*.f64 (pow.f64 z 2) (*.f64 (pow.f64 (cos.f64 y) 2) (*.f64 z (cos.f64 y))))
(*.f64 (pow.f64 (cos.f64 y) 2) (*.f64 (cos.f64 y) (pow.f64 z 3)))
(pow.f64 (*.f64 (cos.f64 y) z) 3)
(*.f64 (pow.f64 z 2) (*.f64 (pow.f64 (cos.f64 y) 2) (*.f64 z (cos.f64 y))))
(*.f64 (pow.f64 (cos.f64 y) 2) (*.f64 (cos.f64 y) (pow.f64 z 3)))
(pow.f64 (*.f64 (cos.f64 y) z) 3)
(*.f64 (pow.f64 z 2) (*.f64 (pow.f64 (cos.f64 y) 2) (*.f64 z (cos.f64 y))))
(*.f64 (pow.f64 (cos.f64 y) 2) (*.f64 (cos.f64 y) (pow.f64 z 3)))
(pow.f64 (*.f64 (cos.f64 y) z) 3)
(*.f64 (pow.f64 z 2) (*.f64 (pow.f64 (cos.f64 y) 2) (*.f64 z (cos.f64 y))))
(*.f64 (pow.f64 (cos.f64 y) 2) (*.f64 (cos.f64 y) (pow.f64 z 3)))
(pow.f64 (*.f64 (cos.f64 y) z) 3)
(*.f64 (pow.f64 z 2) (*.f64 (pow.f64 (cos.f64 y) 2) (*.f64 z (cos.f64 y))))
(*.f64 (pow.f64 (cos.f64 y) 2) (*.f64 (cos.f64 y) (pow.f64 z 3)))
(pow.f64 (*.f64 (cos.f64 y) z) 3)
(*.f64 (pow.f64 z 2) (*.f64 (pow.f64 (cos.f64 y) 2) (*.f64 z (cos.f64 y))))
(*.f64 (pow.f64 (cos.f64 y) 2) (*.f64 (cos.f64 y) (pow.f64 z 3)))
(pow.f64 (*.f64 (cos.f64 y) z) 3)
(*.f64 (pow.f64 z 2) (*.f64 (pow.f64 (cos.f64 y) 2) (*.f64 z (cos.f64 y))))
(*.f64 (pow.f64 (cos.f64 y) 2) (*.f64 (cos.f64 y) (pow.f64 z 3)))
(pow.f64 (*.f64 (cos.f64 y) z) 3)
(-.f64 (+.f64 1 (*.f64 z (cos.f64 y))) 1)
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 y) 3)) z)
(*.f64 (cos.f64 y) z)
(*.f64 z (cos.f64 y))
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 y) 3)) z)
(*.f64 (cos.f64 y) z)
(*.f64 (cos.f64 y) z)
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 y) 3)) z)
(*.f64 (*.f64 z (cos.f64 y)) 1)
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 y) 3)) z)
(*.f64 (cos.f64 y) z)
(*.f64 1 (*.f64 z (cos.f64 y)))
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 y) 3)) z)
(*.f64 (cos.f64 y) z)
(*.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) (pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 2))
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 y) 3)) z)
(*.f64 (cos.f64 y) z)
(*.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) (pow.f64 (pow.f64 (*.f64 z (cos.f64 y)) 2) 1/3))
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 y) 3)) z)
(*.f64 (cos.f64 y) z)
(*.f64 (pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 2) (cbrt.f64 (*.f64 z (cos.f64 y))))
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 y) 3)) z)
(*.f64 (cos.f64 y) z)
(*.f64 (pow.f64 (cbrt.f64 z) 2) (*.f64 (cbrt.f64 z) (cos.f64 y)))
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 y) 3)) z)
(*.f64 (cos.f64 y) z)
(*.f64 (pow.f64 (cbrt.f64 (cos.f64 y)) 2) (*.f64 (cbrt.f64 (cos.f64 y)) z))
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 y) 3)) z)
(*.f64 (cos.f64 y) z)
(*.f64 (sqrt.f64 (*.f64 z (cos.f64 y))) (sqrt.f64 (*.f64 z (cos.f64 y))))
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 y) 3)) z)
(*.f64 (cos.f64 y) z)
(*.f64 (sqrt.f64 z) (*.f64 (sqrt.f64 z) (cos.f64 y)))
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 y) 3)) z)
(*.f64 (cos.f64 y) z)
(*.f64 (sqrt.f64 (cos.f64 y)) (*.f64 (sqrt.f64 (cos.f64 y)) z))
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 y) 3)) z)
(*.f64 (cos.f64 y) z)
(*.f64 (pow.f64 (pow.f64 (*.f64 z (cos.f64 y)) 2) 1/3) (cbrt.f64 (*.f64 z (cos.f64 y))))
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 y) 3)) z)
(*.f64 (cos.f64 y) z)
(*.f64 (pow.f64 1 1/3) (*.f64 z (cos.f64 y)))
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 y) 3)) z)
(*.f64 (cos.f64 y) z)
(*.f64 (pow.f64 (pow.f64 (*.f64 z (cos.f64 y)) 3/2) 1/3) (pow.f64 (pow.f64 (*.f64 z (cos.f64 y)) 3/2) 1/3))
(*.f64 (cbrt.f64 (pow.f64 (*.f64 (cos.f64 y) z) 3/2)) (cbrt.f64 (pow.f64 (*.f64 (cos.f64 y) z) 3/2)))
(*.f64 (*.f64 z (pow.f64 (cbrt.f64 (cos.f64 y)) 2)) (cbrt.f64 (cos.f64 y)))
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 y) 3)) z)
(*.f64 (cos.f64 y) z)
(*.f64 (*.f64 z (sqrt.f64 (cos.f64 y))) (sqrt.f64 (cos.f64 y)))
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 y) 3)) z)
(*.f64 (cos.f64 y) z)
(*.f64 (*.f64 (cos.f64 y) (pow.f64 (cbrt.f64 z) 2)) (cbrt.f64 z))
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 y) 3)) z)
(*.f64 (cos.f64 y) z)
(*.f64 (*.f64 (cos.f64 y) (sqrt.f64 z)) (sqrt.f64 z))
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 y) 3)) z)
(*.f64 (cos.f64 y) z)
(pow.f64 (*.f64 z (cos.f64 y)) 1)
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 y) 3)) z)
(*.f64 (cos.f64 y) z)
(pow.f64 (pow.f64 (*.f64 z (cos.f64 y)) 3) 1/3)
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 y) 3)) z)
(*.f64 (cos.f64 y) z)
(pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 3)
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 y) 3)) z)
(*.f64 (cos.f64 y) z)
(pow.f64 (sqrt.f64 (*.f64 z (cos.f64 y))) 2)
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 y) 3)) z)
(*.f64 (cos.f64 y) z)
(sqrt.f64 (pow.f64 (*.f64 z (cos.f64 y)) 2))
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 y) 3)) z)
(*.f64 (cos.f64 y) z)
(log.f64 (pow.f64 (exp.f64 z) (cos.f64 y)))
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 y) 3)) z)
(*.f64 (cos.f64 y) z)
(expm1.f64 (log1p.f64 (*.f64 z (cos.f64 y))))
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 y) 3)) z)
(*.f64 (cos.f64 y) z)
(log1p.f64 (expm1.f64 (*.f64 z (cos.f64 y))))
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 y) 3)) z)
(*.f64 (cos.f64 y) z)
(exp.f64 (log.f64 (*.f64 z (cos.f64 y))))
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 y) 3)) z)
(*.f64 (cos.f64 y) z)
(-.f64 (+.f64 1 (pow.f64 (*.f64 z (cos.f64 y)) 3)) 1)
(*.f64 (pow.f64 (cos.f64 y) 2) (*.f64 (cos.f64 y) (pow.f64 z 3)))
(pow.f64 (*.f64 (cos.f64 y) z) 3)
(*.f64 z (*.f64 (cos.f64 y) (pow.f64 (*.f64 z (cos.f64 y)) 2)))
(*.f64 (pow.f64 (cos.f64 y) 2) (*.f64 (cos.f64 y) (pow.f64 z 3)))
(pow.f64 (*.f64 (cos.f64 y) z) 3)
(*.f64 (cos.f64 y) (*.f64 z (pow.f64 (*.f64 z (cos.f64 y)) 2)))
(*.f64 (pow.f64 (cos.f64 y) 2) (*.f64 (cos.f64 y) (pow.f64 z 3)))
(pow.f64 (*.f64 (cos.f64 y) z) 3)
(*.f64 (*.f64 z (cos.f64 y)) (pow.f64 (*.f64 z (cos.f64 y)) 2))
(*.f64 (pow.f64 (cos.f64 y) 2) (*.f64 (cos.f64 y) (pow.f64 z 3)))
(pow.f64 (*.f64 (cos.f64 y) z) 3)
(*.f64 (pow.f64 (*.f64 z (cos.f64 y)) 3) 1)
(*.f64 (pow.f64 (cos.f64 y) 2) (*.f64 (cos.f64 y) (pow.f64 z 3)))
(pow.f64 (*.f64 (cos.f64 y) z) 3)
(*.f64 1 (pow.f64 (*.f64 z (cos.f64 y)) 3))
(*.f64 (pow.f64 (cos.f64 y) 2) (*.f64 (cos.f64 y) (pow.f64 z 3)))
(pow.f64 (*.f64 (cos.f64 y) z) 3)
(*.f64 (pow.f64 (*.f64 z (cos.f64 y)) 2) (*.f64 z (cos.f64 y)))
(*.f64 (pow.f64 (cos.f64 y) 2) (*.f64 (cos.f64 y) (pow.f64 z 3)))
(pow.f64 (*.f64 (cos.f64 y) z) 3)
(*.f64 (pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 2) (*.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) (pow.f64 (*.f64 z (cos.f64 y)) 2)))
(*.f64 (pow.f64 (cos.f64 y) 2) (*.f64 (cos.f64 y) (pow.f64 z 3)))
(pow.f64 (*.f64 (cos.f64 y) z) 3)
(*.f64 (sqrt.f64 (*.f64 z (cos.f64 y))) (*.f64 (sqrt.f64 (*.f64 z (cos.f64 y))) (pow.f64 (*.f64 z (cos.f64 y)) 2)))
(*.f64 (pow.f64 (cos.f64 y) 2) (*.f64 (cos.f64 y) (pow.f64 z 3)))
(pow.f64 (*.f64 (cos.f64 y) z) 3)
(*.f64 (pow.f64 z 3) (pow.f64 (cos.f64 y) 3))
(*.f64 (pow.f64 (cos.f64 y) 2) (*.f64 (cos.f64 y) (pow.f64 z 3)))
(pow.f64 (*.f64 (cos.f64 y) z) 3)
(*.f64 (pow.f64 (cos.f64 y) 3) (pow.f64 z 3))
(*.f64 (pow.f64 (cos.f64 y) 2) (*.f64 (cos.f64 y) (pow.f64 z 3)))
(pow.f64 (*.f64 (cos.f64 y) z) 3)
(*.f64 (pow.f64 (*.f64 z (cos.f64 y)) 3/2) (pow.f64 (*.f64 z (cos.f64 y)) 3/2))
(*.f64 (pow.f64 (cos.f64 y) 2) (*.f64 (cos.f64 y) (pow.f64 z 3)))
(pow.f64 (*.f64 (cos.f64 y) z) 3)
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 2) 3) (*.f64 z (cos.f64 y)))
(*.f64 (pow.f64 (cos.f64 y) 2) (*.f64 (cos.f64 y) (pow.f64 z 3)))
(pow.f64 (*.f64 (cos.f64 y) z) 3)
(*.f64 (pow.f64 (sqrt.f64 (*.f64 z (cos.f64 y))) 3) (pow.f64 (sqrt.f64 (*.f64 z (cos.f64 y))) 3))
(*.f64 (pow.f64 (cos.f64 y) 2) (*.f64 (cos.f64 y) (pow.f64 z 3)))
(pow.f64 (*.f64 (cos.f64 y) z) 3)
(*.f64 (*.f64 (pow.f64 (*.f64 z (cos.f64 y)) 2) z) (cos.f64 y))
(*.f64 (pow.f64 (cos.f64 y) 2) (*.f64 (cos.f64 y) (pow.f64 z 3)))
(pow.f64 (*.f64 (cos.f64 y) z) 3)
(*.f64 (*.f64 (pow.f64 (*.f64 z (cos.f64 y)) 2) (cos.f64 y)) z)
(*.f64 (pow.f64 (cos.f64 y) 2) (*.f64 (cos.f64 y) (pow.f64 z 3)))
(pow.f64 (*.f64 (cos.f64 y) z) 3)
(*.f64 (*.f64 (pow.f64 (*.f64 z (cos.f64 y)) 2) 1) (*.f64 z (cos.f64 y)))
(*.f64 (pow.f64 (cos.f64 y) 2) (*.f64 (cos.f64 y) (pow.f64 z 3)))
(pow.f64 (*.f64 (cos.f64 y) z) 3)
(*.f64 (*.f64 (pow.f64 (*.f64 z (cos.f64 y)) 2) (pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 2)) (cbrt.f64 (*.f64 z (cos.f64 y))))
(*.f64 (pow.f64 (cos.f64 y) 2) (*.f64 (cos.f64 y) (pow.f64 z 3)))
(pow.f64 (*.f64 (cos.f64 y) z) 3)
(*.f64 (*.f64 (pow.f64 (*.f64 z (cos.f64 y)) 2) (sqrt.f64 (*.f64 z (cos.f64 y)))) (sqrt.f64 (*.f64 z (cos.f64 y))))
(*.f64 (pow.f64 (cos.f64 y) 2) (*.f64 (cos.f64 y) (pow.f64 z 3)))
(pow.f64 (*.f64 (cos.f64 y) z) 3)
(sqrt.f64 (pow.f64 (*.f64 z (cos.f64 y)) 6))
(*.f64 (pow.f64 (cos.f64 y) 2) (*.f64 (cos.f64 y) (pow.f64 z 3)))
(pow.f64 (*.f64 (cos.f64 y) z) 3)
(log.f64 (exp.f64 (pow.f64 (*.f64 z (cos.f64 y)) 3)))
(*.f64 (pow.f64 (cos.f64 y) 2) (*.f64 (cos.f64 y) (pow.f64 z 3)))
(pow.f64 (*.f64 (cos.f64 y) z) 3)
(cbrt.f64 (pow.f64 (pow.f64 (*.f64 z (cos.f64 y)) 3) 3))
(*.f64 (pow.f64 (cos.f64 y) 2) (*.f64 (cos.f64 y) (pow.f64 z 3)))
(pow.f64 (*.f64 (cos.f64 y) z) 3)
(expm1.f64 (log1p.f64 (pow.f64 (*.f64 z (cos.f64 y)) 3)))
(*.f64 (pow.f64 (cos.f64 y) 2) (*.f64 (cos.f64 y) (pow.f64 z 3)))
(pow.f64 (*.f64 (cos.f64 y) z) 3)
(log1p.f64 (expm1.f64 (pow.f64 (*.f64 z (cos.f64 y)) 3)))
(*.f64 (pow.f64 (cos.f64 y) 2) (*.f64 (cos.f64 y) (pow.f64 z 3)))
(pow.f64 (*.f64 (cos.f64 y) z) 3)
(exp.f64 (*.f64 3 (log.f64 (*.f64 z (cos.f64 y)))))
(*.f64 (pow.f64 (cos.f64 y) 2) (*.f64 (cos.f64 y) (pow.f64 z 3)))
(pow.f64 (*.f64 (cos.f64 y) z) 3)

eval187.0ms (1%)

Compiler

Compiled 12075 to 6156 computations (49% saved)

prune95.0ms (0.5%)

Pruning

14 alts after pruning (12 fresh and 2 done)

PrunedKeptTotal
New48612498
Fresh202
Picked101
Done224
Total49114505
Error
0.0b
Counts
505 → 14
Alt Table
Click to see full alt table
StatusErrorProgram
0.5b
(+.f64 (+.f64 x (sin.f64 y)) (*.f64 (pow.f64 (cbrt.f64 z) 2) (*.f64 (cbrt.f64 z) (cos.f64 y))))
32.1b
(+.f64 (+.f64 x (sin.f64 y)) (*.f64 (*.f64 (cos.f64 y) (sqrt.f64 z)) (sqrt.f64 z)))
0.1b
(+.f64 (+.f64 x (sin.f64 y)) (*.f64 (cbrt.f64 (pow.f64 (cos.f64 y) 3)) z))
11.4b
(+.f64 (+.f64 x (sin.f64 y)) z)
26.3b
(+.f64 (sin.f64 y) (*.f64 z (cos.f64 y)))
45.8b
(+.f64 z y)
36.7b
(+.f64 x (pow.f64 (sqrt.f64 (*.f64 z (cos.f64 y))) 2))
9.7b
(+.f64 x (pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 3))
32.9b
(+.f64 x (cbrt.f64 (pow.f64 (*.f64 z (cos.f64 y)) 3)))
32.9b
(+.f64 x (cbrt.f64 (*.f64 (pow.f64 (cos.f64 y) 3) (pow.f64 z 3))))
20.5b
(+.f64 x z)
35.2b
(*.f64 (cos.f64 y) z)
53.3b
(sin.f64 y)
46.5b
z
Compiler

Compiled 269 to 192 computations (28.6% saved)

localize20.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(+.f64 x (sin.f64 y))
0.1b
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 y) 3)) z)
0.3b
(pow.f64 (cos.f64 y) 3)
0.3b
(cbrt.f64 (pow.f64 (cos.f64 y) 3))
Compiler

Compiled 43 to 21 computations (51.2% saved)

series28.0ms (0.1%)

Counts
3 → 48
Calls

12 calls:

TimeVariablePointExpression
4.0ms
z
@0
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 y) 3)) z)
4.0ms
y
@-inf
(cbrt.f64 (pow.f64 (cos.f64 y) 3))
4.0ms
y
@inf
(cbrt.f64 (pow.f64 (cos.f64 y) 3))
3.0ms
y
@inf
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 y) 3)) z)
3.0ms
z
@-inf
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 y) 3)) z)
Compiler

Compiled 781 to 608 computations (22.2% saved)

rewrite48.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
632×pow1_binary64
590×add-log-exp_binary64
590×log1p-expm1-u_binary64
590×expm1-log1p-u_binary64
575×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify49.0ms (0.3%)

Algorithm
egg-herbie
Rules
597×distribute-rgt-in_binary64
585×unswap-sqr_binary64
570×distribute-lft-in_binary64
452×log-prod_binary64
397×fma-def_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0137899
1308598
21077582
34161579
Stop Event
node limit
Counts
98 → 95
Calls
Call 1
Inputs
1
(+.f64 1 (*.f64 -1/2 (pow.f64 y 2)))
(+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 y 2)) (*.f64 1/24 (pow.f64 y 4))))
(+.f64 (*.f64 -1/720 (pow.f64 y 6)) (+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 y 2)) (*.f64 1/24 (pow.f64 y 4)))))
(pow.f64 (*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y)) 1/3)
(pow.f64 (*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y)) 1/3)
(pow.f64 (*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y)) 1/3)
(pow.f64 (*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y)) 1/3)
(pow.f64 (*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y)) 1/3)
(pow.f64 (*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y)) 1/3)
(pow.f64 (*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y)) 1/3)
(pow.f64 (*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y)) 1/3)
1
(+.f64 1 (*.f64 -3/2 (pow.f64 y 2)))
(+.f64 1 (+.f64 (*.f64 7/8 (pow.f64 y 4)) (*.f64 -3/2 (pow.f64 y 2))))
(+.f64 1 (+.f64 (*.f64 -61/240 (pow.f64 y 6)) (+.f64 (*.f64 7/8 (pow.f64 y 4)) (*.f64 -3/2 (pow.f64 y 2)))))
(*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y))
(*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y))
(*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y))
(*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y))
(*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y))
(*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y))
(*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y))
(*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y))
z
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y 2) z)) z)
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y 2) z)) (+.f64 z (*.f64 1/24 (*.f64 (pow.f64 y 4) z))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y 2) z)) (+.f64 z (+.f64 (*.f64 1/24 (*.f64 (pow.f64 y 4) z)) (*.f64 -1/720 (*.f64 z (pow.f64 y 6))))))
(*.f64 z (pow.f64 (*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y)) 1/3))
(*.f64 z (pow.f64 (*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y)) 1/3))
(*.f64 z (pow.f64 (*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y)) 1/3))
(*.f64 z (pow.f64 (*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y)) 1/3))
(*.f64 z (pow.f64 (*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y)) 1/3))
(*.f64 z (pow.f64 (*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y)) 1/3))
(*.f64 z (pow.f64 (*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y)) 1/3))
(*.f64 z (pow.f64 (*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y)) 1/3))
(*.f64 (pow.f64 (*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y)) 1/3) z)
(*.f64 (pow.f64 (*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y)) 1/3) z)
(*.f64 (pow.f64 (*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y)) 1/3) z)
(*.f64 (pow.f64 (*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y)) 1/3) z)
(*.f64 (pow.f64 (*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y)) 1/3) z)
(*.f64 (pow.f64 (*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y)) 1/3) z)
(*.f64 (pow.f64 (*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y)) 1/3) z)
(*.f64 (pow.f64 (*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y)) 1/3) z)
(*.f64 (pow.f64 (*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y)) 1/3) z)
(*.f64 (pow.f64 (*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y)) 1/3) z)
(*.f64 (pow.f64 (*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y)) 1/3) z)
(*.f64 (pow.f64 (*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y)) 1/3) z)
(-.f64 (+.f64 1 (cos.f64 y)) 1)
(*.f64 (cos.f64 y) 1)
(*.f64 1 (cos.f64 y))
(*.f64 (cbrt.f64 (cos.f64 y)) (pow.f64 (cbrt.f64 (cos.f64 y)) 2))
(*.f64 (cbrt.f64 (cos.f64 y)) (pow.f64 (pow.f64 (cos.f64 y) 2) 1/3))
(*.f64 (pow.f64 (cbrt.f64 (cos.f64 y)) 2) (cbrt.f64 (cos.f64 y)))
(*.f64 (sqrt.f64 (cos.f64 y)) (sqrt.f64 (cos.f64 y)))
(*.f64 (pow.f64 (pow.f64 (cos.f64 y) 2) 1/3) (cbrt.f64 (cos.f64 y)))
(*.f64 (pow.f64 1 1/3) (cos.f64 y))
(*.f64 (pow.f64 (pow.f64 (cos.f64 y) 3/2) 1/3) (pow.f64 (pow.f64 (cos.f64 y) 3/2) 1/3))
(pow.f64 (cos.f64 y) 1)
(pow.f64 (pow.f64 (cos.f64 y) 3) 1/3)
(pow.f64 (cbrt.f64 (cos.f64 y)) 3)
(pow.f64 (sqrt.f64 (cos.f64 y)) 2)
(sqrt.f64 (pow.f64 (cos.f64 y) 2))
(log.f64 (exp.f64 (cos.f64 y)))
(cos.f64 y)
(expm1.f64 (log1p.f64 (cos.f64 y)))
(log1p.f64 (expm1.f64 (cos.f64 y)))
(exp.f64 (log.f64 (cos.f64 y)))
(-.f64 (+.f64 1 (pow.f64 (cos.f64 y) 3)) 1)
(*.f64 (cos.f64 y) (pow.f64 (cos.f64 y) 2))
(*.f64 (pow.f64 (cos.f64 y) 3) 1)
(*.f64 1 (pow.f64 (cos.f64 y) 3))
(*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y))
(*.f64 (pow.f64 (cbrt.f64 (cos.f64 y)) 2) (*.f64 (cbrt.f64 (cos.f64 y)) (pow.f64 (cos.f64 y) 2)))
(*.f64 (sqrt.f64 (cos.f64 y)) (*.f64 (sqrt.f64 (cos.f64 y)) (pow.f64 (cos.f64 y) 2)))
(*.f64 (pow.f64 (cos.f64 y) 3/2) (pow.f64 (cos.f64 y) 3/2))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (cos.f64 y)) 2) 3) (cos.f64 y))
(*.f64 (pow.f64 (sqrt.f64 (cos.f64 y)) 3) (pow.f64 (sqrt.f64 (cos.f64 y)) 3))
(*.f64 (*.f64 (pow.f64 (cos.f64 y) 2) 1) (cos.f64 y))
(*.f64 (*.f64 (pow.f64 (cos.f64 y) 2) (pow.f64 (cbrt.f64 (cos.f64 y)) 2)) (cbrt.f64 (cos.f64 y)))
(*.f64 (*.f64 (pow.f64 (cos.f64 y) 2) (sqrt.f64 (cos.f64 y))) (sqrt.f64 (cos.f64 y)))
(sqrt.f64 (pow.f64 (cos.f64 y) 6))
(log.f64 (exp.f64 (pow.f64 (cos.f64 y) 3)))
(cbrt.f64 (pow.f64 (pow.f64 (cos.f64 y) 3) 3))
(expm1.f64 (log1p.f64 (pow.f64 (cos.f64 y) 3)))
(log1p.f64 (expm1.f64 (pow.f64 (cos.f64 y) 3)))
(exp.f64 (*.f64 3 (log.f64 (cos.f64 y))))
(-.f64 (+.f64 1 (*.f64 (cos.f64 y) z)) 1)
(pow.f64 (*.f64 (cos.f64 y) z) 1)
(pow.f64 (pow.f64 (*.f64 (cos.f64 y) z) 3) 1/3)
(pow.f64 (cbrt.f64 (*.f64 (cos.f64 y) z)) 3)
(pow.f64 (sqrt.f64 (*.f64 (cos.f64 y) z)) 2)
(sqrt.f64 (pow.f64 (*.f64 (cos.f64 y) z) 2))
(log.f64 (pow.f64 (exp.f64 (cos.f64 y)) z))
(cbrt.f64 (pow.f64 (*.f64 (cos.f64 y) z) 3))
(expm1.f64 (log1p.f64 (*.f64 (cos.f64 y) z)))
(log1p.f64 (expm1.f64 (*.f64 (cos.f64 y) z)))
(exp.f64 (log.f64 (*.f64 (cos.f64 y) z)))
Outputs
1
(+.f64 1 (*.f64 -1/2 (pow.f64 y 2)))
(+.f64 1 (*.f64 -1/2 (*.f64 y y)))
(fma.f64 -1/2 (*.f64 y y) 1)
(+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 y 2)) (*.f64 1/24 (pow.f64 y 4))))
(+.f64 1 (fma.f64 -1/2 (*.f64 y y) (*.f64 1/24 (pow.f64 y 4))))
(fma.f64 -1/2 (*.f64 y y) (fma.f64 1/24 (pow.f64 y 4) 1))
(+.f64 (*.f64 -1/720 (pow.f64 y 6)) (+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 y 2)) (*.f64 1/24 (pow.f64 y 4)))))
(fma.f64 -1/720 (pow.f64 y 6) (+.f64 1 (fma.f64 -1/2 (*.f64 y y) (*.f64 1/24 (pow.f64 y 4)))))
(+.f64 (fma.f64 -1/2 (*.f64 y y) (*.f64 1/24 (pow.f64 y 4))) (fma.f64 -1/720 (pow.f64 y 6) 1))
(fma.f64 -1/720 (pow.f64 y 6) (fma.f64 -1/2 (*.f64 y y) (fma.f64 1/24 (pow.f64 y 4) 1)))
(pow.f64 (*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y)) 1/3)
(cbrt.f64 (pow.f64 (cos.f64 y) 3))
(cos.f64 y)
(pow.f64 (*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y)) 1/3)
(cbrt.f64 (pow.f64 (cos.f64 y) 3))
(cos.f64 y)
(pow.f64 (*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y)) 1/3)
(cbrt.f64 (pow.f64 (cos.f64 y) 3))
(cos.f64 y)
(pow.f64 (*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y)) 1/3)
(cbrt.f64 (pow.f64 (cos.f64 y) 3))
(cos.f64 y)
(pow.f64 (*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y)) 1/3)
(cbrt.f64 (pow.f64 (cos.f64 y) 3))
(cos.f64 y)
(pow.f64 (*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y)) 1/3)
(cbrt.f64 (pow.f64 (cos.f64 y) 3))
(cos.f64 y)
(pow.f64 (*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y)) 1/3)
(cbrt.f64 (pow.f64 (cos.f64 y) 3))
(cos.f64 y)
(pow.f64 (*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y)) 1/3)
(cbrt.f64 (pow.f64 (cos.f64 y) 3))
(cos.f64 y)
1
(+.f64 1 (*.f64 -3/2 (pow.f64 y 2)))
(+.f64 1 (*.f64 (*.f64 y y) -3/2))
(fma.f64 (*.f64 y y) -3/2 1)
(fma.f64 y (*.f64 y -3/2) 1)
(+.f64 1 (+.f64 (*.f64 7/8 (pow.f64 y 4)) (*.f64 -3/2 (pow.f64 y 2))))
(+.f64 1 (fma.f64 7/8 (pow.f64 y 4) (*.f64 (*.f64 y y) -3/2)))
(+.f64 1 (fma.f64 (pow.f64 y 4) 7/8 (*.f64 y (*.f64 y -3/2))))
(fma.f64 (pow.f64 y 4) 7/8 (fma.f64 y (*.f64 y -3/2) 1))
(fma.f64 y (*.f64 y -3/2) (fma.f64 (pow.f64 y 4) 7/8 1))
(+.f64 1 (+.f64 (*.f64 -61/240 (pow.f64 y 6)) (+.f64 (*.f64 7/8 (pow.f64 y 4)) (*.f64 -3/2 (pow.f64 y 2)))))
(+.f64 1 (fma.f64 -61/240 (pow.f64 y 6) (fma.f64 7/8 (pow.f64 y 4) (*.f64 (*.f64 y y) -3/2))))
(+.f64 1 (fma.f64 (pow.f64 y 6) -61/240 (fma.f64 (pow.f64 y 4) 7/8 (*.f64 y (*.f64 y -3/2)))))
(fma.f64 (pow.f64 y 6) -61/240 (fma.f64 (pow.f64 y 4) 7/8 (fma.f64 y (*.f64 y -3/2) 1)))
(fma.f64 (pow.f64 y 6) -61/240 (fma.f64 y (*.f64 y -3/2) (fma.f64 (pow.f64 y 4) 7/8 1)))
(*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y))
(pow.f64 (cos.f64 y) 3)
(*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y))
(pow.f64 (cos.f64 y) 3)
(*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y))
(pow.f64 (cos.f64 y) 3)
(*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y))
(pow.f64 (cos.f64 y) 3)
(*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y))
(pow.f64 (cos.f64 y) 3)
(*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y))
(pow.f64 (cos.f64 y) 3)
(*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y))
(pow.f64 (cos.f64 y) 3)
(*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y))
(pow.f64 (cos.f64 y) 3)
z
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y 2) z)) z)
(fma.f64 -1/2 (*.f64 (*.f64 y y) z) z)
(*.f64 (fma.f64 -1/2 (*.f64 y y) 1) z)
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y 2) z)) (+.f64 z (*.f64 1/24 (*.f64 (pow.f64 y 4) z))))
(+.f64 (fma.f64 -1/2 (*.f64 (*.f64 y y) z) z) (*.f64 1/24 (*.f64 (pow.f64 y 4) z)))
(fma.f64 -1/2 (*.f64 y (*.f64 y z)) (fma.f64 1/24 (*.f64 (pow.f64 y 4) z) z))
(*.f64 z (fma.f64 -1/2 (*.f64 y y) (fma.f64 1/24 (pow.f64 y 4) 1)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y 2) z)) (+.f64 z (+.f64 (*.f64 1/24 (*.f64 (pow.f64 y 4) z)) (*.f64 -1/720 (*.f64 z (pow.f64 y 6))))))
(+.f64 (fma.f64 -1/2 (*.f64 (*.f64 y y) z) z) (fma.f64 1/24 (*.f64 (pow.f64 y 4) z) (*.f64 (*.f64 -1/720 z) (pow.f64 y 6))))
(+.f64 (*.f64 (fma.f64 -1/2 (*.f64 y y) 1) z) (fma.f64 1/24 (*.f64 (pow.f64 y 4) z) (*.f64 (pow.f64 y 6) (*.f64 -1/720 z))))
(fma.f64 (fma.f64 -1/2 (*.f64 y y) 1) z (*.f64 z (fma.f64 1/24 (pow.f64 y 4) (*.f64 -1/720 (pow.f64 y 6)))))
(*.f64 z (fma.f64 -1/720 (pow.f64 y 6) (fma.f64 -1/2 (*.f64 y y) (fma.f64 1/24 (pow.f64 y 4) 1))))
(*.f64 z (pow.f64 (*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y)) 1/3))
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 y) 3)) z)
(*.f64 (cos.f64 y) z)
(*.f64 z (pow.f64 (*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y)) 1/3))
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 y) 3)) z)
(*.f64 (cos.f64 y) z)
(*.f64 z (pow.f64 (*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y)) 1/3))
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 y) 3)) z)
(*.f64 (cos.f64 y) z)
(*.f64 z (pow.f64 (*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y)) 1/3))
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 y) 3)) z)
(*.f64 (cos.f64 y) z)
(*.f64 z (pow.f64 (*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y)) 1/3))
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 y) 3)) z)
(*.f64 (cos.f64 y) z)
(*.f64 z (pow.f64 (*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y)) 1/3))
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 y) 3)) z)
(*.f64 (cos.f64 y) z)
(*.f64 z (pow.f64 (*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y)) 1/3))
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 y) 3)) z)
(*.f64 (cos.f64 y) z)
(*.f64 z (pow.f64 (*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y)) 1/3))
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 y) 3)) z)
(*.f64 (cos.f64 y) z)
(*.f64 (pow.f64 (*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y)) 1/3) z)
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 y) 3)) z)
(*.f64 (cos.f64 y) z)
(*.f64 (pow.f64 (*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y)) 1/3) z)
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 y) 3)) z)
(*.f64 (cos.f64 y) z)
(*.f64 (pow.f64 (*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y)) 1/3) z)
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 y) 3)) z)
(*.f64 (cos.f64 y) z)
(*.f64 (pow.f64 (*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y)) 1/3) z)
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 y) 3)) z)
(*.f64 (cos.f64 y) z)
(*.f64 (pow.f64 (*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y)) 1/3) z)
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 y) 3)) z)
(*.f64 (cos.f64 y) z)
(*.f64 (pow.f64 (*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y)) 1/3) z)
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 y) 3)) z)
(*.f64 (cos.f64 y) z)
(*.f64 (pow.f64 (*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y)) 1/3) z)
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 y) 3)) z)
(*.f64 (cos.f64 y) z)
(*.f64 (pow.f64 (*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y)) 1/3) z)
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 y) 3)) z)
(*.f64 (cos.f64 y) z)
(*.f64 (pow.f64 (*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y)) 1/3) z)
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 y) 3)) z)
(*.f64 (cos.f64 y) z)
(*.f64 (pow.f64 (*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y)) 1/3) z)
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 y) 3)) z)
(*.f64 (cos.f64 y) z)
(*.f64 (pow.f64 (*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y)) 1/3) z)
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 y) 3)) z)
(*.f64 (cos.f64 y) z)
(*.f64 (pow.f64 (*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y)) 1/3) z)
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 y) 3)) z)
(*.f64 (cos.f64 y) z)
(-.f64 (+.f64 1 (cos.f64 y)) 1)
(cbrt.f64 (pow.f64 (cos.f64 y) 3))
(cos.f64 y)
(*.f64 (cos.f64 y) 1)
(cbrt.f64 (pow.f64 (cos.f64 y) 3))
(cos.f64 y)
(*.f64 1 (cos.f64 y))
(cbrt.f64 (pow.f64 (cos.f64 y) 3))
(cos.f64 y)
(*.f64 (cbrt.f64 (cos.f64 y)) (pow.f64 (cbrt.f64 (cos.f64 y)) 2))
(cbrt.f64 (pow.f64 (cos.f64 y) 3))
(cos.f64 y)
(*.f64 (cbrt.f64 (cos.f64 y)) (pow.f64 (pow.f64 (cos.f64 y) 2) 1/3))
(cbrt.f64 (pow.f64 (cos.f64 y) 3))
(cos.f64 y)
(*.f64 (pow.f64 (cbrt.f64 (cos.f64 y)) 2) (cbrt.f64 (cos.f64 y)))
(cbrt.f64 (pow.f64 (cos.f64 y) 3))
(cos.f64 y)
(*.f64 (sqrt.f64 (cos.f64 y)) (sqrt.f64 (cos.f64 y)))
(cbrt.f64 (pow.f64 (cos.f64 y) 3))
(cos.f64 y)
(*.f64 (pow.f64 (pow.f64 (cos.f64 y) 2) 1/3) (cbrt.f64 (cos.f64 y)))
(cbrt.f64 (pow.f64 (cos.f64 y) 3))
(cos.f64 y)
(*.f64 (pow.f64 1 1/3) (cos.f64 y))
(cbrt.f64 (pow.f64 (cos.f64 y) 3))
(cos.f64 y)
(*.f64 (pow.f64 (pow.f64 (cos.f64 y) 3/2) 1/3) (pow.f64 (pow.f64 (cos.f64 y) 3/2) 1/3))
(cbrt.f64 (pow.f64 (cos.f64 y) 3))
(cos.f64 y)
(pow.f64 (cos.f64 y) 1)
(cbrt.f64 (pow.f64 (cos.f64 y) 3))
(cos.f64 y)
(pow.f64 (pow.f64 (cos.f64 y) 3) 1/3)
(cbrt.f64 (pow.f64 (cos.f64 y) 3))
(cos.f64 y)
(pow.f64 (cbrt.f64 (cos.f64 y)) 3)
(cbrt.f64 (pow.f64 (cos.f64 y) 3))
(cos.f64 y)
(pow.f64 (sqrt.f64 (cos.f64 y)) 2)
(cbrt.f64 (pow.f64 (cos.f64 y) 3))
(cos.f64 y)
(sqrt.f64 (pow.f64 (cos.f64 y) 2))
(cbrt.f64 (pow.f64 (cos.f64 y) 3))
(cos.f64 y)
(log.f64 (exp.f64 (cos.f64 y)))
(cbrt.f64 (pow.f64 (cos.f64 y) 3))
(cos.f64 y)
(cos.f64 y)
(cbrt.f64 (pow.f64 (cos.f64 y) 3))
(expm1.f64 (log1p.f64 (cos.f64 y)))
(cbrt.f64 (pow.f64 (cos.f64 y) 3))
(cos.f64 y)
(log1p.f64 (expm1.f64 (cos.f64 y)))
(cbrt.f64 (pow.f64 (cos.f64 y) 3))
(cos.f64 y)
(exp.f64 (log.f64 (cos.f64 y)))
(cbrt.f64 (pow.f64 (cos.f64 y) 3))
(cos.f64 y)
(-.f64 (+.f64 1 (pow.f64 (cos.f64 y) 3)) 1)
(pow.f64 (cos.f64 y) 3)
(*.f64 (cos.f64 y) (pow.f64 (cos.f64 y) 2))
(pow.f64 (cos.f64 y) 3)
(*.f64 (pow.f64 (cos.f64 y) 3) 1)
(pow.f64 (cos.f64 y) 3)
(*.f64 1 (pow.f64 (cos.f64 y) 3))
(pow.f64 (cos.f64 y) 3)
(*.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y))
(pow.f64 (cos.f64 y) 3)
(*.f64 (pow.f64 (cbrt.f64 (cos.f64 y)) 2) (*.f64 (cbrt.f64 (cos.f64 y)) (pow.f64 (cos.f64 y) 2)))
(pow.f64 (cos.f64 y) 3)
(*.f64 (sqrt.f64 (cos.f64 y)) (*.f64 (sqrt.f64 (cos.f64 y)) (pow.f64 (cos.f64 y) 2)))
(pow.f64 (cos.f64 y) 3)
(*.f64 (pow.f64 (cos.f64 y) 3/2) (pow.f64 (cos.f64 y) 3/2))
(pow.f64 (cos.f64 y) 3)
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (cos.f64 y)) 2) 3) (cos.f64 y))
(pow.f64 (cos.f64 y) 3)
(*.f64 (pow.f64 (sqrt.f64 (cos.f64 y)) 3) (pow.f64 (sqrt.f64 (cos.f64 y)) 3))
(pow.f64 (cos.f64 y) 3)
(*.f64 (*.f64 (pow.f64 (cos.f64 y) 2) 1) (cos.f64 y))
(pow.f64 (cos.f64 y) 3)
(*.f64 (*.f64 (pow.f64 (cos.f64 y) 2) (pow.f64 (cbrt.f64 (cos.f64 y)) 2)) (cbrt.f64 (cos.f64 y)))
(pow.f64 (cos.f64 y) 3)
(*.f64 (*.f64 (pow.f64 (cos.f64 y) 2) (sqrt.f64 (cos.f64 y))) (sqrt.f64 (cos.f64 y)))
(pow.f64 (cos.f64 y) 3)
(sqrt.f64 (pow.f64 (cos.f64 y) 6))
(pow.f64 (cos.f64 y) 3)
(log.f64 (exp.f64 (pow.f64 (cos.f64 y) 3)))
(pow.f64 (cos.f64 y) 3)
(cbrt.f64 (pow.f64 (pow.f64 (cos.f64 y) 3) 3))
(pow.f64 (cos.f64 y) 3)
(expm1.f64 (log1p.f64 (pow.f64 (cos.f64 y) 3)))
(pow.f64 (cos.f64 y) 3)
(log1p.f64 (expm1.f64 (pow.f64 (cos.f64 y) 3)))
(pow.f64 (cos.f64 y) 3)
(exp.f64 (*.f64 3 (log.f64 (cos.f64 y))))
(pow.f64 (cos.f64 y) 3)
(-.f64 (+.f64 1 (*.f64 (cos.f64 y) z)) 1)
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 y) 3)) z)
(*.f64 (cos.f64 y) z)
(pow.f64 (*.f64 (cos.f64 y) z) 1)
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 y) 3)) z)
(*.f64 (cos.f64 y) z)
(pow.f64 (pow.f64 (*.f64 (cos.f64 y) z) 3) 1/3)
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 y) 3)) z)
(*.f64 (cos.f64 y) z)
(pow.f64 (cbrt.f64 (*.f64 (cos.f64 y) z)) 3)
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 y) 3)) z)
(*.f64 (cos.f64 y) z)
(pow.f64 (sqrt.f64 (*.f64 (cos.f64 y) z)) 2)
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 y) 3)) z)
(*.f64 (cos.f64 y) z)
(sqrt.f64 (pow.f64 (*.f64 (cos.f64 y) z) 2))
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 y) 3)) z)
(*.f64 (cos.f64 y) z)
(log.f64 (pow.f64 (exp.f64 (cos.f64 y)) z))
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 y) 3)) z)
(*.f64 (cos.f64 y) z)
(cbrt.f64 (pow.f64 (*.f64 (cos.f64 y) z) 3))
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 y) 3)) z)
(*.f64 (cos.f64 y) z)
(expm1.f64 (log1p.f64 (*.f64 (cos.f64 y) z)))
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 y) 3)) z)
(*.f64 (cos.f64 y) z)
(log1p.f64 (expm1.f64 (*.f64 (cos.f64 y) z)))
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 y) 3)) z)
(*.f64 (cos.f64 y) z)
(exp.f64 (log.f64 (*.f64 (cos.f64 y) z)))
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 y) 3)) z)
(*.f64 (cos.f64 y) z)

localize3.0ms (0%)

Compiler

Compiled 8 to 4 computations (50% saved)

localize5.0ms (0%)

Compiler

Compiled 6 to 4 computations (33.3% saved)

localize15.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.1b
(*.f64 z (cos.f64 y))
0.1b
(pow.f64 (*.f64 z (cos.f64 y)) 3)
41.1b
(cbrt.f64 (pow.f64 (*.f64 z (cos.f64 y)) 3))
Compiler

Compiled 35 to 15 computations (57.1% saved)

localize11.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(sqrt.f64 (*.f64 z (cos.f64 y)))
0.1b
(*.f64 z (cos.f64 y))
0.2b
(pow.f64 (sqrt.f64 (*.f64 z (cos.f64 y))) 2)
Compiler

Compiled 34 to 12 computations (64.7% saved)

series4.3s (22.5%)

Counts
2 → 24
Calls

12 calls:

TimeVariablePointExpression
1.2s
z
@-inf
(pow.f64 (sqrt.f64 (*.f64 z (cos.f64 y))) 2)
996.0ms
z
@0
(pow.f64 (sqrt.f64 (*.f64 z (cos.f64 y))) 2)
876.0ms
z
@inf
(pow.f64 (sqrt.f64 (*.f64 z (cos.f64 y))) 2)
407.0ms
z
@inf
(sqrt.f64 (*.f64 z (cos.f64 y)))
403.0ms
z
@0
(sqrt.f64 (*.f64 z (cos.f64 y)))
Compiler

Compiled 338501 to 226734 computations (33% saved)

rewrite43.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
613×pow1_binary64
565×add-log-exp_binary64
565×log1p-expm1-u_binary64
565×expm1-log1p-u_binary64
551×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0814
116314
2159214
Stop Event
node limit
Counts
2 → 50
Calls
Call 1
Inputs
(pow.f64 (sqrt.f64 (*.f64 z (cos.f64 y))) 2)
(sqrt.f64 (*.f64 z (cos.f64 y)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 z (cos.f64 y))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 z (cos.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cos.f64 y) z)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 z (cos.f64 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 z (cos.f64 y))) (sqrt.f64 (*.f64 z (cos.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 z (cos.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) (pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) (*.f64 (cbrt.f64 (sqrt.f64 (*.f64 z (cos.f64 y)))) (sqrt.f64 (*.f64 z (cos.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 2) (cbrt.f64 (*.f64 z (cos.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 z) 2) (*.f64 (cbrt.f64 z) (cos.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cos.f64 y)) 2) (*.f64 (cbrt.f64 (cos.f64 y)) z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 z) (*.f64 (sqrt.f64 z) (cos.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 z) (*.f64 (sqrt.f64 (cos.f64 y)) (sqrt.f64 (*.f64 z (cos.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 z (cos.f64 y)) 1/4) (*.f64 (pow.f64 (*.f64 z (cos.f64 y)) 1/4) (sqrt.f64 (*.f64 z (cos.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cos.f64 y)) (*.f64 (sqrt.f64 (cos.f64 y)) z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (*.f64 z (cos.f64 y))) (pow.f64 (*.f64 z (cos.f64 y)) 1/4)) (pow.f64 (*.f64 z (cos.f64 y)) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 z (pow.f64 (cbrt.f64 (cos.f64 y)) 2)) (cbrt.f64 (cos.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 z (sqrt.f64 (cos.f64 y))) (sqrt.f64 (cos.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 y) (pow.f64 (cbrt.f64 z) 2)) (cbrt.f64 z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 y) (sqrt.f64 z)) (sqrt.f64 z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (*.f64 z (cos.f64 y))) (cbrt.f64 (*.f64 z (cos.f64 y)))) (cbrt.f64 (sqrt.f64 (*.f64 z (cos.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (*.f64 z (cos.f64 y))) (sqrt.f64 z)) (sqrt.f64 (cos.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 z (cos.f64 y)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 z) (cos.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 z (cos.f64 y)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 z (cos.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 z (cos.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 z (cos.f64 y))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (sqrt.f64 (*.f64 z (cos.f64 y)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 z (cos.f64 y))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (*.f64 z (cos.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) (cbrt.f64 (sqrt.f64 (*.f64 z (cos.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sqrt.f64 (*.f64 z (cos.f64 y)))) (cbrt.f64 (*.f64 z (cos.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 z) (sqrt.f64 (cos.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 z (cos.f64 y)) 1/4) (pow.f64 (*.f64 z (cos.f64 y)) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cos.f64 y)) (sqrt.f64 z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 2)) (sqrt.f64 (cbrt.f64 (*.f64 z (cos.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/2) (sqrt.f64 (*.f64 z (cos.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 2) 1/2) (pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 z (cos.f64 y)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 z (cos.f64 y))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 z (cos.f64 y)) 3/2) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 z (cos.f64 y)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 z (cos.f64 y)) 1/4) 2)))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (sqrt.f64 (*.f64 z (cos.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (sqrt.f64 (*.f64 z (cos.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 z (cos.f64 y)) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 z (cos.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 z (cos.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (sqrt.f64 (*.f64 z (cos.f64 y)))))))))

simplify49.0ms (0.3%)

Algorithm
egg-herbie
Rules
452×unswap-sqr_binary64
381×fma-def_binary64
336×fma-neg_binary64
283×log-prod_binary64
235×cube-prod_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0157809
1370758
21223686
35081657
Stop Event
node limit
Counts
74 → 88
Calls
Call 1
Inputs
(pow.f64 (sqrt.f64 z) 2)
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y 2) z)) (pow.f64 (sqrt.f64 z) 2))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y 2) z)) (+.f64 (pow.f64 (sqrt.f64 z) 2) (*.f64 (-.f64 (+.f64 (*.f64 1/24 z) (*.f64 1/16 (/.f64 (pow.f64 z 2) (pow.f64 (sqrt.f64 z) 2)))) (pow.f64 (*.f64 -1/4 (/.f64 z (sqrt.f64 z))) 2)) (pow.f64 y 4))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y 2) z)) (+.f64 (pow.f64 (sqrt.f64 z) 2) (+.f64 (*.f64 (-.f64 (+.f64 (*.f64 1/24 z) (*.f64 1/16 (/.f64 (pow.f64 z 2) (pow.f64 (sqrt.f64 z) 2)))) (pow.f64 (*.f64 -1/4 (/.f64 z (sqrt.f64 z))) 2)) (pow.f64 y 4)) (*.f64 -1/720 (*.f64 z (pow.f64 y 6))))))
(pow.f64 (sqrt.f64 (*.f64 (cos.f64 y) z)) 2)
(pow.f64 (sqrt.f64 (*.f64 (cos.f64 y) z)) 2)
(pow.f64 (sqrt.f64 (*.f64 (cos.f64 y) z)) 2)
(pow.f64 (sqrt.f64 (*.f64 (cos.f64 y) z)) 2)
(pow.f64 (sqrt.f64 (*.f64 (cos.f64 y) z)) 2)
(pow.f64 (sqrt.f64 (*.f64 (cos.f64 y) z)) 2)
(pow.f64 (sqrt.f64 (*.f64 (cos.f64 y) z)) 2)
(pow.f64 (sqrt.f64 (*.f64 (cos.f64 y) z)) 2)
(sqrt.f64 z)
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 y 2) z) (sqrt.f64 z))) (sqrt.f64 z))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (-.f64 (*.f64 1/24 z) (pow.f64 (*.f64 -1/4 (/.f64 z (sqrt.f64 z))) 2)) (pow.f64 y 4)) (sqrt.f64 z))) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 y 2) z) (sqrt.f64 z))) (sqrt.f64 z)))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (-.f64 (*.f64 1/24 z) (pow.f64 (*.f64 -1/4 (/.f64 z (sqrt.f64 z))) 2)) (pow.f64 y 4)) (sqrt.f64 z))) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 y 2) z) (sqrt.f64 z))) (+.f64 (sqrt.f64 z) (*.f64 1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/720 z) (*.f64 -1/4 (/.f64 (*.f64 (-.f64 (*.f64 1/24 z) (pow.f64 (*.f64 -1/4 (/.f64 z (sqrt.f64 z))) 2)) z) (pow.f64 (sqrt.f64 z) 2)))) (pow.f64 y 6)) (sqrt.f64 z))))))
(sqrt.f64 (*.f64 (cos.f64 y) z))
(sqrt.f64 (*.f64 (cos.f64 y) z))
(sqrt.f64 (*.f64 (cos.f64 y) z))
(sqrt.f64 (*.f64 (cos.f64 y) z))
(sqrt.f64 (*.f64 (cos.f64 y) z))
(sqrt.f64 (*.f64 (cos.f64 y) z))
(sqrt.f64 (*.f64 (cos.f64 y) z))
(sqrt.f64 (*.f64 (cos.f64 y) z))
(-.f64 (+.f64 1 (*.f64 z (cos.f64 y))) 1)
(*.f64 z (cos.f64 y))
(*.f64 (cos.f64 y) z)
(*.f64 (*.f64 z (cos.f64 y)) 1)
(*.f64 (sqrt.f64 (*.f64 z (cos.f64 y))) (sqrt.f64 (*.f64 z (cos.f64 y))))
(*.f64 1 (*.f64 z (cos.f64 y)))
(*.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) (pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 2))
(*.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) (*.f64 (cbrt.f64 (sqrt.f64 (*.f64 z (cos.f64 y)))) (sqrt.f64 (*.f64 z (cos.f64 y)))))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 2) (cbrt.f64 (*.f64 z (cos.f64 y))))
(*.f64 (pow.f64 (cbrt.f64 z) 2) (*.f64 (cbrt.f64 z) (cos.f64 y)))
(*.f64 (pow.f64 (cbrt.f64 (cos.f64 y)) 2) (*.f64 (cbrt.f64 (cos.f64 y)) z))
(*.f64 (sqrt.f64 z) (*.f64 (sqrt.f64 z) (cos.f64 y)))
(*.f64 (sqrt.f64 z) (*.f64 (sqrt.f64 (cos.f64 y)) (sqrt.f64 (*.f64 z (cos.f64 y)))))
(*.f64 (pow.f64 (*.f64 z (cos.f64 y)) 1/4) (*.f64 (pow.f64 (*.f64 z (cos.f64 y)) 1/4) (sqrt.f64 (*.f64 z (cos.f64 y)))))
(*.f64 (sqrt.f64 (cos.f64 y)) (*.f64 (sqrt.f64 (cos.f64 y)) z))
(*.f64 (*.f64 (sqrt.f64 (*.f64 z (cos.f64 y))) (pow.f64 (*.f64 z (cos.f64 y)) 1/4)) (pow.f64 (*.f64 z (cos.f64 y)) 1/4))
(*.f64 (*.f64 z (pow.f64 (cbrt.f64 (cos.f64 y)) 2)) (cbrt.f64 (cos.f64 y)))
(*.f64 (*.f64 z (sqrt.f64 (cos.f64 y))) (sqrt.f64 (cos.f64 y)))
(*.f64 (*.f64 (cos.f64 y) (pow.f64 (cbrt.f64 z) 2)) (cbrt.f64 z))
(*.f64 (*.f64 (cos.f64 y) (sqrt.f64 z)) (sqrt.f64 z))
(*.f64 (*.f64 (sqrt.f64 (*.f64 z (cos.f64 y))) (cbrt.f64 (*.f64 z (cos.f64 y)))) (cbrt.f64 (sqrt.f64 (*.f64 z (cos.f64 y)))))
(*.f64 (*.f64 (sqrt.f64 (*.f64 z (cos.f64 y))) (sqrt.f64 z)) (sqrt.f64 (cos.f64 y)))
(sqrt.f64 (pow.f64 (*.f64 z (cos.f64 y)) 2))
(log.f64 (pow.f64 (exp.f64 z) (cos.f64 y)))
(cbrt.f64 (pow.f64 (*.f64 z (cos.f64 y)) 3))
(expm1.f64 (log1p.f64 (*.f64 z (cos.f64 y))))
(log1p.f64 (expm1.f64 (*.f64 z (cos.f64 y))))
(exp.f64 (log.f64 (*.f64 z (cos.f64 y))))
(-.f64 (+.f64 1 (sqrt.f64 (*.f64 z (cos.f64 y)))) 1)
(*.f64 (sqrt.f64 (*.f64 z (cos.f64 y))) 1)
(*.f64 1 (sqrt.f64 (*.f64 z (cos.f64 y))))
(*.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) (cbrt.f64 (sqrt.f64 (*.f64 z (cos.f64 y)))))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 z (cos.f64 y)))) (cbrt.f64 (*.f64 z (cos.f64 y))))
(*.f64 (sqrt.f64 z) (sqrt.f64 (cos.f64 y)))
(*.f64 (pow.f64 (*.f64 z (cos.f64 y)) 1/4) (pow.f64 (*.f64 z (cos.f64 y)) 1/4))
(*.f64 (sqrt.f64 (cos.f64 y)) (sqrt.f64 z))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 2)) (sqrt.f64 (cbrt.f64 (*.f64 z (cos.f64 y)))))
(*.f64 (pow.f64 1 1/2) (sqrt.f64 (*.f64 z (cos.f64 y))))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 2) 1/2) (pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 1/2))
(pow.f64 (*.f64 z (cos.f64 y)) 1/2)
(pow.f64 (sqrt.f64 (*.f64 z (cos.f64 y))) 1)
(pow.f64 (pow.f64 (*.f64 z (cos.f64 y)) 3/2) 1/3)
(pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 z (cos.f64 y)))) 3)
(pow.f64 (pow.f64 (*.f64 z (cos.f64 y)) 1/4) 2)
(fabs.f64 (sqrt.f64 (*.f64 z (cos.f64 y))))
(log.f64 (exp.f64 (sqrt.f64 (*.f64 z (cos.f64 y)))))
(cbrt.f64 (pow.f64 (*.f64 z (cos.f64 y)) 3/2))
(expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 z (cos.f64 y)))))
(log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 z (cos.f64 y)))))
(exp.f64 (log.f64 (sqrt.f64 (*.f64 z (cos.f64 y)))))
Outputs
(pow.f64 (sqrt.f64 z) 2)
z
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y 2) z)) (pow.f64 (sqrt.f64 z) 2))
(fma.f64 -1/2 (*.f64 z (*.f64 y y)) (pow.f64 (sqrt.f64 z) 2))
(fma.f64 -1/2 (*.f64 (*.f64 z y) y) z)
(fma.f64 (*.f64 y y) (*.f64 z -1/2) z)
(fma.f64 z (*.f64 -1/2 (*.f64 y y)) z)
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y 2) z)) (+.f64 (pow.f64 (sqrt.f64 z) 2) (*.f64 (-.f64 (+.f64 (*.f64 1/24 z) (*.f64 1/16 (/.f64 (pow.f64 z 2) (pow.f64 (sqrt.f64 z) 2)))) (pow.f64 (*.f64 -1/4 (/.f64 z (sqrt.f64 z))) 2)) (pow.f64 y 4))))
(+.f64 (fma.f64 -1/2 (*.f64 z (*.f64 y y)) (pow.f64 (sqrt.f64 z) 2)) (*.f64 (-.f64 (fma.f64 1/24 z (*.f64 1/16 (/.f64 (*.f64 z z) (pow.f64 (sqrt.f64 z) 2)))) (pow.f64 (/.f64 (*.f64 -1/4 z) (sqrt.f64 z)) 2)) (pow.f64 y 4)))
(fma.f64 -1/2 (*.f64 (*.f64 z y) y) (fma.f64 (-.f64 (fma.f64 z 1/24 (/.f64 1/16 (/.f64 z (*.f64 z z)))) (/.f64 1/16 (/.f64 z (*.f64 z z)))) (pow.f64 y 4) z))
(fma.f64 z (*.f64 -1/2 (*.f64 y y)) (fma.f64 (fma.f64 z 1/24 0) (pow.f64 y 4) z))
(fma.f64 z (*.f64 -1/2 (*.f64 y y)) (fma.f64 (*.f64 z 1/24) (pow.f64 y 4) z))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y 2) z)) (+.f64 (pow.f64 (sqrt.f64 z) 2) (+.f64 (*.f64 (-.f64 (+.f64 (*.f64 1/24 z) (*.f64 1/16 (/.f64 (pow.f64 z 2) (pow.f64 (sqrt.f64 z) 2)))) (pow.f64 (*.f64 -1/4 (/.f64 z (sqrt.f64 z))) 2)) (pow.f64 y 4)) (*.f64 -1/720 (*.f64 z (pow.f64 y 6))))))
(+.f64 (fma.f64 -1/2 (*.f64 z (*.f64 y y)) (pow.f64 (sqrt.f64 z) 2)) (fma.f64 (-.f64 (fma.f64 1/24 z (*.f64 1/16 (/.f64 (*.f64 z z) (pow.f64 (sqrt.f64 z) 2)))) (pow.f64 (/.f64 (*.f64 -1/4 z) (sqrt.f64 z)) 2)) (pow.f64 y 4) (*.f64 (*.f64 z -1/720) (pow.f64 y 6))))
(+.f64 (fma.f64 (-.f64 (fma.f64 z 1/24 (/.f64 1/16 (/.f64 z (*.f64 z z)))) (/.f64 1/16 (/.f64 z (*.f64 z z)))) (pow.f64 y 4) (*.f64 (pow.f64 y 6) (*.f64 z -1/720))) (fma.f64 -1/2 (*.f64 (*.f64 z y) y) z))
(fma.f64 z (*.f64 -1/2 (*.f64 y y)) (fma.f64 (fma.f64 z 1/24 0) (pow.f64 y 4) (fma.f64 (pow.f64 y 6) (*.f64 z -1/720) z)))
(fma.f64 z (*.f64 -1/2 (*.f64 y y)) (fma.f64 z (*.f64 -1/720 (pow.f64 y 6)) (fma.f64 (*.f64 z 1/24) (pow.f64 y 4) z)))
(pow.f64 (sqrt.f64 (*.f64 (cos.f64 y) z)) 2)
(*.f64 z (cos.f64 y))
(pow.f64 (sqrt.f64 (*.f64 (cos.f64 y) z)) 2)
(*.f64 z (cos.f64 y))
(pow.f64 (sqrt.f64 (*.f64 (cos.f64 y) z)) 2)
(*.f64 z (cos.f64 y))
(pow.f64 (sqrt.f64 (*.f64 (cos.f64 y) z)) 2)
(*.f64 z (cos.f64 y))
(pow.f64 (sqrt.f64 (*.f64 (cos.f64 y) z)) 2)
(*.f64 z (cos.f64 y))
(pow.f64 (sqrt.f64 (*.f64 (cos.f64 y) z)) 2)
(*.f64 z (cos.f64 y))
(pow.f64 (sqrt.f64 (*.f64 (cos.f64 y) z)) 2)
(*.f64 z (cos.f64 y))
(pow.f64 (sqrt.f64 (*.f64 (cos.f64 y) z)) 2)
(*.f64 z (cos.f64 y))
(sqrt.f64 z)
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 y 2) z) (sqrt.f64 z))) (sqrt.f64 z))
(fma.f64 -1/4 (/.f64 (*.f64 y y) (/.f64 (sqrt.f64 z) z)) (sqrt.f64 z))
(fma.f64 -1/4 (/.f64 z (/.f64 (sqrt.f64 z) (*.f64 y y))) (sqrt.f64 z))
(fma.f64 -1/4 (*.f64 z (/.f64 y (/.f64 (sqrt.f64 z) y))) (sqrt.f64 z))
(fma.f64 -1/4 (*.f64 (sqrt.f64 z) (*.f64 y y)) (sqrt.f64 z))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (-.f64 (*.f64 1/24 z) (pow.f64 (*.f64 -1/4 (/.f64 z (sqrt.f64 z))) 2)) (pow.f64 y 4)) (sqrt.f64 z))) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 y 2) z) (sqrt.f64 z))) (sqrt.f64 z)))
(fma.f64 1/2 (/.f64 (-.f64 (*.f64 z 1/24) (pow.f64 (/.f64 (*.f64 -1/4 z) (sqrt.f64 z)) 2)) (/.f64 (sqrt.f64 z) (pow.f64 y 4))) (fma.f64 -1/4 (/.f64 (*.f64 y y) (/.f64 (sqrt.f64 z) z)) (sqrt.f64 z)))
(fma.f64 1/2 (/.f64 (pow.f64 y 4) (/.f64 (sqrt.f64 z) (-.f64 (*.f64 z 1/24) (/.f64 1/16 (/.f64 z (*.f64 z z)))))) (fma.f64 -1/4 (/.f64 z (/.f64 (sqrt.f64 z) (*.f64 y y))) (sqrt.f64 z)))
(fma.f64 1/2 (*.f64 (pow.f64 y 4) (/.f64 (fma.f64 z 1/24 (*.f64 z -1/16)) (sqrt.f64 z))) (fma.f64 -1/4 (*.f64 z (/.f64 y (/.f64 (sqrt.f64 z) y))) (sqrt.f64 z)))
(fma.f64 -1/4 (*.f64 (sqrt.f64 z) (*.f64 y y)) (fma.f64 1/2 (*.f64 (pow.f64 y 4) (/.f64 (*.f64 z -1/48) (sqrt.f64 z))) (sqrt.f64 z)))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (-.f64 (*.f64 1/24 z) (pow.f64 (*.f64 -1/4 (/.f64 z (sqrt.f64 z))) 2)) (pow.f64 y 4)) (sqrt.f64 z))) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 y 2) z) (sqrt.f64 z))) (+.f64 (sqrt.f64 z) (*.f64 1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/720 z) (*.f64 -1/4 (/.f64 (*.f64 (-.f64 (*.f64 1/24 z) (pow.f64 (*.f64 -1/4 (/.f64 z (sqrt.f64 z))) 2)) z) (pow.f64 (sqrt.f64 z) 2)))) (pow.f64 y 6)) (sqrt.f64 z))))))
(fma.f64 1/2 (/.f64 (-.f64 (*.f64 z 1/24) (pow.f64 (/.f64 (*.f64 -1/4 z) (sqrt.f64 z)) 2)) (/.f64 (sqrt.f64 z) (pow.f64 y 4))) (+.f64 (fma.f64 -1/4 (/.f64 (*.f64 y y) (/.f64 (sqrt.f64 z) z)) (sqrt.f64 z)) (*.f64 1/2 (/.f64 (+.f64 (*.f64 z -1/720) (*.f64 1/4 (/.f64 (-.f64 (*.f64 z 1/24) (pow.f64 (/.f64 (*.f64 -1/4 z) (sqrt.f64 z)) 2)) (/.f64 (pow.f64 (sqrt.f64 z) 2) z)))) (/.f64 (sqrt.f64 z) (pow.f64 y 6))))))
(fma.f64 1/2 (/.f64 (pow.f64 y 4) (/.f64 (sqrt.f64 z) (-.f64 (*.f64 z 1/24) (/.f64 1/16 (/.f64 z (*.f64 z z)))))) (fma.f64 -1/4 (/.f64 z (/.f64 (sqrt.f64 z) (*.f64 y y))) (fma.f64 1/2 (/.f64 (fma.f64 z -1/720 (*.f64 (*.f64 (/.f64 (-.f64 (*.f64 z 1/24) (/.f64 1/16 (/.f64 z (*.f64 z z)))) z) z) 1/4)) (/.f64 (sqrt.f64 z) (pow.f64 y 6))) (sqrt.f64 z))))
(fma.f64 1/2 (*.f64 (pow.f64 y 4) (/.f64 (fma.f64 z 1/24 (*.f64 z -1/16)) (sqrt.f64 z))) (fma.f64 -1/4 (*.f64 z (/.f64 y (/.f64 (sqrt.f64 z) y))) (fma.f64 1/2 (*.f64 (pow.f64 y 6) (/.f64 (fma.f64 z -1/720 (*.f64 (+.f64 (/.f64 z 24) (*.f64 z -1/16)) 1/4)) (sqrt.f64 z))) (sqrt.f64 z))))
(+.f64 (fma.f64 -1/4 (*.f64 (sqrt.f64 z) (*.f64 y y)) (sqrt.f64 z)) (*.f64 (/.f64 1/2 (sqrt.f64 z)) (+.f64 (*.f64 (pow.f64 y 4) (*.f64 z -1/48)) (*.f64 (pow.f64 y 6) (fma.f64 z -1/720 (*.f64 (*.f64 z -1/48) 1/4))))))
(sqrt.f64 (*.f64 (cos.f64 y) z))
(sqrt.f64 (*.f64 z (cos.f64 y)))
(sqrt.f64 (*.f64 (cos.f64 y) z))
(sqrt.f64 (*.f64 z (cos.f64 y)))
(sqrt.f64 (*.f64 (cos.f64 y) z))
(sqrt.f64 (*.f64 z (cos.f64 y)))
(sqrt.f64 (*.f64 (cos.f64 y) z))
(sqrt.f64 (*.f64 z (cos.f64 y)))
(sqrt.f64 (*.f64 (cos.f64 y) z))
(sqrt.f64 (*.f64 z (cos.f64 y)))
(sqrt.f64 (*.f64 (cos.f64 y) z))
(sqrt.f64 (*.f64 z (cos.f64 y)))
(sqrt.f64 (*.f64 (cos.f64 y) z))
(sqrt.f64 (*.f64 z (cos.f64 y)))
(sqrt.f64 (*.f64 (cos.f64 y) z))
(sqrt.f64 (*.f64 z (cos.f64 y)))
(-.f64 (+.f64 1 (*.f64 z (cos.f64 y))) 1)
(*.f64 z (cos.f64 y))
(*.f64 z (cos.f64 y))
(*.f64 (cos.f64 y) z)
(*.f64 z (cos.f64 y))
(*.f64 (*.f64 z (cos.f64 y)) 1)
(*.f64 z (cos.f64 y))
(*.f64 (sqrt.f64 (*.f64 z (cos.f64 y))) (sqrt.f64 (*.f64 z (cos.f64 y))))
(*.f64 z (cos.f64 y))
(*.f64 1 (*.f64 z (cos.f64 y)))
(*.f64 z (cos.f64 y))
(*.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) (pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 2))
(*.f64 z (cos.f64 y))
(*.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) (*.f64 (cbrt.f64 (sqrt.f64 (*.f64 z (cos.f64 y)))) (sqrt.f64 (*.f64 z (cos.f64 y)))))
(*.f64 z (cos.f64 y))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 2) (cbrt.f64 (*.f64 z (cos.f64 y))))
(*.f64 z (cos.f64 y))
(*.f64 (pow.f64 (cbrt.f64 z) 2) (*.f64 (cbrt.f64 z) (cos.f64 y)))
(*.f64 z (cos.f64 y))
(*.f64 (pow.f64 (cbrt.f64 (cos.f64 y)) 2) (*.f64 (cbrt.f64 (cos.f64 y)) z))
(*.f64 z (cos.f64 y))
(*.f64 (sqrt.f64 z) (*.f64 (sqrt.f64 z) (cos.f64 y)))
(*.f64 z (cos.f64 y))
(*.f64 (sqrt.f64 z) (*.f64 (sqrt.f64 (cos.f64 y)) (sqrt.f64 (*.f64 z (cos.f64 y)))))
(*.f64 (sqrt.f64 z) (*.f64 (sqrt.f64 (*.f64 z (cos.f64 y))) (sqrt.f64 (cos.f64 y))))
(*.f64 (sqrt.f64 (*.f64 z (cos.f64 y))) (*.f64 (sqrt.f64 z) (sqrt.f64 (cos.f64 y))))
(*.f64 (pow.f64 (*.f64 z (cos.f64 y)) 1/4) (*.f64 (pow.f64 (*.f64 z (cos.f64 y)) 1/4) (sqrt.f64 (*.f64 z (cos.f64 y)))))
(*.f64 z (cos.f64 y))
(*.f64 (sqrt.f64 (cos.f64 y)) (*.f64 (sqrt.f64 (cos.f64 y)) z))
(*.f64 z (cos.f64 y))
(*.f64 (*.f64 (sqrt.f64 (*.f64 z (cos.f64 y))) (pow.f64 (*.f64 z (cos.f64 y)) 1/4)) (pow.f64 (*.f64 z (cos.f64 y)) 1/4))
(*.f64 z (cos.f64 y))
(*.f64 (*.f64 z (pow.f64 (cbrt.f64 (cos.f64 y)) 2)) (cbrt.f64 (cos.f64 y)))
(*.f64 z (cos.f64 y))
(*.f64 (*.f64 z (sqrt.f64 (cos.f64 y))) (sqrt.f64 (cos.f64 y)))
(*.f64 z (cos.f64 y))
(*.f64 (*.f64 (cos.f64 y) (pow.f64 (cbrt.f64 z) 2)) (cbrt.f64 z))
(*.f64 z (cos.f64 y))
(*.f64 (*.f64 (cos.f64 y) (sqrt.f64 z)) (sqrt.f64 z))
(*.f64 z (cos.f64 y))
(*.f64 (*.f64 (sqrt.f64 (*.f64 z (cos.f64 y))) (cbrt.f64 (*.f64 z (cos.f64 y)))) (cbrt.f64 (sqrt.f64 (*.f64 z (cos.f64 y)))))
(*.f64 z (cos.f64 y))
(*.f64 (*.f64 (sqrt.f64 (*.f64 z (cos.f64 y))) (sqrt.f64 z)) (sqrt.f64 (cos.f64 y)))
(*.f64 (sqrt.f64 z) (*.f64 (sqrt.f64 (*.f64 z (cos.f64 y))) (sqrt.f64 (cos.f64 y))))
(*.f64 (sqrt.f64 (*.f64 z (cos.f64 y))) (*.f64 (sqrt.f64 z) (sqrt.f64 (cos.f64 y))))
(sqrt.f64 (pow.f64 (*.f64 z (cos.f64 y)) 2))
(*.f64 z (cos.f64 y))
(log.f64 (pow.f64 (exp.f64 z) (cos.f64 y)))
(*.f64 z (cos.f64 y))
(cbrt.f64 (pow.f64 (*.f64 z (cos.f64 y)) 3))
(*.f64 z (cos.f64 y))
(expm1.f64 (log1p.f64 (*.f64 z (cos.f64 y))))
(*.f64 z (cos.f64 y))
(log1p.f64 (expm1.f64 (*.f64 z (cos.f64 y))))
(*.f64 z (cos.f64 y))
(exp.f64 (log.f64 (*.f64 z (cos.f64 y))))
(*.f64 z (cos.f64 y))
(-.f64 (+.f64 1 (sqrt.f64 (*.f64 z (cos.f64 y)))) 1)
(sqrt.f64 (*.f64 z (cos.f64 y)))
(*.f64 (sqrt.f64 (*.f64 z (cos.f64 y))) 1)
(sqrt.f64 (*.f64 z (cos.f64 y)))
(*.f64 1 (sqrt.f64 (*.f64 z (cos.f64 y))))
(sqrt.f64 (*.f64 z (cos.f64 y)))
(*.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) (cbrt.f64 (sqrt.f64 (*.f64 z (cos.f64 y)))))
(sqrt.f64 (*.f64 z (cos.f64 y)))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 z (cos.f64 y)))) (cbrt.f64 (*.f64 z (cos.f64 y))))
(sqrt.f64 (*.f64 z (cos.f64 y)))
(*.f64 (sqrt.f64 z) (sqrt.f64 (cos.f64 y)))
(*.f64 (pow.f64 (*.f64 z (cos.f64 y)) 1/4) (pow.f64 (*.f64 z (cos.f64 y)) 1/4))
(sqrt.f64 (*.f64 z (cos.f64 y)))
(*.f64 (sqrt.f64 (cos.f64 y)) (sqrt.f64 z))
(*.f64 (sqrt.f64 z) (sqrt.f64 (cos.f64 y)))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 2)) (sqrt.f64 (cbrt.f64 (*.f64 z (cos.f64 y)))))
(sqrt.f64 (*.f64 z (cos.f64 y)))
(*.f64 (pow.f64 1 1/2) (sqrt.f64 (*.f64 z (cos.f64 y))))
(sqrt.f64 (*.f64 z (cos.f64 y)))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 2) 1/2) (pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 1/2))
(sqrt.f64 (*.f64 z (cos.f64 y)))
(pow.f64 (*.f64 z (cos.f64 y)) 1/2)
(sqrt.f64 (*.f64 z (cos.f64 y)))
(pow.f64 (sqrt.f64 (*.f64 z (cos.f64 y))) 1)
(sqrt.f64 (*.f64 z (cos.f64 y)))
(pow.f64 (pow.f64 (*.f64 z (cos.f64 y)) 3/2) 1/3)
(sqrt.f64 (*.f64 z (cos.f64 y)))
(pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 z (cos.f64 y)))) 3)
(sqrt.f64 (*.f64 z (cos.f64 y)))
(pow.f64 (pow.f64 (*.f64 z (cos.f64 y)) 1/4) 2)
(sqrt.f64 (*.f64 z (cos.f64 y)))
(fabs.f64 (sqrt.f64 (*.f64 z (cos.f64 y))))
(sqrt.f64 (*.f64 z (cos.f64 y)))
(log.f64 (exp.f64 (sqrt.f64 (*.f64 z (cos.f64 y)))))
(sqrt.f64 (*.f64 z (cos.f64 y)))
(cbrt.f64 (pow.f64 (*.f64 z (cos.f64 y)) 3/2))
(sqrt.f64 (*.f64 z (cos.f64 y)))
(expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 z (cos.f64 y)))))
(sqrt.f64 (*.f64 z (cos.f64 y)))
(log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 z (cos.f64 y)))))
(sqrt.f64 (*.f64 z (cos.f64 y)))
(exp.f64 (log.f64 (sqrt.f64 (*.f64 z (cos.f64 y)))))
(sqrt.f64 (*.f64 z (cos.f64 y)))

eval124.0ms (0.7%)

Compiler

Compiled 7738 to 4288 computations (44.6% saved)

prune69.0ms (0.4%)

Pruning

14 alts after pruning (9 fresh and 5 done)

PrunedKeptTotal
New3825387
Fresh347
Picked101
Done156
Total38714401
Error
0b
Counts
401 → 14
Alt Table
Click to see full alt table
StatusErrorProgram
0.1b
(+.f64 (+.f64 x (sin.f64 y)) (*.f64 (-.f64 (+.f64 1 (cos.f64 y)) 1) z))
0.1b
(+.f64 (+.f64 x (sin.f64 y)) (*.f64 (log1p.f64 (expm1.f64 (cos.f64 y))) z))
11.4b
(+.f64 (+.f64 x (sin.f64 y)) z)
26.3b
(+.f64 (sin.f64 y) (*.f64 z (cos.f64 y)))
45.8b
(+.f64 z y)
9.7b
(+.f64 x (pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 3))
9.7b
(+.f64 x (*.f64 (pow.f64 (cbrt.f64 z) 2) (*.f64 (cbrt.f64 z) (cos.f64 y))))
37.7b
(+.f64 x (*.f64 (*.f64 (cos.f64 y) (sqrt.f64 z)) (sqrt.f64 z)))
9.2b
(+.f64 x (*.f64 (cbrt.f64 (pow.f64 (cos.f64 y) 3)) z))
32.9b
(+.f64 x (cbrt.f64 (pow.f64 (*.f64 z (cos.f64 y)) 3)))
20.5b
(+.f64 x z)
35.2b
(*.f64 (cos.f64 y) z)
53.3b
(sin.f64 y)
46.5b
z
Compiler

Compiled 236 to 167 computations (29.2% saved)

localize15.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(+.f64 x (sin.f64 y))
0.1b
(*.f64 (log1p.f64 (expm1.f64 (cos.f64 y))) z)
0.2b
(log1p.f64 (expm1.f64 (cos.f64 y)))
0.6b
(expm1.f64 (cos.f64 y))
Compiler

Compiled 38 to 10 computations (73.7% saved)

series16.0ms (0.1%)

Counts
3 → 48
Calls

12 calls:

TimeVariablePointExpression
3.0ms
y
@-inf
(expm1.f64 (cos.f64 y))
2.0ms
y
@0
(expm1.f64 (cos.f64 y))
1.0ms
y
@0
(log1p.f64 (expm1.f64 (cos.f64 y)))
1.0ms
y
@inf
(expm1.f64 (cos.f64 y))
1.0ms
z
@0
(*.f64 (log1p.f64 (expm1.f64 (cos.f64 y))) z)
Compiler

Compiled 603 to 491 computations (18.6% saved)

rewrite45.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
543×pow1_binary64
518×add-sqr-sqrt_binary64
498×expm1-log1p-u_binary64
497×add-log-exp_binary64
497×log1p-expm1-u_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0714
111914
2135614
Stop Event
node limit
Counts
3 → 45
Calls
Call 1
Inputs
(expm1.f64 (cos.f64 y))
(log1p.f64 (expm1.f64 (cos.f64 y)))
(*.f64 (log1p.f64 (expm1.f64 (cos.f64 y))) z)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (exp.f64 (cos.f64 y)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (cos.f64 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (expm1.f64 (cos.f64 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (expm1.f64 (cos.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (expm1.f64 (cos.f64 y))) (pow.f64 (cbrt.f64 (expm1.f64 (cos.f64 y))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (expm1.f64 (cos.f64 y))) 2) (cbrt.f64 (expm1.f64 (cos.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (expm1.f64 (cos.f64 y))) (sqrt.f64 (expm1.f64 (cos.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (exp.f64 (cos.f64 y)) 3) 1) (+.f64 (*.f64 (exp.f64 (cos.f64 y)) (exp.f64 (cos.f64 y))) (+.f64 1 (*.f64 (exp.f64 (cos.f64 y)) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (exp.f64 (cos.f64 y)) (exp.f64 (cos.f64 y))) 1) (+.f64 (exp.f64 (cos.f64 y)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (expm1.f64 (cos.f64 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (expm1.f64 (cos.f64 y)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (expm1.f64 (cos.f64 y))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (expm1.f64 (cos.f64 y))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (expm1.f64 (cos.f64 y)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (expm1.f64 (cos.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (expm1.f64 (cos.f64 y)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (expm1.f64 (cos.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (expm1.f64 (cos.f64 y))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (cos.f64 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cos.f64 y) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (cos.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cos.f64 y)) (pow.f64 (cbrt.f64 (cos.f64 y)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cos.f64 y)) 2) (cbrt.f64 (cos.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cos.f64 y)) (sqrt.f64 (cos.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cos.f64 y) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cos.f64 y) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (cos.f64 y)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (cos.f64 y)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (cos.f64 y) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (cos.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (cos.f64 y) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cos.f64 y)))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (cos.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (cos.f64 y)))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 (cos.f64 y) z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (cos.f64 y) z) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (cos.f64 y) z) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (cos.f64 y) z)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (cos.f64 y) z)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (cos.f64 y) z) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 z) (cos.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (cos.f64 y) z) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (cos.f64 y) z)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (cos.f64 y) z)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (cos.f64 y) z)))))))

simplify46.0ms (0.2%)

Algorithm
egg-herbie
Rules
497×fma-def_binary64
480×log-prod_binary64
431×unswap-sqr_binary64
419×times-frac_binary64
259×fma-neg_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0137628
1325614
21230593
35145591
Stop Event
node limit
Counts
93 → 93
Calls
Call 1
Inputs
(-.f64 (E.f64) 1)
(-.f64 (+.f64 (E.f64) (*.f64 -1/2 (*.f64 (E.f64) (pow.f64 y 2)))) 1)
(-.f64 (+.f64 (E.f64) (+.f64 (*.f64 -1/2 (*.f64 (E.f64) (pow.f64 y 2))) (*.f64 1/6 (*.f64 (E.f64) (pow.f64 y 4))))) 1)
(-.f64 (+.f64 (E.f64) (+.f64 (*.f64 -1/2 (*.f64 (E.f64) (pow.f64 y 2))) (+.f64 (*.f64 -31/720 (*.f64 (E.f64) (pow.f64 y 6))) (*.f64 1/6 (*.f64 (E.f64) (pow.f64 y 4)))))) 1)
(-.f64 (exp.f64 (cos.f64 y)) 1)
(-.f64 (exp.f64 (cos.f64 y)) 1)
(-.f64 (exp.f64 (cos.f64 y)) 1)
(-.f64 (exp.f64 (cos.f64 y)) 1)
(-.f64 (exp.f64 (cos.f64 y)) 1)
(-.f64 (exp.f64 (cos.f64 y)) 1)
(-.f64 (exp.f64 (cos.f64 y)) 1)
(-.f64 (exp.f64 (cos.f64 y)) 1)
1
(+.f64 1 (*.f64 -1/2 (pow.f64 y 2)))
(+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 y 2)) (*.f64 1/24 (pow.f64 y 4))))
(+.f64 (*.f64 -1/720 (pow.f64 y 6)) (+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 y 2)) (*.f64 1/24 (pow.f64 y 4)))))
(cos.f64 y)
(cos.f64 y)
(cos.f64 y)
(cos.f64 y)
(cos.f64 y)
(cos.f64 y)
(cos.f64 y)
(cos.f64 y)
z
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y 2) z)) z)
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y 2) z)) (+.f64 z (*.f64 1/24 (*.f64 (pow.f64 y 4) z))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y 2) z)) (+.f64 z (+.f64 (*.f64 1/24 (*.f64 (pow.f64 y 4) z)) (*.f64 -1/720 (*.f64 z (pow.f64 y 6))))))
(*.f64 z (cos.f64 y))
(*.f64 z (cos.f64 y))
(*.f64 z (cos.f64 y))
(*.f64 z (cos.f64 y))
(*.f64 z (cos.f64 y))
(*.f64 z (cos.f64 y))
(*.f64 z (cos.f64 y))
(*.f64 z (cos.f64 y))
(*.f64 (cos.f64 y) z)
(*.f64 (cos.f64 y) z)
(*.f64 (cos.f64 y) z)
(*.f64 (cos.f64 y) z)
(*.f64 (cos.f64 y) z)
(*.f64 (cos.f64 y) z)
(*.f64 (cos.f64 y) z)
(*.f64 (cos.f64 y) z)
(*.f64 (cos.f64 y) z)
(*.f64 (cos.f64 y) z)
(*.f64 (cos.f64 y) z)
(*.f64 (cos.f64 y) z)
(+.f64 (exp.f64 (cos.f64 y)) -1)
(-.f64 (exp.f64 (cos.f64 y)) 1)
(*.f64 (expm1.f64 (cos.f64 y)) 1)
(*.f64 1 (expm1.f64 (cos.f64 y)))
(*.f64 (cbrt.f64 (expm1.f64 (cos.f64 y))) (pow.f64 (cbrt.f64 (expm1.f64 (cos.f64 y))) 2))
(*.f64 (pow.f64 (cbrt.f64 (expm1.f64 (cos.f64 y))) 2) (cbrt.f64 (expm1.f64 (cos.f64 y))))
(*.f64 (sqrt.f64 (expm1.f64 (cos.f64 y))) (sqrt.f64 (expm1.f64 (cos.f64 y))))
(/.f64 (-.f64 (pow.f64 (exp.f64 (cos.f64 y)) 3) 1) (+.f64 (*.f64 (exp.f64 (cos.f64 y)) (exp.f64 (cos.f64 y))) (+.f64 1 (*.f64 (exp.f64 (cos.f64 y)) 1))))
(/.f64 (-.f64 (*.f64 (exp.f64 (cos.f64 y)) (exp.f64 (cos.f64 y))) 1) (+.f64 (exp.f64 (cos.f64 y)) 1))
(pow.f64 (expm1.f64 (cos.f64 y)) 1)
(pow.f64 (pow.f64 (expm1.f64 (cos.f64 y)) 3) 1/3)
(pow.f64 (cbrt.f64 (expm1.f64 (cos.f64 y))) 3)
(pow.f64 (sqrt.f64 (expm1.f64 (cos.f64 y))) 2)
(sqrt.f64 (pow.f64 (expm1.f64 (cos.f64 y)) 2))
(log.f64 (exp.f64 (expm1.f64 (cos.f64 y))))
(cbrt.f64 (pow.f64 (expm1.f64 (cos.f64 y)) 3))
(log1p.f64 (expm1.f64 (expm1.f64 (cos.f64 y))))
(exp.f64 (log.f64 (expm1.f64 (cos.f64 y))))
(-.f64 (+.f64 1 (cos.f64 y)) 1)
(*.f64 (cos.f64 y) 1)
(*.f64 1 (cos.f64 y))
(*.f64 (cbrt.f64 (cos.f64 y)) (pow.f64 (cbrt.f64 (cos.f64 y)) 2))
(*.f64 (pow.f64 (cbrt.f64 (cos.f64 y)) 2) (cbrt.f64 (cos.f64 y)))
(*.f64 (sqrt.f64 (cos.f64 y)) (sqrt.f64 (cos.f64 y)))
(pow.f64 (cos.f64 y) 1)
(pow.f64 (pow.f64 (cos.f64 y) 3) 1/3)
(pow.f64 (cbrt.f64 (cos.f64 y)) 3)
(pow.f64 (sqrt.f64 (cos.f64 y)) 2)
(sqrt.f64 (pow.f64 (cos.f64 y) 2))
(log.f64 (exp.f64 (cos.f64 y)))
(cbrt.f64 (pow.f64 (cos.f64 y) 3))
(cos.f64 y)
(expm1.f64 (log1p.f64 (cos.f64 y)))
(exp.f64 (log.f64 (cos.f64 y)))
(-.f64 (+.f64 1 (*.f64 (cos.f64 y) z)) 1)
(pow.f64 (*.f64 (cos.f64 y) z) 1)
(pow.f64 (pow.f64 (*.f64 (cos.f64 y) z) 3) 1/3)
(pow.f64 (cbrt.f64 (*.f64 (cos.f64 y) z)) 3)
(pow.f64 (sqrt.f64 (*.f64 (cos.f64 y) z)) 2)
(sqrt.f64 (pow.f64 (*.f64 (cos.f64 y) z) 2))
(log.f64 (pow.f64 (exp.f64 z) (cos.f64 y)))
(cbrt.f64 (pow.f64 (*.f64 (cos.f64 y) z) 3))
(expm1.f64 (log1p.f64 (*.f64 (cos.f64 y) z)))
(log1p.f64 (expm1.f64 (*.f64 (cos.f64 y) z)))
(exp.f64 (log.f64 (*.f64 (cos.f64 y) z)))
Outputs
(-.f64 (E.f64) 1)
(+.f64 (E.f64) -1)
(expm1.f64 1)
(-.f64 (+.f64 (E.f64) (*.f64 -1/2 (*.f64 (E.f64) (pow.f64 y 2)))) 1)
(+.f64 (E.f64) (-.f64 (*.f64 (*.f64 -1/2 (E.f64)) (*.f64 y y)) 1))
(+.f64 (*.f64 (E.f64) (*.f64 -1/2 (*.f64 y y))) (expm1.f64 1))
(fma.f64 (E.f64) (*.f64 -1/2 (*.f64 y y)) (expm1.f64 1))
(fma.f64 (fma.f64 -1/2 (*.f64 y y) 1) (E.f64) -1)
(-.f64 (+.f64 (E.f64) (+.f64 (*.f64 -1/2 (*.f64 (E.f64) (pow.f64 y 2))) (*.f64 1/6 (*.f64 (E.f64) (pow.f64 y 4))))) 1)
(+.f64 (E.f64) (-.f64 (fma.f64 -1/2 (*.f64 (E.f64) (*.f64 y y)) (*.f64 1/6 (*.f64 (E.f64) (pow.f64 y 4)))) 1))
(+.f64 (fma.f64 -1/2 (*.f64 (E.f64) (*.f64 y y)) (*.f64 (*.f64 1/6 (pow.f64 y 4)) (E.f64))) (expm1.f64 1))
(+.f64 (expm1.f64 1) (*.f64 (E.f64) (+.f64 (*.f64 -1/2 (*.f64 y y)) (*.f64 1/6 (pow.f64 y 4)))))
(+.f64 (E.f64) (fma.f64 (E.f64) (+.f64 (*.f64 1/6 (pow.f64 y 4)) (*.f64 -1/2 (*.f64 y y))) -1))
(-.f64 (+.f64 (E.f64) (+.f64 (*.f64 -1/2 (*.f64 (E.f64) (pow.f64 y 2))) (+.f64 (*.f64 -31/720 (*.f64 (E.f64) (pow.f64 y 6))) (*.f64 1/6 (*.f64 (E.f64) (pow.f64 y 4)))))) 1)
(+.f64 (E.f64) (-.f64 (fma.f64 -1/2 (*.f64 (E.f64) (*.f64 y y)) (fma.f64 -31/720 (*.f64 (E.f64) (pow.f64 y 6)) (*.f64 1/6 (*.f64 (E.f64) (pow.f64 y 4))))) 1))
(+.f64 (fma.f64 -1/2 (*.f64 (E.f64) (*.f64 y y)) (fma.f64 1/6 (*.f64 (E.f64) (pow.f64 y 4)) (*.f64 (E.f64) (*.f64 (pow.f64 y 6) -31/720)))) (expm1.f64 1))
(+.f64 (expm1.f64 1) (fma.f64 (E.f64) (*.f64 -1/2 (*.f64 y y)) (*.f64 (E.f64) (+.f64 (*.f64 1/6 (pow.f64 y 4)) (*.f64 -31/720 (pow.f64 y 6))))))
(+.f64 (*.f64 (fma.f64 -1/2 (*.f64 y y) 1) (E.f64)) (fma.f64 (E.f64) (+.f64 (*.f64 1/6 (pow.f64 y 4)) (*.f64 -31/720 (pow.f64 y 6))) -1))
(-.f64 (exp.f64 (cos.f64 y)) 1)
(expm1.f64 (cos.f64 y))
(-.f64 (exp.f64 (cos.f64 y)) 1)
(expm1.f64 (cos.f64 y))
(-.f64 (exp.f64 (cos.f64 y)) 1)
(expm1.f64 (cos.f64 y))
(-.f64 (exp.f64 (cos.f64 y)) 1)
(expm1.f64 (cos.f64 y))
(-.f64 (exp.f64 (cos.f64 y)) 1)
(expm1.f64 (cos.f64 y))
(-.f64 (exp.f64 (cos.f64 y)) 1)
(expm1.f64 (cos.f64 y))
(-.f64 (exp.f64 (cos.f64 y)) 1)
(expm1.f64 (cos.f64 y))
(-.f64 (exp.f64 (cos.f64 y)) 1)
(expm1.f64 (cos.f64 y))
1
(+.f64 1 (*.f64 -1/2 (pow.f64 y 2)))
(+.f64 1 (*.f64 -1/2 (*.f64 y y)))
(fma.f64 -1/2 (*.f64 y y) 1)
(+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 y 2)) (*.f64 1/24 (pow.f64 y 4))))
(+.f64 1 (fma.f64 -1/2 (*.f64 y y) (*.f64 (pow.f64 y 4) 1/24)))
(+.f64 1 (fma.f64 (pow.f64 y 4) 1/24 (*.f64 -1/2 (*.f64 y y))))
(fma.f64 (pow.f64 y 4) 1/24 (fma.f64 -1/2 (*.f64 y y) 1))
(+.f64 (*.f64 -1/720 (pow.f64 y 6)) (+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 y 2)) (*.f64 1/24 (pow.f64 y 4)))))
(fma.f64 -1/720 (pow.f64 y 6) (+.f64 1 (fma.f64 -1/2 (*.f64 y y) (*.f64 (pow.f64 y 4) 1/24))))
(+.f64 (fma.f64 (pow.f64 y 4) 1/24 (*.f64 -1/2 (*.f64 y y))) (fma.f64 (pow.f64 y 6) -1/720 1))
(fma.f64 (pow.f64 y 6) -1/720 (fma.f64 (pow.f64 y 4) 1/24 (fma.f64 -1/2 (*.f64 y y) 1)))
(cos.f64 y)
(cos.f64 y)
(cos.f64 y)
(cos.f64 y)
(cos.f64 y)
(cos.f64 y)
(cos.f64 y)
(cos.f64 y)
z
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y 2) z)) z)
(fma.f64 -1/2 (*.f64 (*.f64 y y) z) z)
(*.f64 (fma.f64 -1/2 (*.f64 y y) 1) z)
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y 2) z)) (+.f64 z (*.f64 1/24 (*.f64 (pow.f64 y 4) z))))
(+.f64 (fma.f64 -1/2 (*.f64 (*.f64 y y) z) z) (*.f64 1/24 (*.f64 (pow.f64 y 4) z)))
(fma.f64 -1/2 (*.f64 y (*.f64 y z)) (fma.f64 1/24 (*.f64 (pow.f64 y 4) z) z))
(*.f64 z (fma.f64 (pow.f64 y 4) 1/24 (fma.f64 -1/2 (*.f64 y y) 1)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y 2) z)) (+.f64 z (+.f64 (*.f64 1/24 (*.f64 (pow.f64 y 4) z)) (*.f64 -1/720 (*.f64 z (pow.f64 y 6))))))
(+.f64 (fma.f64 -1/2 (*.f64 (*.f64 y y) z) z) (fma.f64 1/24 (*.f64 (pow.f64 y 4) z) (*.f64 (*.f64 -1/720 z) (pow.f64 y 6))))
(+.f64 (*.f64 (fma.f64 -1/2 (*.f64 y y) 1) z) (fma.f64 1/24 (*.f64 (pow.f64 y 4) z) (*.f64 (pow.f64 y 6) (*.f64 -1/720 z))))
(fma.f64 (fma.f64 -1/2 (*.f64 y y) 1) z (*.f64 z (fma.f64 (pow.f64 y 4) 1/24 (*.f64 (pow.f64 y 6) -1/720))))
(*.f64 z (cos.f64 y))
(*.f64 (cos.f64 y) z)
(*.f64 z (cos.f64 y))
(*.f64 (cos.f64 y) z)
(*.f64 z (cos.f64 y))
(*.f64 (cos.f64 y) z)
(*.f64 z (cos.f64 y))
(*.f64 (cos.f64 y) z)
(*.f64 z (cos.f64 y))
(*.f64 (cos.f64 y) z)
(*.f64 z (cos.f64 y))
(*.f64 (cos.f64 y) z)
(*.f64 z (cos.f64 y))
(*.f64 (cos.f64 y) z)
(*.f64 z (cos.f64 y))
(*.f64 (cos.f64 y) z)
(*.f64 (cos.f64 y) z)
(*.f64 (cos.f64 y) z)
(*.f64 (cos.f64 y) z)
(*.f64 (cos.f64 y) z)
(*.f64 (cos.f64 y) z)
(*.f64 (cos.f64 y) z)
(*.f64 (cos.f64 y) z)
(*.f64 (cos.f64 y) z)
(*.f64 (cos.f64 y) z)
(*.f64 (cos.f64 y) z)
(*.f64 (cos.f64 y) z)
(*.f64 (cos.f64 y) z)
(+.f64 (exp.f64 (cos.f64 y)) -1)
(expm1.f64 (cos.f64 y))
(-.f64 (exp.f64 (cos.f64 y)) 1)
(expm1.f64 (cos.f64 y))
(*.f64 (expm1.f64 (cos.f64 y)) 1)
(expm1.f64 (cos.f64 y))
(*.f64 1 (expm1.f64 (cos.f64 y)))
(expm1.f64 (cos.f64 y))
(*.f64 (cbrt.f64 (expm1.f64 (cos.f64 y))) (pow.f64 (cbrt.f64 (expm1.f64 (cos.f64 y))) 2))
(expm1.f64 (cos.f64 y))
(*.f64 (pow.f64 (cbrt.f64 (expm1.f64 (cos.f64 y))) 2) (cbrt.f64 (expm1.f64 (cos.f64 y))))
(expm1.f64 (cos.f64 y))
(*.f64 (sqrt.f64 (expm1.f64 (cos.f64 y))) (sqrt.f64 (expm1.f64 (cos.f64 y))))
(expm1.f64 (cos.f64 y))
(/.f64 (-.f64 (pow.f64 (exp.f64 (cos.f64 y)) 3) 1) (+.f64 (*.f64 (exp.f64 (cos.f64 y)) (exp.f64 (cos.f64 y))) (+.f64 1 (*.f64 (exp.f64 (cos.f64 y)) 1))))
(/.f64 (+.f64 (pow.f64 (exp.f64 (cos.f64 y)) 3) -1) (+.f64 (exp.f64 (+.f64 (cos.f64 y) (cos.f64 y))) (+.f64 1 (exp.f64 (cos.f64 y)))))
(/.f64 (+.f64 -1 (pow.f64 (exp.f64 (cos.f64 y)) 3)) (+.f64 1 (+.f64 (exp.f64 (cos.f64 y)) (exp.f64 (*.f64 2 (cos.f64 y))))))
(/.f64 (expm1.f64 (*.f64 (cos.f64 y) 3)) (+.f64 1 (+.f64 (exp.f64 (cos.f64 y)) (pow.f64 (exp.f64 2) (cos.f64 y)))))
(/.f64 (-.f64 (*.f64 (exp.f64 (cos.f64 y)) (exp.f64 (cos.f64 y))) 1) (+.f64 (exp.f64 (cos.f64 y)) 1))
(expm1.f64 (cos.f64 y))
(pow.f64 (expm1.f64 (cos.f64 y)) 1)
(expm1.f64 (cos.f64 y))
(pow.f64 (pow.f64 (expm1.f64 (cos.f64 y)) 3) 1/3)
(expm1.f64 (cos.f64 y))
(pow.f64 (cbrt.f64 (expm1.f64 (cos.f64 y))) 3)
(expm1.f64 (cos.f64 y))
(pow.f64 (sqrt.f64 (expm1.f64 (cos.f64 y))) 2)
(expm1.f64 (cos.f64 y))
(sqrt.f64 (pow.f64 (expm1.f64 (cos.f64 y)) 2))
(expm1.f64 (cos.f64 y))
(log.f64 (exp.f64 (expm1.f64 (cos.f64 y))))
(expm1.f64 (cos.f64 y))
(cbrt.f64 (pow.f64 (expm1.f64 (cos.f64 y)) 3))
(expm1.f64 (cos.f64 y))
(log1p.f64 (expm1.f64 (expm1.f64 (cos.f64 y))))
(expm1.f64 (cos.f64 y))
(exp.f64 (log.f64 (expm1.f64 (cos.f64 y))))
(expm1.f64 (cos.f64 y))
(-.f64 (+.f64 1 (cos.f64 y)) 1)
(cos.f64 y)
(*.f64 (cos.f64 y) 1)
(cos.f64 y)
(*.f64 1 (cos.f64 y))
(cos.f64 y)
(*.f64 (cbrt.f64 (cos.f64 y)) (pow.f64 (cbrt.f64 (cos.f64 y)) 2))
(cos.f64 y)
(*.f64 (pow.f64 (cbrt.f64 (cos.f64 y)) 2) (cbrt.f64 (cos.f64 y)))
(cos.f64 y)
(*.f64 (sqrt.f64 (cos.f64 y)) (sqrt.f64 (cos.f64 y)))
(cos.f64 y)
(pow.f64 (cos.f64 y) 1)
(cos.f64 y)
(pow.f64 (pow.f64 (cos.f64 y) 3) 1/3)
(cos.f64 y)
(pow.f64 (cbrt.f64 (cos.f64 y)) 3)
(cos.f64 y)
(pow.f64 (sqrt.f64 (cos.f64 y)) 2)
(cos.f64 y)
(sqrt.f64 (pow.f64 (cos.f64 y) 2))
(cos.f64 y)
(log.f64 (exp.f64 (cos.f64 y)))
(cos.f64 y)
(cbrt.f64 (pow.f64 (cos.f64 y) 3))
(cos.f64 y)
(cos.f64 y)
(expm1.f64 (log1p.f64 (cos.f64 y)))
(cos.f64 y)
(exp.f64 (log.f64 (cos.f64 y)))
(cos.f64 y)
(-.f64 (+.f64 1 (*.f64 (cos.f64 y) z)) 1)
(*.f64 (cos.f64 y) z)
(pow.f64 (*.f64 (cos.f64 y) z) 1)
(*.f64 (cos.f64 y) z)
(pow.f64 (pow.f64 (*.f64 (cos.f64 y) z) 3) 1/3)
(*.f64 (cos.f64 y) z)
(pow.f64 (cbrt.f64 (*.f64 (cos.f64 y) z)) 3)
(*.f64 (cos.f64 y) z)
(pow.f64 (sqrt.f64 (*.f64 (cos.f64 y) z)) 2)
(*.f64 (cos.f64 y) z)
(sqrt.f64 (pow.f64 (*.f64 (cos.f64 y) z) 2))
(*.f64 (cos.f64 y) z)
(log.f64 (pow.f64 (exp.f64 z) (cos.f64 y)))
(*.f64 (cos.f64 y) z)
(cbrt.f64 (pow.f64 (*.f64 (cos.f64 y) z) 3))
(*.f64 (cos.f64 y) z)
(expm1.f64 (log1p.f64 (*.f64 (cos.f64 y) z)))
(*.f64 (cos.f64 y) z)
(log1p.f64 (expm1.f64 (*.f64 (cos.f64 y) z)))
(*.f64 (cos.f64 y) z)
(exp.f64 (log.f64 (*.f64 (cos.f64 y) z)))
(*.f64 (cos.f64 y) z)

localize3.0ms (0%)

Compiler

Compiled 8 to 4 computations (50% saved)

localize19.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(+.f64 x (sin.f64 y))
0.1b
(*.f64 (-.f64 (+.f64 1 (cos.f64 y)) 1) z)
0.3b
(-.f64 (+.f64 1 (cos.f64 y)) 1)
0.4b
(+.f64 1 (cos.f64 y))
Compiler

Compiled 46 to 24 computations (47.8% saved)

series14.0ms (0.1%)

Counts
3 → 40
Calls

12 calls:

TimeVariablePointExpression
2.0ms
y
@0
(*.f64 (-.f64 (+.f64 1 (cos.f64 y)) 1) z)
1.0ms
y
@0
(+.f64 1 (cos.f64 y))
1.0ms
y
@0
(-.f64 (+.f64 1 (cos.f64 y)) 1)
1.0ms
y
@inf
(+.f64 1 (cos.f64 y))
1.0ms
y
@inf
(*.f64 (-.f64 (+.f64 1 (cos.f64 y)) 1) z)
Compiler

Compiled 561 to 460 computations (18% saved)

rewrite55.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
849×pow1_binary64
790×add-log-exp_binary64
790×log1p-expm1-u_binary64
790×expm1-log1p-u_binary64
776×add-exp-log_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0827
117315
2241215
Stop Event
node limit
Counts
3 → 93
Calls
Call 1
Inputs
(+.f64 1 (cos.f64 y))
(-.f64 (+.f64 1 (cos.f64 y)) 1)
(*.f64 (-.f64 (+.f64 1 (cos.f64 y)) 1) z)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (cos.f64 y) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 1 (-.f64 1 (cos.f64 y))) (/.f64 (pow.f64 (cos.f64 y) 2) (-.f64 1 (cos.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 1 (cos.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 1 (cos.f64 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (+.f64 1 (cos.f64 y))) (pow.f64 (cbrt.f64 (+.f64 1 (cos.f64 y))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (+.f64 1 (cos.f64 y))) 2) (cbrt.f64 (+.f64 1 (cos.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (+.f64 1 (cos.f64 y))) 2) (*.f64 (cbrt.f64 (+.f64 1 (cos.f64 y))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (+.f64 1 (cos.f64 y))) (sqrt.f64 (+.f64 1 (cos.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (+.f64 1 (cos.f64 y))) (*.f64 (sqrt.f64 (+.f64 1 (cos.f64 y))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 1 (pow.f64 (cos.f64 y) 3)) (/.f64 1 (-.f64 (+.f64 1 (pow.f64 (cos.f64 y) 2)) (cos.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 y) (sin.f64 y)) (/.f64 1 (-.f64 1 (cos.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 (+.f64 1 (pow.f64 (cos.f64 y) 2)) (cos.f64 y)) (+.f64 1 (pow.f64 (cos.f64 y) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 1 (cos.f64 y)) (*.f64 (sin.f64 y) (sin.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 1 (pow.f64 (cos.f64 y) 3)) (-.f64 (+.f64 1 (pow.f64 (cos.f64 y) 2)) (cos.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 1 (pow.f64 (cos.f64 y) 3)) (+.f64 (pow.f64 (cos.f64 y) 2) (-.f64 1 (cos.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 y) (sin.f64 y)) (-.f64 1 (cos.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 1 (pow.f64 (cos.f64 y) 3))) (neg.f64 (-.f64 (+.f64 1 (pow.f64 (cos.f64 y) 2)) (cos.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 (sin.f64 y) (sin.f64 y))) (neg.f64 (-.f64 1 (cos.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (cos.f64 y) 2) 1) (+.f64 (cos.f64 y) -1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 1 (pow.f64 (cos.f64 y) 3)) 1) (-.f64 (+.f64 1 (pow.f64 (cos.f64 y) 2)) (cos.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (sin.f64 y) (sin.f64 y)) 1) (-.f64 1 (cos.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 1 (cos.f64 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (+.f64 1 (cos.f64 y))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (+.f64 1 (cos.f64 y))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (+.f64 1 (cos.f64 y)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (+.f64 1 (cos.f64 y)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (+.f64 1 (cos.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (+.f64 1 (cos.f64 y)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log.f64 (+.f64 (cos.f64 y) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (+.f64 1 (cos.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log1p.f64 (cos.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (cos.f64 y) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 y)) 2) (cbrt.f64 (cos.f64 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 y)) (sqrt.f64 (cos.f64 y)) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 1 (+.f64 (cos.f64 y) -1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 1 (*.f64 (+.f64 (cos.f64 y) -1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (cos.f64 y) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 1 (cos.f64 y)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -1 (+.f64 1 (cos.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (cos.f64 y) -1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (cos.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cos.f64 y) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cos.f64 y)) (pow.f64 (cbrt.f64 (cos.f64 y)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cos.f64 y)) 2) (cbrt.f64 (cos.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cos.f64 y)) (sqrt.f64 (cos.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (+.f64 1 (cos.f64 y)) 3) -1) (/.f64 1 (+.f64 (pow.f64 (+.f64 1 (cos.f64 y)) 2) (+.f64 (cos.f64 y) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (cos.f64 y) 2) (cos.f64 y)) (/.f64 1 (+.f64 (cos.f64 y) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (+.f64 1 (cos.f64 y))) 1) (-.f64 (sqrt.f64 (+.f64 1 (cos.f64 y))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (pow.f64 (+.f64 1 (cos.f64 y)) 2) (+.f64 (cos.f64 y) 2)) (+.f64 (pow.f64 (+.f64 1 (cos.f64 y)) 3) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (cos.f64 y) 2) (*.f64 (+.f64 (cos.f64 y) 2) (cos.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (+.f64 1 (cos.f64 y)) 3) -1) (+.f64 (pow.f64 (+.f64 1 (cos.f64 y)) 2) (+.f64 (cos.f64 y) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (+.f64 1 (cos.f64 y)) 3) -1) (+.f64 (pow.f64 (+.f64 1 (cos.f64 y)) 2) (-.f64 1 (*.f64 (+.f64 1 (cos.f64 y)) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (cos.f64 y) 2) (cos.f64 y)) (+.f64 (cos.f64 y) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (cos.f64 y) 2) (cos.f64 y)) (-.f64 (+.f64 1 (cos.f64 y)) -1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 (+.f64 1 (cos.f64 y)) 3) -1)) (neg.f64 (+.f64 (pow.f64 (+.f64 1 (cos.f64 y)) 2) (+.f64 (cos.f64 y) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 (+.f64 (cos.f64 y) 2) (cos.f64 y))) (neg.f64 (+.f64 (cos.f64 y) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 1 (pow.f64 (+.f64 (cos.f64 y) -1) 3)) (+.f64 1 (-.f64 (*.f64 (+.f64 (cos.f64 y) -1) (+.f64 (cos.f64 y) -1)) (+.f64 (cos.f64 y) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 1 (*.f64 (+.f64 (cos.f64 y) -1) (+.f64 (cos.f64 y) -1))) (-.f64 1 (+.f64 (cos.f64 y) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cos.f64 y) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (cos.f64 y)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (cos.f64 y)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cos.f64 y) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (cos.f64 y) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (cos.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (cos.f64 y) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cos.f64 y)))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (cos.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (cos.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (cos.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (+.f64 1 (cos.f64 y)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (+.f64 1 (cos.f64 y))) 2) (cbrt.f64 (+.f64 1 (cos.f64 y))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (+.f64 1 (cos.f64 y))) (sqrt.f64 (+.f64 1 (cos.f64 y))) -1)))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 z (*.f64 (+.f64 (cos.f64 y) -1) z))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 z (*.f64 z (+.f64 (cos.f64 y) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (+.f64 1 (cos.f64 y)) z) (*.f64 -1 z))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 z (+.f64 1 (cos.f64 y))) (*.f64 z -1))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 (cos.f64 y) z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (pow.f64 (+.f64 1 (cos.f64 y)) 3) -1) z) (+.f64 (pow.f64 (+.f64 1 (cos.f64 y)) 2) (+.f64 (cos.f64 y) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (+.f64 (cos.f64 y) 2) (cos.f64 y)) z) (+.f64 (cos.f64 y) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 z (+.f64 (pow.f64 (+.f64 1 (cos.f64 y)) 3) -1)) (+.f64 (pow.f64 (+.f64 1 (cos.f64 y)) 2) (+.f64 (cos.f64 y) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 z (*.f64 (+.f64 (cos.f64 y) 2) (cos.f64 y))) (+.f64 (cos.f64 y) 2))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (cos.f64 y) z) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (cos.f64 y) z) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (cos.f64 y) z)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (cos.f64 y) z)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (cos.f64 y) z) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (cos.f64 y)) z))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (cos.f64 y) z) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (cos.f64 y) 3) (pow.f64 z 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 z 3) (pow.f64 (cos.f64 y) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (cos.f64 y) z)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (cos.f64 y) z)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (cos.f64 y) z)))))))

simplify53.0ms (0.3%)

Algorithm
egg-herbie
Rules
602×fma-neg_binary64
598×associate-/l*_binary64
486×unswap-sqr_binary64
233×distribute-rgt-neg-in_binary64
220×div-sub_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02221230
15381171
225371169
Stop Event
node limit
Counts
133 → 147
Calls
Call 1
Inputs
2
(+.f64 2 (*.f64 -1/2 (pow.f64 y 2)))
(+.f64 2 (+.f64 (*.f64 -1/2 (pow.f64 y 2)) (*.f64 1/24 (pow.f64 y 4))))
(+.f64 (*.f64 -1/720 (pow.f64 y 6)) (+.f64 2 (+.f64 (*.f64 -1/2 (pow.f64 y 2)) (*.f64 1/24 (pow.f64 y 4)))))
1
(+.f64 1 (*.f64 -1/2 (pow.f64 y 2)))
(+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 y 2)) (*.f64 1/24 (pow.f64 y 4))))
(+.f64 (*.f64 -1/720 (pow.f64 y 6)) (+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 y 2)) (*.f64 1/24 (pow.f64 y 4)))))
(cos.f64 y)
(cos.f64 y)
(cos.f64 y)
(cos.f64 y)
(cos.f64 y)
(cos.f64 y)
(cos.f64 y)
(cos.f64 y)
z
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y 2) z)) z)
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y 2) z)) (+.f64 z (*.f64 1/24 (*.f64 (pow.f64 y 4) z))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y 2) z)) (+.f64 z (+.f64 (*.f64 1/24 (*.f64 (pow.f64 y 4) z)) (*.f64 -1/720 (*.f64 z (pow.f64 y 6))))))
(*.f64 z (cos.f64 y))
(*.f64 z (cos.f64 y))
(*.f64 z (cos.f64 y))
(*.f64 z (cos.f64 y))
(*.f64 z (cos.f64 y))
(*.f64 z (cos.f64 y))
(*.f64 z (cos.f64 y))
(*.f64 z (cos.f64 y))
(*.f64 (cos.f64 y) z)
(*.f64 (cos.f64 y) z)
(*.f64 (cos.f64 y) z)
(*.f64 (cos.f64 y) z)
(*.f64 (cos.f64 y) z)
(*.f64 (cos.f64 y) z)
(*.f64 (cos.f64 y) z)
(*.f64 (cos.f64 y) z)
(*.f64 (cos.f64 y) z)
(*.f64 (cos.f64 y) z)
(*.f64 (cos.f64 y) z)
(*.f64 (cos.f64 y) z)
(-.f64 (+.f64 (cos.f64 y) 2) 1)
(-.f64 (/.f64 1 (-.f64 1 (cos.f64 y))) (/.f64 (pow.f64 (cos.f64 y) 2) (-.f64 1 (cos.f64 y))))
(*.f64 1 (+.f64 1 (cos.f64 y)))
(*.f64 (+.f64 1 (cos.f64 y)) 1)
(*.f64 (cbrt.f64 (+.f64 1 (cos.f64 y))) (pow.f64 (cbrt.f64 (+.f64 1 (cos.f64 y))) 2))
(*.f64 (pow.f64 (cbrt.f64 (+.f64 1 (cos.f64 y))) 2) (cbrt.f64 (+.f64 1 (cos.f64 y))))
(*.f64 (pow.f64 (cbrt.f64 (+.f64 1 (cos.f64 y))) 2) (*.f64 (cbrt.f64 (+.f64 1 (cos.f64 y))) 1))
(*.f64 (sqrt.f64 (+.f64 1 (cos.f64 y))) (sqrt.f64 (+.f64 1 (cos.f64 y))))
(*.f64 (sqrt.f64 (+.f64 1 (cos.f64 y))) (*.f64 (sqrt.f64 (+.f64 1 (cos.f64 y))) 1))
(*.f64 (+.f64 1 (pow.f64 (cos.f64 y) 3)) (/.f64 1 (-.f64 (+.f64 1 (pow.f64 (cos.f64 y) 2)) (cos.f64 y))))
(*.f64 (*.f64 (sin.f64 y) (sin.f64 y)) (/.f64 1 (-.f64 1 (cos.f64 y))))
(/.f64 1 (/.f64 (-.f64 (+.f64 1 (pow.f64 (cos.f64 y) 2)) (cos.f64 y)) (+.f64 1 (pow.f64 (cos.f64 y) 3))))
(/.f64 1 (/.f64 (-.f64 1 (cos.f64 y)) (*.f64 (sin.f64 y) (sin.f64 y))))
(/.f64 (+.f64 1 (pow.f64 (cos.f64 y) 3)) (-.f64 (+.f64 1 (pow.f64 (cos.f64 y) 2)) (cos.f64 y)))
(/.f64 (+.f64 1 (pow.f64 (cos.f64 y) 3)) (+.f64 (pow.f64 (cos.f64 y) 2) (-.f64 1 (cos.f64 y))))
(/.f64 (*.f64 (sin.f64 y) (sin.f64 y)) (-.f64 1 (cos.f64 y)))
(/.f64 (neg.f64 (+.f64 1 (pow.f64 (cos.f64 y) 3))) (neg.f64 (-.f64 (+.f64 1 (pow.f64 (cos.f64 y) 2)) (cos.f64 y))))
(/.f64 (neg.f64 (*.f64 (sin.f64 y) (sin.f64 y))) (neg.f64 (-.f64 1 (cos.f64 y))))
(/.f64 (-.f64 (pow.f64 (cos.f64 y) 2) 1) (+.f64 (cos.f64 y) -1))
(/.f64 (*.f64 (+.f64 1 (pow.f64 (cos.f64 y) 3)) 1) (-.f64 (+.f64 1 (pow.f64 (cos.f64 y) 2)) (cos.f64 y)))
(/.f64 (*.f64 (*.f64 (sin.f64 y) (sin.f64 y)) 1) (-.f64 1 (cos.f64 y)))
(pow.f64 (+.f64 1 (cos.f64 y)) 1)
(pow.f64 (cbrt.f64 (+.f64 1 (cos.f64 y))) 3)
(pow.f64 (sqrt.f64 (+.f64 1 (cos.f64 y))) 2)
(pow.f64 (pow.f64 (+.f64 1 (cos.f64 y)) 3) 1/3)
(sqrt.f64 (pow.f64 (+.f64 1 (cos.f64 y)) 2))
(log.f64 (exp.f64 (+.f64 1 (cos.f64 y))))
(cbrt.f64 (pow.f64 (+.f64 1 (cos.f64 y)) 3))
(expm1.f64 (log.f64 (+.f64 (cos.f64 y) 2)))
(log1p.f64 (expm1.f64 (+.f64 1 (cos.f64 y))))
(exp.f64 (log1p.f64 (cos.f64 y)))
(fma.f64 1 (cos.f64 y) 1)
(fma.f64 (pow.f64 (cbrt.f64 (cos.f64 y)) 2) (cbrt.f64 (cos.f64 y)) 1)
(fma.f64 (sqrt.f64 (cos.f64 y)) (sqrt.f64 (cos.f64 y)) 1)
(+.f64 1 (+.f64 (cos.f64 y) -1))
(+.f64 1 (*.f64 (+.f64 (cos.f64 y) -1) 1))
(+.f64 (cos.f64 y) 0)
(+.f64 (+.f64 1 (cos.f64 y)) -1)
(+.f64 -1 (+.f64 1 (cos.f64 y)))
(+.f64 (+.f64 (cos.f64 y) -1) 1)
(*.f64 1 (cos.f64 y))
(*.f64 (cos.f64 y) 1)
(*.f64 (cbrt.f64 (cos.f64 y)) (pow.f64 (cbrt.f64 (cos.f64 y)) 2))
(*.f64 (pow.f64 (cbrt.f64 (cos.f64 y)) 2) (cbrt.f64 (cos.f64 y)))
(*.f64 (sqrt.f64 (cos.f64 y)) (sqrt.f64 (cos.f64 y)))
(*.f64 (+.f64 (pow.f64 (+.f64 1 (cos.f64 y)) 3) -1) (/.f64 1 (+.f64 (pow.f64 (+.f64 1 (cos.f64 y)) 2) (+.f64 (cos.f64 y) 2))))
(*.f64 (*.f64 (+.f64 (cos.f64 y) 2) (cos.f64 y)) (/.f64 1 (+.f64 (cos.f64 y) 2)))
(*.f64 (+.f64 (sqrt.f64 (+.f64 1 (cos.f64 y))) 1) (-.f64 (sqrt.f64 (+.f64 1 (cos.f64 y))) 1))
(/.f64 1 (/.f64 (+.f64 (pow.f64 (+.f64 1 (cos.f64 y)) 2) (+.f64 (cos.f64 y) 2)) (+.f64 (pow.f64 (+.f64 1 (cos.f64 y)) 3) -1)))
(/.f64 1 (/.f64 (+.f64 (cos.f64 y) 2) (*.f64 (+.f64 (cos.f64 y) 2) (cos.f64 y))))
(/.f64 (+.f64 (pow.f64 (+.f64 1 (cos.f64 y)) 3) -1) (+.f64 (pow.f64 (+.f64 1 (cos.f64 y)) 2) (+.f64 (cos.f64 y) 2)))
(/.f64 (+.f64 (pow.f64 (+.f64 1 (cos.f64 y)) 3) -1) (+.f64 (pow.f64 (+.f64 1 (cos.f64 y)) 2) (-.f64 1 (*.f64 (+.f64 1 (cos.f64 y)) -1))))
(/.f64 (*.f64 (+.f64 (cos.f64 y) 2) (cos.f64 y)) (+.f64 (cos.f64 y) 2))
(/.f64 (*.f64 (+.f64 (cos.f64 y) 2) (cos.f64 y)) (-.f64 (+.f64 1 (cos.f64 y)) -1))
(/.f64 (neg.f64 (+.f64 (pow.f64 (+.f64 1 (cos.f64 y)) 3) -1)) (neg.f64 (+.f64 (pow.f64 (+.f64 1 (cos.f64 y)) 2) (+.f64 (cos.f64 y) 2))))
(/.f64 (neg.f64 (*.f64 (+.f64 (cos.f64 y) 2) (cos.f64 y))) (neg.f64 (+.f64 (cos.f64 y) 2)))
(/.f64 (+.f64 1 (pow.f64 (+.f64 (cos.f64 y) -1) 3)) (+.f64 1 (-.f64 (*.f64 (+.f64 (cos.f64 y) -1) (+.f64 (cos.f64 y) -1)) (+.f64 (cos.f64 y) -1))))
(/.f64 (-.f64 1 (*.f64 (+.f64 (cos.f64 y) -1) (+.f64 (cos.f64 y) -1))) (-.f64 1 (+.f64 (cos.f64 y) -1)))
(pow.f64 (cos.f64 y) 1)
(pow.f64 (cbrt.f64 (cos.f64 y)) 3)
(pow.f64 (sqrt.f64 (cos.f64 y)) 2)
(pow.f64 (pow.f64 (cos.f64 y) 3) 1/3)
(sqrt.f64 (pow.f64 (cos.f64 y) 2))
(log.f64 (exp.f64 (cos.f64 y)))
(cbrt.f64 (pow.f64 (cos.f64 y) 3))
(cos.f64 y)
(expm1.f64 (log1p.f64 (cos.f64 y)))
(log1p.f64 (expm1.f64 (cos.f64 y)))
(exp.f64 (log.f64 (cos.f64 y)))
(fma.f64 1 (+.f64 1 (cos.f64 y)) -1)
(fma.f64 (pow.f64 (cbrt.f64 (+.f64 1 (cos.f64 y))) 2) (cbrt.f64 (+.f64 1 (cos.f64 y))) -1)
(fma.f64 (sqrt.f64 (+.f64 1 (cos.f64 y))) (sqrt.f64 (+.f64 1 (cos.f64 y))) -1)
(+.f64 z (*.f64 (+.f64 (cos.f64 y) -1) z))
(+.f64 z (*.f64 z (+.f64 (cos.f64 y) -1)))
(+.f64 (*.f64 (+.f64 1 (cos.f64 y)) z) (*.f64 -1 z))
(+.f64 (*.f64 z (+.f64 1 (cos.f64 y))) (*.f64 z -1))
(-.f64 (+.f64 1 (*.f64 (cos.f64 y) z)) 1)
(/.f64 (*.f64 (+.f64 (pow.f64 (+.f64 1 (cos.f64 y)) 3) -1) z) (+.f64 (pow.f64 (+.f64 1 (cos.f64 y)) 2) (+.f64 (cos.f64 y) 2)))
(/.f64 (*.f64 (*.f64 (+.f64 (cos.f64 y) 2) (cos.f64 y)) z) (+.f64 (cos.f64 y) 2))
(/.f64 (*.f64 z (+.f64 (pow.f64 (+.f64 1 (cos.f64 y)) 3) -1)) (+.f64 (pow.f64 (+.f64 1 (cos.f64 y)) 2) (+.f64 (cos.f64 y) 2)))
(/.f64 (*.f64 z (*.f64 (+.f64 (cos.f64 y) 2) (cos.f64 y))) (+.f64 (cos.f64 y) 2))
(pow.f64 (*.f64 (cos.f64 y) z) 1)
(pow.f64 (pow.f64 (*.f64 (cos.f64 y) z) 3) 1/3)
(pow.f64 (cbrt.f64 (*.f64 (cos.f64 y) z)) 3)
(pow.f64 (sqrt.f64 (*.f64 (cos.f64 y) z)) 2)
(sqrt.f64 (pow.f64 (*.f64 (cos.f64 y) z) 2))
(log.f64 (pow.f64 (exp.f64 (cos.f64 y)) z))
(cbrt.f64 (pow.f64 (*.f64 (cos.f64 y) z) 3))
(cbrt.f64 (*.f64 (pow.f64 (cos.f64 y) 3) (pow.f64 z 3)))
(cbrt.f64 (*.f64 (pow.f64 z 3) (pow.f64 (cos.f64 y) 3)))
(expm1.f64 (log1p.f64 (*.f64 (cos.f64 y) z)))
(log1p.f64 (expm1.f64 (*.f64 (cos.f64 y) z)))
(exp.f64 (log.f64 (*.f64 (cos.f64 y) z)))
Outputs
2
(+.f64 2 (*.f64 -1/2 (pow.f64 y 2)))
(+.f64 2 (*.f64 -1/2 (*.f64 y y)))
(fma.f64 -1/2 (*.f64 y y) 2)
(+.f64 2 (+.f64 (*.f64 -1/2 (pow.f64 y 2)) (*.f64 1/24 (pow.f64 y 4))))
(+.f64 2 (fma.f64 -1/2 (*.f64 y y) (*.f64 1/24 (pow.f64 y 4))))
(+.f64 2 (fma.f64 1/24 (pow.f64 y 4) (*.f64 (*.f64 -1/2 y) y)))
(+.f64 (fma.f64 -1/2 (*.f64 y y) 2) (*.f64 1/24 (pow.f64 y 4)))
(+.f64 (*.f64 -1/720 (pow.f64 y 6)) (+.f64 2 (+.f64 (*.f64 -1/2 (pow.f64 y 2)) (*.f64 1/24 (pow.f64 y 4)))))
(fma.f64 -1/720 (pow.f64 y 6) (+.f64 2 (fma.f64 -1/2 (*.f64 y y) (*.f64 1/24 (pow.f64 y 4)))))
(+.f64 (fma.f64 1/24 (pow.f64 y 4) (*.f64 (*.f64 -1/2 y) y)) (fma.f64 -1/720 (pow.f64 y 6) 2))
(fma.f64 -1/720 (pow.f64 y 6) (+.f64 (fma.f64 -1/2 (*.f64 y y) 2) (*.f64 1/24 (pow.f64 y 4))))
1
(+.f64 1 (*.f64 -1/2 (pow.f64 y 2)))
(+.f64 (*.f64 -1/2 (*.f64 y y)) 1)
(fma.f64 -1/2 (*.f64 y y) 1)
(+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 y 2)) (*.f64 1/24 (pow.f64 y 4))))
(+.f64 (fma.f64 -1/2 (*.f64 y y) (*.f64 1/24 (pow.f64 y 4))) 1)
(+.f64 (*.f64 1/24 (pow.f64 y 4)) (fma.f64 -1/2 (*.f64 y y) 1))
(+.f64 (*.f64 -1/720 (pow.f64 y 6)) (+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 y 2)) (*.f64 1/24 (pow.f64 y 4)))))
(fma.f64 -1/720 (pow.f64 y 6) (+.f64 (fma.f64 -1/2 (*.f64 y y) (*.f64 1/24 (pow.f64 y 4))) 1))
(+.f64 (fma.f64 1/24 (pow.f64 y 4) (*.f64 (*.f64 -1/2 y) y)) (fma.f64 -1/720 (pow.f64 y 6) 1))
(+.f64 (fma.f64 -1/2 (*.f64 y y) (*.f64 1/24 (pow.f64 y 4))) (fma.f64 -1/720 (pow.f64 y 6) 1))
(cos.f64 y)
(cos.f64 y)
(cos.f64 y)
(cos.f64 y)
(cos.f64 y)
(cos.f64 y)
(cos.f64 y)
(cos.f64 y)
z
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y 2) z)) z)
(fma.f64 -1/2 (*.f64 (*.f64 y y) z) z)
(fma.f64 -1/2 (*.f64 y (*.f64 y z)) z)
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y 2) z)) (+.f64 z (*.f64 1/24 (*.f64 (pow.f64 y 4) z))))
(+.f64 (fma.f64 -1/2 (*.f64 (*.f64 y y) z) z) (*.f64 1/24 (*.f64 (pow.f64 y 4) z)))
(fma.f64 -1/2 (*.f64 y (*.f64 y z)) (fma.f64 1/24 (*.f64 (pow.f64 y 4) z) z))
(*.f64 z (+.f64 (*.f64 1/24 (pow.f64 y 4)) (fma.f64 -1/2 (*.f64 y y) 1)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y 2) z)) (+.f64 z (+.f64 (*.f64 1/24 (*.f64 (pow.f64 y 4) z)) (*.f64 -1/720 (*.f64 z (pow.f64 y 6))))))
(+.f64 (fma.f64 -1/2 (*.f64 (*.f64 y y) z) z) (fma.f64 1/24 (*.f64 (pow.f64 y 4) z) (*.f64 -1/720 (*.f64 (pow.f64 y 6) z))))
(+.f64 (fma.f64 -1/2 (*.f64 y (*.f64 y z)) z) (fma.f64 -1/720 (*.f64 (pow.f64 y 6) z) (*.f64 (pow.f64 y 4) (*.f64 1/24 z))))
(+.f64 (fma.f64 -1/2 (*.f64 y (*.f64 y z)) z) (*.f64 z (+.f64 (*.f64 1/24 (pow.f64 y 4)) (*.f64 -1/720 (pow.f64 y 6)))))
(*.f64 z (cos.f64 y))
(*.f64 (cos.f64 y) z)
(*.f64 z (cos.f64 y))
(*.f64 (cos.f64 y) z)
(*.f64 z (cos.f64 y))
(*.f64 (cos.f64 y) z)
(*.f64 z (cos.f64 y))
(*.f64 (cos.f64 y) z)
(*.f64 z (cos.f64 y))
(*.f64 (cos.f64 y) z)
(*.f64 z (cos.f64 y))
(*.f64 (cos.f64 y) z)
(*.f64 z (cos.f64 y))
(*.f64 (cos.f64 y) z)
(*.f64 z (cos.f64 y))
(*.f64 (cos.f64 y) z)
(*.f64 (cos.f64 y) z)
(*.f64 (cos.f64 y) z)
(*.f64 (cos.f64 y) z)
(*.f64 (cos.f64 y) z)
(*.f64 (cos.f64 y) z)
(*.f64 (cos.f64 y) z)
(*.f64 (cos.f64 y) z)
(*.f64 (cos.f64 y) z)
(*.f64 (cos.f64 y) z)
(*.f64 (cos.f64 y) z)
(*.f64 (cos.f64 y) z)
(*.f64 (cos.f64 y) z)
(-.f64 (+.f64 (cos.f64 y) 2) 1)
(+.f64 1 (cos.f64 y))
(-.f64 (/.f64 1 (-.f64 1 (cos.f64 y))) (/.f64 (pow.f64 (cos.f64 y) 2) (-.f64 1 (cos.f64 y))))
(*.f64 1 (+.f64 1 (cos.f64 y)))
(+.f64 1 (cos.f64 y))
(*.f64 (+.f64 1 (cos.f64 y)) 1)
(+.f64 1 (cos.f64 y))
(*.f64 (cbrt.f64 (+.f64 1 (cos.f64 y))) (pow.f64 (cbrt.f64 (+.f64 1 (cos.f64 y))) 2))
(+.f64 1 (cos.f64 y))
(*.f64 (pow.f64 (cbrt.f64 (+.f64 1 (cos.f64 y))) 2) (cbrt.f64 (+.f64 1 (cos.f64 y))))
(+.f64 1 (cos.f64 y))
(*.f64 (pow.f64 (cbrt.f64 (+.f64 1 (cos.f64 y))) 2) (*.f64 (cbrt.f64 (+.f64 1 (cos.f64 y))) 1))
(+.f64 1 (cos.f64 y))
(*.f64 (sqrt.f64 (+.f64 1 (cos.f64 y))) (sqrt.f64 (+.f64 1 (cos.f64 y))))
(+.f64 1 (cos.f64 y))
(*.f64 (sqrt.f64 (+.f64 1 (cos.f64 y))) (*.f64 (sqrt.f64 (+.f64 1 (cos.f64 y))) 1))
(+.f64 1 (cos.f64 y))
(*.f64 (+.f64 1 (pow.f64 (cos.f64 y) 3)) (/.f64 1 (-.f64 (+.f64 1 (pow.f64 (cos.f64 y) 2)) (cos.f64 y))))
(/.f64 (+.f64 1 (pow.f64 (cos.f64 y) 3)) (+.f64 1 (-.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y))))
(/.f64 (+.f64 1 (pow.f64 (cos.f64 y) 3)) (+.f64 1 (*.f64 (cos.f64 y) (+.f64 (cos.f64 y) -1))))
(/.f64 (-.f64 -1 (pow.f64 (cos.f64 y) 3)) (-.f64 (+.f64 (cos.f64 y) -1) (pow.f64 (cos.f64 y) 2)))
(*.f64 (*.f64 (sin.f64 y) (sin.f64 y)) (/.f64 1 (-.f64 1 (cos.f64 y))))
(/.f64 (sin.f64 y) (/.f64 (-.f64 1 (cos.f64 y)) (sin.f64 y)))
(/.f64 (sin.f64 y) (tan.f64 (/.f64 y 2)))
(/.f64 1 (/.f64 (-.f64 (+.f64 1 (pow.f64 (cos.f64 y) 2)) (cos.f64 y)) (+.f64 1 (pow.f64 (cos.f64 y) 3))))
(/.f64 (+.f64 1 (pow.f64 (cos.f64 y) 3)) (+.f64 1 (-.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y))))
(/.f64 (+.f64 1 (pow.f64 (cos.f64 y) 3)) (+.f64 1 (*.f64 (cos.f64 y) (+.f64 (cos.f64 y) -1))))
(/.f64 (-.f64 -1 (pow.f64 (cos.f64 y) 3)) (-.f64 (+.f64 (cos.f64 y) -1) (pow.f64 (cos.f64 y) 2)))
(/.f64 1 (/.f64 (-.f64 1 (cos.f64 y)) (*.f64 (sin.f64 y) (sin.f64 y))))
(/.f64 (sin.f64 y) (/.f64 (-.f64 1 (cos.f64 y)) (sin.f64 y)))
(/.f64 (sin.f64 y) (tan.f64 (/.f64 y 2)))
(/.f64 (+.f64 1 (pow.f64 (cos.f64 y) 3)) (-.f64 (+.f64 1 (pow.f64 (cos.f64 y) 2)) (cos.f64 y)))
(/.f64 (+.f64 1 (pow.f64 (cos.f64 y) 3)) (+.f64 1 (-.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y))))
(/.f64 (+.f64 1 (pow.f64 (cos.f64 y) 3)) (+.f64 1 (*.f64 (cos.f64 y) (+.f64 (cos.f64 y) -1))))
(/.f64 (-.f64 -1 (pow.f64 (cos.f64 y) 3)) (-.f64 (+.f64 (cos.f64 y) -1) (pow.f64 (cos.f64 y) 2)))
(/.f64 (+.f64 1 (pow.f64 (cos.f64 y) 3)) (+.f64 (pow.f64 (cos.f64 y) 2) (-.f64 1 (cos.f64 y))))
(/.f64 (+.f64 1 (pow.f64 (cos.f64 y) 3)) (+.f64 1 (-.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y))))
(/.f64 (+.f64 1 (pow.f64 (cos.f64 y) 3)) (+.f64 1 (*.f64 (cos.f64 y) (+.f64 (cos.f64 y) -1))))
(/.f64 (-.f64 -1 (pow.f64 (cos.f64 y) 3)) (-.f64 (+.f64 (cos.f64 y) -1) (pow.f64 (cos.f64 y) 2)))
(/.f64 (*.f64 (sin.f64 y) (sin.f64 y)) (-.f64 1 (cos.f64 y)))
(/.f64 (sin.f64 y) (/.f64 (-.f64 1 (cos.f64 y)) (sin.f64 y)))
(/.f64 (sin.f64 y) (tan.f64 (/.f64 y 2)))
(/.f64 (neg.f64 (+.f64 1 (pow.f64 (cos.f64 y) 3))) (neg.f64 (-.f64 (+.f64 1 (pow.f64 (cos.f64 y) 2)) (cos.f64 y))))
(/.f64 (+.f64 1 (pow.f64 (cos.f64 y) 3)) (+.f64 1 (-.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y))))
(/.f64 (+.f64 1 (pow.f64 (cos.f64 y) 3)) (+.f64 1 (*.f64 (cos.f64 y) (+.f64 (cos.f64 y) -1))))
(/.f64 (-.f64 -1 (pow.f64 (cos.f64 y) 3)) (-.f64 (+.f64 (cos.f64 y) -1) (pow.f64 (cos.f64 y) 2)))
(/.f64 (neg.f64 (*.f64 (sin.f64 y) (sin.f64 y))) (neg.f64 (-.f64 1 (cos.f64 y))))
(/.f64 (sin.f64 y) (/.f64 (-.f64 1 (cos.f64 y)) (sin.f64 y)))
(/.f64 (sin.f64 y) (tan.f64 (/.f64 y 2)))
(/.f64 (-.f64 (pow.f64 (cos.f64 y) 2) 1) (+.f64 (cos.f64 y) -1))
(/.f64 (sin.f64 y) (/.f64 (-.f64 1 (cos.f64 y)) (sin.f64 y)))
(/.f64 (sin.f64 y) (tan.f64 (/.f64 y 2)))
(/.f64 (*.f64 (+.f64 1 (pow.f64 (cos.f64 y) 3)) 1) (-.f64 (+.f64 1 (pow.f64 (cos.f64 y) 2)) (cos.f64 y)))
(/.f64 (+.f64 1 (pow.f64 (cos.f64 y) 3)) (+.f64 1 (-.f64 (pow.f64 (cos.f64 y) 2) (cos.f64 y))))
(/.f64 (+.f64 1 (pow.f64 (cos.f64 y) 3)) (+.f64 1 (*.f64 (cos.f64 y) (+.f64 (cos.f64 y) -1))))
(/.f64 (-.f64 -1 (pow.f64 (cos.f64 y) 3)) (-.f64 (+.f64 (cos.f64 y) -1) (pow.f64 (cos.f64 y) 2)))
(/.f64 (*.f64 (*.f64 (sin.f64 y) (sin.f64 y)) 1) (-.f64 1 (cos.f64 y)))
(/.f64 (sin.f64 y) (/.f64 (-.f64 1 (cos.f64 y)) (sin.f64 y)))
(/.f64 (sin.f64 y) (tan.f64 (/.f64 y 2)))
(pow.f64 (+.f64 1 (cos.f64 y)) 1)
(+.f64 1 (cos.f64 y))
(pow.f64 (cbrt.f64 (+.f64 1 (cos.f64 y))) 3)
(+.f64 1 (cos.f64 y))
(pow.f64 (sqrt.f64 (+.f64 1 (cos.f64 y))) 2)
(+.f64 1 (cos.f64 y))
(pow.f64 (pow.f64 (+.f64 1 (cos.f64 y)) 3) 1/3)
(+.f64 1 (cos.f64 y))
(sqrt.f64 (pow.f64 (+.f64 1 (cos.f64 y)) 2))
(+.f64 1 (cos.f64 y))
(log.f64 (exp.f64 (+.f64 1 (cos.f64 y))))
(+.f64 1 (cos.f64 y))
(cbrt.f64 (pow.f64 (+.f64 1 (cos.f64 y)) 3))
(+.f64 1 (cos.f64 y))
(expm1.f64 (log.f64 (+.f64 (cos.f64 y) 2)))
(expm1.f64 (log.f64 (+.f64 2 (cos.f64 y))))
(expm1.f64 (log1p.f64 (+.f64 1 (cos.f64 y))))
(log1p.f64 (expm1.f64 (+.f64 1 (cos.f64 y))))
(+.f64 1 (cos.f64 y))
(exp.f64 (log1p.f64 (cos.f64 y)))
(fma.f64 1 (cos.f64 y) 1)
(+.f64 1 (cos.f64 y))
(fma.f64 (pow.f64 (cbrt.f64 (cos.f64 y)) 2) (cbrt.f64 (cos.f64 y)) 1)
(+.f64 1 (cos.f64 y))
(fma.f64 (sqrt.f64 (cos.f64 y)) (sqrt.f64 (cos.f64 y)) 1)
(+.f64 1 (cos.f64 y))
(+.f64 1 (+.f64 (cos.f64 y) -1))
(cos.f64 y)
(+.f64 1 (*.f64 (+.f64 (cos.f64 y) -1) 1))
(cos.f64 y)
(+.f64 (cos.f64 y) 0)
(cos.f64 y)
(+.f64 (+.f64 1 (cos.f64 y)) -1)
(cos.f64 y)
(+.f64 -1 (+.f64 1 (cos.f64 y)))
(cos.f64 y)
(+.f64 (+.f64 (cos.f64 y) -1) 1)
(cos.f64 y)
(*.f64 1 (cos.f64 y))
(cos.f64 y)
(*.f64 (cos.f64 y) 1)
(cos.f64 y)
(*.f64 (cbrt.f64 (cos.f64 y)) (pow.f64 (cbrt.f64 (cos.f64 y)) 2))
(cos.f64 y)
(*.f64 (pow.f64 (cbrt.f64 (cos.f64 y)) 2) (cbrt.f64 (cos.f64 y)))
(cos.f64 y)
(*.f64 (sqrt.f64 (cos.f64 y)) (sqrt.f64 (cos.f64 y)))
(cos.f64 y)
(*.f64 (+.f64 (pow.f64 (+.f64 1 (cos.f64 y)) 3) -1) (/.f64 1 (+.f64 (pow.f64 (+.f64 1 (cos.f64 y)) 2) (+.f64 (cos.f64 y) 2))))
(*.f64 (+.f64 -1 (pow.f64 (+.f64 1 (cos.f64 y)) 3)) (/.f64 1 (+.f64 (+.f64 2 (cos.f64 y)) (pow.f64 (+.f64 1 (cos.f64 y)) 2))))
(/.f64 (+.f64 -1 (pow.f64 (+.f64 1 (cos.f64 y)) 3)) (+.f64 (+.f64 2 (cos.f64 y)) (pow.f64 (+.f64 1 (cos.f64 y)) 2)))
(/.f64 (-.f64 1 (pow.f64 (+.f64 1 (cos.f64 y)) 3)) (-.f64 (-.f64 -2 (cos.f64 y)) (pow.f64 (+.f64 1 (cos.f64 y)) 2)))
(*.f64 (*.f64 (+.f64 (cos.f64 y) 2) (cos.f64 y)) (/.f64 1 (+.f64 (cos.f64 y) 2)))
(cos.f64 y)
(*.f64 (+.f64 (sqrt.f64 (+.f64 1 (cos.f64 y))) 1) (-.f64 (sqrt.f64 (+.f64 1 (cos.f64 y))) 1))
(cos.f64 y)
(/.f64 1 (/.f64 (+.f64 (pow.f64 (+.f64 1 (cos.f64 y)) 2) (+.f64 (cos.f64 y) 2)) (+.f64 (pow.f64 (+.f64 1 (cos.f64 y)) 3) -1)))
(*.f64 (+.f64 -1 (pow.f64 (+.f64 1 (cos.f64 y)) 3)) (/.f64 1 (+.f64 (+.f64 2 (cos.f64 y)) (pow.f64 (+.f64 1 (cos.f64 y)) 2))))
(/.f64 (+.f64 -1 (pow.f64 (+.f64 1 (cos.f64 y)) 3)) (+.f64 (+.f64 2 (cos.f64 y)) (pow.f64 (+.f64 1 (cos.f64 y)) 2)))
(/.f64 (-.f64 1 (pow.f64 (+.f64 1 (cos.f64 y)) 3)) (-.f64 (-.f64 -2 (cos.f64 y)) (pow.f64 (+.f64 1 (cos.f64 y)) 2)))
(/.f64 1 (/.f64 (+.f64 (cos.f64 y) 2) (*.f64 (+.f64 (cos.f64 y) 2) (cos.f64 y))))
(cos.f64 y)
(/.f64 (+.f64 (pow.f64 (+.f64 1 (cos.f64 y)) 3) -1) (+.f64 (pow.f64 (+.f64 1 (cos.f64 y)) 2) (+.f64 (cos.f64 y) 2)))
(*.f64 (+.f64 -1 (pow.f64 (+.f64 1 (cos.f64 y)) 3)) (/.f64 1 (+.f64 (+.f64 2 (cos.f64 y)) (pow.f64 (+.f64 1 (cos.f64 y)) 2))))
(/.f64 (+.f64 -1 (pow.f64 (+.f64 1 (cos.f64 y)) 3)) (+.f64 (+.f64 2 (cos.f64 y)) (pow.f64 (+.f64 1 (cos.f64 y)) 2)))
(/.f64 (-.f64 1 (pow.f64 (+.f64 1 (cos.f64 y)) 3)) (-.f64 (-.f64 -2 (cos.f64 y)) (pow.f64 (+.f64 1 (cos.f64 y)) 2)))
(/.f64 (+.f64 (pow.f64 (+.f64 1 (cos.f64 y)) 3) -1) (+.f64 (pow.f64 (+.f64 1 (cos.f64 y)) 2) (-.f64 1 (*.f64 (+.f64 1 (cos.f64 y)) -1))))
(*.f64 (+.f64 -1 (pow.f64 (+.f64 1 (cos.f64 y)) 3)) (/.f64 1 (+.f64 (+.f64 2 (cos.f64 y)) (pow.f64 (+.f64 1 (cos.f64 y)) 2))))
(/.f64 (+.f64 -1 (pow.f64 (+.f64 1 (cos.f64 y)) 3)) (+.f64 (+.f64 2 (cos.f64 y)) (pow.f64 (+.f64 1 (cos.f64 y)) 2)))
(/.f64 (-.f64 1 (pow.f64 (+.f64 1 (cos.f64 y)) 3)) (-.f64 (-.f64 -2 (cos.f64 y)) (pow.f64 (+.f64 1 (cos.f64 y)) 2)))
(/.f64 (*.f64 (+.f64 (cos.f64 y) 2) (cos.f64 y)) (+.f64 (cos.f64 y) 2))
(cos.f64 y)
(/.f64 (*.f64 (+.f64 (cos.f64 y) 2) (cos.f64 y)) (-.f64 (+.f64 1 (cos.f64 y)) -1))
(cos.f64 y)
(/.f64 (neg.f64 (+.f64 (pow.f64 (+.f64 1 (cos.f64 y)) 3) -1)) (neg.f64 (+.f64 (pow.f64 (+.f64 1 (cos.f64 y)) 2) (+.f64 (cos.f64 y) 2))))
(*.f64 (+.f64 -1 (pow.f64 (+.f64 1 (cos.f64 y)) 3)) (/.f64 1 (+.f64 (+.f64 2 (cos.f64 y)) (pow.f64 (+.f64 1 (cos.f64 y)) 2))))
(/.f64 (+.f64 -1 (pow.f64 (+.f64 1 (cos.f64 y)) 3)) (+.f64 (+.f64 2 (cos.f64 y)) (pow.f64 (+.f64 1 (cos.f64 y)) 2)))
(/.f64 (-.f64 1 (pow.f64 (+.f64 1 (cos.f64 y)) 3)) (-.f64 (-.f64 -2 (cos.f64 y)) (pow.f64 (+.f64 1 (cos.f64 y)) 2)))
(/.f64 (neg.f64 (*.f64 (+.f64 (cos.f64 y) 2) (cos.f64 y))) (neg.f64 (+.f64 (cos.f64 y) 2)))
(cos.f64 y)
(/.f64 (+.f64 1 (pow.f64 (+.f64 (cos.f64 y) -1) 3)) (+.f64 1 (-.f64 (*.f64 (+.f64 (cos.f64 y) -1) (+.f64 (cos.f64 y) -1)) (+.f64 (cos.f64 y) -1))))
(/.f64 (+.f64 1 (pow.f64 (+.f64 (cos.f64 y) -1) 3)) (+.f64 1 (*.f64 (+.f64 (cos.f64 y) -1) (-.f64 (+.f64 (cos.f64 y) -1) 1))))
(/.f64 (+.f64 1 (pow.f64 (+.f64 (cos.f64 y) -1) 3)) (+.f64 1 (*.f64 (+.f64 (cos.f64 y) -1) (+.f64 -1 (+.f64 (cos.f64 y) -1)))))
(/.f64 (-.f64 1 (*.f64 (+.f64 (cos.f64 y) -1) (+.f64 (cos.f64 y) -1))) (-.f64 1 (+.f64 (cos.f64 y) -1)))
(/.f64 (-.f64 1 (*.f64 (+.f64 (cos.f64 y) -1) (+.f64 (cos.f64 y) -1))) (-.f64 2 (cos.f64 y)))
(pow.f64 (cos.f64 y) 1)
(cos.f64 y)
(pow.f64 (cbrt.f64 (cos.f64 y)) 3)
(cos.f64 y)
(pow.f64 (sqrt.f64 (cos.f64 y)) 2)
(cos.f64 y)
(pow.f64 (pow.f64 (cos.f64 y) 3) 1/3)
(cos.f64 y)
(sqrt.f64 (pow.f64 (cos.f64 y) 2))
(cos.f64 y)
(log.f64 (exp.f64 (cos.f64 y)))
(cos.f64 y)
(cbrt.f64 (pow.f64 (cos.f64 y) 3))
(cos.f64 y)
(cos.f64 y)
(expm1.f64 (log1p.f64 (cos.f64 y)))
(cos.f64 y)
(log1p.f64 (expm1.f64 (cos.f64 y)))
(cos.f64 y)
(exp.f64 (log.f64 (cos.f64 y)))
(cos.f64 y)
(fma.f64 1 (+.f64 1 (cos.f64 y)) -1)
(cos.f64 y)
(fma.f64 (pow.f64 (cbrt.f64 (+.f64 1 (cos.f64 y))) 2) (cbrt.f64 (+.f64 1 (cos.f64 y))) -1)
(cos.f64 y)
(fma.f64 (sqrt.f64 (+.f64 1 (cos.f64 y))) (sqrt.f64 (+.f64 1 (cos.f64 y))) -1)
(cos.f64 y)
(+.f64 z (*.f64 (+.f64 (cos.f64 y) -1) z))
(*.f64 (cos.f64 y) z)
(+.f64 z (*.f64 z (+.f64 (cos.f64 y) -1)))
(*.f64 (cos.f64 y) z)
(+.f64 (*.f64 (+.f64 1 (cos.f64 y)) z) (*.f64 -1 z))
(*.f64 (cos.f64 y) z)
(+.f64 (*.f64 z (+.f64 1 (cos.f64 y))) (*.f64 z -1))
(*.f64 (cos.f64 y) z)
(-.f64 (+.f64 1 (*.f64 (cos.f64 y) z)) 1)
(*.f64 (cos.f64 y) z)
(/.f64 (*.f64 (+.f64 (pow.f64 (+.f64 1 (cos.f64 y)) 3) -1) z) (+.f64 (pow.f64 (+.f64 1 (cos.f64 y)) 2) (+.f64 (cos.f64 y) 2)))
(/.f64 (+.f64 -1 (pow.f64 (+.f64 1 (cos.f64 y)) 3)) (/.f64 (+.f64 (+.f64 2 (cos.f64 y)) (pow.f64 (+.f64 1 (cos.f64 y)) 2)) z))
(*.f64 (/.f64 (+.f64 -1 (pow.f64 (+.f64 1 (cos.f64 y)) 3)) (+.f64 (+.f64 2 (cos.f64 y)) (pow.f64 (+.f64 1 (cos.f64 y)) 2))) z)
(*.f64 (/.f64 (-.f64 1 (pow.f64 (+.f64 1 (cos.f64 y)) 3)) (-.f64 (-.f64 -2 (cos.f64 y)) (pow.f64 (+.f64 1 (cos.f64 y)) 2))) z)
(/.f64 (*.f64 (*.f64 (+.f64 (cos.f64 y) 2) (cos.f64 y)) z) (+.f64 (cos.f64 y) 2))
(*.f64 (cos.f64 y) z)
(/.f64 (*.f64 z (+.f64 (pow.f64 (+.f64 1 (cos.f64 y)) 3) -1)) (+.f64 (pow.f64 (+.f64 1 (cos.f64 y)) 2) (+.f64 (cos.f64 y) 2)))
(/.f64 (+.f64 -1 (pow.f64 (+.f64 1 (cos.f64 y)) 3)) (/.f64 (+.f64 (+.f64 2 (cos.f64 y)) (pow.f64 (+.f64 1 (cos.f64 y)) 2)) z))
(*.f64 (/.f64 (+.f64 -1 (pow.f64 (+.f64 1 (cos.f64 y)) 3)) (+.f64 (+.f64 2 (cos.f64 y)) (pow.f64 (+.f64 1 (cos.f64 y)) 2))) z)
(*.f64 (/.f64 (-.f64 1 (pow.f64 (+.f64 1 (cos.f64 y)) 3)) (-.f64 (-.f64 -2 (cos.f64 y)) (pow.f64 (+.f64 1 (cos.f64 y)) 2))) z)
(/.f64 (*.f64 z (*.f64 (+.f64 (cos.f64 y) 2) (cos.f64 y))) (+.f64 (cos.f64 y) 2))
(*.f64 (cos.f64 y) z)
(pow.f64 (*.f64 (cos.f64 y) z) 1)
(*.f64 (cos.f64 y) z)
(pow.f64 (pow.f64 (*.f64 (cos.f64 y) z) 3) 1/3)
(*.f64 (cos.f64 y) z)
(pow.f64 (cbrt.f64 (*.f64 (cos.f64 y) z)) 3)
(*.f64 (cos.f64 y) z)
(pow.f64 (sqrt.f64 (*.f64 (cos.f64 y) z)) 2)
(*.f64 (cos.f64 y) z)
(sqrt.f64 (pow.f64 (*.f64 (cos.f64 y) z) 2))
(*.f64 (cos.f64 y) z)
(log.f64 (pow.f64 (exp.f64 (cos.f64 y)) z))
(*.f64 (cos.f64 y) z)
(cbrt.f64 (pow.f64 (*.f64 (cos.f64 y) z) 3))
(*.f64 (cos.f64 y) z)
(cbrt.f64 (*.f64 (pow.f64 (cos.f64 y) 3) (pow.f64 z 3)))
(*.f64 (cos.f64 y) z)
(cbrt.f64 (*.f64 (pow.f64 z 3) (pow.f64 (cos.f64 y) 3)))
(*.f64 (cos.f64 y) z)
(expm1.f64 (log1p.f64 (*.f64 (cos.f64 y) z)))
(*.f64 (cos.f64 y) z)
(log1p.f64 (expm1.f64 (*.f64 (cos.f64 y) z)))
(*.f64 (cos.f64 y) z)
(exp.f64 (log.f64 (*.f64 (cos.f64 y) z)))
(*.f64 (cos.f64 y) z)

localize12.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.1b
(*.f64 z (cos.f64 y))
0.6b
(cbrt.f64 (*.f64 z (cos.f64 y)))
0.8b
(pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 3)
Compiler

Compiled 34 to 12 computations (64.7% saved)

localize19.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(*.f64 (cbrt.f64 z) (cos.f64 y))
0.3b
(*.f64 (pow.f64 (cbrt.f64 z) 2) (*.f64 (cbrt.f64 z) (cos.f64 y)))
0.5b
(pow.f64 (cbrt.f64 z) 2)
0.6b
(cbrt.f64 z)
Compiler

Compiled 42 to 16 computations (61.9% saved)

series6.3s (32.9%)

Counts
4 → 24
Calls

18 calls:

TimeVariablePointExpression
1.3s
z
@-inf
(*.f64 (pow.f64 (cbrt.f64 z) 2) (*.f64 (cbrt.f64 z) (cos.f64 y)))
892.0ms
z
@0
(*.f64 (pow.f64 (cbrt.f64 z) 2) (*.f64 (cbrt.f64 z) (cos.f64 y)))
859.0ms
z
@inf
(*.f64 (pow.f64 (cbrt.f64 z) 2) (*.f64 (cbrt.f64 z) (cos.f64 y)))
634.0ms
z
@-inf
(pow.f64 (cbrt.f64 z) 2)
468.0ms
z
@inf
(pow.f64 (cbrt.f64 z) 2)
Compiler

Compiled 571705 to 447184 computations (21.8% saved)

rewrite56.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
769×pow1_binary64
708×add-log-exp_binary64
708×log1p-expm1-u_binary64
708×expm1-log1p-u_binary64
691×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0923
118123
2201323
Stop Event
node limit
Counts
4 → 63
Calls
Call 1
Inputs
(cbrt.f64 z)
(pow.f64 (cbrt.f64 z) 2)
(*.f64 (pow.f64 (cbrt.f64 z) 2) (*.f64 (cbrt.f64 z) (cos.f64 y)))
(*.f64 (cbrt.f64 z) (cos.f64 y))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (cbrt.f64 z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 z) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (cbrt.f64 z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cbrt.f64 z)) 2) (cbrt.f64 (cbrt.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 z)) (pow.f64 (cbrt.f64 (cbrt.f64 z)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 z 1/6) (pow.f64 z 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cbrt.f64 (*.f64 z (cbrt.f64 z)))) (sqrt.f64 (pow.f64 (cbrt.f64 (cbrt.f64 z)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/3) (cbrt.f64 z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 z) 1/3) (pow.f64 (sqrt.f64 z) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 z 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 z) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cbrt.f64 z) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (cbrt.f64 z)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 z 1/6) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (cbrt.f64 z) 2))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (cbrt.f64 z))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (cbrt.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (cbrt.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (cbrt.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (cbrt.f64 z)))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (pow.f64 (cbrt.f64 z) 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 z) (cbrt.f64 z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 z) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (cbrt.f64 z) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cbrt.f64 z)) 2) (cbrt.f64 (*.f64 z (cbrt.f64 z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cbrt.f64 z)) 2) (*.f64 (cbrt.f64 (cbrt.f64 z)) (cbrt.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 z (cbrt.f64 z))) (pow.f64 (cbrt.f64 (cbrt.f64 z)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 z) (pow.f64 z 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 z 1/6) (*.f64 (pow.f64 z 1/6) (cbrt.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 z) (pow.f64 (cbrt.f64 (cbrt.f64 z)) 2)) (cbrt.f64 (cbrt.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 z (cbrt.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (cbrt.f64 z) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (cbrt.f64 z) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (cbrt.f64 z) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 2 (log.f64 (cbrt.f64 z))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 z (cos.f64 y))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 z (cos.f64 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 z (cos.f64 y)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 z (cos.f64 y))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 z (cos.f64 y)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 z) (cos.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 z (cos.f64 y)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 z 3) (pow.f64 (cos.f64 y) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (*.f64 z z) (pow.f64 (*.f64 (cbrt.f64 z) (cos.f64 y)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (*.f64 (cbrt.f64 z) (cos.f64 y)) 3) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 z (cos.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 z (cos.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 z (cos.f64 y))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 (cbrt.f64 z) (cos.f64 y))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (cbrt.f64 z) (cos.f64 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (cbrt.f64 z) (cos.f64 y)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (cbrt.f64 z) (cos.f64 y))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (cbrt.f64 z) (cos.f64 y))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (cbrt.f64 z) (cos.f64 y)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (cbrt.f64 z)) (cos.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (cbrt.f64 z) (cos.f64 y)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 z (pow.f64 (cos.f64 y) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (cos.f64 y) 3) z))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (cbrt.f64 z) (cos.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (cbrt.f64 z) (cos.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (cbrt.f64 z) (cos.f64 y))))))))

simplify52.0ms (0.3%)

Algorithm
egg-herbie
Rules
845×fma-def_binary64
598×log-prod_binary64
358×distribute-lft-out_binary64
267×sqr-pow_binary64
255×cube-prod_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0163896
1394690
21754632
34980630
Stop Event
node limit
Counts
87 → 105
Calls
Call 1
Inputs
(*.f64 (pow.f64 (pow.f64 z 1/3) 2) (pow.f64 z 1/3))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y 2) (*.f64 (pow.f64 (pow.f64 z 1/3) 2) (pow.f64 z 1/3)))) (*.f64 (pow.f64 (pow.f64 z 1/3) 2) (pow.f64 z 1/3)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y 2) (*.f64 (pow.f64 (pow.f64 z 1/3) 2) (pow.f64 z 1/3)))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 y 4) (*.f64 (pow.f64 (pow.f64 z 1/3) 2) (pow.f64 z 1/3)))) (*.f64 (pow.f64 (pow.f64 z 1/3) 2) (pow.f64 z 1/3))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y 2) (*.f64 (pow.f64 (pow.f64 z 1/3) 2) (pow.f64 z 1/3)))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 y 4) (*.f64 (pow.f64 (pow.f64 z 1/3) 2) (pow.f64 z 1/3)))) (+.f64 (*.f64 (pow.f64 (pow.f64 z 1/3) 2) (pow.f64 z 1/3)) (*.f64 -1/720 (*.f64 (pow.f64 z 1/3) (*.f64 (pow.f64 (pow.f64 z 1/3) 2) (pow.f64 y 6)))))))
(*.f64 (pow.f64 z 1/3) (*.f64 (pow.f64 (pow.f64 z 1/3) 2) (cos.f64 y)))
(*.f64 (pow.f64 z 1/3) (*.f64 (pow.f64 (pow.f64 z 1/3) 2) (cos.f64 y)))
(*.f64 (pow.f64 z 1/3) (*.f64 (pow.f64 (pow.f64 z 1/3) 2) (cos.f64 y)))
(*.f64 (pow.f64 z 1/3) (*.f64 (pow.f64 (pow.f64 z 1/3) 2) (cos.f64 y)))
(*.f64 (pow.f64 z 1/3) (*.f64 (pow.f64 (pow.f64 z 1/3) 2) (cos.f64 y)))
(*.f64 (pow.f64 z 1/3) (*.f64 (pow.f64 (pow.f64 z 1/3) 2) (cos.f64 y)))
(*.f64 (pow.f64 z 1/3) (*.f64 (pow.f64 (pow.f64 z 1/3) 2) (cos.f64 y)))
(*.f64 (pow.f64 z 1/3) (*.f64 (pow.f64 (pow.f64 z 1/3) 2) (cos.f64 y)))
(pow.f64 z 1/3)
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y 2) (pow.f64 z 1/3))) (pow.f64 z 1/3))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y 2) (pow.f64 z 1/3))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 y 4) (pow.f64 z 1/3))) (pow.f64 z 1/3)))
(+.f64 (*.f64 -1/720 (*.f64 (pow.f64 z 1/3) (pow.f64 y 6))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y 2) (pow.f64 z 1/3))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 y 4) (pow.f64 z 1/3))) (pow.f64 z 1/3))))
(*.f64 (pow.f64 z 1/3) (cos.f64 y))
(*.f64 (pow.f64 z 1/3) (cos.f64 y))
(*.f64 (pow.f64 z 1/3) (cos.f64 y))
(*.f64 (pow.f64 z 1/3) (cos.f64 y))
(*.f64 (pow.f64 z 1/3) (cos.f64 y))
(*.f64 (pow.f64 z 1/3) (cos.f64 y))
(*.f64 (pow.f64 z 1/3) (cos.f64 y))
(*.f64 (pow.f64 z 1/3) (cos.f64 y))
(-.f64 (+.f64 1 (cbrt.f64 z)) 1)
(*.f64 (cbrt.f64 z) 1)
(*.f64 1 (cbrt.f64 z))
(*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 z)) 2) (cbrt.f64 (cbrt.f64 z)))
(*.f64 (cbrt.f64 (cbrt.f64 z)) (pow.f64 (cbrt.f64 (cbrt.f64 z)) 2))
(*.f64 (pow.f64 z 1/6) (pow.f64 z 1/6))
(*.f64 (sqrt.f64 (cbrt.f64 (*.f64 z (cbrt.f64 z)))) (sqrt.f64 (pow.f64 (cbrt.f64 (cbrt.f64 z)) 2)))
(*.f64 (pow.f64 1 1/3) (cbrt.f64 z))
(*.f64 (pow.f64 (sqrt.f64 z) 1/3) (pow.f64 (sqrt.f64 z) 1/3))
(pow.f64 z 1/3)
(pow.f64 (cbrt.f64 z) 1)
(pow.f64 (pow.f64 (cbrt.f64 z) 2) 1/2)
(pow.f64 (cbrt.f64 (cbrt.f64 z)) 3)
(pow.f64 (pow.f64 z 1/6) 2)
(sqrt.f64 (pow.f64 (cbrt.f64 z) 2))
(fabs.f64 (cbrt.f64 z))
(log.f64 (exp.f64 (cbrt.f64 z)))
(expm1.f64 (log1p.f64 (cbrt.f64 z)))
(log1p.f64 (expm1.f64 (cbrt.f64 z)))
(exp.f64 (log.f64 (cbrt.f64 z)))
(-.f64 (+.f64 1 (pow.f64 (cbrt.f64 z) 2)) 1)
(*.f64 (cbrt.f64 z) (cbrt.f64 z))
(*.f64 (pow.f64 (cbrt.f64 z) 2) 1)
(*.f64 1 (pow.f64 (cbrt.f64 z) 2))
(*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 z)) 2) (cbrt.f64 (*.f64 z (cbrt.f64 z))))
(*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 z)) 2) (*.f64 (cbrt.f64 (cbrt.f64 z)) (cbrt.f64 z)))
(*.f64 (cbrt.f64 (*.f64 z (cbrt.f64 z))) (pow.f64 (cbrt.f64 (cbrt.f64 z)) 2))
(*.f64 (sqrt.f64 z) (pow.f64 z 1/6))
(*.f64 (pow.f64 z 1/6) (*.f64 (pow.f64 z 1/6) (cbrt.f64 z)))
(*.f64 (*.f64 (cbrt.f64 z) (pow.f64 (cbrt.f64 (cbrt.f64 z)) 2)) (cbrt.f64 (cbrt.f64 z)))
(sqrt.f64 (*.f64 z (cbrt.f64 z)))
(log.f64 (exp.f64 (pow.f64 (cbrt.f64 z) 2)))
(cbrt.f64 (*.f64 z z))
(expm1.f64 (log1p.f64 (pow.f64 (cbrt.f64 z) 2)))
(log1p.f64 (expm1.f64 (pow.f64 (cbrt.f64 z) 2)))
(exp.f64 (*.f64 2 (log.f64 (cbrt.f64 z))))
(-.f64 (+.f64 1 (*.f64 z (cos.f64 y))) 1)
(pow.f64 (*.f64 z (cos.f64 y)) 1)
(pow.f64 (pow.f64 (*.f64 z (cos.f64 y)) 3) 1/3)
(pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 3)
(pow.f64 (sqrt.f64 (*.f64 z (cos.f64 y))) 2)
(sqrt.f64 (pow.f64 (*.f64 z (cos.f64 y)) 2))
(log.f64 (pow.f64 (exp.f64 z) (cos.f64 y)))
(cbrt.f64 (pow.f64 (*.f64 z (cos.f64 y)) 3))
(cbrt.f64 (*.f64 (pow.f64 z 3) (pow.f64 (cos.f64 y) 3)))
(cbrt.f64 (*.f64 (*.f64 z z) (pow.f64 (*.f64 (cbrt.f64 z) (cos.f64 y)) 3)))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 (cbrt.f64 z) (cos.f64 y)) 3) (*.f64 z z)))
(expm1.f64 (log1p.f64 (*.f64 z (cos.f64 y))))
(log1p.f64 (expm1.f64 (*.f64 z (cos.f64 y))))
(exp.f64 (log.f64 (*.f64 z (cos.f64 y))))
(-.f64 (+.f64 1 (*.f64 (cbrt.f64 z) (cos.f64 y))) 1)
(pow.f64 (*.f64 (cbrt.f64 z) (cos.f64 y)) 1)
(pow.f64 (pow.f64 (*.f64 (cbrt.f64 z) (cos.f64 y)) 3) 1/3)
(pow.f64 (cbrt.f64 (*.f64 (cbrt.f64 z) (cos.f64 y))) 3)
(pow.f64 (sqrt.f64 (*.f64 (cbrt.f64 z) (cos.f64 y))) 2)
(sqrt.f64 (pow.f64 (*.f64 (cbrt.f64 z) (cos.f64 y)) 2))
(log.f64 (pow.f64 (exp.f64 (cbrt.f64 z)) (cos.f64 y)))
(cbrt.f64 (pow.f64 (*.f64 (cbrt.f64 z) (cos.f64 y)) 3))
(cbrt.f64 (*.f64 z (pow.f64 (cos.f64 y) 3)))
(cbrt.f64 (*.f64 (pow.f64 (cos.f64 y) 3) z))
(expm1.f64 (log1p.f64 (*.f64 (cbrt.f64 z) (cos.f64 y))))
(log1p.f64 (expm1.f64 (*.f64 (cbrt.f64 z) (cos.f64 y))))
(exp.f64 (log.f64 (*.f64 (cbrt.f64 z) (cos.f64 y))))
Outputs
(*.f64 (pow.f64 (pow.f64 z 1/3) 2) (pow.f64 z 1/3))
(pow.f64 (cbrt.f64 z) 3)
z
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y 2) (*.f64 (pow.f64 (pow.f64 z 1/3) 2) (pow.f64 z 1/3)))) (*.f64 (pow.f64 (pow.f64 z 1/3) 2) (pow.f64 z 1/3)))
(fma.f64 -1/2 (*.f64 (pow.f64 (cbrt.f64 z) 3) (*.f64 y y)) (pow.f64 (cbrt.f64 z) 3))
(fma.f64 -1/2 (*.f64 z (*.f64 y y)) z)
(*.f64 z (fma.f64 -1/2 (*.f64 y y) 1))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y 2) (*.f64 (pow.f64 (pow.f64 z 1/3) 2) (pow.f64 z 1/3)))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 y 4) (*.f64 (pow.f64 (pow.f64 z 1/3) 2) (pow.f64 z 1/3)))) (*.f64 (pow.f64 (pow.f64 z 1/3) 2) (pow.f64 z 1/3))))
(fma.f64 -1/2 (*.f64 (pow.f64 (cbrt.f64 z) 3) (*.f64 y y)) (fma.f64 1/24 (*.f64 (pow.f64 (cbrt.f64 z) 3) (pow.f64 y 4)) (pow.f64 (cbrt.f64 z) 3)))
(fma.f64 -1/2 (*.f64 z (*.f64 y y)) (fma.f64 1/24 (*.f64 z (pow.f64 y 4)) z))
(fma.f64 z (fma.f64 -1/2 (*.f64 y y) (*.f64 1/24 (pow.f64 y 4))) z)
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y 2) (*.f64 (pow.f64 (pow.f64 z 1/3) 2) (pow.f64 z 1/3)))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 y 4) (*.f64 (pow.f64 (pow.f64 z 1/3) 2) (pow.f64 z 1/3)))) (+.f64 (*.f64 (pow.f64 (pow.f64 z 1/3) 2) (pow.f64 z 1/3)) (*.f64 -1/720 (*.f64 (pow.f64 z 1/3) (*.f64 (pow.f64 (pow.f64 z 1/3) 2) (pow.f64 y 6)))))))
(fma.f64 -1/2 (*.f64 (pow.f64 (cbrt.f64 z) 3) (*.f64 y y)) (+.f64 (fma.f64 1/24 (*.f64 (pow.f64 (cbrt.f64 z) 3) (pow.f64 y 4)) (pow.f64 (cbrt.f64 z) 3)) (*.f64 -1/720 (*.f64 (pow.f64 (cbrt.f64 z) 3) (pow.f64 y 6)))))
(fma.f64 -1/2 (*.f64 z (*.f64 y y)) (fma.f64 1/24 (*.f64 z (pow.f64 y 4)) (fma.f64 -1/720 (*.f64 z (pow.f64 y 6)) z)))
(fma.f64 z (fma.f64 -1/2 (*.f64 y y) (*.f64 1/24 (pow.f64 y 4))) (fma.f64 z (*.f64 (pow.f64 y 6) -1/720) z))
(fma.f64 z (fma.f64 -1/2 (*.f64 y y) (*.f64 1/24 (pow.f64 y 4))) (fma.f64 -1/720 (*.f64 z (pow.f64 y 6)) z))
(*.f64 (pow.f64 z 1/3) (*.f64 (pow.f64 (pow.f64 z 1/3) 2) (cos.f64 y)))
(*.f64 (pow.f64 (cbrt.f64 z) 3) (cos.f64 y))
(*.f64 z (cos.f64 y))
(*.f64 (pow.f64 z 1/3) (*.f64 (pow.f64 (pow.f64 z 1/3) 2) (cos.f64 y)))
(*.f64 (pow.f64 (cbrt.f64 z) 3) (cos.f64 y))
(*.f64 z (cos.f64 y))
(*.f64 (pow.f64 z 1/3) (*.f64 (pow.f64 (pow.f64 z 1/3) 2) (cos.f64 y)))
(*.f64 (pow.f64 (cbrt.f64 z) 3) (cos.f64 y))
(*.f64 z (cos.f64 y))
(*.f64 (pow.f64 z 1/3) (*.f64 (pow.f64 (pow.f64 z 1/3) 2) (cos.f64 y)))
(*.f64 (pow.f64 (cbrt.f64 z) 3) (cos.f64 y))
(*.f64 z (cos.f64 y))
(*.f64 (pow.f64 z 1/3) (*.f64 (pow.f64 (pow.f64 z 1/3) 2) (cos.f64 y)))
(*.f64 (pow.f64 (cbrt.f64 z) 3) (cos.f64 y))
(*.f64 z (cos.f64 y))
(*.f64 (pow.f64 z 1/3) (*.f64 (pow.f64 (pow.f64 z 1/3) 2) (cos.f64 y)))
(*.f64 (pow.f64 (cbrt.f64 z) 3) (cos.f64 y))
(*.f64 z (cos.f64 y))
(*.f64 (pow.f64 z 1/3) (*.f64 (pow.f64 (pow.f64 z 1/3) 2) (cos.f64 y)))
(*.f64 (pow.f64 (cbrt.f64 z) 3) (cos.f64 y))
(*.f64 z (cos.f64 y))
(*.f64 (pow.f64 z 1/3) (*.f64 (pow.f64 (pow.f64 z 1/3) 2) (cos.f64 y)))
(*.f64 (pow.f64 (cbrt.f64 z) 3) (cos.f64 y))
(*.f64 z (cos.f64 y))
(pow.f64 z 1/3)
(cbrt.f64 z)
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y 2) (pow.f64 z 1/3))) (pow.f64 z 1/3))
(fma.f64 -1/2 (*.f64 (*.f64 y y) (cbrt.f64 z)) (cbrt.f64 z))
(*.f64 (cbrt.f64 z) (+.f64 (*.f64 -1/2 (*.f64 y y)) 1))
(*.f64 (cbrt.f64 z) (fma.f64 -1/2 (*.f64 y y) 1))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y 2) (pow.f64 z 1/3))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 y 4) (pow.f64 z 1/3))) (pow.f64 z 1/3)))
(fma.f64 -1/2 (*.f64 (*.f64 y y) (cbrt.f64 z)) (fma.f64 1/24 (*.f64 (pow.f64 y 4) (cbrt.f64 z)) (cbrt.f64 z)))
(+.f64 (cbrt.f64 z) (*.f64 (cbrt.f64 z) (+.f64 (*.f64 -1/2 (*.f64 y y)) (*.f64 1/24 (pow.f64 y 4)))))
(*.f64 (cbrt.f64 z) (+.f64 (fma.f64 -1/2 (*.f64 y y) 1) (*.f64 1/24 (pow.f64 y 4))))
(*.f64 (cbrt.f64 z) (+.f64 (*.f64 -1/2 (*.f64 y y)) (fma.f64 1/24 (pow.f64 y 4) 1)))
(+.f64 (*.f64 -1/720 (*.f64 (pow.f64 z 1/3) (pow.f64 y 6))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y 2) (pow.f64 z 1/3))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 y 4) (pow.f64 z 1/3))) (pow.f64 z 1/3))))
(fma.f64 -1/720 (*.f64 (pow.f64 y 6) (cbrt.f64 z)) (fma.f64 -1/2 (*.f64 (*.f64 y y) (cbrt.f64 z)) (fma.f64 1/24 (*.f64 (pow.f64 y 4) (cbrt.f64 z)) (cbrt.f64 z))))
(fma.f64 -1/720 (*.f64 (pow.f64 y 6) (cbrt.f64 z)) (+.f64 (cbrt.f64 z) (*.f64 (cbrt.f64 z) (+.f64 (*.f64 -1/2 (*.f64 y y)) (*.f64 1/24 (pow.f64 y 4))))))
(+.f64 (cbrt.f64 z) (*.f64 (cbrt.f64 z) (+.f64 (*.f64 (pow.f64 y 6) -1/720) (fma.f64 -1/2 (*.f64 y y) (*.f64 1/24 (pow.f64 y 4))))))
(*.f64 (cbrt.f64 z) (+.f64 (*.f64 -1/2 (*.f64 y y)) (+.f64 (*.f64 -1/720 (pow.f64 y 6)) (fma.f64 1/24 (pow.f64 y 4) 1))))
(*.f64 (pow.f64 z 1/3) (cos.f64 y))
(*.f64 (cos.f64 y) (cbrt.f64 z))
(*.f64 (pow.f64 z 1/3) (cos.f64 y))
(*.f64 (cos.f64 y) (cbrt.f64 z))
(*.f64 (pow.f64 z 1/3) (cos.f64 y))
(*.f64 (cos.f64 y) (cbrt.f64 z))
(*.f64 (pow.f64 z 1/3) (cos.f64 y))
(*.f64 (cos.f64 y) (cbrt.f64 z))
(*.f64 (pow.f64 z 1/3) (cos.f64 y))
(*.f64 (cos.f64 y) (cbrt.f64 z))
(*.f64 (pow.f64 z 1/3) (cos.f64 y))
(*.f64 (cos.f64 y) (cbrt.f64 z))
(*.f64 (pow.f64 z 1/3) (cos.f64 y))
(*.f64 (cos.f64 y) (cbrt.f64 z))
(*.f64 (pow.f64 z 1/3) (cos.f64 y))
(*.f64 (cos.f64 y) (cbrt.f64 z))
(-.f64 (+.f64 1 (cbrt.f64 z)) 1)
(cbrt.f64 z)
(*.f64 (cbrt.f64 z) 1)
(cbrt.f64 z)
(*.f64 1 (cbrt.f64 z))
(cbrt.f64 z)
(*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 z)) 2) (cbrt.f64 (cbrt.f64 z)))
(cbrt.f64 z)
(*.f64 (cbrt.f64 (cbrt.f64 z)) (pow.f64 (cbrt.f64 (cbrt.f64 z)) 2))
(cbrt.f64 z)
(*.f64 (pow.f64 z 1/6) (pow.f64 z 1/6))
(cbrt.f64 z)
(*.f64 (sqrt.f64 (cbrt.f64 (*.f64 z (cbrt.f64 z)))) (sqrt.f64 (pow.f64 (cbrt.f64 (cbrt.f64 z)) 2)))
(*.f64 (sqrt.f64 (cbrt.f64 (*.f64 z (cbrt.f64 z)))) (fabs.f64 (cbrt.f64 (cbrt.f64 z))))
(*.f64 (cbrt.f64 (cbrt.f64 z)) (sqrt.f64 (cbrt.f64 (*.f64 z (cbrt.f64 z)))))
(*.f64 (pow.f64 1 1/3) (cbrt.f64 z))
(cbrt.f64 z)
(*.f64 (pow.f64 (sqrt.f64 z) 1/3) (pow.f64 (sqrt.f64 z) 1/3))
(*.f64 (cbrt.f64 (sqrt.f64 z)) (cbrt.f64 (sqrt.f64 z)))
(pow.f64 z 1/3)
(cbrt.f64 z)
(pow.f64 (cbrt.f64 z) 1)
(cbrt.f64 z)
(pow.f64 (pow.f64 (cbrt.f64 z) 2) 1/2)
(cbrt.f64 z)
(pow.f64 (cbrt.f64 (cbrt.f64 z)) 3)
(cbrt.f64 z)
(pow.f64 (pow.f64 z 1/6) 2)
(cbrt.f64 z)
(sqrt.f64 (pow.f64 (cbrt.f64 z) 2))
(cbrt.f64 z)
(fabs.f64 (cbrt.f64 z))
(cbrt.f64 z)
(log.f64 (exp.f64 (cbrt.f64 z)))
(cbrt.f64 z)
(expm1.f64 (log1p.f64 (cbrt.f64 z)))
(cbrt.f64 z)
(log1p.f64 (expm1.f64 (cbrt.f64 z)))
(cbrt.f64 z)
(exp.f64 (log.f64 (cbrt.f64 z)))
(cbrt.f64 z)
(-.f64 (+.f64 1 (pow.f64 (cbrt.f64 z) 2)) 1)
(+.f64 1 (-.f64 (pow.f64 (cbrt.f64 z) 2) 1))
(+.f64 (pow.f64 (cbrt.f64 z) 2) 0)
(pow.f64 (cbrt.f64 z) 2)
(*.f64 (cbrt.f64 z) (cbrt.f64 z))
(+.f64 1 (-.f64 (pow.f64 (cbrt.f64 z) 2) 1))
(+.f64 (pow.f64 (cbrt.f64 z) 2) 0)
(pow.f64 (cbrt.f64 z) 2)
(*.f64 (pow.f64 (cbrt.f64 z) 2) 1)
(+.f64 1 (-.f64 (pow.f64 (cbrt.f64 z) 2) 1))
(+.f64 (pow.f64 (cbrt.f64 z) 2) 0)
(pow.f64 (cbrt.f64 z) 2)
(*.f64 1 (pow.f64 (cbrt.f64 z) 2))
(+.f64 1 (-.f64 (pow.f64 (cbrt.f64 z) 2) 1))
(+.f64 (pow.f64 (cbrt.f64 z) 2) 0)
(pow.f64 (cbrt.f64 z) 2)
(*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 z)) 2) (cbrt.f64 (*.f64 z (cbrt.f64 z))))
(*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 z)) 2) (*.f64 (cbrt.f64 (cbrt.f64 z)) (cbrt.f64 z)))
(+.f64 1 (-.f64 (pow.f64 (cbrt.f64 z) 2) 1))
(+.f64 (pow.f64 (cbrt.f64 z) 2) 0)
(pow.f64 (cbrt.f64 z) 2)
(*.f64 (cbrt.f64 (*.f64 z (cbrt.f64 z))) (pow.f64 (cbrt.f64 (cbrt.f64 z)) 2))
(*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 z)) 2) (cbrt.f64 (*.f64 z (cbrt.f64 z))))
(*.f64 (sqrt.f64 z) (pow.f64 z 1/6))
(+.f64 1 (-.f64 (pow.f64 (cbrt.f64 z) 2) 1))
(+.f64 (pow.f64 (cbrt.f64 z) 2) 0)
(pow.f64 (cbrt.f64 z) 2)
(*.f64 (pow.f64 z 1/6) (*.f64 (pow.f64 z 1/6) (cbrt.f64 z)))
(+.f64 1 (-.f64 (pow.f64 (cbrt.f64 z) 2) 1))
(+.f64 (pow.f64 (cbrt.f64 z) 2) 0)
(pow.f64 (cbrt.f64 z) 2)
(*.f64 (*.f64 (cbrt.f64 z) (pow.f64 (cbrt.f64 (cbrt.f64 z)) 2)) (cbrt.f64 (cbrt.f64 z)))
(+.f64 1 (-.f64 (pow.f64 (cbrt.f64 z) 2) 1))
(+.f64 (pow.f64 (cbrt.f64 z) 2) 0)
(pow.f64 (cbrt.f64 z) 2)
(sqrt.f64 (*.f64 z (cbrt.f64 z)))
(+.f64 1 (-.f64 (pow.f64 (cbrt.f64 z) 2) 1))
(+.f64 (pow.f64 (cbrt.f64 z) 2) 0)
(pow.f64 (cbrt.f64 z) 2)
(log.f64 (exp.f64 (pow.f64 (cbrt.f64 z) 2)))
(+.f64 1 (-.f64 (pow.f64 (cbrt.f64 z) 2) 1))
(+.f64 (pow.f64 (cbrt.f64 z) 2) 0)
(pow.f64 (cbrt.f64 z) 2)
(cbrt.f64 (*.f64 z z))
(expm1.f64 (log1p.f64 (pow.f64 (cbrt.f64 z) 2)))
(+.f64 1 (-.f64 (pow.f64 (cbrt.f64 z) 2) 1))
(+.f64 (pow.f64 (cbrt.f64 z) 2) 0)
(pow.f64 (cbrt.f64 z) 2)
(log1p.f64 (expm1.f64 (pow.f64 (cbrt.f64 z) 2)))
(+.f64 1 (-.f64 (pow.f64 (cbrt.f64 z) 2) 1))
(+.f64 (pow.f64 (cbrt.f64 z) 2) 0)
(pow.f64 (cbrt.f64 z) 2)
(exp.f64 (*.f64 2 (log.f64 (cbrt.f64 z))))
(+.f64 1 (-.f64 (pow.f64 (cbrt.f64 z) 2) 1))
(+.f64 (pow.f64 (cbrt.f64 z) 2) 0)
(pow.f64 (cbrt.f64 z) 2)
(-.f64 (+.f64 1 (*.f64 z (cos.f64 y))) 1)
(*.f64 (pow.f64 (cbrt.f64 z) 3) (cos.f64 y))
(*.f64 z (cos.f64 y))
(pow.f64 (*.f64 z (cos.f64 y)) 1)
(*.f64 (pow.f64 (cbrt.f64 z) 3) (cos.f64 y))
(*.f64 z (cos.f64 y))
(pow.f64 (pow.f64 (*.f64 z (cos.f64 y)) 3) 1/3)
(*.f64 (pow.f64 (cbrt.f64 z) 3) (cos.f64 y))
(*.f64 z (cos.f64 y))
(pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 3)
(*.f64 (pow.f64 (cbrt.f64 z) 3) (cos.f64 y))
(*.f64 z (cos.f64 y))
(pow.f64 (sqrt.f64 (*.f64 z (cos.f64 y))) 2)
(*.f64 (pow.f64 (cbrt.f64 z) 3) (cos.f64 y))
(*.f64 z (cos.f64 y))
(sqrt.f64 (pow.f64 (*.f64 z (cos.f64 y)) 2))
(*.f64 (pow.f64 (cbrt.f64 z) 3) (cos.f64 y))
(*.f64 z (cos.f64 y))
(log.f64 (pow.f64 (exp.f64 z) (cos.f64 y)))
(*.f64 (pow.f64 (cbrt.f64 z) 3) (cos.f64 y))
(*.f64 z (cos.f64 y))
(cbrt.f64 (pow.f64 (*.f64 z (cos.f64 y)) 3))
(*.f64 (pow.f64 (cbrt.f64 z) 3) (cos.f64 y))
(*.f64 z (cos.f64 y))
(cbrt.f64 (*.f64 (pow.f64 z 3) (pow.f64 (cos.f64 y) 3)))
(*.f64 (pow.f64 (cbrt.f64 z) 3) (cos.f64 y))
(*.f64 z (cos.f64 y))
(cbrt.f64 (*.f64 (*.f64 z z) (pow.f64 (*.f64 (cbrt.f64 z) (cos.f64 y)) 3)))
(*.f64 (pow.f64 (cbrt.f64 z) 3) (cos.f64 y))
(*.f64 z (cos.f64 y))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 (cbrt.f64 z) (cos.f64 y)) 3) (*.f64 z z)))
(*.f64 (pow.f64 (cbrt.f64 z) 3) (cos.f64 y))
(*.f64 z (cos.f64 y))
(expm1.f64 (log1p.f64 (*.f64 z (cos.f64 y))))
(*.f64 (pow.f64 (cbrt.f64 z) 3) (cos.f64 y))
(*.f64 z (cos.f64 y))
(log1p.f64 (expm1.f64 (*.f64 z (cos.f64 y))))
(*.f64 (pow.f64 (cbrt.f64 z) 3) (cos.f64 y))
(*.f64 z (cos.f64 y))
(exp.f64 (log.f64 (*.f64 z (cos.f64 y))))
(*.f64 (pow.f64 (cbrt.f64 z) 3) (cos.f64 y))
(*.f64 z (cos.f64 y))
(-.f64 (+.f64 1 (*.f64 (cbrt.f64 z) (cos.f64 y))) 1)
(*.f64 (cos.f64 y) (cbrt.f64 z))
(pow.f64 (*.f64 (cbrt.f64 z) (cos.f64 y)) 1)
(*.f64 (cos.f64 y) (cbrt.f64 z))
(pow.f64 (pow.f64 (*.f64 (cbrt.f64 z) (cos.f64 y)) 3) 1/3)
(*.f64 (cos.f64 y) (cbrt.f64 z))
(pow.f64 (cbrt.f64 (*.f64 (cbrt.f64 z) (cos.f64 y))) 3)
(*.f64 (cos.f64 y) (cbrt.f64 z))
(pow.f64 (sqrt.f64 (*.f64 (cbrt.f64 z) (cos.f64 y))) 2)
(*.f64 (cos.f64 y) (cbrt.f64 z))
(sqrt.f64 (pow.f64 (*.f64 (cbrt.f64 z) (cos.f64 y)) 2))
(*.f64 (cos.f64 y) (cbrt.f64 z))
(log.f64 (pow.f64 (exp.f64 (cbrt.f64 z)) (cos.f64 y)))
(*.f64 (cos.f64 y) (cbrt.f64 z))
(cbrt.f64 (pow.f64 (*.f64 (cbrt.f64 z) (cos.f64 y)) 3))
(*.f64 (cos.f64 y) (cbrt.f64 z))
(cbrt.f64 (*.f64 z (pow.f64 (cos.f64 y) 3)))
(*.f64 (cos.f64 y) (cbrt.f64 z))
(cbrt.f64 (*.f64 (pow.f64 (cos.f64 y) 3) z))
(*.f64 (cos.f64 y) (cbrt.f64 z))
(expm1.f64 (log1p.f64 (*.f64 (cbrt.f64 z) (cos.f64 y))))
(*.f64 (cos.f64 y) (cbrt.f64 z))
(log1p.f64 (expm1.f64 (*.f64 (cbrt.f64 z) (cos.f64 y))))
(*.f64 (cos.f64 y) (cbrt.f64 z))
(exp.f64 (log.f64 (*.f64 (cbrt.f64 z) (cos.f64 y))))
(*.f64 (cos.f64 y) (cbrt.f64 z))

eval191.0ms (1%)

Compiler

Compiled 12440 to 6384 computations (48.7% saved)

prune127.0ms (0.7%)

Pruning

15 alts after pruning (9 fresh and 6 done)

PrunedKeptTotal
New5755580
Fresh044
Picked101
Done369
Total57915594
Error
0b
Counts
594 → 15
Alt Table
Click to see full alt table
StatusErrorProgram
0.1b
(+.f64 (+.f64 x (sin.f64 y)) (+.f64 (*.f64 (+.f64 1 (cos.f64 y)) z) (*.f64 -1 z)))
0.1b
(+.f64 (+.f64 x (sin.f64 y)) (+.f64 z (*.f64 (+.f64 (cos.f64 y) -1) z)))
0.1b
(+.f64 (+.f64 x (sin.f64 y)) (*.f64 (+.f64 (+.f64 (cos.f64 y) -1) 1) z))
11.4b
(+.f64 (+.f64 x (sin.f64 y)) z)
26.3b
(+.f64 (sin.f64 y) (*.f64 z (cos.f64 y)))
45.8b
(+.f64 z y)
9.7b
(+.f64 x (pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 3))
9.7b
(+.f64 x (*.f64 (pow.f64 (cbrt.f64 z) 3) (cos.f64 y)))
9.3b
(+.f64 x (*.f64 (-.f64 (+.f64 1 (cos.f64 y)) 1) z))
37.7b
(+.f64 x (*.f64 (*.f64 (cos.f64 y) (sqrt.f64 z)) (sqrt.f64 z)))
9.2b
(+.f64 x (*.f64 (cbrt.f64 (pow.f64 (cos.f64 y) 3)) z))
20.5b
(+.f64 x z)
35.2b
(*.f64 (cos.f64 y) z)
53.3b
(sin.f64 y)
46.5b
z
Compiler

Compiled 159 to 114 computations (28.3% saved)

regimes74.0ms (0.4%)

Counts
30 → 1
Calls
Call 1
Inputs
z
(+.f64 x z)
(+.f64 z y)
(sin.f64 y)
(*.f64 (cos.f64 y) z)
(+.f64 x (*.f64 z (cos.f64 y)))
(+.f64 (+.f64 x (sin.f64 y)) z)
(+.f64 x (*.f64 (-.f64 (+.f64 1 (cos.f64 y)) 1) z))
(+.f64 (sin.f64 y) (*.f64 z (cos.f64 y)))
(+.f64 (+.f64 x (sin.f64 y)) (*.f64 z (cos.f64 y)))
(+.f64 (+.f64 x (sin.f64 y)) (*.f64 (+.f64 (+.f64 (cos.f64 y) -1) 1) z))
(+.f64 (+.f64 x (sin.f64 y)) (*.f64 (-.f64 (+.f64 1 (cos.f64 y)) 1) z))
(+.f64 (+.f64 x (sin.f64 y)) (+.f64 z (*.f64 (+.f64 (cos.f64 y) -1) z)))
(+.f64 (+.f64 x (sin.f64 y)) (+.f64 (*.f64 (+.f64 1 (cos.f64 y)) z) (*.f64 -1 z)))
(+.f64 x (cbrt.f64 (pow.f64 (*.f64 z (cos.f64 y)) 3)))
(+.f64 x (*.f64 (cbrt.f64 (pow.f64 (cos.f64 y) 3)) z))
(+.f64 x (*.f64 (pow.f64 (cbrt.f64 z) 3) (cos.f64 y)))
(+.f64 x (pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 3))
(+.f64 x (pow.f64 (sqrt.f64 (*.f64 z (cos.f64 y))) 2))
(+.f64 x (*.f64 (*.f64 (cos.f64 y) (sqrt.f64 z)) (sqrt.f64 z)))
(+.f64 x (cbrt.f64 (*.f64 (pow.f64 (cos.f64 y) 3) (pow.f64 z 3))))
(+.f64 (+.f64 x (sin.f64 y)) (*.f64 (log1p.f64 (expm1.f64 (cos.f64 y))) z))
(+.f64 x (*.f64 (pow.f64 (cbrt.f64 z) 2) (*.f64 (cbrt.f64 z) (cos.f64 y))))
(+.f64 (+.f64 x (sin.f64 y)) (cbrt.f64 (pow.f64 (*.f64 z (cos.f64 y)) 3)))
(+.f64 (+.f64 x (sin.f64 y)) (*.f64 (cbrt.f64 (pow.f64 (cos.f64 y) 3)) z))
(+.f64 (+.f64 x (sin.f64 y)) (pow.f64 (cbrt.f64 (*.f64 z (cos.f64 y))) 3))
(+.f64 (+.f64 x (sin.f64 y)) (pow.f64 (sqrt.f64 (*.f64 z (cos.f64 y))) 2))
(+.f64 (+.f64 x (sin.f64 y)) (*.f64 (*.f64 (cos.f64 y) (sqrt.f64 z)) (sqrt.f64 z)))
(+.f64 (+.f64 x (sin.f64 y)) (cbrt.f64 (*.f64 (pow.f64 (cos.f64 y) 3) (pow.f64 z 3))))
(+.f64 (+.f64 x (sin.f64 y)) (*.f64 (pow.f64 (cbrt.f64 z) 2) (*.f64 (cbrt.f64 z) (cos.f64 y))))
Outputs
(+.f64 (+.f64 x (sin.f64 y)) (*.f64 z (cos.f64 y)))
Calls

4 calls:

18.0ms
x
15.0ms
(+.f64 (+.f64 x (sin.f64 y)) (*.f64 z (cos.f64 y)))
15.0ms
z
15.0ms
y
Results
ErrorSegmentsBranch
0.0b1x
0.0b1y
0.0b1z
0.0b1(+.f64 (+.f64 x (sin.f64 y)) (*.f64 z (cos.f64 y)))
Compiler

Compiled 311 to 130 computations (58.2% saved)

regimes62.0ms (0.3%)

Counts
9 → 3
Calls
Call 1
Inputs
z
(+.f64 x z)
(+.f64 z y)
(sin.f64 y)
(*.f64 (cos.f64 y) z)
(+.f64 x (*.f64 z (cos.f64 y)))
(+.f64 (+.f64 x (sin.f64 y)) z)
(+.f64 x (*.f64 (-.f64 (+.f64 1 (cos.f64 y)) 1) z))
(+.f64 (sin.f64 y) (*.f64 z (cos.f64 y)))
Outputs
(+.f64 x (*.f64 z (cos.f64 y)))
(+.f64 (+.f64 x (sin.f64 y)) z)
(+.f64 x (*.f64 z (cos.f64 y)))
Calls

3 calls:

22.0ms
y
21.0ms
x
17.0ms
z
Results
ErrorSegmentsBranch
2.3b3x
5.2b4y
0.2b3z
Compiler

Compiled 57 to 28 computations (50.9% saved)

bsearch70.0ms (0.4%)

Algorithm
binary-search
Steps
TimeLeftRight
38.0ms
1.1175429224496315e-6
11896.831472352229
33.0ms
-4.113067315640025e+19
-112358380156267.55
Results
34.0ms230×body256valid
26.0ms57×body1024valid
6.0ms17×body512valid
Compiler

Compiled 398 to 279 computations (29.9% saved)

regimes24.0ms (0.1%)

Counts
6 → 3
Calls
Call 1
Inputs
z
(+.f64 x z)
(+.f64 z y)
(sin.f64 y)
(*.f64 (cos.f64 y) z)
(+.f64 x (*.f64 z (cos.f64 y)))
Outputs
(+.f64 x (*.f64 z (cos.f64 y)))
(sin.f64 y)
(+.f64 x (*.f64 z (cos.f64 y)))
Calls

3 calls:

13.0ms
x
5.0ms
z
5.0ms
y
Results
ErrorSegmentsBranch
8.0b3x
9.2b1y
9.2b1z
Compiler

Compiled 34 to 19 computations (44.1% saved)

bsearch36.0ms (0.2%)

Algorithm
binary-search
Steps
TimeLeftRight
5.0ms
-1.5254716439258067e-235
-1.4624898316172225e-235
32.0ms
-6.790845869787692e-219
-3.5083468863258536e-221
Results
18.0ms43×body1024valid
11.0ms68×body256valid
6.0ms17×body512valid
Compiler

Compiled 146 to 109 computations (25.3% saved)

regimes50.0ms (0.3%)

Counts
5 → 5
Calls
Call 1
Inputs
z
(+.f64 x z)
(+.f64 z y)
(sin.f64 y)
(*.f64 (cos.f64 y) z)
Outputs
(+.f64 x z)
(*.f64 (cos.f64 y) z)
(sin.f64 y)
(*.f64 (cos.f64 y) z)
(+.f64 x z)
Calls

3 calls:

20.0ms
x
16.0ms
y
12.0ms
z
Results
ErrorSegmentsBranch
13.3b5x
16.1b4y
14.0b3z
Compiler

Compiled 28 to 17 computations (39.3% saved)

bsearch98.0ms (0.5%)

Algorithm
binary-search
Steps
TimeLeftRight
62.0ms
9.45691296665491e+37
1.6061450816977374e+47
5.0ms
-1.5254716439258067e-235
-1.4624898316172225e-235
31.0ms
-6.790845869787692e-219
-3.5083468863258536e-221
0.0ms
-2.3564920836118957e+20
-2.3270794845759465e+20
Results
63.0ms195×body256valid
24.0ms53×body1024valid
7.0ms24×body512valid
Compiler

Compiled 265 to 200 computations (24.5% saved)

regimes38.0ms (0.2%)

Counts
4 → 7
Calls
Call 1
Inputs
z
(+.f64 x z)
(+.f64 z y)
(sin.f64 y)
Outputs
(+.f64 x z)
(sin.f64 y)
(+.f64 z y)
(sin.f64 y)
(+.f64 z y)
(sin.f64 y)
(+.f64 x z)
Calls

3 calls:

23.0ms
x
7.0ms
y
7.0ms
z
Results
ErrorSegmentsBranch
17.1b7x
18.9b2y
20.5b1z
Compiler

Compiled 24 to 15 computations (37.5% saved)

bsearch201.0ms (1.1%)

Algorithm
binary-search
Steps
TimeLeftRight
24.0ms
4.4285123489338425e-116
1.7999097004691335e-115
24.0ms
4.4082972085318955e-142
4.040752323267594e-141
55.0ms
3.447335544390822e-220
1.068473973286527e-204
28.0ms
1.8116124208317902e-252
1.362697501407769e-250
41.0ms
-1.3032093329404595e-257
-7.891027205710115e-263
29.0ms
-6.790845869787692e-219
-3.5083468863258536e-221
Results
86.0ms444×body256valid
75.0ms171×body1024valid
30.0ms105×body512valid
Compiler

Compiled 603 to 463 computations (23.2% saved)

regimes19.0ms (0.1%)

Counts
3 → 3
Calls
Call 1
Inputs
z
(+.f64 x z)
(+.f64 z y)
Outputs
(+.f64 x z)
(+.f64 z y)
(+.f64 x z)
Calls

3 calls:

9.0ms
x
6.0ms
z
3.0ms
y
Results
ErrorSegmentsBranch
19.5b3x
20.5b1y
20.5b1z
Compiler

Compiled 22 to 14 computations (36.4% saved)

bsearch63.0ms (0.3%)

Algorithm
binary-search
Steps
TimeLeftRight
38.0ms
5.297402179046915e-157
1.7399544604201005e-151
25.0ms
-1.4924860413020151e-112
-3.6957642829204015e-113
Results
30.0ms65×body1024valid
23.0ms148×body256valid
8.0ms27×body512valid
Compiler

Compiled 228 to 163 computations (28.5% saved)

regimes11.0ms (0.1%)

Accuracy

Total -26.1b remaining (-127.1%)

Threshold costs -26.1b (-127.1%)

Counts
2 → 1
Calls
Call 1
Inputs
z
(+.f64 x z)
Outputs
(+.f64 x z)
Calls

3 calls:

4.0ms
z
3.0ms
x
3.0ms
y
Results
ErrorSegmentsBranch
20.5b1x
20.5b1y
20.5b1z
Compiler

Compiled 19 to 13 computations (31.6% saved)

simplify9.0ms (0%)

Algorithm
egg-herbie
Rules
+-commutative_binary64
*-commutative_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
063223
171223
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(+.f64 (+.f64 x (sin.f64 y)) (*.f64 z (cos.f64 y)))
(if (<=.f64 z -114000000000000) (+.f64 x (*.f64 z (cos.f64 y))) (if (<=.f64 z 2308094809027379/562949953421312) (+.f64 (+.f64 x (sin.f64 y)) z) (+.f64 x (*.f64 z (cos.f64 y)))))
(if (<=.f64 x -21462010107965/397444631628981487398138749046400654145762820381874332451597321734669043887712482900704872660133498355324859058465554740779924491293392484209737542410542371636340473861337575820867913121689201875267327793591416000228568794576910811136) (+.f64 x (*.f64 z (cos.f64 y))) (if (<=.f64 x -1073958896942811/7159725979618740301104695983418709622680434793042663132360362425577766001338226039836321066456157093857339877304749930018599215189268344175111256510391144905128218576994803025566700315369744694061260002057936311868982638401684395903839696776618573824) (sin.f64 y) (+.f64 x (*.f64 z (cos.f64 y)))))
(if (<=.f64 x -235000000000000000000) (+.f64 x z) (if (<=.f64 x -966585344121683/25436456424254815193480879938969641865328820504439957276902228591018818808813598905645111850248543894740790979741795503409915167442777118989423202714274711784725790327125604852535546439788108920017108978789850624014628402852922291912704) (*.f64 (cos.f64 y) z) (if (<=.f64 x -8477115559868589/57277807836949922408837567867349676981443478344341305058882899404622128010705808318690568531649256750858719018437999440148793721514146753400890052083129159241025748615958424204533602522957957552490080016463490494951861107213475167230717574212948590592) (sin.f64 y) (if (<=.f64 x 94999999999999995027949442561445199872) (*.f64 (cos.f64 y) z) (+.f64 x z)))))
(if (<=.f64 x -1653369667576563/3179557053031851899185109992371205233166102563054994659612778573877352351101699863205638981281067986842598872467724437926239395930347139873677900339284338973090723790890700606566943304973513615002138622348731328001828550356615286489088) (+.f64 x z) (if (<=.f64 x -7616908286351531/17311155196253478792473470072144416162409589179551630037089016513386050438978760195257704640926750732932690575139049592549616764829783999684625661246273604056134014861279398598040994371221141620425498063936264221627122591096883175058256589578798251261609200218857078729474048) (sin.f64 y) (if (<=.f64 x 6835842321823793/64489078507771636517619602650941968569195230229018740494135828738607654120693952572560700181598777819174120482575333090683880317322105168121403683894401803821824546386597300313565859091360649542605497181178123584490726109955024626323046496431523007383976877550993408) (+.f64 z y) (if (<=.f64 x 8849353126114041/3105036184601417870297958976925005110513772034233393222278104076052101905372753772661756817657292955900975461394262146412343160088229628782888574550082362278408909952041699811100530571263196889650525998387432937501785693707632115712) (sin.f64 y) (if (<=.f64 x 3432398830065305/858099707516326214372737599885174152158679412517913176174307932398192897924707006515319955082681819372162038923935107254640248499964580476571753536389382144) (+.f64 z y) (if (<=.f64 x 7985288719067947/177450860423732151013018507785157357019931972824052260810910693159335763699560039874558361990664932998233037501529828597054346100736) (sin.f64 y) (+.f64 x z)))))))
(if (<=.f64 x -3682451937504207/43322963970637732180912721627235682866194329302747133987038743447103457934462900359999600095377180907771737671271930809827721216) (+.f64 x z) (if (<=.f64 x 1094449103198247/3773962424821541352241554580988268890916921220416440428376206300245624162392148852086126725177658767541468375030763844899770584629924792632561434251432696043649395326976) (+.f64 z y) (+.f64 x z)))
(+.f64 x z)
z
Outputs
(+.f64 (+.f64 x (sin.f64 y)) (*.f64 z (cos.f64 y)))
(if (<=.f64 z -114000000000000) (+.f64 x (*.f64 z (cos.f64 y))) (if (<=.f64 z 2308094809027379/562949953421312) (+.f64 (+.f64 x (sin.f64 y)) z) (+.f64 x (*.f64 z (cos.f64 y)))))
(if (<=.f64 x -21462010107965/397444631628981487398138749046400654145762820381874332451597321734669043887712482900704872660133498355324859058465554740779924491293392484209737542410542371636340473861337575820867913121689201875267327793591416000228568794576910811136) (+.f64 x (*.f64 z (cos.f64 y))) (if (<=.f64 x -1073958896942811/7159725979618740301104695983418709622680434793042663132360362425577766001338226039836321066456157093857339877304749930018599215189268344175111256510391144905128218576994803025566700315369744694061260002057936311868982638401684395903839696776618573824) (sin.f64 y) (+.f64 x (*.f64 z (cos.f64 y)))))
(if (<=.f64 x -235000000000000000000) (+.f64 x z) (if (<=.f64 x -966585344121683/25436456424254815193480879938969641865328820504439957276902228591018818808813598905645111850248543894740790979741795503409915167442777118989423202714274711784725790327125604852535546439788108920017108978789850624014628402852922291912704) (*.f64 (cos.f64 y) z) (if (<=.f64 x -8477115559868589/57277807836949922408837567867349676981443478344341305058882899404622128010705808318690568531649256750858719018437999440148793721514146753400890052083129159241025748615958424204533602522957957552490080016463490494951861107213475167230717574212948590592) (sin.f64 y) (if (<=.f64 x 94999999999999995027949442561445199872) (*.f64 (cos.f64 y) z) (+.f64 x z)))))
(if (<=.f64 x -235000000000000000000) (+.f64 x z) (if (<=.f64 x -966585344121683/25436456424254815193480879938969641865328820504439957276902228591018818808813598905645111850248543894740790979741795503409915167442777118989423202714274711784725790327125604852535546439788108920017108978789850624014628402852922291912704) (*.f64 z (cos.f64 y)) (if (<=.f64 x -8477115559868589/57277807836949922408837567867349676981443478344341305058882899404622128010705808318690568531649256750858719018437999440148793721514146753400890052083129159241025748615958424204533602522957957552490080016463490494951861107213475167230717574212948590592) (sin.f64 y) (if (<=.f64 x 94999999999999995027949442561445199872) (*.f64 z (cos.f64 y)) (+.f64 x z)))))
(if (<=.f64 x -1653369667576563/3179557053031851899185109992371205233166102563054994659612778573877352351101699863205638981281067986842598872467724437926239395930347139873677900339284338973090723790890700606566943304973513615002138622348731328001828550356615286489088) (+.f64 x z) (if (<=.f64 x -7616908286351531/17311155196253478792473470072144416162409589179551630037089016513386050438978760195257704640926750732932690575139049592549616764829783999684625661246273604056134014861279398598040994371221141620425498063936264221627122591096883175058256589578798251261609200218857078729474048) (sin.f64 y) (if (<=.f64 x 6835842321823793/64489078507771636517619602650941968569195230229018740494135828738607654120693952572560700181598777819174120482575333090683880317322105168121403683894401803821824546386597300313565859091360649542605497181178123584490726109955024626323046496431523007383976877550993408) (+.f64 z y) (if (<=.f64 x 8849353126114041/3105036184601417870297958976925005110513772034233393222278104076052101905372753772661756817657292955900975461394262146412343160088229628782888574550082362278408909952041699811100530571263196889650525998387432937501785693707632115712) (sin.f64 y) (if (<=.f64 x 3432398830065305/858099707516326214372737599885174152158679412517913176174307932398192897924707006515319955082681819372162038923935107254640248499964580476571753536389382144) (+.f64 z y) (if (<=.f64 x 7985288719067947/177450860423732151013018507785157357019931972824052260810910693159335763699560039874558361990664932998233037501529828597054346100736) (sin.f64 y) (+.f64 x z)))))))
(if (<=.f64 x -1653369667576563/3179557053031851899185109992371205233166102563054994659612778573877352351101699863205638981281067986842598872467724437926239395930347139873677900339284338973090723790890700606566943304973513615002138622348731328001828550356615286489088) (+.f64 x z) (if (<=.f64 x -7616908286351531/17311155196253478792473470072144416162409589179551630037089016513386050438978760195257704640926750732932690575139049592549616764829783999684625661246273604056134014861279398598040994371221141620425498063936264221627122591096883175058256589578798251261609200218857078729474048) (sin.f64 y) (if (<=.f64 x 6835842321823793/64489078507771636517619602650941968569195230229018740494135828738607654120693952572560700181598777819174120482575333090683880317322105168121403683894401803821824546386597300313565859091360649542605497181178123584490726109955024626323046496431523007383976877550993408) (+.f64 y z) (if (<=.f64 x 8849353126114041/3105036184601417870297958976925005110513772034233393222278104076052101905372753772661756817657292955900975461394262146412343160088229628782888574550082362278408909952041699811100530571263196889650525998387432937501785693707632115712) (sin.f64 y) (if (<=.f64 x 3432398830065305/858099707516326214372737599885174152158679412517913176174307932398192897924707006515319955082681819372162038923935107254640248499964580476571753536389382144) (+.f64 y z) (if (<=.f64 x 7985288719067947/177450860423732151013018507785157357019931972824052260810910693159335763699560039874558361990664932998233037501529828597054346100736) (sin.f64 y) (+.f64 x z)))))))
(if (<=.f64 x -3682451937504207/43322963970637732180912721627235682866194329302747133987038743447103457934462900359999600095377180907771737671271930809827721216) (+.f64 x z) (if (<=.f64 x 1094449103198247/3773962424821541352241554580988268890916921220416440428376206300245624162392148852086126725177658767541468375030763844899770584629924792632561434251432696043649395326976) (+.f64 z y) (+.f64 x z)))
(if (<=.f64 x -3682451937504207/43322963970637732180912721627235682866194329302747133987038743447103457934462900359999600095377180907771737671271930809827721216) (+.f64 x z) (if (<=.f64 x 1094449103198247/3773962424821541352241554580988268890916921220416440428376206300245624162392148852086126725177658767541468375030763844899770584629924792632561434251432696043649395326976) (+.f64 y z) (+.f64 x z)))
(+.f64 x z)
z
Compiler

Compiled 176 to 97 computations (44.9% saved)

soundness0.0ms (0%)

end58.0ms (0.3%)

Compiler

Compiled 155 to 60 computations (61.3% saved)

Profiling

Loading profile data...