Details

Time bar (total: 10.8s)

analyze442.0ms (4.1%)

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)

sample3.6s (33.3%)

Results
1.9s2122×body1024valid
1.4s5094×body256valid
346.0ms1029×body512valid
9.0ms11×body2048valid
Bogosity

preprocess166.0ms (1.5%)

Algorithm
egg-herbie
Rules
2532×rational.json-simplify-42
1816×rational.json-simplify-45
1718×rational.json-simplify-35
1034×rational.json-simplify-2
846×rational.json-simplify-48
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
024108
150108
273108
3109108
4187108
5333108
6800108
72041108
84430108
95366108
105761108
116242108
126545108
033
Stop Event
saturated
node limit
Calls
Call 1
Inputs
0
1
2
Outputs
0
1
2
Call 2
Inputs
(+.f64 (*.f64 x (cos.f64 y)) (*.f64 z (sin.f64 y)))
(+.f64 (*.f64 y (cos.f64 x)) (*.f64 z (sin.f64 x)))
(+.f64 (*.f64 z (cos.f64 y)) (*.f64 x (sin.f64 y)))
(+.f64 (*.f64 x (cos.f64 z)) (*.f64 y (sin.f64 z)))
Outputs
(+.f64 (*.f64 x (cos.f64 y)) (*.f64 z (sin.f64 y)))
(+.f64 (*.f64 y (cos.f64 x)) (*.f64 z (sin.f64 x)))
(+.f64 (*.f64 z (cos.f64 y)) (*.f64 x (sin.f64 y)))
(+.f64 (*.f64 (cos.f64 y) z) (*.f64 x (sin.f64 y)))
(+.f64 (*.f64 x (cos.f64 z)) (*.f64 y (sin.f64 z)))
Compiler

Compiled 15 to 11 computations (26.7% saved)

simplify186.0ms (1.7%)

Algorithm
egg-herbie
Rules
2180×rational.json-simplify-35
1772×rational.json-simplify-1
1258×rational.json-simplify-26
918×rational.json-simplify-2
658×rational.json-simplify-52
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01127
12027
22927
34327
47527
513127
629027
771627
8204227
9330627
10405027
11452827
12528127
13569727
14630327
15687627
Stop Event
node limit
Counts
1 → 1
Calls
Call 1
Inputs
(+.f64 (*.f64 x (cos.f64 y)) (*.f64 z (sin.f64 y)))
Outputs
(+.f64 (*.f64 x (cos.f64 y)) (*.f64 z (sin.f64 y)))

eval0.0ms (0%)

Compiler

Compiled 12 to 8 computations (33.3% saved)

prune1.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New011
Fresh011
Picked000
Done000
Total022
Error
0.1b
Counts
2 → 1
Alt Table
Click to see full alt table
StatusErrorProgram
0.1b
(+.f64 (*.f64 x (cos.f64 y)) (*.f64 z (sin.f64 y)))
Compiler

Compiled 12 to 8 computations (33.3% saved)

localize10.0ms (0.1%)

Local error

Found 3 expressions with local error:

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

Compiled 27 to 8 computations (70.4% saved)

series8.0ms (0.1%)

Counts
3 → 64
Calls

21 calls:

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

rewrite97.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
1512×rational.json-1
1512×rational.json-2
1512×rational.json-3
1504×exponential.json-3
1504×rational.json-4
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01149
17749
217649
338349
479049
5190649
6434449
7666349
Stop Event
node limit
Counts
3 → 47
Calls
Call 1
Inputs
(*.f64 z (sin.f64 y))
(*.f64 x (cos.f64 y))
(+.f64 (*.f64 x (cos.f64 y)) (*.f64 z (sin.f64 y)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 z (sin.f64 y)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 z (sin.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 z (*.f64 (sin.f64 y) 1/2)) (*.f64 z (*.f64 (sin.f64 y) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 z (sin.f64 y)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 z (sin.f64 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 y) (+.f64 z z)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 y) (*.f64 z 4)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 z (sin.f64 y)) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (*.f64 z (sin.f64 y)) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 z (sin.f64 y)) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 z (sin.f64 y)) 8))) (*.f64 2 (*.f64 2 (*.f64 (*.f64 z (sin.f64 y)) 8)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 z (sin.f64 y)) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (cos.f64 y)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 x (cos.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (*.f64 (cos.f64 y) 1/2)) (*.f64 x (*.f64 (cos.f64 y) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x (cos.f64 y)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (cos.f64 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 y) (+.f64 x x)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 y) (*.f64 x 4)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 x 8) (cos.f64 y)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (*.f64 x 8) (cos.f64 y))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 x 8) (cos.f64 y)))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 x 8) (cos.f64 y)))) (*.f64 2 (*.f64 2 (*.f64 (*.f64 x 8) (cos.f64 y))))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 x (cos.f64 y)) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 z (sin.f64 y)) (*.f64 x (cos.f64 y))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 z (sin.f64 y)) (*.f64 x (cos.f64 y))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 (*.f64 z (sin.f64 y)) (*.f64 x (cos.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (+.f64 (*.f64 z (sin.f64 y)) (*.f64 x (cos.f64 y))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (+.f64 (*.f64 x (*.f64 (cos.f64 y) 1/2)) (*.f64 z (*.f64 (sin.f64 y) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (+.f64 (*.f64 z (*.f64 (sin.f64 y) 1/2)) (*.f64 x (*.f64 (cos.f64 y) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 z (sin.f64 y)) (*.f64 x (cos.f64 y))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (+.f64 (*.f64 z (sin.f64 y)) (*.f64 x (cos.f64 y))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 z (sin.f64 y)) (*.f64 x (cos.f64 y))) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (+.f64 (*.f64 z (sin.f64 y)) (*.f64 x (cos.f64 y))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (+.f64 (*.f64 (cos.f64 y) (+.f64 x x)) (*.f64 (sin.f64 y) (+.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (+.f64 (*.f64 (sin.f64 y) (+.f64 z z)) (*.f64 (cos.f64 y) (+.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 z (sin.f64 y)) (*.f64 x (cos.f64 y))) 1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (+.f64 (*.f64 z (sin.f64 y)) (*.f64 x (cos.f64 y))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 (*.f64 z (sin.f64 y)) (*.f64 x (cos.f64 y))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 z (sin.f64 y)) (*.f64 x (cos.f64 y))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 z (sin.f64 y)) (*.f64 x (cos.f64 y))) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 z (sin.f64 y)) (*.f64 x (cos.f64 y))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 z (sin.f64 y)) (*.f64 x (cos.f64 y))) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 z (sin.f64 y)) (*.f64 x (cos.f64 y))) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 z (sin.f64 y)) (*.f64 x (cos.f64 y))) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 z (sin.f64 y)) (*.f64 x (cos.f64 y))) 8))) (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 z (sin.f64 y)) (*.f64 x (cos.f64 y))) 8)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 (*.f64 z (sin.f64 y)) (*.f64 x (cos.f64 y))) 1)))))

simplify242.0ms (2.2%)

Algorithm
egg-herbie
Rules
2258×rational.json-simplify-2
1926×rational.json-simplify-35
986×exponential.json-simplify-26
902×rational.json-simplify-1
894×rational.json-simplify-51
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01462305
13272305
27572281
317852257
435932257
545182257
650052257
754562257
862752257
967442257
1075352257
Stop Event
node limit
Counts
111 → 93
Calls
Call 1
Inputs
(*.f64 y z)
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 y 3) z)) (*.f64 y z))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 y 3) z)) (+.f64 (*.f64 y z) (*.f64 1/120 (*.f64 (pow.f64 y 5) z))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 y 3) z)) (+.f64 (*.f64 y z) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 y 7) z)) (*.f64 1/120 (*.f64 (pow.f64 y 5) z)))))
(*.f64 (cos.f64 y) x)
(*.f64 (cos.f64 y) x)
(*.f64 (cos.f64 y) x)
(*.f64 (cos.f64 y) x)
(*.f64 (cos.f64 y) x)
(*.f64 (cos.f64 y) x)
(*.f64 (cos.f64 y) x)
(*.f64 (cos.f64 y) x)
(*.f64 (cos.f64 y) x)
(*.f64 (cos.f64 y) x)
(*.f64 (cos.f64 y) x)
(*.f64 (cos.f64 y) x)
x
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y 2) x)) x)
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 y 4) x)) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y 2) x)) x))
(+.f64 (*.f64 -1/720 (*.f64 (pow.f64 y 6) x)) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 y 4) x)) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y 2) x)) x)))
(*.f64 (cos.f64 y) x)
(*.f64 (cos.f64 y) x)
(*.f64 (cos.f64 y) x)
(*.f64 (cos.f64 y) x)
(*.f64 (cos.f64 y) x)
(*.f64 (cos.f64 y) x)
(*.f64 (cos.f64 y) x)
(*.f64 (cos.f64 y) x)
(*.f64 z (sin.f64 y))
(+.f64 (*.f64 (cos.f64 y) x) (*.f64 z (sin.f64 y)))
(+.f64 (*.f64 (cos.f64 y) x) (*.f64 z (sin.f64 y)))
(+.f64 (*.f64 (cos.f64 y) x) (*.f64 z (sin.f64 y)))
(*.f64 (cos.f64 y) x)
(+.f64 (*.f64 z (sin.f64 y)) (*.f64 (cos.f64 y) x))
(+.f64 (*.f64 z (sin.f64 y)) (*.f64 (cos.f64 y) x))
(+.f64 (*.f64 z (sin.f64 y)) (*.f64 (cos.f64 y) x))
(*.f64 (cos.f64 y) x)
(+.f64 (*.f64 z (sin.f64 y)) (*.f64 (cos.f64 y) x))
(+.f64 (*.f64 z (sin.f64 y)) (*.f64 (cos.f64 y) x))
(+.f64 (*.f64 z (sin.f64 y)) (*.f64 (cos.f64 y) x))
x
(+.f64 (*.f64 y z) x)
(+.f64 (*.f64 y z) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y 2) x)) x))
(+.f64 (*.f64 y z) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 y 3) z)) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y 2) x)) x)))
(+.f64 (*.f64 (cos.f64 y) x) (*.f64 z (sin.f64 y)))
(+.f64 (*.f64 (cos.f64 y) x) (*.f64 z (sin.f64 y)))
(+.f64 (*.f64 (cos.f64 y) x) (*.f64 z (sin.f64 y)))
(+.f64 (*.f64 (cos.f64 y) x) (*.f64 z (sin.f64 y)))
(+.f64 (*.f64 (cos.f64 y) x) (*.f64 z (sin.f64 y)))
(+.f64 (*.f64 (cos.f64 y) x) (*.f64 z (sin.f64 y)))
(+.f64 (*.f64 (cos.f64 y) x) (*.f64 z (sin.f64 y)))
(+.f64 (*.f64 (cos.f64 y) x) (*.f64 z (sin.f64 y)))
(*.f64 (cos.f64 y) x)
(+.f64 (*.f64 z (sin.f64 y)) (*.f64 (cos.f64 y) x))
(+.f64 (*.f64 z (sin.f64 y)) (*.f64 (cos.f64 y) x))
(+.f64 (*.f64 z (sin.f64 y)) (*.f64 (cos.f64 y) x))
(*.f64 z (sin.f64 y))
(+.f64 (*.f64 (cos.f64 y) x) (*.f64 z (sin.f64 y)))
(+.f64 (*.f64 (cos.f64 y) x) (*.f64 z (sin.f64 y)))
(+.f64 (*.f64 (cos.f64 y) x) (*.f64 z (sin.f64 y)))
(*.f64 z (sin.f64 y))
(+.f64 (*.f64 (cos.f64 y) x) (*.f64 z (sin.f64 y)))
(+.f64 (*.f64 (cos.f64 y) x) (*.f64 z (sin.f64 y)))
(+.f64 (*.f64 (cos.f64 y) x) (*.f64 z (sin.f64 y)))
(+.f64 (*.f64 z (sin.f64 y)) 0)
(+.f64 0 (*.f64 z (sin.f64 y)))
(+.f64 (*.f64 z (*.f64 (sin.f64 y) 1/2)) (*.f64 z (*.f64 (sin.f64 y) 1/2)))
(-.f64 (*.f64 z (sin.f64 y)) 0)
(/.f64 (*.f64 z (sin.f64 y)) 1)
(/.f64 (*.f64 (sin.f64 y) (+.f64 z z)) 2)
(/.f64 (*.f64 (sin.f64 y) (*.f64 z 4)) 4)
(/.f64 (*.f64 (*.f64 z (sin.f64 y)) 8) 8)
(/.f64 (*.f64 2 (*.f64 (*.f64 z (sin.f64 y)) 8)) 16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 z (sin.f64 y)) 8))) 32)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 z (sin.f64 y)) 8))) (*.f64 2 (*.f64 2 (*.f64 (*.f64 z (sin.f64 y)) 8)))) 64)
(pow.f64 (*.f64 z (sin.f64 y)) 1)
(+.f64 (*.f64 x (cos.f64 y)) 0)
(+.f64 0 (*.f64 x (cos.f64 y)))
(+.f64 (*.f64 x (*.f64 (cos.f64 y) 1/2)) (*.f64 x (*.f64 (cos.f64 y) 1/2)))
(-.f64 (*.f64 x (cos.f64 y)) 0)
(/.f64 (*.f64 x (cos.f64 y)) 1)
(/.f64 (*.f64 (cos.f64 y) (+.f64 x x)) 2)
(/.f64 (*.f64 (cos.f64 y) (*.f64 x 4)) 4)
(/.f64 (*.f64 (*.f64 x 8) (cos.f64 y)) 8)
(/.f64 (*.f64 2 (*.f64 (*.f64 x 8) (cos.f64 y))) 16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 x 8) (cos.f64 y)))) 32)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 x 8) (cos.f64 y)))) (*.f64 2 (*.f64 2 (*.f64 (*.f64 x 8) (cos.f64 y))))) 64)
(pow.f64 (*.f64 x (cos.f64 y)) 1)
(-.f64 (+.f64 (*.f64 z (sin.f64 y)) (*.f64 x (cos.f64 y))) 0)
(*.f64 (+.f64 (*.f64 z (sin.f64 y)) (*.f64 x (cos.f64 y))) 1)
(*.f64 1 (+.f64 (*.f64 z (sin.f64 y)) (*.f64 x (cos.f64 y))))
(*.f64 2 (*.f64 (+.f64 (*.f64 z (sin.f64 y)) (*.f64 x (cos.f64 y))) 1/2))
(*.f64 2 (+.f64 (*.f64 x (*.f64 (cos.f64 y) 1/2)) (*.f64 z (*.f64 (sin.f64 y) 1/2))))
(*.f64 2 (+.f64 (*.f64 z (*.f64 (sin.f64 y) 1/2)) (*.f64 x (*.f64 (cos.f64 y) 1/2))))
(*.f64 (*.f64 (+.f64 (*.f64 z (sin.f64 y)) (*.f64 x (cos.f64 y))) 2) 1/2)
(*.f64 4 (/.f64 (+.f64 (*.f64 z (sin.f64 y)) (*.f64 x (cos.f64 y))) 4))
(*.f64 (*.f64 (+.f64 (*.f64 z (sin.f64 y)) (*.f64 x (cos.f64 y))) 4) 1/4)
(*.f64 1/2 (*.f64 (+.f64 (*.f64 z (sin.f64 y)) (*.f64 x (cos.f64 y))) 2))
(*.f64 1/2 (+.f64 (*.f64 (cos.f64 y) (+.f64 x x)) (*.f64 (sin.f64 y) (+.f64 z z))))
(*.f64 1/2 (+.f64 (*.f64 (sin.f64 y) (+.f64 z z)) (*.f64 (cos.f64 y) (+.f64 x x))))
(*.f64 (*.f64 (+.f64 (*.f64 z (sin.f64 y)) (*.f64 x (cos.f64 y))) 1/2) 2)
(*.f64 1/4 (*.f64 (+.f64 (*.f64 z (sin.f64 y)) (*.f64 x (cos.f64 y))) 4))
(*.f64 (/.f64 (+.f64 (*.f64 z (sin.f64 y)) (*.f64 x (cos.f64 y))) 4) 4)
(/.f64 (+.f64 (*.f64 z (sin.f64 y)) (*.f64 x (cos.f64 y))) 1)
(/.f64 (*.f64 (+.f64 (*.f64 z (sin.f64 y)) (*.f64 x (cos.f64 y))) 2) 2)
(/.f64 (*.f64 (+.f64 (*.f64 z (sin.f64 y)) (*.f64 x (cos.f64 y))) 4) 4)
(/.f64 (*.f64 (+.f64 (*.f64 z (sin.f64 y)) (*.f64 x (cos.f64 y))) 8) 8)
(/.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 z (sin.f64 y)) (*.f64 x (cos.f64 y))) 8)) 16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 z (sin.f64 y)) (*.f64 x (cos.f64 y))) 8))) 32)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 z (sin.f64 y)) (*.f64 x (cos.f64 y))) 8))) (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 z (sin.f64 y)) (*.f64 x (cos.f64 y))) 8)))) 64)
(pow.f64 (+.f64 (*.f64 z (sin.f64 y)) (*.f64 x (cos.f64 y))) 1)
Outputs
(*.f64 y z)
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 y 3) z)) (*.f64 y z))
(+.f64 (*.f64 y z) (*.f64 (pow.f64 y 3) (*.f64 z -1/6)))
(+.f64 (*.f64 y z) (*.f64 z (*.f64 (pow.f64 y 3) -1/6)))
(*.f64 z (+.f64 y (*.f64 -1/6 (pow.f64 y 3))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 y 3) z)) (+.f64 (*.f64 y z) (*.f64 1/120 (*.f64 (pow.f64 y 5) z))))
(+.f64 (*.f64 y z) (+.f64 (*.f64 (pow.f64 y 5) (*.f64 z 1/120)) (*.f64 (pow.f64 y 3) (*.f64 z -1/6))))
(+.f64 (*.f64 z (*.f64 (pow.f64 y 3) -1/6)) (+.f64 (*.f64 y z) (*.f64 z (*.f64 (pow.f64 y 5) 1/120))))
(+.f64 (*.f64 (pow.f64 y 3) (*.f64 z -1/6)) (*.f64 z (+.f64 y (*.f64 1/120 (pow.f64 y 5)))))
(*.f64 z (+.f64 (*.f64 1/120 (pow.f64 y 5)) (+.f64 y (*.f64 -1/6 (pow.f64 y 3)))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 y 3) z)) (+.f64 (*.f64 y z) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 y 7) z)) (*.f64 1/120 (*.f64 (pow.f64 y 5) z)))))
(+.f64 (*.f64 y z) (+.f64 (+.f64 (*.f64 (pow.f64 y 5) (*.f64 z 1/120)) (*.f64 -1/5040 (*.f64 z (pow.f64 y 7)))) (*.f64 (pow.f64 y 3) (*.f64 z -1/6))))
(+.f64 (*.f64 y z) (+.f64 (*.f64 z (*.f64 (pow.f64 y 3) -1/6)) (+.f64 (*.f64 z (*.f64 (pow.f64 y 5) 1/120)) (*.f64 z (*.f64 (pow.f64 y 7) -1/5040)))))
(+.f64 (*.f64 (pow.f64 y 5) (*.f64 z 1/120)) (+.f64 (*.f64 z (+.f64 y (*.f64 -1/5040 (pow.f64 y 7)))) (*.f64 (pow.f64 y 3) (*.f64 z -1/6))))
(+.f64 (*.f64 z (+.f64 (*.f64 1/120 (pow.f64 y 5)) (+.f64 y (*.f64 -1/6 (pow.f64 y 3))))) (*.f64 z (*.f64 -1/5040 (pow.f64 y 7))))
(+.f64 (*.f64 z (*.f64 -1/6 (pow.f64 y 3))) (*.f64 z (+.f64 (*.f64 -1/5040 (pow.f64 y 7)) (+.f64 y (*.f64 1/120 (pow.f64 y 5))))))
(*.f64 (cos.f64 y) x)
(*.f64 (cos.f64 y) x)
(*.f64 (cos.f64 y) x)
(*.f64 (cos.f64 y) x)
(*.f64 (cos.f64 y) x)
(*.f64 (cos.f64 y) x)
(*.f64 (cos.f64 y) x)
(*.f64 (cos.f64 y) x)
(*.f64 (cos.f64 y) x)
(*.f64 (cos.f64 y) x)
(*.f64 (cos.f64 y) x)
(*.f64 (cos.f64 y) x)
x
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y 2) x)) x)
(+.f64 x (*.f64 (pow.f64 y 2) (*.f64 x -1/2)))
(+.f64 x (*.f64 x (*.f64 (pow.f64 y 2) -1/2)))
(+.f64 x (*.f64 x (*.f64 -1/2 (pow.f64 y 2))))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 y 4) x)) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y 2) x)) x))
(+.f64 (+.f64 x (*.f64 (pow.f64 y 2) (*.f64 x -1/2))) (*.f64 1/24 (*.f64 x (pow.f64 y 4))))
(+.f64 x (+.f64 (*.f64 x (*.f64 (pow.f64 y 4) 1/24)) (*.f64 x (*.f64 (pow.f64 y 2) -1/2))))
(+.f64 x (+.f64 (*.f64 x (*.f64 -1/2 (pow.f64 y 2))) (*.f64 (pow.f64 y 4) (*.f64 x 1/24))))
(+.f64 x (*.f64 x (+.f64 (*.f64 1/24 (pow.f64 y 4)) (*.f64 -1/2 (pow.f64 y 2)))))
(+.f64 (*.f64 -1/720 (*.f64 (pow.f64 y 6) x)) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 y 4) x)) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y 2) x)) x)))
(+.f64 (*.f64 1/24 (*.f64 x (pow.f64 y 4))) (+.f64 (+.f64 x (*.f64 (pow.f64 y 2) (*.f64 x -1/2))) (*.f64 -1/720 (*.f64 x (pow.f64 y 6)))))
(+.f64 (+.f64 x (*.f64 x (*.f64 (pow.f64 y 2) -1/2))) (+.f64 (*.f64 x (*.f64 (pow.f64 y 6) -1/720)) (*.f64 x (*.f64 (pow.f64 y 4) 1/24))))
(+.f64 x (+.f64 (+.f64 (*.f64 x (*.f64 -1/2 (pow.f64 y 2))) (*.f64 (pow.f64 y 4) (*.f64 x 1/24))) (*.f64 (pow.f64 y 6) (*.f64 x -1/720))))
(+.f64 x (+.f64 (*.f64 (pow.f64 y 6) (*.f64 x -1/720)) (*.f64 x (+.f64 (*.f64 1/24 (pow.f64 y 4)) (*.f64 -1/2 (pow.f64 y 2))))))
(+.f64 x (+.f64 (*.f64 -1/720 (*.f64 x (pow.f64 y 6))) (*.f64 x (+.f64 (*.f64 1/24 (pow.f64 y 4)) (*.f64 -1/2 (pow.f64 y 2))))))
(*.f64 (cos.f64 y) x)
(*.f64 (cos.f64 y) x)
(*.f64 (cos.f64 y) x)
(*.f64 (cos.f64 y) x)
(*.f64 (cos.f64 y) x)
(*.f64 (cos.f64 y) x)
(*.f64 (cos.f64 y) x)
(*.f64 (cos.f64 y) x)
(*.f64 z (sin.f64 y))
(+.f64 (*.f64 (cos.f64 y) x) (*.f64 z (sin.f64 y)))
(+.f64 (*.f64 z (sin.f64 y)) (*.f64 (cos.f64 y) x))
(+.f64 (*.f64 (cos.f64 y) x) (*.f64 z (sin.f64 y)))
(+.f64 (*.f64 z (sin.f64 y)) (*.f64 (cos.f64 y) x))
(+.f64 (*.f64 (cos.f64 y) x) (*.f64 z (sin.f64 y)))
(+.f64 (*.f64 z (sin.f64 y)) (*.f64 (cos.f64 y) x))
(*.f64 (cos.f64 y) x)
(+.f64 (*.f64 z (sin.f64 y)) (*.f64 (cos.f64 y) x))
(+.f64 (*.f64 z (sin.f64 y)) (*.f64 (cos.f64 y) x))
(+.f64 (*.f64 z (sin.f64 y)) (*.f64 (cos.f64 y) x))
(*.f64 (cos.f64 y) x)
(+.f64 (*.f64 z (sin.f64 y)) (*.f64 (cos.f64 y) x))
(+.f64 (*.f64 z (sin.f64 y)) (*.f64 (cos.f64 y) x))
(+.f64 (*.f64 z (sin.f64 y)) (*.f64 (cos.f64 y) x))
x
(+.f64 (*.f64 y z) x)
(+.f64 (*.f64 y z) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y 2) x)) x))
(+.f64 (*.f64 y z) (+.f64 x (*.f64 (pow.f64 y 2) (*.f64 x -1/2))))
(+.f64 (*.f64 y z) (+.f64 x (*.f64 x (*.f64 (pow.f64 y 2) -1/2))))
(+.f64 (*.f64 y z) (+.f64 x (*.f64 x (*.f64 -1/2 (pow.f64 y 2)))))
(+.f64 (*.f64 x (*.f64 -1/2 (pow.f64 y 2))) (+.f64 (*.f64 y z) x))
(+.f64 (*.f64 y z) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 y 3) z)) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y 2) x)) x)))
(+.f64 (*.f64 y z) (+.f64 (*.f64 (pow.f64 y 3) (*.f64 z -1/6)) (+.f64 x (*.f64 (pow.f64 y 2) (*.f64 x -1/2)))))
(+.f64 (*.f64 y z) (+.f64 (*.f64 z (*.f64 (pow.f64 y 3) -1/6)) (+.f64 x (*.f64 x (*.f64 (pow.f64 y 2) -1/2)))))
(+.f64 (*.f64 z (+.f64 y (*.f64 -1/6 (pow.f64 y 3)))) (+.f64 x (*.f64 x (*.f64 -1/2 (pow.f64 y 2)))))
(+.f64 (*.f64 (cos.f64 y) x) (*.f64 z (sin.f64 y)))
(+.f64 (*.f64 z (sin.f64 y)) (*.f64 (cos.f64 y) x))
(+.f64 (*.f64 (cos.f64 y) x) (*.f64 z (sin.f64 y)))
(+.f64 (*.f64 z (sin.f64 y)) (*.f64 (cos.f64 y) x))
(+.f64 (*.f64 (cos.f64 y) x) (*.f64 z (sin.f64 y)))
(+.f64 (*.f64 z (sin.f64 y)) (*.f64 (cos.f64 y) x))
(+.f64 (*.f64 (cos.f64 y) x) (*.f64 z (sin.f64 y)))
(+.f64 (*.f64 z (sin.f64 y)) (*.f64 (cos.f64 y) x))
(+.f64 (*.f64 (cos.f64 y) x) (*.f64 z (sin.f64 y)))
(+.f64 (*.f64 z (sin.f64 y)) (*.f64 (cos.f64 y) x))
(+.f64 (*.f64 (cos.f64 y) x) (*.f64 z (sin.f64 y)))
(+.f64 (*.f64 z (sin.f64 y)) (*.f64 (cos.f64 y) x))
(+.f64 (*.f64 (cos.f64 y) x) (*.f64 z (sin.f64 y)))
(+.f64 (*.f64 z (sin.f64 y)) (*.f64 (cos.f64 y) x))
(+.f64 (*.f64 (cos.f64 y) x) (*.f64 z (sin.f64 y)))
(+.f64 (*.f64 z (sin.f64 y)) (*.f64 (cos.f64 y) x))
(*.f64 (cos.f64 y) x)
(+.f64 (*.f64 z (sin.f64 y)) (*.f64 (cos.f64 y) x))
(+.f64 (*.f64 z (sin.f64 y)) (*.f64 (cos.f64 y) x))
(+.f64 (*.f64 z (sin.f64 y)) (*.f64 (cos.f64 y) x))
(*.f64 z (sin.f64 y))
(+.f64 (*.f64 (cos.f64 y) x) (*.f64 z (sin.f64 y)))
(+.f64 (*.f64 z (sin.f64 y)) (*.f64 (cos.f64 y) x))
(+.f64 (*.f64 (cos.f64 y) x) (*.f64 z (sin.f64 y)))
(+.f64 (*.f64 z (sin.f64 y)) (*.f64 (cos.f64 y) x))
(+.f64 (*.f64 (cos.f64 y) x) (*.f64 z (sin.f64 y)))
(+.f64 (*.f64 z (sin.f64 y)) (*.f64 (cos.f64 y) x))
(*.f64 z (sin.f64 y))
(+.f64 (*.f64 (cos.f64 y) x) (*.f64 z (sin.f64 y)))
(+.f64 (*.f64 z (sin.f64 y)) (*.f64 (cos.f64 y) x))
(+.f64 (*.f64 (cos.f64 y) x) (*.f64 z (sin.f64 y)))
(+.f64 (*.f64 z (sin.f64 y)) (*.f64 (cos.f64 y) x))
(+.f64 (*.f64 (cos.f64 y) x) (*.f64 z (sin.f64 y)))
(+.f64 (*.f64 z (sin.f64 y)) (*.f64 (cos.f64 y) x))
(+.f64 (*.f64 z (sin.f64 y)) 0)
(*.f64 z (sin.f64 y))
(+.f64 0 (*.f64 z (sin.f64 y)))
(*.f64 z (sin.f64 y))
(+.f64 (*.f64 z (*.f64 (sin.f64 y) 1/2)) (*.f64 z (*.f64 (sin.f64 y) 1/2)))
(*.f64 z (sin.f64 y))
(-.f64 (*.f64 z (sin.f64 y)) 0)
(*.f64 z (sin.f64 y))
(/.f64 (*.f64 z (sin.f64 y)) 1)
(*.f64 z (sin.f64 y))
(/.f64 (*.f64 (sin.f64 y) (+.f64 z z)) 2)
(*.f64 z (sin.f64 y))
(/.f64 (*.f64 (sin.f64 y) (*.f64 z 4)) 4)
(*.f64 z (sin.f64 y))
(/.f64 (*.f64 (*.f64 z (sin.f64 y)) 8) 8)
(*.f64 z (sin.f64 y))
(/.f64 (*.f64 2 (*.f64 (*.f64 z (sin.f64 y)) 8)) 16)
(*.f64 z (sin.f64 y))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 z (sin.f64 y)) 8))) 32)
(*.f64 z (sin.f64 y))
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 z (sin.f64 y)) 8))) (*.f64 2 (*.f64 2 (*.f64 (*.f64 z (sin.f64 y)) 8)))) 64)
(*.f64 z (sin.f64 y))
(pow.f64 (*.f64 z (sin.f64 y)) 1)
(*.f64 z (sin.f64 y))
(+.f64 (*.f64 x (cos.f64 y)) 0)
(*.f64 (cos.f64 y) x)
(+.f64 0 (*.f64 x (cos.f64 y)))
(*.f64 (cos.f64 y) x)
(+.f64 (*.f64 x (*.f64 (cos.f64 y) 1/2)) (*.f64 x (*.f64 (cos.f64 y) 1/2)))
(*.f64 (cos.f64 y) x)
(-.f64 (*.f64 x (cos.f64 y)) 0)
(*.f64 (cos.f64 y) x)
(/.f64 (*.f64 x (cos.f64 y)) 1)
(*.f64 (cos.f64 y) x)
(/.f64 (*.f64 (cos.f64 y) (+.f64 x x)) 2)
(*.f64 (cos.f64 y) x)
(/.f64 (*.f64 (cos.f64 y) (*.f64 x 4)) 4)
(*.f64 (cos.f64 y) x)
(/.f64 (*.f64 (*.f64 x 8) (cos.f64 y)) 8)
(*.f64 (cos.f64 y) x)
(/.f64 (*.f64 2 (*.f64 (*.f64 x 8) (cos.f64 y))) 16)
(*.f64 (cos.f64 y) x)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 x 8) (cos.f64 y)))) 32)
(*.f64 (cos.f64 y) x)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 x 8) (cos.f64 y)))) (*.f64 2 (*.f64 2 (*.f64 (*.f64 x 8) (cos.f64 y))))) 64)
(*.f64 (cos.f64 y) x)
(pow.f64 (*.f64 x (cos.f64 y)) 1)
(*.f64 (cos.f64 y) x)
(-.f64 (+.f64 (*.f64 z (sin.f64 y)) (*.f64 x (cos.f64 y))) 0)
(+.f64 (*.f64 z (sin.f64 y)) (*.f64 (cos.f64 y) x))
(*.f64 (+.f64 (*.f64 z (sin.f64 y)) (*.f64 x (cos.f64 y))) 1)
(+.f64 (*.f64 z (sin.f64 y)) (*.f64 (cos.f64 y) x))
(*.f64 1 (+.f64 (*.f64 z (sin.f64 y)) (*.f64 x (cos.f64 y))))
(+.f64 (*.f64 z (sin.f64 y)) (*.f64 (cos.f64 y) x))
(*.f64 2 (*.f64 (+.f64 (*.f64 z (sin.f64 y)) (*.f64 x (cos.f64 y))) 1/2))
(+.f64 (*.f64 z (sin.f64 y)) (*.f64 (cos.f64 y) x))
(*.f64 2 (+.f64 (*.f64 x (*.f64 (cos.f64 y) 1/2)) (*.f64 z (*.f64 (sin.f64 y) 1/2))))
(+.f64 (*.f64 z (sin.f64 y)) (*.f64 (cos.f64 y) x))
(*.f64 2 (+.f64 (*.f64 z (*.f64 (sin.f64 y) 1/2)) (*.f64 x (*.f64 (cos.f64 y) 1/2))))
(+.f64 (*.f64 z (sin.f64 y)) (*.f64 (cos.f64 y) x))
(*.f64 (*.f64 (+.f64 (*.f64 z (sin.f64 y)) (*.f64 x (cos.f64 y))) 2) 1/2)
(+.f64 (*.f64 z (sin.f64 y)) (*.f64 (cos.f64 y) x))
(*.f64 4 (/.f64 (+.f64 (*.f64 z (sin.f64 y)) (*.f64 x (cos.f64 y))) 4))
(+.f64 (*.f64 z (sin.f64 y)) (*.f64 (cos.f64 y) x))
(*.f64 (*.f64 (+.f64 (*.f64 z (sin.f64 y)) (*.f64 x (cos.f64 y))) 4) 1/4)
(+.f64 (*.f64 z (sin.f64 y)) (*.f64 (cos.f64 y) x))
(*.f64 1/2 (*.f64 (+.f64 (*.f64 z (sin.f64 y)) (*.f64 x (cos.f64 y))) 2))
(+.f64 (*.f64 z (sin.f64 y)) (*.f64 (cos.f64 y) x))
(*.f64 1/2 (+.f64 (*.f64 (cos.f64 y) (+.f64 x x)) (*.f64 (sin.f64 y) (+.f64 z z))))
(+.f64 (*.f64 z (sin.f64 y)) (*.f64 (cos.f64 y) x))
(*.f64 1/2 (+.f64 (*.f64 (sin.f64 y) (+.f64 z z)) (*.f64 (cos.f64 y) (+.f64 x x))))
(+.f64 (*.f64 z (sin.f64 y)) (*.f64 (cos.f64 y) x))
(*.f64 (*.f64 (+.f64 (*.f64 z (sin.f64 y)) (*.f64 x (cos.f64 y))) 1/2) 2)
(+.f64 (*.f64 z (sin.f64 y)) (*.f64 (cos.f64 y) x))
(*.f64 1/4 (*.f64 (+.f64 (*.f64 z (sin.f64 y)) (*.f64 x (cos.f64 y))) 4))
(+.f64 (*.f64 z (sin.f64 y)) (*.f64 (cos.f64 y) x))
(*.f64 (/.f64 (+.f64 (*.f64 z (sin.f64 y)) (*.f64 x (cos.f64 y))) 4) 4)
(+.f64 (*.f64 z (sin.f64 y)) (*.f64 (cos.f64 y) x))
(/.f64 (+.f64 (*.f64 z (sin.f64 y)) (*.f64 x (cos.f64 y))) 1)
(+.f64 (*.f64 z (sin.f64 y)) (*.f64 (cos.f64 y) x))
(/.f64 (*.f64 (+.f64 (*.f64 z (sin.f64 y)) (*.f64 x (cos.f64 y))) 2) 2)
(+.f64 (*.f64 z (sin.f64 y)) (*.f64 (cos.f64 y) x))
(/.f64 (*.f64 (+.f64 (*.f64 z (sin.f64 y)) (*.f64 x (cos.f64 y))) 4) 4)
(+.f64 (*.f64 z (sin.f64 y)) (*.f64 (cos.f64 y) x))
(/.f64 (*.f64 (+.f64 (*.f64 z (sin.f64 y)) (*.f64 x (cos.f64 y))) 8) 8)
(+.f64 (*.f64 z (sin.f64 y)) (*.f64 (cos.f64 y) x))
(/.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 z (sin.f64 y)) (*.f64 x (cos.f64 y))) 8)) 16)
(+.f64 (*.f64 z (sin.f64 y)) (*.f64 (cos.f64 y) x))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 z (sin.f64 y)) (*.f64 x (cos.f64 y))) 8))) 32)
(+.f64 (*.f64 z (sin.f64 y)) (*.f64 (cos.f64 y) x))
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 z (sin.f64 y)) (*.f64 x (cos.f64 y))) 8))) (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 z (sin.f64 y)) (*.f64 x (cos.f64 y))) 8)))) 64)
(+.f64 (*.f64 z (sin.f64 y)) (*.f64 (cos.f64 y) x))
(pow.f64 (+.f64 (*.f64 z (sin.f64 y)) (*.f64 x (cos.f64 y))) 1)
(+.f64 (*.f64 z (sin.f64 y)) (*.f64 (cos.f64 y) x))

eval22.0ms (0.2%)

Compiler

Compiled 1565 to 763 computations (51.2% saved)

prune18.0ms (0.2%)

Pruning

6 alts after pruning (5 fresh and 1 done)

PrunedKeptTotal
New88593
Fresh000
Picked011
Done000
Total88694
Error
0.1b
Counts
94 → 6
Alt Table
Click to see full alt table
StatusErrorProgram
30.0b
(+.f64 (*.f64 y z) x)
28.9b
(+.f64 (*.f64 x (cos.f64 y)) (+.f64 (*.f64 z (*.f64 (pow.f64 y 3) -1/6)) (+.f64 (*.f64 y z) (*.f64 z (*.f64 (pow.f64 y 5) 1/120)))))
0.1b
(+.f64 (*.f64 x (cos.f64 y)) (*.f64 z (sin.f64 y)))
21.9b
(+.f64 (*.f64 x (cos.f64 y)) (*.f64 y z))
13.9b
(+.f64 x (*.f64 z (sin.f64 y)))
35.7b
(*.f64 z (sin.f64 y))
Compiler

Compiled 136 to 92 computations (32.4% saved)

localize7.0ms (0.1%)

Local error

