Details

Time bar (total: 2.2s)

analyze51.0ms (2.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
50%50%50%0.1%0%0%0%2
50%50%50%0.1%0%0%0%3
75%74.9%25%0.1%0%0%0%4
75%74.9%25%0.1%0%0%0%5
80%74.9%18.7%0.1%6.2%0%0%6
80%74.9%18.7%0.1%6.2%0%0%7
82.8%74.9%15.6%0.1%9.4%0%0%8
82.8%74.9%15.6%0.1%9.4%0%0%9
84.2%74.9%14%0.1%10.9%0%0%10
84.2%74.9%14%0.1%10.9%0%0%11
85%74.9%13.3%0.1%11.7%0%0%12
Compiler

Compiled 8 to 6 computations (25% saved)

sample1.7s (77.5%)

Results
695.0ms6063×body256valid
501.0ms1459×body1024valid
203.0ms698×body1024infinite
145.0ms729×body512valid
67.0ms346×body512infinite
53.0ms434×body256infinite
3.0msbody2048valid
Bogosity

preprocess2.0ms (0.1%)

Algorithm
egg-herbie
Rules
rational.json-simplify-2
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01130
11330
022
Stop Event
saturated
saturated
Calls
Call 1
Inputs
0
1
Outputs
0
1
Call 2
Inputs
(*.f64 (exp.f64 re) (cos.f64 im))
(*.f64 (exp.f64 im) (cos.f64 re))
Outputs
(*.f64 (exp.f64 re) (cos.f64 im))
(*.f64 (exp.f64 im) (cos.f64 re))
Compiler

Compiled 9 to 7 computations (22.2% saved)

simplify4.0ms (0.2%)

Algorithm
egg-herbie
Rules
rational.json-simplify-2
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0815
1915
Stop Event
saturated
Counts
1 → 1
Calls
Call 1
Inputs
(*.f64 (exp.f64 re) (cos.f64 im))
Outputs
(*.f64 (exp.f64 re) (cos.f64 im))

eval0.0ms (0%)

Compiler

Compiled 7 to 5 computations (28.6% saved)

prune1.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New011
Fresh011
Picked000
Done000
Total022
Error
0.0b
Counts
2 → 1
Alt Table
Click to see full alt table
StatusErrorProgram
0.0b
(*.f64 (exp.f64 re) (cos.f64 im))
Compiler

Compiled 7 to 5 computations (28.6% saved)

localize6.0ms (0.3%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(*.f64 (exp.f64 re) (cos.f64 im))
Compiler

Compiled 13 to 5 computations (61.5% saved)

series5.0ms (0.2%)

Counts
1 → 8
Calls

6 calls:

TimeVariablePointExpression
1.0ms
im
@0
(*.f64 (exp.f64 re) (cos.f64 im))
1.0ms
re
@inf
(*.f64 (exp.f64 re) (cos.f64 im))
0.0ms
re
@0
(*.f64 (exp.f64 re) (cos.f64 im))
0.0ms
re
@-inf
(*.f64 (exp.f64 re) (cos.f64 im))
0.0ms
im
@inf
(*.f64 (exp.f64 re) (cos.f64 im))

rewrite5.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
24×bool.json-1
22×rational.json-simplify-2
20×rational.json-1
20×rational.json-2
20×rational.json-simplify-1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0815
13715
26515
36915
Stop Event
saturated
Counts
1 → 2
Calls
Call 1
Inputs
(*.f64 (exp.f64 re) (cos.f64 im))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (exp.f64 re) (cos.f64 im)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (exp.f64 re) (cos.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x or (*.f64 (exp.f64 re) (cos.f64 im)) (*.f64 (exp.f64 re) (cos.f64 im)))))))

simplify11.0ms (0.5%)

