Details

Time bar (total: 44.5s)

analyze597.0ms (1.3%)

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
50%50%50%0.1%0%0%0%5
50%50%50%0.1%0%0%0%6
55.2%50%40.6%0.1%9.4%0%0%7
56.1%50%39%0.1%10.9%0%0%8
59.8%50%33.6%0.1%16.4%0%0%9
60.7%50%32.4%0.1%17.6%0%0%10
62.9%50%29.5%0.1%20.5%0%0%11
63.4%50%28.8%0.1%21.2%0%0%12
Compiler

Compiled 15 to 12 computations (20% saved)

sample16.0s (36%)

Results
7.9s5179×body256valid
2.3s1977×body1024infinite
2.0s2027×body1024valid
1.7s1011×body512infinite
1.3s1597×body256infinite
726.0ms1040×body512valid
9.0ms10×body2048valid
Bogosity

preprocess329.0ms (0.7%)

Algorithm
egg-herbie
Rules
1138×rational.json-simplify-1
882×rational.json-simplify-44
872×rational.json-simplify-61
832×rational.json-simplify-26
822×rational.json-simplify-43
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02170
13570
25570
38470
410870
514470
622570
749370
8158270
9278670
10755970
022
Stop Event
saturated
node limit
Calls
Call 1
Inputs
0
1
Outputs
0
1
Call 2
Inputs
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (-.f64 0 im)) (exp.f64 im)))
(*.f64 (*.f64 1/2 (sin.f64 im)) (+.f64 (exp.f64 (-.f64 0 re)) (exp.f64 re)))
Outputs
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (-.f64 0 im)) (exp.f64 im)))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(*.f64 (*.f64 1/2 (sin.f64 im)) (+.f64 (exp.f64 (-.f64 0 re)) (exp.f64 re)))
(*.f64 (*.f64 1/2 (sin.f64 im)) (+.f64 (exp.f64 (neg.f64 re)) (exp.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 im) (+.f64 (exp.f64 (neg.f64 re)) (exp.f64 re))))
Compiler

Compiled 16 to 13 computations (18.8% saved)

simplify103.0ms (0.2%)

Algorithm
egg-herbie
Rules
2226×rational.json-simplify-1
1504×rational.json-simplify-35
1374×rational.json-simplify-2
1110×rational.json-simplify-26
942×rational.json-simplify-48
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01435
12235
23335
35035
46435
58535
612935
727135
877335
9219235
10274935
11343235
12536635
13641835
14753335
Stop Event
node limit
Counts
1 → 3
Calls
Call 1
Inputs
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (-.f64 0 im)) (exp.f64 im)))
Outputs
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (-.f64 0 im)) (exp.f64 im)))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))

eval1.0ms (0%)

Compiler

Compiled 36 to 20 computations (44.4% saved)

prune1.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New213
Fresh101
Picked000
Done000
Total314
Error
0.3b
Counts
4 → 1
Alt Table
Click to see full alt table
StatusErrorProgram
0.3b
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
Compiler

Compiled 13 to 10 computations (23.1% saved)

localize22.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.3b
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
Compiler

Compiled 35 to 13 computations (62.9% saved)

series4.0ms (0%)

Counts
1 → 24
Calls

6 calls:

TimeVariablePointExpression
1.0ms
im
@inf
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
1.0ms
re
@0
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
1.0ms
re
@-inf
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
1.0ms
re
@inf
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
1.0ms
im
@-inf
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))

rewrite65.0ms (0.1%)

Algorithm
batch-egg-rewrite
Rules
1324×bool.json-1
1324×bool.json-2
1280×rational.json-1
1280×rational.json-2
1280×rational.json-4
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01335
113435
237035
382135
4179335
5432835
Stop Event
node limit
Counts
1 → 9
Calls
Call 1
Inputs
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 (sin.f64 re) 1/4)) (*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 (sin.f64 re) 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 (sin.f64 re) 2)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 (sin.f64 re) 2))) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 (sin.f64 re) 2)))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x not (not (*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))))))) (#(struct:change #<rule egg-rr> (2) ((x and (*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))) (*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))))) (#(struct:change #<rule egg-rr> (2) ((x or (*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))) (*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))))))

simplify131.0ms (0.3%)

Algorithm
egg-herbie
Rules
1516×rational.json-simplify-35
1234×rational.json-simplify-2
1076×rational.json-simplify-38
960×rational.json-simplify-48
794×rational.json-simplify-1
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0841439
11961439
23491419
36071313
413271313
520721313
626371313
731841313
836621313
946481313
1054881313
Stop Event
node limit
Counts
33 → 50
Calls
Call 1
Inputs
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(+.f64 (*.f64 -1/12 (*.f64 (pow.f64 re 3) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))
(+.f64 (*.f64 -1/12 (*.f64 (pow.f64 re 3) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (+.f64 (*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (*.f64 1/240 (*.f64 (pow.f64 re 5) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))))
(+.f64 (*.f64 -1/10080 (*.f64 (pow.f64 re 7) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (+.f64 (*.f64 -1/12 (*.f64 (pow.f64 re 3) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (+.f64 (*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (*.f64 1/240 (*.f64 (pow.f64 re 5) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(sin.f64 re)
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))))
(+.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (+.f64 (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4))))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))))
(+.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))) 0)
(+.f64 0 (*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
(+.f64 (*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 (sin.f64 re) 1/4)) (*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 (sin.f64 re) 1/4)))
(-.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))) 0)
(/.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))) 1)
(/.f64 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) 2)
(/.f64 (*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 (sin.f64 re) 2)) 4)
(/.f64 (*.f64 2 (*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 (sin.f64 re) 2))) 8)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 (sin.f64 re) 2)))) 16)
Outputs
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 re))
(*.f64 re (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(+.f64 (*.f64 -1/12 (*.f64 (pow.f64 re 3) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))
(+.f64 (*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (*.f64 -1/12 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (pow.f64 re 3))))
(+.f64 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2)) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 (pow.f64 re 3) -1/12)))
(+.f64 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 re)) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 -1/12 (pow.f64 re 3))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 (*.f64 -1/12 (pow.f64 re 3)) (*.f64 1/2 re)))
(+.f64 (*.f64 -1/12 (*.f64 (pow.f64 re 3) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (+.f64 (*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (*.f64 1/240 (*.f64 (pow.f64 re 5) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))))
(+.f64 (*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (+.f64 (*.f64 1/240 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (pow.f64 re 5))) (*.f64 -1/12 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (pow.f64 re 3)))))
(+.f64 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 (pow.f64 re 5) 1/240)) (+.f64 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2)) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 (pow.f64 re 3) -1/12))))
(+.f64 (+.f64 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 re)) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 -1/12 (pow.f64 re 3)))) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/240 (pow.f64 re 5))))
(+.f64 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 (*.f64 -1/12 (pow.f64 re 3)) (*.f64 1/2 re))) (*.f64 1/240 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (pow.f64 re 5))))
(+.f64 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 (*.f64 -1/12 (pow.f64 re 3)) (*.f64 1/2 re))) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/240 (pow.f64 re 5))))
(+.f64 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 -1/12 (pow.f64 re 3))) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 (*.f64 1/240 (pow.f64 re 5)) (*.f64 1/2 re))))
(+.f64 (*.f64 -1/10080 (*.f64 (pow.f64 re 7) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (+.f64 (*.f64 -1/12 (*.f64 (pow.f64 re 3) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (+.f64 (*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (*.f64 1/240 (*.f64 (pow.f64 re 5) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))))))
(+.f64 (*.f64 -1/12 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (pow.f64 re 3))) (+.f64 (+.f64 (*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))) (*.f64 1/240 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (pow.f64 re 5)))) (*.f64 -1/10080 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (pow.f64 re 7)))))
(+.f64 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2)) (+.f64 (+.f64 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 (pow.f64 re 3) -1/12)) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 (pow.f64 re 5) 1/240))) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 (pow.f64 re 7) -1/10080))))
(+.f64 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 re)) (+.f64 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 -1/10080 (pow.f64 re 7))) (+.f64 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 -1/12 (pow.f64 re 3))) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/240 (pow.f64 re 5))))))
(+.f64 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 (*.f64 -1/12 (pow.f64 re 3)) (*.f64 1/2 re))) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 (*.f64 -1/10080 (pow.f64 re 7)) (*.f64 1/240 (pow.f64 re 5)))))
(+.f64 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 (*.f64 -1/12 (pow.f64 re 3)) (*.f64 1/2 re))) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 (*.f64 1/240 (pow.f64 re 5)) (*.f64 -1/10080 (pow.f64 re 7)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 (sin.f64 re)))
(sin.f64 re)
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 (sin.f64 re) (*.f64 (pow.f64 im 2) 1/2)))
(+.f64 (sin.f64 re) (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 (pow.f64 im 2) (*.f64 1/2 (sin.f64 re))))
(+.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))))
(+.f64 (sin.f64 re) (+.f64 (*.f64 (sin.f64 re) (*.f64 (pow.f64 im 2) 1/2)) (*.f64 (sin.f64 re) (*.f64 (pow.f64 im 4) 1/24))))
(+.f64 (*.f64 (pow.f64 im 4) (*.f64 1/24 (sin.f64 re))) (+.f64 (sin.f64 re) (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2)))))
(+.f64 (sin.f64 re) (*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))))
(+.f64 (sin.f64 re) (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2)))))
(+.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (+.f64 (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4))))))
(+.f64 (sin.f64 re) (+.f64 (*.f64 (sin.f64 re) (*.f64 (pow.f64 im 2) 1/2)) (+.f64 (*.f64 (sin.f64 re) (*.f64 (pow.f64 im 4) 1/24)) (*.f64 (sin.f64 re) (*.f64 (pow.f64 im 6) 1/720)))))
(+.f64 (*.f64 (sin.f64 re) (*.f64 1/720 (pow.f64 im 6))) (+.f64 (*.f64 (pow.f64 im 4) (*.f64 1/24 (sin.f64 re))) (+.f64 (sin.f64 re) (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2))))))
(+.f64 (+.f64 (sin.f64 re) (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2)))) (*.f64 (sin.f64 re) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/24 (pow.f64 im 4)))))
(+.f64 (sin.f64 re) (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/720 (pow.f64 im 6))))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im)))))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 (sin.f64 re)))
(+.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))) 0)
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 (sin.f64 re)))
(+.f64 0 (*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 (sin.f64 re)))
(+.f64 (*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 (sin.f64 re) 1/4)) (*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 (sin.f64 re) 1/4)))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 (sin.f64 re)))
(-.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))) 0)
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 (sin.f64 re)))
(/.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))) 1)
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 (sin.f64 re)))
(/.f64 (*.f64 (sin.f64 re) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) 2)
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 (sin.f64 re)))
(/.f64 (*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 (sin.f64 re) 2)) 4)
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 (sin.f64 re)))
(/.f64 (*.f64 2 (*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 (sin.f64 re) 2))) 8)
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 (sin.f64 re)))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 (sin.f64 re) 2)))) 16)
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (sin.f64 re)))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 1/2 (sin.f64 re)))

eval83.0ms (0.2%)

Compiler

Compiled 1099 to 518 computations (52.9% saved)

prune14.0ms (0%)

Pruning

8 alts after pruning (7 fresh and 1 done)

PrunedKeptTotal
New43750
Fresh000
Picked011
Done000
Total43851
Error
0.3b
Counts
51 → 8
Alt Table
Click to see full alt table
StatusErrorProgram
0.6b
(+.f64 (*.f64 (pow.f64 im 4) (*.f64 1/24 (sin.f64 re))) (+.f64 (sin.f64 re) (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2)))))
30.6b
(+.f64 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2)) (+.f64 (+.f64 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 (pow.f64 re 3) -1/12)) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 (pow.f64 re 5) 1/240))) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 (pow.f64 re 7) -1/10080))))
0.7b
(+.f64 (sin.f64 re) (*.f64 (pow.f64 im 2) (*.f64 1/2 (sin.f64 re))))
0.6b
(+.f64 (sin.f64 re) (*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))))
0.5b
(+.f64 (sin.f64 re) (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/720 (pow.f64 im 6))))))
30.1b
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
0.3b
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
0.9b
(sin.f64 re)
Compiler

Compiled 305 to 202 computations (33.8% saved)

localize148.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (sin.f64 re) (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/720 (pow.f64 im 6))))))
0.0b
(*.f64 1/720 (pow.f64 im 6))
0.1b
(*.f64 1/24 (pow.f64 im 4))
0.1b
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/720 (pow.f64 im 6)))))
Compiler

Compiled 107 to 81 computations (24.3% saved)

series8.0ms (0%)

Counts
4 → 48
Calls

18 calls:

TimeVariablePointExpression
2.0ms
re
@0
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/720 (pow.f64 im 6)))))
2.0ms
re
@inf
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/720 (pow.f64 im 6)))))
1.0ms
im
@0
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/720 (pow.f64 im 6)))))
1.0ms
im
@inf
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/720 (pow.f64 im 6)))))
1.0ms
re
@0
(+.f64 (sin.f64 re) (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/720 (pow.f64 im 6))))))

rewrite86.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
1382×bool.json-1
1382×bool.json-2
1378×rational.json-simplify-35
1328×rational.json-1
1328×rational.json-2
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
022154
1216150
2511150
31017150
42256150
54921150
Stop Event
node limit
Counts
4 → 51
Calls
Call 1
Inputs
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/720 (pow.f64 im 6)))))
(*.f64 1/24 (pow.f64 im 4))
(*.f64 1/720 (pow.f64 im 6))
(+.f64 (sin.f64 re) (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/720 (pow.f64 im 6))))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/720 (pow.f64 im 6))))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/720 (pow.f64 im 6))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/720 (pow.f64 im 6)))))) (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/720 (pow.f64 im 6)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/720 (pow.f64 im 6))))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/720 (pow.f64 im 6))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 re) (*.f64 2 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/720 (pow.f64 im 6)))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 re) (*.f64 4 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/720 (pow.f64 im 6)))))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (sin.f64 re) (*.f64 4 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/720 (pow.f64 im 6))))))) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (sin.f64 re) (*.f64 4 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/720 (pow.f64 im 6)))))))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (sin.f64 re) (*.f64 4 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/720 (pow.f64 im 6)))))))) (*.f64 2 (*.f64 2 (*.f64 (sin.f64 re) (*.f64 4 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/720 (pow.f64 im 6))))))))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x not (not (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/720 (pow.f64 im 6)))))))))) (#(struct:change #<rule egg-rr> (2) ((x and (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/720 (pow.f64 im 6))))) (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/720 (pow.f64 im 6))))))))) (#(struct:change #<rule egg-rr> (2) ((x or (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/720 (pow.f64 im 6))))) (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/720 (pow.f64 im 6))))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1/24 (pow.f64 im 4)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 1/24 (pow.f64 im 4)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (pow.f64 im 4) 1/48) (*.f64 (pow.f64 im 4) 1/48))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 1/24 (pow.f64 im 4)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/24 (pow.f64 im 4)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 im 4) 1/12) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 im 4) 1/6) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (pow.f64 im 4) 1/6)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 im 4) 1/6))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 im 4) 1/6))) (*.f64 2 (*.f64 2 (*.f64 (pow.f64 im 4) 1/6)))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x not (not (*.f64 1/24 (pow.f64 im 4))))))) (#(struct:change #<rule egg-rr> (2) ((x and (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/24 (pow.f64 im 4)))))) (#(struct:change #<rule egg-rr> (2) ((x or (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/24 (pow.f64 im 4)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1/720 (pow.f64 im 6)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 1/720 (pow.f64 im 6)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (pow.f64 im 6) 1/1440) (*.f64 (pow.f64 im 6) 1/1440))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 1/720 (pow.f64 im 6)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/720 (pow.f64 im 6)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 im 6) 1/360) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 im 6) 1/180) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (pow.f64 im 6) 1/180)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 im 6) 1/180))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 im 6) 1/180))) (*.f64 2 (*.f64 2 (*.f64 (pow.f64 im 6) 1/180)))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x not (not (*.f64 1/720 (pow.f64 im 6))))))) (#(struct:change #<rule egg-rr> (2) ((x and (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/720 (pow.f64 im 6)))))) (#(struct:change #<rule egg-rr> (2) ((x or (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/720 (pow.f64 im 6)))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1)))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1)))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (*.f64 (sin.f64 re) 2) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (*.f64 (sin.f64 re) 1/2) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 re) 2) (*.f64 1/2 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 re) 2) (/.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (sin.f64 re) 2) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1)))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1))) (sin.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 4 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1))))) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1)))) (*.f64 (sin.f64 re) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (sin.f64 re) 2) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 4 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1))))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 4 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1)))))) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 4 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1))))))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 4 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1))))))) (*.f64 2 (*.f64 2 (*.f64 4 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1)))))))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x not (not (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1))))))))) (#(struct:change #<rule egg-rr> (2) ((x and (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1)))) (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x or (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1)))) (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1)))))))))

simplify1.3s (3%)

Algorithm
egg-herbie
Rules
2216×rational.json-simplify-53
1764×rational.json-simplify-35
1310×rational.json-simplify-51
1292×rational.json-simplify-2
1148×rational.json-simplify-48
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01755835
14115673
28375505
321195315
441515315
553655315
656435315
758915315
863985315
973875315
1077385315
Stop Event
node limit
Counts
99 → 115
Calls
Call 1
Inputs
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) re)
(+.f64 (*.f64 -1/6 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) (pow.f64 re 3))) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) re))
(+.f64 (*.f64 1/120 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) (pow.f64 re 5))) (+.f64 (*.f64 -1/6 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) (pow.f64 re 3))) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) re)))
(+.f64 (*.f64 1/120 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) (pow.f64 re 5))) (+.f64 (*.f64 -1/6 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) (pow.f64 re 3))) (+.f64 (*.f64 -1/5040 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) (pow.f64 re 7))) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) re))))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4))))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (+.f64 (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (+.f64 (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))))
(*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6)))
(+.f64 (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4))))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (+.f64 (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (+.f64 (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))))
(*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6)))
(+.f64 (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4))))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (+.f64 (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (+.f64 (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))))
(*.f64 re (+.f64 1 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))))))
(+.f64 (*.f64 re (+.f64 1 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))))) (*.f64 (-.f64 (*.f64 -1/6 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))))) 1/6) (pow.f64 re 3)))
(+.f64 (*.f64 re (+.f64 1 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))))) (+.f64 (*.f64 (+.f64 1/120 (*.f64 1/120 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))))) (pow.f64 re 5)) (*.f64 (-.f64 (*.f64 -1/6 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))))) 1/6) (pow.f64 re 3))))
(+.f64 (*.f64 re (+.f64 1 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))))) (+.f64 (*.f64 (+.f64 1/120 (*.f64 1/120 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))))) (pow.f64 re 5)) (+.f64 (*.f64 (-.f64 (*.f64 -1/6 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))))) 1/6) (pow.f64 re 3)) (*.f64 (-.f64 (*.f64 -1/5040 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))))) 1/5040) (pow.f64 re 7)))))
(+.f64 (sin.f64 re) (*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))))))
(+.f64 (sin.f64 re) (*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))))))
(+.f64 (sin.f64 re) (*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))))))
(+.f64 (sin.f64 re) (*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))))))
(+.f64 (sin.f64 re) (*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))))))
(+.f64 (sin.f64 re) (*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))))))
(+.f64 (sin.f64 re) (*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))))))
(+.f64 (sin.f64 re) (*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))))))
(sin.f64 re)
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))))
(+.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (+.f64 (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4))))))
(*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6)))
(+.f64 (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4))))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (+.f64 (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))))
(+.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (+.f64 (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4))))))
(*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6)))
(+.f64 (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4))))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (+.f64 (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))))
(+.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (+.f64 (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4))))))
(+.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/720 (pow.f64 im 6))))) 0)
(+.f64 0 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/720 (pow.f64 im 6))))))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/720 (pow.f64 im 6)))))) (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/720 (pow.f64 im 6)))))))
(-.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/720 (pow.f64 im 6))))) 0)
(/.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/720 (pow.f64 im 6))))) 1)
(/.f64 (*.f64 (sin.f64 re) (*.f64 2 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/720 (pow.f64 im 6)))))) 2)
(/.f64 (*.f64 (sin.f64 re) (*.f64 4 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/720 (pow.f64 im 6)))))) 4)
(/.f64 (*.f64 2 (*.f64 (sin.f64 re) (*.f64 4 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/720 (pow.f64 im 6))))))) 8)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (sin.f64 re) (*.f64 4 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/720 (pow.f64 im 6)))))))) 16)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (sin.f64 re) (*.f64 4 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/720 (pow.f64 im 6)))))))) (*.f64 2 (*.f64 2 (*.f64 (sin.f64 re) (*.f64 4 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/720 (pow.f64 im 6))))))))) 32)
(+.f64 (*.f64 1/24 (pow.f64 im 4)) 0)
(+.f64 0 (*.f64 1/24 (pow.f64 im 4)))
(+.f64 (*.f64 (pow.f64 im 4) 1/48) (*.f64 (pow.f64 im 4) 1/48))
(-.f64 (*.f64 1/24 (pow.f64 im 4)) 0)
(/.f64 (*.f64 1/24 (pow.f64 im 4)) 1)
(/.f64 (*.f64 (pow.f64 im 4) 1/12) 2)
(/.f64 (*.f64 (pow.f64 im 4) 1/6) 4)
(/.f64 (*.f64 2 (*.f64 (pow.f64 im 4) 1/6)) 8)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 im 4) 1/6))) 16)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 im 4) 1/6))) (*.f64 2 (*.f64 2 (*.f64 (pow.f64 im 4) 1/6)))) 32)
(+.f64 (*.f64 1/720 (pow.f64 im 6)) 0)
(+.f64 0 (*.f64 1/720 (pow.f64 im 6)))
(+.f64 (*.f64 (pow.f64 im 6) 1/1440) (*.f64 (pow.f64 im 6) 1/1440))
(-.f64 (*.f64 1/720 (pow.f64 im 6)) 0)
(/.f64 (*.f64 1/720 (pow.f64 im 6)) 1)
(/.f64 (*.f64 (pow.f64 im 6) 1/360) 2)
(/.f64 (*.f64 (pow.f64 im 6) 1/180) 4)
(/.f64 (*.f64 2 (*.f64 (pow.f64 im 6) 1/180)) 8)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 im 6) 1/180))) 16)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 im 6) 1/180))) (*.f64 2 (*.f64 2 (*.f64 (pow.f64 im 6) 1/180)))) 32)
(-.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1)))) 0)
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1))))
(*.f64 4 (/.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1)))) 4))
(*.f64 1/2 (*.f64 (*.f64 (sin.f64 re) 2) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1)))))
(*.f64 2 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1))))))
(*.f64 2 (*.f64 (*.f64 (sin.f64 re) 1/2) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1)))))
(*.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1)))) 1)
(*.f64 1 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1)))))
(*.f64 (*.f64 (sin.f64 re) 2) (*.f64 1/2 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1)))))
(*.f64 (*.f64 (sin.f64 re) 2) (/.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1))) 2))
(*.f64 (*.f64 (*.f64 (sin.f64 re) 2) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1)))) 1/2)
(*.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1))) (sin.f64 re))
(*.f64 (*.f64 4 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1))))) 1/4)
(*.f64 (*.f64 2 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1)))) (*.f64 (sin.f64 re) 1/2))
(*.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1))))) 2)
(/.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1)))) 1)
(/.f64 (*.f64 (*.f64 (sin.f64 re) 2) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1)))) 2)
(/.f64 (*.f64 4 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1))))) 4)
(/.f64 (*.f64 2 (*.f64 4 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1)))))) 8)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 4 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1))))))) 16)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 4 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1))))))) (*.f64 2 (*.f64 2 (*.f64 4 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1)))))))) 32)
Outputs
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) re)
(+.f64 (*.f64 -1/6 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) (pow.f64 re 3))) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) re))
(+.f64 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) re) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) (*.f64 (pow.f64 re 3) -1/6)))
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) (+.f64 re (*.f64 -1/6 (pow.f64 re 3))))
(+.f64 (*.f64 1/120 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) (pow.f64 re 5))) (+.f64 (*.f64 -1/6 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) (pow.f64 re 3))) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) re)))
(+.f64 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) (*.f64 (pow.f64 re 3) -1/6)) (+.f64 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) re) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) (*.f64 (pow.f64 re 5) 1/120))))
(+.f64 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) (+.f64 re (*.f64 -1/6 (pow.f64 re 3)))) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) (*.f64 1/120 (pow.f64 re 5))))
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) (+.f64 (*.f64 1/120 (pow.f64 re 5)) (+.f64 re (*.f64 -1/6 (pow.f64 re 3)))))
(+.f64 (*.f64 1/120 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) (pow.f64 re 5))) (+.f64 (*.f64 -1/6 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) (pow.f64 re 3))) (+.f64 (*.f64 -1/5040 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) (pow.f64 re 7))) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) re))))
(+.f64 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) (*.f64 (pow.f64 re 3) -1/6)) (+.f64 (+.f64 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) re) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) (*.f64 (pow.f64 re 7) -1/5040))) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) (*.f64 (pow.f64 re 5) 1/120))))
(+.f64 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) (*.f64 -1/6 (pow.f64 re 3))) (+.f64 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) (*.f64 1/120 (pow.f64 re 5))) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) (+.f64 re (*.f64 -1/5040 (pow.f64 re 7))))))
(+.f64 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) (*.f64 -1/6 (pow.f64 re 3))) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) (+.f64 (*.f64 1/120 (pow.f64 re 5)) (+.f64 re (*.f64 -1/5040 (pow.f64 re 7))))))
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) (+.f64 (*.f64 -1/6 (pow.f64 re 3)) (+.f64 (*.f64 1/120 (pow.f64 re 5)) (+.f64 re (*.f64 -1/5040 (pow.f64 re 7))))))
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) (+.f64 (*.f64 -1/5040 (pow.f64 re 7)) (+.f64 (*.f64 1/120 (pow.f64 re 5)) (+.f64 re (*.f64 -1/6 (pow.f64 re 3))))))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))))
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) (sin.f64 re))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))))
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) (sin.f64 re))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))))
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) (sin.f64 re))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))))
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) (sin.f64 re))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))))
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) (sin.f64 re))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))))
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) (sin.f64 re))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))))
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) (sin.f64 re))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))))
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) (sin.f64 re))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 (pow.f64 im 2) (*.f64 1/2 (sin.f64 re)))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (+.f64 (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))))
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) (sin.f64 re))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (+.f64 (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))))
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) (sin.f64 re))
(*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6)))
(*.f64 1/720 (*.f64 (pow.f64 im 6) (sin.f64 re)))
(*.f64 (pow.f64 im 6) (*.f64 1/720 (sin.f64 re)))
(+.f64 (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4))))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))) (*.f64 1/720 (*.f64 (pow.f64 im 6) (sin.f64 re))))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))) (*.f64 (pow.f64 im 6) (*.f64 1/720 (sin.f64 re))))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))))
(*.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))) (sin.f64 re))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (+.f64 (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))))
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) (sin.f64 re))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (+.f64 (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))))
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) (sin.f64 re))
(*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6)))
(*.f64 1/720 (*.f64 (pow.f64 im 6) (sin.f64 re)))
(*.f64 (pow.f64 im 6) (*.f64 1/720 (sin.f64 re)))
(+.f64 (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4))))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))) (*.f64 1/720 (*.f64 (pow.f64 im 6) (sin.f64 re))))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))) (*.f64 (pow.f64 im 6) (*.f64 1/720 (sin.f64 re))))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))))
(*.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))) (sin.f64 re))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (+.f64 (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))))
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) (sin.f64 re))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (+.f64 (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))))
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) (sin.f64 re))
(*.f64 re (+.f64 1 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))))))
(*.f64 re (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))) 1)))
(*.f64 re (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1))))
(+.f64 (*.f64 re (+.f64 1 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))))) (*.f64 (-.f64 (*.f64 -1/6 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))))) 1/6) (pow.f64 re 3)))
(+.f64 (*.f64 re (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))) 1))) (*.f64 (pow.f64 re 3) (-.f64 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) -1/6) 1/6)))
(+.f64 (*.f64 re (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1)))) (*.f64 (pow.f64 re 3) (-.f64 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) -1/6) 1/6)))
(+.f64 (*.f64 re (+.f64 1 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))))) (+.f64 (*.f64 (+.f64 1/120 (*.f64 1/120 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))))) (pow.f64 re 5)) (*.f64 (-.f64 (*.f64 -1/6 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))))) 1/6) (pow.f64 re 3))))
(+.f64 (*.f64 re (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))) 1))) (+.f64 (*.f64 (pow.f64 re 3) (-.f64 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) -1/6) 1/6)) (*.f64 (pow.f64 re 5) (+.f64 1/120 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) 1/120)))))
(+.f64 (+.f64 (*.f64 re (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1)))) (*.f64 (pow.f64 re 3) (-.f64 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) -1/6) 1/6))) (*.f64 (pow.f64 re 5) (+.f64 1/120 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) 1/120))))
(+.f64 (*.f64 re (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1)))) (+.f64 (*.f64 (pow.f64 re 3) (-.f64 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) -1/6) 1/6)) (*.f64 (pow.f64 re 5) (+.f64 1/120 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) 1/120)))))
(+.f64 (*.f64 re (+.f64 1 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))))) (+.f64 (*.f64 (+.f64 1/120 (*.f64 1/120 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))))) (pow.f64 re 5)) (+.f64 (*.f64 (-.f64 (*.f64 -1/6 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))))) 1/6) (pow.f64 re 3)) (*.f64 (-.f64 (*.f64 -1/5040 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))))) 1/5040) (pow.f64 re 7)))))
(+.f64 (*.f64 re (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))) 1))) (+.f64 (*.f64 (pow.f64 re 3) (-.f64 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) -1/6) 1/6)) (+.f64 (*.f64 (pow.f64 re 7) (-.f64 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) -1/5040) 1/5040)) (*.f64 (pow.f64 re 5) (+.f64 1/120 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) 1/120))))))
(+.f64 (*.f64 re (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))) 1))) (+.f64 (*.f64 (pow.f64 re 3) (-.f64 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) -1/6) 1/6)) (+.f64 (*.f64 (pow.f64 re 5) (+.f64 1/120 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) 1/120))) (*.f64 (pow.f64 re 7) (-.f64 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) -1/5040) 1/5040)))))
(+.f64 (*.f64 (pow.f64 re 5) (+.f64 1/120 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) 1/120))) (+.f64 (*.f64 (pow.f64 re 7) (-.f64 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) -1/5040) 1/5040)) (+.f64 (*.f64 re (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1)))) (*.f64 (pow.f64 re 3) (-.f64 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) -1/6) 1/6)))))
(+.f64 (*.f64 (pow.f64 re 5) (+.f64 1/120 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) 1/120))) (+.f64 (+.f64 (*.f64 re (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1)))) (*.f64 (pow.f64 re 3) (-.f64 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) -1/6) 1/6))) (*.f64 (pow.f64 re 7) (-.f64 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) -1/5040) 1/5040))))
(+.f64 (*.f64 re (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1)))) (+.f64 (*.f64 (pow.f64 re 3) (-.f64 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) -1/6) 1/6)) (+.f64 (*.f64 (pow.f64 re 5) (+.f64 1/120 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) 1/120))) (*.f64 (pow.f64 re 7) (-.f64 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) -1/5040) 1/5040)))))
(+.f64 (sin.f64 re) (*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))))))
(+.f64 (sin.f64 re) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) (sin.f64 re)))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1))))
(+.f64 (sin.f64 re) (*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))))))
(+.f64 (sin.f64 re) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) (sin.f64 re)))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1))))
(+.f64 (sin.f64 re) (*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))))))
(+.f64 (sin.f64 re) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) (sin.f64 re)))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1))))
(+.f64 (sin.f64 re) (*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))))))
(+.f64 (sin.f64 re) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) (sin.f64 re)))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1))))
(+.f64 (sin.f64 re) (*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))))))
(+.f64 (sin.f64 re) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) (sin.f64 re)))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1))))
(+.f64 (sin.f64 re) (*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))))))
(+.f64 (sin.f64 re) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) (sin.f64 re)))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1))))
(+.f64 (sin.f64 re) (*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))))))
(+.f64 (sin.f64 re) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) (sin.f64 re)))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1))))
(+.f64 (sin.f64 re) (*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))))))
(+.f64 (sin.f64 re) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) (sin.f64 re)))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1))))
(sin.f64 re)
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (pow.f64 im 2) 2))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (pow.f64 im 2)))
(+.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))))
(+.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))) (+.f64 (sin.f64 re) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))))
(+.f64 (sin.f64 re) (*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))))
(*.f64 (sin.f64 re) (+.f64 1 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) 1)))
(+.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (+.f64 (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4))))))
(+.f64 (sin.f64 re) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) (sin.f64 re)))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1))))
(*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6)))
(*.f64 1/720 (*.f64 (pow.f64 im 6) (sin.f64 re)))
(*.f64 (pow.f64 im 6) (*.f64 1/720 (sin.f64 re)))
(+.f64 (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4))))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))) (*.f64 1/720 (*.f64 (pow.f64 im 6) (sin.f64 re))))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))) (*.f64 (pow.f64 im 6) (*.f64 1/720 (sin.f64 re))))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))))
(*.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))) (sin.f64 re))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (+.f64 (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))))
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) (sin.f64 re))
(+.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (+.f64 (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4))))))
(+.f64 (sin.f64 re) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) (sin.f64 re)))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1))))
(*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6)))
(*.f64 1/720 (*.f64 (pow.f64 im 6) (sin.f64 re)))
(*.f64 (pow.f64 im 6) (*.f64 1/720 (sin.f64 re)))
(+.f64 (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4))))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))) (*.f64 1/720 (*.f64 (pow.f64 im 6) (sin.f64 re))))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))) (*.f64 (pow.f64 im 6) (*.f64 1/720 (sin.f64 re))))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))))
(*.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))) (sin.f64 re))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (+.f64 (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))))
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) (sin.f64 re))
(+.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (+.f64 (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4))))))
(+.f64 (sin.f64 re) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) (sin.f64 re)))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1))))
(+.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/720 (pow.f64 im 6))))) 0)
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) (sin.f64 re))
(+.f64 0 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/720 (pow.f64 im 6))))))
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) (sin.f64 re))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/720 (pow.f64 im 6)))))) (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/720 (pow.f64 im 6)))))))
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) (sin.f64 re))
(-.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/720 (pow.f64 im 6))))) 0)
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) (sin.f64 re))
(/.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/720 (pow.f64 im 6))))) 1)
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) (sin.f64 re))
(/.f64 (*.f64 (sin.f64 re) (*.f64 2 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/720 (pow.f64 im 6)))))) 2)
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) (sin.f64 re))
(/.f64 (*.f64 (sin.f64 re) (*.f64 4 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/720 (pow.f64 im 6)))))) 4)
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) (sin.f64 re))
(/.f64 (*.f64 2 (*.f64 (sin.f64 re) (*.f64 4 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/720 (pow.f64 im 6))))))) 8)
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) (sin.f64 re))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (sin.f64 re) (*.f64 4 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/720 (pow.f64 im 6)))))))) 16)
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) (sin.f64 re))
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (sin.f64 re) (*.f64 4 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/720 (pow.f64 im 6)))))))) (*.f64 2 (*.f64 2 (*.f64 (sin.f64 re) (*.f64 4 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/720 (pow.f64 im 6))))))))) 32)
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) (sin.f64 re))
(+.f64 (*.f64 1/24 (pow.f64 im 4)) 0)
(*.f64 1/24 (pow.f64 im 4))
(+.f64 0 (*.f64 1/24 (pow.f64 im 4)))
(*.f64 1/24 (pow.f64 im 4))
(+.f64 (*.f64 (pow.f64 im 4) 1/48) (*.f64 (pow.f64 im 4) 1/48))
(*.f64 1/24 (pow.f64 im 4))
(-.f64 (*.f64 1/24 (pow.f64 im 4)) 0)
(*.f64 1/24 (pow.f64 im 4))
(/.f64 (*.f64 1/24 (pow.f64 im 4)) 1)
(*.f64 1/24 (pow.f64 im 4))
(/.f64 (*.f64 (pow.f64 im 4) 1/12) 2)
(*.f64 1/24 (pow.f64 im 4))
(/.f64 (*.f64 (pow.f64 im 4) 1/6) 4)
(*.f64 1/24 (pow.f64 im 4))
(/.f64 (*.f64 2 (*.f64 (pow.f64 im 4) 1/6)) 8)
(*.f64 1/24 (pow.f64 im 4))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 im 4) 1/6))) 16)
(*.f64 1/24 (pow.f64 im 4))
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 im 4) 1/6))) (*.f64 2 (*.f64 2 (*.f64 (pow.f64 im 4) 1/6)))) 32)
(*.f64 1/24 (pow.f64 im 4))
(+.f64 (*.f64 1/720 (pow.f64 im 6)) 0)
(*.f64 1/720 (pow.f64 im 6))
(+.f64 0 (*.f64 1/720 (pow.f64 im 6)))
(*.f64 1/720 (pow.f64 im 6))
(+.f64 (*.f64 (pow.f64 im 6) 1/1440) (*.f64 (pow.f64 im 6) 1/1440))
(*.f64 1/720 (pow.f64 im 6))
(-.f64 (*.f64 1/720 (pow.f64 im 6)) 0)
(*.f64 1/720 (pow.f64 im 6))
(/.f64 (*.f64 1/720 (pow.f64 im 6)) 1)
(*.f64 1/720 (pow.f64 im 6))
(/.f64 (*.f64 (pow.f64 im 6) 1/360) 2)
(*.f64 1/720 (pow.f64 im 6))
(/.f64 (*.f64 (pow.f64 im 6) 1/180) 4)
(*.f64 1/720 (pow.f64 im 6))
(/.f64 (*.f64 2 (*.f64 (pow.f64 im 6) 1/180)) 8)
(*.f64 1/720 (pow.f64 im 6))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 im 6) 1/180))) 16)
(*.f64 1/720 (pow.f64 im 6))
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 im 6) 1/180))) (*.f64 2 (*.f64 2 (*.f64 (pow.f64 im 6) 1/180)))) 32)
(*.f64 1/720 (pow.f64 im 6))
(-.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1)))) 0)
(+.f64 (sin.f64 re) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) (sin.f64 re)))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1))))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1))))
(+.f64 (sin.f64 re) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) (sin.f64 re)))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1))))
(*.f64 4 (/.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1)))) 4))
(+.f64 (sin.f64 re) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) (sin.f64 re)))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1))))
(*.f64 1/2 (*.f64 (*.f64 (sin.f64 re) 2) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1)))))
(+.f64 (sin.f64 re) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) (sin.f64 re)))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1))))
(*.f64 2 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1))))))
(+.f64 (sin.f64 re) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) (sin.f64 re)))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1))))
(*.f64 2 (*.f64 (*.f64 (sin.f64 re) 1/2) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1)))))
(+.f64 (sin.f64 re) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) (sin.f64 re)))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1))))
(*.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1)))) 1)
(+.f64 (sin.f64 re) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) (sin.f64 re)))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1))))
(*.f64 1 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1)))))
(+.f64 (sin.f64 re) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) (sin.f64 re)))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1))))
(*.f64 (*.f64 (sin.f64 re) 2) (*.f64 1/2 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1)))))
(+.f64 (sin.f64 re) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) (sin.f64 re)))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1))))
(*.f64 (*.f64 (sin.f64 re) 2) (/.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1))) 2))
(+.f64 (sin.f64 re) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) (sin.f64 re)))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1))))
(*.f64 (*.f64 (*.f64 (sin.f64 re) 2) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1)))) 1/2)
(+.f64 (sin.f64 re) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) (sin.f64 re)))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1))))
(*.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1))) (sin.f64 re))
(+.f64 (sin.f64 re) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) (sin.f64 re)))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1))))
(*.f64 (*.f64 4 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1))))) 1/4)
(+.f64 (sin.f64 re) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) (sin.f64 re)))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1))))
(*.f64 (*.f64 2 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1)))) (*.f64 (sin.f64 re) 1/2))
(+.f64 (sin.f64 re) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) (sin.f64 re)))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1))))
(*.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1))))) 2)
(+.f64 (sin.f64 re) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) (sin.f64 re)))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1))))
(/.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1)))) 1)
(+.f64 (sin.f64 re) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) (sin.f64 re)))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1))))
(/.f64 (*.f64 (*.f64 (sin.f64 re) 2) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1)))) 2)
(+.f64 (sin.f64 re) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) (sin.f64 re)))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1))))
(/.f64 (*.f64 4 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1))))) 4)
(+.f64 (sin.f64 re) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) (sin.f64 re)))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1))))
(/.f64 (*.f64 2 (*.f64 4 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1)))))) 8)
(+.f64 (sin.f64 re) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) (sin.f64 re)))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1))))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 4 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1))))))) 16)
(+.f64 (sin.f64 re) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) (sin.f64 re)))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1))))
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 4 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1))))))) (*.f64 2 (*.f64 2 (*.f64 4 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1)))))))) 32)
(+.f64 (sin.f64 re) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) (sin.f64 re)))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) 1))))