Found 2 expressions with local error:

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

Compiled 18 to 6 computations (66.7% saved)

series1.0ms (0%)

Counts
1 → 27
Calls

9 calls:

TimeVariablePointExpression
0.0ms
x
@inf
(+.f64 x (*.f64 z (sin.f64 y)))
0.0ms
x
@0
(+.f64 x (*.f64 z (sin.f64 y)))
0.0ms
y
@0
(+.f64 x (*.f64 z (sin.f64 y)))
0.0ms
x
@-inf
(+.f64 x (*.f64 z (sin.f64 y)))
0.0ms
y
@inf
(+.f64 x (*.f64 z (sin.f64 y)))

rewrite83.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
1390×rational.json-1
1390×rational.json-2
1390×rational.json-3
1386×exponential.json-3
1386×rational.json-4
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0917
16217
214217
329617
459017
5138717
6333917
7587517
Stop Event
node limit
Counts
1 → 22
Calls
Call 1
Inputs
(+.f64 x (*.f64 z (sin.f64 y)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 x (*.f64 z (sin.f64 y))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 x (*.f64 z (sin.f64 y))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 x (*.f64 z (sin.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (+.f64 x (*.f64 z (sin.f64 y))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (+.f64 (*.f64 x 1/2) (*.f64 z (*.f64 (sin.f64 y) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 x (*.f64 z (sin.f64 y))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (*.f64 (+.f64 x (*.f64 z (sin.f64 y))) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 x (*.f64 z (sin.f64 y))) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (+.f64 x (*.f64 z (sin.f64 y))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (+.f64 (*.f64 z (*.f64 (sin.f64 y) 2)) (+.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 x (*.f64 z (sin.f64 y))) 8) 1/8)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 x (*.f64 z (sin.f64 y))) 1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (+.f64 x (*.f64 z (sin.f64 y))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 x (*.f64 z (sin.f64 y))) 1/4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 x (*.f64 z (sin.f64 y))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 x (*.f64 z (sin.f64 y))) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 x (*.f64 z (sin.f64 y))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 x (*.f64 z (sin.f64 y))) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (+.f64 x (*.f64 z (sin.f64 y))) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 x (*.f64 z (sin.f64 y))) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 x (*.f64 z (sin.f64 y))) 8))) (*.f64 2 (*.f64 2 (*.f64 (+.f64 x (*.f64 z (sin.f64 y))) 8)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 x (*.f64 z (sin.f64 y))) 1)))))

simplify228.0ms (2.1%)

Algorithm
egg-herbie
Rules
2162×rational.json-simplify-45
1378×rational.json-simplify-2
1320×rational.json-simplify-1
1078×rational.json-simplify-48
1064×rational.json-simplify-51
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
076829
1161829
2413817
3988811
41492811
53013811
63885811
74043811
84464811
95330811
105738811
115888811
126129811
136555811
Stop Event
node limit
Counts
49 → 38
Calls
Call 1
Inputs
(*.f64 z (sin.f64 y))
x
(+.f64 (*.f64 z (sin.f64 y)) x)
(+.f64 (*.f64 z (sin.f64 y)) x)
(+.f64 (*.f64 z (sin.f64 y)) x)
x
(+.f64 (*.f64 z (sin.f64 y)) x)
(+.f64 (*.f64 z (sin.f64 y)) x)
(+.f64 (*.f64 z (sin.f64 y)) x)
x
(+.f64 (*.f64 z (sin.f64 y)) x)
(+.f64 (*.f64 z (sin.f64 y)) x)
(+.f64 (*.f64 z (sin.f64 y)) x)
(*.f64 z (sin.f64 y))
(*.f64 z (sin.f64 y))
x
(+.f64 (*.f64 y z) x)
(+.f64 (*.f64 y z) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 y 3) z)) x))
(+.f64 (*.f64 y z) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 y 3) z)) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 y 5) z)) x)))
(+.f64 (*.f64 z (sin.f64 y)) x)
(+.f64 (*.f64 z (sin.f64 y)) x)
(+.f64 (*.f64 z (sin.f64 y)) x)
(+.f64 (*.f64 z (sin.f64 y)) x)
(+.f64 (*.f64 z (sin.f64 y)) x)
(+.f64 (*.f64 z (sin.f64 y)) x)
(+.f64 (*.f64 z (sin.f64 y)) x)
(+.f64 (*.f64 z (sin.f64 y)) x)
(-.f64 (+.f64 x (*.f64 z (sin.f64 y))) 0)
(*.f64 (+.f64 x (*.f64 z (sin.f64 y))) 1)
(*.f64 1 (+.f64 x (*.f64 z (sin.f64 y))))
(*.f64 2 (*.f64 (+.f64 x (*.f64 z (sin.f64 y))) 1/2))
(*.f64 2 (+.f64 (*.f64 x 1/2) (*.f64 z (*.f64 (sin.f64 y) 1/2))))
(*.f64 (*.f64 (+.f64 x (*.f64 z (sin.f64 y))) 2) 1/2)
(*.f64 4 (*.f64 (+.f64 x (*.f64 z (sin.f64 y))) 1/4))
(*.f64 (*.f64 (+.f64 x (*.f64 z (sin.f64 y))) 4) 1/4)
(*.f64 1/2 (*.f64 (+.f64 x (*.f64 z (sin.f64 y))) 2))
(*.f64 1/2 (+.f64 (*.f64 z (*.f64 (sin.f64 y) 2)) (+.f64 x x)))
(*.f64 (*.f64 (+.f64 x (*.f64 z (sin.f64 y))) 8) 1/8)
(*.f64 (*.f64 (+.f64 x (*.f64 z (sin.f64 y))) 1/2) 2)
(*.f64 1/4 (*.f64 (+.f64 x (*.f64 z (sin.f64 y))) 4))
(*.f64 (*.f64 (+.f64 x (*.f64 z (sin.f64 y))) 1/4) 4)
(/.f64 (+.f64 x (*.f64 z (sin.f64 y))) 1)
(/.f64 (*.f64 (+.f64 x (*.f64 z (sin.f64 y))) 2) 2)
(/.f64 (*.f64 (+.f64 x (*.f64 z (sin.f64 y))) 4) 4)
(/.f64 (*.f64 (+.f64 x (*.f64 z (sin.f64 y))) 8) 8)
(/.f64 (*.f64 2 (*.f64 (+.f64 x (*.f64 z (sin.f64 y))) 8)) 16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 x (*.f64 z (sin.f64 y))) 8))) 32)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 x (*.f64 z (sin.f64 y))) 8))) (*.f64 2 (*.f64 2 (*.f64 (+.f64 x (*.f64 z (sin.f64 y))) 8)))) 64)
(pow.f64 (+.f64 x (*.f64 z (sin.f64 y))) 1)
Outputs
(*.f64 z (sin.f64 y))
x
(+.f64 (*.f64 z (sin.f64 y)) x)
(+.f64 (*.f64 z (sin.f64 y)) x)
(+.f64 (*.f64 z (sin.f64 y)) x)
x
(+.f64 (*.f64 z (sin.f64 y)) x)
(+.f64 (*.f64 z (sin.f64 y)) x)
(+.f64 (*.f64 z (sin.f64 y)) x)
x
(+.f64 (*.f64 z (sin.f64 y)) x)
(+.f64 (*.f64 z (sin.f64 y)) x)
(+.f64 (*.f64 z (sin.f64 y)) x)
(*.f64 z (sin.f64 y))
(*.f64 z (sin.f64 y))
x
(+.f64 (*.f64 y z) x)
(+.f64 x (*.f64 z y))
(+.f64 (*.f64 y z) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 y 3) z)) x))
(+.f64 (*.f64 z y) (+.f64 x (*.f64 -1/6 (*.f64 z (pow.f64 y 3)))))
(+.f64 (+.f64 x (*.f64 z y)) (*.f64 (pow.f64 y 3) (*.f64 z -1/6)))
(+.f64 x (*.f64 z (+.f64 y (*.f64 -1/6 (pow.f64 y 3)))))
(+.f64 (*.f64 y z) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 y 3) z)) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 y 5) z)) x)))
(+.f64 (*.f64 z y) (+.f64 (*.f64 -1/6 (*.f64 z (pow.f64 y 3))) (+.f64 x (*.f64 1/120 (*.f64 z (pow.f64 y 5))))))
(+.f64 (*.f64 z y) (+.f64 x (+.f64 (*.f64 z (*.f64 (pow.f64 y 5) 1/120)) (*.f64 (pow.f64 y 3) (*.f64 z -1/6)))))
(+.f64 x (+.f64 (*.f64 z (+.f64 y (*.f64 -1/6 (pow.f64 y 3)))) (*.f64 1/120 (*.f64 z (pow.f64 y 5)))))
(+.f64 x (*.f64 z (+.f64 (*.f64 1/120 (pow.f64 y 5)) (+.f64 y (*.f64 -1/6 (pow.f64 y 3))))))
(+.f64 x (*.f64 z (+.f64 y (+.f64 (*.f64 1/120 (pow.f64 y 5)) (*.f64 -1/6 (pow.f64 y 3))))))
(+.f64 (*.f64 z (sin.f64 y)) x)
(+.f64 (*.f64 z (sin.f64 y)) x)
(+.f64 (*.f64 z (sin.f64 y)) x)
(+.f64 (*.f64 z (sin.f64 y)) x)
(+.f64 (*.f64 z (sin.f64 y)) x)
(+.f64 (*.f64 z (sin.f64 y)) x)
(+.f64 (*.f64 z (sin.f64 y)) x)
(+.f64 (*.f64 z (sin.f64 y)) x)
(-.f64 (+.f64 x (*.f64 z (sin.f64 y))) 0)
(+.f64 (*.f64 z (sin.f64 y)) x)
(*.f64 (+.f64 x (*.f64 z (sin.f64 y))) 1)
(+.f64 (*.f64 z (sin.f64 y)) x)
(*.f64 1 (+.f64 x (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 z (sin.f64 y)) x)
(*.f64 2 (*.f64 (+.f64 x (*.f64 z (sin.f64 y))) 1/2))
(+.f64 (*.f64 z (sin.f64 y)) x)
(*.f64 2 (+.f64 (*.f64 x 1/2) (*.f64 z (*.f64 (sin.f64 y) 1/2))))
(+.f64 (*.f64 z (sin.f64 y)) x)
(*.f64 (*.f64 (+.f64 x (*.f64 z (sin.f64 y))) 2) 1/2)
(+.f64 (*.f64 z (sin.f64 y)) x)
(*.f64 4 (*.f64 (+.f64 x (*.f64 z (sin.f64 y))) 1/4))
(+.f64 (*.f64 z (sin.f64 y)) x)
(*.f64 (*.f64 (+.f64 x (*.f64 z (sin.f64 y))) 4) 1/4)
(+.f64 (*.f64 z (sin.f64 y)) x)
(*.f64 1/2 (*.f64 (+.f64 x (*.f64 z (sin.f64 y))) 2))
(+.f64 (*.f64 z (sin.f64 y)) x)
(*.f64 1/2 (+.f64 (*.f64 z (*.f64 (sin.f64 y) 2)) (+.f64 x x)))
(*.f64 1/2 (+.f64 x (+.f64 x (*.f64 z (*.f64 (sin.f64 y) 2)))))
(*.f64 (*.f64 (+.f64 x (*.f64 z (sin.f64 y))) 8) 1/8)
(+.f64 (*.f64 z (sin.f64 y)) x)
(*.f64 (*.f64 (+.f64 x (*.f64 z (sin.f64 y))) 1/2) 2)
(+.f64 (*.f64 z (sin.f64 y)) x)
(*.f64 1/4 (*.f64 (+.f64 x (*.f64 z (sin.f64 y))) 4))
(+.f64 (*.f64 z (sin.f64 y)) x)
(*.f64 (*.f64 (+.f64 x (*.f64 z (sin.f64 y))) 1/4) 4)
(+.f64 (*.f64 z (sin.f64 y)) x)
(/.f64 (+.f64 x (*.f64 z (sin.f64 y))) 1)
(+.f64 (*.f64 z (sin.f64 y)) x)
(/.f64 (*.f64 (+.f64 x (*.f64 z (sin.f64 y))) 2) 2)
(+.f64 (*.f64 z (sin.f64 y)) x)
(/.f64 (*.f64 (+.f64 x (*.f64 z (sin.f64 y))) 4) 4)
(+.f64 (*.f64 z (sin.f64 y)) x)
(/.f64 (*.f64 (+.f64 x (*.f64 z (sin.f64 y))) 8) 8)
(+.f64 (*.f64 z (sin.f64 y)) x)
(/.f64 (*.f64 2 (*.f64 (+.f64 x (*.f64 z (sin.f64 y))) 8)) 16)
(+.f64 (*.f64 z (sin.f64 y)) x)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 x (*.f64 z (sin.f64 y))) 8))) 32)
(+.f64 (*.f64 z (sin.f64 y)) x)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 x (*.f64 z (sin.f64 y))) 8))) (*.f64 2 (*.f64 2 (*.f64 (+.f64 x (*.f64 z (sin.f64 y))) 8)))) 64)
(+.f64 (*.f64 z (sin.f64 y)) x)
(pow.f64 (+.f64 x (*.f64 z (sin.f64 y))) 1)
(+.f64 (*.f64 z (sin.f64 y)) x)

localize5.0ms (0%)

Local error

Found 1 expressions with local error:

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

Compiled 14 to 5 computations (64.3% saved)

series2.0ms (0%)

Counts
1 → 9
Calls

9 calls:

TimeVariablePointExpression
0.0ms
y
@0
(+.f64 (*.f64 y z) x)
0.0ms
z
@inf
(+.f64 (*.f64 y z) x)
0.0ms
y
@inf
(+.f64 (*.f64 y z) x)
0.0ms
z
@-inf
(+.f64 (*.f64 y z) x)
0.0ms
y
@-inf
(+.f64 (*.f64 y z) x)

rewrite184.0ms (1.7%)

Algorithm
batch-egg-rewrite
Rules
1524×rational.json-simplify-35
1424×rational.json-simplify-1
1386×exponential.json-3
1386×rational.json-1
1386×rational.json-2
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0713
14613
210213
321413
439713
589613
6231413
7416913
8535313
9686413
10767513
11767513
Stop Event
node limit
Counts
1 → 23
Calls
Call 1
Inputs
(+.f64 (*.f64 y z) x)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 y z) x) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 y z) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 (*.f64 y z) x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (+.f64 (*.f64 y z) x) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 y z) x) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (*.f64 (+.f64 (*.f64 y z) x) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 y z) x) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 y z) x) 8) 1/8)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (+.f64 (*.f64 y z) x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 y z) x) 1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (+.f64 (*.f64 y z) x) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 y z) x) 1/4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/8 (*.f64 (+.f64 (*.f64 y z) x) 8))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 y z) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 y z) x) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 y z) x) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 y z) x) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 y z) x) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 y z) x) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 y z) x) 8)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 y z) x) 8))))) 128)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 y z) x) 8)))))) 256)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 (*.f64 y z) x) 1)))))

simplify775.0ms (7.2%)

Algorithm
egg-herbie
Rules
6176×rational.json-simplify-51
3534×rational.json-simplify-35
1360×rational.json-simplify-49
1156×rational.json-simplify-2
1124×rational.json-simplify-1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
053338
1121338
2423338
31174338
41878338
52772338
63259338
73333338
83381338
93413338
103445338
113477338
123509338
133541338
143573338
153605338
163637338
173669338
183701338
194608338
204867338
214960338
225049338
235136338
245222338
255435338
265435338
275521338
285607338
295693338
305779338
315865338
325951338
336037338
346123338
356209338
Stop Event
node limit
Counts
32 → 26
Calls
Call 1
Inputs
x
(*.f64 y z)
(*.f64 y z)
x
(*.f64 y z)
(*.f64 y z)
(*.f64 y z)
x
x
(-.f64 (+.f64 (*.f64 y z) x) 0)
(*.f64 (+.f64 (*.f64 y z) x) 1)
(*.f64 1 (+.f64 (*.f64 y z) x))
(*.f64 2 (*.f64 (+.f64 (*.f64 y z) x) 1/2))
(*.f64 (*.f64 (+.f64 (*.f64 y z) x) 2) 1/2)
(*.f64 4 (*.f64 (+.f64 (*.f64 y z) x) 1/4))
(*.f64 (*.f64 (+.f64 (*.f64 y z) x) 4) 1/4)
(*.f64 (*.f64 (+.f64 (*.f64 y z) x) 8) 1/8)
(*.f64 1/2 (*.f64 (+.f64 (*.f64 y z) x) 2))
(*.f64 (*.f64 (+.f64 (*.f64 y z) x) 1/2) 2)
(*.f64 1/4 (*.f64 (+.f64 (*.f64 y z) x) 4))
(*.f64 (*.f64 (+.f64 (*.f64 y z) x) 1/4) 4)
(*.f64 1/8 (*.f64 (+.f64 (*.f64 y z) x) 8))
(/.f64 (+.f64 (*.f64 y z) x) 1)
(/.f64 (*.f64 (+.f64 (*.f64 y z) x) 2) 2)
(/.f64 (*.f64 (+.f64 (*.f64 y z) x) 4) 4)
(/.f64 (*.f64 (+.f64 (*.f64 y z) x) 8) 8)
(/.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 y z) x) 8)) 16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 y z) x) 8))) 32)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 y z) x) 8)))) 64)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 y z) x) 8))))) 128)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 y z) x) 8)))))) 256)
(pow.f64 (+.f64 (*.f64 y z) x) 1)
Outputs
x
(*.f64 y z)
(*.f64 y z)
x
(*.f64 y z)
(*.f64 y z)
(*.f64 y z)
x
x
(-.f64 (+.f64 (*.f64 y z) x) 0)
(+.f64 x (*.f64 y z))
(*.f64 (+.f64 (*.f64 y z) x) 1)
(+.f64 x (*.f64 y z))
(*.f64 1 (+.f64 (*.f64 y z) x))
(+.f64 x (*.f64 y z))
(*.f64 2 (*.f64 (+.f64 (*.f64 y z) x) 1/2))
(+.f64 x (*.f64 y z))
(*.f64 (*.f64 (+.f64 (*.f64 y z) x) 2) 1/2)
(+.f64 x (*.f64 y z))
(*.f64 4 (*.f64 (+.f64 (*.f64 y z) x) 1/4))
(+.f64 x (*.f64 y z))
(*.f64 (*.f64 (+.f64 (*.f64 y z) x) 4) 1/4)
(+.f64 x (*.f64 y z))
(*.f64 (*.f64 (+.f64 (*.f64 y z) x) 8) 1/8)
(+.f64 x (*.f64 y z))
(*.f64 1/2 (*.f64 (+.f64 (*.f64 y z) x) 2))
(+.f64 x (*.f64 y z))
(*.f64 (*.f64 (+.f64 (*.f64 y z) x) 1/2) 2)
(+.f64 x (*.f64 y z))
(*.f64 1/4 (*.f64 (+.f64 (*.f64 y z) x) 4))
(+.f64 x (*.f64 y z))
(*.f64 (*.f64 (+.f64 (*.f64 y z) x) 1/4) 4)
(+.f64 x (*.f64 y z))
(*.f64 1/8 (*.f64 (+.f64 (*.f64 y z) x) 8))
(+.f64 x (*.f64 y z))
(/.f64 (+.f64 (*.f64 y z) x) 1)
(+.f64 x (*.f64 y z))
(/.f64 (*.f64 (+.f64 (*.f64 y z) x) 2) 2)
(+.f64 x (*.f64 y z))
(/.f64 (*.f64 (+.f64 (*.f64 y z) x) 4) 4)
(+.f64 x (*.f64 y z))
(/.f64 (*.f64 (+.f64 (*.f64 y z) x) 8) 8)
(+.f64 x (*.f64 y z))
(/.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 y z) x) 8)) 16)
(+.f64 x (*.f64 y z))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 y z) x) 8))) 32)
(+.f64 x (*.f64 y z))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 y z) x) 8)))) 64)
(+.f64 x (*.f64 y z))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 y z) x) 8))))) 128)
(+.f64 x (*.f64 y z))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 y z) x) 8)))))) 256)
(+.f64 x (*.f64 y z))
(pow.f64 (+.f64 (*.f64 y z) x) 1)
(+.f64 x (*.f64 y z))

localize5.0ms (0%)

Local error

Found 1 expressions with local error:

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

Compiled 11 to 5 computations (54.5% saved)

localize9.0ms (0.1%)

Local error

Found 2 expressions with local error:

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

Compiled 23 to 7 computations (69.6% saved)

series1.0ms (0%)

Counts
1 → 36
Calls

9 calls:

TimeVariablePointExpression
0.0ms
x
@0
(+.f64 (*.f64 x (cos.f64 y)) (*.f64 y z))
0.0ms
y
@0
(+.f64 (*.f64 x (cos.f64 y)) (*.f64 y z))
0.0ms
y
@-inf
(+.f64 (*.f64 x (cos.f64 y)) (*.f64 y z))
0.0ms
y
@inf
(+.f64 (*.f64 x (cos.f64 y)) (*.f64 y z))
0.0ms
x
@inf
(+.f64 (*.f64 x (cos.f64 y)) (*.f64 y z))

rewrite166.0ms (1.5%)

Algorithm
batch-egg-rewrite
Rules
1424×rational.json-1
1424×rational.json-2
1402×rational.json-simplify-35
1266×rational.json-3
1258×exponential.json-3
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01023
16723
214523
331523
462723
5147923
6291023
7437923
8604923
9715823
10787623
Stop Event
node limit
Counts
1 → 21
Calls
Call 1
Inputs
(+.f64 (*.f64 x (cos.f64 y)) (*.f64 y z))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 x (cos.f64 y)) (*.f64 y z)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 x (cos.f64 y)) (*.f64 y z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 (*.f64 x (cos.f64 y)) (*.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (+.f64 (*.f64 x (cos.f64 y)) (*.f64 y z)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 x (cos.f64 y)) (*.f64 y z)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (+.f64 (*.f64 x (cos.f64 y)) (*.f64 y z)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 x (cos.f64 y)) (*.f64 y z)) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (+.f64 (*.f64 x (cos.f64 y)) (*.f64 y z)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (+.f64 (*.f64 y (+.f64 z z)) (*.f64 (cos.f64 y) (+.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 x (cos.f64 y)) (*.f64 y z)) 1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (+.f64 (*.f64 x (cos.f64 y)) (*.f64 y z)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 (*.f64 x (cos.f64 y)) (*.f64 y z)) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 x (cos.f64 y)) (*.f64 y z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 x (cos.f64 y)) (*.f64 y z)) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 x (cos.f64 y)) (*.f64 y z)) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 x (cos.f64 y)) (*.f64 y z)) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 x (cos.f64 y)) (*.f64 y z)) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 x (cos.f64 y)) (*.f64 y z)) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 x (cos.f64 y)) (*.f64 y z)) 8)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 x (cos.f64 y)) (*.f64 y z)) 8))))) 128)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 (*.f64 x (cos.f64 y)) (*.f64 y z)) 1)))))

simplify316.0ms (2.9%)

Algorithm
egg-herbie
Rules
1680×rational.json-simplify-1
1516×rational.json-simplify-35
1322×rational.json-simplify-49
832×rational.json-simplify-2
794×rational.json-simplify-38
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0711215
11551215
23821215
310211209
416581209
524511209
629261209
730151209
830971209
931871209
1032911209
1135521209
1242961209
1346641209
1449531209
1551601209
1653391209
1755091209
1860631209
Stop Event
node limit
Counts
57 → 39
Calls
Call 1
Inputs
(*.f64 y z)
(+.f64 (*.f64 y z) (*.f64 (cos.f64 y) x))
(+.f64 (*.f64 y z) (*.f64 (cos.f64 y) x))
(+.f64 (*.f64 y z) (*.f64 (cos.f64 y) x))
(*.f64 (cos.f64 y) x)
(+.f64 (*.f64 y z) (*.f64 (cos.f64 y) x))
(+.f64 (*.f64 y z) (*.f64 (cos.f64 y) x))
(+.f64 (*.f64 y z) (*.f64 (cos.f64 y) x))
(*.f64 (cos.f64 y) x)
(+.f64 (*.f64 y z) (*.f64 (cos.f64 y) x))
(+.f64 (*.f64 y z) (*.f64 (cos.f64 y) x))
(+.f64 (*.f64 y z) (*.f64 (cos.f64 y) x))
x
(+.f64 (*.f64 y z) x)
(+.f64 (*.f64 y z) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y 2) x)) x))
(+.f64 (*.f64 y z) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 y 4) x)) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y 2) x)) x)))
(*.f64 y z)
(+.f64 (*.f64 y z) (*.f64 (cos.f64 y) x))
(+.f64 (*.f64 y z) (*.f64 (cos.f64 y) x))
(+.f64 (*.f64 y z) (*.f64 (cos.f64 y) x))
(*.f64 y z)
(+.f64 (*.f64 y z) (*.f64 (cos.f64 y) x))
(+.f64 (*.f64 y z) (*.f64 (cos.f64 y) x))
(+.f64 (*.f64 y z) (*.f64 (cos.f64 y) x))
(*.f64 (cos.f64 y) x)
(+.f64 (*.f64 y z) (*.f64 (cos.f64 y) x))
(+.f64 (*.f64 y z) (*.f64 (cos.f64 y) x))
(+.f64 (*.f64 y z) (*.f64 (cos.f64 y) x))
(*.f64 y z)
(+.f64 (*.f64 y z) (*.f64 (cos.f64 y) x))
(+.f64 (*.f64 y z) (*.f64 (cos.f64 y) x))
(+.f64 (*.f64 y z) (*.f64 (cos.f64 y) x))
(*.f64 y z)
(+.f64 (*.f64 y z) (*.f64 (cos.f64 y) x))
(+.f64 (*.f64 y z) (*.f64 (cos.f64 y) x))
(+.f64 (*.f64 y z) (*.f64 (cos.f64 y) x))
(-.f64 (+.f64 (*.f64 x (cos.f64 y)) (*.f64 y z)) 0)
(*.f64 (+.f64 (*.f64 x (cos.f64 y)) (*.f64 y z)) 1)
(*.f64 1 (+.f64 (*.f64 x (cos.f64 y)) (*.f64 y z)))
(*.f64 2 (*.f64 (+.f64 (*.f64 x (cos.f64 y)) (*.f64 y z)) 1/2))
(*.f64 (*.f64 (+.f64 (*.f64 x (cos.f64 y)) (*.f64 y z)) 2) 1/2)
(*.f64 4 (/.f64 (+.f64 (*.f64 x (cos.f64 y)) (*.f64 y z)) 4))
(*.f64 (*.f64 (+.f64 (*.f64 x (cos.f64 y)) (*.f64 y z)) 4) 1/4)
(*.f64 1/2 (*.f64 (+.f64 (*.f64 x (cos.f64 y)) (*.f64 y z)) 2))
(*.f64 1/2 (+.f64 (*.f64 y (+.f64 z z)) (*.f64 (cos.f64 y) (+.f64 x x))))
(*.f64 (*.f64 (+.f64 (*.f64 x (cos.f64 y)) (*.f64 y z)) 1/2) 2)
(*.f64 1/4 (*.f64 (+.f64 (*.f64 x (cos.f64 y)) (*.f64 y z)) 4))
(*.f64 (/.f64 (+.f64 (*.f64 x (cos.f64 y)) (*.f64 y z)) 4) 4)
(/.f64 (+.f64 (*.f64 x (cos.f64 y)) (*.f64 y z)) 1)
(/.f64 (*.f64 (+.f64 (*.f64 x (cos.f64 y)) (*.f64 y z)) 2) 2)
(/.f64 (*.f64 (+.f64 (*.f64 x (cos.f64 y)) (*.f64 y z)) 4) 4)
(/.f64 (*.f64 (+.f64 (*.f64 x (cos.f64 y)) (*.f64 y z)) 8) 8)
(/.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 x (cos.f64 y)) (*.f64 y z)) 8)) 16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 x (cos.f64 y)) (*.f64 y z)) 8))) 32)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 x (cos.f64 y)) (*.f64 y z)) 8)))) 64)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 x (cos.f64 y)) (*.f64 y z)) 8))))) 128)
(pow.f64 (+.f64 (*.f64 x (cos.f64 y)) (*.f64 y z)) 1)
Outputs
(*.f64 y z)
(+.f64 (*.f64 y z) (*.f64 (cos.f64 y) x))
(+.f64 (*.f64 y z) (*.f64 (cos.f64 y) x))
(+.f64 (*.f64 y z) (*.f64 (cos.f64 y) x))
(*.f64 (cos.f64 y) x)
(+.f64 (*.f64 y z) (*.f64 (cos.f64 y) x))
(+.f64 (*.f64 y z) (*.f64 (cos.f64 y) x))
(+.f64 (*.f64 y z) (*.f64 (cos.f64 y) x))
(*.f64 (cos.f64 y) x)
(+.f64 (*.f64 y z) (*.f64 (cos.f64 y) x))
(+.f64 (*.f64 y z) (*.f64 (cos.f64 y) x))
(+.f64 (*.f64 y z) (*.f64 (cos.f64 y) x))
x
(+.f64 (*.f64 y z) x)
(+.f64 (*.f64 y z) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y 2) x)) x))
(+.f64 (*.f64 y z) (+.f64 x (*.f64 -1/2 (*.f64 x (pow.f64 y 2)))))
(+.f64 (+.f64 (*.f64 y z) x) (*.f64 x (*.f64 (pow.f64 y 2) -1/2)))
(+.f64 (+.f64 (*.f64 y z) x) (*.f64 (pow.f64 y 2) (*.f64 x -1/2)))
(+.f64 (*.f64 y z) (+.f64 x (*.f64 (pow.f64 y 2) (*.f64 x -1/2))))
(+.f64 (*.f64 y z) (+.f64 x (*.f64 x (*.f64 -1/2 (pow.f64 y 2)))))
(+.f64 (*.f64 y z) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 y 4) x)) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y 2) x)) x)))
(+.f64 (*.f64 y z) (+.f64 (+.f64 x (*.f64 -1/2 (*.f64 x (pow.f64 y 2)))) (*.f64 1/24 (*.f64 x (pow.f64 y 4)))))
(+.f64 (*.f64 x (*.f64 (pow.f64 y 2) -1/2)) (+.f64 (+.f64 (*.f64 y z) x) (*.f64 x (*.f64 (pow.f64 y 4) 1/24))))
(+.f64 (*.f64 (pow.f64 y 2) (*.f64 x -1/2)) (+.f64 (+.f64 (*.f64 y z) x) (*.f64 x (*.f64 1/24 (pow.f64 y 4)))))
(+.f64 (*.f64 y z) (+.f64 x (*.f64 x (+.f64 (*.f64 -1/2 (pow.f64 y 2)) (*.f64 1/24 (pow.f64 y 4))))))
(+.f64 (*.f64 y z) (+.f64 x (*.f64 x (+.f64 (*.f64 1/24 (pow.f64 y 4)) (*.f64 -1/2 (pow.f64 y 2))))))
(+.f64 x (+.f64 (*.f64 y z) (*.f64 x (+.f64 (*.f64 1/24 (pow.f64 y 4)) (*.f64 -1/2 (pow.f64 y 2))))))
(*.f64 y z)
(+.f64 (*.f64 y z) (*.f64 (cos.f64 y) x))
(+.f64 (*.f64 y z) (*.f64 (cos.f64 y) x))
(+.f64 (*.f64 y z) (*.f64 (cos.f64 y) x))
(*.f64 y z)
(+.f64 (*.f64 y z) (*.f64 (cos.f64 y) x))
(+.f64 (*.f64 y z) (*.f64 (cos.f64 y) x))
(+.f64 (*.f64 y z) (*.f64 (cos.f64 y) x))
(*.f64 (cos.f64 y) x)
(+.f64 (*.f64 y z) (*.f64 (cos.f64 y) x))
(+.f64 (*.f64 y z) (*.f64 (cos.f64 y) x))
(+.f64 (*.f64 y z) (*.f64 (cos.f64 y) x))
(*.f64 y z)
(+.f64 (*.f64 y z) (*.f64 (cos.f64 y) x))
(+.f64 (*.f64 y z) (*.f64 (cos.f64 y) x))
(+.f64 (*.f64 y z) (*.f64 (cos.f64 y) x))
(*.f64 y z)
(+.f64 (*.f64 y z) (*.f64 (cos.f64 y) x))
(+.f64 (*.f64 y z) (*.f64 (cos.f64 y) x))
(+.f64 (*.f64 y z) (*.f64 (cos.f64 y) x))
(-.f64 (+.f64 (*.f64 x (cos.f64 y)) (*.f64 y z)) 0)
(+.f64 (*.f64 y z) (*.f64 (cos.f64 y) x))
(*.f64 (+.f64 (*.f64 x (cos.f64 y)) (*.f64 y z)) 1)
(+.f64 (*.f64 y z) (*.f64 (cos.f64 y) x))
(*.f64 1 (+.f64 (*.f64 x (cos.f64 y)) (*.f64 y z)))
(+.f64 (*.f64 y z) (*.f64 (cos.f64 y) x))
(*.f64 2 (*.f64 (+.f64 (*.f64 x (cos.f64 y)) (*.f64 y z)) 1/2))
(+.f64 (*.f64 y z) (*.f64 (cos.f64 y) x))
(*.f64 (*.f64 (+.f64 (*.f64 x (cos.f64 y)) (*.f64 y z)) 2) 1/2)
(+.f64 (*.f64 y z) (*.f64 (cos.f64 y) x))
(*.f64 4 (/.f64 (+.f64 (*.f64 x (cos.f64 y)) (*.f64 y z)) 4))
(+.f64 (*.f64 y z) (*.f64 (cos.f64 y) x))
(*.f64 (*.f64 (+.f64 (*.f64 x (cos.f64 y)) (*.f64 y z)) 4) 1/4)
(+.f64 (*.f64 y z) (*.f64 (cos.f64 y) x))
(*.f64 1/2 (*.f64 (+.f64 (*.f64 x (cos.f64 y)) (*.f64 y z)) 2))
(+.f64 (*.f64 y z) (*.f64 (cos.f64 y) x))
(*.f64 1/2 (+.f64 (*.f64 y (+.f64 z z)) (*.f64 (cos.f64 y) (+.f64 x x))))
(+.f64 (*.f64 y z) (*.f64 (cos.f64 y) x))
(*.f64 (*.f64 (+.f64 (*.f64 x (cos.f64 y)) (*.f64 y z)) 1/2) 2)
(+.f64 (*.f64 y z) (*.f64 (cos.f64 y) x))
(*.f64 1/4 (*.f64 (+.f64 (*.f64 x (cos.f64 y)) (*.f64 y z)) 4))
(+.f64 (*.f64 y z) (*.f64 (cos.f64 y) x))
(*.f64 (/.f64 (+.f64 (*.f64 x (cos.f64 y)) (*.f64 y z)) 4) 4)
(+.f64 (*.f64 y z) (*.f64 (cos.f64 y) x))
(/.f64 (+.f64 (*.f64 x (cos.f64 y)) (*.f64 y z)) 1)
(+.f64 (*.f64 y z) (*.f64 (cos.f64 y) x))
(/.f64 (*.f64 (+.f64 (*.f64 x (cos.f64 y)) (*.f64 y z)) 2) 2)
(+.f64 (*.f64 y z) (*.f64 (cos.f64 y) x))
(/.f64 (*.f64 (+.f64 (*.f64 x (cos.f64 y)) (*.f64 y z)) 4) 4)
(+.f64 (*.f64 y z) (*.f64 (cos.f64 y) x))
(/.f64 (*.f64 (+.f64 (*.f64 x (cos.f64 y)) (*.f64 y z)) 8) 8)
(+.f64 (*.f64 y z) (*.f64 (cos.f64 y) x))
(/.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 x (cos.f64 y)) (*.f64 y z)) 8)) 16)
(+.f64 (*.f64 y z) (*.f64 (cos.f64 y) x))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 x (cos.f64 y)) (*.f64 y z)) 8))) 32)
(+.f64 (*.f64 y z) (*.f64 (cos.f64 y) x))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 x (cos.f64 y)) (*.f64 y z)) 8)))) 64)
(+.f64 (*.f64 y z) (*.f64 (cos.f64 y) x))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 x (cos.f64 y)) (*.f64 y z)) 8))))) 128)
(+.f64 (*.f64 y z) (*.f64 (cos.f64 y) x))
(pow.f64 (+.f64 (*.f64 x (cos.f64 y)) (*.f64 y z)) 1)
(+.f64 (*.f64 y z) (*.f64 (cos.f64 y) x))

localize37.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(*.f64 (pow.f64 y 3) -1/6)
2.7b
(*.f64 z (*.f64 (pow.f64 y 5) 1/120))
5.0b
(*.f64 z (*.f64 (pow.f64 y 3) -1/6))
18.2b
(+.f64 (*.f64 z (*.f64 (pow.f64 y 3) -1/6)) (+.f64 (*.f64 y z) (*.f64 z (*.f64 (pow.f64 y 5) 1/120))))
Compiler

Compiled 103 to 63 computations (38.8% saved)

series8.0ms (0.1%)

Counts
4 → 84
Calls

21 calls:

TimeVariablePointExpression
3.0ms
z
@0
(+.f64 (*.f64 z (*.f64 (pow.f64 y 3) -1/6)) (+.f64 (*.f64 y z) (*.f64 z (*.f64 (pow.f64 y 5) 1/120))))
1.0ms
z
@inf
(+.f64 (*.f64 z (*.f64 (pow.f64 y 3) -1/6)) (+.f64 (*.f64 y z) (*.f64 z (*.f64 (pow.f64 y 5) 1/120))))
1.0ms
z
@-inf
(+.f64 (*.f64 z (*.f64 (pow.f64 y 3) -1/6)) (+.f64 (*.f64 y z) (*.f64 z (*.f64 (pow.f64 y 5) 1/120))))
0.0ms
y
@0
(*.f64 z (*.f64 (pow.f64 y 5) 1/120))
0.0ms
y
@0
(*.f64 z (*.f64 (pow.f64 y 3) -1/6))

rewrite175.0ms (1.6%)