Algorithm
egg-herbie
Rules
120×rational.json-simplify-1
76×rational.json-simplify-2
70×rational.json-simplify-33
20×rational.json-simplify-31
12×rational.json-simplify-19
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
045382
184358
2139358
3189358
4215358
5221358
6223358
Stop Event
saturated
Counts
10 → 31
Calls
Call 1
Inputs
(cos.f64 im)
(+.f64 (*.f64 (cos.f64 im) re) (cos.f64 im))
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 im) (pow.f64 re 2))) (+.f64 (*.f64 (cos.f64 im) re) (cos.f64 im)))
(+.f64 (*.f64 1/6 (*.f64 (cos.f64 im) (pow.f64 re 3))) (+.f64 (*.f64 1/2 (*.f64 (cos.f64 im) (pow.f64 re 2))) (+.f64 (*.f64 (cos.f64 im) re) (cos.f64 im))))
(exp.f64 re)
(+.f64 (*.f64 -1/2 (*.f64 (exp.f64 re) (pow.f64 im 2))) (exp.f64 re))
(+.f64 (*.f64 -1/2 (*.f64 (exp.f64 re) (pow.f64 im 2))) (+.f64 (*.f64 1/24 (*.f64 (exp.f64 re) (pow.f64 im 4))) (exp.f64 re)))
(+.f64 (*.f64 -1/2 (*.f64 (exp.f64 re) (pow.f64 im 2))) (+.f64 (*.f64 1/24 (*.f64 (exp.f64 re) (pow.f64 im 4))) (+.f64 (exp.f64 re) (*.f64 -1/720 (*.f64 (exp.f64 re) (pow.f64 im 6))))))
(+.f64 (*.f64 (exp.f64 re) (cos.f64 im)) 0)
(+.f64 0 (*.f64 (exp.f64 re) (cos.f64 im)))
Outputs
(cos.f64 im)
(+.f64 (*.f64 (cos.f64 im) re) (cos.f64 im))
(+.f64 (cos.f64 im) (*.f64 (cos.f64 im) re))
(*.f64 (cos.f64 im) (+.f64 1 re))
(*.f64 (cos.f64 im) (+.f64 re 1))
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 im) (pow.f64 re 2))) (+.f64 (*.f64 (cos.f64 im) re) (cos.f64 im)))
(+.f64 (+.f64 (cos.f64 im) (*.f64 (cos.f64 im) re)) (*.f64 1/2 (*.f64 (cos.f64 im) (pow.f64 re 2))))
(+.f64 (*.f64 (cos.f64 im) (+.f64 1 re)) (*.f64 1/2 (*.f64 (cos.f64 im) (pow.f64 re 2))))
(+.f64 (*.f64 (cos.f64 im) (+.f64 re 1)) (*.f64 1/2 (*.f64 (cos.f64 im) (pow.f64 re 2))))
(+.f64 (*.f64 1/6 (*.f64 (cos.f64 im) (pow.f64 re 3))) (+.f64 (*.f64 1/2 (*.f64 (cos.f64 im) (pow.f64 re 2))) (+.f64 (*.f64 (cos.f64 im) re) (cos.f64 im))))
(+.f64 (+.f64 (+.f64 (cos.f64 im) (*.f64 (cos.f64 im) re)) (*.f64 1/2 (*.f64 (cos.f64 im) (pow.f64 re 2)))) (*.f64 (cos.f64 im) (*.f64 1/6 (pow.f64 re 3))))
(+.f64 (*.f64 (cos.f64 im) (+.f64 1 re)) (+.f64 (*.f64 1/2 (*.f64 (cos.f64 im) (pow.f64 re 2))) (*.f64 (cos.f64 im) (*.f64 1/6 (pow.f64 re 3)))))
(+.f64 (*.f64 (cos.f64 im) (+.f64 re 1)) (+.f64 (*.f64 1/2 (*.f64 (cos.f64 im) (pow.f64 re 2))) (*.f64 (cos.f64 im) (*.f64 1/6 (pow.f64 re 3)))))
(+.f64 (*.f64 (cos.f64 im) re) (+.f64 (*.f64 1/2 (*.f64 (cos.f64 im) (pow.f64 re 2))) (*.f64 (cos.f64 im) (+.f64 1 (*.f64 1/6 (pow.f64 re 3))))))
(+.f64 (*.f64 (cos.f64 im) re) (+.f64 (*.f64 1/2 (*.f64 (cos.f64 im) (pow.f64 re 2))) (*.f64 (cos.f64 im) (+.f64 (*.f64 1/6 (pow.f64 re 3)) 1))))
(exp.f64 re)
(+.f64 (*.f64 -1/2 (*.f64 (exp.f64 re) (pow.f64 im 2))) (exp.f64 re))
(+.f64 (exp.f64 re) (*.f64 -1/2 (*.f64 (exp.f64 re) (pow.f64 im 2))))
(*.f64 (exp.f64 re) (+.f64 1 (*.f64 -1/2 (pow.f64 im 2))))
(*.f64 (exp.f64 re) (+.f64 (*.f64 -1/2 (pow.f64 im 2)) 1))
(+.f64 (*.f64 -1/2 (*.f64 (exp.f64 re) (pow.f64 im 2))) (+.f64 (*.f64 1/24 (*.f64 (exp.f64 re) (pow.f64 im 4))) (exp.f64 re)))
(+.f64 (*.f64 -1/2 (*.f64 (exp.f64 re) (pow.f64 im 2))) (+.f64 (exp.f64 re) (*.f64 (exp.f64 re) (*.f64 1/24 (pow.f64 im 4)))))
(+.f64 (*.f64 -1/2 (*.f64 (exp.f64 re) (pow.f64 im 2))) (*.f64 (exp.f64 re) (+.f64 1 (*.f64 1/24 (pow.f64 im 4)))))
(+.f64 (*.f64 -1/2 (*.f64 (exp.f64 re) (pow.f64 im 2))) (*.f64 (exp.f64 re) (+.f64 (*.f64 1/24 (pow.f64 im 4)) 1)))
(+.f64 (*.f64 -1/2 (*.f64 (exp.f64 re) (pow.f64 im 2))) (+.f64 (*.f64 1/24 (*.f64 (exp.f64 re) (pow.f64 im 4))) (+.f64 (exp.f64 re) (*.f64 -1/720 (*.f64 (exp.f64 re) (pow.f64 im 6))))))
(+.f64 (*.f64 -1/2 (*.f64 (exp.f64 re) (pow.f64 im 2))) (+.f64 (*.f64 (exp.f64 re) (*.f64 1/24 (pow.f64 im 4))) (+.f64 (exp.f64 re) (*.f64 (exp.f64 re) (*.f64 -1/720 (pow.f64 im 6))))))
(+.f64 (*.f64 -1/2 (*.f64 (exp.f64 re) (pow.f64 im 2))) (+.f64 (*.f64 (exp.f64 re) (*.f64 1/24 (pow.f64 im 4))) (*.f64 (exp.f64 re) (+.f64 1 (*.f64 -1/720 (pow.f64 im 6))))))
(+.f64 (*.f64 -1/2 (*.f64 (exp.f64 re) (pow.f64 im 2))) (+.f64 (*.f64 (exp.f64 re) (*.f64 1/24 (pow.f64 im 4))) (*.f64 (exp.f64 re) (+.f64 (*.f64 -1/720 (pow.f64 im 6)) 1))))
(+.f64 (*.f64 (exp.f64 re) (cos.f64 im)) 0)
(+.f64 (*.f64 (cos.f64 im) (exp.f64 re)) 0)
(+.f64 0 (*.f64 (exp.f64 re) (cos.f64 im)))
(+.f64 (*.f64 (cos.f64 im) (exp.f64 re)) 0)