localize3.0ms (0%)

Compiler

Compiled 5 to 3 computations (40% saved)

localize11.0ms (0%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.2b
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
Compiler

Compiled 31 to 12 computations (61.3% saved)

series3.0ms (0%)

Counts
1 → 24
Calls

6 calls:

TimeVariablePointExpression
1.0ms
re
@0
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
1.0ms
im
@inf
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
0.0ms
re
@inf
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
0.0ms
im
@-inf
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
0.0ms
im
@0
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))

rewrite321.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
1136×bool.json-1
1136×bool.json-2
1120×rational.json-simplify-35
1092×rational.json-1
1092×rational.json-2
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01231
112331
233531
373931
4157331
5370931
Stop Event
node limit
Counts
1 → 10
Calls
Call 1
Inputs
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/4)) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) re) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 re re)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 4)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 4))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 4))) (*.f64 2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 4)))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x not (not (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x and (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2)) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x or (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2)) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2)))))))

simplify263.0ms (0.6%)

Algorithm
egg-herbie
Rules
1698×rational.json-simplify-35
1146×rational.json-simplify-2
1076×rational.json-simplify-38
1000×rational.json-simplify-19
906×rational.json-simplify-53
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0631078
11411078
22681066
34991060
411021060
524271060
632871060
734601060
835781060
937361060
1042221060
1172721060
Stop Event
node limit
Counts
34 → 29
Calls
Call 1
Inputs
re
(+.f64 re (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (+.f64 re (*.f64 1/2 (*.f64 re (pow.f64 im 2)))))
(+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (+.f64 (*.f64 1/720 (*.f64 re (pow.f64 im 6))) (+.f64 re (*.f64 1/2 (*.f64 re (pow.f64 im 2))))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im))) re))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im))) re))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im))) re))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im))) re))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(+.f64 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2)) 0)
(+.f64 0 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2)))
(+.f64 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/4)) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/4)))
(-.f64 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2)) 0)
(/.f64 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2)) 1)
(/.f64 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) re) 2)
(/.f64 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 re re)) 4)
(/.f64 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 4)) 8)
(/.f64 (*.f64 2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 4))) 16)
(/.f64 (+.f64 (*.f64 2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 4))) (*.f64 2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 4)))) 32)
Outputs
re
(+.f64 re (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(+.f64 re (*.f64 re (*.f64 1/2 (pow.f64 im 2))))
(+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (+.f64 re (*.f64 1/2 (*.f64 re (pow.f64 im 2)))))
(+.f64 re (+.f64 (*.f64 1/2 (*.f64 re (pow.f64 im 2))) (*.f64 re (*.f64 (pow.f64 im 4) 1/24))))
(+.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2))) (+.f64 (*.f64 re (*.f64 1/24 (pow.f64 im 4))) re))
(+.f64 re (*.f64 re (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))))
(+.f64 re (*.f64 re (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2)))))
(+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (+.f64 (*.f64 1/720 (*.f64 re (pow.f64 im 6))) (+.f64 re (*.f64 1/2 (*.f64 re (pow.f64 im 2))))))
(+.f64 (*.f64 re (*.f64 (pow.f64 im 4) 1/24)) (+.f64 re (+.f64 (*.f64 1/2 (*.f64 re (pow.f64 im 2))) (*.f64 1/720 (*.f64 re (pow.f64 im 6))))))
(+.f64 (+.f64 (*.f64 re (*.f64 1/2 (pow.f64 im 2))) (+.f64 (*.f64 re (*.f64 1/24 (pow.f64 im 4))) re)) (*.f64 (pow.f64 im 6) (*.f64 re 1/720)))
(+.f64 re (+.f64 (*.f64 re (*.f64 1/24 (pow.f64 im 4))) (*.f64 re (+.f64 (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/2 (pow.f64 im 2))))))
(+.f64 re (*.f64 re (+.f64 (*.f64 1/720 (pow.f64 im 6)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/2 (pow.f64 im 2))))))
(+.f64 re (*.f64 re (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/2 (pow.f64 im 2))))))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 re (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2))
(*.f64 re (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 re (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2))
(*.f64 re (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 re (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2))
(*.f64 re (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 re (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2))
(*.f64 re (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im))) re))
(*.f64 re (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2))
(*.f64 re (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im))) re))
(*.f64 re (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2))
(*.f64 re (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im))) re))
(*.f64 re (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2))
(*.f64 re (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(*.f64 1/2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (*.f64 -1 im))) re))
(*.f64 re (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2))
(*.f64 re (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 re (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2))
(*.f64 re (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 re (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2))
(*.f64 re (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 re (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2))
(*.f64 re (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 re (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2))
(*.f64 re (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 re (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2))
(*.f64 re (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 re (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2))
(*.f64 re (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 re (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2))
(*.f64 re (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 re (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2))
(*.f64 re (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 re (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2))
(*.f64 re (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 re (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2))
(*.f64 re (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 re (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2))
(*.f64 re (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(*.f64 1/2 (*.f64 re (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 re (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2))
(*.f64 re (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(+.f64 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2)) 0)
(*.f64 re (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2))
(*.f64 re (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(+.f64 0 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2)))
(*.f64 re (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2))
(*.f64 re (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(+.f64 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/4)) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/4)))
(*.f64 re (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2))
(*.f64 re (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(-.f64 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2)) 0)
(*.f64 re (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2))
(*.f64 re (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(/.f64 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2)) 1)
(*.f64 re (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2))
(*.f64 re (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(/.f64 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) re) 2)
(*.f64 re (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2))
(*.f64 re (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(/.f64 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (+.f64 re re)) 4)
(*.f64 re (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2))
(*.f64 re (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(/.f64 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 4)) 8)
(*.f64 re (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2))
(*.f64 re (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(/.f64 (*.f64 2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 4))) 16)
(*.f64 re (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2))
(*.f64 re (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(/.f64 (+.f64 (*.f64 2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 4))) (*.f64 2 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 4)))) 32)
(*.f64 re (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) 1/2))
(*.f64 re (*.f64 1/2 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))

localize14.0ms (0%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (sin.f64 re) (*.f64 (pow.f64 im 2) (*.f64 1/2 (sin.f64 re))))
0.1b
(*.f64 (pow.f64 im 2) (*.f64 1/2 (sin.f64 re)))
Compiler

Compiled 34 to 20 computations (41.2% saved)

series3.0ms (0%)

Counts
2 → 48
Calls

12 calls:

TimeVariablePointExpression
0.0ms
im
@0
(*.f64 (pow.f64 im 2) (*.f64 1/2 (sin.f64 re)))
0.0ms
re
@inf
(*.f64 (pow.f64 im 2) (*.f64 1/2 (sin.f64 re)))
0.0ms
re
@-inf
(*.f64 (pow.f64 im 2) (*.f64 1/2 (sin.f64 re)))
0.0ms
im
@inf
(*.f64 (pow.f64 im 2) (*.f64 1/2 (sin.f64 re)))
0.0ms
re
@0
(*.f64 (pow.f64 im 2) (*.f64 1/2 (sin.f64 re)))

rewrite95.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
1838×bool.json-1
1838×bool.json-2
1186×bool.json-3
1006×rational.json-1
1006×rational.json-2
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01256
112256
233152
368352
4141552
5340152
6709252
Stop Event
node limit
Counts
2 → 41
Calls
Call 1
Inputs
(*.f64 (pow.f64 im 2) (*.f64 1/2 (sin.f64 re)))
(+.f64 (sin.f64 re) (*.f64 (pow.f64 im 2) (*.f64 1/2 (sin.f64 re))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 re) (/.f64 (pow.f64 im 2) 4)) (*.f64 (sin.f64 re) (/.f64 (pow.f64 im 2) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 re) (pow.f64 im 2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (sin.f64 re) (pow.f64 im 2))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (sin.f64 re) (pow.f64 im 2)) 4) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (*.f64 (sin.f64 re) (pow.f64 im 2)) 4)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 (*.f64 (sin.f64 re) (pow.f64 im 2)) 4)) (*.f64 2 (*.f64 (*.f64 (sin.f64 re) (pow.f64 im 2)) 4))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x not (not (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x and (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2))) (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2))))))) (#(struct:change #<rule egg-rr> (2) ((x or (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2))) (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2)))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (+.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 (sin.f64 re) (/.f64 (pow.f64 im 2) 4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 2 (+.f64 1 (*.f64 1/2 (pow.f64 im 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (sin.f64 re)) (*.f64 1/2 (+.f64 1 (*.f64 1/2 (pow.f64 im 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))) 8))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (*.f64 (*.f64 (sin.f64 re) 1/4) (+.f64 1 (*.f64 1/2 (pow.f64 im 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2)))) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 re) 4) (*.f64 1/4 (+.f64 1 (*.f64 1/2 (pow.f64 im 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 1 (*.f64 1/2 (pow.f64 im 2))) (sin.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 8 (*.f64 (/.f64 (sin.f64 re) 8) (+.f64 1 (*.f64 1/2 (pow.f64 im 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (*.f64 (sin.f64 re) 4)) (*.f64 1/8 (+.f64 1 (*.f64 1/2 (pow.f64 im 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (+.f64 1 (*.f64 1/2 (pow.f64 im 2)))) (*.f64 1/2 (sin.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))) 1/4) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 2 (pow.f64 im 2)) (*.f64 1/2 (sin.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (+.f64 1 (*.f64 1/2 (pow.f64 im 2)))) (*.f64 2 (sin.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))) 8) 4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 (sin.f64 re) (/.f64 (pow.f64 im 2) 4))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2)))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))))) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2)))))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2)))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))))))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x not (not (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x and (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2)))) (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x or (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2)))) (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2)))))))))

simplify197.0ms (0.4%)

Algorithm
egg-herbie
Rules
2428×rational.json-simplify-1
2018×rational.json-simplify-2
1444×rational.json-simplify-35
1268×rational.json-simplify-53
1008×rational.json-simplify-48
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01332805
12882785
26062785
312172737
424942737
541232737
643462737
745462737
849922737
959012737
1063642737
Stop Event
node limit
Counts
89 → 82
Calls
Call 1
Inputs
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(+.f64 (*.f64 -1/12 (*.f64 (pow.f64 re 3) (pow.f64 im 2))) (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(+.f64 (*.f64 -1/12 (*.f64 (pow.f64 re 3) (pow.f64 im 2))) (+.f64 (*.f64 1/240 (*.f64 (pow.f64 re 5) (pow.f64 im 2))) (*.f64 1/2 (*.f64 re (pow.f64 im 2)))))
(+.f64 (*.f64 -1/12 (*.f64 (pow.f64 re 3) (pow.f64 im 2))) (+.f64 (*.f64 1/240 (*.f64 (pow.f64 re 5) (pow.f64 im 2))) (+.f64 (*.f64 -1/10080 (*.f64 (pow.f64 re 7) (pow.f64 im 2))) (*.f64 1/2 (*.f64 re (pow.f64 im 2))))))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 (+.f64 1 (*.f64 1/2 (pow.f64 im 2))) re)
(+.f64 (*.f64 (+.f64 1 (*.f64 1/2 (pow.f64 im 2))) re) (*.f64 (pow.f64 re 3) (-.f64 (*.f64 -1/12 (pow.f64 im 2)) 1/6)))
(+.f64 (*.f64 (+.f64 1 (*.f64 1/2 (pow.f64 im 2))) re) (+.f64 (*.f64 (pow.f64 re 3) (-.f64 (*.f64 -1/12 (pow.f64 im 2)) 1/6)) (*.f64 (+.f64 1/120 (*.f64 1/240 (pow.f64 im 2))) (pow.f64 re 5))))
(+.f64 (*.f64 (+.f64 1 (*.f64 1/2 (pow.f64 im 2))) re) (+.f64 (*.f64 (pow.f64 re 3) (-.f64 (*.f64 -1/12 (pow.f64 im 2)) 1/6)) (+.f64 (*.f64 (-.f64 (*.f64 -1/10080 (pow.f64 im 2)) 1/5040) (pow.f64 re 7)) (*.f64 (+.f64 1/120 (*.f64 1/240 (pow.f64 im 2))) (pow.f64 re 5)))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(sin.f64 re)
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(+.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2))) 0)
(+.f64 0 (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2))))
(+.f64 (*.f64 (sin.f64 re) (/.f64 (pow.f64 im 2) 4)) (*.f64 (sin.f64 re) (/.f64 (pow.f64 im 2) 4)))
(-.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2))) 0)
(/.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2))) 1)
(/.f64 (*.f64 (sin.f64 re) (pow.f64 im 2)) 2)
(/.f64 (*.f64 2 (*.f64 (sin.f64 re) (pow.f64 im 2))) 4)
(/.f64 (*.f64 (*.f64 (sin.f64 re) (pow.f64 im 2)) 4) 8)
(/.f64 (*.f64 2 (*.f64 (*.f64 (sin.f64 re) (pow.f64 im 2)) 4)) 16)
(/.f64 (+.f64 (*.f64 2 (*.f64 (*.f64 (sin.f64 re) (pow.f64 im 2)) 4)) (*.f64 2 (*.f64 (*.f64 (sin.f64 re) (pow.f64 im 2)) 4))) 32)
(-.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2)))) 0)
(*.f64 2 (*.f64 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))) 1/4))
(*.f64 2 (+.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 (sin.f64 re) (/.f64 (pow.f64 im 2) 4))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 2 (+.f64 1 (*.f64 1/2 (pow.f64 im 2)))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (pow.f64 im 2)))
(*.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2)))) 1)
(*.f64 1 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2)))))
(*.f64 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))) 1/2)
(*.f64 (*.f64 2 (sin.f64 re)) (*.f64 1/2 (+.f64 1 (*.f64 1/2 (pow.f64 im 2)))))
(*.f64 4 (/.f64 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))) 8))
(*.f64 4 (*.f64 (*.f64 (sin.f64 re) 1/4) (+.f64 1 (*.f64 1/2 (pow.f64 im 2)))))
(*.f64 (*.f64 2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2)))) 1/4)
(*.f64 (*.f64 (sin.f64 re) 4) (*.f64 1/4 (+.f64 1 (*.f64 1/2 (pow.f64 im 2)))))
(*.f64 (+.f64 1 (*.f64 1/2 (pow.f64 im 2))) (sin.f64 re))
(*.f64 8 (*.f64 (/.f64 (sin.f64 re) 8) (+.f64 1 (*.f64 1/2 (pow.f64 im 2)))))
(*.f64 (*.f64 2 (*.f64 (sin.f64 re) 4)) (*.f64 1/8 (+.f64 1 (*.f64 1/2 (pow.f64 im 2)))))
(*.f64 (*.f64 2 (+.f64 1 (*.f64 1/2 (pow.f64 im 2)))) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/4 (*.f64 2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2)))))
(*.f64 (*.f64 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))) 1/4) 2)
(*.f64 (+.f64 2 (pow.f64 im 2)) (*.f64 1/2 (sin.f64 re)))
(*.f64 (*.f64 1/2 (+.f64 1 (*.f64 1/2 (pow.f64 im 2)))) (*.f64 2 (sin.f64 re)))
(*.f64 (/.f64 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))) 8) 4)
(*.f64 (+.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 (sin.f64 re) (/.f64 (pow.f64 im 2) 4))) 2)
(/.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2)))) 1)
(/.f64 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))) 2)
(/.f64 (*.f64 2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2)))) 4)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))))) 8)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2)))))) 16)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2)))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))))))) 32)
Outputs
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 (pow.f64 im 2) (*.f64 re 1/2))
(*.f64 (pow.f64 im 2) (*.f64 1/2 re))
(*.f64 re (*.f64 1/2 (pow.f64 im 2)))
(+.f64 (*.f64 -1/12 (*.f64 (pow.f64 re 3) (pow.f64 im 2))) (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(+.f64 (*.f64 1/2 (*.f64 re (pow.f64 im 2))) (*.f64 -1/12 (*.f64 (pow.f64 im 2) (pow.f64 re 3))))
(+.f64 (*.f64 (pow.f64 im 2) (*.f64 re 1/2)) (*.f64 (pow.f64 im 2) (*.f64 (pow.f64 re 3) -1/12)))
(+.f64 (*.f64 (pow.f64 im 2) (*.f64 1/2 re)) (*.f64 (pow.f64 im 2) (*.f64 -1/12 (pow.f64 re 3))))
(*.f64 (pow.f64 im 2) (+.f64 (*.f64 -1/12 (pow.f64 re 3)) (*.f64 1/2 re)))
(+.f64 (*.f64 -1/12 (*.f64 (pow.f64 re 3) (pow.f64 im 2))) (+.f64 (*.f64 1/240 (*.f64 (pow.f64 re 5) (pow.f64 im 2))) (*.f64 1/2 (*.f64 re (pow.f64 im 2)))))
(+.f64 (*.f64 1/240 (*.f64 (pow.f64 im 2) (pow.f64 re 5))) (+.f64 (*.f64 1/2 (*.f64 re (pow.f64 im 2))) (*.f64 -1/12 (*.f64 (pow.f64 im 2) (pow.f64 re 3)))))
(+.f64 (*.f64 (pow.f64 im 2) (*.f64 (pow.f64 re 3) -1/12)) (+.f64 (*.f64 (pow.f64 im 2) (*.f64 re 1/2)) (*.f64 (pow.f64 im 2) (*.f64 1/240 (pow.f64 re 5)))))
(+.f64 (*.f64 (pow.f64 im 2) (*.f64 -1/12 (pow.f64 re 3))) (+.f64 (*.f64 (pow.f64 im 2) (*.f64 1/2 re)) (*.f64 1/240 (*.f64 (pow.f64 im 2) (pow.f64 re 5)))))
(+.f64 (*.f64 (pow.f64 im 2) (+.f64 (*.f64 -1/12 (pow.f64 re 3)) (*.f64 1/2 re))) (*.f64 (pow.f64 re 5) (*.f64 (pow.f64 im 2) 1/240)))
(+.f64 (*.f64 (pow.f64 im 2) (*.f64 1/2 re)) (*.f64 (pow.f64 im 2) (+.f64 (*.f64 1/240 (pow.f64 re 5)) (*.f64 -1/12 (pow.f64 re 3)))))
(+.f64 (*.f64 -1/12 (*.f64 (pow.f64 re 3) (pow.f64 im 2))) (+.f64 (*.f64 1/240 (*.f64 (pow.f64 re 5) (pow.f64 im 2))) (+.f64 (*.f64 -1/10080 (*.f64 (pow.f64 re 7) (pow.f64 im 2))) (*.f64 1/2 (*.f64 re (pow.f64 im 2))))))
(+.f64 (*.f64 -1/12 (*.f64 (pow.f64 im 2) (pow.f64 re 3))) (+.f64 (*.f64 1/240 (*.f64 (pow.f64 im 2) (pow.f64 re 5))) (+.f64 (*.f64 1/2 (*.f64 re (pow.f64 im 2))) (*.f64 -1/10080 (*.f64 (pow.f64 im 2) (pow.f64 re 7))))))
(+.f64 (*.f64 (pow.f64 im 2) (*.f64 (pow.f64 re 3) -1/12)) (+.f64 (*.f64 (pow.f64 im 2) (*.f64 re 1/2)) (+.f64 (*.f64 (pow.f64 im 2) (*.f64 1/240 (pow.f64 re 5))) (*.f64 (pow.f64 im 2) (*.f64 (pow.f64 re 7) -1/10080)))))
(+.f64 (*.f64 (pow.f64 im 2) (*.f64 -1/12 (pow.f64 re 3))) (+.f64 (*.f64 1/240 (*.f64 (pow.f64 im 2) (pow.f64 re 5))) (+.f64 (*.f64 (pow.f64 im 2) (*.f64 1/2 re)) (*.f64 (pow.f64 im 2) (*.f64 -1/10080 (pow.f64 re 7))))))
(+.f64 (*.f64 (pow.f64 im 2) (+.f64 (*.f64 -1/12 (pow.f64 re 3)) (*.f64 1/2 re))) (*.f64 (pow.f64 im 2) (+.f64 (*.f64 -1/10080 (pow.f64 re 7)) (*.f64 1/240 (pow.f64 re 5)))))
(+.f64 (*.f64 (pow.f64 im 2) (+.f64 (*.f64 -1/12 (pow.f64 re 3)) (*.f64 1/2 re))) (*.f64 (pow.f64 im 2) (+.f64 (*.f64 1/240 (pow.f64 re 5)) (*.f64 -1/10080 (pow.f64 re 7)))))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(*.f64 (+.f64 1 (*.f64 1/2 (pow.f64 im 2))) re)
(*.f64 re (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(+.f64 (*.f64 (+.f64 1 (*.f64 1/2 (pow.f64 im 2))) re) (*.f64 (pow.f64 re 3) (-.f64 (*.f64 -1/12 (pow.f64 im 2)) 1/6)))
(+.f64 (*.f64 re (+.f64 1 (*.f64 1/2 (pow.f64 im 2)))) (*.f64 (pow.f64 re 3) (-.f64 (*.f64 (pow.f64 im 2) -1/12) 1/6)))
(+.f64 (*.f64 (+.f64 1 (*.f64 1/2 (pow.f64 im 2))) re) (+.f64 (*.f64 (pow.f64 re 3) (-.f64 (*.f64 -1/12 (pow.f64 im 2)) 1/6)) (*.f64 (+.f64 1/120 (*.f64 1/240 (pow.f64 im 2))) (pow.f64 re 5))))
(+.f64 (*.f64 re (+.f64 1 (*.f64 1/2 (pow.f64 im 2)))) (+.f64 (*.f64 (pow.f64 re 3) (-.f64 (*.f64 (pow.f64 im 2) -1/12) 1/6)) (*.f64 (pow.f64 re 5) (+.f64 1/120 (*.f64 (pow.f64 im 2) 1/240)))))
(+.f64 (*.f64 (+.f64 1 (*.f64 1/2 (pow.f64 im 2))) re) (+.f64 (*.f64 (pow.f64 re 3) (-.f64 (*.f64 -1/12 (pow.f64 im 2)) 1/6)) (+.f64 (*.f64 (-.f64 (*.f64 -1/10080 (pow.f64 im 2)) 1/5040) (pow.f64 re 7)) (*.f64 (+.f64 1/120 (*.f64 1/240 (pow.f64 im 2))) (pow.f64 re 5)))))
(+.f64 (*.f64 (pow.f64 re 3) (-.f64 (*.f64 (pow.f64 im 2) -1/12) 1/6)) (+.f64 (+.f64 (*.f64 (pow.f64 re 5) (+.f64 1/120 (*.f64 (pow.f64 im 2) 1/240))) (*.f64 (pow.f64 re 7) (-.f64 (*.f64 (pow.f64 im 2) -1/10080) 1/5040))) (*.f64 re (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))))
(+.f64 (*.f64 re (+.f64 1 (*.f64 1/2 (pow.f64 im 2)))) (+.f64 (*.f64 (pow.f64 re 3) (-.f64 (*.f64 (pow.f64 im 2) -1/12) 1/6)) (+.f64 (*.f64 (pow.f64 re 5) (+.f64 1/120 (*.f64 (pow.f64 im 2) 1/240))) (*.f64 (pow.f64 re 7) (-.f64 (*.f64 (pow.f64 im 2) -1/10080) 1/5040)))))
(+.f64 (+.f64 (*.f64 re (+.f64 1 (*.f64 1/2 (pow.f64 im 2)))) (*.f64 (pow.f64 re 3) (-.f64 (*.f64 (pow.f64 im 2) -1/12) 1/6))) (+.f64 (*.f64 (pow.f64 re 5) (+.f64 1/120 (*.f64 (pow.f64 im 2) 1/240))) (*.f64 (pow.f64 re 7) (-.f64 (*.f64 (pow.f64 im 2) -1/10080) 1/5040))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2))))
(sin.f64 re)
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2))))
(+.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2))) 0)
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(+.f64 0 (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2))))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(+.f64 (*.f64 (sin.f64 re) (/.f64 (pow.f64 im 2) 4)) (*.f64 (sin.f64 re) (/.f64 (pow.f64 im 2) 4)))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(-.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2))) 0)
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(/.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2))) 1)
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(/.f64 (*.f64 (sin.f64 re) (pow.f64 im 2)) 2)
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(/.f64 (*.f64 2 (*.f64 (sin.f64 re) (pow.f64 im 2))) 4)
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(/.f64 (*.f64 (*.f64 (sin.f64 re) (pow.f64 im 2)) 4) 8)
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(/.f64 (*.f64 2 (*.f64 (*.f64 (sin.f64 re) (pow.f64 im 2)) 4)) 16)
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(/.f64 (+.f64 (*.f64 2 (*.f64 (*.f64 (sin.f64 re) (pow.f64 im 2)) 4)) (*.f64 2 (*.f64 (*.f64 (sin.f64 re) (pow.f64 im 2)) 4))) 32)
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(-.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2)))) 0)
(*.f64 (+.f64 2 (pow.f64 im 2)) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))))
(*.f64 2 (*.f64 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))) 1/4))
(*.f64 (+.f64 2 (pow.f64 im 2)) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))))
(*.f64 2 (+.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 (sin.f64 re) (/.f64 (pow.f64 im 2) 4))))
(*.f64 2 (+.f64 (*.f64 (sin.f64 re) (/.f64 (pow.f64 im 2) 4)) (*.f64 1/2 (sin.f64 re))))
(*.f64 2 (*.f64 (sin.f64 re) (+.f64 1/2 (/.f64 (pow.f64 im 2) 4))))
(*.f64 (sin.f64 re) (*.f64 (+.f64 1/2 (/.f64 (pow.f64 im 2) 4)) 2))
(*.f64 2 (*.f64 (sin.f64 re) (+.f64 1/2 (*.f64 (pow.f64 im 2) 1/4))))
(*.f64 (sin.f64 re) (*.f64 2 (+.f64 1/2 (*.f64 (pow.f64 im 2) 1/4))))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))))
(*.f64 (+.f64 2 (pow.f64 im 2)) (*.f64 1/2 (sin.f64 re)))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 2 (+.f64 1 (*.f64 1/2 (pow.f64 im 2)))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (pow.f64 im 2)))
(*.f64 (+.f64 2 (pow.f64 im 2)) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))))
(*.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2)))) 1)
(*.f64 (+.f64 2 (pow.f64 im 2)) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))))
(*.f64 1 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2)))))
(*.f64 (+.f64 2 (pow.f64 im 2)) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))))
(*.f64 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))) 1/2)
(*.f64 (+.f64 2 (pow.f64 im 2)) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))))
(*.f64 (*.f64 2 (sin.f64 re)) (*.f64 1/2 (+.f64 1 (*.f64 1/2 (pow.f64 im 2)))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(*.f64 4 (/.f64 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))) 8))
(*.f64 (+.f64 2 (pow.f64 im 2)) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))))
(*.f64 4 (*.f64 (*.f64 (sin.f64 re) 1/4) (+.f64 1 (*.f64 1/2 (pow.f64 im 2)))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (*.f64 2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2)))) 1/4)
(*.f64 (+.f64 2 (pow.f64 im 2)) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))))
(*.f64 (*.f64 (sin.f64 re) 4) (*.f64 1/4 (+.f64 1 (*.f64 1/2 (pow.f64 im 2)))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (+.f64 1 (*.f64 1/2 (pow.f64 im 2))) (sin.f64 re))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(*.f64 8 (*.f64 (/.f64 (sin.f64 re) 8) (+.f64 1 (*.f64 1/2 (pow.f64 im 2)))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (*.f64 2 (*.f64 (sin.f64 re) 4)) (*.f64 1/8 (+.f64 1 (*.f64 1/2 (pow.f64 im 2)))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (*.f64 2 (+.f64 1 (*.f64 1/2 (pow.f64 im 2)))) (*.f64 1/2 (sin.f64 re)))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(*.f64 1/4 (*.f64 2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2)))))
(*.f64 (+.f64 2 (pow.f64 im 2)) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))))
(*.f64 (*.f64 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))) 1/4) 2)
(*.f64 (+.f64 2 (pow.f64 im 2)) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))))
(*.f64 (+.f64 2 (pow.f64 im 2)) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))))
(*.f64 (*.f64 1/2 (+.f64 1 (*.f64 1/2 (pow.f64 im 2)))) (*.f64 2 (sin.f64 re)))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (/.f64 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))) 8) 4)
(*.f64 (+.f64 2 (pow.f64 im 2)) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))))
(*.f64 (+.f64 (*.f64 1/2 (sin.f64 re)) (*.f64 (sin.f64 re) (/.f64 (pow.f64 im 2) 4))) 2)
(*.f64 2 (+.f64 (*.f64 (sin.f64 re) (/.f64 (pow.f64 im 2) 4)) (*.f64 1/2 (sin.f64 re))))
(*.f64 2 (*.f64 (sin.f64 re) (+.f64 1/2 (/.f64 (pow.f64 im 2) 4))))
(*.f64 (sin.f64 re) (*.f64 (+.f64 1/2 (/.f64 (pow.f64 im 2) 4)) 2))
(*.f64 2 (*.f64 (sin.f64 re) (+.f64 1/2 (*.f64 (pow.f64 im 2) 1/4))))
(*.f64 (sin.f64 re) (*.f64 2 (+.f64 1/2 (*.f64 (pow.f64 im 2) 1/4))))
(/.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2)))) 1)
(*.f64 (+.f64 2 (pow.f64 im 2)) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))))
(/.f64 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))) 2)
(*.f64 (+.f64 2 (pow.f64 im 2)) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))))
(/.f64 (*.f64 2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2)))) 4)
(*.f64 (+.f64 2 (pow.f64 im 2)) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))))) 8)
(*.f64 (+.f64 2 (pow.f64 im 2)) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2)))))) 16)
(*.f64 (+.f64 2 (pow.f64 im 2)) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))))
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2)))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))))))) 32)
(*.f64 (+.f64 2 (pow.f64 im 2)) (*.f64 1/2 (sin.f64 re)))
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))))

localize27.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (sin.f64 re) (*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))))
0.0b
(*.f64 1/2 (pow.f64 im 2))
0.1b
(*.f64 1/24 (pow.f64 im 4))
0.1b
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))))
Compiler

Compiled 68 to 49 computations (27.9% saved)

series6.0ms (0%)

Counts
3 → 32
Calls

15 calls:

TimeVariablePointExpression
2.0ms
re
@-inf
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))))
0.0ms
re
@0
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))))
0.0ms
im
@inf
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))))
0.0ms
re
@0
(+.f64 (sin.f64 re) (*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))))
0.0ms
re
@inf
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))))