Algorithm
batch-egg-rewrite
Rules
1732×rational.json-simplify-1
1436×exponential.json-3
1436×rational.json-1
1436×rational.json-2
1436×rational.json-4
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
017106
1117100
224694
353694
4109194
5283794
6530094
7644594
8757894
9757894
Stop Event
node limit
Counts
4 → 61
Calls
Call 1
Inputs
(+.f64 (*.f64 z (*.f64 (pow.f64 y 3) -1/6)) (+.f64 (*.f64 y z) (*.f64 z (*.f64 (pow.f64 y 5) 1/120))))
(*.f64 z (*.f64 (pow.f64 y 3) -1/6))
(*.f64 z (*.f64 (pow.f64 y 5) 1/120))
(*.f64 (pow.f64 y 3) -1/6)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 z (+.f64 y (+.f64 (*.f64 (pow.f64 y 3) -1/6) (*.f64 (pow.f64 y 5) 1/120)))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 z (+.f64 y (+.f64 (*.f64 (pow.f64 y 3) -1/6) (*.f64 (pow.f64 y 5) 1/120))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 z (+.f64 y (+.f64 (*.f64 (pow.f64 y 3) -1/6) (*.f64 (pow.f64 y 5) 1/120)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 z (+.f64 y (+.f64 (*.f64 (pow.f64 y 3) -1/6) (*.f64 (pow.f64 y 5) 1/120)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 z (/.f64 (+.f64 y (+.f64 (*.f64 (pow.f64 y 3) -1/6) (*.f64 (pow.f64 y 5) 1/120))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 z (*.f64 2 (+.f64 y (+.f64 (*.f64 (pow.f64 y 3) -1/6) (*.f64 (pow.f64 y 5) 1/120))))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 z z) (*.f64 (+.f64 y (+.f64 (*.f64 (pow.f64 y 3) -1/6) (*.f64 (pow.f64 y 5) 1/120))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (*.f64 z (+.f64 y (+.f64 (*.f64 (pow.f64 y 3) -1/6) (*.f64 (pow.f64 y 5) 1/120)))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 z (+.f64 y (+.f64 (*.f64 (pow.f64 y 3) -1/6) (*.f64 (pow.f64 y 5) 1/120)))) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 y (+.f64 (*.f64 (pow.f64 y 3) -1/6) (*.f64 (pow.f64 y 5) 1/120))) z)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (+.f64 y (+.f64 (*.f64 (pow.f64 y 3) -1/6) (*.f64 (pow.f64 y 5) 1/120)))) (*.f64 z 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 z (*.f64 2 (+.f64 y (+.f64 (*.f64 (pow.f64 y 3) -1/6) (*.f64 (pow.f64 y 5) 1/120))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 z (/.f64 (+.f64 y (+.f64 (*.f64 (pow.f64 y 3) -1/6) (*.f64 (pow.f64 y 5) 1/120))) 2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 z 1/2) (*.f64 2 (+.f64 y (+.f64 (*.f64 (pow.f64 y 3) -1/6) (*.f64 (pow.f64 y 5) 1/120)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 y (+.f64 (*.f64 (pow.f64 y 3) -1/6) (*.f64 (pow.f64 y 5) 1/120))) 1/2) (+.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (*.f64 z (+.f64 y (+.f64 (*.f64 (pow.f64 y 3) -1/6) (*.f64 (pow.f64 y 5) 1/120)))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 z (+.f64 y (+.f64 (*.f64 (pow.f64 y 3) -1/6) (*.f64 (pow.f64 y 5) 1/120)))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 z (+.f64 y (+.f64 (*.f64 (pow.f64 y 3) -1/6) (*.f64 (pow.f64 y 5) 1/120)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 z (*.f64 2 (+.f64 y (+.f64 (*.f64 (pow.f64 y 3) -1/6) (*.f64 (pow.f64 y 5) 1/120))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 z (+.f64 y (+.f64 (*.f64 (pow.f64 y 3) -1/6) (*.f64 (pow.f64 y 5) 1/120)))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (*.f64 z (+.f64 y (+.f64 (*.f64 (pow.f64 y 3) -1/6) (*.f64 (pow.f64 y 5) 1/120)))) 4)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 z (+.f64 y (+.f64 (*.f64 (pow.f64 y 3) -1/6) (*.f64 (pow.f64 y 5) 1/120)))) 4))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 z (+.f64 y (+.f64 (*.f64 (pow.f64 y 3) -1/6) (*.f64 (pow.f64 y 5) 1/120)))) 4)))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 z (+.f64 y (+.f64 (*.f64 (pow.f64 y 3) -1/6) (*.f64 (pow.f64 y 5) 1/120)))) 4))))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 z (+.f64 y (+.f64 (*.f64 (pow.f64 y 3) -1/6) (*.f64 (pow.f64 y 5) 1/120)))) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 z (*.f64 (pow.f64 y 3) -1/6)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 z (*.f64 (pow.f64 y 3) -1/6)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 z (*.f64 (pow.f64 y 3) -1/12)) (*.f64 z (*.f64 (pow.f64 y 3) -1/12)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 z (*.f64 (pow.f64 y 3) -1/6)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 z (*.f64 (pow.f64 y 3) -1/6)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 z (*.f64 (pow.f64 y 3) -1/3)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 z (pow.f64 y 3)) -2/3) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (*.f64 z (pow.f64 y 3)) -2/3)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 z (pow.f64 y 3)) -2/3))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 z (pow.f64 y 3)) -2/3)))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 z (pow.f64 y 3)) -2/3))))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 z (*.f64 (pow.f64 y 3) -1/6)) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 z (*.f64 (pow.f64 y 5) 1/120)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 z (*.f64 (pow.f64 y 5) 1/120)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 z (*.f64 (pow.f64 y 5) 1/240)) (*.f64 z (*.f64 (pow.f64 y 5) 1/240)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 z (*.f64 (pow.f64 y 5) 1/120)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 z (*.f64 (pow.f64 y 5) 1/120)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 z (*.f64 (pow.f64 y 5) 1/60)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 z (pow.f64 y 5)) 1/30) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (*.f64 z (pow.f64 y 5)) 1/30)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 z (pow.f64 y 5)) 1/30))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 z (pow.f64 y 5)) 1/30)))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 z (pow.f64 y 5)) 1/30))))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 z (*.f64 (pow.f64 y 5) 1/120)) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (pow.f64 y 3) -1/6) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (pow.f64 y 3) -1/6))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (pow.f64 y 3) -1/12) (*.f64 (pow.f64 y 3) -1/12))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (pow.f64 y 3) -1/6) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 y 3) -1/6) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 y 3) -1/3) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 y 3) -2/3) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (pow.f64 y 3) -2/3)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 y 3) -2/3))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 y 3) -2/3)))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 y 3) -2/3))))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 y 3) -1/6) 1)))))

simplify184.0ms (1.7%)

Algorithm
egg-herbie
Rules
2120×rational.json-simplify-2
2118×rational.json-simplify-51
1994×rational.json-simplify-41
1786×rational.json-simplify-35
1308×rational.json-simplify-53
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01583739
13853723
28733705
325913705
438703705
545843705
650213705
753313705
855533705
Stop Event
node limit
Counts
145 → 81
Calls
Call 1
Inputs
(*.f64 (+.f64 (*.f64 -1/6 (pow.f64 y 3)) (+.f64 (*.f64 1/120 (pow.f64 y 5)) y)) z)
(*.f64 (+.f64 (*.f64 -1/6 (pow.f64 y 3)) (+.f64 (*.f64 1/120 (pow.f64 y 5)) y)) z)
(*.f64 (+.f64 (*.f64 -1/6 (pow.f64 y 3)) (+.f64 (*.f64 1/120 (pow.f64 y 5)) y)) z)
(*.f64 (+.f64 (*.f64 -1/6 (pow.f64 y 3)) (+.f64 (*.f64 1/120 (pow.f64 y 5)) y)) z)
(*.f64 (+.f64 (*.f64 -1/6 (pow.f64 y 3)) (+.f64 y (*.f64 1/120 (pow.f64 y 5)))) z)
(*.f64 (+.f64 (*.f64 -1/6 (pow.f64 y 3)) (+.f64 y (*.f64 1/120 (pow.f64 y 5)))) z)
(*.f64 (+.f64 (*.f64 -1/6 (pow.f64 y 3)) (+.f64 y (*.f64 1/120 (pow.f64 y 5)))) z)
(*.f64 (+.f64 (*.f64 -1/6 (pow.f64 y 3)) (+.f64 y (*.f64 1/120 (pow.f64 y 5)))) z)
(*.f64 -1 (*.f64 (+.f64 (*.f64 -1/120 (pow.f64 y 5)) (+.f64 (*.f64 1/6 (pow.f64 y 3)) (*.f64 -1 y))) z))
(*.f64 -1 (*.f64 (+.f64 (*.f64 -1/120 (pow.f64 y 5)) (+.f64 (*.f64 1/6 (pow.f64 y 3)) (*.f64 -1 y))) z))
(*.f64 -1 (*.f64 (+.f64 (*.f64 -1/120 (pow.f64 y 5)) (+.f64 (*.f64 1/6 (pow.f64 y 3)) (*.f64 -1 y))) z))
(*.f64 -1 (*.f64 (+.f64 (*.f64 -1/120 (pow.f64 y 5)) (+.f64 (*.f64 1/6 (pow.f64 y 3)) (*.f64 -1 y))) z))
(*.f64 y z)
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 y 3) z)) (*.f64 y z))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 y 3) z)) (+.f64 (*.f64 y z) (*.f64 1/120 (*.f64 (pow.f64 y 5) z))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 y 3) z)) (+.f64 (*.f64 y z) (*.f64 1/120 (*.f64 (pow.f64 y 5) z))))
(*.f64 1/120 (*.f64 (pow.f64 y 5) z))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 y 3) z)) (*.f64 1/120 (*.f64 (pow.f64 y 5) z)))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 y 3) z)) (+.f64 (*.f64 y z) (*.f64 1/120 (*.f64 (pow.f64 y 5) z))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 y 3) z)) (+.f64 (*.f64 y z) (*.f64 1/120 (*.f64 (pow.f64 y 5) z))))
(*.f64 1/120 (*.f64 (pow.f64 y 5) z))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 y 3) z)) (*.f64 1/120 (*.f64 (pow.f64 y 5) z)))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 y 3) z)) (+.f64 (*.f64 y z) (*.f64 1/120 (*.f64 (pow.f64 y 5) z))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 y 3) z)) (+.f64 (*.f64 y z) (*.f64 1/120 (*.f64 (pow.f64 y 5) z))))
(*.f64 -1/6 (*.f64 (pow.f64 y 3) z))
(*.f64 -1/6 (*.f64 (pow.f64 y 3) z))
(*.f64 -1/6 (*.f64 (pow.f64 y 3) z))
(*.f64 -1/6 (*.f64 (pow.f64 y 3) z))
(*.f64 -1/6 (*.f64 (pow.f64 y 3) z))
(*.f64 -1/6 (*.f64 (pow.f64 y 3) z))
(*.f64 -1/6 (*.f64 (pow.f64 y 3) z))
(*.f64 -1/6 (*.f64 (pow.f64 y 3) z))
(*.f64 -1/6 (*.f64 (pow.f64 y 3) z))
(*.f64 -1/6 (*.f64 (pow.f64 y 3) z))
(*.f64 -1/6 (*.f64 (pow.f64 y 3) z))
(*.f64 -1/6 (*.f64 (pow.f64 y 3) z))
(*.f64 -1/6 (*.f64 (pow.f64 y 3) z))
(*.f64 -1/6 (*.f64 (pow.f64 y 3) z))
(*.f64 -1/6 (*.f64 (pow.f64 y 3) z))
(*.f64 -1/6 (*.f64 (pow.f64 y 3) z))
(*.f64 -1/6 (*.f64 (pow.f64 y 3) z))
(*.f64 -1/6 (*.f64 (pow.f64 y 3) z))
(*.f64 -1/6 (*.f64 (pow.f64 y 3) z))
(*.f64 -1/6 (*.f64 (pow.f64 y 3) z))
(*.f64 -1/6 (*.f64 (pow.f64 y 3) z))
(*.f64 -1/6 (*.f64 (pow.f64 y 3) z))
(*.f64 -1/6 (*.f64 (pow.f64 y 3) z))
(*.f64 -1/6 (*.f64 (pow.f64 y 3) z))
(*.f64 1/120 (*.f64 (pow.f64 y 5) z))
(*.f64 1/120 (*.f64 (pow.f64 y 5) z))
(*.f64 1/120 (*.f64 (pow.f64 y 5) z))
(*.f64 1/120 (*.f64 (pow.f64 y 5) z))
(*.f64 1/120 (*.f64 (pow.f64 y 5) z))
(*.f64 1/120 (*.f64 (pow.f64 y 5) z))
(*.f64 1/120 (*.f64 (pow.f64 y 5) z))
(*.f64 1/120 (*.f64 (pow.f64 y 5) z))
(*.f64 1/120 (*.f64 (pow.f64 y 5) z))
(*.f64 1/120 (*.f64 (pow.f64 y 5) z))
(*.f64 1/120 (*.f64 (pow.f64 y 5) z))
(*.f64 1/120 (*.f64 (pow.f64 y 5) z))
(*.f64 1/120 (*.f64 (pow.f64 y 5) z))
(*.f64 1/120 (*.f64 (pow.f64 y 5) z))
(*.f64 1/120 (*.f64 (pow.f64 y 5) z))
(*.f64 1/120 (*.f64 (pow.f64 y 5) z))
(*.f64 1/120 (*.f64 (pow.f64 y 5) z))
(*.f64 1/120 (*.f64 (pow.f64 y 5) z))
(*.f64 1/120 (*.f64 (pow.f64 y 5) z))
(*.f64 1/120 (*.f64 (pow.f64 y 5) z))
(*.f64 1/120 (*.f64 (pow.f64 y 5) z))
(*.f64 1/120 (*.f64 (pow.f64 y 5) z))
(*.f64 1/120 (*.f64 (pow.f64 y 5) z))
(*.f64 1/120 (*.f64 (pow.f64 y 5) z))
(*.f64 -1/6 (pow.f64 y 3))
(*.f64 -1/6 (pow.f64 y 3))
(*.f64 -1/6 (pow.f64 y 3))
(*.f64 -1/6 (pow.f64 y 3))
(*.f64 -1/6 (pow.f64 y 3))
(*.f64 -1/6 (pow.f64 y 3))
(*.f64 -1/6 (pow.f64 y 3))
(*.f64 -1/6 (pow.f64 y 3))
(*.f64 -1/6 (pow.f64 y 3))
(*.f64 -1/6 (pow.f64 y 3))
(*.f64 -1/6 (pow.f64 y 3))
(*.f64 -1/6 (pow.f64 y 3))
(-.f64 (*.f64 z (+.f64 y (+.f64 (*.f64 (pow.f64 y 3) -1/6) (*.f64 (pow.f64 y 5) 1/120)))) 0)
(*.f64 z (+.f64 y (+.f64 (*.f64 (pow.f64 y 3) -1/6) (*.f64 (pow.f64 y 5) 1/120))))
(*.f64 (*.f64 z (+.f64 y (+.f64 (*.f64 (pow.f64 y 3) -1/6) (*.f64 (pow.f64 y 5) 1/120)))) 1)
(*.f64 1 (*.f64 z (+.f64 y (+.f64 (*.f64 (pow.f64 y 3) -1/6) (*.f64 (pow.f64 y 5) 1/120)))))
(*.f64 2 (*.f64 z (/.f64 (+.f64 y (+.f64 (*.f64 (pow.f64 y 3) -1/6) (*.f64 (pow.f64 y 5) 1/120))) 2)))
(*.f64 (*.f64 z (*.f64 2 (+.f64 y (+.f64 (*.f64 (pow.f64 y 3) -1/6) (*.f64 (pow.f64 y 5) 1/120))))) 1/2)
(*.f64 (+.f64 z z) (*.f64 (+.f64 y (+.f64 (*.f64 (pow.f64 y 3) -1/6) (*.f64 (pow.f64 y 5) 1/120))) 1/2))
(*.f64 4 (/.f64 (*.f64 z (+.f64 y (+.f64 (*.f64 (pow.f64 y 3) -1/6) (*.f64 (pow.f64 y 5) 1/120)))) 4))
(*.f64 (*.f64 (*.f64 z (+.f64 y (+.f64 (*.f64 (pow.f64 y 3) -1/6) (*.f64 (pow.f64 y 5) 1/120)))) 4) 1/4)
(*.f64 (+.f64 y (+.f64 (*.f64 (pow.f64 y 3) -1/6) (*.f64 (pow.f64 y 5) 1/120))) z)
(*.f64 (*.f64 2 (+.f64 y (+.f64 (*.f64 (pow.f64 y 3) -1/6) (*.f64 (pow.f64 y 5) 1/120)))) (*.f64 z 1/2))
(*.f64 1/2 (*.f64 z (*.f64 2 (+.f64 y (+.f64 (*.f64 (pow.f64 y 3) -1/6) (*.f64 (pow.f64 y 5) 1/120))))))
(*.f64 (*.f64 z (/.f64 (+.f64 y (+.f64 (*.f64 (pow.f64 y 3) -1/6) (*.f64 (pow.f64 y 5) 1/120))) 2)) 2)
(*.f64 (*.f64 z 1/2) (*.f64 2 (+.f64 y (+.f64 (*.f64 (pow.f64 y 3) -1/6) (*.f64 (pow.f64 y 5) 1/120)))))
(*.f64 (*.f64 (+.f64 y (+.f64 (*.f64 (pow.f64 y 3) -1/6) (*.f64 (pow.f64 y 5) 1/120))) 1/2) (+.f64 z z))
(*.f64 1/4 (*.f64 (*.f64 z (+.f64 y (+.f64 (*.f64 (pow.f64 y 3) -1/6) (*.f64 (pow.f64 y 5) 1/120)))) 4))
(*.f64 (/.f64 (*.f64 z (+.f64 y (+.f64 (*.f64 (pow.f64 y 3) -1/6) (*.f64 (pow.f64 y 5) 1/120)))) 4) 4)
(/.f64 (*.f64 z (+.f64 y (+.f64 (*.f64 (pow.f64 y 3) -1/6) (*.f64 (pow.f64 y 5) 1/120)))) 1)
(/.f64 (*.f64 z (*.f64 2 (+.f64 y (+.f64 (*.f64 (pow.f64 y 3) -1/6) (*.f64 (pow.f64 y 5) 1/120))))) 2)
(/.f64 (*.f64 (*.f64 z (+.f64 y (+.f64 (*.f64 (pow.f64 y 3) -1/6) (*.f64 (pow.f64 y 5) 1/120)))) 4) 4)
(/.f64 (*.f64 2 (*.f64 (*.f64 z (+.f64 y (+.f64 (*.f64 (pow.f64 y 3) -1/6) (*.f64 (pow.f64 y 5) 1/120)))) 4)) 8)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 z (+.f64 y (+.f64 (*.f64 (pow.f64 y 3) -1/6) (*.f64 (pow.f64 y 5) 1/120)))) 4))) 16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 z (+.f64 y (+.f64 (*.f64 (pow.f64 y 3) -1/6) (*.f64 (pow.f64 y 5) 1/120)))) 4)))) 32)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 z (+.f64 y (+.f64 (*.f64 (pow.f64 y 3) -1/6) (*.f64 (pow.f64 y 5) 1/120)))) 4))))) 64)
(pow.f64 (*.f64 z (+.f64 y (+.f64 (*.f64 (pow.f64 y 3) -1/6) (*.f64 (pow.f64 y 5) 1/120)))) 1)
(+.f64 (*.f64 z (*.f64 (pow.f64 y 3) -1/6)) 0)
(+.f64 0 (*.f64 z (*.f64 (pow.f64 y 3) -1/6)))
(+.f64 (*.f64 z (*.f64 (pow.f64 y 3) -1/12)) (*.f64 z (*.f64 (pow.f64 y 3) -1/12)))
(-.f64 (*.f64 z (*.f64 (pow.f64 y 3) -1/6)) 0)
(/.f64 (*.f64 z (*.f64 (pow.f64 y 3) -1/6)) 1)
(/.f64 (*.f64 z (*.f64 (pow.f64 y 3) -1/3)) 2)
(/.f64 (*.f64 (*.f64 z (pow.f64 y 3)) -2/3) 4)
(/.f64 (*.f64 2 (*.f64 (*.f64 z (pow.f64 y 3)) -2/3)) 8)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 z (pow.f64 y 3)) -2/3))) 16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 z (pow.f64 y 3)) -2/3)))) 32)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 z (pow.f64 y 3)) -2/3))))) 64)
(pow.f64 (*.f64 z (*.f64 (pow.f64 y 3) -1/6)) 1)
(+.f64 (*.f64 z (*.f64 (pow.f64 y 5) 1/120)) 0)
(+.f64 0 (*.f64 z (*.f64 (pow.f64 y 5) 1/120)))
(+.f64 (*.f64 z (*.f64 (pow.f64 y 5) 1/240)) (*.f64 z (*.f64 (pow.f64 y 5) 1/240)))
(-.f64 (*.f64 z (*.f64 (pow.f64 y 5) 1/120)) 0)
(/.f64 (*.f64 z (*.f64 (pow.f64 y 5) 1/120)) 1)
(/.f64 (*.f64 z (*.f64 (pow.f64 y 5) 1/60)) 2)
(/.f64 (*.f64 (*.f64 z (pow.f64 y 5)) 1/30) 4)
(/.f64 (*.f64 2 (*.f64 (*.f64 z (pow.f64 y 5)) 1/30)) 8)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 z (pow.f64 y 5)) 1/30))) 16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 z (pow.f64 y 5)) 1/30)))) 32)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 z (pow.f64 y 5)) 1/30))))) 64)
(pow.f64 (*.f64 z (*.f64 (pow.f64 y 5) 1/120)) 1)
(+.f64 (*.f64 (pow.f64 y 3) -1/6) 0)
(+.f64 0 (*.f64 (pow.f64 y 3) -1/6))
(+.f64 (*.f64 (pow.f64 y 3) -1/12) (*.f64 (pow.f64 y 3) -1/12))
(-.f64 (*.f64 (pow.f64 y 3) -1/6) 0)
(/.f64 (*.f64 (pow.f64 y 3) -1/6) 1)
(/.f64 (*.f64 (pow.f64 y 3) -1/3) 2)
(/.f64 (*.f64 (pow.f64 y 3) -2/3) 4)
(/.f64 (*.f64 2 (*.f64 (pow.f64 y 3) -2/3)) 8)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 y 3) -2/3))) 16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 y 3) -2/3)))) 32)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 y 3) -2/3))))) 64)
(pow.f64 (*.f64 (pow.f64 y 3) -1/6) 1)
Outputs
(*.f64 (+.f64 (*.f64 -1/6 (pow.f64 y 3)) (+.f64 (*.f64 1/120 (pow.f64 y 5)) y)) z)
(*.f64 z (+.f64 (*.f64 1/120 (pow.f64 y 5)) (+.f64 y (*.f64 -1/6 (pow.f64 y 3)))))
(*.f64 z (+.f64 y (+.f64 (*.f64 -1/6 (pow.f64 y 3)) (*.f64 1/120 (pow.f64 y 5)))))
(*.f64 (+.f64 (*.f64 -1/6 (pow.f64 y 3)) (+.f64 (*.f64 1/120 (pow.f64 y 5)) y)) z)
(*.f64 z (+.f64 (*.f64 1/120 (pow.f64 y 5)) (+.f64 y (*.f64 -1/6 (pow.f64 y 3)))))
(*.f64 z (+.f64 y (+.f64 (*.f64 -1/6 (pow.f64 y 3)) (*.f64 1/120 (pow.f64 y 5)))))
(*.f64 (+.f64 (*.f64 -1/6 (pow.f64 y 3)) (+.f64 (*.f64 1/120 (pow.f64 y 5)) y)) z)
(*.f64 z (+.f64 (*.f64 1/120 (pow.f64 y 5)) (+.f64 y (*.f64 -1/6 (pow.f64 y 3)))))
(*.f64 z (+.f64 y (+.f64 (*.f64 -1/6 (pow.f64 y 3)) (*.f64 1/120 (pow.f64 y 5)))))
(*.f64 (+.f64 (*.f64 -1/6 (pow.f64 y 3)) (+.f64 (*.f64 1/120 (pow.f64 y 5)) y)) z)
(*.f64 z (+.f64 (*.f64 1/120 (pow.f64 y 5)) (+.f64 y (*.f64 -1/6 (pow.f64 y 3)))))
(*.f64 z (+.f64 y (+.f64 (*.f64 -1/6 (pow.f64 y 3)) (*.f64 1/120 (pow.f64 y 5)))))
(*.f64 (+.f64 (*.f64 -1/6 (pow.f64 y 3)) (+.f64 y (*.f64 1/120 (pow.f64 y 5)))) z)
(*.f64 z (+.f64 (*.f64 1/120 (pow.f64 y 5)) (+.f64 y (*.f64 -1/6 (pow.f64 y 3)))))
(*.f64 z (+.f64 y (+.f64 (*.f64 -1/6 (pow.f64 y 3)) (*.f64 1/120 (pow.f64 y 5)))))
(*.f64 (+.f64 (*.f64 -1/6 (pow.f64 y 3)) (+.f64 y (*.f64 1/120 (pow.f64 y 5)))) z)
(*.f64 z (+.f64 (*.f64 1/120 (pow.f64 y 5)) (+.f64 y (*.f64 -1/6 (pow.f64 y 3)))))
(*.f64 z (+.f64 y (+.f64 (*.f64 -1/6 (pow.f64 y 3)) (*.f64 1/120 (pow.f64 y 5)))))
(*.f64 (+.f64 (*.f64 -1/6 (pow.f64 y 3)) (+.f64 y (*.f64 1/120 (pow.f64 y 5)))) z)
(*.f64 z (+.f64 (*.f64 1/120 (pow.f64 y 5)) (+.f64 y (*.f64 -1/6 (pow.f64 y 3)))))
(*.f64 z (+.f64 y (+.f64 (*.f64 -1/6 (pow.f64 y 3)) (*.f64 1/120 (pow.f64 y 5)))))
(*.f64 (+.f64 (*.f64 -1/6 (pow.f64 y 3)) (+.f64 y (*.f64 1/120 (pow.f64 y 5)))) z)
(*.f64 z (+.f64 (*.f64 1/120 (pow.f64 y 5)) (+.f64 y (*.f64 -1/6 (pow.f64 y 3)))))
(*.f64 z (+.f64 y (+.f64 (*.f64 -1/6 (pow.f64 y 3)) (*.f64 1/120 (pow.f64 y 5)))))
(*.f64 -1 (*.f64 (+.f64 (*.f64 -1/120 (pow.f64 y 5)) (+.f64 (*.f64 1/6 (pow.f64 y 3)) (*.f64 -1 y))) z))
(*.f64 (+.f64 (*.f64 (pow.f64 y 5) -1/120) (+.f64 (*.f64 (pow.f64 y 3) 1/6) (*.f64 y -1))) (*.f64 z -1))
(*.f64 (+.f64 (*.f64 (pow.f64 y 5) -1/120) (+.f64 (*.f64 (pow.f64 y 3) 1/6) (neg.f64 y))) (neg.f64 z))
(*.f64 z (neg.f64 (+.f64 (*.f64 (pow.f64 y 5) -1/120) (+.f64 (*.f64 (pow.f64 y 3) 1/6) (neg.f64 y)))))
(*.f64 -1 (*.f64 (+.f64 (*.f64 -1/120 (pow.f64 y 5)) (+.f64 (*.f64 1/6 (pow.f64 y 3)) (*.f64 -1 y))) z))
(*.f64 (+.f64 (*.f64 (pow.f64 y 5) -1/120) (+.f64 (*.f64 (pow.f64 y 3) 1/6) (*.f64 y -1))) (*.f64 z -1))
(*.f64 (+.f64 (*.f64 (pow.f64 y 5) -1/120) (+.f64 (*.f64 (pow.f64 y 3) 1/6) (neg.f64 y))) (neg.f64 z))
(*.f64 z (neg.f64 (+.f64 (*.f64 (pow.f64 y 5) -1/120) (+.f64 (*.f64 (pow.f64 y 3) 1/6) (neg.f64 y)))))
(*.f64 -1 (*.f64 (+.f64 (*.f64 -1/120 (pow.f64 y 5)) (+.f64 (*.f64 1/6 (pow.f64 y 3)) (*.f64 -1 y))) z))
(*.f64 (+.f64 (*.f64 (pow.f64 y 5) -1/120) (+.f64 (*.f64 (pow.f64 y 3) 1/6) (*.f64 y -1))) (*.f64 z -1))
(*.f64 (+.f64 (*.f64 (pow.f64 y 5) -1/120) (+.f64 (*.f64 (pow.f64 y 3) 1/6) (neg.f64 y))) (neg.f64 z))
(*.f64 z (neg.f64 (+.f64 (*.f64 (pow.f64 y 5) -1/120) (+.f64 (*.f64 (pow.f64 y 3) 1/6) (neg.f64 y)))))
(*.f64 -1 (*.f64 (+.f64 (*.f64 -1/120 (pow.f64 y 5)) (+.f64 (*.f64 1/6 (pow.f64 y 3)) (*.f64 -1 y))) z))
(*.f64 (+.f64 (*.f64 (pow.f64 y 5) -1/120) (+.f64 (*.f64 (pow.f64 y 3) 1/6) (*.f64 y -1))) (*.f64 z -1))
(*.f64 (+.f64 (*.f64 (pow.f64 y 5) -1/120) (+.f64 (*.f64 (pow.f64 y 3) 1/6) (neg.f64 y))) (neg.f64 z))
(*.f64 z (neg.f64 (+.f64 (*.f64 (pow.f64 y 5) -1/120) (+.f64 (*.f64 (pow.f64 y 3) 1/6) (neg.f64 y)))))
(*.f64 y z)
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 y 3) z)) (*.f64 y z))
(+.f64 (*.f64 y z) (*.f64 -1/6 (*.f64 (pow.f64 y 3) z)))
(*.f64 z (+.f64 y (*.f64 -1/6 (pow.f64 y 3))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 y 3) z)) (+.f64 (*.f64 y z) (*.f64 1/120 (*.f64 (pow.f64 y 5) z))))
(*.f64 z (+.f64 (*.f64 1/120 (pow.f64 y 5)) (+.f64 y (*.f64 -1/6 (pow.f64 y 3)))))
(*.f64 z (+.f64 y (+.f64 (*.f64 -1/6 (pow.f64 y 3)) (*.f64 1/120 (pow.f64 y 5)))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 y 3) z)) (+.f64 (*.f64 y z) (*.f64 1/120 (*.f64 (pow.f64 y 5) z))))
(*.f64 z (+.f64 (*.f64 1/120 (pow.f64 y 5)) (+.f64 y (*.f64 -1/6 (pow.f64 y 3)))))
(*.f64 z (+.f64 y (+.f64 (*.f64 -1/6 (pow.f64 y 3)) (*.f64 1/120 (pow.f64 y 5)))))
(*.f64 1/120 (*.f64 (pow.f64 y 5) z))
(*.f64 (pow.f64 y 5) (*.f64 1/120 z))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 y 3) z)) (*.f64 1/120 (*.f64 (pow.f64 y 5) z)))
(*.f64 z (+.f64 (*.f64 -1/6 (pow.f64 y 3)) (*.f64 1/120 (pow.f64 y 5))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 y 3) z)) (+.f64 (*.f64 y z) (*.f64 1/120 (*.f64 (pow.f64 y 5) z))))
(*.f64 z (+.f64 (*.f64 1/120 (pow.f64 y 5)) (+.f64 y (*.f64 -1/6 (pow.f64 y 3)))))
(*.f64 z (+.f64 y (+.f64 (*.f64 -1/6 (pow.f64 y 3)) (*.f64 1/120 (pow.f64 y 5)))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 y 3) z)) (+.f64 (*.f64 y z) (*.f64 1/120 (*.f64 (pow.f64 y 5) z))))
(*.f64 z (+.f64 (*.f64 1/120 (pow.f64 y 5)) (+.f64 y (*.f64 -1/6 (pow.f64 y 3)))))
(*.f64 z (+.f64 y (+.f64 (*.f64 -1/6 (pow.f64 y 3)) (*.f64 1/120 (pow.f64 y 5)))))
(*.f64 1/120 (*.f64 (pow.f64 y 5) z))
(*.f64 (pow.f64 y 5) (*.f64 1/120 z))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 y 3) z)) (*.f64 1/120 (*.f64 (pow.f64 y 5) z)))
(*.f64 z (+.f64 (*.f64 -1/6 (pow.f64 y 3)) (*.f64 1/120 (pow.f64 y 5))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 y 3) z)) (+.f64 (*.f64 y z) (*.f64 1/120 (*.f64 (pow.f64 y 5) z))))
(*.f64 z (+.f64 (*.f64 1/120 (pow.f64 y 5)) (+.f64 y (*.f64 -1/6 (pow.f64 y 3)))))
(*.f64 z (+.f64 y (+.f64 (*.f64 -1/6 (pow.f64 y 3)) (*.f64 1/120 (pow.f64 y 5)))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 y 3) z)) (+.f64 (*.f64 y z) (*.f64 1/120 (*.f64 (pow.f64 y 5) z))))
(*.f64 z (+.f64 (*.f64 1/120 (pow.f64 y 5)) (+.f64 y (*.f64 -1/6 (pow.f64 y 3)))))
(*.f64 z (+.f64 y (+.f64 (*.f64 -1/6 (pow.f64 y 3)) (*.f64 1/120 (pow.f64 y 5)))))
(*.f64 -1/6 (*.f64 (pow.f64 y 3) z))
(*.f64 (pow.f64 y 3) (*.f64 -1/6 z))
(*.f64 -1/6 (*.f64 (pow.f64 y 3) z))
(*.f64 (pow.f64 y 3) (*.f64 -1/6 z))
(*.f64 -1/6 (*.f64 (pow.f64 y 3) z))
(*.f64 (pow.f64 y 3) (*.f64 -1/6 z))
(*.f64 -1/6 (*.f64 (pow.f64 y 3) z))
(*.f64 (pow.f64 y 3) (*.f64 -1/6 z))
(*.f64 -1/6 (*.f64 (pow.f64 y 3) z))
(*.f64 (pow.f64 y 3) (*.f64 -1/6 z))
(*.f64 -1/6 (*.f64 (pow.f64 y 3) z))
(*.f64 (pow.f64 y 3) (*.f64 -1/6 z))
(*.f64 -1/6 (*.f64 (pow.f64 y 3) z))
(*.f64 (pow.f64 y 3) (*.f64 -1/6 z))
(*.f64 -1/6 (*.f64 (pow.f64 y 3) z))
(*.f64 (pow.f64 y 3) (*.f64 -1/6 z))
(*.f64 -1/6 (*.f64 (pow.f64 y 3) z))
(*.f64 (pow.f64 y 3) (*.f64 -1/6 z))
(*.f64 -1/6 (*.f64 (pow.f64 y 3) z))
(*.f64 (pow.f64 y 3) (*.f64 -1/6 z))
(*.f64 -1/6 (*.f64 (pow.f64 y 3) z))
(*.f64 (pow.f64 y 3) (*.f64 -1/6 z))
(*.f64 -1/6 (*.f64 (pow.f64 y 3) z))
(*.f64 (pow.f64 y 3) (*.f64 -1/6 z))
(*.f64 -1/6 (*.f64 (pow.f64 y 3) z))
(*.f64 (pow.f64 y 3) (*.f64 -1/6 z))
(*.f64 -1/6 (*.f64 (pow.f64 y 3) z))
(*.f64 (pow.f64 y 3) (*.f64 -1/6 z))
(*.f64 -1/6 (*.f64 (pow.f64 y 3) z))
(*.f64 (pow.f64 y 3) (*.f64 -1/6 z))
(*.f64 -1/6 (*.f64 (pow.f64 y 3) z))
(*.f64 (pow.f64 y 3) (*.f64 -1/6 z))
(*.f64 -1/6 (*.f64 (pow.f64 y 3) z))
(*.f64 (pow.f64 y 3) (*.f64 -1/6 z))
(*.f64 -1/6 (*.f64 (pow.f64 y 3) z))
(*.f64 (pow.f64 y 3) (*.f64 -1/6 z))
(*.f64 -1/6 (*.f64 (pow.f64 y 3) z))
(*.f64 (pow.f64 y 3) (*.f64 -1/6 z))
(*.f64 -1/6 (*.f64 (pow.f64 y 3) z))
(*.f64 (pow.f64 y 3) (*.f64 -1/6 z))
(*.f64 -1/6 (*.f64 (pow.f64 y 3) z))
(*.f64 (pow.f64 y 3) (*.f64 -1/6 z))
(*.f64 -1/6 (*.f64 (pow.f64 y 3) z))
(*.f64 (pow.f64 y 3) (*.f64 -1/6 z))
(*.f64 -1/6 (*.f64 (pow.f64 y 3) z))
(*.f64 (pow.f64 y 3) (*.f64 -1/6 z))
(*.f64 -1/6 (*.f64 (pow.f64 y 3) z))
(*.f64 (pow.f64 y 3) (*.f64 -1/6 z))
(*.f64 1/120 (*.f64 (pow.f64 y 5) z))
(*.f64 (pow.f64 y 5) (*.f64 1/120 z))
(*.f64 1/120 (*.f64 (pow.f64 y 5) z))
(*.f64 (pow.f64 y 5) (*.f64 1/120 z))
(*.f64 1/120 (*.f64 (pow.f64 y 5) z))
(*.f64 (pow.f64 y 5) (*.f64 1/120 z))
(*.f64 1/120 (*.f64 (pow.f64 y 5) z))
(*.f64 (pow.f64 y 5) (*.f64 1/120 z))
(*.f64 1/120 (*.f64 (pow.f64 y 5) z))
(*.f64 (pow.f64 y 5) (*.f64 1/120 z))
(*.f64 1/120 (*.f64 (pow.f64 y 5) z))
(*.f64 (pow.f64 y 5) (*.f64 1/120 z))
(*.f64 1/120 (*.f64 (pow.f64 y 5) z))
(*.f64 (pow.f64 y 5) (*.f64 1/120 z))
(*.f64 1/120 (*.f64 (pow.f64 y 5) z))
(*.f64 (pow.f64 y 5) (*.f64 1/120 z))
(*.f64 1/120 (*.f64 (pow.f64 y 5) z))
(*.f64 (pow.f64 y 5) (*.f64 1/120 z))
(*.f64 1/120 (*.f64 (pow.f64 y 5) z))
(*.f64 (pow.f64 y 5) (*.f64 1/120 z))
(*.f64 1/120 (*.f64 (pow.f64 y 5) z))
(*.f64 (pow.f64 y 5) (*.f64 1/120 z))
(*.f64 1/120 (*.f64 (pow.f64 y 5) z))
(*.f64 (pow.f64 y 5) (*.f64 1/120 z))
(*.f64 1/120 (*.f64 (pow.f64 y 5) z))
(*.f64 (pow.f64 y 5) (*.f64 1/120 z))
(*.f64 1/120 (*.f64 (pow.f64 y 5) z))
(*.f64 (pow.f64 y 5) (*.f64 1/120 z))
(*.f64 1/120 (*.f64 (pow.f64 y 5) z))
(*.f64 (pow.f64 y 5) (*.f64 1/120 z))
(*.f64 1/120 (*.f64 (pow.f64 y 5) z))
(*.f64 (pow.f64 y 5) (*.f64 1/120 z))
(*.f64 1/120 (*.f64 (pow.f64 y 5) z))
(*.f64 (pow.f64 y 5) (*.f64 1/120 z))
(*.f64 1/120 (*.f64 (pow.f64 y 5) z))
(*.f64 (pow.f64 y 5) (*.f64 1/120 z))
(*.f64 1/120 (*.f64 (pow.f64 y 5) z))
(*.f64 (pow.f64 y 5) (*.f64 1/120 z))
(*.f64 1/120 (*.f64 (pow.f64 y 5) z))
(*.f64 (pow.f64 y 5) (*.f64 1/120 z))
(*.f64 1/120 (*.f64 (pow.f64 y 5) z))
(*.f64 (pow.f64 y 5) (*.f64 1/120 z))
(*.f64 1/120 (*.f64 (pow.f64 y 5) z))
(*.f64 (pow.f64 y 5) (*.f64 1/120 z))
(*.f64 1/120 (*.f64 (pow.f64 y 5) z))
(*.f64 (pow.f64 y 5) (*.f64 1/120 z))
(*.f64 1/120 (*.f64 (pow.f64 y 5) z))
(*.f64 (pow.f64 y 5) (*.f64 1/120 z))
(*.f64 -1/6 (pow.f64 y 3))
(*.f64 -1/6 (pow.f64 y 3))
(*.f64 -1/6 (pow.f64 y 3))
(*.f64 -1/6 (pow.f64 y 3))
(*.f64 -1/6 (pow.f64 y 3))
(*.f64 -1/6 (pow.f64 y 3))
(*.f64 -1/6 (pow.f64 y 3))
(*.f64 -1/6 (pow.f64 y 3))
(*.f64 -1/6 (pow.f64 y 3))
(*.f64 -1/6 (pow.f64 y 3))
(*.f64 -1/6 (pow.f64 y 3))
(*.f64 -1/6 (pow.f64 y 3))
(-.f64 (*.f64 z (+.f64 y (+.f64 (*.f64 (pow.f64 y 3) -1/6) (*.f64 (pow.f64 y 5) 1/120)))) 0)
(*.f64 z (+.f64 (*.f64 1/120 (pow.f64 y 5)) (+.f64 y (*.f64 -1/6 (pow.f64 y 3)))))
(*.f64 z (+.f64 y (+.f64 (*.f64 -1/6 (pow.f64 y 3)) (*.f64 1/120 (pow.f64 y 5)))))
(*.f64 z (+.f64 y (+.f64 (*.f64 (pow.f64 y 3) -1/6) (*.f64 (pow.f64 y 5) 1/120))))
(*.f64 z (+.f64 (*.f64 1/120 (pow.f64 y 5)) (+.f64 y (*.f64 -1/6 (pow.f64 y 3)))))
(*.f64 z (+.f64 y (+.f64 (*.f64 -1/6 (pow.f64 y 3)) (*.f64 1/120 (pow.f64 y 5)))))
(*.f64 (*.f64 z (+.f64 y (+.f64 (*.f64 (pow.f64 y 3) -1/6) (*.f64 (pow.f64 y 5) 1/120)))) 1)
(*.f64 z (+.f64 (*.f64 1/120 (pow.f64 y 5)) (+.f64 y (*.f64 -1/6 (pow.f64 y 3)))))
(*.f64 z (+.f64 y (+.f64 (*.f64 -1/6 (pow.f64 y 3)) (*.f64 1/120 (pow.f64 y 5)))))
(*.f64 1 (*.f64 z (+.f64 y (+.f64 (*.f64 (pow.f64 y 3) -1/6) (*.f64 (pow.f64 y 5) 1/120)))))
(*.f64 z (+.f64 (*.f64 1/120 (pow.f64 y 5)) (+.f64 y (*.f64 -1/6 (pow.f64 y 3)))))
(*.f64 z (+.f64 y (+.f64 (*.f64 -1/6 (pow.f64 y 3)) (*.f64 1/120 (pow.f64 y 5)))))
(*.f64 2 (*.f64 z (/.f64 (+.f64 y (+.f64 (*.f64 (pow.f64 y 3) -1/6) (*.f64 (pow.f64 y 5) 1/120))) 2)))
(*.f64 z (+.f64 (*.f64 1/120 (pow.f64 y 5)) (+.f64 y (*.f64 -1/6 (pow.f64 y 3)))))
(*.f64 z (+.f64 y (+.f64 (*.f64 -1/6 (pow.f64 y 3)) (*.f64 1/120 (pow.f64 y 5)))))
(*.f64 (*.f64 z (*.f64 2 (+.f64 y (+.f64 (*.f64 (pow.f64 y 3) -1/6) (*.f64 (pow.f64 y 5) 1/120))))) 1/2)
(*.f64 z (+.f64 (*.f64 1/120 (pow.f64 y 5)) (+.f64 y (*.f64 -1/6 (pow.f64 y 3)))))
(*.f64 z (+.f64 y (+.f64 (*.f64 -1/6 (pow.f64 y 3)) (*.f64 1/120 (pow.f64 y 5)))))
(*.f64 (+.f64 z z) (*.f64 (+.f64 y (+.f64 (*.f64 (pow.f64 y 3) -1/6) (*.f64 (pow.f64 y 5) 1/120))) 1/2))
(*.f64 z (+.f64 (*.f64 1/120 (pow.f64 y 5)) (+.f64 y (*.f64 -1/6 (pow.f64 y 3)))))
(*.f64 z (+.f64 y (+.f64 (*.f64 -1/6 (pow.f64 y 3)) (*.f64 1/120 (pow.f64 y 5)))))
(*.f64 4 (/.f64 (*.f64 z (+.f64 y (+.f64 (*.f64 (pow.f64 y 3) -1/6) (*.f64 (pow.f64 y 5) 1/120)))) 4))
(*.f64 z (+.f64 (*.f64 1/120 (pow.f64 y 5)) (+.f64 y (*.f64 -1/6 (pow.f64 y 3)))))
(*.f64 z (+.f64 y (+.f64 (*.f64 -1/6 (pow.f64 y 3)) (*.f64 1/120 (pow.f64 y 5)))))
(*.f64 (*.f64 (*.f64 z (+.f64 y (+.f64 (*.f64 (pow.f64 y 3) -1/6) (*.f64 (pow.f64 y 5) 1/120)))) 4) 1/4)
(*.f64 z (+.f64 (*.f64 1/120 (pow.f64 y 5)) (+.f64 y (*.f64 -1/6 (pow.f64 y 3)))))
(*.f64 z (+.f64 y (+.f64 (*.f64 -1/6 (pow.f64 y 3)) (*.f64 1/120 (pow.f64 y 5)))))
(*.f64 (+.f64 y (+.f64 (*.f64 (pow.f64 y 3) -1/6) (*.f64 (pow.f64 y 5) 1/120))) z)
(*.f64 z (+.f64 (*.f64 1/120 (pow.f64 y 5)) (+.f64 y (*.f64 -1/6 (pow.f64 y 3)))))
(*.f64 z (+.f64 y (+.f64 (*.f64 -1/6 (pow.f64 y 3)) (*.f64 1/120 (pow.f64 y 5)))))
(*.f64 (*.f64 2 (+.f64 y (+.f64 (*.f64 (pow.f64 y 3) -1/6) (*.f64 (pow.f64 y 5) 1/120)))) (*.f64 z 1/2))
(*.f64 z (+.f64 (*.f64 1/120 (pow.f64 y 5)) (+.f64 y (*.f64 -1/6 (pow.f64 y 3)))))
(*.f64 z (+.f64 y (+.f64 (*.f64 -1/6 (pow.f64 y 3)) (*.f64 1/120 (pow.f64 y 5)))))
(*.f64 1/2 (*.f64 z (*.f64 2 (+.f64 y (+.f64 (*.f64 (pow.f64 y 3) -1/6) (*.f64 (pow.f64 y 5) 1/120))))))
(*.f64 z (+.f64 (*.f64 1/120 (pow.f64 y 5)) (+.f64 y (*.f64 -1/6 (pow.f64 y 3)))))
(*.f64 z (+.f64 y (+.f64 (*.f64 -1/6 (pow.f64 y 3)) (*.f64 1/120 (pow.f64 y 5)))))
(*.f64 (*.f64 z (/.f64 (+.f64 y (+.f64 (*.f64 (pow.f64 y 3) -1/6) (*.f64 (pow.f64 y 5) 1/120))) 2)) 2)
(*.f64 z (+.f64 (*.f64 1/120 (pow.f64 y 5)) (+.f64 y (*.f64 -1/6 (pow.f64 y 3)))))
(*.f64 z (+.f64 y (+.f64 (*.f64 -1/6 (pow.f64 y 3)) (*.f64 1/120 (pow.f64 y 5)))))
(*.f64 (*.f64 z 1/2) (*.f64 2 (+.f64 y (+.f64 (*.f64 (pow.f64 y 3) -1/6) (*.f64 (pow.f64 y 5) 1/120)))))
(*.f64 z (+.f64 (*.f64 1/120 (pow.f64 y 5)) (+.f64 y (*.f64 -1/6 (pow.f64 y 3)))))
(*.f64 z (+.f64 y (+.f64 (*.f64 -1/6 (pow.f64 y 3)) (*.f64 1/120 (pow.f64 y 5)))))
(*.f64 (*.f64 (+.f64 y (+.f64 (*.f64 (pow.f64 y 3) -1/6) (*.f64 (pow.f64 y 5) 1/120))) 1/2) (+.f64 z z))
(*.f64 z (+.f64 (*.f64 1/120 (pow.f64 y 5)) (+.f64 y (*.f64 -1/6 (pow.f64 y 3)))))
(*.f64 z (+.f64 y (+.f64 (*.f64 -1/6 (pow.f64 y 3)) (*.f64 1/120 (pow.f64 y 5)))))
(*.f64 1/4 (*.f64 (*.f64 z (+.f64 y (+.f64 (*.f64 (pow.f64 y 3) -1/6) (*.f64 (pow.f64 y 5) 1/120)))) 4))
(*.f64 z (+.f64 (*.f64 1/120 (pow.f64 y 5)) (+.f64 y (*.f64 -1/6 (pow.f64 y 3)))))
(*.f64 z (+.f64 y (+.f64 (*.f64 -1/6 (pow.f64 y 3)) (*.f64 1/120 (pow.f64 y 5)))))
(*.f64 (/.f64 (*.f64 z (+.f64 y (+.f64 (*.f64 (pow.f64 y 3) -1/6) (*.f64 (pow.f64 y 5) 1/120)))) 4) 4)
(*.f64 z (+.f64 (*.f64 1/120 (pow.f64 y 5)) (+.f64 y (*.f64 -1/6 (pow.f64 y 3)))))
(*.f64 z (+.f64 y (+.f64 (*.f64 -1/6 (pow.f64 y 3)) (*.f64 1/120 (pow.f64 y 5)))))
(/.f64 (*.f64 z (+.f64 y (+.f64 (*.f64 (pow.f64 y 3) -1/6) (*.f64 (pow.f64 y 5) 1/120)))) 1)
(*.f64 z (+.f64 (*.f64 1/120 (pow.f64 y 5)) (+.f64 y (*.f64 -1/6 (pow.f64 y 3)))))
(*.f64 z (+.f64 y (+.f64 (*.f64 -1/6 (pow.f64 y 3)) (*.f64 1/120 (pow.f64 y 5)))))
(/.f64 (*.f64 z (*.f64 2 (+.f64 y (+.f64 (*.f64 (pow.f64 y 3) -1/6) (*.f64 (pow.f64 y 5) 1/120))))) 2)
(*.f64 z (+.f64 (*.f64 1/120 (pow.f64 y 5)) (+.f64 y (*.f64 -1/6 (pow.f64 y 3)))))
(*.f64 z (+.f64 y (+.f64 (*.f64 -1/6 (pow.f64 y 3)) (*.f64 1/120 (pow.f64 y 5)))))
(/.f64 (*.f64 (*.f64 z (+.f64 y (+.f64 (*.f64 (pow.f64 y 3) -1/6) (*.f64 (pow.f64 y 5) 1/120)))) 4) 4)
(*.f64 z (+.f64 (*.f64 1/120 (pow.f64 y 5)) (+.f64 y (*.f64 -1/6 (pow.f64 y 3)))))
(*.f64 z (+.f64 y (+.f64 (*.f64 -1/6 (pow.f64 y 3)) (*.f64 1/120 (pow.f64 y 5)))))
(/.f64 (*.f64 2 (*.f64 (*.f64 z (+.f64 y (+.f64 (*.f64 (pow.f64 y 3) -1/6) (*.f64 (pow.f64 y 5) 1/120)))) 4)) 8)
(*.f64 z (+.f64 (*.f64 1/120 (pow.f64 y 5)) (+.f64 y (*.f64 -1/6 (pow.f64 y 3)))))
(*.f64 z (+.f64 y (+.f64 (*.f64 -1/6 (pow.f64 y 3)) (*.f64 1/120 (pow.f64 y 5)))))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 z (+.f64 y (+.f64 (*.f64 (pow.f64 y 3) -1/6) (*.f64 (pow.f64 y 5) 1/120)))) 4))) 16)
(*.f64 z (+.f64 (*.f64 1/120 (pow.f64 y 5)) (+.f64 y (*.f64 -1/6 (pow.f64 y 3)))))
(*.f64 z (+.f64 y (+.f64 (*.f64 -1/6 (pow.f64 y 3)) (*.f64 1/120 (pow.f64 y 5)))))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 z (+.f64 y (+.f64 (*.f64 (pow.f64 y 3) -1/6) (*.f64 (pow.f64 y 5) 1/120)))) 4)))) 32)
(*.f64 z (+.f64 (*.f64 1/120 (pow.f64 y 5)) (+.f64 y (*.f64 -1/6 (pow.f64 y 3)))))
(*.f64 z (+.f64 y (+.f64 (*.f64 -1/6 (pow.f64 y 3)) (*.f64 1/120 (pow.f64 y 5)))))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 z (+.f64 y (+.f64 (*.f64 (pow.f64 y 3) -1/6) (*.f64 (pow.f64 y 5) 1/120)))) 4))))) 64)
(*.f64 z (+.f64 (*.f64 1/120 (pow.f64 y 5)) (+.f64 y (*.f64 -1/6 (pow.f64 y 3)))))
(*.f64 z (+.f64 y (+.f64 (*.f64 -1/6 (pow.f64 y 3)) (*.f64 1/120 (pow.f64 y 5)))))
(pow.f64 (*.f64 z (+.f64 y (+.f64 (*.f64 (pow.f64 y 3) -1/6) (*.f64 (pow.f64 y 5) 1/120)))) 1)
(*.f64 z (+.f64 (*.f64 1/120 (pow.f64 y 5)) (+.f64 y (*.f64 -1/6 (pow.f64 y 3)))))
(*.f64 z (+.f64 y (+.f64 (*.f64 -1/6 (pow.f64 y 3)) (*.f64 1/120 (pow.f64 y 5)))))
(+.f64 (*.f64 z (*.f64 (pow.f64 y 3) -1/6)) 0)
(*.f64 -1/6 (*.f64 (pow.f64 y 3) z))
(*.f64 (pow.f64 y 3) (*.f64 -1/6 z))
(+.f64 0 (*.f64 z (*.f64 (pow.f64 y 3) -1/6)))
(*.f64 -1/6 (*.f64 (pow.f64 y 3) z))
(*.f64 (pow.f64 y 3) (*.f64 -1/6 z))
(+.f64 (*.f64 z (*.f64 (pow.f64 y 3) -1/12)) (*.f64 z (*.f64 (pow.f64 y 3) -1/12)))
(*.f64 -1/6 (*.f64 (pow.f64 y 3) z))
(*.f64 (pow.f64 y 3) (*.f64 -1/6 z))
(-.f64 (*.f64 z (*.f64 (pow.f64 y 3) -1/6)) 0)
(*.f64 -1/6 (*.f64 (pow.f64 y 3) z))
(*.f64 (pow.f64 y 3) (*.f64 -1/6 z))
(/.f64 (*.f64 z (*.f64 (pow.f64 y 3) -1/6)) 1)
(*.f64 -1/6 (*.f64 (pow.f64 y 3) z))
(*.f64 (pow.f64 y 3) (*.f64 -1/6 z))
(/.f64 (*.f64 z (*.f64 (pow.f64 y 3) -1/3)) 2)
(*.f64 -1/6 (*.f64 (pow.f64 y 3) z))
(*.f64 (pow.f64 y 3) (*.f64 -1/6 z))
(/.f64 (*.f64 (*.f64 z (pow.f64 y 3)) -2/3) 4)
(*.f64 -1/6 (*.f64 (pow.f64 y 3) z))
(*.f64 (pow.f64 y 3) (*.f64 -1/6 z))
(/.f64 (*.f64 2 (*.f64 (*.f64 z (pow.f64 y 3)) -2/3)) 8)
(*.f64 -1/6 (*.f64 (pow.f64 y 3) z))
(*.f64 (pow.f64 y 3) (*.f64 -1/6 z))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 z (pow.f64 y 3)) -2/3))) 16)
(*.f64 -1/6 (*.f64 (pow.f64 y 3) z))
(*.f64 (pow.f64 y 3) (*.f64 -1/6 z))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 z (pow.f64 y 3)) -2/3)))) 32)
(*.f64 -1/6 (*.f64 (pow.f64 y 3) z))
(*.f64 (pow.f64 y 3) (*.f64 -1/6 z))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 z (pow.f64 y 3)) -2/3))))) 64)
(*.f64 -1/6 (*.f64 (pow.f64 y 3) z))
(*.f64 (pow.f64 y 3) (*.f64 -1/6 z))
(pow.f64 (*.f64 z (*.f64 (pow.f64 y 3) -1/6)) 1)
(*.f64 -1/6 (*.f64 (pow.f64 y 3) z))
(*.f64 (pow.f64 y 3) (*.f64 -1/6 z))
(+.f64 (*.f64 z (*.f64 (pow.f64 y 5) 1/120)) 0)
(*.f64 1/120 (*.f64 (pow.f64 y 5) z))
(*.f64 (pow.f64 y 5) (*.f64 1/120 z))
(+.f64 0 (*.f64 z (*.f64 (pow.f64 y 5) 1/120)))
(*.f64 1/120 (*.f64 (pow.f64 y 5) z))
(*.f64 (pow.f64 y 5) (*.f64 1/120 z))
(+.f64 (*.f64 z (*.f64 (pow.f64 y 5) 1/240)) (*.f64 z (*.f64 (pow.f64 y 5) 1/240)))
(*.f64 1/120 (*.f64 (pow.f64 y 5) z))
(*.f64 (pow.f64 y 5) (*.f64 1/120 z))
(-.f64 (*.f64 z (*.f64 (pow.f64 y 5) 1/120)) 0)
(*.f64 1/120 (*.f64 (pow.f64 y 5) z))
(*.f64 (pow.f64 y 5) (*.f64 1/120 z))
(/.f64 (*.f64 z (*.f64 (pow.f64 y 5) 1/120)) 1)
(*.f64 1/120 (*.f64 (pow.f64 y 5) z))
(*.f64 (pow.f64 y 5) (*.f64 1/120 z))
(/.f64 (*.f64 z (*.f64 (pow.f64 y 5) 1/60)) 2)
(*.f64 1/120 (*.f64 (pow.f64 y 5) z))
(*.f64 (pow.f64 y 5) (*.f64 1/120 z))
(/.f64 (*.f64 (*.f64 z (pow.f64 y 5)) 1/30) 4)
(*.f64 1/120 (*.f64 (pow.f64 y 5) z))
(*.f64 (pow.f64 y 5) (*.f64 1/120 z))
(/.f64 (*.f64 2 (*.f64 (*.f64 z (pow.f64 y 5)) 1/30)) 8)
(*.f64 1/120 (*.f64 (pow.f64 y 5) z))
(*.f64 (pow.f64 y 5) (*.f64 1/120 z))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 z (pow.f64 y 5)) 1/30))) 16)
(*.f64 1/120 (*.f64 (pow.f64 y 5) z))
(*.f64 (pow.f64 y 5) (*.f64 1/120 z))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 z (pow.f64 y 5)) 1/30)))) 32)
(*.f64 1/120 (*.f64 (pow.f64 y 5) z))
(*.f64 (pow.f64 y 5) (*.f64 1/120 z))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (*.f64 z (pow.f64 y 5)) 1/30))))) 64)
(*.f64 1/120 (*.f64 (pow.f64 y 5) z))
(*.f64 (pow.f64 y 5) (*.f64 1/120 z))
(pow.f64 (*.f64 z (*.f64 (pow.f64 y 5) 1/120)) 1)
(*.f64 1/120 (*.f64 (pow.f64 y 5) z))
(*.f64 (pow.f64 y 5) (*.f64 1/120 z))
(+.f64 (*.f64 (pow.f64 y 3) -1/6) 0)
(*.f64 -1/6 (pow.f64 y 3))
(+.f64 0 (*.f64 (pow.f64 y 3) -1/6))
(*.f64 -1/6 (pow.f64 y 3))
(+.f64 (*.f64 (pow.f64 y 3) -1/12) (*.f64 (pow.f64 y 3) -1/12))
(*.f64 -1/6 (pow.f64 y 3))
(-.f64 (*.f64 (pow.f64 y 3) -1/6) 0)
(*.f64 -1/6 (pow.f64 y 3))
(/.f64 (*.f64 (pow.f64 y 3) -1/6) 1)
(*.f64 -1/6 (pow.f64 y 3))
(/.f64 (*.f64 (pow.f64 y 3) -1/3) 2)
(*.f64 -1/6 (pow.f64 y 3))
(/.f64 (*.f64 (pow.f64 y 3) -2/3) 4)
(*.f64 -1/6 (pow.f64 y 3))
(/.f64 (*.f64 2 (*.f64 (pow.f64 y 3) -2/3)) 8)
(*.f64 -1/6 (pow.f64 y 3))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 y 3) -2/3))) 16)
(*.f64 -1/6 (pow.f64 y 3))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 y 3) -2/3)))) 32)
(*.f64 -1/6 (pow.f64 y 3))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 y 3) -2/3))))) 64)
(*.f64 -1/6 (pow.f64 y 3))
(pow.f64 (*.f64 (pow.f64 y 3) -1/6) 1)
(*.f64 -1/6 (pow.f64 y 3))