eval7.0ms (0.3%)

Compiler

Compiled 495 to 283 computations (42.8% saved)

prune7.0ms (0.3%)

Pruning

5 alts after pruning (4 fresh and 1 done)

PrunedKeptTotal
New27431
Fresh000
Picked011
Done000
Total27532
Error
0.0b
Counts
32 → 5
Alt Table
Click to see full alt table
StatusErrorProgram
20.3b
(+.f64 (*.f64 (cos.f64 im) re) (cos.f64 im))
0.0b
(*.f64 (exp.f64 re) (cos.f64 im))
20.3b
(*.f64 (cos.f64 im) (+.f64 re 1))
20.7b
(exp.f64 re)
20.4b
(cos.f64 im)
Compiler

Compiled 32 to 22 computations (31.3% saved)

localize3.0ms (0.1%)

Compiler

Compiled 5 to 3 computations (40% saved)

localize2.0ms (0.1%)

Compiler

Compiled 5 to 3 computations (40% saved)

localize7.0ms (0.3%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.1b
(*.f64 (cos.f64 im) (+.f64 re 1))
Compiler

Compiled 16 to 9 computations (43.8% saved)

series2.0ms (0.1%)

Counts
1 → 24
Calls

6 calls:

TimeVariablePointExpression
1.0ms
re
@inf
(*.f64 (cos.f64 im) (+.f64 re 1))
0.0ms
im
@0
(*.f64 (cos.f64 im) (+.f64 re 1))
0.0ms
im
@-inf
(*.f64 (cos.f64 im) (+.f64 re 1))
0.0ms
im
@inf
(*.f64 (cos.f64 im) (+.f64 re 1))
0.0ms
re
@-inf
(*.f64 (cos.f64 im) (+.f64 re 1))

rewrite5.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
24×bool.json-1
22×rational.json-simplify-2
22×rational.json-simplify-1
20×rational.json-1
20×rational.json-2
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0917
14117
26617
37117
Stop Event
saturated
Counts
1 → 2
Calls
Call 1
Inputs
(*.f64 (cos.f64 im) (+.f64 re 1))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 im) (+.f64 re 1)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (cos.f64 im) (+.f64 re 1)))))) (#(struct:change #<rule egg-rr> (2) ((x or (*.f64 (cos.f64 im) (+.f64 re 1)) (*.f64 (cos.f64 im) (+.f64 re 1)))))))

simplify15.0ms (0.7%)

Algorithm
egg-herbie
Rules
232×rational.json-simplify-1
224×rational.json-simplify-33
46×rational.json-simplify-2
12×rational.json-simplify-31
rational.json-simplify-19
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
037570
163552
2111552
3186552
4269552
5323552
6327552
Stop Event
saturated
Counts
26 → 20
Calls
Call 1
Inputs
(+.f64 1 re)
(+.f64 1 (+.f64 re (*.f64 -1/2 (*.f64 (+.f64 1 re) (pow.f64 im 2)))))
(+.f64 (*.f64 1/24 (*.f64 (+.f64 1 re) (pow.f64 im 4))) (+.f64 1 (+.f64 re (*.f64 -1/2 (*.f64 (+.f64 1 re) (pow.f64 im 2))))))
(+.f64 (*.f64 1/24 (*.f64 (+.f64 1 re) (pow.f64 im 4))) (+.f64 (*.f64 -1/720 (*.f64 (+.f64 1 re) (pow.f64 im 6))) (+.f64 1 (+.f64 re (*.f64 -1/2 (*.f64 (+.f64 1 re) (pow.f64 im 2)))))))
(*.f64 (cos.f64 im) (+.f64 1 re))
(*.f64 (cos.f64 im) (+.f64 1 re))
(*.f64 (cos.f64 im) (+.f64 1 re))
(*.f64 (cos.f64 im) (+.f64 1 re))
(*.f64 (+.f64 1 re) (cos.f64 im))
(*.f64 (+.f64 1 re) (cos.f64 im))
(*.f64 (+.f64 1 re) (cos.f64 im))
(*.f64 (+.f64 1 re) (cos.f64 im))
(cos.f64 im)
(+.f64 (*.f64 (cos.f64 im) re) (cos.f64 im))
(+.f64 (*.f64 (cos.f64 im) re) (cos.f64 im))
(+.f64 (*.f64 (cos.f64 im) re) (cos.f64 im))
(*.f64 (cos.f64 im) re)
(+.f64 (*.f64 (cos.f64 im) re) (cos.f64 im))
(+.f64 (*.f64 (cos.f64 im) re) (cos.f64 im))
(+.f64 (*.f64 (cos.f64 im) re) (cos.f64 im))
(*.f64 (cos.f64 im) re)
(+.f64 (*.f64 (cos.f64 im) re) (cos.f64 im))
(+.f64 (*.f64 (cos.f64 im) re) (cos.f64 im))
(+.f64 (*.f64 (cos.f64 im) re) (cos.f64 im))
(+.f64 (*.f64 (cos.f64 im) (+.f64 re 1)) 0)
(+.f64 0 (*.f64 (cos.f64 im) (+.f64 re 1)))
Outputs
(+.f64 1 re)
(+.f64 1 (+.f64 re (*.f64 -1/2 (*.f64 (+.f64 1 re) (pow.f64 im 2)))))
(*.f64 (+.f64 1 re) (+.f64 1 (*.f64 -1/2 (pow.f64 im 2))))
(+.f64 (*.f64 1/24 (*.f64 (+.f64 1 re) (pow.f64 im 4))) (+.f64 1 (+.f64 re (*.f64 -1/2 (*.f64 (+.f64 1 re) (pow.f64 im 2))))))
(+.f64 (+.f64 1 (+.f64 re (*.f64 -1/2 (*.f64 (+.f64 1 re) (pow.f64 im 2))))) (*.f64 1/24 (*.f64 (+.f64 1 re) (pow.f64 im 4))))
(+.f64 (*.f64 (+.f64 1 re) (+.f64 1 (*.f64 -1/2 (pow.f64 im 2)))) (*.f64 1/24 (*.f64 (+.f64 1 re) (pow.f64 im 4))))
(+.f64 (*.f64 -1/2 (*.f64 (+.f64 1 re) (pow.f64 im 2))) (*.f64 (+.f64 1 re) (+.f64 1 (*.f64 1/24 (pow.f64 im 4)))))
(+.f64 (*.f64 1/24 (*.f64 (+.f64 1 re) (pow.f64 im 4))) (+.f64 (*.f64 -1/720 (*.f64 (+.f64 1 re) (pow.f64 im 6))) (+.f64 1 (+.f64 re (*.f64 -1/2 (*.f64 (+.f64 1 re) (pow.f64 im 2)))))))
(+.f64 (+.f64 (*.f64 1/24 (*.f64 (+.f64 1 re) (pow.f64 im 4))) (*.f64 (+.f64 1 re) (*.f64 -1/720 (pow.f64 im 6)))) (+.f64 1 (+.f64 re (*.f64 -1/2 (*.f64 (+.f64 1 re) (pow.f64 im 2))))))
(+.f64 (*.f64 (+.f64 1 re) (+.f64 1 (*.f64 -1/2 (pow.f64 im 2)))) (+.f64 (*.f64 1/24 (*.f64 (+.f64 1 re) (pow.f64 im 4))) (*.f64 (+.f64 1 re) (*.f64 -1/720 (pow.f64 im 6)))))
(+.f64 (*.f64 -1/2 (*.f64 (+.f64 1 re) (pow.f64 im 2))) (+.f64 (*.f64 1/24 (*.f64 (+.f64 1 re) (pow.f64 im 4))) (*.f64 (+.f64 1 re) (+.f64 1 (*.f64 -1/720 (pow.f64 im 6))))))
(*.f64 (cos.f64 im) (+.f64 1 re))
(*.f64 (+.f64 1 re) (cos.f64 im))
(*.f64 (cos.f64 im) (+.f64 1 re))
(*.f64 (+.f64 1 re) (cos.f64 im))
(*.f64 (cos.f64 im) (+.f64 1 re))
(*.f64 (+.f64 1 re) (cos.f64 im))
(*.f64 (cos.f64 im) (+.f64 1 re))
(*.f64 (+.f64 1 re) (cos.f64 im))
(*.f64 (+.f64 1 re) (cos.f64 im))
(*.f64 (+.f64 1 re) (cos.f64 im))
(*.f64 (+.f64 1 re) (cos.f64 im))
(*.f64 (+.f64 1 re) (cos.f64 im))
(cos.f64 im)
(+.f64 (*.f64 (cos.f64 im) re) (cos.f64 im))
(*.f64 (+.f64 1 re) (cos.f64 im))
(+.f64 (*.f64 (cos.f64 im) re) (cos.f64 im))
(*.f64 (+.f64 1 re) (cos.f64 im))
(+.f64 (*.f64 (cos.f64 im) re) (cos.f64 im))
(*.f64 (+.f64 1 re) (cos.f64 im))
(*.f64 (cos.f64 im) re)
(*.f64 re (cos.f64 im))
(+.f64 (*.f64 (cos.f64 im) re) (cos.f64 im))
(*.f64 (+.f64 1 re) (cos.f64 im))
(+.f64 (*.f64 (cos.f64 im) re) (cos.f64 im))
(*.f64 (+.f64 1 re) (cos.f64 im))
(+.f64 (*.f64 (cos.f64 im) re) (cos.f64 im))
(*.f64 (+.f64 1 re) (cos.f64 im))
(*.f64 (cos.f64 im) re)
(*.f64 re (cos.f64 im))
(+.f64 (*.f64 (cos.f64 im) re) (cos.f64 im))
(*.f64 (+.f64 1 re) (cos.f64 im))
(+.f64 (*.f64 (cos.f64 im) re) (cos.f64 im))
(*.f64 (+.f64 1 re) (cos.f64 im))
(+.f64 (*.f64 (cos.f64 im) re) (cos.f64 im))
(*.f64 (+.f64 1 re) (cos.f64 im))
(+.f64 (*.f64 (cos.f64 im) (+.f64 re 1)) 0)
(+.f64 (*.f64 (+.f64 1 re) (cos.f64 im)) 0)
(+.f64 0 (*.f64 (cos.f64 im) (+.f64 re 1)))
(+.f64 (*.f64 (+.f64 1 re) (cos.f64 im)) 0)

localize6.0ms (0.3%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (*.f64 (cos.f64 im) re) (cos.f64 im))
0.1b
(*.f64 (cos.f64 im) re)
Compiler

Compiled 17 to 5 computations (70.6% saved)

series2.0ms (0.1%)

Counts
2 → 11
Calls

12 calls:

TimeVariablePointExpression
0.0ms
re
@0
(*.f64 (cos.f64 im) re)
0.0ms
im
@0
(*.f64 (cos.f64 im) re)
0.0ms
re
@inf
(*.f64 (cos.f64 im) re)
0.0ms
im
@-inf
(*.f64 (cos.f64 im) re)
0.0ms
im
@inf
(*.f64 (cos.f64 im) re)

rewrite6.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
26×rational.json-simplify-1
26×bool.json-1
24×rational.json-simplify-2
22×rational.json-1
22×rational.json-2
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0832
13828
26828
37828
47928
58028
Stop Event
saturated
Counts
2 → 6
Calls
Call 1
Inputs
(*.f64 (cos.f64 im) re)
(+.f64 (*.f64 (cos.f64 im) re) (cos.f64 im))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 im) re) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (cos.f64 im) re))))) (#(struct:change #<rule egg-rr> (2) ((x or (*.f64 (cos.f64 im) re) (*.f64 (cos.f64 im) re))))))
((#(struct:change #<rule egg-rr> (2) ((x *.f64 (cos.f64 im) (+.f64 re 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 im) (+.f64 re 1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (cos.f64 im) (+.f64 re 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 re 1) (cos.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x or (*.f64 (cos.f64 im) (+.f64 re 1)) (*.f64 (cos.f64 im) (+.f64 re 1)))))))

simplify53.0ms (2.4%)

Algorithm
egg-herbie
Rules
1072×rational.json-simplify-31
906×rational.json-simplify-2
296×rational.json-simplify-1
208×rational.json-simplify-33
58×rational.json-simplify-19
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
056497
1114497
2197497
3315497
4421479
5496479
6613479
7868479
81020479
91054479
101062479
111066479
121071479
131258479
141364479
151392479
161392479
171459479
181529479
191567479
Stop Event
saturated
Counts
17 → 40
Calls
Call 1
Inputs
re
(+.f64 (*.f64 -1/2 (*.f64 re (pow.f64 im 2))) re)
(+.f64 (*.f64 -1/2 (*.f64 re (pow.f64 im 2))) (+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) re))
(+.f64 (*.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))) re)))
(+.f64 1 re)
(+.f64 (*.f64 (-.f64 (*.f64 -1/2 re) 1/2) (pow.f64 im 2)) (+.f64 1 re))
(+.f64 (*.f64 (-.f64 (*.f64 -1/2 re) 1/2) (pow.f64 im 2)) (+.f64 1 (+.f64 re (*.f64 (+.f64 (*.f64 1/24 re) 1/24) (pow.f64 im 4)))))
(+.f64 (*.f64 (-.f64 (*.f64 -1/2 re) 1/2) (pow.f64 im 2)) (+.f64 1 (+.f64 (*.f64 (-.f64 (*.f64 -1/720 re) 1/720) (pow.f64 im 6)) (+.f64 re (*.f64 (+.f64 (*.f64 1/24 re) 1/24) (pow.f64 im 4))))))
(cos.f64 im)
(*.f64 (cos.f64 im) re)
(*.f64 (cos.f64 im) re)
(+.f64 (*.f64 (cos.f64 im) re) 0)
(+.f64 0 (*.f64 (cos.f64 im) re))
(*.f64 (cos.f64 im) (+.f64 re 1))
(*.f64 (*.f64 (cos.f64 im) (+.f64 re 1)) 1)
(*.f64 1 (*.f64 (cos.f64 im) (+.f64 re 1)))
(*.f64 (+.f64 re 1) (cos.f64 im))
Outputs
re
(+.f64 (*.f64 -1/2 (*.f64 re (pow.f64 im 2))) re)
(+.f64 re (*.f64 re (*.f64 -1/2 (pow.f64 im 2))))
(+.f64 (*.f64 -1/2 (*.f64 re (pow.f64 im 2))) (+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) re))
(+.f64 (*.f64 re (*.f64 -1/2 (pow.f64 im 2))) (+.f64 re (*.f64 1/24 (*.f64 re (pow.f64 im 4)))))
(+.f64 (*.f64 re (*.f64 -1/2 (pow.f64 im 2))) (+.f64 re (*.f64 (pow.f64 im 4) (*.f64 re 1/24))))
(+.f64 (*.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))) re)))
(+.f64 (*.f64 re (*.f64 -1/2 (pow.f64 im 2))) (+.f64 (*.f64 1/24 (*.f64 re (pow.f64 im 4))) (+.f64 re (*.f64 -1/720 (*.f64 re (pow.f64 im 6))))))
(+.f64 re (+.f64 (*.f64 re (*.f64 -1/2 (pow.f64 im 2))) (+.f64 (*.f64 (pow.f64 im 4) (*.f64 re 1/24)) (*.f64 (pow.f64 im 6) (*.f64 re -1/720)))))
(+.f64 (+.f64 (*.f64 re (*.f64 -1/2 (pow.f64 im 2))) (*.f64 (pow.f64 im 6) (*.f64 re -1/720))) (+.f64 re (*.f64 (pow.f64 im 4) (*.f64 re 1/24))))
(+.f64 (+.f64 re (*.f64 (pow.f64 im 4) (*.f64 re 1/24))) (+.f64 (*.f64 re (*.f64 -1/2 (pow.f64 im 2))) (*.f64 (pow.f64 im 6) (*.f64 re -1/720))))
(+.f64 1 re)
(+.f64 re 1)
(+.f64 (*.f64 (-.f64 (*.f64 -1/2 re) 1/2) (pow.f64 im 2)) (+.f64 1 re))
(+.f64 (*.f64 (pow.f64 im 2) (+.f64 -1/2 (*.f64 re -1/2))) (+.f64 re 1))
(+.f64 (*.f64 (pow.f64 im 2) (*.f64 -1/2 (+.f64 re 1))) (+.f64 re 1))
(+.f64 re (+.f64 1 (*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 re 1)))))
(*.f64 (+.f64 re 1) (+.f64 1 (*.f64 -1/2 (pow.f64 im 2))))
(+.f64 (*.f64 (-.f64 (*.f64 -1/2 re) 1/2) (pow.f64 im 2)) (+.f64 1 (+.f64 re (*.f64 (+.f64 (*.f64 1/24 re) 1/24) (pow.f64 im 4)))))
(+.f64 (*.f64 (pow.f64 im 2) (+.f64 -1/2 (*.f64 re -1/2))) (+.f64 1 (+.f64 re (*.f64 (pow.f64 im 4) (+.f64 1/24 (*.f64 re 1/24))))))
(+.f64 (*.f64 (pow.f64 im 2) (*.f64 -1/2 (+.f64 re 1))) (+.f64 1 (+.f64 re (*.f64 (pow.f64 im 4) (+.f64 1/24 (*.f64 re 1/24))))))
(+.f64 re (+.f64 (*.f64 (pow.f64 im 4) (+.f64 1/24 (*.f64 re 1/24))) (+.f64 1 (*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 re 1))))))
(+.f64 (*.f64 (pow.f64 im 4) (+.f64 1/24 (*.f64 re 1/24))) (*.f64 (+.f64 re 1) (+.f64 1 (*.f64 -1/2 (pow.f64 im 2)))))
(+.f64 (*.f64 (-.f64 (*.f64 -1/2 re) 1/2) (pow.f64 im 2)) (+.f64 1 (+.f64 (*.f64 (-.f64 (*.f64 -1/720 re) 1/720) (pow.f64 im 6)) (+.f64 re (*.f64 (+.f64 (*.f64 1/24 re) 1/24) (pow.f64 im 4))))))
(+.f64 (*.f64 (pow.f64 im 2) (+.f64 -1/2 (*.f64 re -1/2))) (+.f64 1 (+.f64 (+.f64 re (*.f64 (pow.f64 im 4) (+.f64 1/24 (*.f64 re 1/24)))) (*.f64 (pow.f64 im 6) (+.f64 -1/720 (*.f64 re -1/720))))))
(+.f64 (*.f64 (pow.f64 im 2) (*.f64 -1/2 (+.f64 re 1))) (+.f64 1 (+.f64 (+.f64 re (*.f64 (pow.f64 im 4) (+.f64 1/24 (*.f64 re 1/24)))) (*.f64 (pow.f64 im 6) (+.f64 -1/720 (*.f64 re -1/720))))))
(+.f64 1 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 re 1))) (+.f64 re (+.f64 (*.f64 (pow.f64 im 4) (+.f64 1/24 (*.f64 re 1/24))) (*.f64 -1/720 (*.f64 (pow.f64 im 6) (+.f64 re 1)))))))
(+.f64 re (+.f64 (+.f64 1 (*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 re 1)))) (+.f64 (*.f64 (pow.f64 im 4) (+.f64 1/24 (*.f64 re 1/24))) (*.f64 -1/720 (*.f64 (pow.f64 im 6) (+.f64 re 1))))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 im 2) (+.f64 re 1))) (+.f64 (*.f64 (pow.f64 im 4) (+.f64 1/24 (*.f64 re 1/24))) (*.f64 (+.f64 re 1) (+.f64 1 (*.f64 -1/720 (pow.f64 im 6))))))
(cos.f64 im)
(*.f64 (cos.f64 im) re)
(*.f64 re (cos.f64 im))
(*.f64 (cos.f64 im) re)
(*.f64 re (cos.f64 im))
(+.f64 (*.f64 (cos.f64 im) re) 0)
(+.f64 (*.f64 re (cos.f64 im)) 0)
(+.f64 0 (*.f64 (cos.f64 im) re))
(+.f64 (*.f64 re (cos.f64 im)) 0)
(*.f64 (cos.f64 im) (+.f64 re 1))
(*.f64 (*.f64 (cos.f64 im) (+.f64 re 1)) 1)
(*.f64 (cos.f64 im) (*.f64 1 (+.f64 re 1)))
(*.f64 1 (*.f64 (cos.f64 im) (+.f64 re 1)))
(*.f64 1 (*.f64 (cos.f64 im) (+.f64 re 1)))
(*.f64 (cos.f64 im) (*.f64 1 (+.f64 re 1)))
(*.f64 (+.f64 re 1) (cos.f64 im))
(*.f64 (cos.f64 im) (+.f64 re 1))