rewrite112.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
2076×bool.json-1
1206×bool.json-2
1166×rational.json-1
1166×rational.json-2
1166×rational.json-4
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
017105
1167101
2405101
3803101
41707101
53919101
67936101
Stop Event
node limit
Counts
3 → 45
Calls
Call 1
Inputs
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))))
(*.f64 1/2 (pow.f64 im 2))
(+.f64 (sin.f64 re) (*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))))) (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (*.f64 (+.f64 (pow.f64 im 2) (*.f64 (pow.f64 im 4) 1/12)) (sin.f64 re))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 re) (*.f64 4 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (sin.f64 re) (*.f64 4 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))))) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (sin.f64 re) (*.f64 4 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))))))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (sin.f64 re) (*.f64 4 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))))))) (*.f64 2 (*.f64 2 (*.f64 (sin.f64 re) (*.f64 4 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))))))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x not (not (*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))))))))) (#(struct:change #<rule egg-rr> (2) ((x and (*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))) (*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x or (*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))) (*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1/2 (pow.f64 im 2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 1/2 (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (pow.f64 im 2) 1/4) (*.f64 (pow.f64 im 2) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 1/2 (pow.f64 im 2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 im 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/2 (pow.f64 im 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (pow.f64 im 2)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 im 2) 4) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (pow.f64 im 2) 4)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 im 2) 4))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x not (not (*.f64 1/2 (pow.f64 im 2))))))) (#(struct:change #<rule egg-rr> (2) ((x and (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/2 (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x or (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/2 (pow.f64 im 2)))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (sin.f64 re) (*.f64 2 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1)) (*.f64 (sin.f64 re) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 re) (*.f64 2 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1)))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 re) 2) (*.f64 1/2 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 re) 2) (/.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1)) (sin.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 4 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1)))) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1))) (*.f64 (sin.f64 re) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 re) 1/2) (*.f64 2 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 4 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1)) (*.f64 (sin.f64 re) 1/2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1))) (*.f64 (sin.f64 re) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1)) 2) (*.f64 (sin.f64 re) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 re) (*.f64 2 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 4 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1)))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 4 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1))))) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 4 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1)))))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 4 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1)))))) (*.f64 2 (*.f64 2 (*.f64 4 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1))))))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x not (not (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x and (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1))) (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x or (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1))) (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1))))))))

simplify233.0ms (0.5%)

Algorithm
egg-herbie
Rules
2246×rational.json-simplify-2
1962×rational.json-simplify-1
1886×rational.json-simplify-35
1130×rational.json-simplify-53
938×rational.json-simplify-51
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01414239
13264131
26603549
316883385
436353385
546393385
649093385
752853385
859343385
962693385
1071113385
Stop Event
node limit
Counts
77 → 96
Calls
Call 1
Inputs
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) re)
(+.f64 (*.f64 -1/6 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) (pow.f64 re 3))) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) re))
(+.f64 (*.f64 -1/6 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) (pow.f64 re 3))) (+.f64 (*.f64 1/120 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) (pow.f64 re 5))) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) re)))
(+.f64 (*.f64 -1/5040 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) (pow.f64 re 7))) (+.f64 (*.f64 -1/6 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) (pow.f64 re 3))) (+.f64 (*.f64 1/120 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) (pow.f64 re 5))) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) re))))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4))))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4))))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4))))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4))))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4))))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4))))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4))))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4))))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4))))
(*.f64 (+.f64 1 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))) re)
(+.f64 (*.f64 (+.f64 1 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))) re) (*.f64 (-.f64 (*.f64 -1/6 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))) 1/6) (pow.f64 re 3)))
(+.f64 (*.f64 (+.f64 1 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))) re) (+.f64 (*.f64 (pow.f64 re 5) (+.f64 1/120 (*.f64 1/120 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))))) (*.f64 (-.f64 (*.f64 -1/6 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))) 1/6) (pow.f64 re 3))))
(+.f64 (*.f64 (-.f64 (*.f64 -1/5040 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))) 1/5040) (pow.f64 re 7)) (+.f64 (*.f64 (+.f64 1 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))) re) (+.f64 (*.f64 (pow.f64 re 5) (+.f64 1/120 (*.f64 1/120 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))))) (*.f64 (-.f64 (*.f64 -1/6 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))) 1/6) (pow.f64 re 3)))))
(sin.f64 re)
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))))
(+.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4))))
(+.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))))
(+.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4))))
(+.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))))
(+.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))))
(+.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))) 0)
(+.f64 0 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))))) (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))))))
(-.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))) 0)
(/.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))) 1)
(/.f64 (*.f64 1 (*.f64 (+.f64 (pow.f64 im 2) (*.f64 (pow.f64 im 4) 1/12)) (sin.f64 re))) 2)
(/.f64 (*.f64 (sin.f64 re) (*.f64 4 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))))) 4)
(/.f64 (*.f64 2 (*.f64 (sin.f64 re) (*.f64 4 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))))) 8)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (sin.f64 re) (*.f64 4 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))))))) 16)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (sin.f64 re) (*.f64 4 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))))))) (*.f64 2 (*.f64 2 (*.f64 (sin.f64 re) (*.f64 4 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))))))) 32)
(+.f64 (*.f64 1/2 (pow.f64 im 2)) 0)
(+.f64 0 (*.f64 1/2 (pow.f64 im 2)))
(+.f64 (*.f64 (pow.f64 im 2) 1/4) (*.f64 (pow.f64 im 2) 1/4))
(-.f64 (*.f64 1/2 (pow.f64 im 2)) 0)
(/.f64 (pow.f64 im 2) 2)
(/.f64 (*.f64 1/2 (pow.f64 im 2)) 1)
(/.f64 (*.f64 2 (pow.f64 im 2)) 4)
(/.f64 (*.f64 (pow.f64 im 2) 4) 8)
(/.f64 (*.f64 2 (*.f64 (pow.f64 im 2) 4)) 16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 im 2) 4))) 32)
(-.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1))) 0)
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1)))
(*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 2 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1)))))
(*.f64 2 (*.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1)) (*.f64 (sin.f64 re) 1/2)))
(*.f64 4 (/.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1))) 4))
(*.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1))) 1)
(*.f64 1 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1))))
(*.f64 (*.f64 (sin.f64 re) (*.f64 2 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1)))) 1/2)
(*.f64 (*.f64 (sin.f64 re) 2) (*.f64 1/2 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1))))
(*.f64 (*.f64 (sin.f64 re) 2) (/.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1)) 2))
(*.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1)) (sin.f64 re))
(*.f64 (*.f64 4 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1)))) 1/4)
(*.f64 (*.f64 2 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1))) (*.f64 (sin.f64 re) 1/2))
(*.f64 (*.f64 (sin.f64 re) 1/2) (*.f64 2 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1))))
(*.f64 1/4 (*.f64 4 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1)))))
(*.f64 (*.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1)) (*.f64 (sin.f64 re) 1/2)) 2)
(*.f64 (*.f64 1/2 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1))) (*.f64 (sin.f64 re) 2))
(*.f64 (/.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1)) 2) (*.f64 (sin.f64 re) 2))
(*.f64 (/.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1))) 4) 4)
(/.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1))) 1)
(/.f64 (*.f64 (sin.f64 re) (*.f64 2 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1)))) 2)
(/.f64 (*.f64 4 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1)))) 4)
(/.f64 (*.f64 2 (*.f64 4 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1))))) 8)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 4 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1)))))) 16)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 4 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1)))))) (*.f64 2 (*.f64 2 (*.f64 4 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1))))))) 32)
Outputs
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) re)
(+.f64 (*.f64 -1/6 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) (pow.f64 re 3))) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) re))
(+.f64 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) re) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) (*.f64 (pow.f64 re 3) -1/6)))
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) (+.f64 re (*.f64 -1/6 (pow.f64 re 3))))
(+.f64 (*.f64 -1/6 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) (pow.f64 re 3))) (+.f64 (*.f64 1/120 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) (pow.f64 re 5))) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) re)))
(+.f64 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) (*.f64 (pow.f64 re 5) 1/120)) (+.f64 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) re) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) (*.f64 (pow.f64 re 3) -1/6))))
(+.f64 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) (*.f64 -1/6 (pow.f64 re 3))) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) (+.f64 re (*.f64 1/120 (pow.f64 re 5)))))
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) (+.f64 (*.f64 1/120 (pow.f64 re 5)) (+.f64 re (*.f64 -1/6 (pow.f64 re 3)))))
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) (+.f64 re (+.f64 (*.f64 1/120 (pow.f64 re 5)) (*.f64 -1/6 (pow.f64 re 3)))))
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) (+.f64 (*.f64 -1/6 (pow.f64 re 3)) (+.f64 re (*.f64 1/120 (pow.f64 re 5)))))
(+.f64 (*.f64 -1/5040 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) (pow.f64 re 7))) (+.f64 (*.f64 -1/6 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) (pow.f64 re 3))) (+.f64 (*.f64 1/120 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) (pow.f64 re 5))) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) re))))
(+.f64 (+.f64 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) (*.f64 (pow.f64 re 5) 1/120)) (+.f64 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) re) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) (*.f64 (pow.f64 re 3) -1/6)))) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) (*.f64 (pow.f64 re 7) -1/5040)))
(+.f64 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) (*.f64 -1/6 (pow.f64 re 3))) (+.f64 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) (+.f64 re (*.f64 1/120 (pow.f64 re 5)))) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) (*.f64 -1/5040 (pow.f64 re 7)))))
(+.f64 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) (*.f64 1/120 (pow.f64 re 5))) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) (+.f64 (*.f64 -1/5040 (pow.f64 re 7)) (+.f64 re (*.f64 -1/6 (pow.f64 re 3))))))
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) (+.f64 (*.f64 -1/6 (pow.f64 re 3)) (+.f64 (*.f64 -1/5040 (pow.f64 re 7)) (+.f64 re (*.f64 1/120 (pow.f64 re 5))))))
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) (+.f64 (*.f64 -1/5040 (pow.f64 re 7)) (+.f64 (*.f64 -1/6 (pow.f64 re 3)) (+.f64 re (*.f64 1/120 (pow.f64 re 5))))))
(*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 (pow.f64 im 2) (*.f64 1/2 (sin.f64 re)))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4))))
(+.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2))) (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))))
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) (sin.f64 re))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4))))
(+.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2))) (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))))
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) (sin.f64 re))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4))))
(+.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2))) (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))))
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) (sin.f64 re))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4))))
(+.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2))) (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))))
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) (sin.f64 re))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4))))
(+.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2))) (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))))
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) (sin.f64 re))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4))))
(+.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2))) (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))))
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) (sin.f64 re))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4))))
(+.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2))) (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))))
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) (sin.f64 re))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4))))
(+.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2))) (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))))
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) (sin.f64 re))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4))))
(+.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2))) (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))))
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) (sin.f64 re))
(*.f64 (+.f64 1 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))) re)
(*.f64 re (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) 1)))
(+.f64 (*.f64 (+.f64 1 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))) re) (*.f64 (-.f64 (*.f64 -1/6 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))) 1/6) (pow.f64 re 3)))
(+.f64 (*.f64 re (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) 1))) (*.f64 (pow.f64 re 3) (-.f64 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) -1/6) 1/6)))
(+.f64 (*.f64 (+.f64 1 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))) re) (+.f64 (*.f64 (pow.f64 re 5) (+.f64 1/120 (*.f64 1/120 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))))) (*.f64 (-.f64 (*.f64 -1/6 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))) 1/6) (pow.f64 re 3))))
(+.f64 (*.f64 re (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) 1))) (+.f64 (*.f64 (pow.f64 re 3) (-.f64 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) -1/6) 1/6)) (*.f64 (pow.f64 re 5) (+.f64 1/120 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) 1/120)))))
(+.f64 (+.f64 (*.f64 re (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) 1))) (*.f64 (pow.f64 re 3) (-.f64 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) -1/6) 1/6))) (*.f64 (pow.f64 re 5) (+.f64 1/120 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) 1/120))))
(+.f64 (*.f64 (-.f64 (*.f64 -1/5040 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))) 1/5040) (pow.f64 re 7)) (+.f64 (*.f64 (+.f64 1 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))) re) (+.f64 (*.f64 (pow.f64 re 5) (+.f64 1/120 (*.f64 1/120 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))))) (*.f64 (-.f64 (*.f64 -1/6 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))) 1/6) (pow.f64 re 3)))))
(+.f64 (*.f64 re (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) 1))) (+.f64 (+.f64 (*.f64 (pow.f64 re 3) (-.f64 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) -1/6) 1/6)) (*.f64 (pow.f64 re 5) (+.f64 1/120 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) 1/120)))) (*.f64 (pow.f64 re 7) (-.f64 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) -1/5040) 1/5040))))
(+.f64 (*.f64 re (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) 1))) (+.f64 (*.f64 (pow.f64 re 3) (-.f64 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) -1/6) 1/6)) (+.f64 (*.f64 (pow.f64 re 5) (+.f64 1/120 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) 1/120))) (*.f64 (pow.f64 re 7) (-.f64 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) -1/5040) 1/5040)))))
(sin.f64 re)
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2))))
(+.f64 (sin.f64 re) (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (pow.f64 im 2) 2))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 2 (pow.f64 im 2)))
(+.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))))
(+.f64 (sin.f64 re) (+.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2))) (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))) (+.f64 (sin.f64 re) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))))
(+.f64 (sin.f64 re) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) (sin.f64 re)))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) 1)))
(+.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))))
(+.f64 (sin.f64 re) (+.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2))) (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))) (+.f64 (sin.f64 re) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))))
(+.f64 (sin.f64 re) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) (sin.f64 re)))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) 1)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4))))
(+.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2))) (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))))
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) (sin.f64 re))
(+.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))))
(+.f64 (sin.f64 re) (+.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2))) (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))) (+.f64 (sin.f64 re) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))))
(+.f64 (sin.f64 re) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) (sin.f64 re)))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) 1)))
(+.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))))
(+.f64 (sin.f64 re) (+.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2))) (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))) (+.f64 (sin.f64 re) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))))
(+.f64 (sin.f64 re) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) (sin.f64 re)))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) 1)))
(*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))
(*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4))))
(+.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2))) (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))))
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) (sin.f64 re))
(+.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))))
(+.f64 (sin.f64 re) (+.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2))) (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))) (+.f64 (sin.f64 re) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))))
(+.f64 (sin.f64 re) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) (sin.f64 re)))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) 1)))
(+.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (pow.f64 im 2))) (*.f64 1/24 (*.f64 (sin.f64 re) (pow.f64 im 4)))))
(+.f64 (sin.f64 re) (+.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2))) (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))) (+.f64 (sin.f64 re) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))))
(+.f64 (sin.f64 re) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) (sin.f64 re)))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) 1)))
(+.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))) 0)
(+.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2))) (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))))
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) (sin.f64 re))
(+.f64 0 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))))
(+.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2))) (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))))
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) (sin.f64 re))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))))) (*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))))))
(+.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2))) (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))))
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) (sin.f64 re))
(-.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))) 0)
(+.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2))) (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))))
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) (sin.f64 re))
(/.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))) 1)
(+.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2))) (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))))
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) (sin.f64 re))
(/.f64 (*.f64 1 (*.f64 (+.f64 (pow.f64 im 2) (*.f64 (pow.f64 im 4) 1/12)) (sin.f64 re))) 2)
(*.f64 (*.f64 (sin.f64 re) (+.f64 (pow.f64 im 2) (*.f64 (pow.f64 im 4) 1/12))) 1/2)
(*.f64 1/2 (*.f64 (sin.f64 re) (+.f64 (pow.f64 im 2) (*.f64 (pow.f64 im 4) 1/12))))
(/.f64 (*.f64 (sin.f64 re) (*.f64 4 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))))) 4)
(+.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2))) (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))))
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) (sin.f64 re))
(/.f64 (*.f64 2 (*.f64 (sin.f64 re) (*.f64 4 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))))) 8)
(+.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2))) (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))))
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) (sin.f64 re))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (sin.f64 re) (*.f64 4 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))))))) 16)
(+.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2))) (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))))
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) (sin.f64 re))
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (sin.f64 re) (*.f64 4 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))))))) (*.f64 2 (*.f64 2 (*.f64 (sin.f64 re) (*.f64 4 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))))))) 32)
(+.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2))) (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re))))
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) (sin.f64 re))
(+.f64 (*.f64 1/2 (pow.f64 im 2)) 0)
(*.f64 1/2 (pow.f64 im 2))
(+.f64 0 (*.f64 1/2 (pow.f64 im 2)))
(*.f64 1/2 (pow.f64 im 2))
(+.f64 (*.f64 (pow.f64 im 2) 1/4) (*.f64 (pow.f64 im 2) 1/4))
(*.f64 1/2 (pow.f64 im 2))
(-.f64 (*.f64 1/2 (pow.f64 im 2)) 0)
(*.f64 1/2 (pow.f64 im 2))
(/.f64 (pow.f64 im 2) 2)
(*.f64 1/2 (pow.f64 im 2))
(/.f64 (*.f64 1/2 (pow.f64 im 2)) 1)
(*.f64 1/2 (pow.f64 im 2))
(/.f64 (*.f64 2 (pow.f64 im 2)) 4)
(*.f64 1/2 (pow.f64 im 2))
(/.f64 (*.f64 (pow.f64 im 2) 4) 8)
(*.f64 1/2 (pow.f64 im 2))
(/.f64 (*.f64 2 (*.f64 (pow.f64 im 2) 4)) 16)
(*.f64 1/2 (pow.f64 im 2))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 im 2) 4))) 32)
(*.f64 1/2 (pow.f64 im 2))
(-.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1))) 0)
(+.f64 (sin.f64 re) (+.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2))) (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))) (+.f64 (sin.f64 re) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))))
(+.f64 (sin.f64 re) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) (sin.f64 re)))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) 1)))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1)))
(+.f64 (sin.f64 re) (+.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2))) (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))) (+.f64 (sin.f64 re) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))))
(+.f64 (sin.f64 re) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) (sin.f64 re)))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) 1)))
(*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 2 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1)))))
(+.f64 (sin.f64 re) (+.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2))) (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))) (+.f64 (sin.f64 re) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))))
(+.f64 (sin.f64 re) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) (sin.f64 re)))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) 1)))
(*.f64 2 (*.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1)) (*.f64 (sin.f64 re) 1/2)))
(+.f64 (sin.f64 re) (+.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2))) (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))) (+.f64 (sin.f64 re) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))))
(+.f64 (sin.f64 re) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) (sin.f64 re)))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) 1)))
(*.f64 4 (/.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1))) 4))
(+.f64 (sin.f64 re) (+.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2))) (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))) (+.f64 (sin.f64 re) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))))
(+.f64 (sin.f64 re) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) (sin.f64 re)))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) 1)))
(*.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1))) 1)
(+.f64 (sin.f64 re) (+.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2))) (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))) (+.f64 (sin.f64 re) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))))
(+.f64 (sin.f64 re) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) (sin.f64 re)))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) 1)))
(*.f64 1 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1))))
(+.f64 (sin.f64 re) (+.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2))) (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))) (+.f64 (sin.f64 re) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))))
(+.f64 (sin.f64 re) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) (sin.f64 re)))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) 1)))
(*.f64 (*.f64 (sin.f64 re) (*.f64 2 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1)))) 1/2)
(+.f64 (sin.f64 re) (+.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2))) (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))) (+.f64 (sin.f64 re) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))))
(+.f64 (sin.f64 re) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) (sin.f64 re)))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) 1)))
(*.f64 (*.f64 (sin.f64 re) 2) (*.f64 1/2 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1))))
(+.f64 (sin.f64 re) (+.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2))) (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))) (+.f64 (sin.f64 re) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))))
(+.f64 (sin.f64 re) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) (sin.f64 re)))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) 1)))
(*.f64 (*.f64 (sin.f64 re) 2) (/.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1)) 2))
(+.f64 (sin.f64 re) (+.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2))) (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))) (+.f64 (sin.f64 re) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))))
(+.f64 (sin.f64 re) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) (sin.f64 re)))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) 1)))
(*.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1)) (sin.f64 re))
(+.f64 (sin.f64 re) (+.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2))) (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))) (+.f64 (sin.f64 re) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))))
(+.f64 (sin.f64 re) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) (sin.f64 re)))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) 1)))
(*.f64 (*.f64 4 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1)))) 1/4)
(+.f64 (sin.f64 re) (+.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2))) (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))) (+.f64 (sin.f64 re) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))))
(+.f64 (sin.f64 re) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) (sin.f64 re)))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) 1)))
(*.f64 (*.f64 2 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1))) (*.f64 (sin.f64 re) 1/2))
(+.f64 (sin.f64 re) (+.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2))) (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))) (+.f64 (sin.f64 re) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))))
(+.f64 (sin.f64 re) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) (sin.f64 re)))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) 1)))
(*.f64 (*.f64 (sin.f64 re) 1/2) (*.f64 2 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1))))
(+.f64 (sin.f64 re) (+.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2))) (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))) (+.f64 (sin.f64 re) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))))
(+.f64 (sin.f64 re) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) (sin.f64 re)))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) 1)))
(*.f64 1/4 (*.f64 4 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1)))))
(+.f64 (sin.f64 re) (+.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2))) (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))) (+.f64 (sin.f64 re) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))))
(+.f64 (sin.f64 re) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) (sin.f64 re)))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) 1)))
(*.f64 (*.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1)) (*.f64 (sin.f64 re) 1/2)) 2)
(+.f64 (sin.f64 re) (+.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2))) (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))) (+.f64 (sin.f64 re) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))))
(+.f64 (sin.f64 re) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) (sin.f64 re)))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) 1)))
(*.f64 (*.f64 1/2 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1))) (*.f64 (sin.f64 re) 2))
(+.f64 (sin.f64 re) (+.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2))) (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))) (+.f64 (sin.f64 re) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))))
(+.f64 (sin.f64 re) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) (sin.f64 re)))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) 1)))
(*.f64 (/.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1)) 2) (*.f64 (sin.f64 re) 2))
(+.f64 (sin.f64 re) (+.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2))) (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))) (+.f64 (sin.f64 re) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))))
(+.f64 (sin.f64 re) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) (sin.f64 re)))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) 1)))
(*.f64 (/.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1))) 4) 4)
(+.f64 (sin.f64 re) (+.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2))) (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))) (+.f64 (sin.f64 re) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))))
(+.f64 (sin.f64 re) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) (sin.f64 re)))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) 1)))
(/.f64 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1))) 1)
(+.f64 (sin.f64 re) (+.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2))) (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))) (+.f64 (sin.f64 re) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))))
(+.f64 (sin.f64 re) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) (sin.f64 re)))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) 1)))
(/.f64 (*.f64 (sin.f64 re) (*.f64 2 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1)))) 2)
(+.f64 (sin.f64 re) (+.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2))) (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))) (+.f64 (sin.f64 re) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))))
(+.f64 (sin.f64 re) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) (sin.f64 re)))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) 1)))
(/.f64 (*.f64 4 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1)))) 4)
(+.f64 (sin.f64 re) (+.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2))) (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))) (+.f64 (sin.f64 re) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))))
(+.f64 (sin.f64 re) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) (sin.f64 re)))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) 1)))
(/.f64 (*.f64 2 (*.f64 4 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1))))) 8)
(+.f64 (sin.f64 re) (+.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2))) (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))) (+.f64 (sin.f64 re) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))))
(+.f64 (sin.f64 re) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) (sin.f64 re)))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) 1)))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 4 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1)))))) 16)
(+.f64 (sin.f64 re) (+.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2))) (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))) (+.f64 (sin.f64 re) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))))
(+.f64 (sin.f64 re) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) (sin.f64 re)))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) 1)))
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 4 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1)))))) (*.f64 2 (*.f64 2 (*.f64 4 (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) 1))))))) 32)
(+.f64 (sin.f64 re) (+.f64 (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2))) (*.f64 (sin.f64 re) (*.f64 1/24 (pow.f64 im 4)))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) (sin.f64 re))) (+.f64 (sin.f64 re) (*.f64 1/24 (*.f64 (pow.f64 im 4) (sin.f64 re)))))
(+.f64 (sin.f64 re) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) (sin.f64 re)))
(*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) 1)))

eval391.0ms (0.9%)

Compiler

Compiled 8507 to 6375 computations (25.1% saved)

prune58.0ms (0.1%)

Pruning

10 alts after pruning (7 fresh and 3 done)

PrunedKeptTotal
New3267333
Fresh202
Picked101
Done235
Total33110341
Error
0.3b
Counts
341 → 10
Alt Table
Click to see full alt table
StatusErrorProgram
0.7b
(/.f64 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))) 2)
30.8b
(+.f64 (+.f64 (*.f64 re (+.f64 1 (*.f64 1/2 (pow.f64 im 2)))) (*.f64 (pow.f64 re 3) (-.f64 (*.f64 (pow.f64 im 2) -1/12) 1/6))) (+.f64 (*.f64 (pow.f64 re 5) (+.f64 1/120 (*.f64 (pow.f64 im 2) 1/240))) (*.f64 (pow.f64 re 7) (-.f64 (*.f64 (pow.f64 im 2) -1/10080) 1/5040))))
0.9b
(+.f64 (sin.f64 re) (*.f64 (pow.f64 im 6) (*.f64 1/720 (sin.f64 re))))
30.3b
(+.f64 re (*.f64 re (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))))
30.3b
(+.f64 re (*.f64 re (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/2 (pow.f64 im 2))))))
30.3b
(+.f64 re (*.f64 re (*.f64 1/2 (pow.f64 im 2))))
30.1b
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
0.3b
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
0.9b
(sin.f64 re)
30.4b
re
Compiler

Compiled 278 to 218 computations (21.6% saved)

localize15.0ms (0%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(+.f64 2 (pow.f64 im 2))
0.0b
(*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2)))
Compiler

Compiled 33 to 22 computations (33.3% saved)

series2.0ms (0%)

Counts
2 → 19
Calls

9 calls:

TimeVariablePointExpression
1.0ms
re
@0
(*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2)))
0.0ms
im
@-inf
(*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2)))
0.0ms
im
@inf
(*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2)))
0.0ms
re
@inf
(*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2)))
0.0ms
re
@-inf
(*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2)))

rewrite85.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
1586×bool.json-1
1586×bool.json-2
1548×rational.json-1
1548×rational.json-2
1548×rational.json-3
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01036
110136
227836
356636
4119936
5271236
6598036
Stop Event
node limit
Counts
2 → 27
Calls
Call 1
Inputs
(*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2)))
(+.f64 2 (pow.f64 im 2))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 re) (*.f64 (+.f64 2 (pow.f64 im 2)) 1/2)) (*.f64 (sin.f64 re) (*.f64 (+.f64 2 (pow.f64 im 2)) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 re) (*.f64 2 (+.f64 2 (pow.f64 im 2)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 re) (*.f64 (+.f64 2 (pow.f64 im 2)) 4)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))) 8)) (*.f64 2 (*.f64 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x not (not (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x and (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))) (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))))))) (#(struct:change #<rule egg-rr> (2) ((x or (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))) (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 2 (pow.f64 im 2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (+.f64 2 (pow.f64 im 2)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 2 (pow.f64 im 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 2 (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (+.f64 2 (pow.f64 im 2))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (+.f64 2 (pow.f64 im 2)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 2 (+.f64 2 (pow.f64 im 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) 1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (+.f64 2 (pow.f64 im 2)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 2 (pow.f64 im 2)) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 2 (pow.f64 im 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (+.f64 2 (pow.f64 im 2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (+.f64 2 (pow.f64 im 2)) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 (+.f64 2 (pow.f64 im 2)) 8)) (*.f64 2 (*.f64 (+.f64 2 (pow.f64 im 2)) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x not (not (+.f64 2 (pow.f64 im 2))))))) (#(struct:change #<rule egg-rr> (2) ((x and (+.f64 2 (pow.f64 im 2)) (+.f64 2 (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x or (+.f64 2 (pow.f64 im 2)) (+.f64 2 (pow.f64 im 2)))))))

simplify283.0ms (0.6%)

Algorithm
egg-herbie
Rules
2406×rational.json-simplify-2
1988×rational.json-simplify-35
998×rational.json-simplify-43
946×rational.json-simplify-1
916×rational.json-simplify-48
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0821200
1179956
2502920
31839902
43218902
53728902
63916902
74108902
84580902
96474902
106945902
117209902
127586902
Stop Event
node limit
Counts
46 → 49
Calls
Call 1
Inputs
(*.f64 (+.f64 2 (pow.f64 im 2)) re)
(+.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) re) (*.f64 -1/6 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 3))))
(+.f64 (*.f64 1/120 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 5))) (+.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) re) (*.f64 -1/6 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 3)))))
(+.f64 (*.f64 1/120 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 5))) (+.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) re) (+.f64 (*.f64 -1/6 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 3))) (*.f64 -1/5040 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 7))))))
(*.f64 2 (sin.f64 re))
(+.f64 (*.f64 2 (sin.f64 re)) (*.f64 (sin.f64 re) (pow.f64 im 2)))
(+.f64 (*.f64 2 (sin.f64 re)) (*.f64 (sin.f64 re) (pow.f64 im 2)))
(+.f64 (*.f64 2 (sin.f64 re)) (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(+.f64 (*.f64 2 (sin.f64 re)) (*.f64 (sin.f64 re) (pow.f64 im 2)))
(+.f64 (*.f64 2 (sin.f64 re)) (*.f64 (sin.f64 re) (pow.f64 im 2)))
(+.f64 (*.f64 2 (sin.f64 re)) (*.f64 (sin.f64 re) (pow.f64 im 2)))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(+.f64 (*.f64 2 (sin.f64 re)) (*.f64 (sin.f64 re) (pow.f64 im 2)))
(+.f64 (*.f64 2 (sin.f64 re)) (*.f64 (sin.f64 re) (pow.f64 im 2)))
(+.f64 (*.f64 2 (sin.f64 re)) (*.f64 (sin.f64 re) (pow.f64 im 2)))
2
(pow.f64 im 2)
(pow.f64 im 2)
(+.f64 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))) 0)
(+.f64 0 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))))
(+.f64 (*.f64 (sin.f64 re) (*.f64 (+.f64 2 (pow.f64 im 2)) 1/2)) (*.f64 (sin.f64 re) (*.f64 (+.f64 2 (pow.f64 im 2)) 1/2)))
(-.f64 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))) 0)
(/.f64 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))) 1)
(/.f64 (*.f64 (sin.f64 re) (*.f64 2 (+.f64 2 (pow.f64 im 2)))) 2)
(/.f64 (*.f64 (sin.f64 re) (*.f64 (+.f64 2 (pow.f64 im 2)) 4)) 4)
(/.f64 (*.f64 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))) 8) 8)
(/.f64 (*.f64 2 (*.f64 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))) 8)) 16)
(/.f64 (+.f64 (*.f64 2 (*.f64 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))) 8)) (*.f64 2 (*.f64 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))) 8))) 32)
(-.f64 (+.f64 2 (pow.f64 im 2)) 0)
(*.f64 2 (*.f64 (+.f64 2 (pow.f64 im 2)) 1/2))
(*.f64 (+.f64 2 (pow.f64 im 2)) 1)
(*.f64 1 (+.f64 2 (pow.f64 im 2)))
(*.f64 (*.f64 2 (+.f64 2 (pow.f64 im 2))) 1/2)
(*.f64 4 (/.f64 (+.f64 2 (pow.f64 im 2)) 4))
(*.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) 4) 1/4)
(*.f64 1/2 (*.f64 2 (+.f64 2 (pow.f64 im 2))))
(*.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) 1/2) 2)
(*.f64 1/4 (*.f64 (+.f64 2 (pow.f64 im 2)) 4))
(*.f64 (/.f64 (+.f64 2 (pow.f64 im 2)) 4) 4)
(/.f64 (+.f64 2 (pow.f64 im 2)) 1)
(/.f64 (*.f64 2 (+.f64 2 (pow.f64 im 2))) 2)
(/.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) 4) 4)
(/.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) 8) 8)
(/.f64 (*.f64 2 (*.f64 (+.f64 2 (pow.f64 im 2)) 8)) 16)
(/.f64 (+.f64 (*.f64 2 (*.f64 (+.f64 2 (pow.f64 im 2)) 8)) (*.f64 2 (*.f64 (+.f64 2 (pow.f64 im 2)) 8))) 32)
Outputs
(*.f64 (+.f64 2 (pow.f64 im 2)) re)
(+.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) re) (*.f64 -1/6 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 3))))
(*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 re (*.f64 -1/6 (pow.f64 re 3))))
(+.f64 (*.f64 1/120 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 5))) (+.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) re) (*.f64 -1/6 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 3)))))
(+.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) re) (+.f64 (*.f64 -1/6 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 3))) (*.f64 1/120 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 5)))))
(+.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 re (*.f64 -1/6 (pow.f64 re 3)))) (*.f64 (+.f64 2 (pow.f64 im 2)) (*.f64 1/120 (pow.f64 re 5))))
(*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 1/120 (pow.f64 re 5)) (+.f64 re (*.f64 -1/6 (pow.f64 re 3)))))
(*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 -1/6 (pow.f64 re 3)) (+.f64 re (*.f64 1/120 (pow.f64 re 5)))))
(+.f64 (*.f64 1/120 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 5))) (+.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) re) (+.f64 (*.f64 -1/6 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 3))) (*.f64 -1/5040 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 7))))))
(+.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) re) (+.f64 (+.f64 (*.f64 -1/6 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 3))) (*.f64 (+.f64 2 (pow.f64 im 2)) (*.f64 (pow.f64 re 7) -1/5040))) (*.f64 1/120 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 5)))))
(+.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (*.f64 -1/6 (pow.f64 re 3))) (+.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 re (*.f64 -1/5040 (pow.f64 re 7)))) (*.f64 (+.f64 2 (pow.f64 im 2)) (*.f64 1/120 (pow.f64 re 5)))))
(+.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (*.f64 -1/6 (pow.f64 re 3))) (*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 1/120 (pow.f64 re 5)) (+.f64 re (*.f64 -1/5040 (pow.f64 re 7))))))
(*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 -1/6 (pow.f64 re 3)) (+.f64 re (+.f64 (*.f64 -1/5040 (pow.f64 re 7)) (*.f64 1/120 (pow.f64 re 5))))))
(*.f64 2 (sin.f64 re))
(+.f64 (*.f64 2 (sin.f64 re)) (*.f64 (sin.f64 re) (pow.f64 im 2)))
(+.f64 (*.f64 2 (sin.f64 re)) (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 (+.f64 2 (pow.f64 im 2)) (sin.f64 re))
(+.f64 (*.f64 2 (sin.f64 re)) (*.f64 (sin.f64 re) (pow.f64 im 2)))
(+.f64 (*.f64 2 (sin.f64 re)) (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 (+.f64 2 (pow.f64 im 2)) (sin.f64 re))
(+.f64 (*.f64 2 (sin.f64 re)) (*.f64 (sin.f64 re) (pow.f64 im 2)))
(+.f64 (*.f64 2 (sin.f64 re)) (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 (+.f64 2 (pow.f64 im 2)) (sin.f64 re))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (pow.f64 im 2) (sin.f64 re))
(+.f64 (*.f64 2 (sin.f64 re)) (*.f64 (sin.f64 re) (pow.f64 im 2)))
(+.f64 (*.f64 2 (sin.f64 re)) (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 (+.f64 2 (pow.f64 im 2)) (sin.f64 re))
(+.f64 (*.f64 2 (sin.f64 re)) (*.f64 (sin.f64 re) (pow.f64 im 2)))
(+.f64 (*.f64 2 (sin.f64 re)) (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 (+.f64 2 (pow.f64 im 2)) (sin.f64 re))
(+.f64 (*.f64 2 (sin.f64 re)) (*.f64 (sin.f64 re) (pow.f64 im 2)))
(+.f64 (*.f64 2 (sin.f64 re)) (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 (+.f64 2 (pow.f64 im 2)) (sin.f64 re))
(*.f64 (sin.f64 re) (pow.f64 im 2))
(*.f64 (pow.f64 im 2) (sin.f64 re))
(+.f64 (*.f64 2 (sin.f64 re)) (*.f64 (sin.f64 re) (pow.f64 im 2)))
(+.f64 (*.f64 2 (sin.f64 re)) (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 (+.f64 2 (pow.f64 im 2)) (sin.f64 re))
(+.f64 (*.f64 2 (sin.f64 re)) (*.f64 (sin.f64 re) (pow.f64 im 2)))
(+.f64 (*.f64 2 (sin.f64 re)) (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 (+.f64 2 (pow.f64 im 2)) (sin.f64 re))
(+.f64 (*.f64 2 (sin.f64 re)) (*.f64 (sin.f64 re) (pow.f64 im 2)))
(+.f64 (*.f64 2 (sin.f64 re)) (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 (+.f64 2 (pow.f64 im 2)) (sin.f64 re))
2
(pow.f64 im 2)
(pow.f64 im 2)
(+.f64 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))) 0)
(+.f64 (*.f64 2 (sin.f64 re)) (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 (+.f64 2 (pow.f64 im 2)) (sin.f64 re))
(+.f64 0 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))))
(+.f64 (*.f64 2 (sin.f64 re)) (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 (+.f64 2 (pow.f64 im 2)) (sin.f64 re))
(+.f64 (*.f64 (sin.f64 re) (*.f64 (+.f64 2 (pow.f64 im 2)) 1/2)) (*.f64 (sin.f64 re) (*.f64 (+.f64 2 (pow.f64 im 2)) 1/2)))
(+.f64 (*.f64 2 (sin.f64 re)) (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 (+.f64 2 (pow.f64 im 2)) (sin.f64 re))
(-.f64 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))) 0)
(+.f64 (*.f64 2 (sin.f64 re)) (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 (+.f64 2 (pow.f64 im 2)) (sin.f64 re))
(/.f64 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))) 1)
(+.f64 (*.f64 2 (sin.f64 re)) (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 (+.f64 2 (pow.f64 im 2)) (sin.f64 re))
(/.f64 (*.f64 (sin.f64 re) (*.f64 2 (+.f64 2 (pow.f64 im 2)))) 2)
(+.f64 (*.f64 2 (sin.f64 re)) (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 (+.f64 2 (pow.f64 im 2)) (sin.f64 re))
(/.f64 (*.f64 (sin.f64 re) (*.f64 (+.f64 2 (pow.f64 im 2)) 4)) 4)
(+.f64 (*.f64 2 (sin.f64 re)) (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 (+.f64 2 (pow.f64 im 2)) (sin.f64 re))
(/.f64 (*.f64 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))) 8) 8)
(+.f64 (*.f64 2 (sin.f64 re)) (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 (+.f64 2 (pow.f64 im 2)) (sin.f64 re))
(/.f64 (*.f64 2 (*.f64 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))) 8)) 16)
(+.f64 (*.f64 2 (sin.f64 re)) (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 (+.f64 2 (pow.f64 im 2)) (sin.f64 re))
(/.f64 (+.f64 (*.f64 2 (*.f64 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))) 8)) (*.f64 2 (*.f64 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))) 8))) 32)
(+.f64 (*.f64 2 (sin.f64 re)) (*.f64 (pow.f64 im 2) (sin.f64 re)))
(*.f64 (+.f64 2 (pow.f64 im 2)) (sin.f64 re))
(-.f64 (+.f64 2 (pow.f64 im 2)) 0)
(+.f64 2 (pow.f64 im 2))
(*.f64 2 (*.f64 (+.f64 2 (pow.f64 im 2)) 1/2))
(+.f64 2 (pow.f64 im 2))
(*.f64 (+.f64 2 (pow.f64 im 2)) 1)
(+.f64 2 (pow.f64 im 2))
(*.f64 1 (+.f64 2 (pow.f64 im 2)))
(+.f64 2 (pow.f64 im 2))
(*.f64 (*.f64 2 (+.f64 2 (pow.f64 im 2))) 1/2)
(+.f64 2 (pow.f64 im 2))
(*.f64 4 (/.f64 (+.f64 2 (pow.f64 im 2)) 4))
(+.f64 2 (pow.f64 im 2))
(*.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) 4) 1/4)
(+.f64 2 (pow.f64 im 2))
(*.f64 1/2 (*.f64 2 (+.f64 2 (pow.f64 im 2))))
(+.f64 2 (pow.f64 im 2))
(*.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) 1/2) 2)
(+.f64 2 (pow.f64 im 2))
(*.f64 1/4 (*.f64 (+.f64 2 (pow.f64 im 2)) 4))
(+.f64 2 (pow.f64 im 2))
(*.f64 (/.f64 (+.f64 2 (pow.f64 im 2)) 4) 4)
(+.f64 2 (pow.f64 im 2))
(/.f64 (+.f64 2 (pow.f64 im 2)) 1)
(+.f64 2 (pow.f64 im 2))
(/.f64 (*.f64 2 (+.f64 2 (pow.f64 im 2))) 2)
(+.f64 2 (pow.f64 im 2))
(/.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) 4) 4)
(+.f64 2 (pow.f64 im 2))
(/.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) 8) 8)
(+.f64 2 (pow.f64 im 2))
(/.f64 (*.f64 2 (*.f64 (+.f64 2 (pow.f64 im 2)) 8)) 16)
(+.f64 2 (pow.f64 im 2))
(/.f64 (+.f64 (*.f64 2 (*.f64 (+.f64 2 (pow.f64 im 2)) 8)) (*.f64 2 (*.f64 (+.f64 2 (pow.f64 im 2)) 8))) 32)
(+.f64 2 (pow.f64 im 2))