eval70.0ms (0.7%)

Compiler

Compiled 4527 to 2586 computations (42.9% saved)

prune42.0ms (0.4%)

Pruning

9 alts after pruning (5 fresh and 4 done)

PrunedKeptTotal
New2645269
Fresh000
Picked101
Done145
Total2669275
Error
0.1b
Counts
275 → 9
Alt Table
Click to see full alt table
StatusErrorProgram
51.7b
(+.f64 (*.f64 z (*.f64 (pow.f64 y 3) -1/6)) (+.f64 (*.f64 y z) (*.f64 z (*.f64 (pow.f64 y 5) 1/120))))
30.0b
(+.f64 (*.f64 y z) x)
0.1b
(+.f64 (*.f64 x (cos.f64 y)) (*.f64 z (sin.f64 y)))
13.9b
(+.f64 x (*.f64 z (sin.f64 y)))
27.0b
(*.f64 (cos.f64 y) x)
35.7b
(*.f64 z (sin.f64 y))
51.3b
(*.f64 y z)
13.9b
(*.f64 1/2 (+.f64 x (+.f64 x (*.f64 z (*.f64 (sin.f64 y) 2)))))
40.5b
x
Compiler

Compiled 90 to 63 computations (30% saved)

localize18.0ms (0.2%)

Local error

Found 3 expressions with local error:

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

Compiled 50 to 27 computations (46% saved)

series4.0ms (0%)

Counts
3 → 96
Calls

24 calls:

TimeVariablePointExpression
0.0ms
z
@0
(*.f64 z (*.f64 (sin.f64 y) 2))
0.0ms
y
@inf
(*.f64 z (*.f64 (sin.f64 y) 2))
0.0ms
y
@-inf
(*.f64 z (*.f64 (sin.f64 y) 2))
0.0ms
y
@0
(*.f64 z (*.f64 (sin.f64 y) 2))
0.0ms
z
@inf
(*.f64 z (*.f64 (sin.f64 y) 2))