eval18.0ms (0.8%)

Compiler

Compiled 977 to 696 computations (28.8% saved)

prune9.0ms (0.4%)

Pruning

7 alts after pruning (2 fresh and 5 done)

PrunedKeptTotal
New58260
Fresh000
Picked011
Done044
Total58765
Error
0.0b
Counts
65 → 7
Alt Table
Click to see full alt table
StatusErrorProgram
20.3b
(+.f64 (*.f64 (cos.f64 im) re) (cos.f64 im))
20.5b
(+.f64 re (cos.f64 im))
40.7b
(+.f64 re 1)
0.0b
(*.f64 (exp.f64 re) (cos.f64 im))
20.3b
(*.f64 (cos.f64 im) (+.f64 re 1))
20.7b
(exp.f64 re)
20.4b
(cos.f64 im)
Compiler

Compiled 43 to 30 computations (30.2% saved)

localize3.0ms (0.1%)

Compiler

Compiled 7 to 5 computations (28.6% saved)

localize6.0ms (0.3%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(+.f64 re (cos.f64 im))
Compiler

Compiled 10 to 4 computations (60% saved)

series1.0ms (0%)

Counts
1 → 24
Calls

6 calls:

TimeVariablePointExpression
0.0ms
im
@0
(+.f64 re (cos.f64 im))
0.0ms
re
@0
(+.f64 re (cos.f64 im))
0.0ms
re
@-inf
(+.f64 re (cos.f64 im))
0.0ms
im
@inf
(+.f64 re (cos.f64 im))
0.0ms
im
@-inf
(+.f64 re (cos.f64 im))

rewrite5.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
22×bool.json-1
20×rational.json-simplify-1
18×rational.json-1
18×rational.json-2
18×rational.json-simplify-2
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0711
13311
25911
36311
Stop Event
saturated
Counts
1 → 2
Calls
Call 1
Inputs
(+.f64 re (cos.f64 im))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 re (cos.f64 im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 re (cos.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x or (+.f64 re (cos.f64 im)) (+.f64 re (cos.f64 im)))))))