localize99.0ms (0.2%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(*.f64 1/2 (pow.f64 im 2))
8.9b
(*.f64 re (*.f64 1/2 (pow.f64 im 2)))
Compiler

Compiled 30 to 21 computations (30% saved)

series2.0ms (0%)

Counts
1 → 24
Calls

6 calls:

TimeVariablePointExpression
1.0ms
re
@0
(*.f64 re (*.f64 1/2 (pow.f64 im 2)))
0.0ms
re
@inf
(*.f64 re (*.f64 1/2 (pow.f64 im 2)))
0.0ms
im
@inf
(*.f64 re (*.f64 1/2 (pow.f64 im 2)))
0.0ms
im
@0
(*.f64 re (*.f64 1/2 (pow.f64 im 2)))
0.0ms
re
@-inf
(*.f64 re (*.f64 1/2 (pow.f64 im 2)))

rewrite99.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
1892×bool.json-1
1892×bool.json-2
1154×rational.json-1
1154×rational.json-2
1154×rational.json-3
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0919
19019
224419
350619
497519
5219219
6447919
7757319
Stop Event
node limit
Counts
1 → 11
Calls
Call 1
Inputs
(*.f64 re (*.f64 1/2 (pow.f64 im 2)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) re)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 1/2 (*.f64 (pow.f64 im 2) re)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (pow.f64 im 2) (/.f64 re 4)) (*.f64 (pow.f64 im 2) (/.f64 re 4)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) re)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) re)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 im 2) re) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (pow.f64 im 2) re)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 im 2) (*.f64 4 re)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (pow.f64 im 2) (*.f64 4 re))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 im 2) (*.f64 4 re)))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 im 2) (*.f64 4 re)))) (*.f64 2 (*.f64 2 (*.f64 (pow.f64 im 2) (*.f64 4 re))))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x not (not (*.f64 1/2 (*.f64 (pow.f64 im 2) re))))))) (#(struct:change #<rule egg-rr> (2) ((x and (*.f64 1/2 (*.f64 (pow.f64 im 2) re)) (*.f64 1/2 (*.f64 (pow.f64 im 2) re)))))) (#(struct:change #<rule egg-rr> (2) ((x or (*.f64 1/2 (*.f64 (pow.f64 im 2) re)) (*.f64 1/2 (*.f64 (pow.f64 im 2) re)))))))

simplify1.0s (2.4%)

Algorithm
egg-herbie
Rules
7740×rational.json-simplify-41
3868×rational.json-simplify-35
2474×rational.json-simplify-2
1372×rational.json-simplify-53
708×rational.json-simplify-1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
037665
187665
2187665
3437665
41175665
51978665
62684665
73068665
83434665
93594665
103700665
113805665
123910665
134015665
144209665
154318665
164668665
174948665
184986665
194986665
205091665
215196665
225301665
235406665
245511665
255616665
265721665
275896665
286071665
296176665
306281665
316386665
326386665
Stop Event
node limit
Counts
35 → 15
Calls
Call 1
Inputs
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) re)) 0)
(+.f64 0 (*.f64 1/2 (*.f64 (pow.f64 im 2) re)))
(+.f64 (*.f64 (pow.f64 im 2) (/.f64 re 4)) (*.f64 (pow.f64 im 2) (/.f64 re 4)))
(-.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) re)) 0)
(/.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) re)) 1)
(/.f64 (*.f64 (pow.f64 im 2) re) 2)
(/.f64 (*.f64 2 (*.f64 (pow.f64 im 2) re)) 4)
(/.f64 (*.f64 (pow.f64 im 2) (*.f64 4 re)) 8)
(/.f64 (*.f64 2 (*.f64 (pow.f64 im 2) (*.f64 4 re))) 16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 im 2) (*.f64 4 re)))) 32)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 im 2) (*.f64 4 re)))) (*.f64 2 (*.f64 2 (*.f64 (pow.f64 im 2) (*.f64 4 re))))) 64)
Outputs
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 (pow.f64 im 2) (*.f64 re 1/2))
(*.f64 (pow.f64 im 2) (*.f64 1/2 re))
(*.f64 re (/.f64 (pow.f64 im 2) 2))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 (pow.f64 im 2) (*.f64 re 1/2))
(*.f64 (pow.f64 im 2) (*.f64 1/2 re))
(*.f64 re (/.f64 (pow.f64 im 2) 2))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 (pow.f64 im 2) (*.f64 re 1/2))
(*.f64 (pow.f64 im 2) (*.f64 1/2 re))
(*.f64 re (/.f64 (pow.f64 im 2) 2))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 (pow.f64 im 2) (*.f64 re 1/2))
(*.f64 (pow.f64 im 2) (*.f64 1/2 re))
(*.f64 re (/.f64 (pow.f64 im 2) 2))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 (pow.f64 im 2) (*.f64 re 1/2))
(*.f64 (pow.f64 im 2) (*.f64 1/2 re))
(*.f64 re (/.f64 (pow.f64 im 2) 2))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 (pow.f64 im 2) (*.f64 re 1/2))
(*.f64 (pow.f64 im 2) (*.f64 1/2 re))
(*.f64 re (/.f64 (pow.f64 im 2) 2))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 (pow.f64 im 2) (*.f64 re 1/2))
(*.f64 (pow.f64 im 2) (*.f64 1/2 re))
(*.f64 re (/.f64 (pow.f64 im 2) 2))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 (pow.f64 im 2) (*.f64 re 1/2))
(*.f64 (pow.f64 im 2) (*.f64 1/2 re))
(*.f64 re (/.f64 (pow.f64 im 2) 2))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 (pow.f64 im 2) (*.f64 re 1/2))
(*.f64 (pow.f64 im 2) (*.f64 1/2 re))
(*.f64 re (/.f64 (pow.f64 im 2) 2))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 (pow.f64 im 2) (*.f64 re 1/2))
(*.f64 (pow.f64 im 2) (*.f64 1/2 re))
(*.f64 re (/.f64 (pow.f64 im 2) 2))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 (pow.f64 im 2) (*.f64 re 1/2))
(*.f64 (pow.f64 im 2) (*.f64 1/2 re))
(*.f64 re (/.f64 (pow.f64 im 2) 2))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 (pow.f64 im 2) (*.f64 re 1/2))
(*.f64 (pow.f64 im 2) (*.f64 1/2 re))
(*.f64 re (/.f64 (pow.f64 im 2) 2))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 (pow.f64 im 2) (*.f64 re 1/2))
(*.f64 (pow.f64 im 2) (*.f64 1/2 re))
(*.f64 re (/.f64 (pow.f64 im 2) 2))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 (pow.f64 im 2) (*.f64 re 1/2))
(*.f64 (pow.f64 im 2) (*.f64 1/2 re))
(*.f64 re (/.f64 (pow.f64 im 2) 2))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 (pow.f64 im 2) (*.f64 re 1/2))
(*.f64 (pow.f64 im 2) (*.f64 1/2 re))
(*.f64 re (/.f64 (pow.f64 im 2) 2))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 (pow.f64 im 2) (*.f64 re 1/2))
(*.f64 (pow.f64 im 2) (*.f64 1/2 re))
(*.f64 re (/.f64 (pow.f64 im 2) 2))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 (pow.f64 im 2) (*.f64 re 1/2))
(*.f64 (pow.f64 im 2) (*.f64 1/2 re))
(*.f64 re (/.f64 (pow.f64 im 2) 2))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 (pow.f64 im 2) (*.f64 re 1/2))
(*.f64 (pow.f64 im 2) (*.f64 1/2 re))
(*.f64 re (/.f64 (pow.f64 im 2) 2))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 (pow.f64 im 2) (*.f64 re 1/2))
(*.f64 (pow.f64 im 2) (*.f64 1/2 re))
(*.f64 re (/.f64 (pow.f64 im 2) 2))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 (pow.f64 im 2) (*.f64 re 1/2))
(*.f64 (pow.f64 im 2) (*.f64 1/2 re))
(*.f64 re (/.f64 (pow.f64 im 2) 2))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 (pow.f64 im 2) (*.f64 re 1/2))
(*.f64 (pow.f64 im 2) (*.f64 1/2 re))
(*.f64 re (/.f64 (pow.f64 im 2) 2))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 (pow.f64 im 2) (*.f64 re 1/2))
(*.f64 (pow.f64 im 2) (*.f64 1/2 re))
(*.f64 re (/.f64 (pow.f64 im 2) 2))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 (pow.f64 im 2) (*.f64 re 1/2))
(*.f64 (pow.f64 im 2) (*.f64 1/2 re))
(*.f64 re (/.f64 (pow.f64 im 2) 2))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 (pow.f64 im 2) (*.f64 re 1/2))
(*.f64 (pow.f64 im 2) (*.f64 1/2 re))
(*.f64 re (/.f64 (pow.f64 im 2) 2))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) re)) 0)
(*.f64 (pow.f64 im 2) (*.f64 re 1/2))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 (pow.f64 im 2) (*.f64 1/2 re))
(*.f64 re (/.f64 (pow.f64 im 2) 2))
(+.f64 0 (*.f64 1/2 (*.f64 (pow.f64 im 2) re)))
(*.f64 (pow.f64 im 2) (*.f64 re 1/2))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 (pow.f64 im 2) (*.f64 1/2 re))
(*.f64 re (/.f64 (pow.f64 im 2) 2))
(+.f64 (*.f64 (pow.f64 im 2) (/.f64 re 4)) (*.f64 (pow.f64 im 2) (/.f64 re 4)))
(*.f64 (pow.f64 im 2) (*.f64 re 1/2))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 (pow.f64 im 2) (*.f64 1/2 re))
(*.f64 re (/.f64 (pow.f64 im 2) 2))
(-.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) re)) 0)
(*.f64 (pow.f64 im 2) (*.f64 re 1/2))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 (pow.f64 im 2) (*.f64 1/2 re))
(*.f64 re (/.f64 (pow.f64 im 2) 2))
(/.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) re)) 1)
(*.f64 (pow.f64 im 2) (*.f64 re 1/2))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 (pow.f64 im 2) (*.f64 1/2 re))
(*.f64 re (/.f64 (pow.f64 im 2) 2))
(/.f64 (*.f64 (pow.f64 im 2) re) 2)
(*.f64 (pow.f64 im 2) (*.f64 re 1/2))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 (pow.f64 im 2) (*.f64 1/2 re))
(*.f64 re (/.f64 (pow.f64 im 2) 2))
(/.f64 (*.f64 2 (*.f64 (pow.f64 im 2) re)) 4)
(*.f64 (pow.f64 im 2) (*.f64 re 1/2))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 (pow.f64 im 2) (*.f64 1/2 re))
(*.f64 re (/.f64 (pow.f64 im 2) 2))
(/.f64 (*.f64 (pow.f64 im 2) (*.f64 4 re)) 8)
(*.f64 (pow.f64 im 2) (*.f64 re 1/2))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 (pow.f64 im 2) (*.f64 1/2 re))
(*.f64 re (/.f64 (pow.f64 im 2) 2))
(/.f64 (*.f64 2 (*.f64 (pow.f64 im 2) (*.f64 4 re))) 16)
(*.f64 (pow.f64 im 2) (*.f64 re 1/2))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 (pow.f64 im 2) (*.f64 1/2 re))
(*.f64 re (/.f64 (pow.f64 im 2) 2))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 im 2) (*.f64 4 re)))) 32)
(*.f64 (pow.f64 im 2) (*.f64 re 1/2))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 (pow.f64 im 2) (*.f64 1/2 re))
(*.f64 re (/.f64 (pow.f64 im 2) 2))
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 im 2) (*.f64 4 re)))) (*.f64 2 (*.f64 2 (*.f64 (pow.f64 im 2) (*.f64 4 re))))) 64)
(*.f64 (pow.f64 im 2) (*.f64 re 1/2))
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 (pow.f64 im 2) (*.f64 1/2 re))
(*.f64 re (/.f64 (pow.f64 im 2) 2))

localize32.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))
0.0b
(*.f64 1/2 (pow.f64 im 2))
0.1b
(*.f64 1/24 (pow.f64 im 4))
8.9b
(*.f64 re (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))))
Compiler

Compiled 63 to 48 computations (23.8% saved)

series2.0ms (0%)

Counts
2 → 27
Calls

9 calls:

TimeVariablePointExpression
0.0ms
re
@0
(*.f64 re (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))))
0.0ms
re
@inf
(*.f64 re (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))))
0.0ms
re
@-inf
(*.f64 re (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))))
0.0ms
im
@inf
(*.f64 re (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))))
0.0ms
im
@0
(*.f64 re (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))))

rewrite160.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
1532×rational.json-simplify-35
1416×bool.json-1
1416×bool.json-2
1360×rational.json-1
1360×rational.json-2
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01468
113568
231668
360368
4121168
5265568
6546368
Stop Event
node limit
Counts
2 → 32
Calls
Call 1
Inputs
(*.f64 re (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))))
(+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 re (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 re (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 re (/.f64 (+.f64 (pow.f64 im 2) (*.f64 (pow.f64 im 4) 1/12)) 4)) (*.f64 re (/.f64 (+.f64 (pow.f64 im 2) (*.f64 (pow.f64 im 4) 1/12)) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 re (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 re (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 re (+.f64 (pow.f64 im 2) (*.f64 (pow.f64 im 4) 1/12))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 re (*.f64 2 (+.f64 (pow.f64 im 2) (*.f64 (pow.f64 im 4) 1/12)))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 4 (*.f64 re (+.f64 (pow.f64 im 2) (*.f64 (pow.f64 im 4) 1/12)))) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 4 (*.f64 re (+.f64 (pow.f64 im 2) (*.f64 (pow.f64 im 4) 1/12))))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 4 (*.f64 re (+.f64 (pow.f64 im 2) (*.f64 (pow.f64 im 4) 1/12)))))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 4 (*.f64 re (+.f64 (pow.f64 im 2) (*.f64 (pow.f64 im 4) 1/12)))))) (*.f64 2 (*.f64 2 (*.f64 4 (*.f64 re (+.f64 (pow.f64 im 2) (*.f64 (pow.f64 im 4) 1/12))))))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x not (not (*.f64 re (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))))))))) (#(struct:change #<rule egg-rr> (2) ((x and (*.f64 re (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))) (*.f64 re (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x or (*.f64 re (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))) (*.f64 re (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (+.f64 (pow.f64 im 2) (*.f64 (pow.f64 im 4) 1/12)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (/.f64 (+.f64 (pow.f64 im 2) (*.f64 (pow.f64 im 4) 1/12)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (+.f64 (*.f64 (pow.f64 im 4) 1/48) (*.f64 (pow.f64 im 2) 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (+.f64 (*.f64 (pow.f64 im 2) 1/4) (*.f64 (pow.f64 im 4) 1/48)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (+.f64 (pow.f64 im 2) (*.f64 (pow.f64 im 4) 1/12)) 8))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 im 2) (*.f64 (pow.f64 im 4) 1/12)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (+.f64 (pow.f64 im 2) (*.f64 (pow.f64 im 4) 1/12))) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 (pow.f64 im 2) (*.f64 (pow.f64 im 4) 1/12)) 4) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 2 (+.f64 (pow.f64 im 2) (*.f64 (pow.f64 im 4) 1/12))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (+.f64 (*.f64 (pow.f64 im 4) 1/6) (*.f64 2 (pow.f64 im 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 (pow.f64 im 2) (*.f64 (pow.f64 im 4) 1/12)) 8) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 im 2) (*.f64 (pow.f64 im 4) 1/12)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (+.f64 (pow.f64 im 2) (*.f64 (pow.f64 im 4) 1/12))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 4 (+.f64 (pow.f64 im 2) (*.f64 (pow.f64 im 4) 1/12))) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 4 (+.f64 (pow.f64 im 2) (*.f64 (pow.f64 im 4) 1/12)))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 4 (+.f64 (pow.f64 im 2) (*.f64 (pow.f64 im 4) 1/12))))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 4 (+.f64 (pow.f64 im 2) (*.f64 (pow.f64 im 4) 1/12))))) (*.f64 2 (*.f64 2 (*.f64 4 (+.f64 (pow.f64 im 2) (*.f64 (pow.f64 im 4) 1/12)))))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x not (not (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x and (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))))))) (#(struct:change #<rule egg-rr> (2) ((x or (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))))))))

simplify398.0ms (0.9%)

Algorithm
egg-herbie
Rules
3482×rational.json-simplify-41
3146×rational.json-simplify-49
1830×rational.json-simplify-35
1782×rational.json-simplify-2
1142×rational.json-simplify-53
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0851949
11741949
23221949
36221949
414591949
527741949
629651949
730761949
831811949
932581949
1033361949
1146061949
1246791949
1347521949
1448251949
1548981949
1649711949
1750441949
1851171949
1951171949
Stop Event
node limit
Counts
59 → 44
Calls
Call 1
Inputs
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) re)
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) re)
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) re)
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) re)
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) re)
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) re)
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) re)
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) re)
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) re)
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) re)
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) re)
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) re)
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(*.f64 1/24 (*.f64 re (pow.f64 im 4)))
(+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(*.f64 1/24 (*.f64 re (pow.f64 im 4)))
(+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(*.f64 1/2 (pow.f64 im 2))
(*.f64 1/24 (pow.f64 im 4))
(*.f64 1/24 (pow.f64 im 4))
(+.f64 (*.f64 re (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))) 0)
(+.f64 0 (*.f64 re (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))))
(+.f64 (*.f64 re (/.f64 (+.f64 (pow.f64 im 2) (*.f64 (pow.f64 im 4) 1/12)) 4)) (*.f64 re (/.f64 (+.f64 (pow.f64 im 2) (*.f64 (pow.f64 im 4) 1/12)) 4)))
(-.f64 (*.f64 re (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))) 0)
(/.f64 (*.f64 re (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))) 1)
(/.f64 (*.f64 re (+.f64 (pow.f64 im 2) (*.f64 (pow.f64 im 4) 1/12))) 2)
(/.f64 (*.f64 re (*.f64 2 (+.f64 (pow.f64 im 2) (*.f64 (pow.f64 im 4) 1/12)))) 4)
(/.f64 (*.f64 4 (*.f64 re (+.f64 (pow.f64 im 2) (*.f64 (pow.f64 im 4) 1/12)))) 8)
(/.f64 (*.f64 2 (*.f64 4 (*.f64 re (+.f64 (pow.f64 im 2) (*.f64 (pow.f64 im 4) 1/12))))) 16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 4 (*.f64 re (+.f64 (pow.f64 im 2) (*.f64 (pow.f64 im 4) 1/12)))))) 32)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 4 (*.f64 re (+.f64 (pow.f64 im 2) (*.f64 (pow.f64 im 4) 1/12)))))) (*.f64 2 (*.f64 2 (*.f64 4 (*.f64 re (+.f64 (pow.f64 im 2) (*.f64 (pow.f64 im 4) 1/12))))))) 64)
(-.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) 0)
(*.f64 1/2 (+.f64 (pow.f64 im 2) (*.f64 (pow.f64 im 4) 1/12)))
(*.f64 2 (/.f64 (+.f64 (pow.f64 im 2) (*.f64 (pow.f64 im 4) 1/12)) 4))
(*.f64 2 (+.f64 (*.f64 (pow.f64 im 4) 1/48) (*.f64 (pow.f64 im 2) 1/4)))
(*.f64 2 (+.f64 (*.f64 (pow.f64 im 2) 1/4) (*.f64 (pow.f64 im 4) 1/48)))
(*.f64 4 (/.f64 (+.f64 (pow.f64 im 2) (*.f64 (pow.f64 im 4) 1/12)) 8))
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) 1)
(*.f64 1 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))))
(*.f64 (+.f64 (pow.f64 im 2) (*.f64 (pow.f64 im 4) 1/12)) 1/2)
(*.f64 (*.f64 2 (+.f64 (pow.f64 im 2) (*.f64 (pow.f64 im 4) 1/12))) 1/4)
(*.f64 (/.f64 (+.f64 (pow.f64 im 2) (*.f64 (pow.f64 im 4) 1/12)) 4) 2)
(*.f64 1/4 (*.f64 2 (+.f64 (pow.f64 im 2) (*.f64 (pow.f64 im 4) 1/12))))
(*.f64 1/4 (+.f64 (*.f64 (pow.f64 im 4) 1/6) (*.f64 2 (pow.f64 im 2))))
(*.f64 (/.f64 (+.f64 (pow.f64 im 2) (*.f64 (pow.f64 im 4) 1/12)) 8) 4)
(/.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) 1)
(/.f64 (+.f64 (pow.f64 im 2) (*.f64 (pow.f64 im 4) 1/12)) 2)
(/.f64 (*.f64 2 (+.f64 (pow.f64 im 2) (*.f64 (pow.f64 im 4) 1/12))) 4)
(/.f64 (*.f64 4 (+.f64 (pow.f64 im 2) (*.f64 (pow.f64 im 4) 1/12))) 8)
(/.f64 (*.f64 2 (*.f64 4 (+.f64 (pow.f64 im 2) (*.f64 (pow.f64 im 4) 1/12)))) 16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 4 (+.f64 (pow.f64 im 2) (*.f64 (pow.f64 im 4) 1/12))))) 32)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 4 (+.f64 (pow.f64 im 2) (*.f64 (pow.f64 im 4) 1/12))))) (*.f64 2 (*.f64 2 (*.f64 4 (+.f64 (pow.f64 im 2) (*.f64 (pow.f64 im 4) 1/12)))))) 64)
Outputs
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) re)
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) re)
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) re)
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) re)
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) re)
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) re)
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) re)
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) re)
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) re)
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) re)
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) re)
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) re)
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(*.f64 (pow.f64 im 2) (*.f64 1/2 re))
(+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) re)
(+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) re)
(+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) re)
(*.f64 1/24 (*.f64 re (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (pow.f64 im 4) re))
(*.f64 (pow.f64 im 4) (*.f64 1/24 re))
(+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) re)
(+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) re)
(+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) re)
(*.f64 1/24 (*.f64 re (pow.f64 im 4)))
(*.f64 1/24 (*.f64 (pow.f64 im 4) re))
(*.f64 (pow.f64 im 4) (*.f64 1/24 re))
(+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) re)
(+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) re)
(+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) re)
(*.f64 1/2 (pow.f64 im 2))
(*.f64 1/24 (pow.f64 im 4))
(*.f64 1/24 (pow.f64 im 4))
(+.f64 (*.f64 re (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))) 0)
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) re)
(+.f64 0 (*.f64 re (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))))
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) re)
(+.f64 (*.f64 re (/.f64 (+.f64 (pow.f64 im 2) (*.f64 (pow.f64 im 4) 1/12)) 4)) (*.f64 re (/.f64 (+.f64 (pow.f64 im 2) (*.f64 (pow.f64 im 4) 1/12)) 4)))
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) re)
(-.f64 (*.f64 re (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))) 0)
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) re)
(/.f64 (*.f64 re (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))) 1)
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) re)
(/.f64 (*.f64 re (+.f64 (pow.f64 im 2) (*.f64 (pow.f64 im 4) 1/12))) 2)
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) re)
(/.f64 (*.f64 re (*.f64 2 (+.f64 (pow.f64 im 2) (*.f64 (pow.f64 im 4) 1/12)))) 4)
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) re)
(/.f64 (*.f64 4 (*.f64 re (+.f64 (pow.f64 im 2) (*.f64 (pow.f64 im 4) 1/12)))) 8)
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) re)
(/.f64 (*.f64 2 (*.f64 4 (*.f64 re (+.f64 (pow.f64 im 2) (*.f64 (pow.f64 im 4) 1/12))))) 16)
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) re)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 4 (*.f64 re (+.f64 (pow.f64 im 2) (*.f64 (pow.f64 im 4) 1/12)))))) 32)
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) re)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 4 (*.f64 re (+.f64 (pow.f64 im 2) (*.f64 (pow.f64 im 4) 1/12)))))) (*.f64 2 (*.f64 2 (*.f64 4 (*.f64 re (+.f64 (pow.f64 im 2) (*.f64 (pow.f64 im 4) 1/12))))))) 64)
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) re)
(-.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) 0)
(+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))
(*.f64 1/2 (+.f64 (pow.f64 im 2) (*.f64 (pow.f64 im 4) 1/12)))
(+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))
(*.f64 2 (/.f64 (+.f64 (pow.f64 im 2) (*.f64 (pow.f64 im 4) 1/12)) 4))
(+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))
(*.f64 2 (+.f64 (*.f64 (pow.f64 im 4) 1/48) (*.f64 (pow.f64 im 2) 1/4)))
(*.f64 2 (+.f64 (*.f64 (pow.f64 im 2) 1/4) (*.f64 (pow.f64 im 4) 1/48)))
(*.f64 2 (+.f64 (*.f64 (pow.f64 im 4) 1/48) (*.f64 (pow.f64 im 2) 1/4)))
(*.f64 4 (/.f64 (+.f64 (pow.f64 im 2) (*.f64 (pow.f64 im 4) 1/12)) 8))
(+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) 1)
(+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))
(*.f64 1 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))))
(+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))
(*.f64 (+.f64 (pow.f64 im 2) (*.f64 (pow.f64 im 4) 1/12)) 1/2)
(+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))
(*.f64 (*.f64 2 (+.f64 (pow.f64 im 2) (*.f64 (pow.f64 im 4) 1/12))) 1/4)
(+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))
(*.f64 (/.f64 (+.f64 (pow.f64 im 2) (*.f64 (pow.f64 im 4) 1/12)) 4) 2)
(+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))
(*.f64 1/4 (*.f64 2 (+.f64 (pow.f64 im 2) (*.f64 (pow.f64 im 4) 1/12))))
(+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))
(*.f64 1/4 (+.f64 (*.f64 (pow.f64 im 4) 1/6) (*.f64 2 (pow.f64 im 2))))
(*.f64 1/4 (+.f64 (*.f64 2 (pow.f64 im 2)) (*.f64 (pow.f64 im 4) 1/6)))
(*.f64 (/.f64 (+.f64 (pow.f64 im 2) (*.f64 (pow.f64 im 4) 1/12)) 8) 4)
(+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))
(/.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))) 1)
(+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))
(/.f64 (+.f64 (pow.f64 im 2) (*.f64 (pow.f64 im 4) 1/12)) 2)
(+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))
(/.f64 (*.f64 2 (+.f64 (pow.f64 im 2) (*.f64 (pow.f64 im 4) 1/12))) 4)
(+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))
(/.f64 (*.f64 4 (+.f64 (pow.f64 im 2) (*.f64 (pow.f64 im 4) 1/12))) 8)
(+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))
(/.f64 (*.f64 2 (*.f64 4 (+.f64 (pow.f64 im 2) (*.f64 (pow.f64 im 4) 1/12)))) 16)
(+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 4 (+.f64 (pow.f64 im 2) (*.f64 (pow.f64 im 4) 1/12))))) 32)
(+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 4 (+.f64 (pow.f64 im 2) (*.f64 (pow.f64 im 4) 1/12))))) (*.f64 2 (*.f64 2 (*.f64 4 (+.f64 (pow.f64 im 2) (*.f64 (pow.f64 im 4) 1/12)))))) 64)
(+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))

localize49.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (sin.f64 re) (*.f64 (pow.f64 im 6) (*.f64 1/720 (sin.f64 re))))
0.0b
(*.f64 (pow.f64 im 6) (*.f64 1/720 (sin.f64 re)))
0.3b
(*.f64 1/720 (sin.f64 re))
Compiler

Compiled 34 to 20 computations (41.2% saved)

series4.0ms (0%)

Counts
3 → 52
Calls

15 calls:

TimeVariablePointExpression
0.0ms
re
@inf
(*.f64 (pow.f64 im 6) (*.f64 1/720 (sin.f64 re)))
0.0ms
re
@-inf
(*.f64 (pow.f64 im 6) (*.f64 1/720 (sin.f64 re)))
0.0ms
re
@0
(*.f64 (pow.f64 im 6) (*.f64 1/720 (sin.f64 re)))
0.0ms
im
@0
(*.f64 (pow.f64 im 6) (*.f64 1/720 (sin.f64 re)))
0.0ms
im
@inf
(*.f64 (pow.f64 im 6) (*.f64 1/720 (sin.f64 re)))