rewrite98.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
1694×rational.json-1
1694×rational.json-2
1694×rational.json-3
1012×rational.json-simplify-35
986×exponential.json-3
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01269
18469
218669
337963
476163
5187163
6428663
7702663
Stop Event
node limit
Counts
3 → 53
Calls
Call 1
Inputs
(*.f64 z (*.f64 (sin.f64 y) 2))
(+.f64 x (*.f64 z (*.f64 (sin.f64 y) 2)))
(+.f64 x (+.f64 x (*.f64 z (*.f64 (sin.f64 y) 2))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 z (*.f64 (sin.f64 y) 2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 z (*.f64 (sin.f64 y) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 z (sin.f64 y)) (*.f64 z (sin.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 z (*.f64 (sin.f64 y) 2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 z (*.f64 (sin.f64 y) 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 y) (*.f64 z 4)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 z (*.f64 (sin.f64 y) 8)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 z (sin.f64 y)) 16) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (*.f64 z (sin.f64 y)) 16)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 z (sin.f64 y)) 16))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 z (sin.f64 y)) 16))) (*.f64 2 (*.f64 2 (*.f64 (*.f64 z (sin.f64 y)) 16)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 z (*.f64 (sin.f64 y) 2)) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 z (*.f64 (sin.f64 y) 2)) x) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (+.f64 (*.f64 z (sin.f64 y)) (*.f64 x 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 z (*.f64 (sin.f64 y) 2)) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 (*.f64 z (*.f64 (sin.f64 y) 2)) x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 x (+.f64 x (*.f64 (sin.f64 y) (*.f64 z 4)))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (+.f64 (*.f64 z (*.f64 (sin.f64 y) 2)) x) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 z (*.f64 (sin.f64 y) 2)) x) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (+.f64 x (+.f64 x (*.f64 (sin.f64 y) (*.f64 z 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 z (sin.f64 y)) (*.f64 x 1/2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (+.f64 (*.f64 z (*.f64 (sin.f64 y) 2)) x) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 (*.f64 z (*.f64 (sin.f64 y) 2)) x) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 z (*.f64 (sin.f64 y) 2)) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 x (+.f64 x (*.f64 (sin.f64 y) (*.f64 z 4)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 z (*.f64 (sin.f64 y) 2)) x) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 z (*.f64 (sin.f64 y) 2)) x) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 z (*.f64 (sin.f64 y) 2)) x) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 z (*.f64 (sin.f64 y) 2)) x) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 z (*.f64 (sin.f64 y) 2)) x) 8))) (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 z (*.f64 (sin.f64 y) 2)) x) 8)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 (*.f64 z (*.f64 (sin.f64 y) 2)) x) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 2 (+.f64 x (*.f64 z (sin.f64 y)))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (+.f64 x (*.f64 z (sin.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (+.f64 (+.f64 (*.f64 z (sin.f64 y)) (*.f64 x 1/2)) (*.f64 x 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (+.f64 (*.f64 x 1/2) (+.f64 (*.f64 z (sin.f64 y)) (*.f64 x 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (+.f64 x (*.f64 z (sin.f64 y)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 2 (+.f64 x (*.f64 z (sin.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 4 (+.f64 x (*.f64 z (sin.f64 y)))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (+.f64 x (*.f64 z (sin.f64 y))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (*.f64 4 (+.f64 x (*.f64 z (sin.f64 y))))) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 4 (+.f64 x (*.f64 z (sin.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (+.f64 (*.f64 x 4) (*.f64 (sin.f64 y) (*.f64 z 4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 2 (*.f64 4 (+.f64 x (*.f64 z (sin.f64 y))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 x (*.f64 z (sin.f64 y))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 x (*.f64 z (sin.f64 y))) 2) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (+.f64 x (*.f64 z (sin.f64 y)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 4 (+.f64 x (*.f64 z (sin.f64 y)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 4 (+.f64 x (*.f64 z (sin.f64 y))))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 2 (+.f64 x (*.f64 z (sin.f64 y)))) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (*.f64 2 (+.f64 x (*.f64 z (sin.f64 y)))) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 2 (+.f64 x (*.f64 z (sin.f64 y)))) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 2 (+.f64 x (*.f64 z (sin.f64 y)))) 8))) (*.f64 2 (*.f64 2 (*.f64 (*.f64 2 (+.f64 x (*.f64 z (sin.f64 y)))) 8)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 2 (+.f64 x (*.f64 z (sin.f64 y)))) 1)))))

simplify223.0ms (2.1%)

Algorithm
egg-herbie
Rules
2092×rational.json-simplify-35
1696×rational.json-simplify-2
1216×rational.json-simplify-1
1140×rational.json-simplify-51
1076×rational.json-simplify-48
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01403589
13213283
27193283
320073241
443693241
552593241
655293241
757943241
863213241
973173241
Stop Event
node limit
Counts
149 → 109
Calls
Call 1
Inputs
(*.f64 2 (*.f64 z (sin.f64 y)))
(*.f64 2 (*.f64 z (sin.f64 y)))
(*.f64 2 (*.f64 z (sin.f64 y)))
(*.f64 2 (*.f64 z (sin.f64 y)))
(*.f64 2 (*.f64 z (sin.f64 y)))
(*.f64 2 (*.f64 z (sin.f64 y)))
(*.f64 2 (*.f64 z (sin.f64 y)))
(*.f64 2 (*.f64 z (sin.f64 y)))
(*.f64 2 (*.f64 z (sin.f64 y)))
(*.f64 2 (*.f64 z (sin.f64 y)))
(*.f64 2 (*.f64 z (sin.f64 y)))
(*.f64 2 (*.f64 z (sin.f64 y)))
(*.f64 2 (*.f64 y z))
(+.f64 (*.f64 2 (*.f64 y z)) (*.f64 -1/3 (*.f64 (pow.f64 y 3) z)))
(+.f64 (*.f64 1/60 (*.f64 (pow.f64 y 5) z)) (+.f64 (*.f64 2 (*.f64 y z)) (*.f64 -1/3 (*.f64 (pow.f64 y 3) z))))
(+.f64 (*.f64 1/60 (*.f64 (pow.f64 y 5) z)) (+.f64 (*.f64 2 (*.f64 y z)) (+.f64 (*.f64 -1/3 (*.f64 (pow.f64 y 3) z)) (*.f64 -1/2520 (*.f64 (pow.f64 y 7) z)))))
(*.f64 2 (*.f64 z (sin.f64 y)))
(*.f64 2 (*.f64 z (sin.f64 y)))
(*.f64 2 (*.f64 z (sin.f64 y)))
(*.f64 2 (*.f64 z (sin.f64 y)))
(*.f64 2 (*.f64 z (sin.f64 y)))
(*.f64 2 (*.f64 z (sin.f64 y)))
(*.f64 2 (*.f64 z (sin.f64 y)))
(*.f64 2 (*.f64 z (sin.f64 y)))
(*.f64 2 (*.f64 z (sin.f64 y)))
(+.f64 (*.f64 2 (*.f64 z (sin.f64 y))) x)
(+.f64 (*.f64 2 (*.f64 z (sin.f64 y))) x)
(+.f64 (*.f64 2 (*.f64 z (sin.f64 y))) x)
x
(+.f64 (*.f64 2 (*.f64 z (sin.f64 y))) x)
(+.f64 (*.f64 2 (*.f64 z (sin.f64 y))) x)
(+.f64 (*.f64 2 (*.f64 z (sin.f64 y))) x)
x
(+.f64 (*.f64 2 (*.f64 z (sin.f64 y))) x)
(+.f64 (*.f64 2 (*.f64 z (sin.f64 y))) x)
(+.f64 (*.f64 2 (*.f64 z (sin.f64 y))) x)
x
(+.f64 (*.f64 2 (*.f64 z (sin.f64 y))) x)
(+.f64 (*.f64 2 (*.f64 z (sin.f64 y))) x)
(+.f64 (*.f64 2 (*.f64 z (sin.f64 y))) x)
(*.f64 2 (*.f64 z (sin.f64 y)))
(+.f64 (*.f64 2 (*.f64 z (sin.f64 y))) x)
(+.f64 (*.f64 2 (*.f64 z (sin.f64 y))) x)
(+.f64 (*.f64 2 (*.f64 z (sin.f64 y))) x)
(*.f64 2 (*.f64 z (sin.f64 y)))
(+.f64 (*.f64 2 (*.f64 z (sin.f64 y))) x)
(+.f64 (*.f64 2 (*.f64 z (sin.f64 y))) x)
(+.f64 (*.f64 2 (*.f64 z (sin.f64 y))) x)
x
(+.f64 (*.f64 2 (*.f64 y z)) x)
(+.f64 (*.f64 2 (*.f64 y z)) (+.f64 (*.f64 -1/3 (*.f64 (pow.f64 y 3) z)) x))
(+.f64 (*.f64 2 (*.f64 y z)) (+.f64 (*.f64 1/60 (*.f64 (pow.f64 y 5) z)) (+.f64 (*.f64 -1/3 (*.f64 (pow.f64 y 3) z)) x)))
(+.f64 (*.f64 2 (*.f64 z (sin.f64 y))) x)
(+.f64 (*.f64 2 (*.f64 z (sin.f64 y))) x)
(+.f64 (*.f64 2 (*.f64 z (sin.f64 y))) x)
(+.f64 (*.f64 2 (*.f64 z (sin.f64 y))) x)
(+.f64 (*.f64 2 (*.f64 z (sin.f64 y))) x)
(+.f64 (*.f64 2 (*.f64 z (sin.f64 y))) x)
(+.f64 (*.f64 2 (*.f64 z (sin.f64 y))) x)
(+.f64 (*.f64 2 (*.f64 z (sin.f64 y))) x)
(*.f64 2 (*.f64 z (sin.f64 y)))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 z (sin.f64 y))))
(*.f64 2 x)
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 z (sin.f64 y))))
(*.f64 2 x)
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 z (sin.f64 y))))
(*.f64 2 x)
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 z (sin.f64 y))))
(*.f64 2 (*.f64 z (sin.f64 y)))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 z (sin.f64 y))))
(*.f64 2 (*.f64 z (sin.f64 y)))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 z (sin.f64 y))))
(*.f64 2 x)
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 y z)))
(+.f64 (*.f64 2 x) (+.f64 (*.f64 2 (*.f64 y z)) (*.f64 -1/3 (*.f64 (pow.f64 y 3) z))))
(+.f64 (*.f64 2 x) (+.f64 (*.f64 2 (*.f64 y z)) (+.f64 (*.f64 1/60 (*.f64 (pow.f64 y 5) z)) (*.f64 -1/3 (*.f64 (pow.f64 y 3) z)))))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 z (*.f64 (sin.f64 y) 2)) 0)
(+.f64 0 (*.f64 z (*.f64 (sin.f64 y) 2)))
(+.f64 (*.f64 z (sin.f64 y)) (*.f64 z (sin.f64 y)))
(-.f64 (*.f64 z (*.f64 (sin.f64 y) 2)) 0)
(/.f64 (*.f64 z (*.f64 (sin.f64 y) 2)) 1)
(/.f64 (*.f64 (sin.f64 y) (*.f64 z 4)) 2)
(/.f64 (*.f64 z (*.f64 (sin.f64 y) 8)) 4)
(/.f64 (*.f64 (*.f64 z (sin.f64 y)) 16) 8)
(/.f64 (*.f64 2 (*.f64 (*.f64 z (sin.f64 y)) 16)) 16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 z (sin.f64 y)) 16))) 32)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 z (sin.f64 y)) 16))) (*.f64 2 (*.f64 2 (*.f64 (*.f64 z (sin.f64 y)) 16)))) 64)
(pow.f64 (*.f64 z (*.f64 (sin.f64 y) 2)) 1)
(-.f64 (+.f64 (*.f64 z (*.f64 (sin.f64 y) 2)) x) 0)
(*.f64 2 (+.f64 (*.f64 z (sin.f64 y)) (*.f64 x 1/2)))
(*.f64 (+.f64 (*.f64 z (*.f64 (sin.f64 y) 2)) x) 1)
(*.f64 1 (+.f64 (*.f64 z (*.f64 (sin.f64 y) 2)) x))
(*.f64 (+.f64 x (+.f64 x (*.f64 (sin.f64 y) (*.f64 z 4)))) 1/2)
(*.f64 4 (/.f64 (+.f64 (*.f64 z (*.f64 (sin.f64 y) 2)) x) 4))
(*.f64 (*.f64 (+.f64 (*.f64 z (*.f64 (sin.f64 y) 2)) x) 4) 1/4)
(*.f64 1/2 (+.f64 x (+.f64 x (*.f64 (sin.f64 y) (*.f64 z 4)))))
(*.f64 (+.f64 (*.f64 z (sin.f64 y)) (*.f64 x 1/2)) 2)
(*.f64 1/4 (*.f64 (+.f64 (*.f64 z (*.f64 (sin.f64 y) 2)) x) 4))
(*.f64 (/.f64 (+.f64 (*.f64 z (*.f64 (sin.f64 y) 2)) x) 4) 4)
(/.f64 (+.f64 (*.f64 z (*.f64 (sin.f64 y) 2)) x) 1)
(/.f64 (+.f64 x (+.f64 x (*.f64 (sin.f64 y) (*.f64 z 4)))) 2)
(/.f64 (*.f64 (+.f64 (*.f64 z (*.f64 (sin.f64 y) 2)) x) 4) 4)
(/.f64 (*.f64 (+.f64 (*.f64 z (*.f64 (sin.f64 y) 2)) x) 8) 8)
(/.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 z (*.f64 (sin.f64 y) 2)) x) 8)) 16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 z (*.f64 (sin.f64 y) 2)) x) 8))) 32)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 z (*.f64 (sin.f64 y) 2)) x) 8))) (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 z (*.f64 (sin.f64 y) 2)) x) 8)))) 64)
(pow.f64 (+.f64 (*.f64 z (*.f64 (sin.f64 y) 2)) x) 1)
(-.f64 (*.f64 2 (+.f64 x (*.f64 z (sin.f64 y)))) 0)
(*.f64 2 (+.f64 x (*.f64 z (sin.f64 y))))
(*.f64 2 (+.f64 (+.f64 (*.f64 z (sin.f64 y)) (*.f64 x 1/2)) (*.f64 x 1/2)))
(*.f64 2 (+.f64 (*.f64 x 1/2) (+.f64 (*.f64 z (sin.f64 y)) (*.f64 x 1/2))))
(*.f64 (*.f64 2 (+.f64 x (*.f64 z (sin.f64 y)))) 1)
(*.f64 1 (*.f64 2 (+.f64 x (*.f64 z (sin.f64 y)))))
(*.f64 (*.f64 4 (+.f64 x (*.f64 z (sin.f64 y)))) 1/2)
(*.f64 4 (/.f64 (+.f64 x (*.f64 z (sin.f64 y))) 2))
(*.f64 (*.f64 2 (*.f64 4 (+.f64 x (*.f64 z (sin.f64 y))))) 1/4)
(*.f64 1/2 (*.f64 4 (+.f64 x (*.f64 z (sin.f64 y)))))
(*.f64 1/2 (+.f64 (*.f64 x 4) (*.f64 (sin.f64 y) (*.f64 z 4))))
(*.f64 1/4 (*.f64 2 (*.f64 4 (+.f64 x (*.f64 z (sin.f64 y))))))
(*.f64 (+.f64 x (*.f64 z (sin.f64 y))) 2)
(*.f64 (/.f64 (+.f64 x (*.f64 z (sin.f64 y))) 2) 4)
(/.f64 (*.f64 2 (+.f64 x (*.f64 z (sin.f64 y)))) 1)
(/.f64 (*.f64 4 (+.f64 x (*.f64 z (sin.f64 y)))) 2)
(/.f64 (*.f64 2 (*.f64 4 (+.f64 x (*.f64 z (sin.f64 y))))) 4)
(/.f64 (*.f64 (*.f64 2 (+.f64 x (*.f64 z (sin.f64 y)))) 8) 8)
(/.f64 (*.f64 2 (*.f64 (*.f64 2 (+.f64 x (*.f64 z (sin.f64 y)))) 8)) 16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 2 (+.f64 x (*.f64 z (sin.f64 y)))) 8))) 32)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 2 (+.f64 x (*.f64 z (sin.f64 y)))) 8))) (*.f64 2 (*.f64 2 (*.f64 (*.f64 2 (+.f64 x (*.f64 z (sin.f64 y)))) 8)))) 64)
(pow.f64 (*.f64 2 (+.f64 x (*.f64 z (sin.f64 y)))) 1)
Outputs
(*.f64 2 (*.f64 z (sin.f64 y)))
(*.f64 (sin.f64 y) (*.f64 2 z))
(*.f64 2 (*.f64 z (sin.f64 y)))
(*.f64 (sin.f64 y) (*.f64 2 z))
(*.f64 2 (*.f64 z (sin.f64 y)))
(*.f64 (sin.f64 y) (*.f64 2 z))
(*.f64 2 (*.f64 z (sin.f64 y)))
(*.f64 (sin.f64 y) (*.f64 2 z))
(*.f64 2 (*.f64 z (sin.f64 y)))
(*.f64 (sin.f64 y) (*.f64 2 z))
(*.f64 2 (*.f64 z (sin.f64 y)))
(*.f64 (sin.f64 y) (*.f64 2 z))
(*.f64 2 (*.f64 z (sin.f64 y)))
(*.f64 (sin.f64 y) (*.f64 2 z))
(*.f64 2 (*.f64 z (sin.f64 y)))
(*.f64 (sin.f64 y) (*.f64 2 z))
(*.f64 2 (*.f64 z (sin.f64 y)))
(*.f64 (sin.f64 y) (*.f64 2 z))
(*.f64 2 (*.f64 z (sin.f64 y)))
(*.f64 (sin.f64 y) (*.f64 2 z))
(*.f64 2 (*.f64 z (sin.f64 y)))
(*.f64 (sin.f64 y) (*.f64 2 z))
(*.f64 2 (*.f64 z (sin.f64 y)))
(*.f64 (sin.f64 y) (*.f64 2 z))
(*.f64 2 (*.f64 y z))
(*.f64 2 (*.f64 z y))
(*.f64 z (*.f64 2 y))
(*.f64 y (+.f64 z z))
(+.f64 (*.f64 2 (*.f64 y z)) (*.f64 -1/3 (*.f64 (pow.f64 y 3) z)))
(+.f64 (*.f64 2 (*.f64 z y)) (*.f64 (pow.f64 y 3) (*.f64 z -1/3)))
(+.f64 (*.f64 z (*.f64 2 y)) (*.f64 z (*.f64 -1/3 (pow.f64 y 3))))
(+.f64 (*.f64 y (+.f64 z z)) (*.f64 z (*.f64 -1/3 (pow.f64 y 3))))
(*.f64 z (+.f64 (*.f64 -1/3 (pow.f64 y 3)) (*.f64 2 y)))
(+.f64 (*.f64 1/60 (*.f64 (pow.f64 y 5) z)) (+.f64 (*.f64 2 (*.f64 y z)) (*.f64 -1/3 (*.f64 (pow.f64 y 3) z))))
(+.f64 (*.f64 2 (*.f64 z y)) (+.f64 (*.f64 (pow.f64 y 3) (*.f64 z -1/3)) (*.f64 1/60 (*.f64 z (pow.f64 y 5)))))
(+.f64 (*.f64 z (*.f64 -1/3 (pow.f64 y 3))) (+.f64 (*.f64 z (*.f64 (pow.f64 y 5) 1/60)) (*.f64 z (*.f64 2 y))))
(+.f64 (*.f64 z (*.f64 -1/3 (pow.f64 y 3))) (+.f64 (*.f64 y (+.f64 z z)) (*.f64 (pow.f64 y 5) (*.f64 z 1/60))))
(+.f64 (*.f64 y (+.f64 z z)) (*.f64 z (+.f64 (*.f64 1/60 (pow.f64 y 5)) (*.f64 -1/3 (pow.f64 y 3)))))
(+.f64 (*.f64 1/60 (*.f64 (pow.f64 y 5) z)) (+.f64 (*.f64 2 (*.f64 y z)) (+.f64 (*.f64 -1/3 (*.f64 (pow.f64 y 3) z)) (*.f64 -1/2520 (*.f64 (pow.f64 y 7) z)))))
(+.f64 (*.f64 2 (*.f64 z y)) (+.f64 (+.f64 (*.f64 (pow.f64 y 3) (*.f64 z -1/3)) (*.f64 (pow.f64 y 7) (*.f64 z -1/2520))) (*.f64 1/60 (*.f64 z (pow.f64 y 5)))))
(+.f64 (*.f64 z (*.f64 2 y)) (+.f64 (*.f64 z (*.f64 (pow.f64 y 5) 1/60)) (+.f64 (*.f64 z (*.f64 -1/3 (pow.f64 y 3))) (*.f64 z (*.f64 (pow.f64 y 7) -1/2520)))))
(+.f64 (*.f64 y (+.f64 z z)) (+.f64 (*.f64 z (*.f64 -1/3 (pow.f64 y 3))) (+.f64 (*.f64 z (*.f64 -1/2520 (pow.f64 y 7))) (*.f64 (pow.f64 y 5) (*.f64 z 1/60)))))
(+.f64 (*.f64 z (+.f64 (*.f64 1/60 (pow.f64 y 5)) (*.f64 -1/3 (pow.f64 y 3)))) (*.f64 z (+.f64 (*.f64 -1/2520 (pow.f64 y 7)) (*.f64 2 y))))
(*.f64 2 (*.f64 z (sin.f64 y)))
(*.f64 (sin.f64 y) (*.f64 2 z))
(*.f64 2 (*.f64 z (sin.f64 y)))
(*.f64 (sin.f64 y) (*.f64 2 z))
(*.f64 2 (*.f64 z (sin.f64 y)))
(*.f64 (sin.f64 y) (*.f64 2 z))
(*.f64 2 (*.f64 z (sin.f64 y)))
(*.f64 (sin.f64 y) (*.f64 2 z))
(*.f64 2 (*.f64 z (sin.f64 y)))
(*.f64 (sin.f64 y) (*.f64 2 z))
(*.f64 2 (*.f64 z (sin.f64 y)))
(*.f64 (sin.f64 y) (*.f64 2 z))
(*.f64 2 (*.f64 z (sin.f64 y)))
(*.f64 (sin.f64 y) (*.f64 2 z))
(*.f64 2 (*.f64 z (sin.f64 y)))
(*.f64 (sin.f64 y) (*.f64 2 z))
(*.f64 2 (*.f64 z (sin.f64 y)))
(*.f64 (sin.f64 y) (*.f64 2 z))
(+.f64 (*.f64 2 (*.f64 z (sin.f64 y))) x)
(+.f64 x (*.f64 (sin.f64 y) (*.f64 2 z)))
(+.f64 x (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 (*.f64 z (sin.f64 y))) x)
(+.f64 x (*.f64 (sin.f64 y) (*.f64 2 z)))
(+.f64 x (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 (*.f64 z (sin.f64 y))) x)
(+.f64 x (*.f64 (sin.f64 y) (*.f64 2 z)))
(+.f64 x (*.f64 2 (*.f64 z (sin.f64 y))))
x
(+.f64 (*.f64 2 (*.f64 z (sin.f64 y))) x)
(+.f64 x (*.f64 (sin.f64 y) (*.f64 2 z)))
(+.f64 x (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 (*.f64 z (sin.f64 y))) x)
(+.f64 x (*.f64 (sin.f64 y) (*.f64 2 z)))
(+.f64 x (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 (*.f64 z (sin.f64 y))) x)
(+.f64 x (*.f64 (sin.f64 y) (*.f64 2 z)))
(+.f64 x (*.f64 2 (*.f64 z (sin.f64 y))))
x
(+.f64 (*.f64 2 (*.f64 z (sin.f64 y))) x)
(+.f64 x (*.f64 (sin.f64 y) (*.f64 2 z)))
(+.f64 x (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 (*.f64 z (sin.f64 y))) x)
(+.f64 x (*.f64 (sin.f64 y) (*.f64 2 z)))
(+.f64 x (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 (*.f64 z (sin.f64 y))) x)
(+.f64 x (*.f64 (sin.f64 y) (*.f64 2 z)))
(+.f64 x (*.f64 2 (*.f64 z (sin.f64 y))))
x
(+.f64 (*.f64 2 (*.f64 z (sin.f64 y))) x)
(+.f64 x (*.f64 (sin.f64 y) (*.f64 2 z)))
(+.f64 x (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 (*.f64 z (sin.f64 y))) x)
(+.f64 x (*.f64 (sin.f64 y) (*.f64 2 z)))
(+.f64 x (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 (*.f64 z (sin.f64 y))) x)
(+.f64 x (*.f64 (sin.f64 y) (*.f64 2 z)))
(+.f64 x (*.f64 2 (*.f64 z (sin.f64 y))))
(*.f64 2 (*.f64 z (sin.f64 y)))
(*.f64 (sin.f64 y) (*.f64 2 z))
(+.f64 (*.f64 2 (*.f64 z (sin.f64 y))) x)
(+.f64 x (*.f64 (sin.f64 y) (*.f64 2 z)))
(+.f64 x (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 (*.f64 z (sin.f64 y))) x)
(+.f64 x (*.f64 (sin.f64 y) (*.f64 2 z)))
(+.f64 x (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 (*.f64 z (sin.f64 y))) x)
(+.f64 x (*.f64 (sin.f64 y) (*.f64 2 z)))
(+.f64 x (*.f64 2 (*.f64 z (sin.f64 y))))
(*.f64 2 (*.f64 z (sin.f64 y)))
(*.f64 (sin.f64 y) (*.f64 2 z))
(+.f64 (*.f64 2 (*.f64 z (sin.f64 y))) x)
(+.f64 x (*.f64 (sin.f64 y) (*.f64 2 z)))
(+.f64 x (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 (*.f64 z (sin.f64 y))) x)
(+.f64 x (*.f64 (sin.f64 y) (*.f64 2 z)))
(+.f64 x (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 (*.f64 z (sin.f64 y))) x)
(+.f64 x (*.f64 (sin.f64 y) (*.f64 2 z)))
(+.f64 x (*.f64 2 (*.f64 z (sin.f64 y))))
x
(+.f64 (*.f64 2 (*.f64 y z)) x)
(+.f64 (*.f64 2 (*.f64 z y)) x)
(+.f64 (*.f64 z (*.f64 2 y)) x)
(+.f64 (*.f64 y (+.f64 z z)) x)
(+.f64 (*.f64 2 (*.f64 y z)) (+.f64 (*.f64 -1/3 (*.f64 (pow.f64 y 3) z)) x))
(+.f64 (*.f64 2 (*.f64 z y)) (+.f64 (*.f64 (pow.f64 y 3) (*.f64 z -1/3)) x))
(+.f64 (*.f64 z (*.f64 2 y)) (+.f64 (*.f64 z (*.f64 -1/3 (pow.f64 y 3))) x))
(+.f64 (*.f64 y (+.f64 z z)) (+.f64 (*.f64 z (*.f64 -1/3 (pow.f64 y 3))) x))
(+.f64 (*.f64 z (+.f64 (*.f64 -1/3 (pow.f64 y 3)) (*.f64 2 y))) x)
(+.f64 (*.f64 2 (*.f64 y z)) (+.f64 (*.f64 1/60 (*.f64 (pow.f64 y 5) z)) (+.f64 (*.f64 -1/3 (*.f64 (pow.f64 y 3) z)) x)))
(+.f64 (*.f64 1/60 (*.f64 z (pow.f64 y 5))) (+.f64 (*.f64 2 (*.f64 z y)) (+.f64 (*.f64 (pow.f64 y 3) (*.f64 z -1/3)) x)))
(+.f64 (*.f64 z (*.f64 2 y)) (+.f64 (*.f64 z (*.f64 -1/3 (pow.f64 y 3))) (+.f64 (*.f64 z (*.f64 (pow.f64 y 5) 1/60)) x)))
(+.f64 x (+.f64 (*.f64 z (*.f64 -1/3 (pow.f64 y 3))) (+.f64 (*.f64 y (+.f64 z z)) (*.f64 (pow.f64 y 5) (*.f64 z 1/60)))))
(+.f64 (*.f64 y (+.f64 z z)) (+.f64 x (*.f64 z (+.f64 (*.f64 1/60 (pow.f64 y 5)) (*.f64 -1/3 (pow.f64 y 3))))))
(+.f64 (*.f64 2 (*.f64 z (sin.f64 y))) x)
(+.f64 x (*.f64 (sin.f64 y) (*.f64 2 z)))
(+.f64 x (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 (*.f64 z (sin.f64 y))) x)
(+.f64 x (*.f64 (sin.f64 y) (*.f64 2 z)))
(+.f64 x (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 (*.f64 z (sin.f64 y))) x)
(+.f64 x (*.f64 (sin.f64 y) (*.f64 2 z)))
(+.f64 x (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 (*.f64 z (sin.f64 y))) x)
(+.f64 x (*.f64 (sin.f64 y) (*.f64 2 z)))
(+.f64 x (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 (*.f64 z (sin.f64 y))) x)
(+.f64 x (*.f64 (sin.f64 y) (*.f64 2 z)))
(+.f64 x (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 (*.f64 z (sin.f64 y))) x)
(+.f64 x (*.f64 (sin.f64 y) (*.f64 2 z)))
(+.f64 x (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 (*.f64 z (sin.f64 y))) x)
(+.f64 x (*.f64 (sin.f64 y) (*.f64 2 z)))
(+.f64 x (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 (*.f64 z (sin.f64 y))) x)
(+.f64 x (*.f64 (sin.f64 y) (*.f64 2 z)))
(+.f64 x (*.f64 2 (*.f64 z (sin.f64 y))))
(*.f64 2 (*.f64 z (sin.f64 y)))
(*.f64 (sin.f64 y) (*.f64 2 z))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 x) (*.f64 (sin.f64 y) (*.f64 2 z)))
(*.f64 2 (+.f64 (*.f64 z (sin.f64 y)) x))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 x) (*.f64 (sin.f64 y) (*.f64 2 z)))
(*.f64 2 (+.f64 (*.f64 z (sin.f64 y)) x))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 x) (*.f64 (sin.f64 y) (*.f64 2 z)))
(*.f64 2 (+.f64 (*.f64 z (sin.f64 y)) x))
(*.f64 2 x)
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 x) (*.f64 (sin.f64 y) (*.f64 2 z)))
(*.f64 2 (+.f64 (*.f64 z (sin.f64 y)) x))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 x) (*.f64 (sin.f64 y) (*.f64 2 z)))
(*.f64 2 (+.f64 (*.f64 z (sin.f64 y)) x))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 x) (*.f64 (sin.f64 y) (*.f64 2 z)))
(*.f64 2 (+.f64 (*.f64 z (sin.f64 y)) x))
(*.f64 2 x)
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 x) (*.f64 (sin.f64 y) (*.f64 2 z)))
(*.f64 2 (+.f64 (*.f64 z (sin.f64 y)) x))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 x) (*.f64 (sin.f64 y) (*.f64 2 z)))
(*.f64 2 (+.f64 (*.f64 z (sin.f64 y)) x))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 x) (*.f64 (sin.f64 y) (*.f64 2 z)))
(*.f64 2 (+.f64 (*.f64 z (sin.f64 y)) x))
(*.f64 2 x)
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 x) (*.f64 (sin.f64 y) (*.f64 2 z)))
(*.f64 2 (+.f64 (*.f64 z (sin.f64 y)) x))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 x) (*.f64 (sin.f64 y) (*.f64 2 z)))
(*.f64 2 (+.f64 (*.f64 z (sin.f64 y)) x))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 x) (*.f64 (sin.f64 y) (*.f64 2 z)))
(*.f64 2 (+.f64 (*.f64 z (sin.f64 y)) x))
(*.f64 2 (*.f64 z (sin.f64 y)))
(*.f64 (sin.f64 y) (*.f64 2 z))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 x) (*.f64 (sin.f64 y) (*.f64 2 z)))
(*.f64 2 (+.f64 (*.f64 z (sin.f64 y)) x))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 x) (*.f64 (sin.f64 y) (*.f64 2 z)))
(*.f64 2 (+.f64 (*.f64 z (sin.f64 y)) x))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 x) (*.f64 (sin.f64 y) (*.f64 2 z)))
(*.f64 2 (+.f64 (*.f64 z (sin.f64 y)) x))
(*.f64 2 (*.f64 z (sin.f64 y)))
(*.f64 (sin.f64 y) (*.f64 2 z))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 x) (*.f64 (sin.f64 y) (*.f64 2 z)))
(*.f64 2 (+.f64 (*.f64 z (sin.f64 y)) x))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 x) (*.f64 (sin.f64 y) (*.f64 2 z)))
(*.f64 2 (+.f64 (*.f64 z (sin.f64 y)) x))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 x) (*.f64 (sin.f64 y) (*.f64 2 z)))
(*.f64 2 (+.f64 (*.f64 z (sin.f64 y)) x))
(*.f64 2 x)
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 y z)))
(+.f64 (*.f64 2 (*.f64 z y)) (*.f64 2 x))
(*.f64 2 (+.f64 x (*.f64 z y)))
(*.f64 2 (+.f64 (*.f64 z y) x))
(+.f64 (*.f64 2 x) (+.f64 (*.f64 2 (*.f64 y z)) (*.f64 -1/3 (*.f64 (pow.f64 y 3) z))))
(+.f64 (*.f64 2 (*.f64 z y)) (+.f64 (*.f64 (pow.f64 y 3) (*.f64 z -1/3)) (*.f64 2 x)))
(+.f64 (*.f64 z (*.f64 -1/3 (pow.f64 y 3))) (*.f64 2 (+.f64 x (*.f64 z y))))
(+.f64 (*.f64 z (*.f64 -1/3 (pow.f64 y 3))) (*.f64 2 (+.f64 (*.f64 z y) x)))
(+.f64 (*.f64 2 x) (+.f64 (*.f64 2 (*.f64 y z)) (+.f64 (*.f64 1/60 (*.f64 (pow.f64 y 5) z)) (*.f64 -1/3 (*.f64 (pow.f64 y 3) z)))))
(+.f64 (*.f64 2 (*.f64 z y)) (+.f64 (+.f64 (*.f64 (pow.f64 y 3) (*.f64 z -1/3)) (*.f64 1/60 (*.f64 z (pow.f64 y 5)))) (*.f64 2 x)))
(+.f64 (+.f64 (*.f64 z (*.f64 -1/3 (pow.f64 y 3))) (*.f64 z (*.f64 (pow.f64 y 5) 1/60))) (*.f64 2 (+.f64 x (*.f64 z y))))
(+.f64 (*.f64 2 (+.f64 (*.f64 z y) x)) (+.f64 (*.f64 z (*.f64 -1/3 (pow.f64 y 3))) (*.f64 (pow.f64 y 5) (*.f64 z 1/60))))
(+.f64 (*.f64 2 (+.f64 (*.f64 z y) x)) (*.f64 z (+.f64 (*.f64 1/60 (pow.f64 y 5)) (*.f64 -1/3 (pow.f64 y 3)))))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 x) (*.f64 (sin.f64 y) (*.f64 2 z)))
(*.f64 2 (+.f64 (*.f64 z (sin.f64 y)) x))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 x) (*.f64 (sin.f64 y) (*.f64 2 z)))
(*.f64 2 (+.f64 (*.f64 z (sin.f64 y)) x))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 x) (*.f64 (sin.f64 y) (*.f64 2 z)))
(*.f64 2 (+.f64 (*.f64 z (sin.f64 y)) x))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 x) (*.f64 (sin.f64 y) (*.f64 2 z)))
(*.f64 2 (+.f64 (*.f64 z (sin.f64 y)) x))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 x) (*.f64 (sin.f64 y) (*.f64 2 z)))
(*.f64 2 (+.f64 (*.f64 z (sin.f64 y)) x))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 x) (*.f64 (sin.f64 y) (*.f64 2 z)))
(*.f64 2 (+.f64 (*.f64 z (sin.f64 y)) x))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 x) (*.f64 (sin.f64 y) (*.f64 2 z)))
(*.f64 2 (+.f64 (*.f64 z (sin.f64 y)) x))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 x) (*.f64 (sin.f64 y) (*.f64 2 z)))
(*.f64 2 (+.f64 (*.f64 z (sin.f64 y)) x))
(+.f64 (*.f64 z (*.f64 (sin.f64 y) 2)) 0)
(*.f64 (sin.f64 y) (*.f64 2 z))
(*.f64 2 (*.f64 z (sin.f64 y)))
(+.f64 0 (*.f64 z (*.f64 (sin.f64 y) 2)))
(*.f64 (sin.f64 y) (*.f64 2 z))
(*.f64 2 (*.f64 z (sin.f64 y)))
(+.f64 (*.f64 z (sin.f64 y)) (*.f64 z (sin.f64 y)))
(*.f64 (sin.f64 y) (*.f64 2 z))
(*.f64 2 (*.f64 z (sin.f64 y)))
(-.f64 (*.f64 z (*.f64 (sin.f64 y) 2)) 0)
(*.f64 (sin.f64 y) (*.f64 2 z))
(*.f64 2 (*.f64 z (sin.f64 y)))
(/.f64 (*.f64 z (*.f64 (sin.f64 y) 2)) 1)
(*.f64 (sin.f64 y) (*.f64 2 z))
(*.f64 2 (*.f64 z (sin.f64 y)))
(/.f64 (*.f64 (sin.f64 y) (*.f64 z 4)) 2)
(*.f64 (sin.f64 y) (*.f64 2 z))
(*.f64 2 (*.f64 z (sin.f64 y)))
(/.f64 (*.f64 z (*.f64 (sin.f64 y) 8)) 4)
(*.f64 (sin.f64 y) (*.f64 2 z))
(*.f64 2 (*.f64 z (sin.f64 y)))
(/.f64 (*.f64 (*.f64 z (sin.f64 y)) 16) 8)
(*.f64 (sin.f64 y) (*.f64 2 z))
(*.f64 2 (*.f64 z (sin.f64 y)))
(/.f64 (*.f64 2 (*.f64 (*.f64 z (sin.f64 y)) 16)) 16)
(*.f64 (sin.f64 y) (*.f64 2 z))
(*.f64 2 (*.f64 z (sin.f64 y)))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 z (sin.f64 y)) 16))) 32)
(*.f64 (sin.f64 y) (*.f64 2 z))
(*.f64 2 (*.f64 z (sin.f64 y)))
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 z (sin.f64 y)) 16))) (*.f64 2 (*.f64 2 (*.f64 (*.f64 z (sin.f64 y)) 16)))) 64)
(*.f64 (sin.f64 y) (*.f64 2 z))
(*.f64 2 (*.f64 z (sin.f64 y)))
(pow.f64 (*.f64 z (*.f64 (sin.f64 y) 2)) 1)
(*.f64 (sin.f64 y) (*.f64 2 z))
(*.f64 2 (*.f64 z (sin.f64 y)))
(-.f64 (+.f64 (*.f64 z (*.f64 (sin.f64 y) 2)) x) 0)
(+.f64 x (*.f64 (sin.f64 y) (*.f64 2 z)))
(+.f64 x (*.f64 2 (*.f64 z (sin.f64 y))))
(*.f64 2 (+.f64 (*.f64 z (sin.f64 y)) (*.f64 x 1/2)))
(*.f64 (+.f64 (*.f64 z (*.f64 (sin.f64 y) 2)) x) 1)
(+.f64 x (*.f64 (sin.f64 y) (*.f64 2 z)))
(+.f64 x (*.f64 2 (*.f64 z (sin.f64 y))))
(*.f64 1 (+.f64 (*.f64 z (*.f64 (sin.f64 y) 2)) x))
(+.f64 x (*.f64 (sin.f64 y) (*.f64 2 z)))
(+.f64 x (*.f64 2 (*.f64 z (sin.f64 y))))
(*.f64 (+.f64 x (+.f64 x (*.f64 (sin.f64 y) (*.f64 z 4)))) 1/2)
(+.f64 x (*.f64 (sin.f64 y) (*.f64 2 z)))
(+.f64 x (*.f64 2 (*.f64 z (sin.f64 y))))
(*.f64 4 (/.f64 (+.f64 (*.f64 z (*.f64 (sin.f64 y) 2)) x) 4))
(+.f64 x (*.f64 (sin.f64 y) (*.f64 2 z)))
(+.f64 x (*.f64 2 (*.f64 z (sin.f64 y))))
(*.f64 (*.f64 (+.f64 (*.f64 z (*.f64 (sin.f64 y) 2)) x) 4) 1/4)
(+.f64 x (*.f64 (sin.f64 y) (*.f64 2 z)))
(+.f64 x (*.f64 2 (*.f64 z (sin.f64 y))))
(*.f64 1/2 (+.f64 x (+.f64 x (*.f64 (sin.f64 y) (*.f64 z 4)))))
(+.f64 x (*.f64 (sin.f64 y) (*.f64 2 z)))
(+.f64 x (*.f64 2 (*.f64 z (sin.f64 y))))
(*.f64 (+.f64 (*.f64 z (sin.f64 y)) (*.f64 x 1/2)) 2)
(*.f64 2 (+.f64 (*.f64 z (sin.f64 y)) (*.f64 x 1/2)))
(*.f64 1/4 (*.f64 (+.f64 (*.f64 z (*.f64 (sin.f64 y) 2)) x) 4))
(+.f64 x (*.f64 (sin.f64 y) (*.f64 2 z)))
(+.f64 x (*.f64 2 (*.f64 z (sin.f64 y))))
(*.f64 (/.f64 (+.f64 (*.f64 z (*.f64 (sin.f64 y) 2)) x) 4) 4)
(+.f64 x (*.f64 (sin.f64 y) (*.f64 2 z)))
(+.f64 x (*.f64 2 (*.f64 z (sin.f64 y))))
(/.f64 (+.f64 (*.f64 z (*.f64 (sin.f64 y) 2)) x) 1)
(+.f64 x (*.f64 (sin.f64 y) (*.f64 2 z)))
(+.f64 x (*.f64 2 (*.f64 z (sin.f64 y))))
(/.f64 (+.f64 x (+.f64 x (*.f64 (sin.f64 y) (*.f64 z 4)))) 2)
(+.f64 x (*.f64 (sin.f64 y) (*.f64 2 z)))
(+.f64 x (*.f64 2 (*.f64 z (sin.f64 y))))
(/.f64 (*.f64 (+.f64 (*.f64 z (*.f64 (sin.f64 y) 2)) x) 4) 4)
(+.f64 x (*.f64 (sin.f64 y) (*.f64 2 z)))
(+.f64 x (*.f64 2 (*.f64 z (sin.f64 y))))
(/.f64 (*.f64 (+.f64 (*.f64 z (*.f64 (sin.f64 y) 2)) x) 8) 8)
(+.f64 x (*.f64 (sin.f64 y) (*.f64 2 z)))
(+.f64 x (*.f64 2 (*.f64 z (sin.f64 y))))
(/.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 z (*.f64 (sin.f64 y) 2)) x) 8)) 16)
(+.f64 x (*.f64 (sin.f64 y) (*.f64 2 z)))
(+.f64 x (*.f64 2 (*.f64 z (sin.f64 y))))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 z (*.f64 (sin.f64 y) 2)) x) 8))) 32)
(+.f64 x (*.f64 (sin.f64 y) (*.f64 2 z)))
(+.f64 x (*.f64 2 (*.f64 z (sin.f64 y))))
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 z (*.f64 (sin.f64 y) 2)) x) 8))) (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 z (*.f64 (sin.f64 y) 2)) x) 8)))) 64)
(+.f64 x (*.f64 (sin.f64 y) (*.f64 2 z)))
(+.f64 x (*.f64 2 (*.f64 z (sin.f64 y))))
(pow.f64 (+.f64 (*.f64 z (*.f64 (sin.f64 y) 2)) x) 1)
(+.f64 x (*.f64 (sin.f64 y) (*.f64 2 z)))
(+.f64 x (*.f64 2 (*.f64 z (sin.f64 y))))
(-.f64 (*.f64 2 (+.f64 x (*.f64 z (sin.f64 y)))) 0)
(+.f64 (*.f64 2 x) (*.f64 (sin.f64 y) (*.f64 2 z)))
(*.f64 2 (+.f64 (*.f64 z (sin.f64 y)) x))
(*.f64 2 (+.f64 x (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 x) (*.f64 (sin.f64 y) (*.f64 2 z)))
(*.f64 2 (+.f64 (*.f64 z (sin.f64 y)) x))
(*.f64 2 (+.f64 (+.f64 (*.f64 z (sin.f64 y)) (*.f64 x 1/2)) (*.f64 x 1/2)))
(+.f64 (*.f64 2 x) (*.f64 (sin.f64 y) (*.f64 2 z)))
(*.f64 2 (+.f64 (*.f64 z (sin.f64 y)) x))
(*.f64 2 (+.f64 (*.f64 x 1/2) (+.f64 (*.f64 z (sin.f64 y)) (*.f64 x 1/2))))
(+.f64 (*.f64 2 x) (*.f64 (sin.f64 y) (*.f64 2 z)))
(*.f64 2 (+.f64 (*.f64 z (sin.f64 y)) x))
(*.f64 (*.f64 2 (+.f64 x (*.f64 z (sin.f64 y)))) 1)
(+.f64 (*.f64 2 x) (*.f64 (sin.f64 y) (*.f64 2 z)))
(*.f64 2 (+.f64 (*.f64 z (sin.f64 y)) x))
(*.f64 1 (*.f64 2 (+.f64 x (*.f64 z (sin.f64 y)))))
(+.f64 (*.f64 2 x) (*.f64 (sin.f64 y) (*.f64 2 z)))
(*.f64 2 (+.f64 (*.f64 z (sin.f64 y)) x))
(*.f64 (*.f64 4 (+.f64 x (*.f64 z (sin.f64 y)))) 1/2)
(+.f64 (*.f64 2 x) (*.f64 (sin.f64 y) (*.f64 2 z)))
(*.f64 2 (+.f64 (*.f64 z (sin.f64 y)) x))
(*.f64 4 (/.f64 (+.f64 x (*.f64 z (sin.f64 y))) 2))
(+.f64 (*.f64 2 x) (*.f64 (sin.f64 y) (*.f64 2 z)))
(*.f64 2 (+.f64 (*.f64 z (sin.f64 y)) x))
(*.f64 (*.f64 2 (*.f64 4 (+.f64 x (*.f64 z (sin.f64 y))))) 1/4)
(+.f64 (*.f64 2 x) (*.f64 (sin.f64 y) (*.f64 2 z)))
(*.f64 2 (+.f64 (*.f64 z (sin.f64 y)) x))
(*.f64 1/2 (*.f64 4 (+.f64 x (*.f64 z (sin.f64 y)))))
(+.f64 (*.f64 2 x) (*.f64 (sin.f64 y) (*.f64 2 z)))
(*.f64 2 (+.f64 (*.f64 z (sin.f64 y)) x))
(*.f64 1/2 (+.f64 (*.f64 x 4) (*.f64 (sin.f64 y) (*.f64 z 4))))
(+.f64 (*.f64 2 x) (*.f64 (sin.f64 y) (*.f64 2 z)))
(*.f64 2 (+.f64 (*.f64 z (sin.f64 y)) x))
(*.f64 1/4 (*.f64 2 (*.f64 4 (+.f64 x (*.f64 z (sin.f64 y))))))
(+.f64 (*.f64 2 x) (*.f64 (sin.f64 y) (*.f64 2 z)))
(*.f64 2 (+.f64 (*.f64 z (sin.f64 y)) x))
(*.f64 (+.f64 x (*.f64 z (sin.f64 y))) 2)
(+.f64 (*.f64 2 x) (*.f64 (sin.f64 y) (*.f64 2 z)))
(*.f64 2 (+.f64 (*.f64 z (sin.f64 y)) x))
(*.f64 (/.f64 (+.f64 x (*.f64 z (sin.f64 y))) 2) 4)
(+.f64 (*.f64 2 x) (*.f64 (sin.f64 y) (*.f64 2 z)))
(*.f64 2 (+.f64 (*.f64 z (sin.f64 y)) x))
(/.f64 (*.f64 2 (+.f64 x (*.f64 z (sin.f64 y)))) 1)
(+.f64 (*.f64 2 x) (*.f64 (sin.f64 y) (*.f64 2 z)))
(*.f64 2 (+.f64 (*.f64 z (sin.f64 y)) x))
(/.f64 (*.f64 4 (+.f64 x (*.f64 z (sin.f64 y)))) 2)
(+.f64 (*.f64 2 x) (*.f64 (sin.f64 y) (*.f64 2 z)))
(*.f64 2 (+.f64 (*.f64 z (sin.f64 y)) x))
(/.f64 (*.f64 2 (*.f64 4 (+.f64 x (*.f64 z (sin.f64 y))))) 4)
(+.f64 (*.f64 2 x) (*.f64 (sin.f64 y) (*.f64 2 z)))
(*.f64 2 (+.f64 (*.f64 z (sin.f64 y)) x))
(/.f64 (*.f64 (*.f64 2 (+.f64 x (*.f64 z (sin.f64 y)))) 8) 8)
(+.f64 (*.f64 2 x) (*.f64 (sin.f64 y) (*.f64 2 z)))
(*.f64 2 (+.f64 (*.f64 z (sin.f64 y)) x))
(/.f64 (*.f64 2 (*.f64 (*.f64 2 (+.f64 x (*.f64 z (sin.f64 y)))) 8)) 16)
(+.f64 (*.f64 2 x) (*.f64 (sin.f64 y) (*.f64 2 z)))
(*.f64 2 (+.f64 (*.f64 z (sin.f64 y)) x))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 2 (+.f64 x (*.f64 z (sin.f64 y)))) 8))) 32)
(+.f64 (*.f64 2 x) (*.f64 (sin.f64 y) (*.f64 2 z)))
(*.f64 2 (+.f64 (*.f64 z (sin.f64 y)) x))
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 2 (+.f64 x (*.f64 z (sin.f64 y)))) 8))) (*.f64 2 (*.f64 2 (*.f64 (*.f64 2 (+.f64 x (*.f64 z (sin.f64 y)))) 8)))) 64)
(+.f64 (*.f64 2 x) (*.f64 (sin.f64 y) (*.f64 2 z)))
(*.f64 2 (+.f64 (*.f64 z (sin.f64 y)) x))
(pow.f64 (*.f64 2 (+.f64 x (*.f64 z (sin.f64 y)))) 1)
(+.f64 (*.f64 2 x) (*.f64 (sin.f64 y) (*.f64 2 z)))
(*.f64 2 (+.f64 (*.f64 z (sin.f64 y)) x))

localize3.0ms (0%)

Compiler

Compiled 8 to 4 computations (50% saved)

localize6.0ms (0.1%)

Local error

Found 1 expressions with local error:

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

Compiled 11 to 5 computations (54.5% saved)

series0.0ms (0%)

Counts
1 → 4
Calls

6 calls:

TimeVariablePointExpression
0.0ms
y
@0
(*.f64 (cos.f64 y) x)
0.0ms
x
@inf
(*.f64 (cos.f64 y) x)
0.0ms
x
@-inf
(*.f64 (cos.f64 y) x)
0.0ms
y
@-inf
(*.f64 (cos.f64 y) x)
0.0ms
y
@inf
(*.f64 (cos.f64 y) x)

rewrite116.0ms (1.1%)

Algorithm
batch-egg-rewrite
Rules
1604×rational.json-simplify-35
1330×exponential.json-3
1330×rational.json-1
1330×rational.json-2
1330×rational.json-4
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0711
14711
211311
324711
448211
5109611
6223711
7364211
8482611
9674311
Stop Event
node limit
Counts
1 → 14
Calls
Call 1
Inputs
(*.f64 (cos.f64 y) x)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 y) x) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (cos.f64 y) x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 y) (*.f64 x 1/2)) (*.f64 (cos.f64 y) (*.f64 x 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (cos.f64 y) x) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 y) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 y) (+.f64 x x)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 y) (*.f64 x 4)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 y) (*.f64 x 8)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (cos.f64 y) (*.f64 x 8))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (cos.f64 y) (*.f64 x 8)))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (cos.f64 y) (*.f64 x 8))))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (cos.f64 y) (*.f64 x 8)))))) 128)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (cos.f64 y) (*.f64 x 8)))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (cos.f64 y) (*.f64 x 8))))))) 256)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (cos.f64 y) x) 1)))))

simplify390.0ms (3.6%)