simplify11.0ms (0.5%)

Algorithm
egg-herbie
Rules
196×rational.json-simplify-1
178×rational.json-simplify-33
rational.json-simplify-2
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
033364
154364
285364
3142364
4210364
5238364
6239364
Stop Event
saturated
Counts
26 → 18
Calls
Call 1
Inputs
(cos.f64 im)
(+.f64 (cos.f64 im) re)
(+.f64 (cos.f64 im) re)
(+.f64 (cos.f64 im) re)
re
(+.f64 (cos.f64 im) re)
(+.f64 (cos.f64 im) re)
(+.f64 (cos.f64 im) re)
re
(+.f64 (cos.f64 im) re)
(+.f64 (cos.f64 im) re)
(+.f64 (cos.f64 im) re)
(+.f64 1 re)
(+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 im 2)) re))
(+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) re)))
(+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 re (*.f64 -1/720 (pow.f64 im 6))))))
(+.f64 (cos.f64 im) re)
(+.f64 (cos.f64 im) re)
(+.f64 (cos.f64 im) re)
(+.f64 (cos.f64 im) re)
(+.f64 (cos.f64 im) re)
(+.f64 (cos.f64 im) re)
(+.f64 (cos.f64 im) re)
(+.f64 (cos.f64 im) re)
(*.f64 (+.f64 re (cos.f64 im)) 1)
(*.f64 1 (+.f64 re (cos.f64 im)))
Outputs
(cos.f64 im)
(+.f64 (cos.f64 im) re)
(+.f64 (cos.f64 im) re)
(+.f64 (cos.f64 im) re)
re
(+.f64 (cos.f64 im) re)
(+.f64 (cos.f64 im) re)
(+.f64 (cos.f64 im) re)
re
(+.f64 (cos.f64 im) re)
(+.f64 (cos.f64 im) re)
(+.f64 (cos.f64 im) re)
(+.f64 1 re)
(+.f64 re 1)
(+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 im 2)) re))
(+.f64 1 (+.f64 re (*.f64 -1/2 (pow.f64 im 2))))
(+.f64 re (+.f64 1 (*.f64 -1/2 (pow.f64 im 2))))
(+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) re)))
(+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 im 2)) (+.f64 re (*.f64 1/24 (pow.f64 im 4)))))
(+.f64 re (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 1 (*.f64 -1/2 (pow.f64 im 2)))))
(+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 im 2)) (+.f64 (*.f64 1/24 (pow.f64 im 4)) (+.f64 re (*.f64 -1/720 (pow.f64 im 6))))))
(+.f64 (+.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 im 2))) (*.f64 1/24 (pow.f64 im 4))) (+.f64 re (*.f64 -1/720 (pow.f64 im 6))))
(+.f64 (+.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 im 2))) (*.f64 -1/720 (pow.f64 im 6))) (+.f64 re (*.f64 1/24 (pow.f64 im 4))))
(+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 im 2)) (+.f64 re (+.f64 (*.f64 1/24 (pow.f64 im 4)) (*.f64 -1/720 (pow.f64 im 6))))))
(+.f64 (cos.f64 im) re)
(+.f64 (cos.f64 im) re)
(+.f64 (cos.f64 im) re)
(+.f64 (cos.f64 im) re)
(+.f64 (cos.f64 im) re)
(+.f64 (cos.f64 im) re)
(+.f64 (cos.f64 im) re)
(+.f64 (cos.f64 im) re)
(*.f64 (+.f64 re (cos.f64 im)) 1)
(*.f64 1 (+.f64 (cos.f64 im) re))
(*.f64 1 (+.f64 re (cos.f64 im)))
(*.f64 1 (+.f64 (cos.f64 im) re))