rewrite100.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
1824×bool.json-1
1824×bool.json-2
1160×bool.json-3
1002×rational.json-1
1002×rational.json-2
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01267
112267
233263
369363
4146963
5336963
6700963
Stop Event
node limit
Counts
3 → 43
Calls
Call 1
Inputs
(*.f64 1/720 (sin.f64 re))
(*.f64 (pow.f64 im 6) (*.f64 1/720 (sin.f64 re)))
(+.f64 (sin.f64 re) (*.f64 (pow.f64 im 6) (*.f64 1/720 (sin.f64 re))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1/720 (sin.f64 re)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 1/720 (sin.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 re) 1/1440) (*.f64 (sin.f64 re) 1/1440))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 1/720 (sin.f64 re)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/720 (sin.f64 re)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 re) 1/360) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 re) 1/180) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (sin.f64 re) 1/180)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (sin.f64 re) 1/180))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (sin.f64 re) 1/180))) (*.f64 2 (*.f64 2 (*.f64 (sin.f64 re) 1/180)))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x not (not (*.f64 1/720 (sin.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x and (*.f64 1/720 (sin.f64 re)) (*.f64 1/720 (sin.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x or (*.f64 1/720 (sin.f64 re)) (*.f64 1/720 (sin.f64 re)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 re) (*.f64 1/720 (pow.f64 im 6))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (sin.f64 re) (*.f64 1/720 (pow.f64 im 6))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (pow.f64 im 6) (*.f64 (sin.f64 re) 1/1440)) (*.f64 (pow.f64 im 6) (*.f64 (sin.f64 re) 1/1440)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (sin.f64 re) (*.f64 1/720 (pow.f64 im 6))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 re) (*.f64 1/720 (pow.f64 im 6))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 re) (*.f64 (pow.f64 im 6) 1/360)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 im 6) (*.f64 (sin.f64 re) 1/180)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (pow.f64 im 6) (*.f64 (sin.f64 re) 1/180))) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 im 6) (*.f64 (sin.f64 re) 1/180)))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 im 6) (*.f64 (sin.f64 re) 1/180)))) (*.f64 2 (*.f64 2 (*.f64 (pow.f64 im 6) (*.f64 (sin.f64 re) 1/180))))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x not (not (*.f64 (sin.f64 re) (*.f64 1/720 (pow.f64 im 6)))))))) (#(struct:change #<rule egg-rr> (2) ((x and (*.f64 (sin.f64 re) (*.f64 1/720 (pow.f64 im 6))) (*.f64 (sin.f64 re) (*.f64 1/720 (pow.f64 im 6))))))) (#(struct:change #<rule egg-rr> (2) ((x or (*.f64 (sin.f64 re) (*.f64 1/720 (pow.f64 im 6))) (*.f64 (sin.f64 re) (*.f64 1/720 (pow.f64 im 6))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/720 (pow.f64 im 6)))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 re) (+.f64 1 (*.f64 1/720 (pow.f64 im 6))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/720 (pow.f64 im 6)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/720 (pow.f64 im 6)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (sin.f64 re) (/.f64 (+.f64 1 (*.f64 1/720 (pow.f64 im 6))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 re) (*.f64 2 (+.f64 1 (*.f64 1/720 (pow.f64 im 6))))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 re) 2) (*.f64 1/2 (+.f64 1 (*.f64 1/720 (pow.f64 im 6)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/720 (pow.f64 im 6)))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/720 (pow.f64 im 6)))) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (sin.f64 re) (*.f64 2 (+.f64 1 (*.f64 1/720 (pow.f64 im 6))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 1 (*.f64 1/720 (pow.f64 im 6))) (sin.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (+.f64 1 (*.f64 1/720 (pow.f64 im 6)))) (*.f64 (sin.f64 re) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 re) (/.f64 (+.f64 1 (*.f64 1/720 (pow.f64 im 6))) 2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 re) 1/2) (*.f64 2 (+.f64 1 (*.f64 1/720 (pow.f64 im 6)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (+.f64 1 (*.f64 1/720 (pow.f64 im 6)))) (*.f64 (sin.f64 re) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/720 (pow.f64 im 6)))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/720 (pow.f64 im 6)))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/720 (pow.f64 im 6)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 re) (*.f64 2 (+.f64 1 (*.f64 1/720 (pow.f64 im 6))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/720 (pow.f64 im 6)))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/720 (pow.f64 im 6)))) 4)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/720 (pow.f64 im 6)))) 4))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/720 (pow.f64 im 6)))) 4))) (*.f64 2 (*.f64 2 (*.f64 (*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/720 (pow.f64 im 6)))) 4)))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x not (not (*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/720 (pow.f64 im 6))))))))) (#(struct:change #<rule egg-rr> (2) ((x and (*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/720 (pow.f64 im 6)))) (*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/720 (pow.f64 im 6)))))))) (#(struct:change #<rule egg-rr> (2) ((x or (*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/720 (pow.f64 im 6)))) (*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/720 (pow.f64 im 6)))))))))

simplify244.0ms (0.5%)

Algorithm
egg-herbie
Rules
2546×rational.json-simplify-2
1826×rational.json-simplify-35
1212×rational.json-simplify-48
940×rational.json-simplify-1
896×rational.json-simplify-53
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01442879
13192879
26632879
316952671
432132671
539222671
644602671
747052671
852372671
961902671
1073932671
1176792671
Stop Event
node limit
Counts
95 → 86
Calls
Call 1
Inputs
(*.f64 1/720 re)
(+.f64 (*.f64 -1/4320 (pow.f64 re 3)) (*.f64 1/720 re))
(+.f64 (*.f64 1/86400 (pow.f64 re 5)) (+.f64 (*.f64 -1/4320 (pow.f64 re 3)) (*.f64 1/720 re)))
(+.f64 (*.f64 1/86400 (pow.f64 re 5)) (+.f64 (*.f64 -1/4320 (pow.f64 re 3)) (+.f64 (*.f64 -1/3628800 (pow.f64 re 7)) (*.f64 1/720 re))))
(*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6)))
(*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6)))
(*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6)))
(*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6)))
(*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6)))
(*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6)))
(*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6)))
(*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6)))
(*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6)))
(*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6)))
(*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6)))
(*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6)))
(*.f64 1/720 (*.f64 re (pow.f64 im 6)))
(+.f64 (*.f64 -1/4320 (*.f64 (pow.f64 re 3) (pow.f64 im 6))) (*.f64 1/720 (*.f64 re (pow.f64 im 6))))
(+.f64 (*.f64 1/86400 (*.f64 (pow.f64 re 5) (pow.f64 im 6))) (+.f64 (*.f64 -1/4320 (*.f64 (pow.f64 re 3) (pow.f64 im 6))) (*.f64 1/720 (*.f64 re (pow.f64 im 6)))))
(+.f64 (*.f64 -1/3628800 (*.f64 (pow.f64 re 7) (pow.f64 im 6))) (+.f64 (*.f64 1/86400 (*.f64 (pow.f64 re 5) (pow.f64 im 6))) (+.f64 (*.f64 -1/4320 (*.f64 (pow.f64 re 3) (pow.f64 im 6))) (*.f64 1/720 (*.f64 re (pow.f64 im 6))))))
(*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6)))
(*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6)))
(*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6)))
(*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6)))
(*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6)))
(*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6)))
(*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6)))
(*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6)))
(*.f64 (+.f64 1 (*.f64 1/720 (pow.f64 im 6))) re)
(+.f64 (*.f64 (+.f64 1 (*.f64 1/720 (pow.f64 im 6))) re) (*.f64 (pow.f64 re 3) (-.f64 (*.f64 -1/4320 (pow.f64 im 6)) 1/6)))
(+.f64 (*.f64 (+.f64 1 (*.f64 1/720 (pow.f64 im 6))) re) (+.f64 (*.f64 (+.f64 1/120 (*.f64 1/86400 (pow.f64 im 6))) (pow.f64 re 5)) (*.f64 (pow.f64 re 3) (-.f64 (*.f64 -1/4320 (pow.f64 im 6)) 1/6))))
(+.f64 (*.f64 (+.f64 1 (*.f64 1/720 (pow.f64 im 6))) re) (+.f64 (*.f64 (+.f64 1/120 (*.f64 1/86400 (pow.f64 im 6))) (pow.f64 re 5)) (+.f64 (*.f64 (pow.f64 re 3) (-.f64 (*.f64 -1/4320 (pow.f64 im 6)) 1/6)) (*.f64 (-.f64 (*.f64 -1/3628800 (pow.f64 im 6)) 1/5040) (pow.f64 re 7)))))
(+.f64 (sin.f64 re) (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))))
(+.f64 (sin.f64 re) (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))))
(+.f64 (sin.f64 re) (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))))
(+.f64 (sin.f64 re) (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))))
(+.f64 (sin.f64 re) (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))))
(+.f64 (sin.f64 re) (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))))
(+.f64 (sin.f64 re) (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))))
(+.f64 (sin.f64 re) (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))))
(sin.f64 re)
(+.f64 (sin.f64 re) (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))))
(+.f64 (sin.f64 re) (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))))
(+.f64 (sin.f64 re) (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))))
(*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6)))
(+.f64 (sin.f64 re) (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))))
(+.f64 (sin.f64 re) (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))))
(+.f64 (sin.f64 re) (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))))
(*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6)))
(+.f64 (sin.f64 re) (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))))
(+.f64 (sin.f64 re) (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))))
(+.f64 (sin.f64 re) (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))))
(+.f64 (*.f64 1/720 (sin.f64 re)) 0)
(+.f64 0 (*.f64 1/720 (sin.f64 re)))
(+.f64 (*.f64 (sin.f64 re) 1/1440) (*.f64 (sin.f64 re) 1/1440))
(-.f64 (*.f64 1/720 (sin.f64 re)) 0)
(/.f64 (*.f64 1/720 (sin.f64 re)) 1)
(/.f64 (*.f64 (sin.f64 re) 1/360) 2)
(/.f64 (*.f64 (sin.f64 re) 1/180) 4)
(/.f64 (*.f64 2 (*.f64 (sin.f64 re) 1/180)) 8)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (sin.f64 re) 1/180))) 16)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (sin.f64 re) 1/180))) (*.f64 2 (*.f64 2 (*.f64 (sin.f64 re) 1/180)))) 32)
(+.f64 (*.f64 (sin.f64 re) (*.f64 1/720 (pow.f64 im 6))) 0)
(+.f64 0 (*.f64 (sin.f64 re) (*.f64 1/720 (pow.f64 im 6))))
(+.f64 (*.f64 (pow.f64 im 6) (*.f64 (sin.f64 re) 1/1440)) (*.f64 (pow.f64 im 6) (*.f64 (sin.f64 re) 1/1440)))
(-.f64 (*.f64 (sin.f64 re) (*.f64 1/720 (pow.f64 im 6))) 0)
(/.f64 (*.f64 (sin.f64 re) (*.f64 1/720 (pow.f64 im 6))) 1)
(/.f64 (*.f64 (sin.f64 re) (*.f64 (pow.f64 im 6) 1/360)) 2)
(/.f64 (*.f64 (pow.f64 im 6) (*.f64 (sin.f64 re) 1/180)) 4)
(/.f64 (*.f64 2 (*.f64 (pow.f64 im 6) (*.f64 (sin.f64 re) 1/180))) 8)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 im 6) (*.f64 (sin.f64 re) 1/180)))) 16)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 im 6) (*.f64 (sin.f64 re) 1/180)))) (*.f64 2 (*.f64 2 (*.f64 (pow.f64 im 6) (*.f64 (sin.f64 re) 1/180))))) 32)
(-.f64 (*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/720 (pow.f64 im 6)))) 0)
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/720 (pow.f64 im 6))))
(*.f64 (*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/720 (pow.f64 im 6)))) 1)
(*.f64 1 (*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/720 (pow.f64 im 6)))))
(*.f64 2 (*.f64 (sin.f64 re) (/.f64 (+.f64 1 (*.f64 1/720 (pow.f64 im 6))) 2)))
(*.f64 (*.f64 (sin.f64 re) (*.f64 2 (+.f64 1 (*.f64 1/720 (pow.f64 im 6))))) 1/2)
(*.f64 (*.f64 (sin.f64 re) 2) (*.f64 1/2 (+.f64 1 (*.f64 1/720 (pow.f64 im 6)))))
(*.f64 4 (/.f64 (*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/720 (pow.f64 im 6)))) 4))
(*.f64 (*.f64 (*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/720 (pow.f64 im 6)))) 4) 1/4)
(*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 2 (+.f64 1 (*.f64 1/720 (pow.f64 im 6))))))
(*.f64 (+.f64 1 (*.f64 1/720 (pow.f64 im 6))) (sin.f64 re))
(*.f64 (*.f64 2 (+.f64 1 (*.f64 1/720 (pow.f64 im 6)))) (*.f64 (sin.f64 re) 1/2))
(*.f64 (*.f64 (sin.f64 re) (/.f64 (+.f64 1 (*.f64 1/720 (pow.f64 im 6))) 2)) 2)
(*.f64 (*.f64 (sin.f64 re) 1/2) (*.f64 2 (+.f64 1 (*.f64 1/720 (pow.f64 im 6)))))
(*.f64 (*.f64 1/2 (+.f64 1 (*.f64 1/720 (pow.f64 im 6)))) (*.f64 (sin.f64 re) 2))
(*.f64 1/4 (*.f64 (*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/720 (pow.f64 im 6)))) 4))
(*.f64 (/.f64 (*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/720 (pow.f64 im 6)))) 4) 4)
(/.f64 (*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/720 (pow.f64 im 6)))) 1)
(/.f64 (*.f64 (sin.f64 re) (*.f64 2 (+.f64 1 (*.f64 1/720 (pow.f64 im 6))))) 2)
(/.f64 (*.f64 (*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/720 (pow.f64 im 6)))) 4) 4)
(/.f64 (*.f64 2 (*.f64 (*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/720 (pow.f64 im 6)))) 4)) 8)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/720 (pow.f64 im 6)))) 4))) 16)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/720 (pow.f64 im 6)))) 4))) (*.f64 2 (*.f64 2 (*.f64 (*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/720 (pow.f64 im 6)))) 4)))) 32)
Outputs
(*.f64 1/720 re)
(+.f64 (*.f64 -1/4320 (pow.f64 re 3)) (*.f64 1/720 re))
(+.f64 (*.f64 1/720 re) (*.f64 -1/4320 (pow.f64 re 3)))
(+.f64 (*.f64 1/86400 (pow.f64 re 5)) (+.f64 (*.f64 -1/4320 (pow.f64 re 3)) (*.f64 1/720 re)))
(+.f64 (*.f64 -1/4320 (pow.f64 re 3)) (+.f64 (*.f64 1/720 re) (*.f64 1/86400 (pow.f64 re 5))))
(+.f64 (*.f64 1/720 re) (+.f64 (*.f64 -1/4320 (pow.f64 re 3)) (*.f64 1/86400 (pow.f64 re 5))))
(+.f64 (*.f64 1/86400 (pow.f64 re 5)) (+.f64 (*.f64 -1/4320 (pow.f64 re 3)) (+.f64 (*.f64 -1/3628800 (pow.f64 re 7)) (*.f64 1/720 re))))
(+.f64 (*.f64 -1/4320 (pow.f64 re 3)) (+.f64 (+.f64 (*.f64 1/720 re) (*.f64 -1/3628800 (pow.f64 re 7))) (*.f64 1/86400 (pow.f64 re 5))))
(+.f64 (*.f64 1/86400 (pow.f64 re 5)) (+.f64 (*.f64 1/720 re) (+.f64 (*.f64 -1/4320 (pow.f64 re 3)) (*.f64 -1/3628800 (pow.f64 re 7)))))
(+.f64 (*.f64 1/720 re) (+.f64 (+.f64 (*.f64 -1/4320 (pow.f64 re 3)) (*.f64 -1/3628800 (pow.f64 re 7))) (*.f64 1/86400 (pow.f64 re 5))))
(+.f64 (*.f64 1/720 re) (+.f64 (*.f64 1/86400 (pow.f64 re 5)) (+.f64 (*.f64 -1/4320 (pow.f64 re 3)) (*.f64 -1/3628800 (pow.f64 re 7)))))
(*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6)))
(*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6)))
(*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6)))
(*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6)))
(*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6)))
(*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6)))
(*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6)))
(*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6)))
(*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6)))
(*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6)))
(*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6)))
(*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6)))
(*.f64 1/720 (*.f64 re (pow.f64 im 6)))
(*.f64 (pow.f64 im 6) (*.f64 1/720 re))
(*.f64 (*.f64 1/720 re) (pow.f64 im 6))
(+.f64 (*.f64 -1/4320 (*.f64 (pow.f64 re 3) (pow.f64 im 6))) (*.f64 1/720 (*.f64 re (pow.f64 im 6))))
(+.f64 (*.f64 1/720 (*.f64 re (pow.f64 im 6))) (*.f64 (pow.f64 re 3) (*.f64 -1/4320 (pow.f64 im 6))))
(+.f64 (*.f64 (pow.f64 im 6) (*.f64 1/720 re)) (*.f64 -1/4320 (*.f64 (pow.f64 re 3) (pow.f64 im 6))))
(*.f64 (pow.f64 im 6) (+.f64 (*.f64 1/720 re) (*.f64 -1/4320 (pow.f64 re 3))))
(*.f64 (+.f64 (*.f64 1/720 re) (*.f64 -1/4320 (pow.f64 re 3))) (pow.f64 im 6))
(+.f64 (*.f64 1/86400 (*.f64 (pow.f64 re 5) (pow.f64 im 6))) (+.f64 (*.f64 -1/4320 (*.f64 (pow.f64 re 3) (pow.f64 im 6))) (*.f64 1/720 (*.f64 re (pow.f64 im 6)))))
(+.f64 (*.f64 (pow.f64 re 3) (*.f64 -1/4320 (pow.f64 im 6))) (+.f64 (*.f64 1/720 (*.f64 re (pow.f64 im 6))) (*.f64 1/86400 (*.f64 (pow.f64 re 5) (pow.f64 im 6)))))
(+.f64 (*.f64 (pow.f64 im 6) (*.f64 1/720 re)) (+.f64 (*.f64 1/86400 (*.f64 (pow.f64 re 5) (pow.f64 im 6))) (*.f64 -1/4320 (*.f64 (pow.f64 re 3) (pow.f64 im 6)))))
(+.f64 (*.f64 1/720 (*.f64 re (pow.f64 im 6))) (+.f64 (*.f64 (pow.f64 re 3) (*.f64 -1/4320 (pow.f64 im 6))) (*.f64 1/86400 (*.f64 (pow.f64 re 5) (pow.f64 im 6)))))
(+.f64 (*.f64 1/720 (*.f64 re (pow.f64 im 6))) (*.f64 (pow.f64 im 6) (+.f64 (*.f64 -1/4320 (pow.f64 re 3)) (*.f64 1/86400 (pow.f64 re 5)))))
(+.f64 (*.f64 (*.f64 1/720 re) (pow.f64 im 6)) (*.f64 (pow.f64 im 6) (+.f64 (*.f64 -1/4320 (pow.f64 re 3)) (*.f64 1/86400 (pow.f64 re 5)))))
(+.f64 (*.f64 -1/3628800 (*.f64 (pow.f64 re 7) (pow.f64 im 6))) (+.f64 (*.f64 1/86400 (*.f64 (pow.f64 re 5) (pow.f64 im 6))) (+.f64 (*.f64 -1/4320 (*.f64 (pow.f64 re 3) (pow.f64 im 6))) (*.f64 1/720 (*.f64 re (pow.f64 im 6))))))
(+.f64 (+.f64 (*.f64 (pow.f64 re 3) (*.f64 -1/4320 (pow.f64 im 6))) (+.f64 (*.f64 1/720 (*.f64 re (pow.f64 im 6))) (*.f64 1/86400 (*.f64 (pow.f64 re 5) (pow.f64 im 6))))) (*.f64 -1/3628800 (*.f64 (pow.f64 re 7) (pow.f64 im 6))))
(+.f64 (*.f64 -1/4320 (*.f64 (pow.f64 re 3) (pow.f64 im 6))) (+.f64 (+.f64 (*.f64 (pow.f64 im 6) (*.f64 1/720 re)) (*.f64 1/86400 (*.f64 (pow.f64 re 5) (pow.f64 im 6)))) (*.f64 -1/3628800 (*.f64 (pow.f64 re 7) (pow.f64 im 6)))))
(+.f64 (*.f64 1/86400 (*.f64 (pow.f64 re 5) (pow.f64 im 6))) (+.f64 (*.f64 1/720 (*.f64 re (pow.f64 im 6))) (+.f64 (*.f64 (pow.f64 re 3) (*.f64 -1/4320 (pow.f64 im 6))) (*.f64 (pow.f64 re 7) (*.f64 -1/3628800 (pow.f64 im 6))))))
(+.f64 (*.f64 (pow.f64 im 6) (+.f64 (*.f64 1/720 re) (*.f64 1/86400 (pow.f64 re 5)))) (*.f64 (pow.f64 im 6) (+.f64 (*.f64 -1/4320 (pow.f64 re 3)) (*.f64 -1/3628800 (pow.f64 re 7)))))
(*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6)))
(*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6)))
(*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6)))
(*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6)))
(*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6)))
(*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6)))
(*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6)))
(*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6)))
(*.f64 (+.f64 1 (*.f64 1/720 (pow.f64 im 6))) re)
(*.f64 re (+.f64 1 (*.f64 1/720 (pow.f64 im 6))))
(+.f64 (*.f64 (+.f64 1 (*.f64 1/720 (pow.f64 im 6))) re) (*.f64 (pow.f64 re 3) (-.f64 (*.f64 -1/4320 (pow.f64 im 6)) 1/6)))
(+.f64 (*.f64 re (+.f64 1 (*.f64 1/720 (pow.f64 im 6)))) (*.f64 (pow.f64 re 3) (-.f64 (*.f64 -1/4320 (pow.f64 im 6)) 1/6)))
(+.f64 (*.f64 (+.f64 1 (*.f64 1/720 (pow.f64 im 6))) re) (+.f64 (*.f64 (+.f64 1/120 (*.f64 1/86400 (pow.f64 im 6))) (pow.f64 re 5)) (*.f64 (pow.f64 re 3) (-.f64 (*.f64 -1/4320 (pow.f64 im 6)) 1/6))))
(+.f64 (*.f64 re (+.f64 1 (*.f64 1/720 (pow.f64 im 6)))) (+.f64 (*.f64 (pow.f64 re 3) (-.f64 (*.f64 -1/4320 (pow.f64 im 6)) 1/6)) (*.f64 (pow.f64 re 5) (+.f64 1/120 (*.f64 1/86400 (pow.f64 im 6))))))
(+.f64 (*.f64 (+.f64 1 (*.f64 1/720 (pow.f64 im 6))) re) (+.f64 (*.f64 (+.f64 1/120 (*.f64 1/86400 (pow.f64 im 6))) (pow.f64 re 5)) (+.f64 (*.f64 (pow.f64 re 3) (-.f64 (*.f64 -1/4320 (pow.f64 im 6)) 1/6)) (*.f64 (-.f64 (*.f64 -1/3628800 (pow.f64 im 6)) 1/5040) (pow.f64 re 7)))))
(+.f64 (*.f64 re (+.f64 1 (*.f64 1/720 (pow.f64 im 6)))) (+.f64 (*.f64 (pow.f64 re 3) (-.f64 (*.f64 -1/4320 (pow.f64 im 6)) 1/6)) (+.f64 (*.f64 (pow.f64 re 7) (-.f64 (*.f64 -1/3628800 (pow.f64 im 6)) 1/5040)) (*.f64 (pow.f64 re 5) (+.f64 1/120 (*.f64 1/86400 (pow.f64 im 6)))))))
(+.f64 (*.f64 re (+.f64 1 (*.f64 1/720 (pow.f64 im 6)))) (+.f64 (*.f64 (pow.f64 re 3) (-.f64 (*.f64 -1/4320 (pow.f64 im 6)) 1/6)) (+.f64 (*.f64 (pow.f64 re 5) (+.f64 1/120 (*.f64 1/86400 (pow.f64 im 6)))) (*.f64 (pow.f64 re 7) (-.f64 (*.f64 -1/3628800 (pow.f64 im 6)) 1/5040)))))
(+.f64 (sin.f64 re) (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/720 (pow.f64 im 6))))
(+.f64 (sin.f64 re) (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/720 (pow.f64 im 6))))
(+.f64 (sin.f64 re) (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/720 (pow.f64 im 6))))
(+.f64 (sin.f64 re) (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/720 (pow.f64 im 6))))
(+.f64 (sin.f64 re) (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/720 (pow.f64 im 6))))
(+.f64 (sin.f64 re) (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/720 (pow.f64 im 6))))
(+.f64 (sin.f64 re) (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/720 (pow.f64 im 6))))
(+.f64 (sin.f64 re) (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/720 (pow.f64 im 6))))
(sin.f64 re)
(+.f64 (sin.f64 re) (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/720 (pow.f64 im 6))))
(+.f64 (sin.f64 re) (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/720 (pow.f64 im 6))))
(+.f64 (sin.f64 re) (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/720 (pow.f64 im 6))))
(*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6)))
(+.f64 (sin.f64 re) (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/720 (pow.f64 im 6))))
(+.f64 (sin.f64 re) (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/720 (pow.f64 im 6))))
(+.f64 (sin.f64 re) (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/720 (pow.f64 im 6))))
(*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6)))
(+.f64 (sin.f64 re) (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/720 (pow.f64 im 6))))
(+.f64 (sin.f64 re) (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/720 (pow.f64 im 6))))
(+.f64 (sin.f64 re) (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/720 (pow.f64 im 6))))
(+.f64 (*.f64 1/720 (sin.f64 re)) 0)
(*.f64 1/720 (sin.f64 re))
(+.f64 0 (*.f64 1/720 (sin.f64 re)))
(*.f64 1/720 (sin.f64 re))
(+.f64 (*.f64 (sin.f64 re) 1/1440) (*.f64 (sin.f64 re) 1/1440))
(*.f64 1/720 (sin.f64 re))
(-.f64 (*.f64 1/720 (sin.f64 re)) 0)
(*.f64 1/720 (sin.f64 re))
(/.f64 (*.f64 1/720 (sin.f64 re)) 1)
(*.f64 1/720 (sin.f64 re))
(/.f64 (*.f64 (sin.f64 re) 1/360) 2)
(*.f64 1/720 (sin.f64 re))
(/.f64 (*.f64 (sin.f64 re) 1/180) 4)
(*.f64 1/720 (sin.f64 re))
(/.f64 (*.f64 2 (*.f64 (sin.f64 re) 1/180)) 8)
(*.f64 1/720 (sin.f64 re))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (sin.f64 re) 1/180))) 16)
(*.f64 1/720 (sin.f64 re))
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (sin.f64 re) 1/180))) (*.f64 2 (*.f64 2 (*.f64 (sin.f64 re) 1/180)))) 32)
(*.f64 1/720 (sin.f64 re))
(+.f64 (*.f64 (sin.f64 re) (*.f64 1/720 (pow.f64 im 6))) 0)
(*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6)))
(+.f64 0 (*.f64 (sin.f64 re) (*.f64 1/720 (pow.f64 im 6))))
(*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6)))
(+.f64 (*.f64 (pow.f64 im 6) (*.f64 (sin.f64 re) 1/1440)) (*.f64 (pow.f64 im 6) (*.f64 (sin.f64 re) 1/1440)))
(*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6)))
(-.f64 (*.f64 (sin.f64 re) (*.f64 1/720 (pow.f64 im 6))) 0)
(*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6)))
(/.f64 (*.f64 (sin.f64 re) (*.f64 1/720 (pow.f64 im 6))) 1)
(*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6)))
(/.f64 (*.f64 (sin.f64 re) (*.f64 (pow.f64 im 6) 1/360)) 2)
(*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6)))
(/.f64 (*.f64 (pow.f64 im 6) (*.f64 (sin.f64 re) 1/180)) 4)
(*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6)))
(/.f64 (*.f64 2 (*.f64 (pow.f64 im 6) (*.f64 (sin.f64 re) 1/180))) 8)
(*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6)))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 im 6) (*.f64 (sin.f64 re) 1/180)))) 16)
(*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6)))
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 im 6) (*.f64 (sin.f64 re) 1/180)))) (*.f64 2 (*.f64 2 (*.f64 (pow.f64 im 6) (*.f64 (sin.f64 re) 1/180))))) 32)
(*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6)))
(-.f64 (*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/720 (pow.f64 im 6)))) 0)
(+.f64 (sin.f64 re) (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/720 (pow.f64 im 6))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/720 (pow.f64 im 6))))
(+.f64 (sin.f64 re) (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))))
(*.f64 (*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/720 (pow.f64 im 6)))) 1)
(+.f64 (sin.f64 re) (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/720 (pow.f64 im 6))))
(*.f64 1 (*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/720 (pow.f64 im 6)))))
(+.f64 (sin.f64 re) (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/720 (pow.f64 im 6))))
(*.f64 2 (*.f64 (sin.f64 re) (/.f64 (+.f64 1 (*.f64 1/720 (pow.f64 im 6))) 2)))
(+.f64 (sin.f64 re) (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/720 (pow.f64 im 6))))
(*.f64 (*.f64 (sin.f64 re) (*.f64 2 (+.f64 1 (*.f64 1/720 (pow.f64 im 6))))) 1/2)
(+.f64 (sin.f64 re) (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/720 (pow.f64 im 6))))
(*.f64 (*.f64 (sin.f64 re) 2) (*.f64 1/2 (+.f64 1 (*.f64 1/720 (pow.f64 im 6)))))
(+.f64 (sin.f64 re) (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/720 (pow.f64 im 6))))
(*.f64 4 (/.f64 (*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/720 (pow.f64 im 6)))) 4))
(+.f64 (sin.f64 re) (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/720 (pow.f64 im 6))))
(*.f64 (*.f64 (*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/720 (pow.f64 im 6)))) 4) 1/4)
(+.f64 (sin.f64 re) (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/720 (pow.f64 im 6))))
(*.f64 1/2 (*.f64 (sin.f64 re) (*.f64 2 (+.f64 1 (*.f64 1/720 (pow.f64 im 6))))))
(+.f64 (sin.f64 re) (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/720 (pow.f64 im 6))))
(*.f64 (+.f64 1 (*.f64 1/720 (pow.f64 im 6))) (sin.f64 re))
(+.f64 (sin.f64 re) (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/720 (pow.f64 im 6))))
(*.f64 (*.f64 2 (+.f64 1 (*.f64 1/720 (pow.f64 im 6)))) (*.f64 (sin.f64 re) 1/2))
(+.f64 (sin.f64 re) (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/720 (pow.f64 im 6))))
(*.f64 (*.f64 (sin.f64 re) (/.f64 (+.f64 1 (*.f64 1/720 (pow.f64 im 6))) 2)) 2)
(+.f64 (sin.f64 re) (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/720 (pow.f64 im 6))))
(*.f64 (*.f64 (sin.f64 re) 1/2) (*.f64 2 (+.f64 1 (*.f64 1/720 (pow.f64 im 6)))))
(+.f64 (sin.f64 re) (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/720 (pow.f64 im 6))))
(*.f64 (*.f64 1/2 (+.f64 1 (*.f64 1/720 (pow.f64 im 6)))) (*.f64 (sin.f64 re) 2))
(+.f64 (sin.f64 re) (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/720 (pow.f64 im 6))))
(*.f64 1/4 (*.f64 (*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/720 (pow.f64 im 6)))) 4))
(+.f64 (sin.f64 re) (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/720 (pow.f64 im 6))))
(*.f64 (/.f64 (*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/720 (pow.f64 im 6)))) 4) 4)
(+.f64 (sin.f64 re) (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/720 (pow.f64 im 6))))
(/.f64 (*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/720 (pow.f64 im 6)))) 1)
(+.f64 (sin.f64 re) (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/720 (pow.f64 im 6))))
(/.f64 (*.f64 (sin.f64 re) (*.f64 2 (+.f64 1 (*.f64 1/720 (pow.f64 im 6))))) 2)
(+.f64 (sin.f64 re) (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/720 (pow.f64 im 6))))
(/.f64 (*.f64 (*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/720 (pow.f64 im 6)))) 4) 4)
(+.f64 (sin.f64 re) (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/720 (pow.f64 im 6))))
(/.f64 (*.f64 2 (*.f64 (*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/720 (pow.f64 im 6)))) 4)) 8)
(+.f64 (sin.f64 re) (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/720 (pow.f64 im 6))))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/720 (pow.f64 im 6)))) 4))) 16)
(+.f64 (sin.f64 re) (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/720 (pow.f64 im 6))))
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/720 (pow.f64 im 6)))) 4))) (*.f64 2 (*.f64 2 (*.f64 (*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/720 (pow.f64 im 6)))) 4)))) 32)
(+.f64 (sin.f64 re) (*.f64 1/720 (*.f64 (sin.f64 re) (pow.f64 im 6))))
(*.f64 (sin.f64 re) (+.f64 1 (*.f64 1/720 (pow.f64 im 6))))

localize38.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(*.f64 1/2 (pow.f64 im 2))
0.0b
(*.f64 1/720 (pow.f64 im 6))
0.1b
(*.f64 1/24 (pow.f64 im 4))
8.9b
(*.f64 re (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/2 (pow.f64 im 2)))))
Compiler

Compiled 102 to 80 computations (21.6% saved)

series2.0ms (0%)

Counts
1 → 24
Calls

6 calls:

TimeVariablePointExpression
0.0ms
re
@0
(*.f64 re (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/2 (pow.f64 im 2)))))
0.0ms
re
@inf
(*.f64 re (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/2 (pow.f64 im 2)))))
0.0ms
re
@-inf
(*.f64 re (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/2 (pow.f64 im 2)))))
0.0ms
im
@inf
(*.f64 re (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/2 (pow.f64 im 2)))))
0.0ms
im
@0
(*.f64 re (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/2 (pow.f64 im 2)))))

rewrite93.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
1564×bool.json-1
1564×bool.json-2
1512×rational.json-1
1512×rational.json-2
1512×rational.json-4
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01955
118455
242255
381155
4171355
5362355
6629055
Stop Event
node limit
Counts
1 → 10
Calls
Call 1
Inputs
(*.f64 re (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/2 (pow.f64 im 2)))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 re (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (/.f64 (pow.f64 im 2) 2)))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 re (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (/.f64 (pow.f64 im 2) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1/2 (*.f64 re (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (/.f64 (pow.f64 im 2) 2))))) (*.f64 1/2 (*.f64 re (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (/.f64 (pow.f64 im 2) 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 re (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (/.f64 (pow.f64 im 2) 2)))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 re (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (/.f64 (pow.f64 im 2) 2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 re (*.f64 2 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (/.f64 (pow.f64 im 2) 2))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 4 (*.f64 re (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (/.f64 (pow.f64 im 2) 2))))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 4 (*.f64 re (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (/.f64 (pow.f64 im 2) 2)))))) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 4 (*.f64 re (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (/.f64 (pow.f64 im 2) 2))))))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 4 (*.f64 re (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (/.f64 (pow.f64 im 2) 2))))))) (*.f64 2 (*.f64 2 (*.f64 4 (*.f64 re (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (/.f64 (pow.f64 im 2) 2)))))))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x not (not (*.f64 re (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (/.f64 (pow.f64 im 2) 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x and (*.f64 re (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (/.f64 (pow.f64 im 2) 2)))) (*.f64 re (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (/.f64 (pow.f64 im 2) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x or (*.f64 re (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (/.f64 (pow.f64 im 2) 2)))) (*.f64 re (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (/.f64 (pow.f64 im 2) 2)))))))))

simplify2.8s (6.3%)

Algorithm
egg-herbie
Rules
5036×rational.json-simplify-35
2184×rational.json-simplify-2
1290×rational.json-simplify-1
982×rational.json-simplify-43
908×rational.json-simplify-41
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0551726
11261726
22371708
35991708
422381708
537881708
644681708
745561708
846201708
946821708
1047441708
1150381708
1251851708
1354121708
1455641708
1556461708
1657201708
1757841708
1858461708
1959081708
2059701708
2160321708
2260321708
2360941708
2461561708
2562181708
2662801708
2763421708
2864041708
2964661708
3065281708
3165901708
3266521708
3367141708
3467761708
3568381708
3669001708
3769621708
3870241708
3970861708
4071481708
4172101708
4272721708
4372721708
4473341708
4573961708
4674581708
4775201708
4875821708
4976441708
5077061708
5177681708
5278301708
5378921708
5479541708
Stop Event
node limit
Counts
34 → 27
Calls
Call 1
Inputs
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) re)
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) re)
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) re)
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) re)
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) re)
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) re)
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) re)
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) re)
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) re)
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) re)
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) re)
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) re)
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (+.f64 (*.f64 1/720 (*.f64 re (pow.f64 im 6))) (*.f64 1/2 (*.f64 re (pow.f64 im 2)))))
(+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (+.f64 (*.f64 1/720 (*.f64 re (pow.f64 im 6))) (*.f64 1/2 (*.f64 re (pow.f64 im 2)))))
(*.f64 1/720 (*.f64 re (pow.f64 im 6)))
(+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (*.f64 1/720 (*.f64 re (pow.f64 im 6))))
(+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (+.f64 (*.f64 1/720 (*.f64 re (pow.f64 im 6))) (*.f64 1/2 (*.f64 re (pow.f64 im 2)))))
(+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (+.f64 (*.f64 1/720 (*.f64 re (pow.f64 im 6))) (*.f64 1/2 (*.f64 re (pow.f64 im 2)))))
(*.f64 1/720 (*.f64 re (pow.f64 im 6)))
(+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (*.f64 1/720 (*.f64 re (pow.f64 im 6))))
(+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (+.f64 (*.f64 1/720 (*.f64 re (pow.f64 im 6))) (*.f64 1/2 (*.f64 re (pow.f64 im 2)))))
(+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (+.f64 (*.f64 1/720 (*.f64 re (pow.f64 im 6))) (*.f64 1/2 (*.f64 re (pow.f64 im 2)))))
(+.f64 (*.f64 re (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (/.f64 (pow.f64 im 2) 2)))) 0)
(+.f64 0 (*.f64 re (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (/.f64 (pow.f64 im 2) 2)))))
(+.f64 (*.f64 1/2 (*.f64 re (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (/.f64 (pow.f64 im 2) 2))))) (*.f64 1/2 (*.f64 re (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (/.f64 (pow.f64 im 2) 2))))))
(-.f64 (*.f64 re (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (/.f64 (pow.f64 im 2) 2)))) 0)
(/.f64 (*.f64 re (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (/.f64 (pow.f64 im 2) 2)))) 1)
(/.f64 (*.f64 re (*.f64 2 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (/.f64 (pow.f64 im 2) 2))))) 2)
(/.f64 (*.f64 4 (*.f64 re (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (/.f64 (pow.f64 im 2) 2))))) 4)
(/.f64 (*.f64 2 (*.f64 4 (*.f64 re (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (/.f64 (pow.f64 im 2) 2)))))) 8)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 4 (*.f64 re (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (/.f64 (pow.f64 im 2) 2))))))) 16)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 4 (*.f64 re (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (/.f64 (pow.f64 im 2) 2))))))) (*.f64 2 (*.f64 2 (*.f64 4 (*.f64 re (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (/.f64 (pow.f64 im 2) 2)))))))) 32)
Outputs
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) re)
(*.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/720 (pow.f64 im 6)))) re)
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) re)
(*.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/720 (pow.f64 im 6)))) re)
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) re)
(*.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/720 (pow.f64 im 6)))) re)
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) re)
(*.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/720 (pow.f64 im 6)))) re)
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) re)
(*.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/720 (pow.f64 im 6)))) re)
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) re)
(*.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/720 (pow.f64 im 6)))) re)
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) re)
(*.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/720 (pow.f64 im 6)))) re)
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) re)
(*.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/720 (pow.f64 im 6)))) re)
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) re)
(*.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/720 (pow.f64 im 6)))) re)
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) re)
(*.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/720 (pow.f64 im 6)))) re)
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) re)
(*.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/720 (pow.f64 im 6)))) re)
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) re)
(*.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/720 (pow.f64 im 6)))) re)
(*.f64 1/2 (*.f64 re (pow.f64 im 2)))
(*.f64 1/2 (*.f64 (pow.f64 im 2) re))
(+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (*.f64 1/2 (*.f64 re (pow.f64 im 2))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) re)) (*.f64 1/24 (*.f64 (pow.f64 im 4) re)))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 im 2) re)) (*.f64 (pow.f64 im 4) (*.f64 re 1/24)))
(*.f64 re (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4))))
(+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (+.f64 (*.f64 1/720 (*.f64 re (pow.f64 im 6))) (*.f64 1/2 (*.f64 re (pow.f64 im 2)))))
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) re)
(*.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/720 (pow.f64 im 6)))) re)
(+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (+.f64 (*.f64 1/720 (*.f64 re (pow.f64 im 6))) (*.f64 1/2 (*.f64 re (pow.f64 im 2)))))
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) re)
(*.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/720 (pow.f64 im 6)))) re)
(*.f64 1/720 (*.f64 re (pow.f64 im 6)))
(*.f64 1/720 (*.f64 (pow.f64 im 6) re))
(+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (*.f64 1/720 (*.f64 re (pow.f64 im 6))))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) re)) (*.f64 1/720 (*.f64 (pow.f64 im 6) re)))
(+.f64 (*.f64 (pow.f64 im 4) (*.f64 re 1/24)) (*.f64 1/720 (*.f64 (pow.f64 im 6) re)))
(*.f64 re (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))))
(*.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))) re)
(+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (+.f64 (*.f64 1/720 (*.f64 re (pow.f64 im 6))) (*.f64 1/2 (*.f64 re (pow.f64 im 2)))))
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) re)
(*.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/720 (pow.f64 im 6)))) re)
(+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (+.f64 (*.f64 1/720 (*.f64 re (pow.f64 im 6))) (*.f64 1/2 (*.f64 re (pow.f64 im 2)))))
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) re)
(*.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/720 (pow.f64 im 6)))) re)
(*.f64 1/720 (*.f64 re (pow.f64 im 6)))
(*.f64 1/720 (*.f64 (pow.f64 im 6) re))
(+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (*.f64 1/720 (*.f64 re (pow.f64 im 6))))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 im 4) re)) (*.f64 1/720 (*.f64 (pow.f64 im 6) re)))
(+.f64 (*.f64 (pow.f64 im 4) (*.f64 re 1/24)) (*.f64 1/720 (*.f64 (pow.f64 im 6) re)))
(*.f64 re (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))))
(*.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))) re)
(+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (+.f64 (*.f64 1/720 (*.f64 re (pow.f64 im 6))) (*.f64 1/2 (*.f64 re (pow.f64 im 2)))))
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) re)
(*.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/720 (pow.f64 im 6)))) re)
(+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (+.f64 (*.f64 1/720 (*.f64 re (pow.f64 im 6))) (*.f64 1/2 (*.f64 re (pow.f64 im 2)))))
(*.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6)))) re)
(*.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/720 (pow.f64 im 6)))) re)
(+.f64 (*.f64 re (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (/.f64 (pow.f64 im 2) 2)))) 0)
(*.f64 re (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (/.f64 (pow.f64 im 2) 2))))
(+.f64 0 (*.f64 re (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (/.f64 (pow.f64 im 2) 2)))))
(*.f64 re (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (/.f64 (pow.f64 im 2) 2))))
(+.f64 (*.f64 1/2 (*.f64 re (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (/.f64 (pow.f64 im 2) 2))))) (*.f64 1/2 (*.f64 re (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (/.f64 (pow.f64 im 2) 2))))))
(*.f64 re (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (/.f64 (pow.f64 im 2) 2))))
(-.f64 (*.f64 re (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (/.f64 (pow.f64 im 2) 2)))) 0)
(*.f64 re (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (/.f64 (pow.f64 im 2) 2))))
(/.f64 (*.f64 re (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (/.f64 (pow.f64 im 2) 2)))) 1)
(*.f64 re (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (/.f64 (pow.f64 im 2) 2))))
(/.f64 (*.f64 re (*.f64 2 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (/.f64 (pow.f64 im 2) 2))))) 2)
(*.f64 re (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (/.f64 (pow.f64 im 2) 2))))
(/.f64 (*.f64 4 (*.f64 re (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (/.f64 (pow.f64 im 2) 2))))) 4)
(*.f64 re (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (/.f64 (pow.f64 im 2) 2))))
(/.f64 (*.f64 2 (*.f64 4 (*.f64 re (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (/.f64 (pow.f64 im 2) 2)))))) 8)
(*.f64 re (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (/.f64 (pow.f64 im 2) 2))))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 4 (*.f64 re (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (/.f64 (pow.f64 im 2) 2))))))) 16)
(*.f64 re (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (/.f64 (pow.f64 im 2) 2))))
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 4 (*.f64 re (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (/.f64 (pow.f64 im 2) 2))))))) (*.f64 2 (*.f64 2 (*.f64 4 (*.f64 re (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (/.f64 (pow.f64 im 2) 2)))))))) 32)
(*.f64 re (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (/.f64 (pow.f64 im 2) 2))))

eval158.0ms (0.4%)

Compiler

Compiled 5358 to 4071 computations (24% saved)

prune50.0ms (0.1%)

Pruning

10 alts after pruning (4 fresh and 6 done)

PrunedKeptTotal
New2843287
Fresh112
Picked011
Done257
Total28710297
Error
0.3b
Counts
297 → 10
Alt Table
Click to see full alt table
StatusErrorProgram
30.8b
(/.f64 (+.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) re) (+.f64 (+.f64 (*.f64 -1/6 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 3))) (*.f64 (+.f64 2 (pow.f64 im 2)) (*.f64 (pow.f64 re 7) -1/5040))) (*.f64 1/120 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 5))))) 2)
0.7b
(/.f64 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))) 2)
30.4b
(+.f64 re (*.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))) re))
30.3b
(+.f64 re (*.f64 re (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/2 (pow.f64 im 2))))))
30.3b
(+.f64 re (*.f64 re (*.f64 1/2 (pow.f64 im 2))))
30.1b
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
30.4b
(*.f64 (+.f64 1 (*.f64 1/720 (pow.f64 im 6))) re)
0.3b
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
0.9b
(sin.f64 re)
30.4b
re
Compiler

Compiled 153 to 121 computations (20.9% saved)