Algorithm
egg-herbie
Rules
1806×rational.json-simplify-35
1770×rational.json-simplify-2
1544×rational.json-simplify-53
1296×rational.json-simplify-1
1166×rational.json-simplify-42
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
061302
1151302
2296302
3601290
41954290
53757290
64313290
74489290
84642290
94812290
104998290
116272290
127303290
137727290
147773290
157778290
167782290
Stop Event
node limit
Counts
18 → 30
Calls
Call 1
Inputs
x
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y 2) x)) x)
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 y 4) x)) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y 2) x)) x))
(+.f64 (*.f64 -1/720 (*.f64 (pow.f64 y 6) x)) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 y 4) x)) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y 2) x)) x)))
(+.f64 (*.f64 (cos.f64 y) x) 0)
(+.f64 0 (*.f64 (cos.f64 y) x))
(+.f64 (*.f64 (cos.f64 y) (*.f64 x 1/2)) (*.f64 (cos.f64 y) (*.f64 x 1/2)))
(-.f64 (*.f64 (cos.f64 y) x) 0)
(/.f64 (*.f64 (cos.f64 y) x) 1)
(/.f64 (*.f64 (cos.f64 y) (+.f64 x x)) 2)
(/.f64 (*.f64 (cos.f64 y) (*.f64 x 4)) 4)
(/.f64 (*.f64 (cos.f64 y) (*.f64 x 8)) 8)
(/.f64 (*.f64 2 (*.f64 (cos.f64 y) (*.f64 x 8))) 16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (cos.f64 y) (*.f64 x 8)))) 32)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (cos.f64 y) (*.f64 x 8))))) 64)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (cos.f64 y) (*.f64 x 8)))))) 128)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (cos.f64 y) (*.f64 x 8)))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (cos.f64 y) (*.f64 x 8))))))) 256)
(pow.f64 (*.f64 (cos.f64 y) x) 1)
Outputs
x
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y 2) x)) x)
(+.f64 x (*.f64 -1/2 (*.f64 x (pow.f64 y 2))))
(+.f64 x (*.f64 (pow.f64 y 2) (*.f64 x -1/2)))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 y 4) x)) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y 2) x)) x))
(+.f64 (*.f64 -1/2 (*.f64 x (pow.f64 y 2))) (+.f64 x (*.f64 1/24 (*.f64 x (pow.f64 y 4)))))
(+.f64 (*.f64 (pow.f64 y 2) (*.f64 x -1/2)) (+.f64 x (*.f64 x (*.f64 (pow.f64 y 4) 1/24))))
(+.f64 (*.f64 (pow.f64 y 2) (*.f64 x -1/2)) (+.f64 x (*.f64 (pow.f64 y 4) (*.f64 x 1/24))))
(+.f64 x (*.f64 x (+.f64 (*.f64 1/24 (pow.f64 y 4)) (*.f64 -1/2 (pow.f64 y 2)))))
(+.f64 (*.f64 -1/720 (*.f64 (pow.f64 y 6) x)) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 y 4) x)) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y 2) x)) x)))
(+.f64 (*.f64 1/24 (*.f64 x (pow.f64 y 4))) (+.f64 (+.f64 x (*.f64 -1/2 (*.f64 x (pow.f64 y 2)))) (*.f64 -1/720 (*.f64 x (pow.f64 y 6)))))
(+.f64 (*.f64 (pow.f64 y 2) (*.f64 x -1/2)) (+.f64 (+.f64 x (*.f64 x (*.f64 (pow.f64 y 4) 1/24))) (*.f64 x (*.f64 (pow.f64 y 6) -1/720))))
(+.f64 (*.f64 (pow.f64 y 2) (*.f64 x -1/2)) (+.f64 (*.f64 x (*.f64 -1/720 (pow.f64 y 6))) (+.f64 x (*.f64 (pow.f64 y 4) (*.f64 x 1/24)))))
(+.f64 x (+.f64 (*.f64 x (*.f64 -1/720 (pow.f64 y 6))) (*.f64 x (+.f64 (*.f64 1/24 (pow.f64 y 4)) (*.f64 -1/2 (pow.f64 y 2))))))
(+.f64 (+.f64 x (*.f64 (pow.f64 y 2) (*.f64 x -1/2))) (*.f64 x (+.f64 (*.f64 -1/720 (pow.f64 y 6)) (*.f64 1/24 (pow.f64 y 4)))))
(+.f64 (*.f64 (cos.f64 y) x) 0)
(*.f64 x (cos.f64 y))
(+.f64 0 (*.f64 (cos.f64 y) x))
(*.f64 x (cos.f64 y))
(+.f64 (*.f64 (cos.f64 y) (*.f64 x 1/2)) (*.f64 (cos.f64 y) (*.f64 x 1/2)))
(*.f64 x (cos.f64 y))
(-.f64 (*.f64 (cos.f64 y) x) 0)
(*.f64 x (cos.f64 y))
(/.f64 (*.f64 (cos.f64 y) x) 1)
(*.f64 x (cos.f64 y))
(/.f64 (*.f64 (cos.f64 y) (+.f64 x x)) 2)
(*.f64 x (cos.f64 y))
(/.f64 (*.f64 (cos.f64 y) (*.f64 x 4)) 4)
(*.f64 x (cos.f64 y))
(/.f64 (*.f64 (cos.f64 y) (*.f64 x 8)) 8)
(*.f64 x (cos.f64 y))
(/.f64 (*.f64 2 (*.f64 (cos.f64 y) (*.f64 x 8))) 16)
(*.f64 x (cos.f64 y))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (cos.f64 y) (*.f64 x 8)))) 32)
(*.f64 x (cos.f64 y))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (cos.f64 y) (*.f64 x 8))))) 64)
(*.f64 x (cos.f64 y))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (cos.f64 y) (*.f64 x 8)))))) 128)
(*.f64 x (cos.f64 y))
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (cos.f64 y) (*.f64 x 8)))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (cos.f64 y) (*.f64 x 8))))))) 256)
(*.f64 x (cos.f64 y))
(pow.f64 (*.f64 (cos.f64 y) x) 1)
(*.f64 x (cos.f64 y))

localize27.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(*.f64 (pow.f64 y 3) -1/6)
2.7b
(*.f64 z (*.f64 (pow.f64 y 5) 1/120))
5.0b
(*.f64 z (*.f64 (pow.f64 y 3) -1/6))
18.2b
(+.f64 (*.f64 z (*.f64 (pow.f64 y 3) -1/6)) (+.f64 (*.f64 y z) (*.f64 z (*.f64 (pow.f64 y 5) 1/120))))
Compiler

Compiled 72 to 48 computations (33.3% saved)

eval66.0ms (0.6%)

Compiler

Compiled 3875 to 2604 computations (32.8% saved)

prune40.0ms (0.4%)

Pruning

10 alts after pruning (3 fresh and 7 done)

PrunedKeptTotal
New2182220
Fresh011
Picked011
Done167
Total21910229
Error
0.1b
Counts
229 → 10
Alt Table
Click to see full alt table
StatusErrorProgram
51.7b
(+.f64 (*.f64 z (*.f64 (pow.f64 y 3) -1/6)) (+.f64 (*.f64 y z) (*.f64 z (*.f64 (pow.f64 y 5) 1/120))))
30.0b
(+.f64 (*.f64 y z) x)
0.1b
(+.f64 (*.f64 x (cos.f64 y)) (*.f64 z (sin.f64 y)))
13.9b
(+.f64 x (*.f64 z (sin.f64 y)))
27.0b
(*.f64 (cos.f64 y) x)
35.7b
(*.f64 z (sin.f64 y))
51.3b
(*.f64 y z)
13.9b
(*.f64 1/2 (+.f64 x (/.f64 (+.f64 x (+.f64 x (*.f64 (sin.f64 y) (*.f64 z 4)))) 2)))
30.0b
(*.f64 1/2 (+.f64 x (+.f64 (*.f64 z (*.f64 2 y)) x)))
40.5b
x
Compiler

Compiled 108 to 76 computations (29.6% saved)

localize15.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(+.f64 x (+.f64 (*.f64 z (*.f64 2 y)) x))
0.0b
(+.f64 (*.f64 z (*.f64 2 y)) x)
Compiler

Compiled 43 to 26 computations (39.5% saved)

series4.0ms (0%)

Counts
2 → 72
Calls

18 calls:

TimeVariablePointExpression
2.0ms
z
@0
(+.f64 (*.f64 z (*.f64 2 y)) x)
0.0ms
z
@-inf
(+.f64 (*.f64 z (*.f64 2 y)) x)
0.0ms
x
@0
(+.f64 (*.f64 z (*.f64 2 y)) x)
0.0ms
y
@-inf
(+.f64 (*.f64 z (*.f64 2 y)) x)
0.0ms
z
@inf
(+.f64 (*.f64 z (*.f64 2 y)) x)

rewrite198.0ms (1.8%)

Algorithm
batch-egg-rewrite
Rules
2656×rational.json-simplify-2
2286×rational.json-simplify-35
1560×rational.json-simplify-1
1196×exponential.json-3
1196×rational.json-1
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01044
17044
215338
330738
459538
5148038
6315838
7500138
8619938
9688638
10688638
11688638
Stop Event
node limit
Counts
2 → 46
Calls
Call 1
Inputs
(+.f64 (*.f64 z (*.f64 2 y)) x)
(+.f64 x (+.f64 (*.f64 z (*.f64 2 y)) x))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 z (+.f64 y y)) x) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (+.f64 (*.f64 z y) (*.f64 x 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 z (+.f64 y y)) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 (*.f64 z (+.f64 y y)) x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 x (+.f64 x (*.f64 y (*.f64 z 4)))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (+.f64 (*.f64 z (+.f64 y y)) x) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (+.f64 (*.f64 y (*.f64 z 1/2)) (/.f64 x 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 z (+.f64 y y)) x) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (+.f64 x (+.f64 x (*.f64 y (*.f64 z 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 z y) (*.f64 x 1/2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (+.f64 (*.f64 z (+.f64 y y)) x) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 (*.f64 z (+.f64 y y)) x) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 y (*.f64 z 1/2)) (/.f64 x 4)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 z (+.f64 y y)) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 x (+.f64 x (*.f64 y (*.f64 z 4)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 z (+.f64 y y)) x) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 z (+.f64 y y)) x) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 z (+.f64 y y)) x) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 z (+.f64 y y)) x) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 z (+.f64 y y)) x) 8)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 z (+.f64 y y)) x) 8))))) 128)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 z (+.f64 y y)) x) 8))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 z (+.f64 y y)) x) 8)))))) 256)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 (*.f64 z (+.f64 y y)) x) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 2 (+.f64 x (*.f64 z y))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (+.f64 x (*.f64 z y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (+.f64 x (*.f64 z y))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 2 (+.f64 x (*.f64 z y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 4 (+.f64 x (*.f64 z y))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (+.f64 x (*.f64 z y)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 x (*.f64 z y)) 8) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 4 (+.f64 x (*.f64 z y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (+.f64 (*.f64 y (*.f64 z 4)) (*.f64 x 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 x (*.f64 z y)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (+.f64 x (*.f64 z y)) 8))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 x (*.f64 z y)) 2) 4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 y (*.f64 z 4)) (*.f64 x 4)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (+.f64 x (*.f64 z y))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 4 (+.f64 x (*.f64 z y))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 x (*.f64 z y)) 8) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (+.f64 x (*.f64 z y)) 8)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 x (*.f64 z y)) 8))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 x (*.f64 z y)) 8)))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 x (*.f64 z y)) 8))))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 x (*.f64 z y)) 8)))))) 128)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 x (*.f64 z y)) 8)))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 x (*.f64 z y)) 8))))))) 256)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 2 (+.f64 x (*.f64 z y))) 1)))))

simplify348.0ms (3.2%)

Algorithm
egg-herbie
Rules
5180×rational.json-simplify-41
2004×rational.json-simplify-35
1204×rational.json-simplify-2
836×rational.json-simplify-51
768×rational.json-simplify-1
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01022434
12242134
24652134
313982134
431802134
539872134
641102134
741952134
842642134
943312134
1043972134
1144632134
1245292134
1345952134
1446612134
1547272134
1647932134
1748592134
1848592134
Stop Event
node limit
Counts
118 → 63
Calls
Call 1
Inputs
x
(+.f64 (*.f64 2 (*.f64 y z)) x)
(+.f64 (*.f64 2 (*.f64 y z)) x)
(+.f64 (*.f64 2 (*.f64 y z)) x)
(*.f64 2 (*.f64 y z))
(+.f64 (*.f64 2 (*.f64 y z)) x)
(+.f64 (*.f64 2 (*.f64 y z)) x)
(+.f64 (*.f64 2 (*.f64 y z)) x)
(*.f64 2 (*.f64 y z))
(+.f64 (*.f64 2 (*.f64 y z)) x)
(+.f64 (*.f64 2 (*.f64 y z)) x)
(+.f64 (*.f64 2 (*.f64 y z)) x)
x
(+.f64 (*.f64 2 (*.f64 y z)) x)
(+.f64 (*.f64 2 (*.f64 y z)) x)
(+.f64 (*.f64 2 (*.f64 y z)) x)
(*.f64 2 (*.f64 y z))
(+.f64 (*.f64 2 (*.f64 y z)) x)
(+.f64 (*.f64 2 (*.f64 y z)) x)
(+.f64 (*.f64 2 (*.f64 y z)) x)
(*.f64 2 (*.f64 y z))
(+.f64 (*.f64 2 (*.f64 y z)) x)
(+.f64 (*.f64 2 (*.f64 y z)) x)
(+.f64 (*.f64 2 (*.f64 y z)) x)
(*.f64 2 (*.f64 y z))
(+.f64 (*.f64 2 (*.f64 y z)) x)
(+.f64 (*.f64 2 (*.f64 y z)) x)
(+.f64 (*.f64 2 (*.f64 y z)) x)
x
(+.f64 (*.f64 2 (*.f64 y z)) x)
(+.f64 (*.f64 2 (*.f64 y z)) x)
(+.f64 (*.f64 2 (*.f64 y z)) x)
x
(+.f64 (*.f64 2 (*.f64 y z)) x)
(+.f64 (*.f64 2 (*.f64 y z)) x)
(+.f64 (*.f64 2 (*.f64 y z)) x)
(*.f64 2 (*.f64 y z))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 y z)))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 y z)))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 y z)))
(*.f64 2 x)
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 y z)))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 y z)))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 y z)))
(*.f64 2 x)
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 y z)))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 y z)))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 y z)))
(*.f64 2 x)
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 y z)))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 y z)))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 y z)))
(*.f64 2 (*.f64 y z))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 y z)))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 y z)))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 y z)))
(*.f64 2 (*.f64 y z))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 y z)))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 y z)))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 y z)))
(*.f64 2 x)
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 y z)))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 y z)))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 y z)))
(*.f64 2 (*.f64 y z))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 y z)))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 y z)))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 y z)))
(*.f64 2 (*.f64 y z))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 y z)))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 y z)))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 y z)))
(-.f64 (+.f64 (*.f64 z (+.f64 y y)) x) 0)
(*.f64 2 (+.f64 (*.f64 z y) (*.f64 x 1/2)))
(*.f64 (+.f64 (*.f64 z (+.f64 y y)) x) 1)
(*.f64 1 (+.f64 (*.f64 z (+.f64 y y)) x))
(*.f64 (+.f64 x (+.f64 x (*.f64 y (*.f64 z 4)))) 1/2)
(*.f64 4 (/.f64 (+.f64 (*.f64 z (+.f64 y y)) x) 4))
(*.f64 4 (+.f64 (*.f64 y (*.f64 z 1/2)) (/.f64 x 4)))
(*.f64 (*.f64 (+.f64 (*.f64 z (+.f64 y y)) x) 4) 1/4)
(*.f64 1/2 (+.f64 x (+.f64 x (*.f64 y (*.f64 z 4)))))
(*.f64 (+.f64 (*.f64 z y) (*.f64 x 1/2)) 2)
(*.f64 1/4 (*.f64 (+.f64 (*.f64 z (+.f64 y y)) x) 4))
(*.f64 (/.f64 (+.f64 (*.f64 z (+.f64 y y)) x) 4) 4)
(*.f64 (+.f64 (*.f64 y (*.f64 z 1/2)) (/.f64 x 4)) 4)
(/.f64 (+.f64 (*.f64 z (+.f64 y y)) x) 1)
(/.f64 (+.f64 x (+.f64 x (*.f64 y (*.f64 z 4)))) 2)
(/.f64 (*.f64 (+.f64 (*.f64 z (+.f64 y y)) x) 4) 4)
(/.f64 (*.f64 (+.f64 (*.f64 z (+.f64 y y)) x) 8) 8)
(/.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 z (+.f64 y y)) x) 8)) 16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 z (+.f64 y y)) x) 8))) 32)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 z (+.f64 y y)) x) 8)))) 64)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 z (+.f64 y y)) x) 8))))) 128)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 z (+.f64 y y)) x) 8))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 z (+.f64 y y)) x) 8)))))) 256)
(pow.f64 (+.f64 (*.f64 z (+.f64 y y)) x) 1)
(-.f64 (*.f64 2 (+.f64 x (*.f64 z y))) 0)
(*.f64 2 (+.f64 x (*.f64 z y)))
(*.f64 (*.f64 2 (+.f64 x (*.f64 z y))) 1)
(*.f64 1 (*.f64 2 (+.f64 x (*.f64 z y))))
(*.f64 (*.f64 4 (+.f64 x (*.f64 z y))) 1/2)
(*.f64 4 (/.f64 (+.f64 x (*.f64 z y)) 2))
(*.f64 (*.f64 (+.f64 x (*.f64 z y)) 8) 1/4)
(*.f64 1/2 (*.f64 4 (+.f64 x (*.f64 z y))))
(*.f64 1/2 (+.f64 (*.f64 y (*.f64 z 4)) (*.f64 x 4)))
(*.f64 (+.f64 x (*.f64 z y)) 2)
(*.f64 1/4 (*.f64 (+.f64 x (*.f64 z y)) 8))
(*.f64 (/.f64 (+.f64 x (*.f64 z y)) 2) 4)
(*.f64 (+.f64 (*.f64 y (*.f64 z 4)) (*.f64 x 4)) 1/2)
(/.f64 (*.f64 2 (+.f64 x (*.f64 z y))) 1)
(/.f64 (*.f64 4 (+.f64 x (*.f64 z y))) 2)
(/.f64 (*.f64 (+.f64 x (*.f64 z y)) 8) 4)
(/.f64 (*.f64 2 (*.f64 (+.f64 x (*.f64 z y)) 8)) 8)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 x (*.f64 z y)) 8))) 16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 x (*.f64 z y)) 8)))) 32)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 x (*.f64 z y)) 8))))) 64)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 x (*.f64 z y)) 8)))))) 128)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 x (*.f64 z y)) 8)))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 x (*.f64 z y)) 8))))))) 256)
(pow.f64 (*.f64 2 (+.f64 x (*.f64 z y))) 1)
Outputs
x
(+.f64 (*.f64 2 (*.f64 y z)) x)
(+.f64 x (*.f64 2 (*.f64 y z)))
(+.f64 (*.f64 2 (*.f64 y z)) x)
(+.f64 x (*.f64 2 (*.f64 y z)))
(+.f64 (*.f64 2 (*.f64 y z)) x)
(+.f64 x (*.f64 2 (*.f64 y z)))
(*.f64 2 (*.f64 y z))
(+.f64 (*.f64 2 (*.f64 y z)) x)
(+.f64 x (*.f64 2 (*.f64 y z)))
(+.f64 (*.f64 2 (*.f64 y z)) x)
(+.f64 x (*.f64 2 (*.f64 y z)))
(+.f64 (*.f64 2 (*.f64 y z)) x)
(+.f64 x (*.f64 2 (*.f64 y z)))
(*.f64 2 (*.f64 y z))
(+.f64 (*.f64 2 (*.f64 y z)) x)
(+.f64 x (*.f64 2 (*.f64 y z)))
(+.f64 (*.f64 2 (*.f64 y z)) x)
(+.f64 x (*.f64 2 (*.f64 y z)))
(+.f64 (*.f64 2 (*.f64 y z)) x)
(+.f64 x (*.f64 2 (*.f64 y z)))
x
(+.f64 (*.f64 2 (*.f64 y z)) x)
(+.f64 x (*.f64 2 (*.f64 y z)))
(+.f64 (*.f64 2 (*.f64 y z)) x)
(+.f64 x (*.f64 2 (*.f64 y z)))
(+.f64 (*.f64 2 (*.f64 y z)) x)
(+.f64 x (*.f64 2 (*.f64 y z)))
(*.f64 2 (*.f64 y z))
(+.f64 (*.f64 2 (*.f64 y z)) x)
(+.f64 x (*.f64 2 (*.f64 y z)))
(+.f64 (*.f64 2 (*.f64 y z)) x)
(+.f64 x (*.f64 2 (*.f64 y z)))
(+.f64 (*.f64 2 (*.f64 y z)) x)
(+.f64 x (*.f64 2 (*.f64 y z)))
(*.f64 2 (*.f64 y z))
(+.f64 (*.f64 2 (*.f64 y z)) x)
(+.f64 x (*.f64 2 (*.f64 y z)))
(+.f64 (*.f64 2 (*.f64 y z)) x)
(+.f64 x (*.f64 2 (*.f64 y z)))
(+.f64 (*.f64 2 (*.f64 y z)) x)
(+.f64 x (*.f64 2 (*.f64 y z)))
(*.f64 2 (*.f64 y z))
(+.f64 (*.f64 2 (*.f64 y z)) x)
(+.f64 x (*.f64 2 (*.f64 y z)))
(+.f64 (*.f64 2 (*.f64 y z)) x)
(+.f64 x (*.f64 2 (*.f64 y z)))
(+.f64 (*.f64 2 (*.f64 y z)) x)
(+.f64 x (*.f64 2 (*.f64 y z)))
x
(+.f64 (*.f64 2 (*.f64 y z)) x)
(+.f64 x (*.f64 2 (*.f64 y z)))
(+.f64 (*.f64 2 (*.f64 y z)) x)
(+.f64 x (*.f64 2 (*.f64 y z)))
(+.f64 (*.f64 2 (*.f64 y z)) x)
(+.f64 x (*.f64 2 (*.f64 y z)))
x
(+.f64 (*.f64 2 (*.f64 y z)) x)
(+.f64 x (*.f64 2 (*.f64 y z)))
(+.f64 (*.f64 2 (*.f64 y z)) x)
(+.f64 x (*.f64 2 (*.f64 y z)))
(+.f64 (*.f64 2 (*.f64 y z)) x)
(+.f64 x (*.f64 2 (*.f64 y z)))
(*.f64 2 (*.f64 y z))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 y z)))
(+.f64 (*.f64 2 (*.f64 y z)) (*.f64 x 2))
(*.f64 2 (+.f64 x (*.f64 y z)))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 y z)))
(+.f64 (*.f64 2 (*.f64 y z)) (*.f64 x 2))
(*.f64 2 (+.f64 x (*.f64 y z)))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 y z)))
(+.f64 (*.f64 2 (*.f64 y z)) (*.f64 x 2))
(*.f64 2 (+.f64 x (*.f64 y z)))
(*.f64 2 x)
(*.f64 x 2)
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 y z)))
(+.f64 (*.f64 2 (*.f64 y z)) (*.f64 x 2))
(*.f64 2 (+.f64 x (*.f64 y z)))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 y z)))
(+.f64 (*.f64 2 (*.f64 y z)) (*.f64 x 2))
(*.f64 2 (+.f64 x (*.f64 y z)))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 y z)))
(+.f64 (*.f64 2 (*.f64 y z)) (*.f64 x 2))
(*.f64 2 (+.f64 x (*.f64 y z)))
(*.f64 2 x)
(*.f64 x 2)
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 y z)))
(+.f64 (*.f64 2 (*.f64 y z)) (*.f64 x 2))
(*.f64 2 (+.f64 x (*.f64 y z)))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 y z)))
(+.f64 (*.f64 2 (*.f64 y z)) (*.f64 x 2))
(*.f64 2 (+.f64 x (*.f64 y z)))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 y z)))
(+.f64 (*.f64 2 (*.f64 y z)) (*.f64 x 2))
(*.f64 2 (+.f64 x (*.f64 y z)))
(*.f64 2 x)
(*.f64 x 2)
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 y z)))
(+.f64 (*.f64 2 (*.f64 y z)) (*.f64 x 2))
(*.f64 2 (+.f64 x (*.f64 y z)))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 y z)))
(+.f64 (*.f64 2 (*.f64 y z)) (*.f64 x 2))
(*.f64 2 (+.f64 x (*.f64 y z)))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 y z)))
(+.f64 (*.f64 2 (*.f64 y z)) (*.f64 x 2))
(*.f64 2 (+.f64 x (*.f64 y z)))
(*.f64 2 (*.f64 y z))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 y z)))
(+.f64 (*.f64 2 (*.f64 y z)) (*.f64 x 2))
(*.f64 2 (+.f64 x (*.f64 y z)))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 y z)))
(+.f64 (*.f64 2 (*.f64 y z)) (*.f64 x 2))
(*.f64 2 (+.f64 x (*.f64 y z)))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 y z)))
(+.f64 (*.f64 2 (*.f64 y z)) (*.f64 x 2))
(*.f64 2 (+.f64 x (*.f64 y z)))
(*.f64 2 (*.f64 y z))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 y z)))
(+.f64 (*.f64 2 (*.f64 y z)) (*.f64 x 2))
(*.f64 2 (+.f64 x (*.f64 y z)))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 y z)))
(+.f64 (*.f64 2 (*.f64 y z)) (*.f64 x 2))
(*.f64 2 (+.f64 x (*.f64 y z)))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 y z)))
(+.f64 (*.f64 2 (*.f64 y z)) (*.f64 x 2))
(*.f64 2 (+.f64 x (*.f64 y z)))
(*.f64 2 x)
(*.f64 x 2)
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 y z)))
(+.f64 (*.f64 2 (*.f64 y z)) (*.f64 x 2))
(*.f64 2 (+.f64 x (*.f64 y z)))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 y z)))
(+.f64 (*.f64 2 (*.f64 y z)) (*.f64 x 2))
(*.f64 2 (+.f64 x (*.f64 y z)))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 y z)))
(+.f64 (*.f64 2 (*.f64 y z)) (*.f64 x 2))
(*.f64 2 (+.f64 x (*.f64 y z)))
(*.f64 2 (*.f64 y z))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 y z)))
(+.f64 (*.f64 2 (*.f64 y z)) (*.f64 x 2))
(*.f64 2 (+.f64 x (*.f64 y z)))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 y z)))
(+.f64 (*.f64 2 (*.f64 y z)) (*.f64 x 2))
(*.f64 2 (+.f64 x (*.f64 y z)))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 y z)))
(+.f64 (*.f64 2 (*.f64 y z)) (*.f64 x 2))
(*.f64 2 (+.f64 x (*.f64 y z)))
(*.f64 2 (*.f64 y z))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 y z)))
(+.f64 (*.f64 2 (*.f64 y z)) (*.f64 x 2))
(*.f64 2 (+.f64 x (*.f64 y z)))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 y z)))
(+.f64 (*.f64 2 (*.f64 y z)) (*.f64 x 2))
(*.f64 2 (+.f64 x (*.f64 y z)))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 y z)))
(+.f64 (*.f64 2 (*.f64 y z)) (*.f64 x 2))
(*.f64 2 (+.f64 x (*.f64 y z)))
(-.f64 (+.f64 (*.f64 z (+.f64 y y)) x) 0)
(+.f64 x (*.f64 z (+.f64 y y)))
(+.f64 x (*.f64 y (+.f64 z z)))
(*.f64 2 (+.f64 (*.f64 z y) (*.f64 x 1/2)))
(*.f64 2 (+.f64 (*.f64 y z) (*.f64 x 1/2)))
(*.f64 (+.f64 (*.f64 z (+.f64 y y)) x) 1)
(+.f64 x (*.f64 z (+.f64 y y)))
(+.f64 x (*.f64 y (+.f64 z z)))
(*.f64 1 (+.f64 (*.f64 z (+.f64 y y)) x))
(+.f64 x (*.f64 z (+.f64 y y)))
(+.f64 x (*.f64 y (+.f64 z z)))
(*.f64 (+.f64 x (+.f64 x (*.f64 y (*.f64 z 4)))) 1/2)
(*.f64 1/2 (+.f64 x (+.f64 x (*.f64 y (*.f64 z 4)))))
(*.f64 1/2 (+.f64 (*.f64 y (*.f64 z 4)) (+.f64 x x)))
(*.f64 1/2 (+.f64 (*.f64 (*.f64 y z) 4) (+.f64 x x)))
(*.f64 4 (/.f64 (+.f64 (*.f64 z (+.f64 y y)) x) 4))
(+.f64 x (*.f64 z (+.f64 y y)))
(+.f64 x (*.f64 y (+.f64 z z)))
(*.f64 4 (+.f64 (*.f64 y (*.f64 z 1/2)) (/.f64 x 4)))
(*.f64 4 (+.f64 (*.f64 (*.f64 y z) 1/2) (/.f64 x 4)))
(*.f64 (*.f64 (+.f64 (*.f64 z (+.f64 y y)) x) 4) 1/4)
(+.f64 x (*.f64 z (+.f64 y y)))
(+.f64 x (*.f64 y (+.f64 z z)))
(*.f64 1/2 (+.f64 x (+.f64 x (*.f64 y (*.f64 z 4)))))
(*.f64 1/2 (+.f64 (*.f64 y (*.f64 z 4)) (+.f64 x x)))
(*.f64 1/2 (+.f64 (*.f64 (*.f64 y z) 4) (+.f64 x x)))
(*.f64 (+.f64 (*.f64 z y) (*.f64 x 1/2)) 2)
(*.f64 2 (+.f64 (*.f64 y z) (*.f64 x 1/2)))
(*.f64 1/4 (*.f64 (+.f64 (*.f64 z (+.f64 y y)) x) 4))
(+.f64 x (*.f64 z (+.f64 y y)))
(+.f64 x (*.f64 y (+.f64 z z)))
(*.f64 (/.f64 (+.f64 (*.f64 z (+.f64 y y)) x) 4) 4)
(+.f64 x (*.f64 z (+.f64 y y)))
(+.f64 x (*.f64 y (+.f64 z z)))
(*.f64 (+.f64 (*.f64 y (*.f64 z 1/2)) (/.f64 x 4)) 4)
(*.f64 4 (+.f64 (*.f64 y (*.f64 z 1/2)) (/.f64 x 4)))
(*.f64 4 (+.f64 (*.f64 (*.f64 y z) 1/2) (/.f64 x 4)))
(/.f64 (+.f64 (*.f64 z (+.f64 y y)) x) 1)
(+.f64 x (*.f64 z (+.f64 y y)))
(+.f64 x (*.f64 y (+.f64 z z)))
(/.f64 (+.f64 x (+.f64 x (*.f64 y (*.f64 z 4)))) 2)
(/.f64 (+.f64 (*.f64 y (*.f64 z 4)) (+.f64 x x)) 2)
(/.f64 (+.f64 (*.f64 (*.f64 y z) 4) (+.f64 x x)) 2)
(/.f64 (*.f64 (+.f64 (*.f64 z (+.f64 y y)) x) 4) 4)
(+.f64 x (*.f64 z (+.f64 y y)))
(+.f64 x (*.f64 y (+.f64 z z)))
(/.f64 (*.f64 (+.f64 (*.f64 z (+.f64 y y)) x) 8) 8)
(+.f64 x (*.f64 z (+.f64 y y)))
(+.f64 x (*.f64 y (+.f64 z z)))
(/.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 z (+.f64 y y)) x) 8)) 16)
(+.f64 x (*.f64 z (+.f64 y y)))
(+.f64 x (*.f64 y (+.f64 z z)))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 z (+.f64 y y)) x) 8))) 32)
(+.f64 x (*.f64 z (+.f64 y y)))
(+.f64 x (*.f64 y (+.f64 z z)))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 z (+.f64 y y)) x) 8)))) 64)
(+.f64 x (*.f64 z (+.f64 y y)))
(+.f64 x (*.f64 y (+.f64 z z)))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 z (+.f64 y y)) x) 8))))) 128)
(+.f64 x (*.f64 z (+.f64 y y)))
(+.f64 x (*.f64 y (+.f64 z z)))
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 z (+.f64 y y)) x) 8))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 z (+.f64 y y)) x) 8)))))) 256)
(+.f64 x (*.f64 z (+.f64 y y)))
(+.f64 x (*.f64 y (+.f64 z z)))
(pow.f64 (+.f64 (*.f64 z (+.f64 y y)) x) 1)
(+.f64 x (*.f64 z (+.f64 y y)))
(+.f64 x (*.f64 y (+.f64 z z)))
(-.f64 (*.f64 2 (+.f64 x (*.f64 z y))) 0)
(+.f64 (*.f64 2 (*.f64 y z)) (*.f64 x 2))
(*.f64 2 (+.f64 x (*.f64 y z)))
(*.f64 2 (+.f64 x (*.f64 z y)))
(+.f64 (*.f64 2 (*.f64 y z)) (*.f64 x 2))
(*.f64 2 (+.f64 x (*.f64 y z)))
(*.f64 (*.f64 2 (+.f64 x (*.f64 z y))) 1)
(+.f64 (*.f64 2 (*.f64 y z)) (*.f64 x 2))
(*.f64 2 (+.f64 x (*.f64 y z)))
(*.f64 1 (*.f64 2 (+.f64 x (*.f64 z y))))
(+.f64 (*.f64 2 (*.f64 y z)) (*.f64 x 2))
(*.f64 2 (+.f64 x (*.f64 y z)))
(*.f64 (*.f64 4 (+.f64 x (*.f64 z y))) 1/2)
(+.f64 (*.f64 2 (*.f64 y z)) (*.f64 x 2))
(*.f64 2 (+.f64 x (*.f64 y z)))
(*.f64 4 (/.f64 (+.f64 x (*.f64 z y)) 2))
(+.f64 (*.f64 2 (*.f64 y z)) (*.f64 x 2))
(*.f64 2 (+.f64 x (*.f64 y z)))
(*.f64 (*.f64 (+.f64 x (*.f64 z y)) 8) 1/4)
(+.f64 (*.f64 2 (*.f64 y z)) (*.f64 x 2))
(*.f64 2 (+.f64 x (*.f64 y z)))
(*.f64 1/2 (*.f64 4 (+.f64 x (*.f64 z y))))
(+.f64 (*.f64 2 (*.f64 y z)) (*.f64 x 2))
(*.f64 2 (+.f64 x (*.f64 y z)))
(*.f64 1/2 (+.f64 (*.f64 y (*.f64 z 4)) (*.f64 x 4)))
(+.f64 (*.f64 2 (*.f64 y z)) (*.f64 x 2))
(*.f64 2 (+.f64 x (*.f64 y z)))
(*.f64 (+.f64 x (*.f64 z y)) 2)
(+.f64 (*.f64 2 (*.f64 y z)) (*.f64 x 2))
(*.f64 2 (+.f64 x (*.f64 y z)))
(*.f64 1/4 (*.f64 (+.f64 x (*.f64 z y)) 8))
(+.f64 (*.f64 2 (*.f64 y z)) (*.f64 x 2))
(*.f64 2 (+.f64 x (*.f64 y z)))
(*.f64 (/.f64 (+.f64 x (*.f64 z y)) 2) 4)
(+.f64 (*.f64 2 (*.f64 y z)) (*.f64 x 2))
(*.f64 2 (+.f64 x (*.f64 y z)))
(*.f64 (+.f64 (*.f64 y (*.f64 z 4)) (*.f64 x 4)) 1/2)
(+.f64 (*.f64 2 (*.f64 y z)) (*.f64 x 2))
(*.f64 2 (+.f64 x (*.f64 y z)))
(/.f64 (*.f64 2 (+.f64 x (*.f64 z y))) 1)
(+.f64 (*.f64 2 (*.f64 y z)) (*.f64 x 2))
(*.f64 2 (+.f64 x (*.f64 y z)))
(/.f64 (*.f64 4 (+.f64 x (*.f64 z y))) 2)
(+.f64 (*.f64 2 (*.f64 y z)) (*.f64 x 2))
(*.f64 2 (+.f64 x (*.f64 y z)))
(/.f64 (*.f64 (+.f64 x (*.f64 z y)) 8) 4)
(+.f64 (*.f64 2 (*.f64 y z)) (*.f64 x 2))
(*.f64 2 (+.f64 x (*.f64 y z)))
(/.f64 (*.f64 2 (*.f64 (+.f64 x (*.f64 z y)) 8)) 8)
(+.f64 (*.f64 2 (*.f64 y z)) (*.f64 x 2))
(*.f64 2 (+.f64 x (*.f64 y z)))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 x (*.f64 z y)) 8))) 16)
(+.f64 (*.f64 2 (*.f64 y z)) (*.f64 x 2))
(*.f64 2 (+.f64 x (*.f64 y z)))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 x (*.f64 z y)) 8)))) 32)
(+.f64 (*.f64 2 (*.f64 y z)) (*.f64 x 2))
(*.f64 2 (+.f64 x (*.f64 y z)))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 x (*.f64 z y)) 8))))) 64)
(+.f64 (*.f64 2 (*.f64 y z)) (*.f64 x 2))
(*.f64 2 (+.f64 x (*.f64 y z)))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 x (*.f64 z y)) 8)))))) 128)
(+.f64 (*.f64 2 (*.f64 y z)) (*.f64 x 2))
(*.f64 2 (+.f64 x (*.f64 y z)))
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 x (*.f64 z y)) 8)))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 x (*.f64 z y)) 8))))))) 256)
(+.f64 (*.f64 2 (*.f64 y z)) (*.f64 x 2))
(*.f64 2 (+.f64 x (*.f64 y z)))
(pow.f64 (*.f64 2 (+.f64 x (*.f64 z y))) 1)
(+.f64 (*.f64 2 (*.f64 y z)) (*.f64 x 2))
(*.f64 2 (+.f64 x (*.f64 y z)))

localize27.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(+.f64 x (/.f64 (+.f64 x (+.f64 x (*.f64 (sin.f64 y) (*.f64 z 4)))) 2))
0.0b
(+.f64 x (+.f64 x (*.f64 (sin.f64 y) (*.f64 z 4))))
0.0b
(+.f64 x (*.f64 (sin.f64 y) (*.f64 z 4)))
0.1b
(*.f64 (sin.f64 y) (*.f64 z 4))
Compiler

Compiled 80 to 46 computations (42.5% saved)

series6.0ms (0.1%)

Counts
4 → 132
Calls

33 calls:

TimeVariablePointExpression
0.0ms
y
@inf
(+.f64 x (/.f64 (+.f64 x (+.f64 x (*.f64 (sin.f64 y) (*.f64 z 4)))) 2))
0.0ms
y
@-inf
(+.f64 x (/.f64 (+.f64 x (+.f64 x (*.f64 (sin.f64 y) (*.f64 z 4)))) 2))
0.0ms
y
@0
(*.f64 (sin.f64 y) (*.f64 z 4))
0.0ms
z
@0
(+.f64 x (/.f64 (+.f64 x (+.f64 x (*.f64 (sin.f64 y) (*.f64 z 4)))) 2))
0.0ms
y
@inf
(*.f64 (sin.f64 y) (*.f64 z 4))

rewrite106.0ms (1%)