eval4.0ms (0.2%)

Compiler

Compiled 189 to 140 computations (25.9% saved)

prune6.0ms (0.3%)

Pruning

8 alts after pruning (1 fresh and 7 done)

PrunedKeptTotal
New17118
Fresh000
Picked011
Done066
Total17825
Error
0.0b
Counts
25 → 8
Alt Table
Click to see full alt table
StatusErrorProgram
20.3b
(+.f64 (*.f64 (cos.f64 im) re) (cos.f64 im))
20.5b
(+.f64 re (cos.f64 im))
40.7b
(+.f64 re 1)
0.0b
(*.f64 (exp.f64 re) (cos.f64 im))
20.3b
(*.f64 (cos.f64 im) (+.f64 re 1))
20.7b
(exp.f64 re)
20.4b
(cos.f64 im)
61.9b
re
Compiler

Compiled 46 to 32 computations (30.4% saved)

eval0.0ms (0%)

Compiler

Compiled 2 to 2 computations (0% saved)

prune3.0ms (0.1%)

Pruning

8 alts after pruning (1 fresh and 7 done)

PrunedKeptTotal
New000
Fresh011
Picked000
Done077
Total088
Error
0.0b
Counts
8 → 8
Alt Table
Click to see full alt table
StatusErrorProgram
20.3b
(+.f64 (*.f64 (cos.f64 im) re) (cos.f64 im))
20.5b
(+.f64 re (cos.f64 im))
40.7b
(+.f64 re 1)
0.0b
(*.f64 (exp.f64 re) (cos.f64 im))
20.3b
(*.f64 (cos.f64 im) (+.f64 re 1))
20.7b
(exp.f64 re)
20.4b
(cos.f64 im)
61.9b
re
Compiler