localize14.0ms (0%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(*.f64 (+.f64 1 (*.f64 1/720 (pow.f64 im 6))) re)
0.0b
(*.f64 1/720 (pow.f64 im 6))
Compiler

Compiled 31 to 24 computations (22.6% saved)

series2.0ms (0%)

Counts
1 → 12
Calls

6 calls:

TimeVariablePointExpression
1.0ms
im
@inf
(*.f64 (+.f64 1 (*.f64 1/720 (pow.f64 im 6))) re)
0.0ms
im
@0
(*.f64 (+.f64 1 (*.f64 1/720 (pow.f64 im 6))) re)
0.0ms
re
@inf
(*.f64 (+.f64 1 (*.f64 1/720 (pow.f64 im 6))) re)
0.0ms
re
@0
(*.f64 (+.f64 1 (*.f64 1/720 (pow.f64 im 6))) re)
0.0ms
re
@-inf
(*.f64 (+.f64 1 (*.f64 1/720 (pow.f64 im 6))) re)

rewrite83.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
1474×rational.json-simplify-35
1298×bool.json-1
1298×bool.json-2
1246×rational.json-1
1246×rational.json-2
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01125
111725
231825
359925
4117825
5254825
6514925
Stop Event
node limit
Counts
1 → 11
Calls
Call 1
Inputs
(*.f64 (+.f64 1 (*.f64 1/720 (pow.f64 im 6))) re)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (+.f64 1 (*.f64 1/720 (pow.f64 im 6))) re) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (+.f64 1 (*.f64 1/720 (pow.f64 im 6))) re))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (+.f64 1 (*.f64 1/720 (pow.f64 im 6))) (*.f64 re 1/2)) (*.f64 (+.f64 1 (*.f64 1/720 (pow.f64 im 6))) (*.f64 re 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (+.f64 1 (*.f64 1/720 (pow.f64 im 6))) re) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 1 (*.f64 1/720 (pow.f64 im 6))) re) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 re (+.f64 2 (*.f64 (pow.f64 im 6) 1/360))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 1 (*.f64 1/720 (pow.f64 im 6))) (*.f64 re 4)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (+.f64 1 (*.f64 1/720 (pow.f64 im 6))) re) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (*.f64 (+.f64 1 (*.f64 1/720 (pow.f64 im 6))) re) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (+.f64 1 (*.f64 1/720 (pow.f64 im 6))) re) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (+.f64 1 (*.f64 1/720 (pow.f64 im 6))) re) 8))) (*.f64 2 (*.f64 2 (*.f64 (*.f64 (+.f64 1 (*.f64 1/720 (pow.f64 im 6))) re) 8)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x not (not (*.f64 (+.f64 1 (*.f64 1/720 (pow.f64 im 6))) re)))))) (#(struct:change #<rule egg-rr> (2) ((x and (*.f64 (+.f64 1 (*.f64 1/720 (pow.f64 im 6))) re) (*.f64 (+.f64 1 (*.f64 1/720 (pow.f64 im 6))) re))))) (#(struct:change #<rule egg-rr> (2) ((x or (*.f64 (+.f64 1 (*.f64 1/720 (pow.f64 im 6))) re) (*.f64 (+.f64 1 (*.f64 1/720 (pow.f64 im 6))) re))))))

simplify1.1s (2.5%)

Algorithm
egg-herbie
Rules
7946×rational.json-simplify-41
5502×rational.json-simplify-35
2106×rational.json-simplify-2
964×rational.json-simplify-1
868×rational.json-simplify-53
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
045545
1104545
2202545
3423545
41763545
53335545
64164545
74542545
84800545
95009545
105196545
115522545
125522545
135571545
145769545
155980545
166167545
176338545
186487545
196636545
206785545
216934545
226934545
237083545
247232545
257381545
267530545
277679545
287828545
Stop Event
node limit
Counts
23 → 23
Calls
Call 1
Inputs
re
(+.f64 (*.f64 1/720 (*.f64 re (pow.f64 im 6))) re)
(+.f64 (*.f64 1/720 (*.f64 re (pow.f64 im 6))) re)
(+.f64 (*.f64 1/720 (*.f64 re (pow.f64 im 6))) re)
(*.f64 1/720 (*.f64 re (pow.f64 im 6)))
(+.f64 (*.f64 1/720 (*.f64 re (pow.f64 im 6))) re)
(+.f64 (*.f64 1/720 (*.f64 re (pow.f64 im 6))) re)
(+.f64 (*.f64 1/720 (*.f64 re (pow.f64 im 6))) re)
(*.f64 1/720 (*.f64 re (pow.f64 im 6)))
(+.f64 (*.f64 1/720 (*.f64 re (pow.f64 im 6))) re)
(+.f64 (*.f64 1/720 (*.f64 re (pow.f64 im 6))) re)
(+.f64 (*.f64 1/720 (*.f64 re (pow.f64 im 6))) re)
(+.f64 (*.f64 (+.f64 1 (*.f64 1/720 (pow.f64 im 6))) re) 0)
(+.f64 0 (*.f64 (+.f64 1 (*.f64 1/720 (pow.f64 im 6))) re))
(+.f64 (*.f64 (+.f64 1 (*.f64 1/720 (pow.f64 im 6))) (*.f64 re 1/2)) (*.f64 (+.f64 1 (*.f64 1/720 (pow.f64 im 6))) (*.f64 re 1/2)))
(-.f64 (*.f64 (+.f64 1 (*.f64 1/720 (pow.f64 im 6))) re) 0)
(/.f64 (*.f64 (+.f64 1 (*.f64 1/720 (pow.f64 im 6))) re) 1)
(/.f64 (*.f64 re (+.f64 2 (*.f64 (pow.f64 im 6) 1/360))) 2)
(/.f64 (*.f64 (+.f64 1 (*.f64 1/720 (pow.f64 im 6))) (*.f64 re 4)) 4)
(/.f64 (*.f64 (*.f64 (+.f64 1 (*.f64 1/720 (pow.f64 im 6))) re) 8) 8)
(/.f64 (*.f64 2 (*.f64 (*.f64 (+.f64 1 (*.f64 1/720 (pow.f64 im 6))) re) 8)) 16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (+.f64 1 (*.f64 1/720 (pow.f64 im 6))) re) 8))) 32)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (+.f64 1 (*.f64 1/720 (pow.f64 im 6))) re) 8))) (*.f64 2 (*.f64 2 (*.f64 (*.f64 (+.f64 1 (*.f64 1/720 (pow.f64 im 6))) re) 8)))) 64)
Outputs
re
(+.f64 (*.f64 1/720 (*.f64 re (pow.f64 im 6))) re)
(+.f64 re (*.f64 1/720 (*.f64 re (pow.f64 im 6))))
(+.f64 re (*.f64 (pow.f64 im 6) (*.f64 re 1/720)))
(+.f64 re (*.f64 re (*.f64 1/720 (pow.f64 im 6))))
(+.f64 (*.f64 1/720 (*.f64 re (pow.f64 im 6))) re)
(+.f64 re (*.f64 1/720 (*.f64 re (pow.f64 im 6))))
(+.f64 re (*.f64 (pow.f64 im 6) (*.f64 re 1/720)))
(+.f64 re (*.f64 re (*.f64 1/720 (pow.f64 im 6))))
(+.f64 (*.f64 1/720 (*.f64 re (pow.f64 im 6))) re)
(+.f64 re (*.f64 1/720 (*.f64 re (pow.f64 im 6))))
(+.f64 re (*.f64 (pow.f64 im 6) (*.f64 re 1/720)))
(+.f64 re (*.f64 re (*.f64 1/720 (pow.f64 im 6))))
(*.f64 1/720 (*.f64 re (pow.f64 im 6)))
(*.f64 (pow.f64 im 6) (*.f64 re 1/720))
(*.f64 re (*.f64 1/720 (pow.f64 im 6)))
(+.f64 (*.f64 1/720 (*.f64 re (pow.f64 im 6))) re)
(+.f64 re (*.f64 1/720 (*.f64 re (pow.f64 im 6))))
(+.f64 re (*.f64 (pow.f64 im 6) (*.f64 re 1/720)))
(+.f64 re (*.f64 re (*.f64 1/720 (pow.f64 im 6))))
(+.f64 (*.f64 1/720 (*.f64 re (pow.f64 im 6))) re)
(+.f64 re (*.f64 1/720 (*.f64 re (pow.f64 im 6))))
(+.f64 re (*.f64 (pow.f64 im 6) (*.f64 re 1/720)))
(+.f64 re (*.f64 re (*.f64 1/720 (pow.f64 im 6))))
(+.f64 (*.f64 1/720 (*.f64 re (pow.f64 im 6))) re)
(+.f64 re (*.f64 1/720 (*.f64 re (pow.f64 im 6))))
(+.f64 re (*.f64 (pow.f64 im 6) (*.f64 re 1/720)))
(+.f64 re (*.f64 re (*.f64 1/720 (pow.f64 im 6))))
(*.f64 1/720 (*.f64 re (pow.f64 im 6)))
(*.f64 (pow.f64 im 6) (*.f64 re 1/720))
(*.f64 re (*.f64 1/720 (pow.f64 im 6)))
(+.f64 (*.f64 1/720 (*.f64 re (pow.f64 im 6))) re)
(+.f64 re (*.f64 1/720 (*.f64 re (pow.f64 im 6))))
(+.f64 re (*.f64 (pow.f64 im 6) (*.f64 re 1/720)))
(+.f64 re (*.f64 re (*.f64 1/720 (pow.f64 im 6))))
(+.f64 (*.f64 1/720 (*.f64 re (pow.f64 im 6))) re)
(+.f64 re (*.f64 1/720 (*.f64 re (pow.f64 im 6))))
(+.f64 re (*.f64 (pow.f64 im 6) (*.f64 re 1/720)))
(+.f64 re (*.f64 re (*.f64 1/720 (pow.f64 im 6))))
(+.f64 (*.f64 1/720 (*.f64 re (pow.f64 im 6))) re)
(+.f64 re (*.f64 1/720 (*.f64 re (pow.f64 im 6))))
(+.f64 re (*.f64 (pow.f64 im 6) (*.f64 re 1/720)))
(+.f64 re (*.f64 re (*.f64 1/720 (pow.f64 im 6))))
(+.f64 (*.f64 (+.f64 1 (*.f64 1/720 (pow.f64 im 6))) re) 0)
(*.f64 re (+.f64 1 (*.f64 1/720 (pow.f64 im 6))))
(+.f64 0 (*.f64 (+.f64 1 (*.f64 1/720 (pow.f64 im 6))) re))
(*.f64 re (+.f64 1 (*.f64 1/720 (pow.f64 im 6))))
(+.f64 (*.f64 (+.f64 1 (*.f64 1/720 (pow.f64 im 6))) (*.f64 re 1/2)) (*.f64 (+.f64 1 (*.f64 1/720 (pow.f64 im 6))) (*.f64 re 1/2)))
(*.f64 re (+.f64 1 (*.f64 1/720 (pow.f64 im 6))))
(-.f64 (*.f64 (+.f64 1 (*.f64 1/720 (pow.f64 im 6))) re) 0)
(*.f64 re (+.f64 1 (*.f64 1/720 (pow.f64 im 6))))
(/.f64 (*.f64 (+.f64 1 (*.f64 1/720 (pow.f64 im 6))) re) 1)
(*.f64 re (+.f64 1 (*.f64 1/720 (pow.f64 im 6))))
(/.f64 (*.f64 re (+.f64 2 (*.f64 (pow.f64 im 6) 1/360))) 2)
(*.f64 (+.f64 2 (*.f64 (pow.f64 im 6) 1/360)) (/.f64 re 2))
(*.f64 re (/.f64 (+.f64 2 (*.f64 (pow.f64 im 6) 1/360)) 2))
(*.f64 (*.f64 re 1/2) (+.f64 2 (*.f64 (pow.f64 im 6) 1/360)))
(/.f64 (*.f64 (+.f64 1 (*.f64 1/720 (pow.f64 im 6))) (*.f64 re 4)) 4)
(*.f64 re (+.f64 1 (*.f64 1/720 (pow.f64 im 6))))
(/.f64 (*.f64 (*.f64 (+.f64 1 (*.f64 1/720 (pow.f64 im 6))) re) 8) 8)
(*.f64 re (+.f64 1 (*.f64 1/720 (pow.f64 im 6))))
(/.f64 (*.f64 2 (*.f64 (*.f64 (+.f64 1 (*.f64 1/720 (pow.f64 im 6))) re) 8)) 16)
(*.f64 re (+.f64 1 (*.f64 1/720 (pow.f64 im 6))))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (+.f64 1 (*.f64 1/720 (pow.f64 im 6))) re) 8))) 32)
(*.f64 re (+.f64 1 (*.f64 1/720 (pow.f64 im 6))))
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (+.f64 1 (*.f64 1/720 (pow.f64 im 6))) re) 8))) (*.f64 2 (*.f64 2 (*.f64 (*.f64 (+.f64 1 (*.f64 1/720 (pow.f64 im 6))) re) 8)))) 64)
(*.f64 re (+.f64 1 (*.f64 1/720 (pow.f64 im 6))))

localize23.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(*.f64 1/720 (pow.f64 im 6))
0.1b
(*.f64 1/24 (pow.f64 im 4))
3.9b
(*.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))) re)
Compiler

Compiled 63 to 48 computations (23.8% saved)

series2.0ms (0%)

Counts
1 → 12
Calls

6 calls:

TimeVariablePointExpression
0.0ms
re
@inf
(*.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))) re)
0.0ms
re
@-inf
(*.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))) re)
0.0ms
im
@inf
(*.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))) re)
0.0ms
re
@0
(*.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))) re)
0.0ms
im
@0
(*.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))) re)

rewrite85.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
1456×bool.json-1
1456×bool.json-2
1398×rational.json-1
1398×rational.json-2
1398×rational.json-4
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01437
113537
231737
361237
4125137
5273937
6561537
Stop Event
node limit
Counts
1 → 10
Calls
Call 1
Inputs
(*.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))) re)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))) re) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))) re))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))) (*.f64 re 1/2)) (*.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))) (*.f64 re 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))) re) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))) re) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))) (+.f64 re re)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))) (*.f64 4 re)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))) re) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (*.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))) re) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))) re) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x not (not (*.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))) re)))))) (#(struct:change #<rule egg-rr> (2) ((x and (*.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))) re) (*.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))) re))))) (#(struct:change #<rule egg-rr> (2) ((x or (*.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))) re) (*.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))) re))))))

simplify1.2s (2.7%)

Algorithm
egg-herbie
Rules
6982×rational.json-simplify-41
4782×rational.json-simplify-35
2500×rational.json-simplify-2
1078×rational.json-simplify-53
776×rational.json-simplify-43
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
045874
1102874
2202760
3453760
41903760
53346760
64036760
74351760
84489760
94623760
104754760
115194760
125194760
135272760
145424760
155450760
165621760
175762760
185892760
196022760
206152760
216282760
226412760
236542760
246672760
256908760
266908760
276908760
287038760
297168760
307298760
Stop Event
node limit
Counts
22 → 17
Calls
Call 1
Inputs
(*.f64 1/24 (*.f64 re (pow.f64 im 4)))
(+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (*.f64 1/720 (*.f64 re (pow.f64 im 6))))
(+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (*.f64 1/720 (*.f64 re (pow.f64 im 6))))
(+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (*.f64 1/720 (*.f64 re (pow.f64 im 6))))
(*.f64 1/720 (*.f64 re (pow.f64 im 6)))
(+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (*.f64 1/720 (*.f64 re (pow.f64 im 6))))
(+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (*.f64 1/720 (*.f64 re (pow.f64 im 6))))
(+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (*.f64 1/720 (*.f64 re (pow.f64 im 6))))
(*.f64 1/720 (*.f64 re (pow.f64 im 6)))
(+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (*.f64 1/720 (*.f64 re (pow.f64 im 6))))
(+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (*.f64 1/720 (*.f64 re (pow.f64 im 6))))
(+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (*.f64 1/720 (*.f64 re (pow.f64 im 6))))
(+.f64 (*.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))) re) 0)
(+.f64 0 (*.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))) re))
(+.f64 (*.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))) (*.f64 re 1/2)) (*.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))) (*.f64 re 1/2)))
(-.f64 (*.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))) re) 0)
(/.f64 (*.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))) re) 1)
(/.f64 (*.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))) (+.f64 re re)) 2)
(/.f64 (*.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))) (*.f64 4 re)) 4)
(/.f64 (*.f64 (*.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))) re) 8) 8)
(/.f64 (*.f64 2 (*.f64 (*.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))) re) 8)) 16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))) re) 8))) 32)
Outputs
(*.f64 1/24 (*.f64 re (pow.f64 im 4)))
(*.f64 (pow.f64 im 4) (*.f64 1/24 re))
(+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (*.f64 1/720 (*.f64 re (pow.f64 im 6))))
(*.f64 re (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))))
(+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (*.f64 1/720 (*.f64 re (pow.f64 im 6))))
(*.f64 re (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))))
(+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (*.f64 1/720 (*.f64 re (pow.f64 im 6))))
(*.f64 re (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))))
(*.f64 1/720 (*.f64 re (pow.f64 im 6)))
(*.f64 (pow.f64 im 6) (*.f64 re 1/720))
(*.f64 re (*.f64 1/720 (pow.f64 im 6)))
(+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (*.f64 1/720 (*.f64 re (pow.f64 im 6))))
(*.f64 re (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))))
(+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (*.f64 1/720 (*.f64 re (pow.f64 im 6))))
(*.f64 re (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))))
(+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (*.f64 1/720 (*.f64 re (pow.f64 im 6))))
(*.f64 re (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))))
(*.f64 1/720 (*.f64 re (pow.f64 im 6)))
(*.f64 (pow.f64 im 6) (*.f64 re 1/720))
(*.f64 re (*.f64 1/720 (pow.f64 im 6)))
(+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (*.f64 1/720 (*.f64 re (pow.f64 im 6))))
(*.f64 re (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))))
(+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (*.f64 1/720 (*.f64 re (pow.f64 im 6))))
(*.f64 re (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))))
(+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (*.f64 1/720 (*.f64 re (pow.f64 im 6))))
(*.f64 re (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))))
(+.f64 (*.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))) re) 0)
(+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (*.f64 1/720 (*.f64 re (pow.f64 im 6))))
(*.f64 re (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))))
(+.f64 0 (*.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))) re))
(+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (*.f64 1/720 (*.f64 re (pow.f64 im 6))))
(*.f64 re (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))))
(+.f64 (*.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))) (*.f64 re 1/2)) (*.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))) (*.f64 re 1/2)))
(+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (*.f64 1/720 (*.f64 re (pow.f64 im 6))))
(*.f64 re (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))))
(-.f64 (*.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))) re) 0)
(+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (*.f64 1/720 (*.f64 re (pow.f64 im 6))))
(*.f64 re (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))))
(/.f64 (*.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))) re) 1)
(+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (*.f64 1/720 (*.f64 re (pow.f64 im 6))))
(*.f64 re (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))))
(/.f64 (*.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))) (+.f64 re re)) 2)
(+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (*.f64 1/720 (*.f64 re (pow.f64 im 6))))
(*.f64 re (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))))
(/.f64 (*.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))) (*.f64 4 re)) 4)
(+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (*.f64 1/720 (*.f64 re (pow.f64 im 6))))
(*.f64 re (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))))
(/.f64 (*.f64 (*.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))) re) 8) 8)
(+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (*.f64 1/720 (*.f64 re (pow.f64 im 6))))
(*.f64 re (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))))
(/.f64 (*.f64 2 (*.f64 (*.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))) re) 8)) 16)
(+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (*.f64 1/720 (*.f64 re (pow.f64 im 6))))
(*.f64 re (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))) re) 8))) 32)
(+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (*.f64 1/720 (*.f64 re (pow.f64 im 6))))
(*.f64 re (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))))

localize88.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 5))
0.1b
(*.f64 1/120 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 5)))
0.1b
(*.f64 -1/6 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 3)))
23.0b
(+.f64 (+.f64 (*.f64 -1/6 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 3))) (*.f64 (+.f64 2 (pow.f64 im 2)) (*.f64 (pow.f64 re 7) -1/5040))) (*.f64 1/120 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 5))))
Compiler

Compiled 237 to 191 computations (19.4% saved)

series13.0ms (0%)

Counts
4 → 60
Calls

24 calls:

TimeVariablePointExpression
6.0ms
im
@0
(+.f64 (+.f64 (*.f64 -1/6 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 3))) (*.f64 (+.f64 2 (pow.f64 im 2)) (*.f64 (pow.f64 re 7) -1/5040))) (*.f64 1/120 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 5))))
1.0ms
im
@inf
(+.f64 (+.f64 (*.f64 -1/6 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 3))) (*.f64 (+.f64 2 (pow.f64 im 2)) (*.f64 (pow.f64 re 7) -1/5040))) (*.f64 1/120 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 5))))
1.0ms
im
@-inf
(+.f64 (+.f64 (*.f64 -1/6 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 3))) (*.f64 (+.f64 2 (pow.f64 im 2)) (*.f64 (pow.f64 re 7) -1/5040))) (*.f64 1/120 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 5))))
1.0ms
re
@0
(+.f64 (+.f64 (*.f64 -1/6 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 3))) (*.f64 (+.f64 2 (pow.f64 im 2)) (*.f64 (pow.f64 re 7) -1/5040))) (*.f64 1/120 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 5))))
1.0ms
re
@inf
(+.f64 (+.f64 (*.f64 -1/6 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 3))) (*.f64 (+.f64 2 (pow.f64 im 2)) (*.f64 (pow.f64 re 7) -1/5040))) (*.f64 1/120 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 5))))