Algorithm
batch-egg-rewrite
Rules
1414×exponential.json-3
1414×rational.json-1
1414×rational.json-2
1414×rational.json-4
1414×rational.json-3
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
015110
1106110
2233110
3502104
4105698
5223198
6392298
7618798
Stop Event
node limit
Counts
4 → 71
Calls
Call 1
Inputs
(*.f64 (sin.f64 y) (*.f64 z 4))
(+.f64 x (*.f64 (sin.f64 y) (*.f64 z 4)))
(+.f64 x (+.f64 x (*.f64 (sin.f64 y) (*.f64 z 4))))
(+.f64 x (/.f64 (+.f64 x (+.f64 x (*.f64 (sin.f64 y) (*.f64 z 4)))) 2))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 y) (*.f64 z 4)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (sin.f64 y) (*.f64 z 4)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 y) (+.f64 z z)) (*.f64 (sin.f64 y) (+.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (sin.f64 y) (*.f64 z 4)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 y) (*.f64 z 4)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 y) (*.f64 z 8)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 y) (*.f64 z 16)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (sin.f64 y) (*.f64 z 16))) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (sin.f64 y) (*.f64 z 16)))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (sin.f64 y) (*.f64 z 16))))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (sin.f64 y) (*.f64 z 16))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (sin.f64 y) (*.f64 z 16)))))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sin.f64 y) (*.f64 z 4)) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 (sin.f64 y) (*.f64 z 4)) x) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (+.f64 (*.f64 (sin.f64 y) (*.f64 z 4)) x) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 (sin.f64 y) (*.f64 z 4)) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (+.f64 (*.f64 (sin.f64 y) (*.f64 z 4)) x) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 (*.f64 (sin.f64 y) (*.f64 z 4)) x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 x (+.f64 x (*.f64 (sin.f64 y) (*.f64 z 8)))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (+.f64 x (+.f64 x (*.f64 (sin.f64 y) (*.f64 z 8)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 4 (+.f64 (*.f64 (sin.f64 y) (*.f64 z 4)) x)) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 4 (+.f64 (*.f64 (sin.f64 y) (*.f64 z 4)) x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 (sin.f64 y) (*.f64 z 4)) x) 1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 (*.f64 (sin.f64 y) (*.f64 z 4)) x) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 (sin.f64 y) (*.f64 z 4)) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 x (+.f64 x (*.f64 (sin.f64 y) (*.f64 z 8)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 4 (+.f64 (*.f64 (sin.f64 y) (*.f64 z 4)) x)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 4 (+.f64 (*.f64 (sin.f64 y) (*.f64 z 4)) x))) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 4 (+.f64 (*.f64 (sin.f64 y) (*.f64 z 4)) x)))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 4 (+.f64 (*.f64 (sin.f64 y) (*.f64 z 4)) x))))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 4 (+.f64 (*.f64 (sin.f64 y) (*.f64 z 4)) x))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 4 (+.f64 (*.f64 (sin.f64 y) (*.f64 z 4)) x)))))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 (*.f64 (sin.f64 y) (*.f64 z 4)) x) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 (sin.f64 y) (*.f64 z 4)) (+.f64 x x)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (*.f64 (+.f64 x (*.f64 (sin.f64 y) (+.f64 z z))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 (sin.f64 y) (*.f64 z 4)) (+.f64 x x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (+.f64 x (*.f64 (sin.f64 y) (+.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 x (*.f64 (sin.f64 y) (+.f64 z z))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 (*.f64 (sin.f64 y) (*.f64 z 4)) (+.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 4 (+.f64 x (*.f64 (sin.f64 y) (+.f64 z z)))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 x (*.f64 (sin.f64 y) (+.f64 z z))) 8) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 4 (+.f64 x (*.f64 (sin.f64 y) (+.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 4 (*.f64 4 (+.f64 x (*.f64 (sin.f64 y) (+.f64 z z))))) 1/8)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (+.f64 x (*.f64 (sin.f64 y) (+.f64 z z))) 8))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 x (*.f64 (sin.f64 y) (+.f64 z z))) 1/2) 4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/8 (*.f64 4 (*.f64 4 (+.f64 x (*.f64 (sin.f64 y) (+.f64 z z))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 (sin.f64 y) (*.f64 z 4)) (+.f64 x x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 4 (+.f64 x (*.f64 (sin.f64 y) (+.f64 z z)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 x (*.f64 (sin.f64 y) (+.f64 z z))) 8) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 4 (*.f64 4 (+.f64 x (*.f64 (sin.f64 y) (+.f64 z z))))) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 4 (*.f64 4 (+.f64 x (*.f64 (sin.f64 y) (+.f64 z z)))))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 4 (*.f64 4 (+.f64 x (*.f64 (sin.f64 y) (+.f64 z z))))))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 4 (*.f64 4 (+.f64 x (*.f64 (sin.f64 y) (+.f64 z z)))))))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 (*.f64 (sin.f64 y) (*.f64 z 4)) (+.f64 x x)) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 x (+.f64 x (*.f64 (sin.f64 y) (+.f64 z z)))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (*.f64 4 (+.f64 x (*.f64 (sin.f64 y) z))) 8))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (/.f64 (*.f64 4 (+.f64 x (*.f64 (sin.f64 y) z))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 x (+.f64 x (*.f64 (sin.f64 y) (+.f64 z z)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 x (+.f64 x (*.f64 (sin.f64 y) (+.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 4 (+.f64 x (*.f64 (sin.f64 y) z))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 4 (+.f64 x (*.f64 (sin.f64 y) z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (*.f64 4 (+.f64 x (*.f64 (sin.f64 y) z)))) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 2 (*.f64 4 (+.f64 x (*.f64 (sin.f64 y) z)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 4 (+.f64 x (*.f64 (sin.f64 y) z))) 4) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 4 (+.f64 x (*.f64 (sin.f64 y) z))) 8) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 x (+.f64 x (*.f64 (sin.f64 y) (+.f64 z z)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 4 (+.f64 x (*.f64 (sin.f64 y) z))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 4 (+.f64 x (*.f64 (sin.f64 y) z)))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 4 (+.f64 x (*.f64 (sin.f64 y) z))))) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 4 (+.f64 x (*.f64 (sin.f64 y) z)))))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 4 (+.f64 x (*.f64 (sin.f64 y) z))))))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 4 (+.f64 x (*.f64 (sin.f64 y) z))))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 4 (+.f64 x (*.f64 (sin.f64 y) z)))))))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 x (+.f64 x (*.f64 (sin.f64 y) (+.f64 z z)))) 1)))))

simplify229.0ms (2.1%)

Algorithm
egg-herbie
Rules
2126×rational.json-simplify-1
1892×rational.json-simplify-35
1590×rational.json-simplify-2
1012×rational.json-simplify-48
918×rational.json-simplify-41
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01825175
14124935
28554935
318104881
439044881
543634881
646654881
749184881
854794881
964444881
Stop Event
node limit
Counts
203 → 147
Calls
Call 1
Inputs
(*.f64 4 (*.f64 y z))
(+.f64 (*.f64 -2/3 (*.f64 (pow.f64 y 3) z)) (*.f64 4 (*.f64 y z)))
(+.f64 (*.f64 -2/3 (*.f64 (pow.f64 y 3) z)) (+.f64 (*.f64 1/30 (*.f64 (pow.f64 y 5) z)) (*.f64 4 (*.f64 y z))))
(+.f64 (*.f64 -2/3 (*.f64 (pow.f64 y 3) z)) (+.f64 (*.f64 1/30 (*.f64 (pow.f64 y 5) z)) (+.f64 (*.f64 4 (*.f64 y z)) (*.f64 -1/1260 (*.f64 (pow.f64 y 7) z)))))
(*.f64 4 (*.f64 z (sin.f64 y)))
(*.f64 4 (*.f64 z (sin.f64 y)))
(*.f64 4 (*.f64 z (sin.f64 y)))
(*.f64 4 (*.f64 z (sin.f64 y)))
(*.f64 4 (*.f64 z (sin.f64 y)))
(*.f64 4 (*.f64 z (sin.f64 y)))
(*.f64 4 (*.f64 z (sin.f64 y)))
(*.f64 4 (*.f64 z (sin.f64 y)))
(*.f64 4 (*.f64 z (sin.f64 y)))
(*.f64 4 (*.f64 z (sin.f64 y)))
(*.f64 4 (*.f64 z (sin.f64 y)))
(*.f64 4 (*.f64 z (sin.f64 y)))
(*.f64 4 (*.f64 z (sin.f64 y)))
(*.f64 4 (*.f64 z (sin.f64 y)))
(*.f64 4 (*.f64 z (sin.f64 y)))
(*.f64 4 (*.f64 z (sin.f64 y)))
(*.f64 4 (*.f64 z (sin.f64 y)))
(*.f64 4 (*.f64 z (sin.f64 y)))
(*.f64 4 (*.f64 z (sin.f64 y)))
(*.f64 4 (*.f64 z (sin.f64 y)))
(*.f64 4 (*.f64 z (sin.f64 y)))
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) x)
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) x)
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) x)
x
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) x)
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) x)
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) x)
x
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) x)
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) x)
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) x)
x
(+.f64 (*.f64 4 (*.f64 y z)) x)
(+.f64 (*.f64 -2/3 (*.f64 (pow.f64 y 3) z)) (+.f64 (*.f64 4 (*.f64 y z)) x))
(+.f64 (*.f64 1/30 (*.f64 (pow.f64 y 5) z)) (+.f64 (*.f64 -2/3 (*.f64 (pow.f64 y 3) z)) (+.f64 (*.f64 4 (*.f64 y z)) x)))
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) x)
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) x)
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) x)
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) x)
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) x)
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) x)
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) x)
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) x)
x
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) x)
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) x)
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) x)
(*.f64 4 (*.f64 z (sin.f64 y)))
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) x)
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) x)
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) x)
(*.f64 4 (*.f64 z (sin.f64 y)))
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) x)
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) x)
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) x)
(*.f64 4 (*.f64 z (sin.f64 y)))
(+.f64 (*.f64 2 x) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 x) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 x) (*.f64 4 (*.f64 z (sin.f64 y))))
(*.f64 2 x)
(+.f64 (*.f64 2 x) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 x) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 x) (*.f64 4 (*.f64 z (sin.f64 y))))
(*.f64 2 x)
(+.f64 (*.f64 2 x) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 x) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 x) (*.f64 4 (*.f64 z (sin.f64 y))))
(*.f64 2 x)
(+.f64 (*.f64 2 x) (*.f64 4 (*.f64 y z)))
(+.f64 (*.f64 2 x) (+.f64 (*.f64 -2/3 (*.f64 (pow.f64 y 3) z)) (*.f64 4 (*.f64 y z))))
(+.f64 (*.f64 2 x) (+.f64 (*.f64 1/30 (*.f64 (pow.f64 y 5) z)) (+.f64 (*.f64 -2/3 (*.f64 (pow.f64 y 3) z)) (*.f64 4 (*.f64 y z)))))
(+.f64 (*.f64 2 x) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 x) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 x) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 x) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 x) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 x) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 x) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 x) (*.f64 4 (*.f64 z (sin.f64 y))))
(*.f64 2 x)
(+.f64 (*.f64 2 x) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 x) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 x) (*.f64 4 (*.f64 z (sin.f64 y))))
(*.f64 4 (*.f64 z (sin.f64 y)))
(+.f64 (*.f64 2 x) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 x) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 x) (*.f64 4 (*.f64 z (sin.f64 y))))
(*.f64 4 (*.f64 z (sin.f64 y)))
(+.f64 (*.f64 2 x) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 x) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 x) (*.f64 4 (*.f64 z (sin.f64 y))))
(*.f64 2 (*.f64 z (sin.f64 y)))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 z (sin.f64 y))))
(*.f64 2 x)
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 z (sin.f64 y))))
(*.f64 2 x)
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 z (sin.f64 y))))
(*.f64 2 x)
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 y z)))
(+.f64 (*.f64 2 x) (+.f64 (*.f64 2 (*.f64 y z)) (*.f64 -1/3 (*.f64 (pow.f64 y 3) z))))
(+.f64 (*.f64 2 x) (+.f64 (*.f64 2 (*.f64 y z)) (+.f64 (*.f64 1/60 (*.f64 (pow.f64 y 5) z)) (*.f64 -1/3 (*.f64 (pow.f64 y 3) z)))))
(+.f64 (*.f64 1/2 (+.f64 (*.f64 2 x) (*.f64 4 (*.f64 z (sin.f64 y))))) x)
(+.f64 (*.f64 1/2 (+.f64 (*.f64 2 x) (*.f64 4 (*.f64 z (sin.f64 y))))) x)
(+.f64 (*.f64 1/2 (+.f64 (*.f64 2 x) (*.f64 4 (*.f64 z (sin.f64 y))))) x)
(+.f64 (*.f64 1/2 (+.f64 (*.f64 2 x) (*.f64 4 (*.f64 z (sin.f64 y))))) x)
(+.f64 (*.f64 1/2 (+.f64 (*.f64 2 x) (*.f64 4 (*.f64 z (sin.f64 y))))) x)
(+.f64 (*.f64 1/2 (+.f64 (*.f64 2 x) (*.f64 4 (*.f64 z (sin.f64 y))))) x)
(+.f64 (*.f64 1/2 (+.f64 (*.f64 2 x) (*.f64 4 (*.f64 z (sin.f64 y))))) x)
(+.f64 (*.f64 1/2 (+.f64 (*.f64 2 x) (*.f64 4 (*.f64 z (sin.f64 y))))) x)
(*.f64 2 x)
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 z (sin.f64 y))))
(*.f64 2 (*.f64 z (sin.f64 y)))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 z (sin.f64 y))))
(*.f64 2 (*.f64 z (sin.f64 y)))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 (sin.f64 y) (*.f64 z 4)) 0)
(+.f64 0 (*.f64 (sin.f64 y) (*.f64 z 4)))
(+.f64 (*.f64 (sin.f64 y) (+.f64 z z)) (*.f64 (sin.f64 y) (+.f64 z z)))
(-.f64 (*.f64 (sin.f64 y) (*.f64 z 4)) 0)
(/.f64 (*.f64 (sin.f64 y) (*.f64 z 4)) 1)
(/.f64 (*.f64 (sin.f64 y) (*.f64 z 8)) 2)
(/.f64 (*.f64 (sin.f64 y) (*.f64 z 16)) 4)
(/.f64 (*.f64 2 (*.f64 (sin.f64 y) (*.f64 z 16))) 8)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (sin.f64 y) (*.f64 z 16)))) 16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (sin.f64 y) (*.f64 z 16))))) 32)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (sin.f64 y) (*.f64 z 16))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (sin.f64 y) (*.f64 z 16)))))) 64)
(pow.f64 (*.f64 (sin.f64 y) (*.f64 z 4)) 1)
(-.f64 (+.f64 (*.f64 (sin.f64 y) (*.f64 z 4)) x) 0)
(*.f64 4 (/.f64 (+.f64 (*.f64 (sin.f64 y) (*.f64 z 4)) x) 4))
(*.f64 (+.f64 (*.f64 (sin.f64 y) (*.f64 z 4)) x) 1)
(*.f64 2 (*.f64 (+.f64 (*.f64 (sin.f64 y) (*.f64 z 4)) x) 1/2))
(*.f64 1 (+.f64 (*.f64 (sin.f64 y) (*.f64 z 4)) x))
(*.f64 (+.f64 x (+.f64 x (*.f64 (sin.f64 y) (*.f64 z 8)))) 1/2)
(*.f64 1/2 (+.f64 x (+.f64 x (*.f64 (sin.f64 y) (*.f64 z 8)))))
(*.f64 (*.f64 4 (+.f64 (*.f64 (sin.f64 y) (*.f64 z 4)) x)) 1/4)
(*.f64 1/4 (*.f64 4 (+.f64 (*.f64 (sin.f64 y) (*.f64 z 4)) x)))
(*.f64 (*.f64 (+.f64 (*.f64 (sin.f64 y) (*.f64 z 4)) x) 1/2) 2)
(*.f64 (/.f64 (+.f64 (*.f64 (sin.f64 y) (*.f64 z 4)) x) 4) 4)
(/.f64 (+.f64 (*.f64 (sin.f64 y) (*.f64 z 4)) x) 1)
(/.f64 (+.f64 x (+.f64 x (*.f64 (sin.f64 y) (*.f64 z 8)))) 2)
(/.f64 (*.f64 4 (+.f64 (*.f64 (sin.f64 y) (*.f64 z 4)) x)) 4)
(/.f64 (*.f64 2 (*.f64 4 (+.f64 (*.f64 (sin.f64 y) (*.f64 z 4)) x))) 8)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 4 (+.f64 (*.f64 (sin.f64 y) (*.f64 z 4)) x)))) 16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 4 (+.f64 (*.f64 (sin.f64 y) (*.f64 z 4)) x))))) 32)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 4 (+.f64 (*.f64 (sin.f64 y) (*.f64 z 4)) x))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 4 (+.f64 (*.f64 (sin.f64 y) (*.f64 z 4)) x)))))) 64)
(pow.f64 (+.f64 (*.f64 (sin.f64 y) (*.f64 z 4)) x) 1)
(-.f64 (+.f64 (*.f64 (sin.f64 y) (*.f64 z 4)) (+.f64 x x)) 0)
(*.f64 4 (*.f64 (+.f64 x (*.f64 (sin.f64 y) (+.f64 z z))) 1/2))
(*.f64 (+.f64 (*.f64 (sin.f64 y) (*.f64 z 4)) (+.f64 x x)) 1)
(*.f64 2 (+.f64 x (*.f64 (sin.f64 y) (+.f64 z z))))
(*.f64 (+.f64 x (*.f64 (sin.f64 y) (+.f64 z z))) 2)
(*.f64 1 (+.f64 (*.f64 (sin.f64 y) (*.f64 z 4)) (+.f64 x x)))
(*.f64 (*.f64 4 (+.f64 x (*.f64 (sin.f64 y) (+.f64 z z)))) 1/2)
(*.f64 (*.f64 (+.f64 x (*.f64 (sin.f64 y) (+.f64 z z))) 8) 1/4)
(*.f64 1/2 (*.f64 4 (+.f64 x (*.f64 (sin.f64 y) (+.f64 z z)))))
(*.f64 (*.f64 4 (*.f64 4 (+.f64 x (*.f64 (sin.f64 y) (+.f64 z z))))) 1/8)
(*.f64 1/4 (*.f64 (+.f64 x (*.f64 (sin.f64 y) (+.f64 z z))) 8))
(*.f64 (*.f64 (+.f64 x (*.f64 (sin.f64 y) (+.f64 z z))) 1/2) 4)
(*.f64 1/8 (*.f64 4 (*.f64 4 (+.f64 x (*.f64 (sin.f64 y) (+.f64 z z))))))
(/.f64 (+.f64 (*.f64 (sin.f64 y) (*.f64 z 4)) (+.f64 x x)) 1)
(/.f64 (*.f64 4 (+.f64 x (*.f64 (sin.f64 y) (+.f64 z z)))) 2)
(/.f64 (*.f64 (+.f64 x (*.f64 (sin.f64 y) (+.f64 z z))) 8) 4)
(/.f64 (*.f64 4 (*.f64 4 (+.f64 x (*.f64 (sin.f64 y) (+.f64 z z))))) 8)
(/.f64 (*.f64 2 (*.f64 4 (*.f64 4 (+.f64 x (*.f64 (sin.f64 y) (+.f64 z z)))))) 16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 4 (*.f64 4 (+.f64 x (*.f64 (sin.f64 y) (+.f64 z z))))))) 32)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 4 (*.f64 4 (+.f64 x (*.f64 (sin.f64 y) (+.f64 z z)))))))) 64)
(pow.f64 (+.f64 (*.f64 (sin.f64 y) (*.f64 z 4)) (+.f64 x x)) 1)
(-.f64 (+.f64 x (+.f64 x (*.f64 (sin.f64 y) (+.f64 z z)))) 0)
(*.f64 4 (/.f64 (*.f64 4 (+.f64 x (*.f64 (sin.f64 y) z))) 8))
(*.f64 2 (/.f64 (*.f64 4 (+.f64 x (*.f64 (sin.f64 y) z))) 4))
(*.f64 (+.f64 x (+.f64 x (*.f64 (sin.f64 y) (+.f64 z z)))) 1)
(*.f64 1 (+.f64 x (+.f64 x (*.f64 (sin.f64 y) (+.f64 z z)))))
(*.f64 (*.f64 4 (+.f64 x (*.f64 (sin.f64 y) z))) 1/2)
(*.f64 1/2 (*.f64 4 (+.f64 x (*.f64 (sin.f64 y) z))))
(*.f64 (*.f64 2 (*.f64 4 (+.f64 x (*.f64 (sin.f64 y) z)))) 1/4)
(*.f64 1/4 (*.f64 2 (*.f64 4 (+.f64 x (*.f64 (sin.f64 y) z)))))
(*.f64 (/.f64 (*.f64 4 (+.f64 x (*.f64 (sin.f64 y) z))) 4) 2)
(*.f64 (/.f64 (*.f64 4 (+.f64 x (*.f64 (sin.f64 y) z))) 8) 4)
(/.f64 (+.f64 x (+.f64 x (*.f64 (sin.f64 y) (+.f64 z z)))) 1)
(/.f64 (*.f64 4 (+.f64 x (*.f64 (sin.f64 y) z))) 2)
(/.f64 (*.f64 2 (*.f64 4 (+.f64 x (*.f64 (sin.f64 y) z)))) 4)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 4 (+.f64 x (*.f64 (sin.f64 y) z))))) 8)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 4 (+.f64 x (*.f64 (sin.f64 y) z)))))) 16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 4 (+.f64 x (*.f64 (sin.f64 y) z))))))) 32)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 4 (+.f64 x (*.f64 (sin.f64 y) z))))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 4 (+.f64 x (*.f64 (sin.f64 y) z)))))))) 64)
(pow.f64 (+.f64 x (+.f64 x (*.f64 (sin.f64 y) (+.f64 z z)))) 1)
Outputs
(*.f64 4 (*.f64 y z))
(+.f64 (*.f64 -2/3 (*.f64 (pow.f64 y 3) z)) (*.f64 4 (*.f64 y z)))
(+.f64 (*.f64 4 (*.f64 y z)) (*.f64 (pow.f64 y 3) (*.f64 z -2/3)))
(+.f64 (*.f64 4 (*.f64 y z)) (*.f64 z (*.f64 -2/3 (pow.f64 y 3))))
(*.f64 z (+.f64 (*.f64 -2/3 (pow.f64 y 3)) (*.f64 4 y)))
(+.f64 (*.f64 -2/3 (*.f64 (pow.f64 y 3) z)) (+.f64 (*.f64 1/30 (*.f64 (pow.f64 y 5) z)) (*.f64 4 (*.f64 y z))))
(+.f64 (+.f64 (*.f64 4 (*.f64 y z)) (*.f64 (pow.f64 y 3) (*.f64 z -2/3))) (*.f64 (pow.f64 y 5) (*.f64 z 1/30)))
(+.f64 (*.f64 4 (*.f64 y z)) (+.f64 (*.f64 z (*.f64 1/30 (pow.f64 y 5))) (*.f64 z (*.f64 -2/3 (pow.f64 y 3)))))
(+.f64 (*.f64 4 (*.f64 y z)) (+.f64 (*.f64 (pow.f64 y 3) (*.f64 z -2/3)) (*.f64 (pow.f64 y 5) (*.f64 z 1/30))))
(+.f64 (*.f64 4 (*.f64 y z)) (*.f64 z (+.f64 (*.f64 1/30 (pow.f64 y 5)) (*.f64 -2/3 (pow.f64 y 3)))))
(+.f64 (*.f64 4 (*.f64 y z)) (*.f64 z (+.f64 (*.f64 -2/3 (pow.f64 y 3)) (*.f64 1/30 (pow.f64 y 5)))))
(+.f64 (*.f64 -2/3 (*.f64 (pow.f64 y 3) z)) (+.f64 (*.f64 1/30 (*.f64 (pow.f64 y 5) z)) (+.f64 (*.f64 4 (*.f64 y z)) (*.f64 -1/1260 (*.f64 (pow.f64 y 7) z)))))
(+.f64 (*.f64 (pow.f64 y 5) (*.f64 z 1/30)) (+.f64 (+.f64 (*.f64 4 (*.f64 y z)) (*.f64 -1/1260 (*.f64 z (pow.f64 y 7)))) (*.f64 (pow.f64 y 3) (*.f64 z -2/3))))
(+.f64 (*.f64 4 (*.f64 y z)) (+.f64 (+.f64 (*.f64 z (*.f64 1/30 (pow.f64 y 5))) (*.f64 z (*.f64 (pow.f64 y 7) -1/1260))) (*.f64 z (*.f64 -2/3 (pow.f64 y 3)))))
(+.f64 (*.f64 4 (*.f64 y z)) (+.f64 (*.f64 (pow.f64 y 3) (*.f64 z -2/3)) (+.f64 (*.f64 (pow.f64 y 5) (*.f64 z 1/30)) (*.f64 z (*.f64 -1/1260 (pow.f64 y 7))))))
(+.f64 (*.f64 z (+.f64 (*.f64 -2/3 (pow.f64 y 3)) (*.f64 4 y))) (*.f64 z (+.f64 (*.f64 -1/1260 (pow.f64 y 7)) (*.f64 1/30 (pow.f64 y 5)))))
(+.f64 (*.f64 z (+.f64 (*.f64 -2/3 (pow.f64 y 3)) (*.f64 4 y))) (*.f64 z (+.f64 (*.f64 1/30 (pow.f64 y 5)) (*.f64 -1/1260 (pow.f64 y 7)))))
(*.f64 4 (*.f64 z (sin.f64 y)))
(*.f64 4 (*.f64 z (sin.f64 y)))
(*.f64 4 (*.f64 z (sin.f64 y)))
(*.f64 4 (*.f64 z (sin.f64 y)))
(*.f64 4 (*.f64 z (sin.f64 y)))
(*.f64 4 (*.f64 z (sin.f64 y)))
(*.f64 4 (*.f64 z (sin.f64 y)))
(*.f64 4 (*.f64 z (sin.f64 y)))
(*.f64 4 (*.f64 z (sin.f64 y)))
(*.f64 4 (*.f64 z (sin.f64 y)))
(*.f64 4 (*.f64 z (sin.f64 y)))
(*.f64 4 (*.f64 z (sin.f64 y)))
(*.f64 4 (*.f64 z (sin.f64 y)))
(*.f64 4 (*.f64 z (sin.f64 y)))
(*.f64 4 (*.f64 z (sin.f64 y)))
(*.f64 4 (*.f64 z (sin.f64 y)))
(*.f64 4 (*.f64 z (sin.f64 y)))
(*.f64 4 (*.f64 z (sin.f64 y)))
(*.f64 4 (*.f64 z (sin.f64 y)))
(*.f64 4 (*.f64 z (sin.f64 y)))
(*.f64 4 (*.f64 z (sin.f64 y)))
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) x)
(+.f64 x (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) x)
(+.f64 x (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) x)
(+.f64 x (*.f64 4 (*.f64 z (sin.f64 y))))
x
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) x)
(+.f64 x (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) x)
(+.f64 x (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) x)
(+.f64 x (*.f64 4 (*.f64 z (sin.f64 y))))
x
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) x)
(+.f64 x (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) x)
(+.f64 x (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) x)
(+.f64 x (*.f64 4 (*.f64 z (sin.f64 y))))
x
(+.f64 (*.f64 4 (*.f64 y z)) x)
(+.f64 (*.f64 -2/3 (*.f64 (pow.f64 y 3) z)) (+.f64 (*.f64 4 (*.f64 y z)) x))
(+.f64 (*.f64 4 (*.f64 y z)) (+.f64 x (*.f64 (pow.f64 y 3) (*.f64 z -2/3))))
(+.f64 (*.f64 4 (*.f64 y z)) (+.f64 (*.f64 z (*.f64 -2/3 (pow.f64 y 3))) x))
(+.f64 (*.f64 (pow.f64 y 3) (*.f64 z -2/3)) (+.f64 (*.f64 4 (*.f64 y z)) x))
(+.f64 (*.f64 z (+.f64 (*.f64 -2/3 (pow.f64 y 3)) (*.f64 4 y))) x)
(+.f64 (*.f64 1/30 (*.f64 (pow.f64 y 5) z)) (+.f64 (*.f64 -2/3 (*.f64 (pow.f64 y 3) z)) (+.f64 (*.f64 4 (*.f64 y z)) x)))
(+.f64 (*.f64 (pow.f64 y 3) (*.f64 z -2/3)) (+.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (*.f64 (pow.f64 y 5) (*.f64 z 1/30))))
(+.f64 (*.f64 4 (*.f64 y z)) (+.f64 (+.f64 (*.f64 z (*.f64 -2/3 (pow.f64 y 3))) x) (*.f64 z (*.f64 1/30 (pow.f64 y 5)))))
(+.f64 (*.f64 (pow.f64 y 3) (*.f64 z -2/3)) (+.f64 (*.f64 4 (*.f64 y z)) (+.f64 x (*.f64 (pow.f64 y 5) (*.f64 z 1/30)))))
(+.f64 (*.f64 (pow.f64 y 3) (*.f64 z -2/3)) (+.f64 (*.f64 z (+.f64 (*.f64 1/30 (pow.f64 y 5)) (*.f64 4 y))) x))
(+.f64 (*.f64 z (*.f64 -2/3 (pow.f64 y 3))) (+.f64 (*.f64 z (+.f64 (*.f64 1/30 (pow.f64 y 5)) (*.f64 4 y))) x))
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) x)
(+.f64 x (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) x)
(+.f64 x (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) x)
(+.f64 x (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) x)
(+.f64 x (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) x)
(+.f64 x (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) x)
(+.f64 x (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) x)
(+.f64 x (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) x)
(+.f64 x (*.f64 4 (*.f64 z (sin.f64 y))))
x
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) x)
(+.f64 x (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) x)
(+.f64 x (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) x)
(+.f64 x (*.f64 4 (*.f64 z (sin.f64 y))))
(*.f64 4 (*.f64 z (sin.f64 y)))
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) x)
(+.f64 x (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) x)
(+.f64 x (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) x)
(+.f64 x (*.f64 4 (*.f64 z (sin.f64 y))))
(*.f64 4 (*.f64 z (sin.f64 y)))
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) x)
(+.f64 x (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) x)
(+.f64 x (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) x)
(+.f64 x (*.f64 4 (*.f64 z (sin.f64 y))))
(*.f64 4 (*.f64 z (sin.f64 y)))
(+.f64 (*.f64 2 x) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) (*.f64 x 2))
(+.f64 (*.f64 x 2) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 x (+.f64 x (*.f64 4 (*.f64 z (sin.f64 y)))))
(+.f64 (*.f64 2 x) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) (*.f64 x 2))
(+.f64 (*.f64 x 2) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 x (+.f64 x (*.f64 4 (*.f64 z (sin.f64 y)))))
(+.f64 (*.f64 2 x) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) (*.f64 x 2))
(+.f64 (*.f64 x 2) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 x (+.f64 x (*.f64 4 (*.f64 z (sin.f64 y)))))
(*.f64 2 x)
(*.f64 x 2)
(+.f64 (*.f64 2 x) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) (*.f64 x 2))
(+.f64 (*.f64 x 2) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 x (+.f64 x (*.f64 4 (*.f64 z (sin.f64 y)))))
(+.f64 (*.f64 2 x) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) (*.f64 x 2))
(+.f64 (*.f64 x 2) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 x (+.f64 x (*.f64 4 (*.f64 z (sin.f64 y)))))
(+.f64 (*.f64 2 x) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) (*.f64 x 2))
(+.f64 (*.f64 x 2) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 x (+.f64 x (*.f64 4 (*.f64 z (sin.f64 y)))))
(*.f64 2 x)
(*.f64 x 2)
(+.f64 (*.f64 2 x) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) (*.f64 x 2))
(+.f64 (*.f64 x 2) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 x (+.f64 x (*.f64 4 (*.f64 z (sin.f64 y)))))
(+.f64 (*.f64 2 x) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) (*.f64 x 2))
(+.f64 (*.f64 x 2) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 x (+.f64 x (*.f64 4 (*.f64 z (sin.f64 y)))))
(+.f64 (*.f64 2 x) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) (*.f64 x 2))
(+.f64 (*.f64 x 2) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 x (+.f64 x (*.f64 4 (*.f64 z (sin.f64 y)))))
(*.f64 2 x)
(*.f64 x 2)
(+.f64 (*.f64 2 x) (*.f64 4 (*.f64 y z)))
(+.f64 (*.f64 4 (*.f64 y z)) (*.f64 x 2))
(+.f64 (*.f64 2 x) (+.f64 (*.f64 -2/3 (*.f64 (pow.f64 y 3) z)) (*.f64 4 (*.f64 y z))))
(+.f64 (*.f64 (pow.f64 y 3) (*.f64 z -2/3)) (+.f64 (*.f64 4 (*.f64 y z)) (*.f64 x 2)))
(+.f64 (*.f64 4 (*.f64 y z)) (+.f64 (*.f64 z (*.f64 -2/3 (pow.f64 y 3))) (*.f64 x 2)))
(+.f64 (*.f64 4 (*.f64 y z)) (+.f64 (*.f64 (pow.f64 y 3) (*.f64 z -2/3)) (*.f64 x 2)))
(+.f64 (*.f64 z (+.f64 (*.f64 -2/3 (pow.f64 y 3)) (*.f64 4 y))) (*.f64 x 2))
(+.f64 (*.f64 2 x) (+.f64 (*.f64 1/30 (*.f64 (pow.f64 y 5) z)) (+.f64 (*.f64 -2/3 (*.f64 (pow.f64 y 3) z)) (*.f64 4 (*.f64 y z)))))
(+.f64 (*.f64 (pow.f64 y 5) (*.f64 z 1/30)) (+.f64 (*.f64 (pow.f64 y 3) (*.f64 z -2/3)) (+.f64 (*.f64 4 (*.f64 y z)) (*.f64 x 2))))
(+.f64 (*.f64 z (*.f64 -2/3 (pow.f64 y 3))) (+.f64 (+.f64 (*.f64 4 (*.f64 y z)) (*.f64 z (*.f64 1/30 (pow.f64 y 5)))) (*.f64 x 2)))
(+.f64 (*.f64 4 (*.f64 y z)) (+.f64 (+.f64 (*.f64 (pow.f64 y 3) (*.f64 z -2/3)) (*.f64 x 2)) (*.f64 (pow.f64 y 5) (*.f64 z 1/30))))
(+.f64 (*.f64 z (+.f64 (*.f64 -2/3 (pow.f64 y 3)) (*.f64 4 y))) (+.f64 (*.f64 (pow.f64 y 5) (*.f64 z 1/30)) (*.f64 x 2)))
(+.f64 (*.f64 z (+.f64 (*.f64 -2/3 (pow.f64 y 3)) (*.f64 4 y))) (+.f64 (*.f64 1/30 (*.f64 z (pow.f64 y 5))) (*.f64 x 2)))
(+.f64 (*.f64 2 x) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) (*.f64 x 2))
(+.f64 (*.f64 x 2) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 x (+.f64 x (*.f64 4 (*.f64 z (sin.f64 y)))))
(+.f64 (*.f64 2 x) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) (*.f64 x 2))
(+.f64 (*.f64 x 2) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 x (+.f64 x (*.f64 4 (*.f64 z (sin.f64 y)))))
(+.f64 (*.f64 2 x) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) (*.f64 x 2))
(+.f64 (*.f64 x 2) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 x (+.f64 x (*.f64 4 (*.f64 z (sin.f64 y)))))
(+.f64 (*.f64 2 x) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) (*.f64 x 2))
(+.f64 (*.f64 x 2) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 x (+.f64 x (*.f64 4 (*.f64 z (sin.f64 y)))))
(+.f64 (*.f64 2 x) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) (*.f64 x 2))
(+.f64 (*.f64 x 2) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 x (+.f64 x (*.f64 4 (*.f64 z (sin.f64 y)))))
(+.f64 (*.f64 2 x) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) (*.f64 x 2))
(+.f64 (*.f64 x 2) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 x (+.f64 x (*.f64 4 (*.f64 z (sin.f64 y)))))
(+.f64 (*.f64 2 x) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) (*.f64 x 2))
(+.f64 (*.f64 x 2) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 x (+.f64 x (*.f64 4 (*.f64 z (sin.f64 y)))))
(+.f64 (*.f64 2 x) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) (*.f64 x 2))
(+.f64 (*.f64 x 2) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 x (+.f64 x (*.f64 4 (*.f64 z (sin.f64 y)))))
(*.f64 2 x)
(*.f64 x 2)
(+.f64 (*.f64 2 x) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) (*.f64 x 2))
(+.f64 (*.f64 x 2) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 x (+.f64 x (*.f64 4 (*.f64 z (sin.f64 y)))))
(+.f64 (*.f64 2 x) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) (*.f64 x 2))
(+.f64 (*.f64 x 2) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 x (+.f64 x (*.f64 4 (*.f64 z (sin.f64 y)))))
(+.f64 (*.f64 2 x) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) (*.f64 x 2))
(+.f64 (*.f64 x 2) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 x (+.f64 x (*.f64 4 (*.f64 z (sin.f64 y)))))
(*.f64 4 (*.f64 z (sin.f64 y)))
(+.f64 (*.f64 2 x) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) (*.f64 x 2))
(+.f64 (*.f64 x 2) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 x (+.f64 x (*.f64 4 (*.f64 z (sin.f64 y)))))
(+.f64 (*.f64 2 x) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) (*.f64 x 2))
(+.f64 (*.f64 x 2) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 x (+.f64 x (*.f64 4 (*.f64 z (sin.f64 y)))))
(+.f64 (*.f64 2 x) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) (*.f64 x 2))
(+.f64 (*.f64 x 2) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 x (+.f64 x (*.f64 4 (*.f64 z (sin.f64 y)))))
(*.f64 4 (*.f64 z (sin.f64 y)))
(+.f64 (*.f64 2 x) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) (*.f64 x 2))
(+.f64 (*.f64 x 2) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 x (+.f64 x (*.f64 4 (*.f64 z (sin.f64 y)))))
(+.f64 (*.f64 2 x) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) (*.f64 x 2))
(+.f64 (*.f64 x 2) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 x (+.f64 x (*.f64 4 (*.f64 z (sin.f64 y)))))
(+.f64 (*.f64 2 x) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) (*.f64 x 2))
(+.f64 (*.f64 x 2) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 x (+.f64 x (*.f64 4 (*.f64 z (sin.f64 y)))))
(*.f64 2 (*.f64 z (sin.f64 y)))
(*.f64 z (*.f64 (sin.f64 y) 2))
(*.f64 (sin.f64 y) (*.f64 z 2))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 x 2) (*.f64 z (*.f64 (sin.f64 y) 2)))
(*.f64 2 (+.f64 (*.f64 z (sin.f64 y)) x))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 x 2) (*.f64 z (*.f64 (sin.f64 y) 2)))
(*.f64 2 (+.f64 (*.f64 z (sin.f64 y)) x))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 x 2) (*.f64 z (*.f64 (sin.f64 y) 2)))
(*.f64 2 (+.f64 (*.f64 z (sin.f64 y)) x))
(*.f64 2 x)
(*.f64 x 2)
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 x 2) (*.f64 z (*.f64 (sin.f64 y) 2)))
(*.f64 2 (+.f64 (*.f64 z (sin.f64 y)) x))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 x 2) (*.f64 z (*.f64 (sin.f64 y) 2)))
(*.f64 2 (+.f64 (*.f64 z (sin.f64 y)) x))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 x 2) (*.f64 z (*.f64 (sin.f64 y) 2)))
(*.f64 2 (+.f64 (*.f64 z (sin.f64 y)) x))
(*.f64 2 x)
(*.f64 x 2)
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 x 2) (*.f64 z (*.f64 (sin.f64 y) 2)))
(*.f64 2 (+.f64 (*.f64 z (sin.f64 y)) x))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 x 2) (*.f64 z (*.f64 (sin.f64 y) 2)))
(*.f64 2 (+.f64 (*.f64 z (sin.f64 y)) x))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 x 2) (*.f64 z (*.f64 (sin.f64 y) 2)))
(*.f64 2 (+.f64 (*.f64 z (sin.f64 y)) x))
(*.f64 2 x)
(*.f64 x 2)
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 y z)))
(+.f64 (*.f64 x 2) (*.f64 y (*.f64 z 2)))
(*.f64 2 (+.f64 (*.f64 y z) x))
(+.f64 (*.f64 2 x) (+.f64 (*.f64 2 (*.f64 y z)) (*.f64 -1/3 (*.f64 (pow.f64 y 3) z))))
(+.f64 (*.f64 x 2) (+.f64 (*.f64 y (*.f64 z 2)) (*.f64 (pow.f64 y 3) (*.f64 z -1/3))))
(+.f64 (*.f64 z (*.f64 -1/3 (pow.f64 y 3))) (*.f64 2 (+.f64 (*.f64 y z) x)))
(+.f64 (*.f64 2 (+.f64 (*.f64 y z) x)) (*.f64 z (*.f64 (pow.f64 y 3) -1/3)))
(+.f64 (*.f64 x 2) (*.f64 z (+.f64 (*.f64 (pow.f64 y 3) -1/3) (*.f64 y 2))))
(+.f64 (*.f64 2 x) (+.f64 (*.f64 2 (*.f64 y z)) (+.f64 (*.f64 1/60 (*.f64 (pow.f64 y 5) z)) (*.f64 -1/3 (*.f64 (pow.f64 y 3) z)))))
(+.f64 (*.f64 x 2) (+.f64 (*.f64 y (*.f64 z 2)) (+.f64 (*.f64 (pow.f64 y 3) (*.f64 z -1/3)) (*.f64 (pow.f64 y 5) (*.f64 z 1/60)))))
(+.f64 (*.f64 z (*.f64 1/60 (pow.f64 y 5))) (+.f64 (*.f64 z (*.f64 -1/3 (pow.f64 y 3))) (*.f64 2 (+.f64 (*.f64 y z) x))))
(+.f64 (*.f64 2 (+.f64 (*.f64 y z) x)) (+.f64 (*.f64 z (*.f64 (pow.f64 y 3) -1/3)) (*.f64 (pow.f64 y 5) (*.f64 z 1/60))))
(+.f64 (*.f64 2 (+.f64 (*.f64 y z) x)) (*.f64 z (+.f64 (*.f64 (pow.f64 y 5) 1/60) (*.f64 (pow.f64 y 3) -1/3))))
(+.f64 (*.f64 2 (+.f64 (*.f64 y z) x)) (*.f64 z (+.f64 (*.f64 (pow.f64 y 3) -1/3) (*.f64 (pow.f64 y 5) 1/60))))
(+.f64 (*.f64 1/2 (+.f64 (*.f64 2 x) (*.f64 4 (*.f64 z (sin.f64 y))))) x)
(+.f64 x (*.f64 (+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) (*.f64 x 2)) 1/2))
(+.f64 x (*.f64 (+.f64 (*.f64 x 2) (*.f64 4 (*.f64 z (sin.f64 y)))) 1/2))
(+.f64 x (*.f64 1/2 (+.f64 x (+.f64 x (*.f64 4 (*.f64 z (sin.f64 y)))))))
(+.f64 (*.f64 1/2 (+.f64 (*.f64 2 x) (*.f64 4 (*.f64 z (sin.f64 y))))) x)
(+.f64 x (*.f64 (+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) (*.f64 x 2)) 1/2))
(+.f64 x (*.f64 (+.f64 (*.f64 x 2) (*.f64 4 (*.f64 z (sin.f64 y)))) 1/2))
(+.f64 x (*.f64 1/2 (+.f64 x (+.f64 x (*.f64 4 (*.f64 z (sin.f64 y)))))))
(+.f64 (*.f64 1/2 (+.f64 (*.f64 2 x) (*.f64 4 (*.f64 z (sin.f64 y))))) x)
(+.f64 x (*.f64 (+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) (*.f64 x 2)) 1/2))
(+.f64 x (*.f64 (+.f64 (*.f64 x 2) (*.f64 4 (*.f64 z (sin.f64 y)))) 1/2))
(+.f64 x (*.f64 1/2 (+.f64 x (+.f64 x (*.f64 4 (*.f64 z (sin.f64 y)))))))
(+.f64 (*.f64 1/2 (+.f64 (*.f64 2 x) (*.f64 4 (*.f64 z (sin.f64 y))))) x)
(+.f64 x (*.f64 (+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) (*.f64 x 2)) 1/2))
(+.f64 x (*.f64 (+.f64 (*.f64 x 2) (*.f64 4 (*.f64 z (sin.f64 y)))) 1/2))
(+.f64 x (*.f64 1/2 (+.f64 x (+.f64 x (*.f64 4 (*.f64 z (sin.f64 y)))))))
(+.f64 (*.f64 1/2 (+.f64 (*.f64 2 x) (*.f64 4 (*.f64 z (sin.f64 y))))) x)
(+.f64 x (*.f64 (+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) (*.f64 x 2)) 1/2))
(+.f64 x (*.f64 (+.f64 (*.f64 x 2) (*.f64 4 (*.f64 z (sin.f64 y)))) 1/2))
(+.f64 x (*.f64 1/2 (+.f64 x (+.f64 x (*.f64 4 (*.f64 z (sin.f64 y)))))))
(+.f64 (*.f64 1/2 (+.f64 (*.f64 2 x) (*.f64 4 (*.f64 z (sin.f64 y))))) x)
(+.f64 x (*.f64 (+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) (*.f64 x 2)) 1/2))
(+.f64 x (*.f64 (+.f64 (*.f64 x 2) (*.f64 4 (*.f64 z (sin.f64 y)))) 1/2))
(+.f64 x (*.f64 1/2 (+.f64 x (+.f64 x (*.f64 4 (*.f64 z (sin.f64 y)))))))
(+.f64 (*.f64 1/2 (+.f64 (*.f64 2 x) (*.f64 4 (*.f64 z (sin.f64 y))))) x)
(+.f64 x (*.f64 (+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) (*.f64 x 2)) 1/2))
(+.f64 x (*.f64 (+.f64 (*.f64 x 2) (*.f64 4 (*.f64 z (sin.f64 y)))) 1/2))
(+.f64 x (*.f64 1/2 (+.f64 x (+.f64 x (*.f64 4 (*.f64 z (sin.f64 y)))))))
(+.f64 (*.f64 1/2 (+.f64 (*.f64 2 x) (*.f64 4 (*.f64 z (sin.f64 y))))) x)
(+.f64 x (*.f64 (+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) (*.f64 x 2)) 1/2))
(+.f64 x (*.f64 (+.f64 (*.f64 x 2) (*.f64 4 (*.f64 z (sin.f64 y)))) 1/2))
(+.f64 x (*.f64 1/2 (+.f64 x (+.f64 x (*.f64 4 (*.f64 z (sin.f64 y)))))))
(*.f64 2 x)
(*.f64 x 2)
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 x 2) (*.f64 z (*.f64 (sin.f64 y) 2)))
(*.f64 2 (+.f64 (*.f64 z (sin.f64 y)) x))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 x 2) (*.f64 z (*.f64 (sin.f64 y) 2)))
(*.f64 2 (+.f64 (*.f64 z (sin.f64 y)) x))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 x 2) (*.f64 z (*.f64 (sin.f64 y) 2)))
(*.f64 2 (+.f64 (*.f64 z (sin.f64 y)) x))
(*.f64 2 (*.f64 z (sin.f64 y)))
(*.f64 z (*.f64 (sin.f64 y) 2))
(*.f64 (sin.f64 y) (*.f64 z 2))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 x 2) (*.f64 z (*.f64 (sin.f64 y) 2)))
(*.f64 2 (+.f64 (*.f64 z (sin.f64 y)) x))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 x 2) (*.f64 z (*.f64 (sin.f64 y) 2)))
(*.f64 2 (+.f64 (*.f64 z (sin.f64 y)) x))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 x 2) (*.f64 z (*.f64 (sin.f64 y) 2)))
(*.f64 2 (+.f64 (*.f64 z (sin.f64 y)) x))
(*.f64 2 (*.f64 z (sin.f64 y)))
(*.f64 z (*.f64 (sin.f64 y) 2))
(*.f64 (sin.f64 y) (*.f64 z 2))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 x 2) (*.f64 z (*.f64 (sin.f64 y) 2)))
(*.f64 2 (+.f64 (*.f64 z (sin.f64 y)) x))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 x 2) (*.f64 z (*.f64 (sin.f64 y) 2)))
(*.f64 2 (+.f64 (*.f64 z (sin.f64 y)) x))
(+.f64 (*.f64 2 x) (*.f64 2 (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 x 2) (*.f64 z (*.f64 (sin.f64 y) 2)))
(*.f64 2 (+.f64 (*.f64 z (sin.f64 y)) x))
(+.f64 (*.f64 (sin.f64 y) (*.f64 z 4)) 0)
(*.f64 4 (*.f64 z (sin.f64 y)))
(+.f64 0 (*.f64 (sin.f64 y) (*.f64 z 4)))
(*.f64 4 (*.f64 z (sin.f64 y)))
(+.f64 (*.f64 (sin.f64 y) (+.f64 z z)) (*.f64 (sin.f64 y) (+.f64 z z)))
(*.f64 4 (*.f64 z (sin.f64 y)))
(-.f64 (*.f64 (sin.f64 y) (*.f64 z 4)) 0)
(*.f64 4 (*.f64 z (sin.f64 y)))
(/.f64 (*.f64 (sin.f64 y) (*.f64 z 4)) 1)
(*.f64 4 (*.f64 z (sin.f64 y)))
(/.f64 (*.f64 (sin.f64 y) (*.f64 z 8)) 2)
(*.f64 4 (*.f64 z (sin.f64 y)))
(/.f64 (*.f64 (sin.f64 y) (*.f64 z 16)) 4)
(*.f64 4 (*.f64 z (sin.f64 y)))
(/.f64 (*.f64 2 (*.f64 (sin.f64 y) (*.f64 z 16))) 8)
(*.f64 4 (*.f64 z (sin.f64 y)))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (sin.f64 y) (*.f64 z 16)))) 16)
(*.f64 4 (*.f64 z (sin.f64 y)))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (sin.f64 y) (*.f64 z 16))))) 32)
(*.f64 4 (*.f64 z (sin.f64 y)))
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (sin.f64 y) (*.f64 z 16))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (sin.f64 y) (*.f64 z 16)))))) 64)
(*.f64 4 (*.f64 z (sin.f64 y)))
(pow.f64 (*.f64 (sin.f64 y) (*.f64 z 4)) 1)
(*.f64 4 (*.f64 z (sin.f64 y)))
(-.f64 (+.f64 (*.f64 (sin.f64 y) (*.f64 z 4)) x) 0)
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) x)
(+.f64 x (*.f64 4 (*.f64 z (sin.f64 y))))
(*.f64 4 (/.f64 (+.f64 (*.f64 (sin.f64 y) (*.f64 z 4)) x) 4))
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) x)
(+.f64 x (*.f64 4 (*.f64 z (sin.f64 y))))
(*.f64 (+.f64 (*.f64 (sin.f64 y) (*.f64 z 4)) x) 1)
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) x)
(+.f64 x (*.f64 4 (*.f64 z (sin.f64 y))))
(*.f64 2 (*.f64 (+.f64 (*.f64 (sin.f64 y) (*.f64 z 4)) x) 1/2))
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) x)
(+.f64 x (*.f64 4 (*.f64 z (sin.f64 y))))
(*.f64 1 (+.f64 (*.f64 (sin.f64 y) (*.f64 z 4)) x))
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) x)
(+.f64 x (*.f64 4 (*.f64 z (sin.f64 y))))
(*.f64 (+.f64 x (+.f64 x (*.f64 (sin.f64 y) (*.f64 z 8)))) 1/2)
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) x)
(+.f64 x (*.f64 4 (*.f64 z (sin.f64 y))))
(*.f64 1/2 (+.f64 x (+.f64 x (*.f64 (sin.f64 y) (*.f64 z 8)))))
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) x)
(+.f64 x (*.f64 4 (*.f64 z (sin.f64 y))))
(*.f64 (*.f64 4 (+.f64 (*.f64 (sin.f64 y) (*.f64 z 4)) x)) 1/4)
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) x)
(+.f64 x (*.f64 4 (*.f64 z (sin.f64 y))))
(*.f64 1/4 (*.f64 4 (+.f64 (*.f64 (sin.f64 y) (*.f64 z 4)) x)))
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) x)
(+.f64 x (*.f64 4 (*.f64 z (sin.f64 y))))
(*.f64 (*.f64 (+.f64 (*.f64 (sin.f64 y) (*.f64 z 4)) x) 1/2) 2)
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) x)
(+.f64 x (*.f64 4 (*.f64 z (sin.f64 y))))
(*.f64 (/.f64 (+.f64 (*.f64 (sin.f64 y) (*.f64 z 4)) x) 4) 4)
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) x)
(+.f64 x (*.f64 4 (*.f64 z (sin.f64 y))))
(/.f64 (+.f64 (*.f64 (sin.f64 y) (*.f64 z 4)) x) 1)
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) x)
(+.f64 x (*.f64 4 (*.f64 z (sin.f64 y))))
(/.f64 (+.f64 x (+.f64 x (*.f64 (sin.f64 y) (*.f64 z 8)))) 2)
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) x)
(+.f64 x (*.f64 4 (*.f64 z (sin.f64 y))))
(/.f64 (*.f64 4 (+.f64 (*.f64 (sin.f64 y) (*.f64 z 4)) x)) 4)
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) x)
(+.f64 x (*.f64 4 (*.f64 z (sin.f64 y))))
(/.f64 (*.f64 2 (*.f64 4 (+.f64 (*.f64 (sin.f64 y) (*.f64 z 4)) x))) 8)
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) x)
(+.f64 x (*.f64 4 (*.f64 z (sin.f64 y))))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 4 (+.f64 (*.f64 (sin.f64 y) (*.f64 z 4)) x)))) 16)
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) x)
(+.f64 x (*.f64 4 (*.f64 z (sin.f64 y))))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 4 (+.f64 (*.f64 (sin.f64 y) (*.f64 z 4)) x))))) 32)
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) x)
(+.f64 x (*.f64 4 (*.f64 z (sin.f64 y))))
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 4 (+.f64 (*.f64 (sin.f64 y) (*.f64 z 4)) x))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 4 (+.f64 (*.f64 (sin.f64 y) (*.f64 z 4)) x)))))) 64)
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) x)
(+.f64 x (*.f64 4 (*.f64 z (sin.f64 y))))
(pow.f64 (+.f64 (*.f64 (sin.f64 y) (*.f64 z 4)) x) 1)
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) x)
(+.f64 x (*.f64 4 (*.f64 z (sin.f64 y))))
(-.f64 (+.f64 (*.f64 (sin.f64 y) (*.f64 z 4)) (+.f64 x x)) 0)
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) (*.f64 x 2))
(+.f64 (*.f64 x 2) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 x (+.f64 x (*.f64 4 (*.f64 z (sin.f64 y)))))
(*.f64 4 (*.f64 (+.f64 x (*.f64 (sin.f64 y) (+.f64 z z))) 1/2))
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) (*.f64 x 2))
(+.f64 (*.f64 x 2) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 x (+.f64 x (*.f64 4 (*.f64 z (sin.f64 y)))))
(*.f64 (+.f64 (*.f64 (sin.f64 y) (*.f64 z 4)) (+.f64 x x)) 1)
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) (*.f64 x 2))
(+.f64 (*.f64 x 2) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 x (+.f64 x (*.f64 4 (*.f64 z (sin.f64 y)))))
(*.f64 2 (+.f64 x (*.f64 (sin.f64 y) (+.f64 z z))))
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) (*.f64 x 2))
(+.f64 (*.f64 x 2) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 x (+.f64 x (*.f64 4 (*.f64 z (sin.f64 y)))))
(*.f64 (+.f64 x (*.f64 (sin.f64 y) (+.f64 z z))) 2)
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) (*.f64 x 2))
(+.f64 (*.f64 x 2) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 x (+.f64 x (*.f64 4 (*.f64 z (sin.f64 y)))))
(*.f64 1 (+.f64 (*.f64 (sin.f64 y) (*.f64 z 4)) (+.f64 x x)))
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) (*.f64 x 2))
(+.f64 (*.f64 x 2) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 x (+.f64 x (*.f64 4 (*.f64 z (sin.f64 y)))))
(*.f64 (*.f64 4 (+.f64 x (*.f64 (sin.f64 y) (+.f64 z z)))) 1/2)
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) (*.f64 x 2))
(+.f64 (*.f64 x 2) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 x (+.f64 x (*.f64 4 (*.f64 z (sin.f64 y)))))
(*.f64 (*.f64 (+.f64 x (*.f64 (sin.f64 y) (+.f64 z z))) 8) 1/4)
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) (*.f64 x 2))
(+.f64 (*.f64 x 2) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 x (+.f64 x (*.f64 4 (*.f64 z (sin.f64 y)))))
(*.f64 1/2 (*.f64 4 (+.f64 x (*.f64 (sin.f64 y) (+.f64 z z)))))
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) (*.f64 x 2))
(+.f64 (*.f64 x 2) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 x (+.f64 x (*.f64 4 (*.f64 z (sin.f64 y)))))
(*.f64 (*.f64 4 (*.f64 4 (+.f64 x (*.f64 (sin.f64 y) (+.f64 z z))))) 1/8)
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) (*.f64 x 2))
(+.f64 (*.f64 x 2) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 x (+.f64 x (*.f64 4 (*.f64 z (sin.f64 y)))))
(*.f64 1/4 (*.f64 (+.f64 x (*.f64 (sin.f64 y) (+.f64 z z))) 8))
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) (*.f64 x 2))
(+.f64 (*.f64 x 2) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 x (+.f64 x (*.f64 4 (*.f64 z (sin.f64 y)))))
(*.f64 (*.f64 (+.f64 x (*.f64 (sin.f64 y) (+.f64 z z))) 1/2) 4)
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) (*.f64 x 2))
(+.f64 (*.f64 x 2) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 x (+.f64 x (*.f64 4 (*.f64 z (sin.f64 y)))))
(*.f64 1/8 (*.f64 4 (*.f64 4 (+.f64 x (*.f64 (sin.f64 y) (+.f64 z z))))))
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) (*.f64 x 2))
(+.f64 (*.f64 x 2) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 x (+.f64 x (*.f64 4 (*.f64 z (sin.f64 y)))))
(/.f64 (+.f64 (*.f64 (sin.f64 y) (*.f64 z 4)) (+.f64 x x)) 1)
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) (*.f64 x 2))
(+.f64 (*.f64 x 2) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 x (+.f64 x (*.f64 4 (*.f64 z (sin.f64 y)))))
(/.f64 (*.f64 4 (+.f64 x (*.f64 (sin.f64 y) (+.f64 z z)))) 2)
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) (*.f64 x 2))
(+.f64 (*.f64 x 2) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 x (+.f64 x (*.f64 4 (*.f64 z (sin.f64 y)))))
(/.f64 (*.f64 (+.f64 x (*.f64 (sin.f64 y) (+.f64 z z))) 8) 4)
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) (*.f64 x 2))
(+.f64 (*.f64 x 2) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 x (+.f64 x (*.f64 4 (*.f64 z (sin.f64 y)))))
(/.f64 (*.f64 4 (*.f64 4 (+.f64 x (*.f64 (sin.f64 y) (+.f64 z z))))) 8)
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) (*.f64 x 2))
(+.f64 (*.f64 x 2) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 x (+.f64 x (*.f64 4 (*.f64 z (sin.f64 y)))))
(/.f64 (*.f64 2 (*.f64 4 (*.f64 4 (+.f64 x (*.f64 (sin.f64 y) (+.f64 z z)))))) 16)
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) (*.f64 x 2))
(+.f64 (*.f64 x 2) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 x (+.f64 x (*.f64 4 (*.f64 z (sin.f64 y)))))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 4 (*.f64 4 (+.f64 x (*.f64 (sin.f64 y) (+.f64 z z))))))) 32)
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) (*.f64 x 2))
(+.f64 (*.f64 x 2) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 x (+.f64 x (*.f64 4 (*.f64 z (sin.f64 y)))))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 4 (*.f64 4 (+.f64 x (*.f64 (sin.f64 y) (+.f64 z z)))))))) 64)
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) (*.f64 x 2))
(+.f64 (*.f64 x 2) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 x (+.f64 x (*.f64 4 (*.f64 z (sin.f64 y)))))
(pow.f64 (+.f64 (*.f64 (sin.f64 y) (*.f64 z 4)) (+.f64 x x)) 1)
(+.f64 (*.f64 4 (*.f64 z (sin.f64 y))) (*.f64 x 2))
(+.f64 (*.f64 x 2) (*.f64 4 (*.f64 z (sin.f64 y))))
(+.f64 x (+.f64 x (*.f64 4 (*.f64 z (sin.f64 y)))))
(-.f64 (+.f64 x (+.f64 x (*.f64 (sin.f64 y) (+.f64 z z)))) 0)
(+.f64 (*.f64 x 2) (*.f64 z (*.f64 (sin.f64 y) 2)))
(*.f64 2 (+.f64 (*.f64 z (sin.f64 y)) x))
(*.f64 4 (/.f64 (*.f64 4 (+.f64 x (*.f64 (sin.f64 y) z))) 8))
(+.f64 (*.f64 x 2) (*.f64 z (*.f64 (sin.f64 y) 2)))
(*.f64 2 (+.f64 (*.f64 z (sin.f64 y)) x))
(*.f64 2 (/.f64 (*.f64 4 (+.f64 x (*.f64 (sin.f64 y) z))) 4))
(+.f64 (*.f64 x 2) (*.f64 z (*.f64 (sin.f64 y) 2)))
(*.f64 2 (+.f64 (*.f64 z (sin.f64 y)) x))
(*.f64 (+.f64 x (+.f64 x (*.f64 (sin.f64 y) (+.f64 z z)))) 1)
(+.f64 (*.f64 x 2) (*.f64 z (*.f64 (sin.f64 y) 2)))
(*.f64 2 (+.f64 (*.f64 z (sin.f64 y)) x))
(*.f64 1 (+.f64 x (+.f64 x (*.f64 (sin.f64 y) (+.f64 z z)))))
(+.f64 (*.f64 x 2) (*.f64 z (*.f64 (sin.f64 y) 2)))
(*.f64 2 (+.f64 (*.f64 z (sin.f64 y)) x))
(*.f64 (*.f64 4 (+.f64 x (*.f64 (sin.f64 y) z))) 1/2)
(+.f64 (*.f64 x 2) (*.f64 z (*.f64 (sin.f64 y) 2)))
(*.f64 2 (+.f64 (*.f64 z (sin.f64 y)) x))
(*.f64 1/2 (*.f64 4 (+.f64 x (*.f64 (sin.f64 y) z))))
(+.f64 (*.f64 x 2) (*.f64 z (*.f64 (sin.f64 y) 2)))
(*.f64 2 (+.f64 (*.f64 z (sin.f64 y)) x))
(*.f64 (*.f64 2 (*.f64 4 (+.f64 x (*.f64 (sin.f64 y) z)))) 1/4)
(+.f64 (*.f64 x 2) (*.f64 z (*.f64 (sin.f64 y) 2)))
(*.f64 2 (+.f64 (*.f64 z (sin.f64 y)) x))
(*.f64 1/4 (*.f64 2 (*.f64 4 (+.f64 x (*.f64 (sin.f64 y) z)))))
(+.f64 (*.f64 x 2) (*.f64 z (*.f64 (sin.f64 y) 2)))
(*.f64 2 (+.f64 (*.f64 z (sin.f64 y)) x))
(*.f64 (/.f64 (*.f64 4 (+.f64 x (*.f64 (sin.f64 y) z))) 4) 2)
(+.f64 (*.f64 x 2) (*.f64 z (*.f64 (sin.f64 y) 2)))
(*.f64 2 (+.f64 (*.f64 z (sin.f64 y)) x))
(*.f64 (/.f64 (*.f64 4 (+.f64 x (*.f64 (sin.f64 y) z))) 8) 4)
(+.f64 (*.f64 x 2) (*.f64 z (*.f64 (sin.f64 y) 2)))
(*.f64 2 (+.f64 (*.f64 z (sin.f64 y)) x))
(/.f64 (+.f64 x (+.f64 x (*.f64 (sin.f64 y) (+.f64 z z)))) 1)
(+.f64 (*.f64 x 2) (*.f64 z (*.f64 (sin.f64 y) 2)))
(*.f64 2 (+.f64 (*.f64 z (sin.f64 y)) x))
(/.f64 (*.f64 4 (+.f64 x (*.f64 (sin.f64 y) z))) 2)
(+.f64 (*.f64 x 2) (*.f64 z (*.f64 (sin.f64 y) 2)))
(*.f64 2 (+.f64 (*.f64 z (sin.f64 y)) x))
(/.f64 (*.f64 2 (*.f64 4 (+.f64 x (*.f64 (sin.f64 y) z)))) 4)
(+.f64 (*.f64 x 2) (*.f64 z (*.f64 (sin.f64 y) 2)))
(*.f64 2 (+.f64 (*.f64 z (sin.f64 y)) x))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 4 (+.f64 x (*.f64 (sin.f64 y) z))))) 8)
(+.f64 (*.f64 x 2) (*.f64 z (*.f64 (sin.f64 y) 2)))
(*.f64 2 (+.f64 (*.f64 z (sin.f64 y)) x))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 4 (+.f64 x (*.f64 (sin.f64 y) z)))))) 16)
(+.f64 (*.f64 x 2) (*.f64 z (*.f64 (sin.f64 y) 2)))
(*.f64 2 (+.f64 (*.f64 z (sin.f64 y)) x))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 4 (+.f64 x (*.f64 (sin.f64 y) z))))))) 32)
(+.f64 (*.f64 x 2) (*.f64 z (*.f64 (sin.f64 y) 2)))
(*.f64 2 (+.f64 (*.f64 z (sin.f64 y)) x))
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 4 (+.f64 x (*.f64 (sin.f64 y) z))))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 4 (+.f64 x (*.f64 (sin.f64 y) z)))))))) 64)
(+.f64 (*.f64 x 2) (*.f64 z (*.f64 (sin.f64 y) 2)))
(*.f64 2 (+.f64 (*.f64 z (sin.f64 y)) x))
(pow.f64 (+.f64 x (+.f64 x (*.f64 (sin.f64 y) (+.f64 z z)))) 1)
(+.f64 (*.f64 x 2) (*.f64 z (*.f64 (sin.f64 y) 2)))
(*.f64 2 (+.f64 (*.f64 z (sin.f64 y)) x))