Compiled 46 to 32 computations (30.4% saved)

regimes23.0ms (1%)

Counts
8 → 1
Calls
Call 1
Inputs
re
(+.f64 re 1)
(cos.f64 im)
(exp.f64 re)
(+.f64 re (cos.f64 im))
(*.f64 (cos.f64 im) (+.f64 re 1))
(*.f64 (exp.f64 re) (cos.f64 im))
(+.f64 (*.f64 (cos.f64 im) re) (cos.f64 im))
Outputs
(*.f64 (exp.f64 re) (cos.f64 im))
Calls

5 calls:

6.0ms
im
5.0ms
re
5.0ms
(cos.f64 im)
4.0ms
(*.f64 (exp.f64 re) (cos.f64 im))
2.0ms
(exp.f64 re)
Results
ErrorSegmentsBranch
0.0b1re
0.0b1im
0.0b1(*.f64 (exp.f64 re) (cos.f64 im))
0.0b1(exp.f64 re)
0.0b1(cos.f64 im)
Compiler

Compiled 53 to 28 computations (47.2% saved)

regimes52.0ms (2.4%)

Counts
6 → 2
Calls
Call 1
Inputs
re
(+.f64 re 1)
(cos.f64 im)
(exp.f64 re)
(+.f64 re (cos.f64 im))
(*.f64 (cos.f64 im) (+.f64 re 1))
Outputs
(exp.f64 re)
(*.f64 (cos.f64 im) (+.f64 re 1))
Calls