rewrite93.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
1446×bool.json-1
1446×bool.json-2
1394×rational.json-simplify-35
1388×rational.json-1
1388×rational.json-2
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
024190
1236172
2561154
31154154
42492154
55102154
Stop Event
node limit
Counts
4 → 45
Calls
Call 1
Inputs
(+.f64 (+.f64 (*.f64 -1/6 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 3))) (*.f64 (+.f64 2 (pow.f64 im 2)) (*.f64 (pow.f64 re 7) -1/5040))) (*.f64 1/120 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 5))))
(*.f64 -1/6 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 3)))
(*.f64 1/120 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 5)))
(*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 5))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 7) -1/5040) (+.f64 (*.f64 1/120 (pow.f64 re 5)) (*.f64 -1/6 (pow.f64 re 3))))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (/.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 7) -1/5040) (+.f64 (*.f64 1/120 (pow.f64 re 5)) (*.f64 -1/6 (pow.f64 re 3))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 7) -1/5040) (+.f64 (*.f64 1/120 (pow.f64 re 5)) (*.f64 -1/6 (pow.f64 re 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 7) -1/5040) (+.f64 (*.f64 1/120 (pow.f64 re 5)) (*.f64 -1/6 (pow.f64 re 3))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 7) -1/5040) (+.f64 (*.f64 1/120 (pow.f64 re 5)) (*.f64 -1/6 (pow.f64 re 3))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 7) -1/5040) (+.f64 (*.f64 1/120 (pow.f64 re 5)) (*.f64 -1/6 (pow.f64 re 3)))))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 (pow.f64 re 7) -1/5040) (+.f64 (*.f64 1/120 (pow.f64 re 5)) (*.f64 -1/6 (pow.f64 re 3)))) (+.f64 2 (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 2 (*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 7) -1/5040) (+.f64 (*.f64 1/120 (pow.f64 re 5)) (*.f64 -1/6 (pow.f64 re 3)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 7) -1/5040) (+.f64 (*.f64 1/120 (pow.f64 re 5)) (*.f64 -1/6 (pow.f64 re 3))))) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 7) -1/5040) (+.f64 (*.f64 1/120 (pow.f64 re 5)) (*.f64 -1/6 (pow.f64 re 3))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 7) -1/5040) (+.f64 (*.f64 1/120 (pow.f64 re 5)) (*.f64 -1/6 (pow.f64 re 3)))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 7) -1/5040) (+.f64 (*.f64 1/120 (pow.f64 re 5)) (*.f64 -1/6 (pow.f64 re 3))))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 7) -1/5040) (+.f64 (*.f64 1/120 (pow.f64 re 5)) (*.f64 -1/6 (pow.f64 re 3))))) 4)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 7) -1/5040) (+.f64 (*.f64 1/120 (pow.f64 re 5)) (*.f64 -1/6 (pow.f64 re 3))))) 4))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 7) -1/5040) (+.f64 (*.f64 1/120 (pow.f64 re 5)) (*.f64 -1/6 (pow.f64 re 3))))) 4))) (*.f64 2 (*.f64 2 (*.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 7) -1/5040) (+.f64 (*.f64 1/120 (pow.f64 re 5)) (*.f64 -1/6 (pow.f64 re 3))))) 4)))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x not (not (*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 7) -1/5040) (+.f64 (*.f64 1/120 (pow.f64 re 5)) (*.f64 -1/6 (pow.f64 re 3)))))))))) (#(struct:change #<rule egg-rr> (2) ((x and (*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 7) -1/5040) (+.f64 (*.f64 1/120 (pow.f64 re 5)) (*.f64 -1/6 (pow.f64 re 3))))) (*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 7) -1/5040) (+.f64 (*.f64 1/120 (pow.f64 re 5)) (*.f64 -1/6 (pow.f64 re 3))))))))) (#(struct:change #<rule egg-rr> (2) ((x or (*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 7) -1/5040) (+.f64 (*.f64 1/120 (pow.f64 re 5)) (*.f64 -1/6 (pow.f64 re 3))))) (*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 7) -1/5040) (+.f64 (*.f64 1/120 (pow.f64 re 5)) (*.f64 -1/6 (pow.f64 re 3))))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 -1/6 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 3))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 -1/6 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 3))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 -1/6 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 3))) 2) (/.f64 (*.f64 -1/6 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 3))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 -1/6 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 3))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -1/6 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 3))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (*.f64 (pow.f64 re 3) -1/3)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 3)) -2/3) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 3)) -2/3)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 3)) -2/3))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 3)) -2/3))) (*.f64 2 (*.f64 2 (*.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 3)) -2/3)))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x not (not (*.f64 -1/6 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x and (*.f64 -1/6 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 3))) (*.f64 -1/6 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 3))))))) (#(struct:change #<rule egg-rr> (2) ((x or (*.f64 -1/6 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 3))) (*.f64 -1/6 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 3))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (*.f64 1/120 (pow.f64 re 5))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (+.f64 2 (pow.f64 im 2)) (*.f64 1/120 (pow.f64 re 5))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (*.f64 1/120 (pow.f64 re 5))) 2) (/.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (*.f64 1/120 (pow.f64 re 5))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (*.f64 1/120 (pow.f64 re 5))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (*.f64 1/120 (pow.f64 re 5))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (*.f64 (pow.f64 re 5) 1/60)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 5)) 1/30) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 5)) 1/30)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 5)) 1/30))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 5)) 1/30))) (*.f64 2 (*.f64 2 (*.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 5)) 1/30)))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x not (not (*.f64 (+.f64 2 (pow.f64 im 2)) (*.f64 1/120 (pow.f64 re 5)))))))) (#(struct:change #<rule egg-rr> (2) ((x and (*.f64 (+.f64 2 (pow.f64 im 2)) (*.f64 1/120 (pow.f64 re 5))) (*.f64 (+.f64 2 (pow.f64 im 2)) (*.f64 1/120 (pow.f64 re 5))))))) (#(struct:change #<rule egg-rr> (2) ((x or (*.f64 (+.f64 2 (pow.f64 im 2)) (*.f64 1/120 (pow.f64 re 5))) (*.f64 (+.f64 2 (pow.f64 im 2)) (*.f64 1/120 (pow.f64 re 5))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 5)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 5)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 5)) 2) (/.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 5)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 5)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 5)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (*.f64 2 (pow.f64 re 5))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (*.f64 (pow.f64 re 5) 4)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (+.f64 2 (pow.f64 im 2)) (*.f64 (pow.f64 re 5) 4))) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 2 (pow.f64 im 2)) (*.f64 (pow.f64 re 5) 4)))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 2 (pow.f64 im 2)) (*.f64 (pow.f64 re 5) 4)))) (*.f64 2 (*.f64 2 (*.f64 (+.f64 2 (pow.f64 im 2)) (*.f64 (pow.f64 re 5) 4))))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x not (not (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 5))))))) (#(struct:change #<rule egg-rr> (2) ((x and (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 5)) (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 5)))))) (#(struct:change #<rule egg-rr> (2) ((x or (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 5)) (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 5)))))))

simplify8.6s (19.3%)

Algorithm
egg-herbie
Rules
4096×rational.json-simplify-35
2842×rational.json-simplify-2
1230×rational.json-simplify-1
1134×rational.json-simplify-51
782×rational.json-simplify-53
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01406057
13315061
27114683
319914683
440194683
547984683
651454683
754334683
856244683
957914683
1063914683
1164554683
1264554683
1364554683
1466174683
1567994683
1669614683
1771234683
1872854683
1975144683
2077014683
2179234683
2279674683
2379804683
2479834683
2579834683
Stop Event
node limit
Counts
105 → 97
Calls
Call 1
Inputs
(+.f64 (*.f64 -1/3 (pow.f64 re 3)) (+.f64 (*.f64 -1/2520 (pow.f64 re 7)) (*.f64 1/60 (pow.f64 re 5))))
(+.f64 (*.f64 (+.f64 (*.f64 1/120 (pow.f64 re 5)) (+.f64 (*.f64 -1/5040 (pow.f64 re 7)) (*.f64 -1/6 (pow.f64 re 3)))) (pow.f64 im 2)) (+.f64 (*.f64 -1/3 (pow.f64 re 3)) (+.f64 (*.f64 -1/2520 (pow.f64 re 7)) (*.f64 1/60 (pow.f64 re 5)))))
(+.f64 (*.f64 (+.f64 (*.f64 1/120 (pow.f64 re 5)) (+.f64 (*.f64 -1/5040 (pow.f64 re 7)) (*.f64 -1/6 (pow.f64 re 3)))) (pow.f64 im 2)) (+.f64 (*.f64 -1/3 (pow.f64 re 3)) (+.f64 (*.f64 -1/2520 (pow.f64 re 7)) (*.f64 1/60 (pow.f64 re 5)))))
(+.f64 (*.f64 (+.f64 (*.f64 1/120 (pow.f64 re 5)) (+.f64 (*.f64 -1/5040 (pow.f64 re 7)) (*.f64 -1/6 (pow.f64 re 3)))) (pow.f64 im 2)) (+.f64 (*.f64 -1/3 (pow.f64 re 3)) (+.f64 (*.f64 -1/2520 (pow.f64 re 7)) (*.f64 1/60 (pow.f64 re 5)))))
(*.f64 (+.f64 (*.f64 1/120 (pow.f64 re 5)) (+.f64 (*.f64 -1/6 (pow.f64 re 3)) (*.f64 -1/5040 (pow.f64 re 7)))) (pow.f64 im 2))
(+.f64 (*.f64 (+.f64 (*.f64 1/120 (pow.f64 re 5)) (+.f64 (*.f64 -1/6 (pow.f64 re 3)) (*.f64 -1/5040 (pow.f64 re 7)))) (pow.f64 im 2)) (+.f64 (*.f64 -1/3 (pow.f64 re 3)) (+.f64 (*.f64 -1/2520 (pow.f64 re 7)) (*.f64 1/60 (pow.f64 re 5)))))
(+.f64 (*.f64 (+.f64 (*.f64 1/120 (pow.f64 re 5)) (+.f64 (*.f64 -1/6 (pow.f64 re 3)) (*.f64 -1/5040 (pow.f64 re 7)))) (pow.f64 im 2)) (+.f64 (*.f64 -1/3 (pow.f64 re 3)) (+.f64 (*.f64 -1/2520 (pow.f64 re 7)) (*.f64 1/60 (pow.f64 re 5)))))
(+.f64 (*.f64 (+.f64 (*.f64 1/120 (pow.f64 re 5)) (+.f64 (*.f64 -1/6 (pow.f64 re 3)) (*.f64 -1/5040 (pow.f64 re 7)))) (pow.f64 im 2)) (+.f64 (*.f64 -1/3 (pow.f64 re 3)) (+.f64 (*.f64 -1/2520 (pow.f64 re 7)) (*.f64 1/60 (pow.f64 re 5)))))
(*.f64 (+.f64 (*.f64 1/120 (pow.f64 re 5)) (+.f64 (*.f64 -1/5040 (pow.f64 re 7)) (*.f64 -1/6 (pow.f64 re 3)))) (pow.f64 im 2))
(+.f64 (*.f64 (+.f64 (*.f64 1/120 (pow.f64 re 5)) (+.f64 (*.f64 -1/5040 (pow.f64 re 7)) (*.f64 -1/6 (pow.f64 re 3)))) (pow.f64 im 2)) (+.f64 (*.f64 -1/3 (pow.f64 re 3)) (+.f64 (*.f64 -1/2520 (pow.f64 re 7)) (*.f64 1/60 (pow.f64 re 5)))))
(+.f64 (*.f64 (+.f64 (*.f64 1/120 (pow.f64 re 5)) (+.f64 (*.f64 -1/5040 (pow.f64 re 7)) (*.f64 -1/6 (pow.f64 re 3)))) (pow.f64 im 2)) (+.f64 (*.f64 -1/3 (pow.f64 re 3)) (+.f64 (*.f64 -1/2520 (pow.f64 re 7)) (*.f64 1/60 (pow.f64 re 5)))))
(+.f64 (*.f64 (+.f64 (*.f64 1/120 (pow.f64 re 5)) (+.f64 (*.f64 -1/5040 (pow.f64 re 7)) (*.f64 -1/6 (pow.f64 re 3)))) (pow.f64 im 2)) (+.f64 (*.f64 -1/3 (pow.f64 re 3)) (+.f64 (*.f64 -1/2520 (pow.f64 re 7)) (*.f64 1/60 (pow.f64 re 5)))))
(*.f64 -1/6 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 3)))
(+.f64 (*.f64 1/120 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 5))) (*.f64 -1/6 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 3))))
(+.f64 (*.f64 1/120 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 5))) (+.f64 (*.f64 -1/5040 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 7))) (*.f64 -1/6 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 3)))))
(+.f64 (*.f64 1/120 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 5))) (+.f64 (*.f64 -1/5040 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 7))) (*.f64 -1/6 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 3)))))
(*.f64 -1/5040 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 7)))
(+.f64 (*.f64 1/120 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 5))) (*.f64 -1/5040 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 7))))
(+.f64 (*.f64 1/120 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 5))) (+.f64 (*.f64 -1/6 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 3))) (*.f64 -1/5040 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 7)))))
(+.f64 (*.f64 1/120 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 5))) (+.f64 (*.f64 -1/6 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 3))) (*.f64 -1/5040 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 7)))))
(*.f64 -1/5040 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 7)))
(+.f64 (*.f64 1/120 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 5))) (*.f64 -1/5040 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 7))))
(+.f64 (*.f64 1/120 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 5))) (+.f64 (*.f64 -1/6 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 3))) (*.f64 -1/5040 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 7)))))
(+.f64 (*.f64 1/120 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 5))) (+.f64 (*.f64 -1/6 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 3))) (*.f64 -1/5040 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 7)))))
(*.f64 -1/3 (pow.f64 re 3))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (pow.f64 im 2))) (*.f64 -1/3 (pow.f64 re 3)))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (pow.f64 im 2))) (*.f64 -1/3 (pow.f64 re 3)))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (pow.f64 im 2))) (*.f64 -1/3 (pow.f64 re 3)))
(*.f64 -1/6 (*.f64 (pow.f64 re 3) (pow.f64 im 2)))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (pow.f64 im 2))) (*.f64 -1/3 (pow.f64 re 3)))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (pow.f64 im 2))) (*.f64 -1/3 (pow.f64 re 3)))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (pow.f64 im 2))) (*.f64 -1/3 (pow.f64 re 3)))
(*.f64 -1/6 (*.f64 (pow.f64 re 3) (pow.f64 im 2)))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (pow.f64 im 2))) (*.f64 -1/3 (pow.f64 re 3)))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (pow.f64 im 2))) (*.f64 -1/3 (pow.f64 re 3)))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (pow.f64 im 2))) (*.f64 -1/3 (pow.f64 re 3)))
(*.f64 1/60 (pow.f64 re 5))
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (pow.f64 im 2))) (*.f64 1/60 (pow.f64 re 5)))
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (pow.f64 im 2))) (*.f64 1/60 (pow.f64 re 5)))
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (pow.f64 im 2))) (*.f64 1/60 (pow.f64 re 5)))
(*.f64 1/120 (*.f64 (pow.f64 re 5) (pow.f64 im 2)))
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (pow.f64 im 2))) (*.f64 1/60 (pow.f64 re 5)))
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (pow.f64 im 2))) (*.f64 1/60 (pow.f64 re 5)))
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (pow.f64 im 2))) (*.f64 1/60 (pow.f64 re 5)))
(*.f64 1/120 (*.f64 (pow.f64 re 5) (pow.f64 im 2)))
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (pow.f64 im 2))) (*.f64 1/60 (pow.f64 re 5)))
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (pow.f64 im 2))) (*.f64 1/60 (pow.f64 re 5)))
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (pow.f64 im 2))) (*.f64 1/60 (pow.f64 re 5)))
(*.f64 2 (pow.f64 re 5))
(+.f64 (*.f64 2 (pow.f64 re 5)) (*.f64 (pow.f64 re 5) (pow.f64 im 2)))
(+.f64 (*.f64 2 (pow.f64 re 5)) (*.f64 (pow.f64 re 5) (pow.f64 im 2)))
(+.f64 (*.f64 2 (pow.f64 re 5)) (*.f64 (pow.f64 re 5) (pow.f64 im 2)))
(*.f64 (pow.f64 re 5) (pow.f64 im 2))
(+.f64 (*.f64 2 (pow.f64 re 5)) (*.f64 (pow.f64 re 5) (pow.f64 im 2)))
(+.f64 (*.f64 2 (pow.f64 re 5)) (*.f64 (pow.f64 re 5) (pow.f64 im 2)))
(+.f64 (*.f64 2 (pow.f64 re 5)) (*.f64 (pow.f64 re 5) (pow.f64 im 2)))
(*.f64 (pow.f64 re 5) (pow.f64 im 2))
(+.f64 (*.f64 2 (pow.f64 re 5)) (*.f64 (pow.f64 re 5) (pow.f64 im 2)))
(+.f64 (*.f64 2 (pow.f64 re 5)) (*.f64 (pow.f64 re 5) (pow.f64 im 2)))
(+.f64 (*.f64 2 (pow.f64 re 5)) (*.f64 (pow.f64 re 5) (pow.f64 im 2)))
(-.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 7) -1/5040) (+.f64 (*.f64 1/120 (pow.f64 re 5)) (*.f64 -1/6 (pow.f64 re 3))))) 0)
(*.f64 2 (/.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 7) -1/5040) (+.f64 (*.f64 1/120 (pow.f64 re 5)) (*.f64 -1/6 (pow.f64 re 3))))) 2))
(*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 7) -1/5040) (+.f64 (*.f64 1/120 (pow.f64 re 5)) (*.f64 -1/6 (pow.f64 re 3)))))
(*.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 7) -1/5040) (+.f64 (*.f64 1/120 (pow.f64 re 5)) (*.f64 -1/6 (pow.f64 re 3))))) 1)
(*.f64 1 (*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 7) -1/5040) (+.f64 (*.f64 1/120 (pow.f64 re 5)) (*.f64 -1/6 (pow.f64 re 3))))))
(*.f64 (*.f64 2 (*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 7) -1/5040) (+.f64 (*.f64 1/120 (pow.f64 re 5)) (*.f64 -1/6 (pow.f64 re 3)))))) 1/2)
(*.f64 (+.f64 (*.f64 (pow.f64 re 7) -1/5040) (+.f64 (*.f64 1/120 (pow.f64 re 5)) (*.f64 -1/6 (pow.f64 re 3)))) (+.f64 2 (pow.f64 im 2)))
(*.f64 1/2 (*.f64 2 (*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 7) -1/5040) (+.f64 (*.f64 1/120 (pow.f64 re 5)) (*.f64 -1/6 (pow.f64 re 3)))))))
(*.f64 (/.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 7) -1/5040) (+.f64 (*.f64 1/120 (pow.f64 re 5)) (*.f64 -1/6 (pow.f64 re 3))))) 2) 2)
(/.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 7) -1/5040) (+.f64 (*.f64 1/120 (pow.f64 re 5)) (*.f64 -1/6 (pow.f64 re 3))))) 1)
(/.f64 (*.f64 2 (*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 7) -1/5040) (+.f64 (*.f64 1/120 (pow.f64 re 5)) (*.f64 -1/6 (pow.f64 re 3)))))) 2)
(/.f64 (*.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 7) -1/5040) (+.f64 (*.f64 1/120 (pow.f64 re 5)) (*.f64 -1/6 (pow.f64 re 3))))) 4) 4)
(/.f64 (*.f64 2 (*.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 7) -1/5040) (+.f64 (*.f64 1/120 (pow.f64 re 5)) (*.f64 -1/6 (pow.f64 re 3))))) 4)) 8)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 7) -1/5040) (+.f64 (*.f64 1/120 (pow.f64 re 5)) (*.f64 -1/6 (pow.f64 re 3))))) 4))) 16)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 7) -1/5040) (+.f64 (*.f64 1/120 (pow.f64 re 5)) (*.f64 -1/6 (pow.f64 re 3))))) 4))) (*.f64 2 (*.f64 2 (*.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 7) -1/5040) (+.f64 (*.f64 1/120 (pow.f64 re 5)) (*.f64 -1/6 (pow.f64 re 3))))) 4)))) 32)
(+.f64 (*.f64 -1/6 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 3))) 0)
(+.f64 0 (*.f64 -1/6 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 3))))
(+.f64 (/.f64 (*.f64 -1/6 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 3))) 2) (/.f64 (*.f64 -1/6 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 3))) 2))
(-.f64 (*.f64 -1/6 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 3))) 0)
(/.f64 (*.f64 -1/6 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 3))) 1)
(/.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (*.f64 (pow.f64 re 3) -1/3)) 2)
(/.f64 (*.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 3)) -2/3) 4)
(/.f64 (*.f64 2 (*.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 3)) -2/3)) 8)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 3)) -2/3))) 16)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 3)) -2/3))) (*.f64 2 (*.f64 2 (*.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 3)) -2/3)))) 32)
(+.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (*.f64 1/120 (pow.f64 re 5))) 0)
(+.f64 0 (*.f64 (+.f64 2 (pow.f64 im 2)) (*.f64 1/120 (pow.f64 re 5))))
(+.f64 (/.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (*.f64 1/120 (pow.f64 re 5))) 2) (/.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (*.f64 1/120 (pow.f64 re 5))) 2))
(-.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (*.f64 1/120 (pow.f64 re 5))) 0)
(/.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (*.f64 1/120 (pow.f64 re 5))) 1)
(/.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (*.f64 (pow.f64 re 5) 1/60)) 2)
(/.f64 (*.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 5)) 1/30) 4)
(/.f64 (*.f64 2 (*.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 5)) 1/30)) 8)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 5)) 1/30))) 16)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 5)) 1/30))) (*.f64 2 (*.f64 2 (*.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 5)) 1/30)))) 32)
(+.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 5)) 0)
(+.f64 0 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 5)))
(+.f64 (/.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 5)) 2) (/.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 5)) 2))
(-.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 5)) 0)
(/.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 5)) 1)
(/.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (*.f64 2 (pow.f64 re 5))) 2)
(/.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (*.f64 (pow.f64 re 5) 4)) 4)
(/.f64 (*.f64 2 (*.f64 (+.f64 2 (pow.f64 im 2)) (*.f64 (pow.f64 re 5) 4))) 8)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 2 (pow.f64 im 2)) (*.f64 (pow.f64 re 5) 4)))) 16)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 2 (pow.f64 im 2)) (*.f64 (pow.f64 re 5) 4)))) (*.f64 2 (*.f64 2 (*.f64 (+.f64 2 (pow.f64 im 2)) (*.f64 (pow.f64 re 5) 4))))) 32)
Outputs
(+.f64 (*.f64 -1/3 (pow.f64 re 3)) (+.f64 (*.f64 -1/2520 (pow.f64 re 7)) (*.f64 1/60 (pow.f64 re 5))))
(+.f64 (*.f64 (+.f64 (*.f64 1/120 (pow.f64 re 5)) (+.f64 (*.f64 -1/5040 (pow.f64 re 7)) (*.f64 -1/6 (pow.f64 re 3)))) (pow.f64 im 2)) (+.f64 (*.f64 -1/3 (pow.f64 re 3)) (+.f64 (*.f64 -1/2520 (pow.f64 re 7)) (*.f64 1/60 (pow.f64 re 5)))))
(+.f64 (*.f64 -1/3 (pow.f64 re 3)) (+.f64 (+.f64 (*.f64 -1/2520 (pow.f64 re 7)) (*.f64 1/60 (pow.f64 re 5))) (*.f64 (pow.f64 im 2) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (+.f64 (*.f64 (pow.f64 re 3) -1/6) (*.f64 (pow.f64 re 7) -1/5040))))))
(+.f64 (*.f64 -1/3 (pow.f64 re 3)) (+.f64 (*.f64 -1/2520 (pow.f64 re 7)) (+.f64 (*.f64 1/60 (pow.f64 re 5)) (*.f64 (pow.f64 im 2) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (+.f64 (*.f64 (pow.f64 re 3) -1/6) (*.f64 (pow.f64 re 7) -1/5040)))))))
(+.f64 (*.f64 -1/3 (pow.f64 re 3)) (+.f64 (+.f64 (*.f64 -1/2520 (pow.f64 re 7)) (*.f64 1/60 (pow.f64 re 5))) (*.f64 (pow.f64 im 2) (+.f64 (*.f64 (pow.f64 re 7) -1/5040) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (*.f64 (pow.f64 re 3) -1/6))))))
(+.f64 (*.f64 (+.f64 (*.f64 1/120 (pow.f64 re 5)) (+.f64 (*.f64 -1/5040 (pow.f64 re 7)) (*.f64 -1/6 (pow.f64 re 3)))) (pow.f64 im 2)) (+.f64 (*.f64 -1/3 (pow.f64 re 3)) (+.f64 (*.f64 -1/2520 (pow.f64 re 7)) (*.f64 1/60 (pow.f64 re 5)))))
(+.f64 (*.f64 -1/3 (pow.f64 re 3)) (+.f64 (+.f64 (*.f64 -1/2520 (pow.f64 re 7)) (*.f64 1/60 (pow.f64 re 5))) (*.f64 (pow.f64 im 2) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (+.f64 (*.f64 (pow.f64 re 3) -1/6) (*.f64 (pow.f64 re 7) -1/5040))))))
(+.f64 (*.f64 -1/3 (pow.f64 re 3)) (+.f64 (*.f64 -1/2520 (pow.f64 re 7)) (+.f64 (*.f64 1/60 (pow.f64 re 5)) (*.f64 (pow.f64 im 2) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (+.f64 (*.f64 (pow.f64 re 3) -1/6) (*.f64 (pow.f64 re 7) -1/5040)))))))
(+.f64 (*.f64 -1/3 (pow.f64 re 3)) (+.f64 (+.f64 (*.f64 -1/2520 (pow.f64 re 7)) (*.f64 1/60 (pow.f64 re 5))) (*.f64 (pow.f64 im 2) (+.f64 (*.f64 (pow.f64 re 7) -1/5040) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (*.f64 (pow.f64 re 3) -1/6))))))
(+.f64 (*.f64 (+.f64 (*.f64 1/120 (pow.f64 re 5)) (+.f64 (*.f64 -1/5040 (pow.f64 re 7)) (*.f64 -1/6 (pow.f64 re 3)))) (pow.f64 im 2)) (+.f64 (*.f64 -1/3 (pow.f64 re 3)) (+.f64 (*.f64 -1/2520 (pow.f64 re 7)) (*.f64 1/60 (pow.f64 re 5)))))
(+.f64 (*.f64 -1/3 (pow.f64 re 3)) (+.f64 (+.f64 (*.f64 -1/2520 (pow.f64 re 7)) (*.f64 1/60 (pow.f64 re 5))) (*.f64 (pow.f64 im 2) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (+.f64 (*.f64 (pow.f64 re 3) -1/6) (*.f64 (pow.f64 re 7) -1/5040))))))
(+.f64 (*.f64 -1/3 (pow.f64 re 3)) (+.f64 (*.f64 -1/2520 (pow.f64 re 7)) (+.f64 (*.f64 1/60 (pow.f64 re 5)) (*.f64 (pow.f64 im 2) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (+.f64 (*.f64 (pow.f64 re 3) -1/6) (*.f64 (pow.f64 re 7) -1/5040)))))))
(+.f64 (*.f64 -1/3 (pow.f64 re 3)) (+.f64 (+.f64 (*.f64 -1/2520 (pow.f64 re 7)) (*.f64 1/60 (pow.f64 re 5))) (*.f64 (pow.f64 im 2) (+.f64 (*.f64 (pow.f64 re 7) -1/5040) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (*.f64 (pow.f64 re 3) -1/6))))))
(*.f64 (+.f64 (*.f64 1/120 (pow.f64 re 5)) (+.f64 (*.f64 -1/6 (pow.f64 re 3)) (*.f64 -1/5040 (pow.f64 re 7)))) (pow.f64 im 2))
(*.f64 (pow.f64 im 2) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (+.f64 (*.f64 (pow.f64 re 3) -1/6) (*.f64 (pow.f64 re 7) -1/5040))))
(*.f64 (pow.f64 im 2) (+.f64 (*.f64 (pow.f64 re 7) -1/5040) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (*.f64 (pow.f64 re 3) -1/6))))
(+.f64 (*.f64 (+.f64 (*.f64 1/120 (pow.f64 re 5)) (+.f64 (*.f64 -1/6 (pow.f64 re 3)) (*.f64 -1/5040 (pow.f64 re 7)))) (pow.f64 im 2)) (+.f64 (*.f64 -1/3 (pow.f64 re 3)) (+.f64 (*.f64 -1/2520 (pow.f64 re 7)) (*.f64 1/60 (pow.f64 re 5)))))
(+.f64 (*.f64 -1/3 (pow.f64 re 3)) (+.f64 (+.f64 (*.f64 -1/2520 (pow.f64 re 7)) (*.f64 1/60 (pow.f64 re 5))) (*.f64 (pow.f64 im 2) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (+.f64 (*.f64 (pow.f64 re 3) -1/6) (*.f64 (pow.f64 re 7) -1/5040))))))
(+.f64 (*.f64 -1/3 (pow.f64 re 3)) (+.f64 (*.f64 -1/2520 (pow.f64 re 7)) (+.f64 (*.f64 1/60 (pow.f64 re 5)) (*.f64 (pow.f64 im 2) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (+.f64 (*.f64 (pow.f64 re 3) -1/6) (*.f64 (pow.f64 re 7) -1/5040)))))))
(+.f64 (*.f64 -1/3 (pow.f64 re 3)) (+.f64 (+.f64 (*.f64 -1/2520 (pow.f64 re 7)) (*.f64 1/60 (pow.f64 re 5))) (*.f64 (pow.f64 im 2) (+.f64 (*.f64 (pow.f64 re 7) -1/5040) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (*.f64 (pow.f64 re 3) -1/6))))))
(+.f64 (*.f64 (+.f64 (*.f64 1/120 (pow.f64 re 5)) (+.f64 (*.f64 -1/6 (pow.f64 re 3)) (*.f64 -1/5040 (pow.f64 re 7)))) (pow.f64 im 2)) (+.f64 (*.f64 -1/3 (pow.f64 re 3)) (+.f64 (*.f64 -1/2520 (pow.f64 re 7)) (*.f64 1/60 (pow.f64 re 5)))))
(+.f64 (*.f64 -1/3 (pow.f64 re 3)) (+.f64 (+.f64 (*.f64 -1/2520 (pow.f64 re 7)) (*.f64 1/60 (pow.f64 re 5))) (*.f64 (pow.f64 im 2) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (+.f64 (*.f64 (pow.f64 re 3) -1/6) (*.f64 (pow.f64 re 7) -1/5040))))))
(+.f64 (*.f64 -1/3 (pow.f64 re 3)) (+.f64 (*.f64 -1/2520 (pow.f64 re 7)) (+.f64 (*.f64 1/60 (pow.f64 re 5)) (*.f64 (pow.f64 im 2) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (+.f64 (*.f64 (pow.f64 re 3) -1/6) (*.f64 (pow.f64 re 7) -1/5040)))))))
(+.f64 (*.f64 -1/3 (pow.f64 re 3)) (+.f64 (+.f64 (*.f64 -1/2520 (pow.f64 re 7)) (*.f64 1/60 (pow.f64 re 5))) (*.f64 (pow.f64 im 2) (+.f64 (*.f64 (pow.f64 re 7) -1/5040) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (*.f64 (pow.f64 re 3) -1/6))))))
(+.f64 (*.f64 (+.f64 (*.f64 1/120 (pow.f64 re 5)) (+.f64 (*.f64 -1/6 (pow.f64 re 3)) (*.f64 -1/5040 (pow.f64 re 7)))) (pow.f64 im 2)) (+.f64 (*.f64 -1/3 (pow.f64 re 3)) (+.f64 (*.f64 -1/2520 (pow.f64 re 7)) (*.f64 1/60 (pow.f64 re 5)))))
(+.f64 (*.f64 -1/3 (pow.f64 re 3)) (+.f64 (+.f64 (*.f64 -1/2520 (pow.f64 re 7)) (*.f64 1/60 (pow.f64 re 5))) (*.f64 (pow.f64 im 2) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (+.f64 (*.f64 (pow.f64 re 3) -1/6) (*.f64 (pow.f64 re 7) -1/5040))))))
(+.f64 (*.f64 -1/3 (pow.f64 re 3)) (+.f64 (*.f64 -1/2520 (pow.f64 re 7)) (+.f64 (*.f64 1/60 (pow.f64 re 5)) (*.f64 (pow.f64 im 2) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (+.f64 (*.f64 (pow.f64 re 3) -1/6) (*.f64 (pow.f64 re 7) -1/5040)))))))
(+.f64 (*.f64 -1/3 (pow.f64 re 3)) (+.f64 (+.f64 (*.f64 -1/2520 (pow.f64 re 7)) (*.f64 1/60 (pow.f64 re 5))) (*.f64 (pow.f64 im 2) (+.f64 (*.f64 (pow.f64 re 7) -1/5040) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (*.f64 (pow.f64 re 3) -1/6))))))
(*.f64 (+.f64 (*.f64 1/120 (pow.f64 re 5)) (+.f64 (*.f64 -1/5040 (pow.f64 re 7)) (*.f64 -1/6 (pow.f64 re 3)))) (pow.f64 im 2))
(*.f64 (pow.f64 im 2) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (+.f64 (*.f64 (pow.f64 re 3) -1/6) (*.f64 (pow.f64 re 7) -1/5040))))
(*.f64 (pow.f64 im 2) (+.f64 (*.f64 (pow.f64 re 7) -1/5040) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (*.f64 (pow.f64 re 3) -1/6))))
(+.f64 (*.f64 (+.f64 (*.f64 1/120 (pow.f64 re 5)) (+.f64 (*.f64 -1/5040 (pow.f64 re 7)) (*.f64 -1/6 (pow.f64 re 3)))) (pow.f64 im 2)) (+.f64 (*.f64 -1/3 (pow.f64 re 3)) (+.f64 (*.f64 -1/2520 (pow.f64 re 7)) (*.f64 1/60 (pow.f64 re 5)))))
(+.f64 (*.f64 -1/3 (pow.f64 re 3)) (+.f64 (+.f64 (*.f64 -1/2520 (pow.f64 re 7)) (*.f64 1/60 (pow.f64 re 5))) (*.f64 (pow.f64 im 2) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (+.f64 (*.f64 (pow.f64 re 3) -1/6) (*.f64 (pow.f64 re 7) -1/5040))))))
(+.f64 (*.f64 -1/3 (pow.f64 re 3)) (+.f64 (*.f64 -1/2520 (pow.f64 re 7)) (+.f64 (*.f64 1/60 (pow.f64 re 5)) (*.f64 (pow.f64 im 2) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (+.f64 (*.f64 (pow.f64 re 3) -1/6) (*.f64 (pow.f64 re 7) -1/5040)))))))
(+.f64 (*.f64 -1/3 (pow.f64 re 3)) (+.f64 (+.f64 (*.f64 -1/2520 (pow.f64 re 7)) (*.f64 1/60 (pow.f64 re 5))) (*.f64 (pow.f64 im 2) (+.f64 (*.f64 (pow.f64 re 7) -1/5040) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (*.f64 (pow.f64 re 3) -1/6))))))
(+.f64 (*.f64 (+.f64 (*.f64 1/120 (pow.f64 re 5)) (+.f64 (*.f64 -1/5040 (pow.f64 re 7)) (*.f64 -1/6 (pow.f64 re 3)))) (pow.f64 im 2)) (+.f64 (*.f64 -1/3 (pow.f64 re 3)) (+.f64 (*.f64 -1/2520 (pow.f64 re 7)) (*.f64 1/60 (pow.f64 re 5)))))
(+.f64 (*.f64 -1/3 (pow.f64 re 3)) (+.f64 (+.f64 (*.f64 -1/2520 (pow.f64 re 7)) (*.f64 1/60 (pow.f64 re 5))) (*.f64 (pow.f64 im 2) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (+.f64 (*.f64 (pow.f64 re 3) -1/6) (*.f64 (pow.f64 re 7) -1/5040))))))
(+.f64 (*.f64 -1/3 (pow.f64 re 3)) (+.f64 (*.f64 -1/2520 (pow.f64 re 7)) (+.f64 (*.f64 1/60 (pow.f64 re 5)) (*.f64 (pow.f64 im 2) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (+.f64 (*.f64 (pow.f64 re 3) -1/6) (*.f64 (pow.f64 re 7) -1/5040)))))))
(+.f64 (*.f64 -1/3 (pow.f64 re 3)) (+.f64 (+.f64 (*.f64 -1/2520 (pow.f64 re 7)) (*.f64 1/60 (pow.f64 re 5))) (*.f64 (pow.f64 im 2) (+.f64 (*.f64 (pow.f64 re 7) -1/5040) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (*.f64 (pow.f64 re 3) -1/6))))))
(+.f64 (*.f64 (+.f64 (*.f64 1/120 (pow.f64 re 5)) (+.f64 (*.f64 -1/5040 (pow.f64 re 7)) (*.f64 -1/6 (pow.f64 re 3)))) (pow.f64 im 2)) (+.f64 (*.f64 -1/3 (pow.f64 re 3)) (+.f64 (*.f64 -1/2520 (pow.f64 re 7)) (*.f64 1/60 (pow.f64 re 5)))))
(+.f64 (*.f64 -1/3 (pow.f64 re 3)) (+.f64 (+.f64 (*.f64 -1/2520 (pow.f64 re 7)) (*.f64 1/60 (pow.f64 re 5))) (*.f64 (pow.f64 im 2) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (+.f64 (*.f64 (pow.f64 re 3) -1/6) (*.f64 (pow.f64 re 7) -1/5040))))))
(+.f64 (*.f64 -1/3 (pow.f64 re 3)) (+.f64 (*.f64 -1/2520 (pow.f64 re 7)) (+.f64 (*.f64 1/60 (pow.f64 re 5)) (*.f64 (pow.f64 im 2) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (+.f64 (*.f64 (pow.f64 re 3) -1/6) (*.f64 (pow.f64 re 7) -1/5040)))))))
(+.f64 (*.f64 -1/3 (pow.f64 re 3)) (+.f64 (+.f64 (*.f64 -1/2520 (pow.f64 re 7)) (*.f64 1/60 (pow.f64 re 5))) (*.f64 (pow.f64 im 2) (+.f64 (*.f64 (pow.f64 re 7) -1/5040) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (*.f64 (pow.f64 re 3) -1/6))))))
(*.f64 -1/6 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 3)))
(*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 2 (pow.f64 im 2))))
(*.f64 (pow.f64 re 3) (*.f64 (+.f64 2 (pow.f64 im 2)) -1/6))
(*.f64 (*.f64 (pow.f64 re 3) -1/6) (+.f64 2 (pow.f64 im 2)))
(*.f64 (pow.f64 re 3) (*.f64 -1/6 (+.f64 2 (pow.f64 im 2))))
(+.f64 (*.f64 1/120 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 5))) (*.f64 -1/6 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 3))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 2 (pow.f64 im 2)))) (*.f64 1/120 (*.f64 (pow.f64 re 5) (+.f64 2 (pow.f64 im 2)))))
(*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (*.f64 (pow.f64 re 3) -1/6)))
(+.f64 (*.f64 1/120 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 5))) (+.f64 (*.f64 -1/5040 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 7))) (*.f64 -1/6 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 3)))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 2 (pow.f64 im 2)))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (+.f64 2 (pow.f64 im 2)))) (*.f64 -1/5040 (*.f64 (pow.f64 re 7) (+.f64 2 (pow.f64 im 2))))))
(+.f64 (*.f64 (pow.f64 re 3) (*.f64 (+.f64 2 (pow.f64 im 2)) -1/6)) (*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (*.f64 (pow.f64 re 7) -1/5040))))
(*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (+.f64 (*.f64 (pow.f64 re 3) -1/6) (*.f64 (pow.f64 re 7) -1/5040))))
(*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 7) -1/5040) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (*.f64 (pow.f64 re 3) -1/6))))
(+.f64 (*.f64 1/120 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 5))) (+.f64 (*.f64 -1/5040 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 7))) (*.f64 -1/6 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 3)))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 2 (pow.f64 im 2)))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (+.f64 2 (pow.f64 im 2)))) (*.f64 -1/5040 (*.f64 (pow.f64 re 7) (+.f64 2 (pow.f64 im 2))))))
(+.f64 (*.f64 (pow.f64 re 3) (*.f64 (+.f64 2 (pow.f64 im 2)) -1/6)) (*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (*.f64 (pow.f64 re 7) -1/5040))))
(*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (+.f64 (*.f64 (pow.f64 re 3) -1/6) (*.f64 (pow.f64 re 7) -1/5040))))
(*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 7) -1/5040) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (*.f64 (pow.f64 re 3) -1/6))))
(*.f64 -1/5040 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 7)))
(*.f64 -1/5040 (*.f64 (pow.f64 re 7) (+.f64 2 (pow.f64 im 2))))
(*.f64 (pow.f64 re 7) (*.f64 (+.f64 2 (pow.f64 im 2)) -1/5040))
(*.f64 (pow.f64 re 7) (*.f64 -1/5040 (+.f64 2 (pow.f64 im 2))))
(+.f64 (*.f64 1/120 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 5))) (*.f64 -1/5040 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 7))))
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (+.f64 2 (pow.f64 im 2)))) (*.f64 -1/5040 (*.f64 (pow.f64 re 7) (+.f64 2 (pow.f64 im 2)))))
(*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (*.f64 (pow.f64 re 7) -1/5040)))
(+.f64 (*.f64 1/120 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 5))) (+.f64 (*.f64 -1/6 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 3))) (*.f64 -1/5040 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 7)))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 2 (pow.f64 im 2)))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (+.f64 2 (pow.f64 im 2)))) (*.f64 -1/5040 (*.f64 (pow.f64 re 7) (+.f64 2 (pow.f64 im 2))))))
(+.f64 (*.f64 (pow.f64 re 3) (*.f64 (+.f64 2 (pow.f64 im 2)) -1/6)) (*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (*.f64 (pow.f64 re 7) -1/5040))))
(*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (+.f64 (*.f64 (pow.f64 re 3) -1/6) (*.f64 (pow.f64 re 7) -1/5040))))
(*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 7) -1/5040) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (*.f64 (pow.f64 re 3) -1/6))))
(+.f64 (*.f64 1/120 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 5))) (+.f64 (*.f64 -1/6 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 3))) (*.f64 -1/5040 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 7)))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 2 (pow.f64 im 2)))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (+.f64 2 (pow.f64 im 2)))) (*.f64 -1/5040 (*.f64 (pow.f64 re 7) (+.f64 2 (pow.f64 im 2))))))
(+.f64 (*.f64 (pow.f64 re 3) (*.f64 (+.f64 2 (pow.f64 im 2)) -1/6)) (*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (*.f64 (pow.f64 re 7) -1/5040))))
(*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (+.f64 (*.f64 (pow.f64 re 3) -1/6) (*.f64 (pow.f64 re 7) -1/5040))))
(*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 7) -1/5040) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (*.f64 (pow.f64 re 3) -1/6))))
(*.f64 -1/5040 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 7)))
(*.f64 -1/5040 (*.f64 (pow.f64 re 7) (+.f64 2 (pow.f64 im 2))))
(*.f64 (pow.f64 re 7) (*.f64 (+.f64 2 (pow.f64 im 2)) -1/5040))
(*.f64 (pow.f64 re 7) (*.f64 -1/5040 (+.f64 2 (pow.f64 im 2))))
(+.f64 (*.f64 1/120 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 5))) (*.f64 -1/5040 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 7))))
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (+.f64 2 (pow.f64 im 2)))) (*.f64 -1/5040 (*.f64 (pow.f64 re 7) (+.f64 2 (pow.f64 im 2)))))
(*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (*.f64 (pow.f64 re 7) -1/5040)))
(+.f64 (*.f64 1/120 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 5))) (+.f64 (*.f64 -1/6 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 3))) (*.f64 -1/5040 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 7)))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 2 (pow.f64 im 2)))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (+.f64 2 (pow.f64 im 2)))) (*.f64 -1/5040 (*.f64 (pow.f64 re 7) (+.f64 2 (pow.f64 im 2))))))
(+.f64 (*.f64 (pow.f64 re 3) (*.f64 (+.f64 2 (pow.f64 im 2)) -1/6)) (*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (*.f64 (pow.f64 re 7) -1/5040))))
(*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (+.f64 (*.f64 (pow.f64 re 3) -1/6) (*.f64 (pow.f64 re 7) -1/5040))))
(*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 7) -1/5040) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (*.f64 (pow.f64 re 3) -1/6))))
(+.f64 (*.f64 1/120 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 5))) (+.f64 (*.f64 -1/6 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 3))) (*.f64 -1/5040 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 7)))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 2 (pow.f64 im 2)))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (+.f64 2 (pow.f64 im 2)))) (*.f64 -1/5040 (*.f64 (pow.f64 re 7) (+.f64 2 (pow.f64 im 2))))))
(+.f64 (*.f64 (pow.f64 re 3) (*.f64 (+.f64 2 (pow.f64 im 2)) -1/6)) (*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (*.f64 (pow.f64 re 7) -1/5040))))
(*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (+.f64 (*.f64 (pow.f64 re 3) -1/6) (*.f64 (pow.f64 re 7) -1/5040))))
(*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 7) -1/5040) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (*.f64 (pow.f64 re 3) -1/6))))
(*.f64 -1/3 (pow.f64 re 3))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (pow.f64 im 2))) (*.f64 -1/3 (pow.f64 re 3)))
(+.f64 (*.f64 -1/3 (pow.f64 re 3)) (*.f64 (pow.f64 re 3) (*.f64 (pow.f64 im 2) -1/6)))
(*.f64 (pow.f64 re 3) (+.f64 -1/3 (*.f64 -1/6 (pow.f64 im 2))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (pow.f64 im 2))) (*.f64 -1/3 (pow.f64 re 3)))
(+.f64 (*.f64 -1/3 (pow.f64 re 3)) (*.f64 (pow.f64 re 3) (*.f64 (pow.f64 im 2) -1/6)))
(*.f64 (pow.f64 re 3) (+.f64 -1/3 (*.f64 -1/6 (pow.f64 im 2))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (pow.f64 im 2))) (*.f64 -1/3 (pow.f64 re 3)))
(+.f64 (*.f64 -1/3 (pow.f64 re 3)) (*.f64 (pow.f64 re 3) (*.f64 (pow.f64 im 2) -1/6)))
(*.f64 (pow.f64 re 3) (+.f64 -1/3 (*.f64 -1/6 (pow.f64 im 2))))
(*.f64 -1/6 (*.f64 (pow.f64 re 3) (pow.f64 im 2)))
(*.f64 (pow.f64 re 3) (*.f64 (pow.f64 im 2) -1/6))
(*.f64 (pow.f64 re 3) (*.f64 -1/6 (pow.f64 im 2)))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (pow.f64 im 2))) (*.f64 -1/3 (pow.f64 re 3)))
(+.f64 (*.f64 -1/3 (pow.f64 re 3)) (*.f64 (pow.f64 re 3) (*.f64 (pow.f64 im 2) -1/6)))
(*.f64 (pow.f64 re 3) (+.f64 -1/3 (*.f64 -1/6 (pow.f64 im 2))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (pow.f64 im 2))) (*.f64 -1/3 (pow.f64 re 3)))
(+.f64 (*.f64 -1/3 (pow.f64 re 3)) (*.f64 (pow.f64 re 3) (*.f64 (pow.f64 im 2) -1/6)))
(*.f64 (pow.f64 re 3) (+.f64 -1/3 (*.f64 -1/6 (pow.f64 im 2))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (pow.f64 im 2))) (*.f64 -1/3 (pow.f64 re 3)))
(+.f64 (*.f64 -1/3 (pow.f64 re 3)) (*.f64 (pow.f64 re 3) (*.f64 (pow.f64 im 2) -1/6)))
(*.f64 (pow.f64 re 3) (+.f64 -1/3 (*.f64 -1/6 (pow.f64 im 2))))
(*.f64 -1/6 (*.f64 (pow.f64 re 3) (pow.f64 im 2)))
(*.f64 (pow.f64 re 3) (*.f64 (pow.f64 im 2) -1/6))
(*.f64 (pow.f64 re 3) (*.f64 -1/6 (pow.f64 im 2)))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (pow.f64 im 2))) (*.f64 -1/3 (pow.f64 re 3)))
(+.f64 (*.f64 -1/3 (pow.f64 re 3)) (*.f64 (pow.f64 re 3) (*.f64 (pow.f64 im 2) -1/6)))
(*.f64 (pow.f64 re 3) (+.f64 -1/3 (*.f64 -1/6 (pow.f64 im 2))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (pow.f64 im 2))) (*.f64 -1/3 (pow.f64 re 3)))
(+.f64 (*.f64 -1/3 (pow.f64 re 3)) (*.f64 (pow.f64 re 3) (*.f64 (pow.f64 im 2) -1/6)))
(*.f64 (pow.f64 re 3) (+.f64 -1/3 (*.f64 -1/6 (pow.f64 im 2))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (pow.f64 im 2))) (*.f64 -1/3 (pow.f64 re 3)))
(+.f64 (*.f64 -1/3 (pow.f64 re 3)) (*.f64 (pow.f64 re 3) (*.f64 (pow.f64 im 2) -1/6)))
(*.f64 (pow.f64 re 3) (+.f64 -1/3 (*.f64 -1/6 (pow.f64 im 2))))
(*.f64 1/60 (pow.f64 re 5))
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (pow.f64 im 2))) (*.f64 1/60 (pow.f64 re 5)))
(+.f64 (*.f64 1/60 (pow.f64 re 5)) (*.f64 (pow.f64 re 5) (*.f64 (pow.f64 im 2) 1/120)))
(*.f64 (pow.f64 re 5) (+.f64 1/60 (*.f64 1/120 (pow.f64 im 2))))
(*.f64 (pow.f64 re 5) (*.f64 1/120 (+.f64 2 (pow.f64 im 2))))
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (pow.f64 im 2))) (*.f64 1/60 (pow.f64 re 5)))
(+.f64 (*.f64 1/60 (pow.f64 re 5)) (*.f64 (pow.f64 re 5) (*.f64 (pow.f64 im 2) 1/120)))
(*.f64 (pow.f64 re 5) (+.f64 1/60 (*.f64 1/120 (pow.f64 im 2))))
(*.f64 (pow.f64 re 5) (*.f64 1/120 (+.f64 2 (pow.f64 im 2))))
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (pow.f64 im 2))) (*.f64 1/60 (pow.f64 re 5)))
(+.f64 (*.f64 1/60 (pow.f64 re 5)) (*.f64 (pow.f64 re 5) (*.f64 (pow.f64 im 2) 1/120)))
(*.f64 (pow.f64 re 5) (+.f64 1/60 (*.f64 1/120 (pow.f64 im 2))))
(*.f64 (pow.f64 re 5) (*.f64 1/120 (+.f64 2 (pow.f64 im 2))))
(*.f64 1/120 (*.f64 (pow.f64 re 5) (pow.f64 im 2)))
(*.f64 (pow.f64 re 5) (*.f64 (pow.f64 im 2) 1/120))
(*.f64 (pow.f64 re 5) (*.f64 1/120 (pow.f64 im 2)))
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (pow.f64 im 2))) (*.f64 1/60 (pow.f64 re 5)))
(+.f64 (*.f64 1/60 (pow.f64 re 5)) (*.f64 (pow.f64 re 5) (*.f64 (pow.f64 im 2) 1/120)))
(*.f64 (pow.f64 re 5) (+.f64 1/60 (*.f64 1/120 (pow.f64 im 2))))
(*.f64 (pow.f64 re 5) (*.f64 1/120 (+.f64 2 (pow.f64 im 2))))
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (pow.f64 im 2))) (*.f64 1/60 (pow.f64 re 5)))
(+.f64 (*.f64 1/60 (pow.f64 re 5)) (*.f64 (pow.f64 re 5) (*.f64 (pow.f64 im 2) 1/120)))
(*.f64 (pow.f64 re 5) (+.f64 1/60 (*.f64 1/120 (pow.f64 im 2))))
(*.f64 (pow.f64 re 5) (*.f64 1/120 (+.f64 2 (pow.f64 im 2))))
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (pow.f64 im 2))) (*.f64 1/60 (pow.f64 re 5)))
(+.f64 (*.f64 1/60 (pow.f64 re 5)) (*.f64 (pow.f64 re 5) (*.f64 (pow.f64 im 2) 1/120)))
(*.f64 (pow.f64 re 5) (+.f64 1/60 (*.f64 1/120 (pow.f64 im 2))))
(*.f64 (pow.f64 re 5) (*.f64 1/120 (+.f64 2 (pow.f64 im 2))))
(*.f64 1/120 (*.f64 (pow.f64 re 5) (pow.f64 im 2)))
(*.f64 (pow.f64 re 5) (*.f64 (pow.f64 im 2) 1/120))
(*.f64 (pow.f64 re 5) (*.f64 1/120 (pow.f64 im 2)))
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (pow.f64 im 2))) (*.f64 1/60 (pow.f64 re 5)))
(+.f64 (*.f64 1/60 (pow.f64 re 5)) (*.f64 (pow.f64 re 5) (*.f64 (pow.f64 im 2) 1/120)))
(*.f64 (pow.f64 re 5) (+.f64 1/60 (*.f64 1/120 (pow.f64 im 2))))
(*.f64 (pow.f64 re 5) (*.f64 1/120 (+.f64 2 (pow.f64 im 2))))
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (pow.f64 im 2))) (*.f64 1/60 (pow.f64 re 5)))
(+.f64 (*.f64 1/60 (pow.f64 re 5)) (*.f64 (pow.f64 re 5) (*.f64 (pow.f64 im 2) 1/120)))
(*.f64 (pow.f64 re 5) (+.f64 1/60 (*.f64 1/120 (pow.f64 im 2))))
(*.f64 (pow.f64 re 5) (*.f64 1/120 (+.f64 2 (pow.f64 im 2))))
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (pow.f64 im 2))) (*.f64 1/60 (pow.f64 re 5)))
(+.f64 (*.f64 1/60 (pow.f64 re 5)) (*.f64 (pow.f64 re 5) (*.f64 (pow.f64 im 2) 1/120)))
(*.f64 (pow.f64 re 5) (+.f64 1/60 (*.f64 1/120 (pow.f64 im 2))))
(*.f64 (pow.f64 re 5) (*.f64 1/120 (+.f64 2 (pow.f64 im 2))))
(*.f64 2 (pow.f64 re 5))
(*.f64 (pow.f64 re 5) 2)
(+.f64 (*.f64 2 (pow.f64 re 5)) (*.f64 (pow.f64 re 5) (pow.f64 im 2)))
(+.f64 (*.f64 (pow.f64 re 5) (pow.f64 im 2)) (*.f64 (pow.f64 re 5) 2))
(*.f64 (pow.f64 re 5) (+.f64 2 (pow.f64 im 2)))
(+.f64 (*.f64 2 (pow.f64 re 5)) (*.f64 (pow.f64 re 5) (pow.f64 im 2)))
(+.f64 (*.f64 (pow.f64 re 5) (pow.f64 im 2)) (*.f64 (pow.f64 re 5) 2))
(*.f64 (pow.f64 re 5) (+.f64 2 (pow.f64 im 2)))
(+.f64 (*.f64 2 (pow.f64 re 5)) (*.f64 (pow.f64 re 5) (pow.f64 im 2)))
(+.f64 (*.f64 (pow.f64 re 5) (pow.f64 im 2)) (*.f64 (pow.f64 re 5) 2))
(*.f64 (pow.f64 re 5) (+.f64 2 (pow.f64 im 2)))
(*.f64 (pow.f64 re 5) (pow.f64 im 2))
(+.f64 (*.f64 2 (pow.f64 re 5)) (*.f64 (pow.f64 re 5) (pow.f64 im 2)))
(+.f64 (*.f64 (pow.f64 re 5) (pow.f64 im 2)) (*.f64 (pow.f64 re 5) 2))
(*.f64 (pow.f64 re 5) (+.f64 2 (pow.f64 im 2)))
(+.f64 (*.f64 2 (pow.f64 re 5)) (*.f64 (pow.f64 re 5) (pow.f64 im 2)))
(+.f64 (*.f64 (pow.f64 re 5) (pow.f64 im 2)) (*.f64 (pow.f64 re 5) 2))
(*.f64 (pow.f64 re 5) (+.f64 2 (pow.f64 im 2)))
(+.f64 (*.f64 2 (pow.f64 re 5)) (*.f64 (pow.f64 re 5) (pow.f64 im 2)))
(+.f64 (*.f64 (pow.f64 re 5) (pow.f64 im 2)) (*.f64 (pow.f64 re 5) 2))
(*.f64 (pow.f64 re 5) (+.f64 2 (pow.f64 im 2)))
(*.f64 (pow.f64 re 5) (pow.f64 im 2))
(+.f64 (*.f64 2 (pow.f64 re 5)) (*.f64 (pow.f64 re 5) (pow.f64 im 2)))
(+.f64 (*.f64 (pow.f64 re 5) (pow.f64 im 2)) (*.f64 (pow.f64 re 5) 2))
(*.f64 (pow.f64 re 5) (+.f64 2 (pow.f64 im 2)))
(+.f64 (*.f64 2 (pow.f64 re 5)) (*.f64 (pow.f64 re 5) (pow.f64 im 2)))
(+.f64 (*.f64 (pow.f64 re 5) (pow.f64 im 2)) (*.f64 (pow.f64 re 5) 2))
(*.f64 (pow.f64 re 5) (+.f64 2 (pow.f64 im 2)))
(+.f64 (*.f64 2 (pow.f64 re 5)) (*.f64 (pow.f64 re 5) (pow.f64 im 2)))
(+.f64 (*.f64 (pow.f64 re 5) (pow.f64 im 2)) (*.f64 (pow.f64 re 5) 2))
(*.f64 (pow.f64 re 5) (+.f64 2 (pow.f64 im 2)))
(-.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 7) -1/5040) (+.f64 (*.f64 1/120 (pow.f64 re 5)) (*.f64 -1/6 (pow.f64 re 3))))) 0)
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 2 (pow.f64 im 2)))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (+.f64 2 (pow.f64 im 2)))) (*.f64 -1/5040 (*.f64 (pow.f64 re 7) (+.f64 2 (pow.f64 im 2))))))
(+.f64 (*.f64 (pow.f64 re 3) (*.f64 (+.f64 2 (pow.f64 im 2)) -1/6)) (*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (*.f64 (pow.f64 re 7) -1/5040))))
(*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (+.f64 (*.f64 (pow.f64 re 3) -1/6) (*.f64 (pow.f64 re 7) -1/5040))))
(*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 7) -1/5040) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (*.f64 (pow.f64 re 3) -1/6))))
(*.f64 2 (/.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 7) -1/5040) (+.f64 (*.f64 1/120 (pow.f64 re 5)) (*.f64 -1/6 (pow.f64 re 3))))) 2))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 2 (pow.f64 im 2)))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (+.f64 2 (pow.f64 im 2)))) (*.f64 -1/5040 (*.f64 (pow.f64 re 7) (+.f64 2 (pow.f64 im 2))))))
(+.f64 (*.f64 (pow.f64 re 3) (*.f64 (+.f64 2 (pow.f64 im 2)) -1/6)) (*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (*.f64 (pow.f64 re 7) -1/5040))))
(*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (+.f64 (*.f64 (pow.f64 re 3) -1/6) (*.f64 (pow.f64 re 7) -1/5040))))
(*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 7) -1/5040) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (*.f64 (pow.f64 re 3) -1/6))))
(*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 7) -1/5040) (+.f64 (*.f64 1/120 (pow.f64 re 5)) (*.f64 -1/6 (pow.f64 re 3)))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 2 (pow.f64 im 2)))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (+.f64 2 (pow.f64 im 2)))) (*.f64 -1/5040 (*.f64 (pow.f64 re 7) (+.f64 2 (pow.f64 im 2))))))
(+.f64 (*.f64 (pow.f64 re 3) (*.f64 (+.f64 2 (pow.f64 im 2)) -1/6)) (*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (*.f64 (pow.f64 re 7) -1/5040))))
(*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (+.f64 (*.f64 (pow.f64 re 3) -1/6) (*.f64 (pow.f64 re 7) -1/5040))))
(*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 7) -1/5040) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (*.f64 (pow.f64 re 3) -1/6))))
(*.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 7) -1/5040) (+.f64 (*.f64 1/120 (pow.f64 re 5)) (*.f64 -1/6 (pow.f64 re 3))))) 1)
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 2 (pow.f64 im 2)))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (+.f64 2 (pow.f64 im 2)))) (*.f64 -1/5040 (*.f64 (pow.f64 re 7) (+.f64 2 (pow.f64 im 2))))))
(+.f64 (*.f64 (pow.f64 re 3) (*.f64 (+.f64 2 (pow.f64 im 2)) -1/6)) (*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (*.f64 (pow.f64 re 7) -1/5040))))
(*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (+.f64 (*.f64 (pow.f64 re 3) -1/6) (*.f64 (pow.f64 re 7) -1/5040))))
(*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 7) -1/5040) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (*.f64 (pow.f64 re 3) -1/6))))
(*.f64 1 (*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 7) -1/5040) (+.f64 (*.f64 1/120 (pow.f64 re 5)) (*.f64 -1/6 (pow.f64 re 3))))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 2 (pow.f64 im 2)))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (+.f64 2 (pow.f64 im 2)))) (*.f64 -1/5040 (*.f64 (pow.f64 re 7) (+.f64 2 (pow.f64 im 2))))))
(+.f64 (*.f64 (pow.f64 re 3) (*.f64 (+.f64 2 (pow.f64 im 2)) -1/6)) (*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (*.f64 (pow.f64 re 7) -1/5040))))
(*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (+.f64 (*.f64 (pow.f64 re 3) -1/6) (*.f64 (pow.f64 re 7) -1/5040))))
(*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 7) -1/5040) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (*.f64 (pow.f64 re 3) -1/6))))
(*.f64 (*.f64 2 (*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 7) -1/5040) (+.f64 (*.f64 1/120 (pow.f64 re 5)) (*.f64 -1/6 (pow.f64 re 3)))))) 1/2)
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 2 (pow.f64 im 2)))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (+.f64 2 (pow.f64 im 2)))) (*.f64 -1/5040 (*.f64 (pow.f64 re 7) (+.f64 2 (pow.f64 im 2))))))
(+.f64 (*.f64 (pow.f64 re 3) (*.f64 (+.f64 2 (pow.f64 im 2)) -1/6)) (*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (*.f64 (pow.f64 re 7) -1/5040))))
(*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (+.f64 (*.f64 (pow.f64 re 3) -1/6) (*.f64 (pow.f64 re 7) -1/5040))))
(*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 7) -1/5040) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (*.f64 (pow.f64 re 3) -1/6))))
(*.f64 (+.f64 (*.f64 (pow.f64 re 7) -1/5040) (+.f64 (*.f64 1/120 (pow.f64 re 5)) (*.f64 -1/6 (pow.f64 re 3)))) (+.f64 2 (pow.f64 im 2)))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 2 (pow.f64 im 2)))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (+.f64 2 (pow.f64 im 2)))) (*.f64 -1/5040 (*.f64 (pow.f64 re 7) (+.f64 2 (pow.f64 im 2))))))
(+.f64 (*.f64 (pow.f64 re 3) (*.f64 (+.f64 2 (pow.f64 im 2)) -1/6)) (*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (*.f64 (pow.f64 re 7) -1/5040))))
(*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (+.f64 (*.f64 (pow.f64 re 3) -1/6) (*.f64 (pow.f64 re 7) -1/5040))))
(*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 7) -1/5040) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (*.f64 (pow.f64 re 3) -1/6))))
(*.f64 1/2 (*.f64 2 (*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 7) -1/5040) (+.f64 (*.f64 1/120 (pow.f64 re 5)) (*.f64 -1/6 (pow.f64 re 3)))))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 2 (pow.f64 im 2)))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (+.f64 2 (pow.f64 im 2)))) (*.f64 -1/5040 (*.f64 (pow.f64 re 7) (+.f64 2 (pow.f64 im 2))))))
(+.f64 (*.f64 (pow.f64 re 3) (*.f64 (+.f64 2 (pow.f64 im 2)) -1/6)) (*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (*.f64 (pow.f64 re 7) -1/5040))))
(*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (+.f64 (*.f64 (pow.f64 re 3) -1/6) (*.f64 (pow.f64 re 7) -1/5040))))
(*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 7) -1/5040) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (*.f64 (pow.f64 re 3) -1/6))))
(*.f64 (/.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 7) -1/5040) (+.f64 (*.f64 1/120 (pow.f64 re 5)) (*.f64 -1/6 (pow.f64 re 3))))) 2) 2)
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 2 (pow.f64 im 2)))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (+.f64 2 (pow.f64 im 2)))) (*.f64 -1/5040 (*.f64 (pow.f64 re 7) (+.f64 2 (pow.f64 im 2))))))
(+.f64 (*.f64 (pow.f64 re 3) (*.f64 (+.f64 2 (pow.f64 im 2)) -1/6)) (*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (*.f64 (pow.f64 re 7) -1/5040))))
(*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (+.f64 (*.f64 (pow.f64 re 3) -1/6) (*.f64 (pow.f64 re 7) -1/5040))))
(*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 7) -1/5040) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (*.f64 (pow.f64 re 3) -1/6))))
(/.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 7) -1/5040) (+.f64 (*.f64 1/120 (pow.f64 re 5)) (*.f64 -1/6 (pow.f64 re 3))))) 1)
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 2 (pow.f64 im 2)))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (+.f64 2 (pow.f64 im 2)))) (*.f64 -1/5040 (*.f64 (pow.f64 re 7) (+.f64 2 (pow.f64 im 2))))))
(+.f64 (*.f64 (pow.f64 re 3) (*.f64 (+.f64 2 (pow.f64 im 2)) -1/6)) (*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (*.f64 (pow.f64 re 7) -1/5040))))
(*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (+.f64 (*.f64 (pow.f64 re 3) -1/6) (*.f64 (pow.f64 re 7) -1/5040))))
(*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 7) -1/5040) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (*.f64 (pow.f64 re 3) -1/6))))
(/.f64 (*.f64 2 (*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 7) -1/5040) (+.f64 (*.f64 1/120 (pow.f64 re 5)) (*.f64 -1/6 (pow.f64 re 3)))))) 2)
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 2 (pow.f64 im 2)))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (+.f64 2 (pow.f64 im 2)))) (*.f64 -1/5040 (*.f64 (pow.f64 re 7) (+.f64 2 (pow.f64 im 2))))))
(+.f64 (*.f64 (pow.f64 re 3) (*.f64 (+.f64 2 (pow.f64 im 2)) -1/6)) (*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (*.f64 (pow.f64 re 7) -1/5040))))
(*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (+.f64 (*.f64 (pow.f64 re 3) -1/6) (*.f64 (pow.f64 re 7) -1/5040))))
(*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 7) -1/5040) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (*.f64 (pow.f64 re 3) -1/6))))
(/.f64 (*.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 7) -1/5040) (+.f64 (*.f64 1/120 (pow.f64 re 5)) (*.f64 -1/6 (pow.f64 re 3))))) 4) 4)
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 2 (pow.f64 im 2)))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (+.f64 2 (pow.f64 im 2)))) (*.f64 -1/5040 (*.f64 (pow.f64 re 7) (+.f64 2 (pow.f64 im 2))))))
(+.f64 (*.f64 (pow.f64 re 3) (*.f64 (+.f64 2 (pow.f64 im 2)) -1/6)) (*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (*.f64 (pow.f64 re 7) -1/5040))))
(*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (+.f64 (*.f64 (pow.f64 re 3) -1/6) (*.f64 (pow.f64 re 7) -1/5040))))
(*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 7) -1/5040) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (*.f64 (pow.f64 re 3) -1/6))))
(/.f64 (*.f64 2 (*.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 7) -1/5040) (+.f64 (*.f64 1/120 (pow.f64 re 5)) (*.f64 -1/6 (pow.f64 re 3))))) 4)) 8)
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 2 (pow.f64 im 2)))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (+.f64 2 (pow.f64 im 2)))) (*.f64 -1/5040 (*.f64 (pow.f64 re 7) (+.f64 2 (pow.f64 im 2))))))
(+.f64 (*.f64 (pow.f64 re 3) (*.f64 (+.f64 2 (pow.f64 im 2)) -1/6)) (*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (*.f64 (pow.f64 re 7) -1/5040))))
(*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (+.f64 (*.f64 (pow.f64 re 3) -1/6) (*.f64 (pow.f64 re 7) -1/5040))))
(*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 7) -1/5040) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (*.f64 (pow.f64 re 3) -1/6))))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 7) -1/5040) (+.f64 (*.f64 1/120 (pow.f64 re 5)) (*.f64 -1/6 (pow.f64 re 3))))) 4))) 16)
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 2 (pow.f64 im 2)))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (+.f64 2 (pow.f64 im 2)))) (*.f64 -1/5040 (*.f64 (pow.f64 re 7) (+.f64 2 (pow.f64 im 2))))))
(+.f64 (*.f64 (pow.f64 re 3) (*.f64 (+.f64 2 (pow.f64 im 2)) -1/6)) (*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (*.f64 (pow.f64 re 7) -1/5040))))
(*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (+.f64 (*.f64 (pow.f64 re 3) -1/6) (*.f64 (pow.f64 re 7) -1/5040))))
(*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 7) -1/5040) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (*.f64 (pow.f64 re 3) -1/6))))
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 7) -1/5040) (+.f64 (*.f64 1/120 (pow.f64 re 5)) (*.f64 -1/6 (pow.f64 re 3))))) 4))) (*.f64 2 (*.f64 2 (*.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 7) -1/5040) (+.f64 (*.f64 1/120 (pow.f64 re 5)) (*.f64 -1/6 (pow.f64 re 3))))) 4)))) 32)
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 2 (pow.f64 im 2)))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 re 5) (+.f64 2 (pow.f64 im 2)))) (*.f64 -1/5040 (*.f64 (pow.f64 re 7) (+.f64 2 (pow.f64 im 2))))))
(+.f64 (*.f64 (pow.f64 re 3) (*.f64 (+.f64 2 (pow.f64 im 2)) -1/6)) (*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (*.f64 (pow.f64 re 7) -1/5040))))
(*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (+.f64 (*.f64 (pow.f64 re 3) -1/6) (*.f64 (pow.f64 re 7) -1/5040))))
(*.f64 (+.f64 2 (pow.f64 im 2)) (+.f64 (*.f64 (pow.f64 re 7) -1/5040) (+.f64 (*.f64 (pow.f64 re 5) 1/120) (*.f64 (pow.f64 re 3) -1/6))))
(+.f64 (*.f64 -1/6 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 3))) 0)
(*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 2 (pow.f64 im 2))))
(*.f64 (pow.f64 re 3) (*.f64 (+.f64 2 (pow.f64 im 2)) -1/6))
(*.f64 (*.f64 (pow.f64 re 3) -1/6) (+.f64 2 (pow.f64 im 2)))
(*.f64 (pow.f64 re 3) (*.f64 -1/6 (+.f64 2 (pow.f64 im 2))))
(+.f64 0 (*.f64 -1/6 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 3))))
(*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 2 (pow.f64 im 2))))
(*.f64 (pow.f64 re 3) (*.f64 (+.f64 2 (pow.f64 im 2)) -1/6))
(*.f64 (*.f64 (pow.f64 re 3) -1/6) (+.f64 2 (pow.f64 im 2)))
(*.f64 (pow.f64 re 3) (*.f64 -1/6 (+.f64 2 (pow.f64 im 2))))
(+.f64 (/.f64 (*.f64 -1/6 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 3))) 2) (/.f64 (*.f64 -1/6 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 3))) 2))
(*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 2 (pow.f64 im 2))))
(*.f64 (pow.f64 re 3) (*.f64 (+.f64 2 (pow.f64 im 2)) -1/6))
(*.f64 (*.f64 (pow.f64 re 3) -1/6) (+.f64 2 (pow.f64 im 2)))
(*.f64 (pow.f64 re 3) (*.f64 -1/6 (+.f64 2 (pow.f64 im 2))))
(-.f64 (*.f64 -1/6 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 3))) 0)
(*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 2 (pow.f64 im 2))))
(*.f64 (pow.f64 re 3) (*.f64 (+.f64 2 (pow.f64 im 2)) -1/6))
(*.f64 (*.f64 (pow.f64 re 3) -1/6) (+.f64 2 (pow.f64 im 2)))
(*.f64 (pow.f64 re 3) (*.f64 -1/6 (+.f64 2 (pow.f64 im 2))))
(/.f64 (*.f64 -1/6 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 3))) 1)
(*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 2 (pow.f64 im 2))))
(*.f64 (pow.f64 re 3) (*.f64 (+.f64 2 (pow.f64 im 2)) -1/6))
(*.f64 (*.f64 (pow.f64 re 3) -1/6) (+.f64 2 (pow.f64 im 2)))
(*.f64 (pow.f64 re 3) (*.f64 -1/6 (+.f64 2 (pow.f64 im 2))))
(/.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (*.f64 (pow.f64 re 3) -1/3)) 2)
(*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 2 (pow.f64 im 2))))
(*.f64 (pow.f64 re 3) (*.f64 (+.f64 2 (pow.f64 im 2)) -1/6))
(*.f64 (*.f64 (pow.f64 re 3) -1/6) (+.f64 2 (pow.f64 im 2)))
(*.f64 (pow.f64 re 3) (*.f64 -1/6 (+.f64 2 (pow.f64 im 2))))
(/.f64 (*.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 3)) -2/3) 4)
(*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 2 (pow.f64 im 2))))
(*.f64 (pow.f64 re 3) (*.f64 (+.f64 2 (pow.f64 im 2)) -1/6))
(*.f64 (*.f64 (pow.f64 re 3) -1/6) (+.f64 2 (pow.f64 im 2)))
(*.f64 (pow.f64 re 3) (*.f64 -1/6 (+.f64 2 (pow.f64 im 2))))
(/.f64 (*.f64 2 (*.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 3)) -2/3)) 8)
(*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 2 (pow.f64 im 2))))
(*.f64 (pow.f64 re 3) (*.f64 (+.f64 2 (pow.f64 im 2)) -1/6))
(*.f64 (*.f64 (pow.f64 re 3) -1/6) (+.f64 2 (pow.f64 im 2)))
(*.f64 (pow.f64 re 3) (*.f64 -1/6 (+.f64 2 (pow.f64 im 2))))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 3)) -2/3))) 16)
(*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 2 (pow.f64 im 2))))
(*.f64 (pow.f64 re 3) (*.f64 (+.f64 2 (pow.f64 im 2)) -1/6))
(*.f64 (*.f64 (pow.f64 re 3) -1/6) (+.f64 2 (pow.f64 im 2)))
(*.f64 (pow.f64 re 3) (*.f64 -1/6 (+.f64 2 (pow.f64 im 2))))
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 3)) -2/3))) (*.f64 2 (*.f64 2 (*.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 3)) -2/3)))) 32)
(*.f64 -1/6 (*.f64 (pow.f64 re 3) (+.f64 2 (pow.f64 im 2))))
(*.f64 (pow.f64 re 3) (*.f64 (+.f64 2 (pow.f64 im 2)) -1/6))
(*.f64 (*.f64 (pow.f64 re 3) -1/6) (+.f64 2 (pow.f64 im 2)))
(*.f64 (pow.f64 re 3) (*.f64 -1/6 (+.f64 2 (pow.f64 im 2))))
(+.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (*.f64 1/120 (pow.f64 re 5))) 0)
(+.f64 (*.f64 1/60 (pow.f64 re 5)) (*.f64 (pow.f64 re 5) (*.f64 (pow.f64 im 2) 1/120)))
(*.f64 (pow.f64 re 5) (+.f64 1/60 (*.f64 1/120 (pow.f64 im 2))))
(*.f64 (pow.f64 re 5) (*.f64 1/120 (+.f64 2 (pow.f64 im 2))))
(+.f64 0 (*.f64 (+.f64 2 (pow.f64 im 2)) (*.f64 1/120 (pow.f64 re 5))))
(+.f64 (*.f64 1/60 (pow.f64 re 5)) (*.f64 (pow.f64 re 5) (*.f64 (pow.f64 im 2) 1/120)))
(*.f64 (pow.f64 re 5) (+.f64 1/60 (*.f64 1/120 (pow.f64 im 2))))
(*.f64 (pow.f64 re 5) (*.f64 1/120 (+.f64 2 (pow.f64 im 2))))
(+.f64 (/.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (*.f64 1/120 (pow.f64 re 5))) 2) (/.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (*.f64 1/120 (pow.f64 re 5))) 2))
(+.f64 (*.f64 1/60 (pow.f64 re 5)) (*.f64 (pow.f64 re 5) (*.f64 (pow.f64 im 2) 1/120)))
(*.f64 (pow.f64 re 5) (+.f64 1/60 (*.f64 1/120 (pow.f64 im 2))))
(*.f64 (pow.f64 re 5) (*.f64 1/120 (+.f64 2 (pow.f64 im 2))))
(-.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (*.f64 1/120 (pow.f64 re 5))) 0)
(+.f64 (*.f64 1/60 (pow.f64 re 5)) (*.f64 (pow.f64 re 5) (*.f64 (pow.f64 im 2) 1/120)))
(*.f64 (pow.f64 re 5) (+.f64 1/60 (*.f64 1/120 (pow.f64 im 2))))
(*.f64 (pow.f64 re 5) (*.f64 1/120 (+.f64 2 (pow.f64 im 2))))
(/.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (*.f64 1/120 (pow.f64 re 5))) 1)
(+.f64 (*.f64 1/60 (pow.f64 re 5)) (*.f64 (pow.f64 re 5) (*.f64 (pow.f64 im 2) 1/120)))
(*.f64 (pow.f64 re 5) (+.f64 1/60 (*.f64 1/120 (pow.f64 im 2))))
(*.f64 (pow.f64 re 5) (*.f64 1/120 (+.f64 2 (pow.f64 im 2))))
(/.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (*.f64 (pow.f64 re 5) 1/60)) 2)
(+.f64 (*.f64 1/60 (pow.f64 re 5)) (*.f64 (pow.f64 re 5) (*.f64 (pow.f64 im 2) 1/120)))
(*.f64 (pow.f64 re 5) (+.f64 1/60 (*.f64 1/120 (pow.f64 im 2))))
(*.f64 (pow.f64 re 5) (*.f64 1/120 (+.f64 2 (pow.f64 im 2))))
(/.f64 (*.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 5)) 1/30) 4)
(+.f64 (*.f64 1/60 (pow.f64 re 5)) (*.f64 (pow.f64 re 5) (*.f64 (pow.f64 im 2) 1/120)))
(*.f64 (pow.f64 re 5) (+.f64 1/60 (*.f64 1/120 (pow.f64 im 2))))
(*.f64 (pow.f64 re 5) (*.f64 1/120 (+.f64 2 (pow.f64 im 2))))
(/.f64 (*.f64 2 (*.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 5)) 1/30)) 8)
(+.f64 (*.f64 1/60 (pow.f64 re 5)) (*.f64 (pow.f64 re 5) (*.f64 (pow.f64 im 2) 1/120)))
(*.f64 (pow.f64 re 5) (+.f64 1/60 (*.f64 1/120 (pow.f64 im 2))))
(*.f64 (pow.f64 re 5) (*.f64 1/120 (+.f64 2 (pow.f64 im 2))))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 5)) 1/30))) 16)
(+.f64 (*.f64 1/60 (pow.f64 re 5)) (*.f64 (pow.f64 re 5) (*.f64 (pow.f64 im 2) 1/120)))
(*.f64 (pow.f64 re 5) (+.f64 1/60 (*.f64 1/120 (pow.f64 im 2))))
(*.f64 (pow.f64 re 5) (*.f64 1/120 (+.f64 2 (pow.f64 im 2))))
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 5)) 1/30))) (*.f64 2 (*.f64 2 (*.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 5)) 1/30)))) 32)
(+.f64 (*.f64 1/60 (pow.f64 re 5)) (*.f64 (pow.f64 re 5) (*.f64 (pow.f64 im 2) 1/120)))
(*.f64 (pow.f64 re 5) (+.f64 1/60 (*.f64 1/120 (pow.f64 im 2))))
(*.f64 (pow.f64 re 5) (*.f64 1/120 (+.f64 2 (pow.f64 im 2))))
(+.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 5)) 0)
(+.f64 (*.f64 (pow.f64 re 5) (pow.f64 im 2)) (*.f64 (pow.f64 re 5) 2))
(*.f64 (pow.f64 re 5) (+.f64 2 (pow.f64 im 2)))
(+.f64 0 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 5)))
(+.f64 (*.f64 (pow.f64 re 5) (pow.f64 im 2)) (*.f64 (pow.f64 re 5) 2))
(*.f64 (pow.f64 re 5) (+.f64 2 (pow.f64 im 2)))
(+.f64 (/.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 5)) 2) (/.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 5)) 2))
(+.f64 (*.f64 (pow.f64 re 5) (pow.f64 im 2)) (*.f64 (pow.f64 re 5) 2))
(*.f64 (pow.f64 re 5) (+.f64 2 (pow.f64 im 2)))
(-.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 5)) 0)
(+.f64 (*.f64 (pow.f64 re 5) (pow.f64 im 2)) (*.f64 (pow.f64 re 5) 2))
(*.f64 (pow.f64 re 5) (+.f64 2 (pow.f64 im 2)))
(/.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 5)) 1)
(+.f64 (*.f64 (pow.f64 re 5) (pow.f64 im 2)) (*.f64 (pow.f64 re 5) 2))
(*.f64 (pow.f64 re 5) (+.f64 2 (pow.f64 im 2)))
(/.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (*.f64 2 (pow.f64 re 5))) 2)
(+.f64 (*.f64 (pow.f64 re 5) (pow.f64 im 2)) (*.f64 (pow.f64 re 5) 2))
(*.f64 (pow.f64 re 5) (+.f64 2 (pow.f64 im 2)))
(/.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) (*.f64 (pow.f64 re 5) 4)) 4)
(+.f64 (*.f64 (pow.f64 re 5) (pow.f64 im 2)) (*.f64 (pow.f64 re 5) 2))
(*.f64 (pow.f64 re 5) (+.f64 2 (pow.f64 im 2)))
(/.f64 (*.f64 2 (*.f64 (+.f64 2 (pow.f64 im 2)) (*.f64 (pow.f64 re 5) 4))) 8)
(+.f64 (*.f64 (pow.f64 re 5) (pow.f64 im 2)) (*.f64 (pow.f64 re 5) 2))
(*.f64 (pow.f64 re 5) (+.f64 2 (pow.f64 im 2)))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 2 (pow.f64 im 2)) (*.f64 (pow.f64 re 5) 4)))) 16)
(+.f64 (*.f64 (pow.f64 re 5) (pow.f64 im 2)) (*.f64 (pow.f64 re 5) 2))
(*.f64 (pow.f64 re 5) (+.f64 2 (pow.f64 im 2)))
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 2 (pow.f64 im 2)) (*.f64 (pow.f64 re 5) 4)))) (*.f64 2 (*.f64 2 (*.f64 (+.f64 2 (pow.f64 im 2)) (*.f64 (pow.f64 re 5) 4))))) 32)
(+.f64 (*.f64 (pow.f64 re 5) (pow.f64 im 2)) (*.f64 (pow.f64 re 5) 2))
(*.f64 (pow.f64 re 5) (+.f64 2 (pow.f64 im 2)))