eval62.0ms (0.6%)

Compiler

Compiled 3907 to 2489 computations (36.3% saved)

prune37.0ms (0.3%)

Pruning

11 alts after pruning (2 fresh and 9 done)

PrunedKeptTotal
New2091210
Fresh011
Picked011
Done088
Total20911220
Error
0.1b
Counts
220 → 11
Alt Table
Click to see full alt table
StatusErrorProgram
51.7b
(+.f64 (*.f64 z (*.f64 (pow.f64 y 3) -1/6)) (+.f64 (*.f64 y z) (*.f64 z (*.f64 (pow.f64 y 5) 1/120))))
30.0b
(+.f64 (*.f64 y z) x)
0.1b
(+.f64 (*.f64 x (cos.f64 y)) (*.f64 z (sin.f64 y)))
13.9b
(+.f64 x (*.f64 z (sin.f64 y)))
27.0b
(*.f64 (cos.f64 y) x)
35.7b
(*.f64 z (sin.f64 y))
51.3b
(*.f64 y z)
13.9b
(*.f64 1/2 (+.f64 x (/.f64 (+.f64 x (+.f64 x (*.f64 (sin.f64 y) (*.f64 z 4)))) 2)))
30.0b
(*.f64 1/2 (+.f64 x (+.f64 (*.f64 z (*.f64 2 y)) x)))
47.4b
(*.f64 1/2 (+.f64 x (*.f64 2 (*.f64 y z))))
40.5b
x
Compiler

Compiled 120 to 85 computations (29.2% saved)

regimes36.0ms (0.3%)

Counts
14 → 1
Calls
Call 1
Inputs
x
(*.f64 y z)
(+.f64 (*.f64 y z) x)
(*.f64 1/2 (+.f64 x (*.f64 2 (*.f64 y z))))
(*.f64 1/2 (+.f64 x (+.f64 (*.f64 z (*.f64 2 y)) x)))
(*.f64 z (sin.f64 y))
(*.f64 (cos.f64 y) x)
(+.f64 x (*.f64 z (sin.f64 y)))
(+.f64 (*.f64 x (cos.f64 y)) (*.f64 y z))
(*.f64 1/2 (+.f64 x (+.f64 x (*.f64 z (*.f64 (sin.f64 y) 2)))))
(*.f64 1/2 (+.f64 x (/.f64 (+.f64 x (+.f64 x (*.f64 (sin.f64 y) (*.f64 z 4)))) 2)))
(+.f64 (*.f64 x (cos.f64 y)) (*.f64 z (sin.f64 y)))
(+.f64 (*.f64 z (*.f64 (pow.f64 y 3) -1/6)) (+.f64 (*.f64 y z) (*.f64 z (*.f64 (pow.f64 y 5) 1/120))))
(+.f64 (*.f64 x (cos.f64 y)) (+.f64 (*.f64 z (*.f64 (pow.f64 y 3) -1/6)) (+.f64 (*.f64 y z) (*.f64 z (*.f64 (pow.f64 y 5) 1/120)))))
Outputs
(+.f64 (*.f64 x (cos.f64 y)) (*.f64 z (sin.f64 y)))
Calls

4 calls:

8.0ms
z
8.0ms
y
8.0ms
(+.f64 (*.f64 x (cos.f64 y)) (*.f64 z (sin.f64 y)))
8.0ms
x
Results
ErrorSegmentsBranch
0.1b1x
0.1b1y
0.1b1z
0.1b1(+.f64 (*.f64 x (cos.f64 y)) (*.f64 z (sin.f64 y)))
Compiler

Compiled 158 to 84 computations (46.8% saved)

regimes239.0ms (2.2%)

Counts
11 → 3
Calls
Call 1
Inputs
x
(*.f64 y z)
(+.f64 (*.f64 y z) x)
(*.f64 1/2 (+.f64 x (*.f64 2 (*.f64 y z))))
(*.f64 1/2 (+.f64 x (+.f64 (*.f64 z (*.f64 2 y)) x)))
(*.f64 z (sin.f64 y))
(*.f64 (cos.f64 y) x)
(+.f64 x (*.f64 z (sin.f64 y)))
(+.f64 (*.f64 x (cos.f64 y)) (*.f64 y z))
(*.f64 1/2 (+.f64 x (+.f64 x (*.f64 z (*.f64 (sin.f64 y) 2)))))
(*.f64 1/2 (+.f64 x (/.f64 (+.f64 x (+.f64 x (*.f64 (sin.f64 y) (*.f64 z 4)))) 2)))
Outputs
(*.f64 (cos.f64 y) x)
(+.f64 x (*.f64 z (sin.f64 y)))
(*.f64 (cos.f64 y) x)
Calls

3 calls:

188.0ms
z
29.0ms
y
19.0ms
x
Results
ErrorSegmentsBranch
5.5b3x
8.8b5y
6.2b7z
Compiler

Compiled 94 to 50 computations (46.8% saved)

bsearch70.0ms (0.7%)

Algorithm
binary-search
Steps
TimeLeftRight
34.0ms
7.3090683245739075e+90
2.186164580564143e+94
37.0ms
-29240019.99568923
-3.735425524944915
Results
30.0ms69×body1024valid
27.0ms171×body256valid
10.0ms32×body512valid
Compiler

Compiled 324 to 234 computations (27.8% saved)

regimes74.0ms (0.7%)

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

3 calls:

27.0ms
z
27.0ms
y
18.0ms
x
Results
ErrorSegmentsBranch
13.8b3x
9.3b6y
12.0b5z
Compiler

Compiled 52 to 30 computations (42.3% saved)

bsearch195.0ms (1.8%)

Algorithm
binary-search
Steps
TimeLeftRight
80.0ms
2.315829213662888e+189
2.1677701931159204e+209
21.0ms
0.0001673401896680197
7.690939866672559
28.0ms
-0.003422578037935901
-1.3298643990163413e-14
44.0ms
-7.704874662714785e+84
-1.8729048674612314e+75
21.0ms
-4.103699330492612e+189
-2.9939001924919907e+189
Results
99.0ms224×body1024valid
46.0ms288×body256valid
43.0ms144×body512valid
Compiler

Compiled 692 to 505 computations (27% saved)

regimes365.0ms (3.4%)

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

3 calls:

183.0ms
x
163.0ms
y
18.0ms
z
Results
ErrorSegmentsBranch
23.6b3x
15.2b3y
22.0b3z
Compiler

Compiled 48 to 28 computations (41.7% saved)

bsearch130.0ms (1.2%)

Algorithm
binary-search
Steps
TimeLeftRight
24.0ms
6.344751712011336e-14
6.971893463227437e-9
105.0ms
-0.003422578037935901
-1.3298643990163413e-14
Results
126.0ms304×body256valid
Compiler

Compiled 341 to 241 computations (29.3% saved)

regimes190.0ms (1.8%)

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

3 calls:

180.0ms
y
4.0ms
x
4.0ms
z
Results
ErrorSegmentsBranch
30.0b1x
30.0b1y
30.0b1z
Compiler

Compiled 44 to 26 computations (40.9% saved)

regimes22.0ms (0.2%)

Accuracy

Total -27.1b remaining (-77.6%)

Threshold costs -27.1b (-77.6%)

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

3 calls:

10.0ms
x
9.0ms
z
3.0ms
y
Results
ErrorSegmentsBranch
36.9b3x
40.5b1y
35.0b3z
Compiler

Compiled 19 to 13 computations (31.6% saved)

bsearch65.0ms (0.6%)

Algorithm
binary-search
Steps
TimeLeftRight
41.0ms
1.1265544211754224e+75
8.376913466342339e+85
23.0ms
-1.0144199725668764e+61
-1.1126536283619609e+60
Results
28.0ms62×body1024valid
27.0ms168×body256valid
7.0ms26×body512valid
Compiler

Compiled 210 to 157 computations (25.2% saved)

simplify6.0ms (0.1%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
051297
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(+.f64 (*.f64 x (cos.f64 y)) (*.f64 z (sin.f64 y)))
(if (<=.f64 x -25000000) (*.f64 (cos.f64 y) x) (if (<=.f64 x 31999999999999998927491606894844801594405954963844016095349587113893752173996135381968355328) (+.f64 x (*.f64 z (sin.f64 y))) (*.f64 (cos.f64 y) x)))
(if (<=.f64 y -3200000000000000073897892168633188956575482319525437681377806650095495006974264604370437749977442435554503633402427437429117408362034795222003295093291808594278500580629234076028693343371264) (*.f64 z (sin.f64 y)) (if (<=.f64 y -1849999999999999923153568303008110634658392841656741234126855898111306962567168) (*.f64 (cos.f64 y) x) (if (<=.f64 y -564931537257355/2305843009213693952) (*.f64 z (sin.f64 y)) (if (<=.f64 y 5718490662849961/9223372036854775808) (+.f64 (*.f64 y z) x) (if (<=.f64 y 5000000000000000083080177364275066701430133809967831992564032497636519534313177506628725643463284812874311020544047974659399019496389668349089963249358417763506365062100227346857359060884141303083441324032) (*.f64 (cos.f64 y) x) (*.f64 z (sin.f64 y)))))))
(if (<=.f64 y -7378697629483821/73786976294838206464) (*.f64 z (sin.f64 y)) (if (<=.f64 y 8341588155340941/1208925819614629174706176) (+.f64 (*.f64 y z) x) (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 y z) x)
(if (<=.f64 z -8599999999999999422004594284240574150058750149765812990246912) (*.f64 y z) (if (<=.f64 z 72000000000000002757278685972511293252798448625895822841927504180789519031830839296) x (*.f64 y z)))
x
Outputs
(+.f64 (*.f64 x (cos.f64 y)) (*.f64 z (sin.f64 y)))
(if (<=.f64 x -25000000) (*.f64 (cos.f64 y) x) (if (<=.f64 x 31999999999999998927491606894844801594405954963844016095349587113893752173996135381968355328) (+.f64 x (*.f64 z (sin.f64 y))) (*.f64 (cos.f64 y) x)))
(if (<=.f64 y -3200000000000000073897892168633188956575482319525437681377806650095495006974264604370437749977442435554503633402427437429117408362034795222003295093291808594278500580629234076028693343371264) (*.f64 z (sin.f64 y)) (if (<=.f64 y -1849999999999999923153568303008110634658392841656741234126855898111306962567168) (*.f64 (cos.f64 y) x) (if (<=.f64 y -564931537257355/2305843009213693952) (*.f64 z (sin.f64 y)) (if (<=.f64 y 5718490662849961/9223372036854775808) (+.f64 (*.f64 y z) x) (if (<=.f64 y 5000000000000000083080177364275066701430133809967831992564032497636519534313177506628725643463284812874311020544047974659399019496389668349089963249358417763506365062100227346857359060884141303083441324032) (*.f64 (cos.f64 y) x) (*.f64 z (sin.f64 y)))))))
(if (<=.f64 y -7378697629483821/73786976294838206464) (*.f64 z (sin.f64 y)) (if (<=.f64 y 8341588155340941/1208925819614629174706176) (+.f64 (*.f64 y z) x) (*.f64 z (sin.f64 y))))
(+.f64 (*.f64 y z) x)
(if (<=.f64 z -8599999999999999422004594284240574150058750149765812990246912) (*.f64 y z) (if (<=.f64 z 72000000000000002757278685972511293252798448625895822841927504180789519031830839296) x (*.f64 y z)))
x
Compiler

Compiled 139 to 77 computations (44.6% saved)

soundness0.0ms (0%)

end293.0ms (2.7%)

Compiler

Compiled 121 to 45 computations (62.8% saved)

Profiling

Loading profile data...