4 calls:

22.0ms
im
16.0ms
(cos.f64 im)
10.0ms
re
3.0ms
(exp.f64 re)
Results
ErrorSegmentsBranch
0.3b2re
7.9b5im
0.3b2(exp.f64 re)
8.6b4(cos.f64 im)
Compiler

Compiled 34 to 20 computations (41.2% saved)

bsearch0.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
2.3764553290949155e-66
0.9999999928319746
Compiler

Compiled 12 to 9 computations (25% saved)

regimes47.0ms (2.1%)

Counts
5 → 2
Calls
Call 1
Inputs
re
(+.f64 re 1)
(cos.f64 im)
(exp.f64 re)
(+.f64 re (cos.f64 im))
Outputs
(exp.f64 re)
(+.f64 re (cos.f64 im))
Calls

4 calls:

21.0ms
im
14.0ms
(cos.f64 im)
8.0ms
re
3.0ms
(exp.f64 re)
Results
ErrorSegmentsBranch
0.4b2re
8.0b5im
0.4b2(exp.f64 re)
8.8b4(cos.f64 im)
Compiler

Compiled 28 to 17 computations (39.3% saved)

bsearch0.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.0
2.3764553290949155e-66
Compiler

Compiled 12 to 9 computations (25% saved)

regimes43.0ms (2%)

Counts
4 → 2
Calls
Call 1
Inputs
re
(+.f64 re 1)
(cos.f64 im)
(exp.f64 re)
Outputs
(exp.f64 re)
(cos.f64 im)
Calls

4 calls:

19.0ms
im
14.0ms
(cos.f64 im)
7.0ms
re
3.0ms
(exp.f64 re)
Results
ErrorSegmentsBranch
0.6b2re
8.1b5im
0.6b2(exp.f64 re)
8.8b4(cos.f64 im)
Compiler

Compiled 24 to 16 computations (33.3% saved)

bsearch0.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.0
2.3764553290949155e-66
Compiler

Compiled 12 to 9 computations (25% saved)

regimes13.0ms (0.6%)

Counts
3 → 1
Calls
Call 1
Inputs
re
(+.f64 re 1)
(cos.f64 im)
Outputs
(cos.f64 im)
Calls

3 calls:

6.0ms
(cos.f64 im)
3.0ms
im
3.0ms
re
Results
ErrorSegmentsBranch
20.4b1re
20.4b1im
20.4b1(cos.f64 im)
Compiler

Compiled 18 to 12 computations (33.3% saved)

regimes7.0ms (0.3%)

Accuracy

Total -21.4b remaining (-52.5%)

Threshold costs -21.4b (-52.5%)

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

2 calls:

3.0ms
im
3.0ms
re
Results
ErrorSegmentsBranch
40.7b1re
40.7b1im
Compiler

Compiled 12 to 8 computations (33.3% saved)

simplify4.0ms (0.2%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
022115
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(*.f64 (exp.f64 re) (cos.f64 im))
(if (<=.f64 (exp.f64 re) 3794275180128377/948568795032094272909893509191171341133987714380927500611236528192824358010355712) (exp.f64 re) (*.f64 (cos.f64 im) (+.f64 re 1)))
(if (<=.f64 (exp.f64 re) 0) (exp.f64 re) (+.f64 re (cos.f64 im)))
(if (<=.f64 (exp.f64 re) 0) (exp.f64 re) (cos.f64 im))
(cos.f64 im)
(+.f64 re 1)
re
Outputs
(*.f64 (exp.f64 re) (cos.f64 im))
(if (<=.f64 (exp.f64 re) 3794275180128377/948568795032094272909893509191171341133987714380927500611236528192824358010355712) (exp.f64 re) (*.f64 (cos.f64 im) (+.f64 re 1)))
(if (<=.f64 (exp.f64 re) 0) (exp.f64 re) (+.f64 re (cos.f64 im)))
(if (<=.f64 (exp.f64 re) 0) (exp.f64 re) (cos.f64 im))
(cos.f64 im)
(+.f64 re 1)
re
Compiler

Compiled 58 to 39 computations (32.8% saved)

soundness0.0ms (0%)

end35.0ms (1.6%)

Compiler

Compiled 46 to 20 computations (56.5% saved)

Profiling

Loading profile data...