eval6.3s (14.2%)

Compiler

Compiled 5174 to 4234 computations (18.2% saved)

prune83.0ms (0.2%)

Pruning

11 alts after pruning (3 fresh and 8 done)

PrunedKeptTotal
New1682170
Fresh011
Picked101
Done088
Total16911180
Error
0.3b
Counts
180 → 11
Alt Table
Click to see full alt table
StatusErrorProgram
30.8b
(/.f64 (+.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) re) (*.f64 (+.f64 (*.f64 (pow.f64 re 7) -1/5040) (+.f64 (*.f64 1/120 (pow.f64 re 5)) (*.f64 -1/6 (pow.f64 re 3)))) (+.f64 2 (pow.f64 im 2)))) 2)
0.7b
(/.f64 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))) 2)
30.4b
(+.f64 re (*.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))) re))
30.3b
(+.f64 re (*.f64 re (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/2 (pow.f64 im 2))))))
30.3b
(+.f64 re (*.f64 re (*.f64 1/2 (pow.f64 im 2))))
30.1b
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
30.4b
(*.f64 (+.f64 1 (*.f64 1/720 (pow.f64 im 6))) re)
0.3b
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
61.0b
(*.f64 re (*.f64 1/720 (pow.f64 im 6)))
0.9b
(sin.f64 re)
30.4b
re
Compiler

Compiled 150 to 118 computations (21.3% saved)

regimes107.0ms (0.2%)

Counts
21 → 1
Calls
Call 1
Inputs
re
(sin.f64 re)
(*.f64 re (*.f64 1/720 (pow.f64 im 6)))
(*.f64 (+.f64 1 (*.f64 1/720 (pow.f64 im 6))) re)
(+.f64 re (*.f64 re (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(/.f64 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))) 2)
(+.f64 re (*.f64 re (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))))
(+.f64 re (*.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))) re))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(+.f64 (sin.f64 re) (*.f64 (pow.f64 im 2) (*.f64 1/2 (sin.f64 re))))
(+.f64 (sin.f64 re) (*.f64 (pow.f64 im 6) (*.f64 1/720 (sin.f64 re))))
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (-.f64 0 im)) (exp.f64 im)))
(+.f64 re (*.f64 re (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/720 (pow.f64 im 6)) (*.f64 1/2 (pow.f64 im 2))))))
(+.f64 (sin.f64 re) (*.f64 (sin.f64 re) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))))
(+.f64 (*.f64 (pow.f64 im 4) (*.f64 1/24 (sin.f64 re))) (+.f64 (sin.f64 re) (*.f64 (sin.f64 re) (*.f64 1/2 (pow.f64 im 2)))))
(+.f64 (sin.f64 re) (*.f64 (sin.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/720 (pow.f64 im 6))))))
(/.f64 (+.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) re) (*.f64 (+.f64 (*.f64 (pow.f64 re 7) -1/5040) (+.f64 (*.f64 1/120 (pow.f64 re 5)) (*.f64 -1/6 (pow.f64 re 3)))) (+.f64 2 (pow.f64 im 2)))) 2)
(+.f64 (+.f64 (*.f64 re (+.f64 1 (*.f64 1/2 (pow.f64 im 2)))) (*.f64 (pow.f64 re 3) (-.f64 (*.f64 (pow.f64 im 2) -1/12) 1/6))) (+.f64 (*.f64 (pow.f64 re 5) (+.f64 1/120 (*.f64 (pow.f64 im 2) 1/240))) (*.f64 (pow.f64 re 7) (-.f64 (*.f64 (pow.f64 im 2) -1/10080) 1/5040))))
(/.f64 (+.f64 (*.f64 (+.f64 2 (pow.f64 im 2)) re) (+.f64 (+.f64 (*.f64 -1/6 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 3))) (*.f64 (+.f64 2 (pow.f64 im 2)) (*.f64 (pow.f64 re 7) -1/5040))) (*.f64 1/120 (*.f64 (+.f64 2 (pow.f64 im 2)) (pow.f64 re 5))))) 2)
(+.f64 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2)) (+.f64 (+.f64 (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 (pow.f64 re 3) -1/12)) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 (pow.f64 re 5) 1/240))) (*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 (pow.f64 re 7) -1/10080))))
Outputs
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
Calls

6 calls:

50.0ms
re
13.0ms
im
12.0ms
(*.f64 1/2 (sin.f64 re))
10.0ms
(sin.f64 re)
10.0ms
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (-.f64 0 im)) (exp.f64 im)))
Results
ErrorSegmentsBranch
0.3b1re
0.3b1im
0.3b1(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (-.f64 0 im)) (exp.f64 im)))
0.3b1(*.f64 1/2 (sin.f64 re))
0.3b1(sin.f64 re)
0.3b1(+.f64 (exp.f64 (-.f64 0 im)) (exp.f64 im))
Compiler

Compiled 417 to 287 computations (31.2% saved)

regimes20.0ms (0%)

Counts
9 → 1
Calls
Call 1
Inputs
re
(sin.f64 re)
(*.f64 re (*.f64 1/720 (pow.f64 im 6)))
(*.f64 (+.f64 1 (*.f64 1/720 (pow.f64 im 6))) re)
(+.f64 re (*.f64 re (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
(/.f64 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))) 2)
(+.f64 re (*.f64 re (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 1/24 (pow.f64 im 4)))))
(+.f64 re (*.f64 (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 1/720 (pow.f64 im 6))) re))
Outputs
(/.f64 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))) 2)
Calls

3 calls:

6.0ms
im
6.0ms
(sin.f64 re)
6.0ms
re
Results
ErrorSegmentsBranch
0.7b1re
0.7b1im
0.7b1(sin.f64 re)
Compiler

Compiled 90 to 64 computations (28.9% saved)

regimes16.0ms (0%)

Accuracy

Total -60.4b remaining (-6527%)

Threshold costs -60.4b (-6527%)

Counts
6 → 1
Calls
Call 1
Inputs
re
(sin.f64 re)
(*.f64 re (*.f64 1/720 (pow.f64 im 6)))
(*.f64 (+.f64 1 (*.f64 1/720 (pow.f64 im 6))) re)
(+.f64 re (*.f64 re (*.f64 1/2 (pow.f64 im 2))))
(*.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 re 1/2))
Outputs
(sin.f64 re)
Calls

3 calls:

5.0ms
(sin.f64 re)
5.0ms
re
4.0ms
im
Results
ErrorSegmentsBranch
0.9b1re
0.9b1im
0.9b1(sin.f64 re)
Compiler

Compiled 50 to 35 computations (30% saved)

simplify3.0ms (0%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01870
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(/.f64 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))) 2)
(sin.f64 re)
re
Outputs
(*.f64 (*.f64 1/2 (sin.f64 re)) (+.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(/.f64 (*.f64 (sin.f64 re) (+.f64 2 (pow.f64 im 2))) 2)
(sin.f64 re)
re
Compiler

Compiled 32 to 25 computations (21.9% saved)

soundness169.0ms (0.4%)

Algorithm
egg-herbie
Rules
2226×rational.json-simplify-1
1504×rational.json-simplify-35
1374×rational.json-simplify-2
1110×rational.json-simplify-26
942×rational.json-simplify-48
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01435
12235
23335
35035
46435
58535
612935
727135
877335
9219235
10274935
11343235
12536635
13641835
14753335
Stop Event
node limit
Compiler

Compiled 25 to 17 computations (32% saved)

end52.0ms (0.1%)

Compiler

Compiled 26 to 17 computations (34.6% saved)

Profiling

Loading profile data...