Details

Time bar (total: 6.1s)

analyze199.0ms (3.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
0%0%99.9%0.1%0%0%0%5
0%0%99.9%0.1%0%0%0%6
33.3%25%49.9%0.1%0%25%0%7
33.3%25%49.9%0.1%0%25%0%8
33.3%25%49.9%0.1%0%25%0%9
60%37.4%25%0.1%0%37.4%0%10
60%37.4%25%0.1%0%37.4%0%11
60%37.4%25%0.1%0%37.4%0%12
Compiler

Compiled 32 to 21 computations (34.4% saved)

sample2.0s (32.3%)

Results
1.6s8256×body256valid
355.0ms2011×body256invalid
Bogosity

preprocess97.0ms (1.6%)

Algorithm
egg-herbie
Rules
801×cube-prod_binary64
752×fma-neg_binary64
678×unswap-sqr_binary64
403×fma-def_binary64
341×associate-/l*_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
05080
113776
222748
332936
440736
599336
6243536
7350136
8410636
9421336
10441536
11493036
12681136
033
Stop Event
saturated
node limit
Calls
Call 1
Inputs
0
1
2
Outputs
0
1
2
Call 2
Inputs
(/.f64 (-.f64 (*.f64 (atan2.f64 im re) (log.f64 base)) (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) 0)) (+.f64 (*.f64 (log.f64 base) (log.f64 base)) (*.f64 0 0)))
(/.f64 (-.f64 (*.f64 (atan2.f64 re im) (log.f64 base)) (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 im im) (*.f64 re re)))) 0)) (+.f64 (*.f64 (log.f64 base) (log.f64 base)) (*.f64 0 0)))
(/.f64 (-.f64 (*.f64 (atan2.f64 im base) (log.f64 re)) (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 base base) (*.f64 im im)))) 0)) (+.f64 (*.f64 (log.f64 re) (log.f64 re)) (*.f64 0 0)))
(/.f64 (-.f64 (*.f64 (atan2.f64 base re) (log.f64 im)) (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 base base)))) 0)) (+.f64 (*.f64 (log.f64 im) (log.f64 im)) (*.f64 0 0)))
Outputs
(/.f64 (-.f64 (*.f64 (atan2.f64 im re) (log.f64 base)) (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) 0)) (+.f64 (*.f64 (log.f64 base) (log.f64 base)) (*.f64 0 0)))
(/.f64 (fma.f64 (atan2.f64 im re) (log.f64 base) 0) (*.f64 (log.f64 base) (log.f64 base)))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (/.f64 (log.f64 base) (log.f64 base)))
(/.f64 (/.f64 (atan2.f64 im re) 1) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (-.f64 (*.f64 (atan2.f64 re im) (log.f64 base)) (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 im im) (*.f64 re re)))) 0)) (+.f64 (*.f64 (log.f64 base) (log.f64 base)) (*.f64 0 0)))
(/.f64 (fma.f64 (atan2.f64 re im) (log.f64 base) 0) (*.f64 (log.f64 base) (log.f64 base)))
(*.f64 (/.f64 (log.f64 base) (log.f64 base)) (/.f64 (atan2.f64 re im) (log.f64 base)))
(*.f64 1 (/.f64 (atan2.f64 re im) (log.f64 base)))
(/.f64 (atan2.f64 re im) (log.f64 base))
(/.f64 (-.f64 (*.f64 (atan2.f64 im base) (log.f64 re)) (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 base base) (*.f64 im im)))) 0)) (+.f64 (*.f64 (log.f64 re) (log.f64 re)) (*.f64 0 0)))
(/.f64 (fma.f64 (atan2.f64 im base) (log.f64 re) 0) (*.f64 (log.f64 re) (log.f64 re)))
(/.f64 (atan2.f64 im base) (/.f64 (*.f64 (log.f64 re) (log.f64 re)) (log.f64 re)))
(/.f64 (atan2.f64 im base) (/.f64 (log.f64 re) 1))
(/.f64 (atan2.f64 im base) (log.f64 re))
(/.f64 (-.f64 (*.f64 (atan2.f64 base re) (log.f64 im)) (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 base base)))) 0)) (+.f64 (*.f64 (log.f64 im) (log.f64 im)) (*.f64 0 0)))
(/.f64 (fma.f64 (atan2.f64 base re) (log.f64 im) 0) (*.f64 (log.f64 im) (log.f64 im)))
(/.f64 (atan2.f64 base re) (/.f64 (*.f64 (log.f64 im) (log.f64 im)) (log.f64 im)))
(/.f64 (atan2.f64 base re) (/.f64 (log.f64 im) 1))
(/.f64 (atan2.f64 base re) (log.f64 im))
Compiler

Compiled 34 to 23 computations (32.4% saved)

simplify55.0ms (0.9%)

Algorithm
egg-herbie
Rules
877×fma-def_binary64
692×fma-neg_binary64
640×cube-prod_binary64
454×associate-/l*_binary64
447×sqr-pow_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01920
14119
26812
3949
41159
52739
610679
724959
835459
953049
1059099
1169949
Stop Event
node limit
Counts
1 → 5
Calls
Call 1
Inputs
(/.f64 (-.f64 (*.f64 (atan2.f64 im re) (log.f64 base)) (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) 0)) (+.f64 (*.f64 (log.f64 base) (log.f64 base)) (*.f64 0 0)))
Outputs
(/.f64 (-.f64 (*.f64 (atan2.f64 im re) (log.f64 base)) (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) 0)) (+.f64 (*.f64 (log.f64 base) (log.f64 base)) (*.f64 0 0)))
(/.f64 (fma.f64 (atan2.f64 im re) (log.f64 base) 0) (*.f64 (log.f64 base) (log.f64 base)))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (/.f64 (log.f64 base) (log.f64 base)))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1)
(/.f64 (atan2.f64 im re) (log.f64 base))

eval1.0ms (0%)

Compiler

Compiled 70 to 28 computations (60% saved)

prune2.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New325
Fresh101
Picked000
Done000
Total426
Error
0.2b
Counts
6 → 2
Alt Table
Click to see full alt table
StatusErrorProgram
0.4b
(/.f64 (fma.f64 (atan2.f64 im re) (log.f64 base) 0) (*.f64 (log.f64 base) (log.f64 base)))
0.3b
(/.f64 (atan2.f64 im re) (log.f64 base))
Compiler

Compiled 25 to 15 computations (40% saved)

localize8.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.3b
(/.f64 (atan2.f64 im re) (log.f64 base))
Compiler

Compiled 17 to 6 computations (64.7% saved)

series87.0ms (1.4%)

Counts
1 → 8
Calls

9 calls:

TimeVariablePointExpression
44.0ms
im
@0
(/.f64 (atan2.f64 im re) (log.f64 base))
17.0ms
base
@0
(/.f64 (atan2.f64 im re) (log.f64 base))
10.0ms
base
@-inf
(/.f64 (atan2.f64 im re) (log.f64 base))
8.0ms
re
@0
(/.f64 (atan2.f64 im re) (log.f64 base))
6.0ms
base
@inf
(/.f64 (atan2.f64 im re) (log.f64 base))

rewrite43.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
702×pow1_binary64
643×add-log-exp_binary64
643×log1p-expm1-u_binary64
643×expm1-log1p-u_binary64
628×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
079
11399
217349
Stop Event
node limit
Counts
1 → 31
Calls
Call 1
Inputs
(/.f64 (atan2.f64 im re) (log.f64 base))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (/.f64 (atan2.f64 im re) (log.f64 base))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (atan2.f64 im re) (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) (*.f64 (cbrt.f64 (atan2.f64 im re)) (/.f64 1 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (atan2.f64 im re)) (*.f64 (sqrt.f64 (atan2.f64 im re)) (/.f64 1 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (atan2.f64 im re)) (/.f64 1 (neg.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (log.f64 base)) (atan2.f64 im re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) 1) (/.f64 (cbrt.f64 (atan2.f64 im re)) (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (atan2.f64 im re)) 1) (/.f64 (sqrt.f64 (atan2.f64 im re)) (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 (log.f64 base)) 2)) (/.f64 (atan2.f64 im re) (cbrt.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) (pow.f64 (cbrt.f64 (log.f64 base)) 2)) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (atan2.f64 im re)) (pow.f64 (cbrt.f64 (log.f64 base)) 2)) (/.f64 (sqrt.f64 (atan2.f64 im re)) (cbrt.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (log.f64 base))) (/.f64 (atan2.f64 im re) (sqrt.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) (sqrt.f64 (log.f64 base))) (/.f64 (cbrt.f64 (atan2.f64 im re)) (sqrt.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (atan2.f64 im re) (neg.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))))

simplify42.0ms (0.7%)

Algorithm
egg-herbie
Rules
788×log-prod_binary64
470×associate-*l*_binary64
416×associate-*r*_binary64
357×fma-def_binary64
356×log-div_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
093566
1217424
2674424
34627424
Stop Event
node limit
Counts
39 → 41
Calls
Call 1
Inputs
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(-.f64 (+.f64 1 (/.f64 (atan2.f64 im re) (log.f64 base))) 1)
(*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base)))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1)
(*.f64 1 (/.f64 (atan2.f64 im re) (log.f64 base)))
(*.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(*.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) (*.f64 (cbrt.f64 (atan2.f64 im re)) (/.f64 1 (log.f64 base))))
(*.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(*.f64 (sqrt.f64 (atan2.f64 im re)) (*.f64 (sqrt.f64 (atan2.f64 im re)) (/.f64 1 (log.f64 base))))
(*.f64 (neg.f64 (atan2.f64 im re)) (/.f64 1 (neg.f64 (log.f64 base))))
(*.f64 (/.f64 1 (log.f64 base)) (atan2.f64 im re))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) 1) (/.f64 (cbrt.f64 (atan2.f64 im re)) (log.f64 base)))
(*.f64 (/.f64 (sqrt.f64 (atan2.f64 im re)) 1) (/.f64 (sqrt.f64 (atan2.f64 im re)) (log.f64 base)))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (log.f64 base)) 2)) (/.f64 (atan2.f64 im re) (cbrt.f64 (log.f64 base))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) (pow.f64 (cbrt.f64 (log.f64 base)) 2)) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(*.f64 (/.f64 (sqrt.f64 (atan2.f64 im re)) (pow.f64 (cbrt.f64 (log.f64 base)) 2)) (/.f64 (sqrt.f64 (atan2.f64 im re)) (cbrt.f64 (log.f64 base))))
(*.f64 (/.f64 1 (sqrt.f64 (log.f64 base))) (/.f64 (atan2.f64 im re) (sqrt.f64 (log.f64 base))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) (sqrt.f64 (log.f64 base))) (/.f64 (cbrt.f64 (atan2.f64 im re)) (sqrt.f64 (log.f64 base))))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1)
(pow.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3) 1/3)
(pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 3)
(pow.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2)
(pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -1)
(neg.f64 (/.f64 (atan2.f64 im re) (neg.f64 (log.f64 base))))
(sqrt.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2))
(log.f64 (exp.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(cbrt.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3))
(cbrt.f64 (/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3)))
(expm1.f64 (log1p.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(log1p.f64 (expm1.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(exp.f64 (log.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
Outputs
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(/.f64 (neg.f64 (atan2.f64 im re)) (neg.f64 (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(/.f64 (neg.f64 (atan2.f64 im re)) (neg.f64 (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(/.f64 (neg.f64 (atan2.f64 im re)) (neg.f64 (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(/.f64 (neg.f64 (atan2.f64 im re)) (neg.f64 (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))))
(-.f64 (+.f64 1 (/.f64 (atan2.f64 im re) (log.f64 base))) 1)
(/.f64 (neg.f64 (atan2.f64 im re)) (neg.f64 (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base)))
(/.f64 (neg.f64 (atan2.f64 im re)) (neg.f64 (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1)
(/.f64 (neg.f64 (atan2.f64 im re)) (neg.f64 (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 1 (/.f64 (atan2.f64 im re) (log.f64 base)))
(/.f64 (neg.f64 (atan2.f64 im re)) (neg.f64 (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2))
(/.f64 (neg.f64 (atan2.f64 im re)) (neg.f64 (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 (neg.f64 (atan2.f64 im re)) (neg.f64 (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) (*.f64 (cbrt.f64 (atan2.f64 im re)) (/.f64 1 (log.f64 base))))
(/.f64 (neg.f64 (atan2.f64 im re)) (neg.f64 (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 (neg.f64 (atan2.f64 im re)) (neg.f64 (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (sqrt.f64 (atan2.f64 im re)) (*.f64 (sqrt.f64 (atan2.f64 im re)) (/.f64 1 (log.f64 base))))
(/.f64 (neg.f64 (atan2.f64 im re)) (neg.f64 (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (neg.f64 (atan2.f64 im re)) (/.f64 1 (neg.f64 (log.f64 base))))
(/.f64 (neg.f64 (atan2.f64 im re)) (neg.f64 (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 1 (log.f64 base)) (atan2.f64 im re))
(/.f64 (neg.f64 (atan2.f64 im re)) (neg.f64 (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) 1) (/.f64 (cbrt.f64 (atan2.f64 im re)) (log.f64 base)))
(/.f64 (neg.f64 (atan2.f64 im re)) (neg.f64 (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (sqrt.f64 (atan2.f64 im re)) 1) (/.f64 (sqrt.f64 (atan2.f64 im re)) (log.f64 base)))
(/.f64 (neg.f64 (atan2.f64 im re)) (neg.f64 (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (log.f64 base)) 2)) (/.f64 (atan2.f64 im re) (cbrt.f64 (log.f64 base))))
(/.f64 (neg.f64 (atan2.f64 im re)) (neg.f64 (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) (pow.f64 (cbrt.f64 (log.f64 base)) 2)) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(*.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (/.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) (pow.f64 (cbrt.f64 (log.f64 base)) 2)))
(/.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) (/.f64 (pow.f64 (cbrt.f64 (log.f64 base)) 2) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))
(*.f64 (/.f64 (sqrt.f64 (atan2.f64 im re)) (pow.f64 (cbrt.f64 (log.f64 base)) 2)) (/.f64 (sqrt.f64 (atan2.f64 im re)) (cbrt.f64 (log.f64 base))))
(/.f64 (neg.f64 (atan2.f64 im re)) (neg.f64 (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 1 (sqrt.f64 (log.f64 base))) (/.f64 (atan2.f64 im re) (sqrt.f64 (log.f64 base))))
(/.f64 (/.f64 (atan2.f64 im re) (sqrt.f64 (log.f64 base))) (sqrt.f64 (log.f64 base)))
(/.f64 (atan2.f64 im re) (*.f64 (sqrt.f64 (log.f64 base)) (sqrt.f64 (log.f64 base))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) (sqrt.f64 (log.f64 base))) (/.f64 (cbrt.f64 (atan2.f64 im re)) (sqrt.f64 (log.f64 base))))
(*.f64 (/.f64 1 (sqrt.f64 (log.f64 base))) (/.f64 (atan2.f64 im re) (sqrt.f64 (log.f64 base))))
(/.f64 (/.f64 (atan2.f64 im re) (sqrt.f64 (log.f64 base))) (sqrt.f64 (log.f64 base)))
(/.f64 (atan2.f64 im re) (*.f64 (sqrt.f64 (log.f64 base)) (sqrt.f64 (log.f64 base))))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1)
(/.f64 (neg.f64 (atan2.f64 im re)) (neg.f64 (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(pow.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3) 1/3)
(/.f64 (neg.f64 (atan2.f64 im re)) (neg.f64 (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 3)
(/.f64 (neg.f64 (atan2.f64 im re)) (neg.f64 (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(pow.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2)
(/.f64 (neg.f64 (atan2.f64 im re)) (neg.f64 (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -1)
(/.f64 (neg.f64 (atan2.f64 im re)) (neg.f64 (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(neg.f64 (/.f64 (atan2.f64 im re) (neg.f64 (log.f64 base))))
(/.f64 (neg.f64 (atan2.f64 im re)) (neg.f64 (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(sqrt.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2))
(/.f64 (neg.f64 (atan2.f64 im re)) (neg.f64 (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(log.f64 (exp.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 (neg.f64 (atan2.f64 im re)) (neg.f64 (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(cbrt.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3))
(/.f64 (neg.f64 (atan2.f64 im re)) (neg.f64 (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(cbrt.f64 (/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3)))
(/.f64 (neg.f64 (atan2.f64 im re)) (neg.f64 (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(expm1.f64 (log1p.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 (neg.f64 (atan2.f64 im re)) (neg.f64 (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(log1p.f64 (expm1.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 (neg.f64 (atan2.f64 im re)) (neg.f64 (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(exp.f64 (log.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 (neg.f64 (atan2.f64 im re)) (neg.f64 (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))

localize13.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.3b
(/.f64 (fma.f64 (atan2.f64 im re) (log.f64 base) 0) (*.f64 (log.f64 base) (log.f64 base)))
0.3b
(fma.f64 (atan2.f64 im re) (log.f64 base) 0)
0.5b
(*.f64 (log.f64 base) (log.f64 base))
Compiler

Compiled 37 to 12 computations (67.6% saved)

series14.0ms (0.2%)

Counts
3 → 84
Calls

21 calls:

TimeVariablePointExpression
4.0ms
im
@0
(fma.f64 (atan2.f64 im re) (log.f64 base) 0)
1.0ms
im
@0
(/.f64 (fma.f64 (atan2.f64 im re) (log.f64 base) 0) (*.f64 (log.f64 base) (log.f64 base)))
1.0ms
im
@inf
(/.f64 (fma.f64 (atan2.f64 im re) (log.f64 base) 0) (*.f64 (log.f64 base) (log.f64 base)))
1.0ms
base
@-inf
(/.f64 (fma.f64 (atan2.f64 im re) (log.f64 base) 0) (*.f64 (log.f64 base) (log.f64 base)))
1.0ms
base
@inf
(/.f64 (fma.f64 (atan2.f64 im re) (log.f64 base) 0) (*.f64 (log.f64 base) (log.f64 base)))

rewrite66.0ms (1.1%)

Algorithm
batch-egg-rewrite
Rules
927×pow1_binary64
853×add-log-exp_binary64
852×log1p-expm1-u_binary64
852×expm1-log1p-u_binary64
831×add-exp-log_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01034
119732
2243632
Stop Event
node limit
Counts
3 → 71
Calls
Call 1
Inputs
(*.f64 (log.f64 base) (log.f64 base))
(fma.f64 (atan2.f64 im re) (log.f64 base) 0)
(/.f64 (fma.f64 (atan2.f64 im re) (log.f64 base) 0) (*.f64 (log.f64 base) (log.f64 base)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (pow.f64 (log.f64 base) 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (log.f64 base) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (log.f64 base) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (pow.f64 (log.f64 base) 2) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cbrt.f64 (log.f64 base)) 2) 3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (log.f64 base) 4))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 base (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (pow.f64 (log.f64 base) 2) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (log.f64 base) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (log.f64 base) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (pow.f64 (log.f64 base) 2)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (log.f64 base) (atan2.f64 im re)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 (log.f64 base) (atan2.f64 im re))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (log.f64 base) (atan2.f64 im re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (atan2.f64 im re) (log.f64 base))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (log.f64 base) (atan2.f64 im re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (pow.f64 (cbrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) 2) (cbrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) (*.f64 (cbrt.f64 (atan2.f64 im re)) (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (atan2.f64 im re)) (*.f64 (sqrt.f64 (atan2.f64 im re)) (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (atan2.f64 im re)) (sqrt.f64 (log.f64 base))) (*.f64 (sqrt.f64 (atan2.f64 im re)) (sqrt.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (atan2.f64 im re) (pow.f64 (cbrt.f64 (log.f64 base)) 2)) (cbrt.f64 (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (atan2.f64 im re) (sqrt.f64 (log.f64 base))) (sqrt.f64 (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) 3) 0) (+.f64 (pow.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) 2) (-.f64 0 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) 0))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) 2) 0) (-.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) 0))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (*.f64 (log.f64 base) (atan2.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (log.f64 base) (atan2.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (log.f64 base) (atan2.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (log.f64 base) (atan2.f64 im re))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) 2) (*.f64 (cbrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (pow.f64 (log.f64 base) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2))) (pow.f64 (cbrt.f64 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2))) 2) (cbrt.f64 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (*.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (pow.f64 (log.f64 base) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (log.f64 base)) (/.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (/.f64 1 (neg.f64 (pow.f64 (log.f64 base) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (log.f64 base) -2) (*.f64 (log.f64 base) (atan2.f64 im re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (log.f64 base)) (/.f64 1 (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) 2) 1) (/.f64 (cbrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (pow.f64 (log.f64 base) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) 1) (/.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (pow.f64 (log.f64 base) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (log.f64 base)) (/.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) 2) (log.f64 base)) (/.f64 (cbrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cbrt.f64 (pow.f64 (log.f64 base) 4))) (/.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (cbrt.f64 (log.f64 base)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) 2) (cbrt.f64 (pow.f64 (log.f64 base) 4))) (cbrt.f64 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (cbrt.f64 (pow.f64 (log.f64 base) 4))) (/.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (pow.f64 (cbrt.f64 (log.f64 base)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (log.f64 base)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (log.f64 base) 2) (*.f64 (log.f64 base) (atan2.f64 im re))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (neg.f64 (pow.f64 (log.f64 base) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (/.f64 (pow.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) 2) (pow.f64 (log.f64 base) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (pow.f64 (log.f64 base) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) 3) (pow.f64 (pow.f64 (log.f64 base) 2) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2))))))))

simplify68.0ms (1.1%)

Algorithm
egg-herbie
Rules
546×fma-neg_binary64
342×log-prod_binary64
309×*-commutative_binary64
281×log-div_binary64
228×distribute-rgt-in_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01711541
14321501
220311492
374691492
Stop Event
node limit
Counts
155 → 91
Calls
Call 1
Inputs
(pow.f64 (log.f64 base) 2)
(pow.f64 (log.f64 base) 2)
(pow.f64 (log.f64 base) 2)
(pow.f64 (log.f64 base) 2)
(pow.f64 (log.f64 (/.f64 1 base)) 2)
(pow.f64 (log.f64 (/.f64 1 base)) 2)
(pow.f64 (log.f64 (/.f64 1 base)) 2)
(pow.f64 (log.f64 (/.f64 1 base)) 2)
(pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) 2)
(pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) 2)
(pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) 2)
(pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) 2)
(*.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 base)) (atan2.f64 im re)))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 base)) (atan2.f64 im re)))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 base)) (atan2.f64 im re)))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 base)) (atan2.f64 im re)))
(*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) (atan2.f64 im re))
(*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) (atan2.f64 im re))
(*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) (atan2.f64 im re))
(*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) (atan2.f64 im re))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(-.f64 (+.f64 1 (pow.f64 (log.f64 base) 2)) 1)
(pow.f64 (log.f64 base) 2)
(pow.f64 (pow.f64 (log.f64 base) 2) 1)
(pow.f64 (pow.f64 (pow.f64 (log.f64 base) 2) 3) 1/3)
(pow.f64 (pow.f64 (cbrt.f64 (log.f64 base)) 2) 3)
(sqrt.f64 (pow.f64 (log.f64 base) 4))
(log.f64 (pow.f64 base (log.f64 base)))
(cbrt.f64 (pow.f64 (pow.f64 (log.f64 base) 2) 3))
(expm1.f64 (log1p.f64 (pow.f64 (log.f64 base) 2)))
(log1p.f64 (expm1.f64 (pow.f64 (log.f64 base) 2)))
(exp.f64 (log.f64 (pow.f64 (log.f64 base) 2)))
(+.f64 0 (*.f64 (log.f64 base) (atan2.f64 im re)))
(+.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) 0)
(-.f64 (+.f64 1 (*.f64 (log.f64 base) (atan2.f64 im re))) 1)
(*.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) 1)
(*.f64 1 (*.f64 (log.f64 base) (atan2.f64 im re)))
(*.f64 (cbrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (pow.f64 (cbrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) 2))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) 2) (cbrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))))
(*.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) (*.f64 (cbrt.f64 (atan2.f64 im re)) (log.f64 base)))
(*.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))))
(*.f64 (sqrt.f64 (atan2.f64 im re)) (*.f64 (sqrt.f64 (atan2.f64 im re)) (log.f64 base)))
(*.f64 (*.f64 (sqrt.f64 (atan2.f64 im re)) (sqrt.f64 (log.f64 base))) (*.f64 (sqrt.f64 (atan2.f64 im re)) (sqrt.f64 (log.f64 base))))
(*.f64 (*.f64 (atan2.f64 im re) (pow.f64 (cbrt.f64 (log.f64 base)) 2)) (cbrt.f64 (log.f64 base)))
(*.f64 (*.f64 (atan2.f64 im re) (sqrt.f64 (log.f64 base))) (sqrt.f64 (log.f64 base)))
(/.f64 (+.f64 (pow.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) 3) 0) (+.f64 (pow.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) 2) (-.f64 0 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) 0))))
(/.f64 (-.f64 (pow.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) 2) 0) (-.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) 0))
(pow.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) 1)
(pow.f64 (pow.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) 3) 1/3)
(pow.f64 (cbrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) 3)
(pow.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) 2)
(sqrt.f64 (pow.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) 2))
(log.f64 (exp.f64 (*.f64 (log.f64 base) (atan2.f64 im re))))
(cbrt.f64 (pow.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) 3))
(cbrt.f64 (*.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3)))
(expm1.f64 (log1p.f64 (*.f64 (log.f64 base) (atan2.f64 im re))))
(log1p.f64 (expm1.f64 (*.f64 (log.f64 base) (atan2.f64 im re))))
(exp.f64 (log.f64 (*.f64 (log.f64 base) (atan2.f64 im re))))
(-.f64 (+.f64 1 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2))) 1)
(*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2))
(*.f64 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2)) 1)
(*.f64 1 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2)))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) 2) (*.f64 (cbrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (pow.f64 (log.f64 base) -2)))
(*.f64 (cbrt.f64 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2))) (pow.f64 (cbrt.f64 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2))) 2))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2))) 2) (cbrt.f64 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2))))
(*.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (*.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (pow.f64 (log.f64 base) -2)))
(*.f64 (/.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (log.f64 base)) (/.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (log.f64 base)))
(*.f64 (neg.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (/.f64 1 (neg.f64 (pow.f64 (log.f64 base) 2))))
(*.f64 (pow.f64 (log.f64 base) -2) (*.f64 (log.f64 base) (atan2.f64 im re)))
(*.f64 (/.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (log.f64 base)) (/.f64 1 (log.f64 base)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) 2) 1) (/.f64 (cbrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (pow.f64 (log.f64 base) 2)))
(*.f64 (/.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) 1) (/.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (pow.f64 (log.f64 base) 2)))
(*.f64 (/.f64 1 (log.f64 base)) (/.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (log.f64 base)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) 2) (log.f64 base)) (/.f64 (cbrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (log.f64 base)))
(*.f64 (/.f64 1 (cbrt.f64 (pow.f64 (log.f64 base) 4))) (/.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (cbrt.f64 (log.f64 base)) 2)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) 2) (cbrt.f64 (pow.f64 (log.f64 base) 4))) (cbrt.f64 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2))))
(*.f64 (/.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (cbrt.f64 (pow.f64 (log.f64 base) 4))) (/.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (pow.f64 (cbrt.f64 (log.f64 base)) 2)))
(pow.f64 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2)) 1)
(pow.f64 (pow.f64 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2)) 3) 1/3)
(pow.f64 (cbrt.f64 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2))) 3)
(pow.f64 (/.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (log.f64 base)) 2)
(pow.f64 (/.f64 (pow.f64 (log.f64 base) 2) (*.f64 (log.f64 base) (atan2.f64 im re))) -1)
(neg.f64 (/.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (neg.f64 (pow.f64 (log.f64 base) 2))))
(sqrt.f64 (/.f64 (pow.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) 2) (pow.f64 (log.f64 base) 4)))
(log.f64 (pow.f64 (exp.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (pow.f64 (log.f64 base) -2)))
(cbrt.f64 (pow.f64 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2)) 3))
(cbrt.f64 (/.f64 (pow.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) 3) (pow.f64 (pow.f64 (log.f64 base) 2) 3)))
(expm1.f64 (log1p.f64 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2))))
(log1p.f64 (expm1.f64 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2))))
(exp.f64 (log.f64 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2))))
Outputs
(pow.f64 (log.f64 base) 2)
(pow.f64 (log.f64 base) 2)
(pow.f64 (log.f64 base) 2)
(pow.f64 (log.f64 base) 2)
(pow.f64 (log.f64 (/.f64 1 base)) 2)
(pow.f64 (log.f64 base) 2)
(pow.f64 (log.f64 (/.f64 1 base)) 2)
(pow.f64 (log.f64 base) 2)
(pow.f64 (log.f64 (/.f64 1 base)) 2)
(pow.f64 (log.f64 base) 2)
(pow.f64 (log.f64 (/.f64 1 base)) 2)
(pow.f64 (log.f64 base) 2)
(pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) 2)
(pow.f64 (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))) 2)
(pow.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))) 2)
(pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) 2)
(pow.f64 (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))) 2)
(pow.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))) 2)
(pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) 2)
(pow.f64 (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))) 2)
(pow.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))) 2)
(pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) 2)
(pow.f64 (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))) 2)
(pow.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))) 2)
(*.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 base)) (atan2.f64 im re)))
(*.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 base)) (atan2.f64 im re)))
(*.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 base)) (atan2.f64 im re)))
(*.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 base)) (atan2.f64 im re)))
(*.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) (atan2.f64 im re))
(*.f64 (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))) (atan2.f64 im re))
(*.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))) (atan2.f64 im re))
(*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) (atan2.f64 im re))
(*.f64 (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))) (atan2.f64 im re))
(*.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))) (atan2.f64 im re))
(*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) (atan2.f64 im re))
(*.f64 (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))) (atan2.f64 im re))
(*.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))) (atan2.f64 im re))
(*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) (atan2.f64 im re))
(*.f64 (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))) (atan2.f64 im re))
(*.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))) (atan2.f64 im re))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))))
(-.f64 (+.f64 1 (pow.f64 (log.f64 base) 2)) 1)
(pow.f64 (log.f64 base) 2)
(pow.f64 (log.f64 base) 2)
(pow.f64 (pow.f64 (log.f64 base) 2) 1)
(pow.f64 (log.f64 base) 2)
(pow.f64 (pow.f64 (pow.f64 (log.f64 base) 2) 3) 1/3)
(pow.f64 (log.f64 base) 2)
(pow.f64 (pow.f64 (cbrt.f64 (log.f64 base)) 2) 3)
(pow.f64 (log.f64 base) 2)
(sqrt.f64 (pow.f64 (log.f64 base) 4))
(pow.f64 (log.f64 base) 2)
(log.f64 (pow.f64 base (log.f64 base)))
(pow.f64 (log.f64 base) 2)
(cbrt.f64 (pow.f64 (pow.f64 (log.f64 base) 2) 3))
(pow.f64 (log.f64 base) 2)
(expm1.f64 (log1p.f64 (pow.f64 (log.f64 base) 2)))
(pow.f64 (log.f64 base) 2)
(log1p.f64 (expm1.f64 (pow.f64 (log.f64 base) 2)))
(pow.f64 (log.f64 base) 2)
(exp.f64 (log.f64 (pow.f64 (log.f64 base) 2)))
(pow.f64 (log.f64 base) 2)
(+.f64 0 (*.f64 (log.f64 base) (atan2.f64 im re)))
(*.f64 (log.f64 base) (atan2.f64 im re))
(+.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) 0)
(*.f64 (log.f64 base) (atan2.f64 im re))
(-.f64 (+.f64 1 (*.f64 (log.f64 base) (atan2.f64 im re))) 1)
(*.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) 1)
(*.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 1 (*.f64 (log.f64 base) (atan2.f64 im re)))
(*.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 (cbrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (pow.f64 (cbrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) 2))
(*.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) 2) (cbrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))))
(*.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) (*.f64 (cbrt.f64 (atan2.f64 im re)) (log.f64 base)))
(*.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))))
(*.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 (sqrt.f64 (atan2.f64 im re)) (*.f64 (sqrt.f64 (atan2.f64 im re)) (log.f64 base)))
(*.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 (*.f64 (sqrt.f64 (atan2.f64 im re)) (sqrt.f64 (log.f64 base))) (*.f64 (sqrt.f64 (atan2.f64 im re)) (sqrt.f64 (log.f64 base))))
(*.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 (*.f64 (atan2.f64 im re) (pow.f64 (cbrt.f64 (log.f64 base)) 2)) (cbrt.f64 (log.f64 base)))
(*.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 (*.f64 (atan2.f64 im re) (sqrt.f64 (log.f64 base))) (sqrt.f64 (log.f64 base)))
(*.f64 (log.f64 base) (atan2.f64 im re))
(/.f64 (+.f64 (pow.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) 3) 0) (+.f64 (pow.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) 2) (-.f64 0 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) 0))))
(*.f64 (log.f64 base) (atan2.f64 im re))
(/.f64 (-.f64 (pow.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) 2) 0) (-.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) 0))
(*.f64 (log.f64 base) (atan2.f64 im re))
(pow.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) 1)
(*.f64 (log.f64 base) (atan2.f64 im re))
(pow.f64 (pow.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) 3) 1/3)
(*.f64 (log.f64 base) (atan2.f64 im re))
(pow.f64 (cbrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) 3)
(*.f64 (log.f64 base) (atan2.f64 im re))
(pow.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) 2)
(*.f64 (log.f64 base) (atan2.f64 im re))
(sqrt.f64 (pow.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) 2))
(*.f64 (log.f64 base) (atan2.f64 im re))
(log.f64 (exp.f64 (*.f64 (log.f64 base) (atan2.f64 im re))))
(*.f64 (log.f64 base) (atan2.f64 im re))
(cbrt.f64 (pow.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) 3))
(*.f64 (log.f64 base) (atan2.f64 im re))
(cbrt.f64 (*.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3)))
(*.f64 (log.f64 base) (atan2.f64 im re))
(expm1.f64 (log1p.f64 (*.f64 (log.f64 base) (atan2.f64 im re))))
(*.f64 (log.f64 base) (atan2.f64 im re))
(log1p.f64 (expm1.f64 (*.f64 (log.f64 base) (atan2.f64 im re))))
(*.f64 (log.f64 base) (atan2.f64 im re))
(exp.f64 (log.f64 (*.f64 (log.f64 base) (atan2.f64 im re))))
(*.f64 (log.f64 base) (atan2.f64 im re))
(-.f64 (+.f64 1 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2))) 1)
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2)) 1)
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 1 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) 2) (*.f64 (cbrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (pow.f64 (log.f64 base) -2)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (cbrt.f64 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2))) (pow.f64 (cbrt.f64 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2))) 2))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2))) 2) (cbrt.f64 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (*.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (pow.f64 (log.f64 base) -2)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (log.f64 base)) (/.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (neg.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (/.f64 1 (neg.f64 (pow.f64 (log.f64 base) 2))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (pow.f64 (log.f64 base) -2) (*.f64 (log.f64 base) (atan2.f64 im re)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (log.f64 base)) (/.f64 1 (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) 2) 1) (/.f64 (cbrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (pow.f64 (log.f64 base) 2)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) 1) (/.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (pow.f64 (log.f64 base) 2)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 1 (log.f64 base)) (/.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) 2) (log.f64 base)) (/.f64 (cbrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 1 (cbrt.f64 (pow.f64 (log.f64 base) 4))) (/.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (cbrt.f64 (log.f64 base)) 2)))
(/.f64 (/.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (cbrt.f64 (log.f64 base)) 2)) (cbrt.f64 (pow.f64 (log.f64 base) 4)))
(/.f64 (log.f64 base) (*.f64 (cbrt.f64 (pow.f64 (log.f64 base) 4)) (/.f64 (pow.f64 (cbrt.f64 (log.f64 base)) 2) (atan2.f64 im re))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) 2) (cbrt.f64 (pow.f64 (log.f64 base) 4))) (cbrt.f64 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2))))
(*.f64 (cbrt.f64 (*.f64 (log.f64 base) (*.f64 (atan2.f64 im re) (pow.f64 (log.f64 base) -2)))) (/.f64 (pow.f64 (cbrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) 2) (cbrt.f64 (pow.f64 (log.f64 base) 4))))
(/.f64 (pow.f64 (cbrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) 2) (/.f64 (cbrt.f64 (pow.f64 (log.f64 base) 4)) (cbrt.f64 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base))))))
(/.f64 (*.f64 (pow.f64 (cbrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) 2) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) (cbrt.f64 (pow.f64 (log.f64 base) 4)))
(*.f64 (/.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (cbrt.f64 (pow.f64 (log.f64 base) 4))) (/.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (pow.f64 (cbrt.f64 (log.f64 base)) 2)))
(*.f64 (/.f64 1 (cbrt.f64 (pow.f64 (log.f64 base) 4))) (/.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (cbrt.f64 (log.f64 base)) 2)))
(/.f64 (/.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (cbrt.f64 (log.f64 base)) 2)) (cbrt.f64 (pow.f64 (log.f64 base) 4)))
(/.f64 (log.f64 base) (*.f64 (cbrt.f64 (pow.f64 (log.f64 base) 4)) (/.f64 (pow.f64 (cbrt.f64 (log.f64 base)) 2) (atan2.f64 im re))))
(pow.f64 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2)) 1)
(/.f64 (atan2.f64 im re) (log.f64 base))
(pow.f64 (pow.f64 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2)) 3) 1/3)
(/.f64 (atan2.f64 im re) (log.f64 base))
(pow.f64 (cbrt.f64 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2))) 3)
(/.f64 (atan2.f64 im re) (log.f64 base))
(pow.f64 (/.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (log.f64 base)) 2)
(/.f64 (atan2.f64 im re) (log.f64 base))
(pow.f64 (/.f64 (pow.f64 (log.f64 base) 2) (*.f64 (log.f64 base) (atan2.f64 im re))) -1)
(/.f64 (atan2.f64 im re) (log.f64 base))
(neg.f64 (/.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (neg.f64 (pow.f64 (log.f64 base) 2))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(sqrt.f64 (/.f64 (pow.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) 2) (pow.f64 (log.f64 base) 4)))
(sqrt.f64 (pow.f64 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base))) 2))
(fabs.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
(log.f64 (pow.f64 (exp.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (pow.f64 (log.f64 base) -2)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(cbrt.f64 (pow.f64 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2)) 3))
(/.f64 (atan2.f64 im re) (log.f64 base))
(cbrt.f64 (/.f64 (pow.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) 3) (pow.f64 (pow.f64 (log.f64 base) 2) 3)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(expm1.f64 (log1p.f64 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(log1p.f64 (expm1.f64 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(exp.f64 (log.f64 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2))))
(/.f64 (atan2.f64 im re) (log.f64 base))

eval29.0ms (0.5%)

Compiler

Compiled 1988 to 704 computations (64.6% saved)

prune33.0ms (0.5%)

Pruning

18 alts after pruning (17 fresh and 1 done)

PrunedKeptTotal
New11517132
Fresh000
Picked101
Done011
Total11618134
Error
0b
Counts
134 → 18
Alt Table
Click to see full alt table
StatusErrorProgram
33.6b
(pow.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3) 1/3)
30.6b
(pow.f64 (/.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (log.f64 base)) 2)
0.5b
(pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -1)
30.5b
(pow.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2)
1.5b
(pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 3)
0.5b
(/.f64 (fma.f64 (atan2.f64 im re) (log.f64 base) 0) (sqrt.f64 (pow.f64 (log.f64 base) 4)))
1.6b
(/.f64 (fma.f64 (atan2.f64 im re) (log.f64 base) 0) (exp.f64 (log.f64 (pow.f64 (log.f64 base) 2))))
0.3b
(/.f64 (atan2.f64 im re) (log.f64 base))
33.7b
(/.f64 (/.f64 (atan2.f64 im re) (sqrt.f64 (log.f64 base))) (sqrt.f64 (log.f64 base)))
0.4b
(/.f64 (*.f64 (atan2.f64 im re) (log.f64 base)) (*.f64 (log.f64 base) (log.f64 base)))
33.7b
(/.f64 (*.f64 (*.f64 (atan2.f64 im re) (sqrt.f64 (log.f64 base))) (sqrt.f64 (log.f64 base))) (*.f64 (log.f64 base) (log.f64 base)))
5.5b
(/.f64 (cbrt.f64 (pow.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) 3)) (*.f64 (log.f64 base) (log.f64 base)))
0.4b
(*.f64 (pow.f64 (log.f64 base) -2) (*.f64 (log.f64 base) (atan2.f64 im re)))
0.3b
(*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base)))
0.5b
(*.f64 (neg.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (/.f64 1 (neg.f64 (pow.f64 (log.f64 base) 2))))
31.1b
(exp.f64 (log.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
5.7b
(cbrt.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3))
5.6b
(cbrt.f64 (/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3)))
Compiler

Compiled 495 to 334 computations (32.5% saved)

localize10.0ms (0.2%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.3b
(/.f64 1 (log.f64 base))
0.3b
(*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base)))
Compiler

Compiled 24 to 11 computations (54.2% saved)

series5.0ms (0.1%)

Counts
2 → 44
Calls

12 calls:

TimeVariablePointExpression
1.0ms
im
@-inf
(*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base)))
1.0ms
base
@-inf
(/.f64 1 (log.f64 base))
1.0ms
base
@inf
(/.f64 1 (log.f64 base))
1.0ms
base
@0
(/.f64 1 (log.f64 base))
0.0ms
im
@0
(*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base)))

rewrite44.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
779×pow1_binary64
712×add-log-exp_binary64
712×log1p-expm1-u_binary64
712×expm1-log1p-u_binary64
696×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0915
117515
2203115
Stop Event
node limit
Counts
2 → 44
Calls
Call 1
Inputs
(*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base)))
(/.f64 1 (log.f64 base))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (/.f64 (atan2.f64 im re) (log.f64 base))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (atan2.f64 im re) (log.f64 base))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (log.f64 base) (atan2.f64 im re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) (/.f64 (log.f64 base) (cbrt.f64 (atan2.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (atan2.f64 im re)) (/.f64 (log.f64 base) (sqrt.f64 (atan2.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (atan2.f64 im re)) (neg.f64 (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (atan2.f64 im re) (sqrt.f64 (log.f64 base))) (sqrt.f64 (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (atan2.f64 im re) 1) (log.f64 base))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (atan2.f64 im re) (pow.f64 (cbrt.f64 (log.f64 base)) 2)) (cbrt.f64 (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -1 (atan2.f64 im re)) (neg.f64 (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (atan2.f64 im re) -1) (neg.f64 (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (/.f64 1 (log.f64 base)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (/.f64 1 (log.f64 base)) 3) (pow.f64 (atan2.f64 im re) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (/.f64 1 (log.f64 base))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 1 (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (log.f64 base)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cbrt.f64 (log.f64 base))) (cbrt.f64 (pow.f64 (log.f64 base) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (log.f64 base) -2)) (/.f64 1 (cbrt.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (log.f64 base) -1/2) (pow.f64 (log.f64 base) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (/.f64 1 (neg.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (log.f64 base)) 2) -1) (pow.f64 (cbrt.f64 (log.f64 base)) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (log.f64 base)) -1) (pow.f64 (sqrt.f64 (log.f64 base)) -1))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (log.f64 base) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1 (log.f64 base)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 1 (log.f64 base)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1 (cbrt.f64 (log.f64 base))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (log.f64 base) -1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (log.f64 base) -2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 1 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 1 (log.f64 base)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 1 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 1 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (neg.f64 (log.f64 (log.f64 base))))))))

simplify46.0ms (0.8%)

Algorithm
egg-herbie
Rules
597×log-prod_binary64
555×associate-*l*_binary64
496×associate-*r*_binary64
392×fma-def_binary64
388×unswap-sqr_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0115856
1251790
2771790
35435790
Stop Event
node limit
Counts
88 → 55
Calls
Call 1
Inputs
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 -1 (log.f64 (/.f64 1 base)))
(/.f64 -1 (log.f64 (/.f64 1 base)))
(/.f64 -1 (log.f64 (/.f64 1 base)))
(/.f64 -1 (log.f64 (/.f64 1 base)))
(/.f64 1 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 1 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 1 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 1 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(-.f64 (+.f64 1 (/.f64 (atan2.f64 im re) (log.f64 base))) 1)
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 1 (/.f64 (log.f64 base) (atan2.f64 im re)))
(/.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) (/.f64 (log.f64 base) (cbrt.f64 (atan2.f64 im re))))
(/.f64 (sqrt.f64 (atan2.f64 im re)) (/.f64 (log.f64 base) (sqrt.f64 (atan2.f64 im re))))
(/.f64 (neg.f64 (atan2.f64 im re)) (neg.f64 (log.f64 base)))
(/.f64 (/.f64 (atan2.f64 im re) (sqrt.f64 (log.f64 base))) (sqrt.f64 (log.f64 base)))
(/.f64 (/.f64 (atan2.f64 im re) 1) (log.f64 base))
(/.f64 (/.f64 (atan2.f64 im re) (pow.f64 (cbrt.f64 (log.f64 base)) 2)) (cbrt.f64 (log.f64 base)))
(/.f64 (*.f64 -1 (atan2.f64 im re)) (neg.f64 (log.f64 base)))
(/.f64 (*.f64 (atan2.f64 im re) -1) (neg.f64 (log.f64 base)))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1)
(pow.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3) 1/3)
(pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 3)
(pow.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2)
(sqrt.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2))
(log.f64 (exp.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(cbrt.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3))
(cbrt.f64 (/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3)))
(cbrt.f64 (*.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (/.f64 1 (log.f64 base)) 3)))
(cbrt.f64 (*.f64 (pow.f64 (/.f64 1 (log.f64 base)) 3) (pow.f64 (atan2.f64 im re) 3)))
(expm1.f64 (log1p.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(log1p.f64 (expm1.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(exp.f64 (log.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(-.f64 (+.f64 1 (/.f64 1 (log.f64 base))) 1)
(*.f64 1 (/.f64 1 (log.f64 base)))
(*.f64 (/.f64 1 (log.f64 base)) 1)
(*.f64 (/.f64 1 (cbrt.f64 (log.f64 base))) (cbrt.f64 (pow.f64 (log.f64 base) -2)))
(*.f64 (cbrt.f64 (pow.f64 (log.f64 base) -2)) (/.f64 1 (cbrt.f64 (log.f64 base))))
(*.f64 (pow.f64 (log.f64 base) -1/2) (pow.f64 (log.f64 base) -1/2))
(*.f64 -1 (/.f64 1 (neg.f64 (log.f64 base))))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (log.f64 base)) 2) -1) (pow.f64 (cbrt.f64 (log.f64 base)) -1))
(*.f64 (pow.f64 (sqrt.f64 (log.f64 base)) -1) (pow.f64 (sqrt.f64 (log.f64 base)) -1))
(pow.f64 (log.f64 base) -1)
(pow.f64 (/.f64 1 (log.f64 base)) 1)
(pow.f64 (pow.f64 (/.f64 1 (log.f64 base)) 3) 1/3)
(pow.f64 (/.f64 1 (cbrt.f64 (log.f64 base))) 3)
(pow.f64 (pow.f64 (log.f64 base) -1/2) 2)
(sqrt.f64 (pow.f64 (log.f64 base) -2))
(log.f64 (exp.f64 (/.f64 1 (log.f64 base))))
(cbrt.f64 (pow.f64 (/.f64 1 (log.f64 base)) 3))
(expm1.f64 (log1p.f64 (/.f64 1 (log.f64 base))))
(log1p.f64 (expm1.f64 (/.f64 1 (log.f64 base))))
(exp.f64 (neg.f64 (log.f64 (log.f64 base))))
Outputs
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))))
(/.f64 -1 (log.f64 (/.f64 1 base)))
(/.f64 -1 (neg.f64 (log.f64 base)))
(/.f64 1 (log.f64 base))
(/.f64 -1 (log.f64 (/.f64 1 base)))
(/.f64 -1 (neg.f64 (log.f64 base)))
(/.f64 1 (log.f64 base))
(/.f64 -1 (log.f64 (/.f64 1 base)))
(/.f64 -1 (neg.f64 (log.f64 base)))
(/.f64 1 (log.f64 base))
(/.f64 -1 (log.f64 (/.f64 1 base)))
(/.f64 -1 (neg.f64 (log.f64 base)))
(/.f64 1 (log.f64 base))
(/.f64 1 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 1 (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))))
(/.f64 1 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))))
(/.f64 1 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 1 (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))))
(/.f64 1 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))))
(/.f64 1 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 1 (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))))
(/.f64 1 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))))
(/.f64 1 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 1 (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))))
(/.f64 1 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))))
(-.f64 (+.f64 1 (/.f64 (atan2.f64 im re) (log.f64 base))) 1)
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 1 (/.f64 (log.f64 base) (atan2.f64 im re)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) (/.f64 (log.f64 base) (cbrt.f64 (atan2.f64 im re))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (sqrt.f64 (atan2.f64 im re)) (/.f64 (log.f64 base) (sqrt.f64 (atan2.f64 im re))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (neg.f64 (atan2.f64 im re)) (neg.f64 (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (/.f64 (atan2.f64 im re) (sqrt.f64 (log.f64 base))) (sqrt.f64 (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (/.f64 (atan2.f64 im re) 1) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (/.f64 (atan2.f64 im re) (pow.f64 (cbrt.f64 (log.f64 base)) 2)) (cbrt.f64 (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (*.f64 -1 (atan2.f64 im re)) (neg.f64 (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (*.f64 (atan2.f64 im re) -1) (neg.f64 (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1)
(/.f64 (atan2.f64 im re) (log.f64 base))
(pow.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3) 1/3)
(/.f64 (atan2.f64 im re) (log.f64 base))
(pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 3)
(/.f64 (atan2.f64 im re) (log.f64 base))
(pow.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2)
(/.f64 (atan2.f64 im re) (log.f64 base))
(sqrt.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2))
(/.f64 (atan2.f64 im re) (log.f64 base))
(log.f64 (exp.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(cbrt.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3))
(/.f64 (atan2.f64 im re) (log.f64 base))
(cbrt.f64 (/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(cbrt.f64 (*.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (/.f64 1 (log.f64 base)) 3)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(cbrt.f64 (*.f64 (pow.f64 (/.f64 1 (log.f64 base)) 3) (pow.f64 (atan2.f64 im re) 3)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(expm1.f64 (log1p.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(log1p.f64 (expm1.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(exp.f64 (log.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(-.f64 (+.f64 1 (/.f64 1 (log.f64 base))) 1)
(/.f64 -1 (neg.f64 (log.f64 base)))
(/.f64 1 (log.f64 base))
(*.f64 1 (/.f64 1 (log.f64 base)))
(/.f64 -1 (neg.f64 (log.f64 base)))
(/.f64 1 (log.f64 base))
(*.f64 (/.f64 1 (log.f64 base)) 1)
(/.f64 -1 (neg.f64 (log.f64 base)))
(/.f64 1 (log.f64 base))
(*.f64 (/.f64 1 (cbrt.f64 (log.f64 base))) (cbrt.f64 (pow.f64 (log.f64 base) -2)))
(/.f64 (cbrt.f64 (pow.f64 (log.f64 base) -2)) (cbrt.f64 (log.f64 base)))
(*.f64 (cbrt.f64 (pow.f64 (log.f64 base) -2)) (/.f64 1 (cbrt.f64 (log.f64 base))))
(*.f64 (/.f64 1 (cbrt.f64 (log.f64 base))) (cbrt.f64 (pow.f64 (log.f64 base) -2)))
(/.f64 (cbrt.f64 (pow.f64 (log.f64 base) -2)) (cbrt.f64 (log.f64 base)))
(*.f64 (pow.f64 (log.f64 base) -1/2) (pow.f64 (log.f64 base) -1/2))
(/.f64 -1 (neg.f64 (log.f64 base)))
(/.f64 1 (log.f64 base))
(*.f64 -1 (/.f64 1 (neg.f64 (log.f64 base))))
(/.f64 -1 (neg.f64 (log.f64 base)))
(/.f64 1 (log.f64 base))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (log.f64 base)) 2) -1) (pow.f64 (cbrt.f64 (log.f64 base)) -1))
(/.f64 -1 (neg.f64 (log.f64 base)))
(/.f64 1 (log.f64 base))
(*.f64 (pow.f64 (sqrt.f64 (log.f64 base)) -1) (pow.f64 (sqrt.f64 (log.f64 base)) -1))
(/.f64 -1 (neg.f64 (log.f64 base)))
(/.f64 1 (log.f64 base))
(pow.f64 (log.f64 base) -1)
(/.f64 -1 (neg.f64 (log.f64 base)))
(/.f64 1 (log.f64 base))
(pow.f64 (/.f64 1 (log.f64 base)) 1)
(/.f64 -1 (neg.f64 (log.f64 base)))
(/.f64 1 (log.f64 base))
(pow.f64 (pow.f64 (/.f64 1 (log.f64 base)) 3) 1/3)
(/.f64 -1 (neg.f64 (log.f64 base)))
(/.f64 1 (log.f64 base))
(pow.f64 (/.f64 1 (cbrt.f64 (log.f64 base))) 3)
(/.f64 -1 (neg.f64 (log.f64 base)))
(/.f64 1 (log.f64 base))
(pow.f64 (pow.f64 (log.f64 base) -1/2) 2)
(/.f64 -1 (neg.f64 (log.f64 base)))
(/.f64 1 (log.f64 base))
(sqrt.f64 (pow.f64 (log.f64 base) -2))
(/.f64 -1 (neg.f64 (log.f64 base)))
(/.f64 1 (log.f64 base))
(log.f64 (exp.f64 (/.f64 1 (log.f64 base))))
(/.f64 -1 (neg.f64 (log.f64 base)))
(/.f64 1 (log.f64 base))
(cbrt.f64 (pow.f64 (/.f64 1 (log.f64 base)) 3))
(/.f64 -1 (neg.f64 (log.f64 base)))
(/.f64 1 (log.f64 base))
(expm1.f64 (log1p.f64 (/.f64 1 (log.f64 base))))
(/.f64 -1 (neg.f64 (log.f64 base)))
(/.f64 1 (log.f64 base))
(log1p.f64 (expm1.f64 (/.f64 1 (log.f64 base))))
(/.f64 -1 (neg.f64 (log.f64 base)))
(/.f64 1 (log.f64 base))
(exp.f64 (neg.f64 (log.f64 (log.f64 base))))
(/.f64 -1 (neg.f64 (log.f64 base)))
(/.f64 1 (log.f64 base))

localize10.0ms (0.2%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.3b
(/.f64 (log.f64 base) (atan2.f64 im re))
0.5b
(pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -1)
Compiler

Compiled 26 to 9 computations (65.4% saved)

series10.0ms (0.2%)

Counts
2 → 44
Calls

18 calls:

TimeVariablePointExpression
1.0ms
base
@0
(pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -1)
1.0ms
base
@-inf
(pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -1)
1.0ms
im
@inf
(pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -1)
1.0ms
re
@-inf
(pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -1)
1.0ms
base
@inf
(pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -1)

rewrite51.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
858×pow1_binary64
791×add-log-exp_binary64
791×log1p-expm1-u_binary64
791×expm1-log1p-u_binary64
772×add-exp-log_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0921
118118
2218818
Stop Event
node limit
Counts
2 → 71
Calls
Call 1
Inputs
(pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -1)
(/.f64 (log.f64 base) (atan2.f64 im re))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (/.f64 (atan2.f64 im re) (log.f64 base))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (atan2.f64 im re) (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (log.f64 base) -1) (pow.f64 (/.f64 1 (atan2.f64 im re)) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) 2) -1) (pow.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) -1) (pow.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (atan2.f64 im re) 2)) 1) (/.f64 (cbrt.f64 (atan2.f64 im re)) (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (atan2.f64 im re)) 1) (/.f64 (sqrt.f64 (atan2.f64 im re)) (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cbrt.f64 (pow.f64 (log.f64 base) 2))) (/.f64 (atan2.f64 im re) (cbrt.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (atan2.f64 im re) 2)) (cbrt.f64 (pow.f64 (log.f64 base) 2))) (/.f64 (cbrt.f64 (atan2.f64 im re)) (cbrt.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (atan2.f64 im re)) (cbrt.f64 (pow.f64 (log.f64 base) 2))) (/.f64 (sqrt.f64 (atan2.f64 im re)) (cbrt.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (log.f64 base))) (/.f64 (atan2.f64 im re) (sqrt.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (atan2.f64 im re) 2)) (sqrt.f64 (log.f64 base))) (/.f64 (cbrt.f64 (atan2.f64 im re)) (sqrt.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (atan2.f64 im re)) (sqrt.f64 (log.f64 base))) (/.f64 (sqrt.f64 (atan2.f64 im re)) (sqrt.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (log.f64 base)) (atan2.f64 im re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (neg.f64 (log.f64 base))) (neg.f64 (atan2.f64 im re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (atan2.f64 im re) (log.f64 base))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1 (neg.f64 (/.f64 (log.f64 base) (atan2.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (log.f64 base) (atan2.f64 im re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (pow.f64 (atan2.f64 im re) 2)) (/.f64 (log.f64 base) (cbrt.f64 (atan2.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (atan2.f64 im re)) (/.f64 (log.f64 base) (sqrt.f64 (atan2.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (atan2.f64 im re)) (neg.f64 (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (atan2.f64 im re) (sqrt.f64 (log.f64 base))) (sqrt.f64 (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (atan2.f64 im re) 1) (log.f64 base))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 1 (log.f64 base)) (/.f64 1 (atan2.f64 im re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 1 (pow.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) 2)) (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (atan2.f64 im re) (cbrt.f64 (pow.f64 (log.f64 base) 2))) (cbrt.f64 (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (/.f64 (log.f64 base) (atan2.f64 im re))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (log.f64 base) (/.f64 1 (atan2.f64 im re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (log.f64 base) (atan2.f64 im re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (log.f64 base) 2)) (*.f64 (cbrt.f64 (log.f64 base)) (/.f64 1 (atan2.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) (pow.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) 2) (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (log.f64 base)) (*.f64 (sqrt.f64 (log.f64 base)) (/.f64 1 (atan2.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (log.f64 base)) (/.f64 1 (neg.f64 (atan2.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (atan2.f64 im re)) (log.f64 base))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (log.f64 base) 2)) 1) (/.f64 (cbrt.f64 (log.f64 base)) (atan2.f64 im re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (log.f64 base)) 1) (/.f64 (sqrt.f64 (log.f64 base)) (atan2.f64 im re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cbrt.f64 (pow.f64 (atan2.f64 im re) 2))) (/.f64 (log.f64 base) (cbrt.f64 (atan2.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (log.f64 base) 2)) (cbrt.f64 (pow.f64 (atan2.f64 im re) 2))) (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (log.f64 base)) (cbrt.f64 (pow.f64 (atan2.f64 im re) 2))) (/.f64 (sqrt.f64 (log.f64 base)) (cbrt.f64 (atan2.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (atan2.f64 im re))) (/.f64 (log.f64 base) (sqrt.f64 (atan2.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (log.f64 base) 2)) (sqrt.f64 (atan2.f64 im re))) (/.f64 (cbrt.f64 (log.f64 base)) (sqrt.f64 (atan2.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (log.f64 base) (neg.f64 (atan2.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 base (/.f64 1 (atan2.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (log.f64 base) 3) (pow.f64 (atan2.f64 im re) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (log.f64 base) (atan2.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (log.f64 base) (atan2.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (log.f64 base) (atan2.f64 im re))))))))

simplify64.0ms (1%)

Algorithm
egg-herbie
Rules
643×log-div_binary64
547×fma-def_binary64
488×fma-neg_binary64
430×associate-*l/_binary64
414×associate-/l*_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01761455
14091299
212441299
365961299
Stop Event
node limit
Counts
115 → 95
Calls
Call 1
Inputs
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 -1 (/.f64 (log.f64 (/.f64 1 base)) (atan2.f64 im re)))
(*.f64 -1 (/.f64 (log.f64 (/.f64 1 base)) (atan2.f64 im re)))
(*.f64 -1 (/.f64 (log.f64 (/.f64 1 base)) (atan2.f64 im re)))
(*.f64 -1 (/.f64 (log.f64 (/.f64 1 base)) (atan2.f64 im re)))
(/.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) (atan2.f64 im re))
(/.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) (atan2.f64 im re))
(/.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) (atan2.f64 im re))
(/.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) (atan2.f64 im re))
(-.f64 (+.f64 1 (/.f64 (atan2.f64 im re) (log.f64 base))) 1)
(*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base)))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1)
(*.f64 1 (/.f64 (atan2.f64 im re) (log.f64 base)))
(*.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(*.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(*.f64 (pow.f64 (log.f64 base) -1) (pow.f64 (/.f64 1 (atan2.f64 im re)) -1))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) 2) -1) (pow.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) -1))
(*.f64 (pow.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) -1) (pow.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) -1))
(*.f64 (/.f64 (cbrt.f64 (pow.f64 (atan2.f64 im re) 2)) 1) (/.f64 (cbrt.f64 (atan2.f64 im re)) (log.f64 base)))
(*.f64 (/.f64 (sqrt.f64 (atan2.f64 im re)) 1) (/.f64 (sqrt.f64 (atan2.f64 im re)) (log.f64 base)))
(*.f64 (/.f64 1 (cbrt.f64 (pow.f64 (log.f64 base) 2))) (/.f64 (atan2.f64 im re) (cbrt.f64 (log.f64 base))))
(*.f64 (/.f64 (cbrt.f64 (pow.f64 (atan2.f64 im re) 2)) (cbrt.f64 (pow.f64 (log.f64 base) 2))) (/.f64 (cbrt.f64 (atan2.f64 im re)) (cbrt.f64 (log.f64 base))))
(*.f64 (/.f64 (sqrt.f64 (atan2.f64 im re)) (cbrt.f64 (pow.f64 (log.f64 base) 2))) (/.f64 (sqrt.f64 (atan2.f64 im re)) (cbrt.f64 (log.f64 base))))
(*.f64 (/.f64 1 (sqrt.f64 (log.f64 base))) (/.f64 (atan2.f64 im re) (sqrt.f64 (log.f64 base))))
(*.f64 (/.f64 (cbrt.f64 (pow.f64 (atan2.f64 im re) 2)) (sqrt.f64 (log.f64 base))) (/.f64 (cbrt.f64 (atan2.f64 im re)) (sqrt.f64 (log.f64 base))))
(*.f64 (/.f64 (sqrt.f64 (atan2.f64 im re)) (sqrt.f64 (log.f64 base))) (/.f64 (sqrt.f64 (atan2.f64 im re)) (sqrt.f64 (log.f64 base))))
(*.f64 (/.f64 1 (log.f64 base)) (atan2.f64 im re))
(*.f64 (/.f64 1 (neg.f64 (log.f64 base))) (neg.f64 (atan2.f64 im re)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 -1 (neg.f64 (/.f64 (log.f64 base) (atan2.f64 im re))))
(/.f64 1 (/.f64 (log.f64 base) (atan2.f64 im re)))
(/.f64 1 (/.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) 1))
(/.f64 (cbrt.f64 (pow.f64 (atan2.f64 im re) 2)) (/.f64 (log.f64 base) (cbrt.f64 (atan2.f64 im re))))
(/.f64 (sqrt.f64 (atan2.f64 im re)) (/.f64 (log.f64 base) (sqrt.f64 (atan2.f64 im re))))
(/.f64 (neg.f64 (atan2.f64 im re)) (neg.f64 (log.f64 base)))
(/.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))))
(/.f64 (/.f64 (atan2.f64 im re) (sqrt.f64 (log.f64 base))) (sqrt.f64 (log.f64 base)))
(/.f64 (/.f64 (atan2.f64 im re) 1) (log.f64 base))
(/.f64 (/.f64 1 (log.f64 base)) (/.f64 1 (atan2.f64 im re)))
(/.f64 (/.f64 1 (pow.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) 2)) (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))))
(/.f64 (/.f64 (atan2.f64 im re) (cbrt.f64 (pow.f64 (log.f64 base) 2))) (cbrt.f64 (log.f64 base)))
(sqrt.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -2))
(log.f64 (exp.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(cbrt.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3))
(cbrt.f64 (/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3)))
(expm1.f64 (log1p.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(log1p.f64 (expm1.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(exp.f64 (log.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(-.f64 (+.f64 1 (/.f64 (log.f64 base) (atan2.f64 im re))) 1)
(*.f64 (log.f64 base) (/.f64 1 (atan2.f64 im re)))
(*.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) 1)
(*.f64 1 (/.f64 (log.f64 base) (atan2.f64 im re)))
(*.f64 (cbrt.f64 (pow.f64 (log.f64 base) 2)) (*.f64 (cbrt.f64 (log.f64 base)) (/.f64 1 (atan2.f64 im re))))
(*.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) (pow.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) 2))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) 2) (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))))
(*.f64 (sqrt.f64 (log.f64 base)) (*.f64 (sqrt.f64 (log.f64 base)) (/.f64 1 (atan2.f64 im re))))
(*.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))))
(*.f64 (neg.f64 (log.f64 base)) (/.f64 1 (neg.f64 (atan2.f64 im re))))
(*.f64 (/.f64 1 (atan2.f64 im re)) (log.f64 base))
(*.f64 (/.f64 (cbrt.f64 (pow.f64 (log.f64 base) 2)) 1) (/.f64 (cbrt.f64 (log.f64 base)) (atan2.f64 im re)))
(*.f64 (/.f64 (sqrt.f64 (log.f64 base)) 1) (/.f64 (sqrt.f64 (log.f64 base)) (atan2.f64 im re)))
(*.f64 (/.f64 1 (cbrt.f64 (pow.f64 (atan2.f64 im re) 2))) (/.f64 (log.f64 base) (cbrt.f64 (atan2.f64 im re))))
(*.f64 (/.f64 (cbrt.f64 (pow.f64 (log.f64 base) 2)) (cbrt.f64 (pow.f64 (atan2.f64 im re) 2))) (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))))
(*.f64 (/.f64 (sqrt.f64 (log.f64 base)) (cbrt.f64 (pow.f64 (atan2.f64 im re) 2))) (/.f64 (sqrt.f64 (log.f64 base)) (cbrt.f64 (atan2.f64 im re))))
(*.f64 (/.f64 1 (sqrt.f64 (atan2.f64 im re))) (/.f64 (log.f64 base) (sqrt.f64 (atan2.f64 im re))))
(*.f64 (/.f64 (cbrt.f64 (pow.f64 (log.f64 base) 2)) (sqrt.f64 (atan2.f64 im re))) (/.f64 (cbrt.f64 (log.f64 base)) (sqrt.f64 (atan2.f64 im re))))
(pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) 1)
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) -1)
(pow.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) 3) 1/3)
(pow.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) 3)
(pow.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) 2)
(neg.f64 (/.f64 (log.f64 base) (neg.f64 (atan2.f64 im re))))
(sqrt.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) 2))
(log.f64 (pow.f64 base (/.f64 1 (atan2.f64 im re))))
(cbrt.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) 3))
(cbrt.f64 (/.f64 (pow.f64 (log.f64 base) 3) (pow.f64 (atan2.f64 im re) 3)))
(expm1.f64 (log1p.f64 (/.f64 (log.f64 base) (atan2.f64 im re))))
(log1p.f64 (expm1.f64 (/.f64 (log.f64 base) (atan2.f64 im re))))
(exp.f64 (log.f64 (/.f64 (log.f64 base) (atan2.f64 im re))))
Outputs
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 -1 (/.f64 (log.f64 (/.f64 1 base)) (atan2.f64 im re)))
(neg.f64 (/.f64 (neg.f64 (log.f64 base)) (atan2.f64 im re)))
(/.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 -1 (/.f64 (log.f64 (/.f64 1 base)) (atan2.f64 im re)))
(neg.f64 (/.f64 (neg.f64 (log.f64 base)) (atan2.f64 im re)))
(/.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 -1 (/.f64 (log.f64 (/.f64 1 base)) (atan2.f64 im re)))
(neg.f64 (/.f64 (neg.f64 (log.f64 base)) (atan2.f64 im re)))
(/.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 -1 (/.f64 (log.f64 (/.f64 1 base)) (atan2.f64 im re)))
(neg.f64 (/.f64 (neg.f64 (log.f64 base)) (atan2.f64 im re)))
(/.f64 (log.f64 base) (atan2.f64 im re))
(/.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) (atan2.f64 im re))
(/.f64 (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))) (atan2.f64 im re))
(/.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))) (atan2.f64 im re))
(/.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) (atan2.f64 im re))
(/.f64 (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))) (atan2.f64 im re))
(/.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))) (atan2.f64 im re))
(/.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) (atan2.f64 im re))
(/.f64 (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))) (atan2.f64 im re))
(/.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))) (atan2.f64 im re))
(/.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) (atan2.f64 im re))
(/.f64 (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))) (atan2.f64 im re))
(/.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))) (atan2.f64 im re))
(-.f64 (+.f64 1 (/.f64 (atan2.f64 im re) (log.f64 base))) 1)
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1)
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 1 (/.f64 (atan2.f64 im re) (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (pow.f64 (log.f64 base) -1) (pow.f64 (/.f64 1 (atan2.f64 im re)) -1))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) 2) -1) (pow.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) -1))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (pow.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) -1) (pow.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) -1))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (cbrt.f64 (pow.f64 (atan2.f64 im re) 2)) 1) (/.f64 (cbrt.f64 (atan2.f64 im re)) (log.f64 base)))
(/.f64 (*.f64 (cbrt.f64 (pow.f64 (atan2.f64 im re) 2)) (cbrt.f64 (atan2.f64 im re))) (log.f64 base))
(*.f64 (cbrt.f64 (atan2.f64 im re)) (/.f64 (cbrt.f64 (pow.f64 (atan2.f64 im re) 2)) (log.f64 base)))
(*.f64 (cbrt.f64 (pow.f64 (atan2.f64 im re) 2)) (/.f64 (cbrt.f64 (atan2.f64 im re)) (log.f64 base)))
(*.f64 (/.f64 (sqrt.f64 (atan2.f64 im re)) 1) (/.f64 (sqrt.f64 (atan2.f64 im re)) (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 1 (cbrt.f64 (pow.f64 (log.f64 base) 2))) (/.f64 (atan2.f64 im re) (cbrt.f64 (log.f64 base))))
(/.f64 (/.f64 (atan2.f64 im re) (cbrt.f64 (log.f64 base))) (cbrt.f64 (pow.f64 (log.f64 base) 2)))
(/.f64 (atan2.f64 im re) (*.f64 (cbrt.f64 (pow.f64 (log.f64 base) 2)) (cbrt.f64 (log.f64 base))))
(*.f64 (/.f64 (cbrt.f64 (pow.f64 (atan2.f64 im re) 2)) (cbrt.f64 (pow.f64 (log.f64 base) 2))) (/.f64 (cbrt.f64 (atan2.f64 im re)) (cbrt.f64 (log.f64 base))))
(/.f64 (cbrt.f64 (pow.f64 (atan2.f64 im re) 2)) (*.f64 (/.f64 (cbrt.f64 (pow.f64 (log.f64 base) 2)) (cbrt.f64 (atan2.f64 im re))) (cbrt.f64 (log.f64 base))))
(*.f64 (/.f64 (sqrt.f64 (atan2.f64 im re)) (cbrt.f64 (pow.f64 (log.f64 base) 2))) (/.f64 (sqrt.f64 (atan2.f64 im re)) (cbrt.f64 (log.f64 base))))
(*.f64 (/.f64 1 (cbrt.f64 (pow.f64 (log.f64 base) 2))) (/.f64 (atan2.f64 im re) (cbrt.f64 (log.f64 base))))
(/.f64 (/.f64 (atan2.f64 im re) (cbrt.f64 (log.f64 base))) (cbrt.f64 (pow.f64 (log.f64 base) 2)))
(/.f64 (atan2.f64 im re) (*.f64 (cbrt.f64 (pow.f64 (log.f64 base) 2)) (cbrt.f64 (log.f64 base))))
(*.f64 (/.f64 1 (sqrt.f64 (log.f64 base))) (/.f64 (atan2.f64 im re) (sqrt.f64 (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (cbrt.f64 (pow.f64 (atan2.f64 im re) 2)) (sqrt.f64 (log.f64 base))) (/.f64 (cbrt.f64 (atan2.f64 im re)) (sqrt.f64 (log.f64 base))))
(/.f64 (*.f64 (cbrt.f64 (pow.f64 (atan2.f64 im re) 2)) (cbrt.f64 (atan2.f64 im re))) (log.f64 base))
(*.f64 (cbrt.f64 (atan2.f64 im re)) (/.f64 (cbrt.f64 (pow.f64 (atan2.f64 im re) 2)) (log.f64 base)))
(*.f64 (cbrt.f64 (pow.f64 (atan2.f64 im re) 2)) (/.f64 (cbrt.f64 (atan2.f64 im re)) (log.f64 base)))
(*.f64 (/.f64 (sqrt.f64 (atan2.f64 im re)) (sqrt.f64 (log.f64 base))) (/.f64 (sqrt.f64 (atan2.f64 im re)) (sqrt.f64 (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 1 (log.f64 base)) (atan2.f64 im re))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 1 (neg.f64 (log.f64 base))) (neg.f64 (atan2.f64 im re)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 -1 (neg.f64 (/.f64 (log.f64 base) (atan2.f64 im re))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 1 (/.f64 (log.f64 base) (atan2.f64 im re)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 1 (/.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) 1))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (cbrt.f64 (pow.f64 (atan2.f64 im re) 2)) (/.f64 (log.f64 base) (cbrt.f64 (atan2.f64 im re))))
(/.f64 (*.f64 (cbrt.f64 (pow.f64 (atan2.f64 im re) 2)) (cbrt.f64 (atan2.f64 im re))) (log.f64 base))
(*.f64 (cbrt.f64 (atan2.f64 im re)) (/.f64 (cbrt.f64 (pow.f64 (atan2.f64 im re) 2)) (log.f64 base)))
(*.f64 (cbrt.f64 (pow.f64 (atan2.f64 im re) 2)) (/.f64 (cbrt.f64 (atan2.f64 im re)) (log.f64 base)))
(/.f64 (sqrt.f64 (atan2.f64 im re)) (/.f64 (log.f64 base) (sqrt.f64 (atan2.f64 im re))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (neg.f64 (atan2.f64 im re)) (neg.f64 (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))))
(/.f64 (/.f64 (atan2.f64 im re) (sqrt.f64 (log.f64 base))) (sqrt.f64 (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (/.f64 (atan2.f64 im re) 1) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (/.f64 1 (log.f64 base)) (/.f64 1 (atan2.f64 im re)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (/.f64 1 (pow.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) 2)) (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (/.f64 (atan2.f64 im re) (cbrt.f64 (pow.f64 (log.f64 base) 2))) (cbrt.f64 (log.f64 base)))
(*.f64 (/.f64 1 (cbrt.f64 (pow.f64 (log.f64 base) 2))) (/.f64 (atan2.f64 im re) (cbrt.f64 (log.f64 base))))
(/.f64 (/.f64 (atan2.f64 im re) (cbrt.f64 (log.f64 base))) (cbrt.f64 (pow.f64 (log.f64 base) 2)))
(/.f64 (atan2.f64 im re) (*.f64 (cbrt.f64 (pow.f64 (log.f64 base) 2)) (cbrt.f64 (log.f64 base))))
(sqrt.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -2))
(/.f64 (atan2.f64 im re) (log.f64 base))
(log.f64 (exp.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(cbrt.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3))
(/.f64 (atan2.f64 im re) (log.f64 base))
(cbrt.f64 (/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(expm1.f64 (log1p.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(log1p.f64 (expm1.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(exp.f64 (log.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(-.f64 (+.f64 1 (/.f64 (log.f64 base) (atan2.f64 im re))) 1)
(neg.f64 (/.f64 (neg.f64 (log.f64 base)) (atan2.f64 im re)))
(/.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 (log.f64 base) (/.f64 1 (atan2.f64 im re)))
(neg.f64 (/.f64 (neg.f64 (log.f64 base)) (atan2.f64 im re)))
(/.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) 1)
(neg.f64 (/.f64 (neg.f64 (log.f64 base)) (atan2.f64 im re)))
(/.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 1 (/.f64 (log.f64 base) (atan2.f64 im re)))
(neg.f64 (/.f64 (neg.f64 (log.f64 base)) (atan2.f64 im re)))
(/.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 (cbrt.f64 (pow.f64 (log.f64 base) 2)) (*.f64 (cbrt.f64 (log.f64 base)) (/.f64 1 (atan2.f64 im re))))
(*.f64 (cbrt.f64 (pow.f64 (log.f64 base) 2)) (*.f64 (/.f64 1 (atan2.f64 im re)) (cbrt.f64 (log.f64 base))))
(/.f64 (cbrt.f64 (pow.f64 (log.f64 base) 2)) (/.f64 (atan2.f64 im re) (cbrt.f64 (log.f64 base))))
(*.f64 (cbrt.f64 (pow.f64 (log.f64 base) 2)) (/.f64 (cbrt.f64 (log.f64 base)) (atan2.f64 im re)))
(*.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) (pow.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) 2))
(neg.f64 (/.f64 (neg.f64 (log.f64 base)) (atan2.f64 im re)))
(/.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) 2) (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))))
(neg.f64 (/.f64 (neg.f64 (log.f64 base)) (atan2.f64 im re)))
(/.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 (sqrt.f64 (log.f64 base)) (*.f64 (sqrt.f64 (log.f64 base)) (/.f64 1 (atan2.f64 im re))))
(neg.f64 (/.f64 (neg.f64 (log.f64 base)) (atan2.f64 im re)))
(/.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))))
(neg.f64 (/.f64 (neg.f64 (log.f64 base)) (atan2.f64 im re)))
(/.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 (neg.f64 (log.f64 base)) (/.f64 1 (neg.f64 (atan2.f64 im re))))
(neg.f64 (/.f64 (neg.f64 (log.f64 base)) (atan2.f64 im re)))
(/.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 (/.f64 1 (atan2.f64 im re)) (log.f64 base))
(neg.f64 (/.f64 (neg.f64 (log.f64 base)) (atan2.f64 im re)))
(/.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 (/.f64 (cbrt.f64 (pow.f64 (log.f64 base) 2)) 1) (/.f64 (cbrt.f64 (log.f64 base)) (atan2.f64 im re)))
(*.f64 (cbrt.f64 (pow.f64 (log.f64 base) 2)) (*.f64 (/.f64 1 (atan2.f64 im re)) (cbrt.f64 (log.f64 base))))
(/.f64 (cbrt.f64 (pow.f64 (log.f64 base) 2)) (/.f64 (atan2.f64 im re) (cbrt.f64 (log.f64 base))))
(*.f64 (cbrt.f64 (pow.f64 (log.f64 base) 2)) (/.f64 (cbrt.f64 (log.f64 base)) (atan2.f64 im re)))
(*.f64 (/.f64 (sqrt.f64 (log.f64 base)) 1) (/.f64 (sqrt.f64 (log.f64 base)) (atan2.f64 im re)))
(neg.f64 (/.f64 (neg.f64 (log.f64 base)) (atan2.f64 im re)))
(/.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 (/.f64 1 (cbrt.f64 (pow.f64 (atan2.f64 im re) 2))) (/.f64 (log.f64 base) (cbrt.f64 (atan2.f64 im re))))
(*.f64 (/.f64 (log.f64 base) (cbrt.f64 (atan2.f64 im re))) (/.f64 1 (cbrt.f64 (pow.f64 (atan2.f64 im re) 2))))
(/.f64 (/.f64 (log.f64 base) (cbrt.f64 (atan2.f64 im re))) (cbrt.f64 (pow.f64 (atan2.f64 im re) 2)))
(/.f64 (log.f64 base) (*.f64 (cbrt.f64 (pow.f64 (atan2.f64 im re) 2)) (cbrt.f64 (atan2.f64 im re))))
(*.f64 (/.f64 (cbrt.f64 (pow.f64 (log.f64 base) 2)) (cbrt.f64 (pow.f64 (atan2.f64 im re) 2))) (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))))
(*.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) (/.f64 (cbrt.f64 (pow.f64 (log.f64 base) 2)) (cbrt.f64 (pow.f64 (atan2.f64 im re) 2))))
(/.f64 (cbrt.f64 (pow.f64 (log.f64 base) 2)) (/.f64 (cbrt.f64 (pow.f64 (atan2.f64 im re) 2)) (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re)))))
(*.f64 (/.f64 (sqrt.f64 (log.f64 base)) (cbrt.f64 (pow.f64 (atan2.f64 im re) 2))) (/.f64 (sqrt.f64 (log.f64 base)) (cbrt.f64 (atan2.f64 im re))))
(*.f64 (/.f64 (log.f64 base) (cbrt.f64 (atan2.f64 im re))) (/.f64 1 (cbrt.f64 (pow.f64 (atan2.f64 im re) 2))))
(/.f64 (/.f64 (log.f64 base) (cbrt.f64 (atan2.f64 im re))) (cbrt.f64 (pow.f64 (atan2.f64 im re) 2)))
(/.f64 (log.f64 base) (*.f64 (cbrt.f64 (pow.f64 (atan2.f64 im re) 2)) (cbrt.f64 (atan2.f64 im re))))
(*.f64 (/.f64 1 (sqrt.f64 (atan2.f64 im re))) (/.f64 (log.f64 base) (sqrt.f64 (atan2.f64 im re))))
(neg.f64 (/.f64 (neg.f64 (log.f64 base)) (atan2.f64 im re)))
(/.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 (/.f64 (cbrt.f64 (pow.f64 (log.f64 base) 2)) (sqrt.f64 (atan2.f64 im re))) (/.f64 (cbrt.f64 (log.f64 base)) (sqrt.f64 (atan2.f64 im re))))
(*.f64 (cbrt.f64 (pow.f64 (log.f64 base) 2)) (*.f64 (/.f64 1 (atan2.f64 im re)) (cbrt.f64 (log.f64 base))))
(/.f64 (cbrt.f64 (pow.f64 (log.f64 base) 2)) (/.f64 (atan2.f64 im re) (cbrt.f64 (log.f64 base))))
(*.f64 (cbrt.f64 (pow.f64 (log.f64 base) 2)) (/.f64 (cbrt.f64 (log.f64 base)) (atan2.f64 im re)))
(pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) 1)
(neg.f64 (/.f64 (neg.f64 (log.f64 base)) (atan2.f64 im re)))
(/.f64 (log.f64 base) (atan2.f64 im re))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) -1)
(neg.f64 (/.f64 (neg.f64 (log.f64 base)) (atan2.f64 im re)))
(/.f64 (log.f64 base) (atan2.f64 im re))
(pow.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) 3) 1/3)
(neg.f64 (/.f64 (neg.f64 (log.f64 base)) (atan2.f64 im re)))
(/.f64 (log.f64 base) (atan2.f64 im re))
(pow.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) 3)
(neg.f64 (/.f64 (neg.f64 (log.f64 base)) (atan2.f64 im re)))
(/.f64 (log.f64 base) (atan2.f64 im re))
(pow.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) 2)
(neg.f64 (/.f64 (neg.f64 (log.f64 base)) (atan2.f64 im re)))
(/.f64 (log.f64 base) (atan2.f64 im re))
(neg.f64 (/.f64 (log.f64 base) (neg.f64 (atan2.f64 im re))))
(neg.f64 (/.f64 (neg.f64 (log.f64 base)) (atan2.f64 im re)))
(/.f64 (log.f64 base) (atan2.f64 im re))
(sqrt.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) 2))
(neg.f64 (/.f64 (neg.f64 (log.f64 base)) (atan2.f64 im re)))
(/.f64 (log.f64 base) (atan2.f64 im re))
(log.f64 (pow.f64 base (/.f64 1 (atan2.f64 im re))))
(neg.f64 (/.f64 (neg.f64 (log.f64 base)) (atan2.f64 im re)))
(/.f64 (log.f64 base) (atan2.f64 im re))
(cbrt.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) 3))
(neg.f64 (/.f64 (neg.f64 (log.f64 base)) (atan2.f64 im re)))
(/.f64 (log.f64 base) (atan2.f64 im re))
(cbrt.f64 (/.f64 (pow.f64 (log.f64 base) 3) (pow.f64 (atan2.f64 im re) 3)))
(neg.f64 (/.f64 (neg.f64 (log.f64 base)) (atan2.f64 im re)))
(/.f64 (log.f64 base) (atan2.f64 im re))
(expm1.f64 (log1p.f64 (/.f64 (log.f64 base) (atan2.f64 im re))))
(neg.f64 (/.f64 (neg.f64 (log.f64 base)) (atan2.f64 im re)))
(/.f64 (log.f64 base) (atan2.f64 im re))
(log1p.f64 (expm1.f64 (/.f64 (log.f64 base) (atan2.f64 im re))))
(neg.f64 (/.f64 (neg.f64 (log.f64 base)) (atan2.f64 im re)))
(/.f64 (log.f64 base) (atan2.f64 im re))
(exp.f64 (log.f64 (/.f64 (log.f64 base) (atan2.f64 im re))))
(neg.f64 (/.f64 (neg.f64 (log.f64 base)) (atan2.f64 im re)))
(/.f64 (log.f64 base) (atan2.f64 im re))

localize12.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.2b
(pow.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2)
0.3b
(/.f64 (atan2.f64 im re) (log.f64 base))
3.7b
(sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
Compiler

Compiled 34 to 10 computations (70.6% saved)

series9.0ms (0.2%)

Counts
2 → 44
Calls

18 calls:

TimeVariablePointExpression
2.0ms
im
@0
(pow.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2)
1.0ms
base
@inf
(pow.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2)
1.0ms
base
@-inf
(pow.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2)
1.0ms
im
@0
(sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
1.0ms
im
@inf
(pow.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2)

rewrite60.0ms (1%)

Algorithm
batch-egg-rewrite
Rules
858×pow1_binary64
791×add-log-exp_binary64
791×log1p-expm1-u_binary64
791×expm1-log1p-u_binary64
772×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01020
120520
2219220
Stop Event
node limit
Counts
2 → 71
Calls
Call 1
Inputs
(sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
(pow.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (cbrt.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/4) (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (atan2.f64 im re)) (sqrt.f64 (/.f64 1 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (atan2.f64 im re)) (pow.f64 (/.f64 1 (log.f64 base)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (atan2.f64 im re)) (/.f64 1 (sqrt.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2)) (sqrt.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/2) (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) 1/2) (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (sqrt.f64 (log.f64 base)) (sqrt.f64 (atan2.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (atan2.f64 im re)) (sqrt.f64 (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (neg.f64 (atan2.f64 im re))) (sqrt.f64 (neg.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (sqrt.f64 (atan2.f64 im re))) (neg.f64 (sqrt.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3/2) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/4) 2)))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (/.f64 (atan2.f64 im re) (log.f64 base))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (atan2.f64 im re) (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (*.f64 (cbrt.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) (*.f64 (cbrt.f64 (atan2.f64 im re)) (/.f64 1 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/4) (*.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/4) (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (atan2.f64 im re)) (*.f64 (sqrt.f64 (atan2.f64 im re)) (/.f64 1 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (atan2.f64 im re)) (/.f64 1 (neg.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (log.f64 base)) (atan2.f64 im re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/4)) (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) 1) (/.f64 (cbrt.f64 (atan2.f64 im re)) (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (atan2.f64 im re)) 1) (/.f64 (sqrt.f64 (atan2.f64 im re)) (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cbrt.f64 (pow.f64 (log.f64 base) 2))) (/.f64 (atan2.f64 im re) (cbrt.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) (cbrt.f64 (pow.f64 (log.f64 base) 2))) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (atan2.f64 im re)) (cbrt.f64 (pow.f64 (log.f64 base) 2))) (/.f64 (sqrt.f64 (atan2.f64 im re)) (cbrt.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (log.f64 base))) (/.f64 (atan2.f64 im re) (sqrt.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) (sqrt.f64 (log.f64 base))) (/.f64 (cbrt.f64 (atan2.f64 im re)) (sqrt.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) (cbrt.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (atan2.f64 im re) (log.f64 base))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (log.f64 base) (atan2.f64 im re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) (/.f64 (log.f64 base) (cbrt.f64 (atan2.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (atan2.f64 im re)) (/.f64 (log.f64 base) (sqrt.f64 (atan2.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (atan2.f64 im re)) (neg.f64 (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1 (neg.f64 (/.f64 (log.f64 base) (atan2.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (neg.f64 (atan2.f64 im re))) (neg.f64 (neg.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (atan2.f64 im re) (sqrt.f64 (log.f64 base))) (sqrt.f64 (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (atan2.f64 im re) 1) (log.f64 base))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (atan2.f64 im re) (cbrt.f64 (pow.f64 (log.f64 base) 2))) (cbrt.f64 (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (atan2.f64 im re)) (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) (sqrt.f64 (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (sqrt.f64 (atan2.f64 im re))) (sqrt.f64 (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (atan2.f64 im re) (neg.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))))

simplify82.0ms (1.4%)

Algorithm
egg-herbie
Rules
607×fma-def_binary64
522×associate-/l*_binary64
463×fma-neg_binary64
439×unswap-sqr_binary64
320×associate-/r*_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01771576
13641471
212901425
372081425
Stop Event
node limit
Counts
115 → 96
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 -1) (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base)))))
(*.f64 (sqrt.f64 -1) (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base)))))
(*.f64 (sqrt.f64 -1) (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base)))))
(*.f64 (sqrt.f64 -1) (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base)))))
(sqrt.f64 (/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base))))))
(sqrt.f64 (/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base))))))
(sqrt.f64 (/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base))))))
(sqrt.f64 (/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base))))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (atan2.f64 im re)) (log.f64 (/.f64 1 base)))
(/.f64 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (atan2.f64 im re)) (log.f64 (/.f64 1 base)))
(/.f64 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (atan2.f64 im re)) (log.f64 (/.f64 1 base)))
(/.f64 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (atan2.f64 im re)) (log.f64 (/.f64 1 base)))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(-.f64 (+.f64 1 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) 1)
(*.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 1)
(*.f64 1 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(*.f64 (cbrt.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(*.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (cbrt.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))
(*.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/4) (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/4))
(*.f64 (sqrt.f64 (atan2.f64 im re)) (sqrt.f64 (/.f64 1 (log.f64 base))))
(*.f64 (sqrt.f64 (atan2.f64 im re)) (pow.f64 (/.f64 1 (log.f64 base)) 1/2))
(*.f64 (sqrt.f64 (atan2.f64 im re)) (/.f64 1 (sqrt.f64 (log.f64 base))))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2)) (sqrt.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))
(*.f64 (pow.f64 1 1/2) (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) 1/2) (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 1/2))
(/.f64 1 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))))
(/.f64 1 (/.f64 (sqrt.f64 (log.f64 base)) (sqrt.f64 (atan2.f64 im re))))
(/.f64 (sqrt.f64 (atan2.f64 im re)) (sqrt.f64 (log.f64 base)))
(/.f64 (sqrt.f64 (neg.f64 (atan2.f64 im re))) (sqrt.f64 (neg.f64 (log.f64 base))))
(/.f64 (neg.f64 (sqrt.f64 (atan2.f64 im re))) (neg.f64 (sqrt.f64 (log.f64 base))))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/2)
(pow.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 1)
(pow.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3/2) 1/3)
(pow.f64 (cbrt.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) 3)
(pow.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/4) 2)
(fabs.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(log.f64 (exp.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))
(cbrt.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3/2))
(expm1.f64 (log1p.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))
(log1p.f64 (expm1.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))
(exp.f64 (log.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))
(-.f64 (+.f64 1 (/.f64 (atan2.f64 im re) (log.f64 base))) 1)
(*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base)))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1)
(*.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(*.f64 1 (/.f64 (atan2.f64 im re) (log.f64 base)))
(*.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2))
(*.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (*.f64 (cbrt.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(*.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) (*.f64 (cbrt.f64 (atan2.f64 im re)) (/.f64 1 (log.f64 base))))
(*.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/4) (*.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/4) (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))
(*.f64 (sqrt.f64 (atan2.f64 im re)) (*.f64 (sqrt.f64 (atan2.f64 im re)) (/.f64 1 (log.f64 base))))
(*.f64 (neg.f64 (atan2.f64 im re)) (/.f64 1 (neg.f64 (log.f64 base))))
(*.f64 (/.f64 1 (log.f64 base)) (atan2.f64 im re))
(*.f64 (*.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/4)) (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/4))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) 1) (/.f64 (cbrt.f64 (atan2.f64 im re)) (log.f64 base)))
(*.f64 (/.f64 (sqrt.f64 (atan2.f64 im re)) 1) (/.f64 (sqrt.f64 (atan2.f64 im re)) (log.f64 base)))
(*.f64 (/.f64 1 (cbrt.f64 (pow.f64 (log.f64 base) 2))) (/.f64 (atan2.f64 im re) (cbrt.f64 (log.f64 base))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) (cbrt.f64 (pow.f64 (log.f64 base) 2))) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(*.f64 (/.f64 (sqrt.f64 (atan2.f64 im re)) (cbrt.f64 (pow.f64 (log.f64 base) 2))) (/.f64 (sqrt.f64 (atan2.f64 im re)) (cbrt.f64 (log.f64 base))))
(*.f64 (/.f64 1 (sqrt.f64 (log.f64 base))) (/.f64 (atan2.f64 im re) (sqrt.f64 (log.f64 base))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) (sqrt.f64 (log.f64 base))) (/.f64 (cbrt.f64 (atan2.f64 im re)) (sqrt.f64 (log.f64 base))))
(*.f64 (*.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) (cbrt.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 1 (/.f64 (log.f64 base) (atan2.f64 im re)))
(/.f64 1 (/.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) 1))
(/.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) (/.f64 (log.f64 base) (cbrt.f64 (atan2.f64 im re))))
(/.f64 (sqrt.f64 (atan2.f64 im re)) (/.f64 (log.f64 base) (sqrt.f64 (atan2.f64 im re))))
(/.f64 (neg.f64 (atan2.f64 im re)) (neg.f64 (log.f64 base)))
(/.f64 -1 (neg.f64 (/.f64 (log.f64 base) (atan2.f64 im re))))
(/.f64 (neg.f64 (neg.f64 (atan2.f64 im re))) (neg.f64 (neg.f64 (log.f64 base))))
(/.f64 (/.f64 (atan2.f64 im re) (sqrt.f64 (log.f64 base))) (sqrt.f64 (log.f64 base)))
(/.f64 (/.f64 (atan2.f64 im re) 1) (log.f64 base))
(/.f64 (/.f64 (atan2.f64 im re) (cbrt.f64 (pow.f64 (log.f64 base) 2))) (cbrt.f64 (log.f64 base)))
(/.f64 (*.f64 (sqrt.f64 (atan2.f64 im re)) (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) (sqrt.f64 (log.f64 base)))
(/.f64 (*.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (sqrt.f64 (atan2.f64 im re))) (sqrt.f64 (log.f64 base)))
(neg.f64 (/.f64 (atan2.f64 im re) (neg.f64 (log.f64 base))))
(sqrt.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2))
(log.f64 (exp.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(cbrt.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3))
(cbrt.f64 (/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3)))
(expm1.f64 (log1p.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(log1p.f64 (expm1.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(exp.f64 (log.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
Outputs
(*.f64 (sqrt.f64 -1) (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base)))))
(*.f64 (sqrt.f64 -1) (sqrt.f64 (/.f64 (atan2.f64 im re) (neg.f64 (log.f64 base)))))
(*.f64 (sqrt.f64 -1) (sqrt.f64 (/.f64 (neg.f64 (atan2.f64 im re)) (log.f64 base))))
(*.f64 (sqrt.f64 -1) (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base)))))
(*.f64 (sqrt.f64 -1) (sqrt.f64 (/.f64 (atan2.f64 im re) (neg.f64 (log.f64 base)))))
(*.f64 (sqrt.f64 -1) (sqrt.f64 (/.f64 (neg.f64 (atan2.f64 im re)) (log.f64 base))))
(*.f64 (sqrt.f64 -1) (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base)))))
(*.f64 (sqrt.f64 -1) (sqrt.f64 (/.f64 (atan2.f64 im re) (neg.f64 (log.f64 base)))))
(*.f64 (sqrt.f64 -1) (sqrt.f64 (/.f64 (neg.f64 (atan2.f64 im re)) (log.f64 base))))
(*.f64 (sqrt.f64 -1) (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base)))))
(*.f64 (sqrt.f64 -1) (sqrt.f64 (/.f64 (atan2.f64 im re) (neg.f64 (log.f64 base)))))
(*.f64 (sqrt.f64 -1) (sqrt.f64 (/.f64 (neg.f64 (atan2.f64 im re)) (log.f64 base))))
(sqrt.f64 (/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base))))))
(sqrt.f64 (/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base))))))
(sqrt.f64 (/.f64 (atan2.f64 im re) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base)))))
(sqrt.f64 (/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base))))))
(sqrt.f64 (/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base))))))
(sqrt.f64 (/.f64 (atan2.f64 im re) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base)))))
(sqrt.f64 (/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base))))))
(sqrt.f64 (/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base))))))
(sqrt.f64 (/.f64 (atan2.f64 im re) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base)))))
(sqrt.f64 (/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base))))))
(sqrt.f64 (/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base))))))
(sqrt.f64 (/.f64 (atan2.f64 im re) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (atan2.f64 im re)) (log.f64 (/.f64 1 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (atan2.f64 im re)) (log.f64 (/.f64 1 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (atan2.f64 im re)) (log.f64 (/.f64 1 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (atan2.f64 im re)) (log.f64 (/.f64 1 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))))
(-.f64 (+.f64 1 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) 1)
(+.f64 1 (-.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 1))
(+.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 0)
(sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
(*.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 1)
(+.f64 1 (-.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 1))
(+.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 0)
(sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
(*.f64 1 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(+.f64 1 (-.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 1))
(+.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 0)
(sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
(*.f64 (cbrt.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(*.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (cbrt.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))
(*.f64 (cbrt.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(*.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/4) (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/4))
(+.f64 1 (-.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 1))
(+.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 0)
(sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
(*.f64 (sqrt.f64 (atan2.f64 im re)) (sqrt.f64 (/.f64 1 (log.f64 base))))
(*.f64 (sqrt.f64 (atan2.f64 im re)) (pow.f64 (/.f64 1 (log.f64 base)) 1/2))
(*.f64 (sqrt.f64 (atan2.f64 im re)) (sqrt.f64 (/.f64 1 (log.f64 base))))
(*.f64 (sqrt.f64 (atan2.f64 im re)) (/.f64 1 (sqrt.f64 (log.f64 base))))
(/.f64 (*.f64 (sqrt.f64 (atan2.f64 im re)) 1) (sqrt.f64 (log.f64 base)))
(/.f64 (sqrt.f64 (atan2.f64 im re)) (sqrt.f64 (log.f64 base)))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2)) (sqrt.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))
(*.f64 (fabs.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) (sqrt.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))
(*.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (sqrt.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))
(*.f64 (pow.f64 1 1/2) (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(+.f64 1 (-.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 1))
(+.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 0)
(sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) 1/2) (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 1/2))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2)) (sqrt.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))
(*.f64 (fabs.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) (sqrt.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))
(*.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (sqrt.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))
(/.f64 1 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))))
(/.f64 1 (/.f64 (sqrt.f64 (log.f64 base)) (sqrt.f64 (atan2.f64 im re))))
(/.f64 (*.f64 (sqrt.f64 (atan2.f64 im re)) 1) (sqrt.f64 (log.f64 base)))
(/.f64 (sqrt.f64 (atan2.f64 im re)) (sqrt.f64 (log.f64 base)))
(/.f64 (sqrt.f64 (atan2.f64 im re)) (sqrt.f64 (log.f64 base)))
(/.f64 (*.f64 (sqrt.f64 (atan2.f64 im re)) 1) (sqrt.f64 (log.f64 base)))
(/.f64 (sqrt.f64 (neg.f64 (atan2.f64 im re))) (sqrt.f64 (neg.f64 (log.f64 base))))
(/.f64 (neg.f64 (sqrt.f64 (atan2.f64 im re))) (neg.f64 (sqrt.f64 (log.f64 base))))
(/.f64 (*.f64 (sqrt.f64 (atan2.f64 im re)) 1) (sqrt.f64 (log.f64 base)))
(/.f64 (sqrt.f64 (atan2.f64 im re)) (sqrt.f64 (log.f64 base)))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/2)
(+.f64 1 (-.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 1))
(+.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 0)
(sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
(pow.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 1)
(+.f64 1 (-.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 1))
(+.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 0)
(sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
(pow.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3/2) 1/3)
(cbrt.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3/2))
(pow.f64 (cbrt.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) 3)
(+.f64 1 (-.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 1))
(+.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 0)
(sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
(pow.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/4) 2)
(+.f64 1 (-.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 1))
(+.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 0)
(sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
(fabs.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(+.f64 1 (-.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 1))
(+.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 0)
(sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
(log.f64 (exp.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))
(+.f64 1 (-.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 1))
(+.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 0)
(sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
(cbrt.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3/2))
(expm1.f64 (log1p.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))
(+.f64 1 (-.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 1))
(+.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 0)
(sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
(log1p.f64 (expm1.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))
(+.f64 1 (-.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 1))
(+.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 0)
(sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
(exp.f64 (log.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))
(+.f64 1 (-.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 1))
(+.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 0)
(sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
(-.f64 (+.f64 1 (/.f64 (atan2.f64 im re) (log.f64 base))) 1)
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1)
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 1 (/.f64 (atan2.f64 im re) (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (*.f64 (cbrt.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))
(*.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (*.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (cbrt.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))
(*.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (pow.f64 (cbrt.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) 4))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) (*.f64 (cbrt.f64 (atan2.f64 im re)) (/.f64 1 (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/4) (*.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/4) (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (sqrt.f64 (atan2.f64 im re)) (*.f64 (sqrt.f64 (atan2.f64 im re)) (/.f64 1 (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (neg.f64 (atan2.f64 im re)) (/.f64 1 (neg.f64 (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 1 (log.f64 base)) (atan2.f64 im re))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (*.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/4)) (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/4))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) 1) (/.f64 (cbrt.f64 (atan2.f64 im re)) (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (sqrt.f64 (atan2.f64 im re)) 1) (/.f64 (sqrt.f64 (atan2.f64 im re)) (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 1 (cbrt.f64 (pow.f64 (log.f64 base) 2))) (/.f64 (atan2.f64 im re) (cbrt.f64 (log.f64 base))))
(/.f64 (*.f64 1 (/.f64 (atan2.f64 im re) (cbrt.f64 (log.f64 base)))) (cbrt.f64 (pow.f64 (log.f64 base) 2)))
(/.f64 (atan2.f64 im re) (*.f64 (cbrt.f64 (pow.f64 (log.f64 base) 2)) (cbrt.f64 (log.f64 base))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) (cbrt.f64 (pow.f64 (log.f64 base) 2))) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 (*.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) (cbrt.f64 (pow.f64 (log.f64 base) 2)))
(*.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (/.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) (cbrt.f64 (pow.f64 (log.f64 base) 2))))
(/.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) (/.f64 (cbrt.f64 (pow.f64 (log.f64 base) 2)) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))
(*.f64 (/.f64 (sqrt.f64 (atan2.f64 im re)) (cbrt.f64 (pow.f64 (log.f64 base) 2))) (/.f64 (sqrt.f64 (atan2.f64 im re)) (cbrt.f64 (log.f64 base))))
(/.f64 (*.f64 1 (/.f64 (atan2.f64 im re) (cbrt.f64 (log.f64 base)))) (cbrt.f64 (pow.f64 (log.f64 base) 2)))
(/.f64 (atan2.f64 im re) (*.f64 (cbrt.f64 (pow.f64 (log.f64 base) 2)) (cbrt.f64 (log.f64 base))))
(*.f64 (/.f64 1 (sqrt.f64 (log.f64 base))) (/.f64 (atan2.f64 im re) (sqrt.f64 (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) (sqrt.f64 (log.f64 base))) (/.f64 (cbrt.f64 (atan2.f64 im re)) (sqrt.f64 (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (*.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) (cbrt.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))
(*.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (*.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (cbrt.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))
(*.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (pow.f64 (cbrt.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) 4))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 1 (/.f64 (log.f64 base) (atan2.f64 im re)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 1 (/.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) 1))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) (/.f64 (log.f64 base) (cbrt.f64 (atan2.f64 im re))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (sqrt.f64 (atan2.f64 im re)) (/.f64 (log.f64 base) (sqrt.f64 (atan2.f64 im re))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (neg.f64 (atan2.f64 im re)) (neg.f64 (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 -1 (neg.f64 (/.f64 (log.f64 base) (atan2.f64 im re))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (neg.f64 (neg.f64 (atan2.f64 im re))) (neg.f64 (neg.f64 (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (/.f64 (atan2.f64 im re) (sqrt.f64 (log.f64 base))) (sqrt.f64 (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (/.f64 (atan2.f64 im re) 1) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (/.f64 (atan2.f64 im re) (cbrt.f64 (pow.f64 (log.f64 base) 2))) (cbrt.f64 (log.f64 base)))
(/.f64 (*.f64 1 (/.f64 (atan2.f64 im re) (cbrt.f64 (log.f64 base)))) (cbrt.f64 (pow.f64 (log.f64 base) 2)))
(/.f64 (atan2.f64 im re) (*.f64 (cbrt.f64 (pow.f64 (log.f64 base) 2)) (cbrt.f64 (log.f64 base))))
(/.f64 (*.f64 (sqrt.f64 (atan2.f64 im re)) (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) (sqrt.f64 (log.f64 base)))
(/.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (/.f64 (sqrt.f64 (log.f64 base)) (sqrt.f64 (atan2.f64 im re))))
(/.f64 (sqrt.f64 (atan2.f64 im re)) (/.f64 (sqrt.f64 (log.f64 base)) (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))
(/.f64 (*.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (sqrt.f64 (atan2.f64 im re))) (sqrt.f64 (log.f64 base)))
(/.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (/.f64 (sqrt.f64 (log.f64 base)) (sqrt.f64 (atan2.f64 im re))))
(/.f64 (sqrt.f64 (atan2.f64 im re)) (/.f64 (sqrt.f64 (log.f64 base)) (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))
(neg.f64 (/.f64 (atan2.f64 im re) (neg.f64 (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(sqrt.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2))
(/.f64 (atan2.f64 im re) (log.f64 base))
(log.f64 (exp.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(cbrt.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3))
(/.f64 (atan2.f64 im re) (log.f64 base))
(cbrt.f64 (/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(expm1.f64 (log1p.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(log1p.f64 (expm1.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(exp.f64 (log.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))

localize42.0ms (0.7%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(/.f64 1 (neg.f64 (pow.f64 (log.f64 base) 2)))
0.3b
(*.f64 (log.f64 base) (atan2.f64 im re))
0.3b
(*.f64 (neg.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (/.f64 1 (neg.f64 (pow.f64 (log.f64 base) 2))))
0.5b
(pow.f64 (log.f64 base) 2)
Compiler

Compiled 57 to 25 computations (56.1% saved)

series8.0ms (0.1%)

Counts
4 → 64
Calls

24 calls:

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

rewrite57.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
596×log-prod_binary64
335×pow-prod-down_binary64
317×pow-unpow_binary64
284×pow2_binary64
201×pow1/3_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01447
128741
2360233
Stop Event
node limit
Counts
4 → 136
Calls
Call 1
Inputs
(pow.f64 (log.f64 base) 2)
(*.f64 (neg.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (/.f64 1 (neg.f64 (pow.f64 (log.f64 base) 2))))
(*.f64 (log.f64 base) (atan2.f64 im re))
(/.f64 1 (neg.f64 (pow.f64 (log.f64 base) 2)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (pow.f64 (log.f64 base) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 base (log.f64 base))) 2)) (log.f64 (cbrt.f64 (pow.f64 base (log.f64 base)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 base (log.f64 base)))) (log.f64 (sqrt.f64 (pow.f64 base (log.f64 base)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (pow.f64 (log.f64 base) 2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (pow.f64 (log.f64 base) 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (log.f64 base) (log.f64 base))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (log.f64 base) (neg.f64 (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (log.f64 base) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (log.f64 base) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (log.f64 base) 2) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (log.f64 base)) 4) (pow.f64 (cbrt.f64 (log.f64 base)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (log.f64 base)) 4) (neg.f64 (pow.f64 (cbrt.f64 (log.f64 base)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (log.f64 base)) 2) (pow.f64 (cbrt.f64 (log.f64 base)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (log.f64 base)) (pow.f64 (log.f64 base) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (pow.f64 (log.f64 base) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (log.f64 base)) (log.f64 base))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (log.f64 base) 3/2) (sqrt.f64 (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (pow.f64 (cbrt.f64 (log.f64 base)) 4)) (pow.f64 (cbrt.f64 (log.f64 base)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (log.f64 base)) 5) (cbrt.f64 (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 -1 (pow.f64 (cbrt.f64 (log.f64 base)) 4)) (pow.f64 (cbrt.f64 (log.f64 base)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (log.f64 base) (/.f64 1 (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (pow.f64 (log.f64 base) -2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (log.f64 base) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (log.f64 base) 2) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (cbrt.f64 (log.f64 base)) 4) (pow.f64 (cbrt.f64 (log.f64 base)) -2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1 (pow.f64 (log.f64 base) -2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 0 (pow.f64 (log.f64 base) 6)) (+.f64 0 (+.f64 (pow.f64 (log.f64 base) 4) (*.f64 0 (pow.f64 (log.f64 base) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 0 (pow.f64 (log.f64 base) 4)) (pow.f64 (log.f64 base) 2))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (pow.f64 (log.f64 base) 2))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (log.f64 base) 4))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 base (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (pow.f64 (log.f64 base) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 1 (+.f64 1 (expm1.f64 (pow.f64 (log.f64 base) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (log.f64 base) 6))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (log.f64 base) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (log.f64 base) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 2 (log.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 2 (log.f64 (log.f64 base))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (log.f64 base) 6)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 2 (log.f64 (cbrt.f64 (log.f64 base)))) 3))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (atan2.f64 im re)) (/.f64 1 (log.f64 base)))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (atan2.f64 im re)) (/.f64 1 (log.f64 base))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (atan2.f64 im re)) (/.f64 1 (log.f64 base))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (atan2.f64 im re)) (/.f64 1 (log.f64 base))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 0 (pow.f64 (log.f64 base) 2)) (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (log.f64 base) (/.f64 (pow.f64 (log.f64 base) 2) (neg.f64 (atan2.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (pow.f64 (log.f64 base) 2) (*.f64 (log.f64 base) (atan2.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (cbrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) 2) (/.f64 (pow.f64 (log.f64 base) 2) (cbrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (/.f64 (pow.f64 (log.f64 base) 2) (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1 (/.f64 (pow.f64 (log.f64 base) 2) (*.f64 (log.f64 base) (atan2.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (log.f64 base)) (/.f64 (pow.f64 (log.f64 base) 2) (atan2.f64 im re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (log.f64 base)) (log.f64 base))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) 1) (pow.f64 (log.f64 base) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (cbrt.f64 (log.f64 base)) 4)) (pow.f64 (cbrt.f64 (log.f64 base)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) -1) (pow.f64 (log.f64 base) 2))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) 3) (pow.f64 (log.f64 base) 6)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (log.f64 base) 2) (*.f64 (log.f64 base) (atan2.f64 im re))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (atan2.f64 im re)) (/.f64 1 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 1 (+.f64 1 (expm1.f64 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base)))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) 3) (pow.f64 (log.f64 base) 6)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base))))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base))))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base))))) 2))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (log.f64 base) (atan2.f64 im re)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 base (atan2.f64 im re))) 2)) (log.f64 (cbrt.f64 (pow.f64 base (atan2.f64 im re)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 base (atan2.f64 im re)))) (log.f64 (sqrt.f64 (pow.f64 base (atan2.f64 im re)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (*.f64 (log.f64 base) (atan2.f64 im re)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (log.f64 base) (atan2.f64 im re)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 0 (pow.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) 3)) (+.f64 0 (+.f64 (pow.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) 2) (*.f64 0 (*.f64 (log.f64 base) (atan2.f64 im re))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 0 (pow.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) 2)) (*.f64 (log.f64 base) (atan2.f64 im re)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 (log.f64 base) (atan2.f64 im re)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 base (atan2.f64 im re)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (-.f64 (pow.f64 base (atan2.f64 im re)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 1 (+.f64 1 (-.f64 (pow.f64 base (atan2.f64 im re)) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (log.f64 base) (atan2.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (-.f64 (pow.f64 base (atan2.f64 im re)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (log.f64 base) (atan2.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 (log.f64 base) (atan2.f64 im re)))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re)))) 2))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (pow.f64 (log.f64 base) -2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (pow.f64 (log.f64 base) -2))) 2)) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 (log.f64 base) -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (log.f64 base) -2)))) (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (log.f64 base) -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (pow.f64 (log.f64 base) -2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (log.f64 base) -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (log.f64 base) -2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (log.f64 base)) -2) (cbrt.f64 (pow.f64 (log.f64 base) -4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (log.f64 base) -4)) (pow.f64 (cbrt.f64 (log.f64 base)) -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (log.f64 base)) (/.f64 1 (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (pow.f64 (log.f64 base) -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 (log.f64 base)) 4)) (pow.f64 (cbrt.f64 (log.f64 base)) -2))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (log.f64 base) -2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (log.f64 base) 2) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (log.f64 base) -2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (log.f64 base) 6) -1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (log.f64 base) 4) -1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (log.f64 base) -4) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (pow.f64 (log.f64 base) -2) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cbrt.f64 (log.f64 base)) 2) -3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cbrt.f64 (log.f64 base)) -2) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1 (log.f64 base)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (log.f64 base) -4))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (log.f64 base) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (pow.f64 (log.f64 base) -2))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (pow.f64 (log.f64 base) -2) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (log.f64 base) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (log.f64 base) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (pow.f64 (log.f64 base) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 2 (log.f64 (log.f64 base))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (log.f64 base) -2)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (pow.f64 (log.f64 base) -2) 3)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (cbrt.f64 (log.f64 base)) -2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (neg.f64 (log.f64 (log.f64 base))) 2))))))

simplify86.0ms (1.4%)

Algorithm
egg-herbie
Rules
619×unswap-sqr_binary64
592×fma-def_binary64
403×distribute-rgt-in_binary64
382×distribute-lft-in_binary64
205×div-sub_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03102168
16931903
224721884
Stop Event
node limit
Counts
200 → 175
Calls
Call 1
Inputs
(pow.f64 (log.f64 (/.f64 1 base)) 2)
(pow.f64 (log.f64 (/.f64 1 base)) 2)
(pow.f64 (log.f64 (/.f64 1 base)) 2)
(pow.f64 (log.f64 (/.f64 1 base)) 2)
(pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) 2)
(pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) 2)
(pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) 2)
(pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) 2)
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 base)) (atan2.f64 im re)))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 base)) (atan2.f64 im re)))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 base)) (atan2.f64 im re)))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 base)) (atan2.f64 im re)))
(*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) (atan2.f64 im re))
(*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) (atan2.f64 im re))
(*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) (atan2.f64 im re))
(*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) (atan2.f64 im re))
(/.f64 -1 (pow.f64 (log.f64 base) 2))
(/.f64 -1 (pow.f64 (log.f64 base) 2))
(/.f64 -1 (pow.f64 (log.f64 base) 2))
(/.f64 -1 (pow.f64 (log.f64 base) 2))
(/.f64 -1 (pow.f64 (log.f64 (/.f64 1 base)) 2))
(/.f64 -1 (pow.f64 (log.f64 (/.f64 1 base)) 2))
(/.f64 -1 (pow.f64 (log.f64 (/.f64 1 base)) 2))
(/.f64 -1 (pow.f64 (log.f64 (/.f64 1 base)) 2))
(/.f64 -1 (pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) 2))
(/.f64 -1 (pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) 2))
(/.f64 -1 (pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) 2))
(/.f64 -1 (pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) 2))
(+.f64 0 (pow.f64 (log.f64 base) 2))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 base (log.f64 base))) 2)) (log.f64 (cbrt.f64 (pow.f64 base (log.f64 base)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 base (log.f64 base)))) (log.f64 (sqrt.f64 (pow.f64 base (log.f64 base)))))
(-.f64 0 (pow.f64 (log.f64 base) 2))
(-.f64 (exp.f64 (log1p.f64 (pow.f64 (log.f64 base) 2))) 1)
(*.f64 (log.f64 base) (log.f64 base))
(*.f64 (log.f64 base) (neg.f64 (log.f64 base)))
(*.f64 1 (pow.f64 (log.f64 base) 2))
(*.f64 (pow.f64 (log.f64 base) 2) 1)
(*.f64 (pow.f64 (log.f64 base) 2) -1)
(*.f64 (pow.f64 (cbrt.f64 (log.f64 base)) 4) (pow.f64 (cbrt.f64 (log.f64 base)) 2))
(*.f64 (pow.f64 (cbrt.f64 (log.f64 base)) 4) (neg.f64 (pow.f64 (cbrt.f64 (log.f64 base)) 2)))
(*.f64 (pow.f64 (cbrt.f64 (log.f64 base)) 2) (pow.f64 (cbrt.f64 (log.f64 base)) 4))
(*.f64 (sqrt.f64 (log.f64 base)) (pow.f64 (log.f64 base) 3/2))
(*.f64 -1 (pow.f64 (log.f64 base) 2))
(*.f64 (neg.f64 (log.f64 base)) (log.f64 base))
(*.f64 (pow.f64 (log.f64 base) 3/2) (sqrt.f64 (log.f64 base)))
(*.f64 (neg.f64 (pow.f64 (cbrt.f64 (log.f64 base)) 4)) (pow.f64 (cbrt.f64 (log.f64 base)) 2))
(*.f64 (pow.f64 (cbrt.f64 (log.f64 base)) 5) (cbrt.f64 (log.f64 base)))
(*.f64 (*.f64 -1 (pow.f64 (cbrt.f64 (log.f64 base)) 4)) (pow.f64 (cbrt.f64 (log.f64 base)) 2))
(/.f64 (log.f64 base) (/.f64 1 (log.f64 base)))
(/.f64 1 (pow.f64 (log.f64 base) -2))
(/.f64 (pow.f64 (log.f64 base) 2) 1)
(/.f64 (pow.f64 (log.f64 base) 2) -1)
(/.f64 (pow.f64 (cbrt.f64 (log.f64 base)) 4) (pow.f64 (cbrt.f64 (log.f64 base)) -2))
(/.f64 -1 (pow.f64 (log.f64 base) -2))
(/.f64 (-.f64 0 (pow.f64 (log.f64 base) 6)) (+.f64 0 (+.f64 (pow.f64 (log.f64 base) 4) (*.f64 0 (pow.f64 (log.f64 base) 2)))))
(/.f64 (-.f64 0 (pow.f64 (log.f64 base) 4)) (pow.f64 (log.f64 base) 2))
(neg.f64 (pow.f64 (log.f64 base) 2))
(sqrt.f64 (pow.f64 (log.f64 base) 4))
(log.f64 (pow.f64 base (log.f64 base)))
(log.f64 (+.f64 1 (expm1.f64 (pow.f64 (log.f64 base) 2))))
(log.f64 (/.f64 1 (+.f64 1 (expm1.f64 (pow.f64 (log.f64 base) 2)))))
(cbrt.f64 (pow.f64 (log.f64 base) 6))
(expm1.f64 (log1p.f64 (pow.f64 (log.f64 base) 2)))
(log1p.f64 (expm1.f64 (pow.f64 (log.f64 base) 2)))
(exp.f64 (*.f64 2 (log.f64 (log.f64 base))))
(exp.f64 (*.f64 (*.f64 2 (log.f64 (log.f64 base))) 1))
(exp.f64 (*.f64 (log.f64 (pow.f64 (log.f64 base) 6)) 1/3))
(exp.f64 (*.f64 (*.f64 2 (log.f64 (cbrt.f64 (log.f64 base)))) 3))
(+.f64 0 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base))))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (atan2.f64 im re)) (/.f64 1 (log.f64 base)))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (atan2.f64 im re)) (/.f64 1 (log.f64 base))))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (atan2.f64 im re)) (/.f64 1 (log.f64 base))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (atan2.f64 im re)) (/.f64 1 (log.f64 base))))))
(-.f64 0 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base))))) 1)
(-.f64 (/.f64 0 (pow.f64 (log.f64 base) 2)) (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base))))
(/.f64 (log.f64 base) (/.f64 (pow.f64 (log.f64 base) 2) (neg.f64 (atan2.f64 im re))))
(/.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) 2))
(/.f64 1 (/.f64 (pow.f64 (log.f64 base) 2) (*.f64 (log.f64 base) (atan2.f64 im re))))
(/.f64 (pow.f64 (cbrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) 2) (/.f64 (pow.f64 (log.f64 base) 2) (cbrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re)))))
(/.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (/.f64 (pow.f64 (log.f64 base) 2) (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re)))))
(/.f64 -1 (/.f64 (pow.f64 (log.f64 base) 2) (*.f64 (log.f64 base) (atan2.f64 im re))))
(/.f64 (neg.f64 (log.f64 base)) (/.f64 (pow.f64 (log.f64 base) 2) (atan2.f64 im re)))
(/.f64 (/.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (log.f64 base)) (log.f64 base))
(/.f64 (/.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) 1) (pow.f64 (log.f64 base) 2))
(/.f64 (/.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (cbrt.f64 (log.f64 base)) 4)) (pow.f64 (cbrt.f64 (log.f64 base)) 2))
(/.f64 (/.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) -1) (pow.f64 (log.f64 base) 2))
(pow.f64 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base))) 1)
(pow.f64 (pow.f64 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base))) 2) 1/2)
(pow.f64 (pow.f64 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base))) 3) 1/3)
(pow.f64 (cbrt.f64 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base)))) 3)
(pow.f64 (sqrt.f64 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base)))) 2)
(pow.f64 (/.f64 (pow.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) 3) (pow.f64 (log.f64 base) 6)) 1/3)
(pow.f64 (/.f64 (pow.f64 (log.f64 base) 2) (*.f64 (log.f64 base) (atan2.f64 im re))) -1)
(neg.f64 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base))))
(sqrt.f64 (pow.f64 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base))) 2))
(log.f64 (pow.f64 (exp.f64 (atan2.f64 im re)) (/.f64 1 (log.f64 base))))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base))))))
(log.f64 (/.f64 1 (+.f64 1 (expm1.f64 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base)))))))
(cbrt.f64 (pow.f64 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base))) 3))
(cbrt.f64 (/.f64 (pow.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) 3) (pow.f64 (log.f64 base) 6)))
(expm1.f64 (log1p.f64 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base)))))
(log1p.f64 (expm1.f64 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base)))))
(exp.f64 (log.f64 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base)))))
(exp.f64 (*.f64 (log.f64 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base)))) 1))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base))))) 1/3))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base))))) 3))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base))))) 2))
(+.f64 0 (*.f64 (log.f64 base) (atan2.f64 im re)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 base (atan2.f64 im re))) 2)) (log.f64 (cbrt.f64 (pow.f64 base (atan2.f64 im re)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 base (atan2.f64 im re)))) (log.f64 (sqrt.f64 (pow.f64 base (atan2.f64 im re)))))
(-.f64 0 (*.f64 (log.f64 base) (atan2.f64 im re)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (log.f64 base) (atan2.f64 im re)))) 1)
(/.f64 (-.f64 0 (pow.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) 3)) (+.f64 0 (+.f64 (pow.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) 2) (*.f64 0 (*.f64 (log.f64 base) (atan2.f64 im re))))))
(/.f64 (-.f64 0 (pow.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) 2)) (*.f64 (log.f64 base) (atan2.f64 im re)))
(pow.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) 1)
(pow.f64 (pow.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) 2) 1/2)
(pow.f64 (pow.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) 3) 1/3)
(pow.f64 (cbrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) 3)
(pow.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) 2)
(neg.f64 (*.f64 (log.f64 base) (atan2.f64 im re)))
(sqrt.f64 (pow.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) 2))
(log.f64 (pow.f64 base (atan2.f64 im re)))
(log.f64 (+.f64 1 (-.f64 (pow.f64 base (atan2.f64 im re)) 1)))
(log.f64 (/.f64 1 (+.f64 1 (-.f64 (pow.f64 base (atan2.f64 im re)) 1))))
(cbrt.f64 (pow.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) 3))
(expm1.f64 (log1p.f64 (*.f64 (log.f64 base) (atan2.f64 im re))))
(log1p.f64 (-.f64 (pow.f64 base (atan2.f64 im re)) 1))
(exp.f64 (log.f64 (*.f64 (log.f64 base) (atan2.f64 im re))))
(exp.f64 (*.f64 (log.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) 1))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 (log.f64 base) (atan2.f64 im re)))) 1/3))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re)))) 3))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re)))) 2))
(+.f64 0 (pow.f64 (log.f64 base) -2))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (pow.f64 (log.f64 base) -2))) 2)) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 (log.f64 base) -2)))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (log.f64 base) -2)))) (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (log.f64 base) -2)))))
(-.f64 (exp.f64 (log1p.f64 (pow.f64 (log.f64 base) -2))) 1)
(*.f64 1 (pow.f64 (log.f64 base) -2))
(*.f64 (pow.f64 (log.f64 base) -2) 1)
(*.f64 (pow.f64 (cbrt.f64 (log.f64 base)) -2) (cbrt.f64 (pow.f64 (log.f64 base) -4)))
(*.f64 (cbrt.f64 (pow.f64 (log.f64 base) -4)) (pow.f64 (cbrt.f64 (log.f64 base)) -2))
(*.f64 (/.f64 1 (log.f64 base)) (/.f64 1 (log.f64 base)))
(*.f64 -1 (pow.f64 (log.f64 base) -2))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (log.f64 base)) 4)) (pow.f64 (cbrt.f64 (log.f64 base)) -2))
(pow.f64 (log.f64 base) -2)
(pow.f64 (pow.f64 (log.f64 base) 2) -1)
(pow.f64 (pow.f64 (log.f64 base) -2) 1)
(pow.f64 (pow.f64 (log.f64 base) 6) -1/3)
(pow.f64 (pow.f64 (log.f64 base) 4) -1/2)
(pow.f64 (pow.f64 (log.f64 base) -4) 1/2)
(pow.f64 (pow.f64 (pow.f64 (log.f64 base) -2) 3) 1/3)
(pow.f64 (pow.f64 (cbrt.f64 (log.f64 base)) 2) -3)
(pow.f64 (pow.f64 (cbrt.f64 (log.f64 base)) -2) 3)
(pow.f64 (/.f64 1 (log.f64 base)) 2)
(sqrt.f64 (pow.f64 (log.f64 base) -4))
(log.f64 (exp.f64 (pow.f64 (log.f64 base) -2)))
(log.f64 (+.f64 1 (expm1.f64 (pow.f64 (log.f64 base) -2))))
(cbrt.f64 (pow.f64 (pow.f64 (log.f64 base) -2) 3))
(expm1.f64 (log1p.f64 (pow.f64 (log.f64 base) -2)))
(log1p.f64 (expm1.f64 (pow.f64 (log.f64 base) -2)))
(exp.f64 (log.f64 (pow.f64 (log.f64 base) -2)))
(exp.f64 (*.f64 (*.f64 2 (log.f64 (log.f64 base))) -1))
(exp.f64 (*.f64 (log.f64 (pow.f64 (log.f64 base) -2)) 1))
(exp.f64 (*.f64 (log.f64 (pow.f64 (pow.f64 (log.f64 base) -2) 3)) 1/3))
(exp.f64 (*.f64 (log.f64 (pow.f64 (cbrt.f64 (log.f64 base)) -2)) 3))
(exp.f64 (*.f64 (neg.f64 (log.f64 (log.f64 base))) 2))
Outputs
(pow.f64 (log.f64 (/.f64 1 base)) 2)
(pow.f64 (neg.f64 (log.f64 base)) 2)
(pow.f64 (log.f64 base) 2)
(pow.f64 (log.f64 (/.f64 1 base)) 2)
(pow.f64 (neg.f64 (log.f64 base)) 2)
(pow.f64 (log.f64 base) 2)
(pow.f64 (log.f64 (/.f64 1 base)) 2)
(pow.f64 (neg.f64 (log.f64 base)) 2)
(pow.f64 (log.f64 base) 2)
(pow.f64 (log.f64 (/.f64 1 base)) 2)
(pow.f64 (neg.f64 (log.f64 base)) 2)
(pow.f64 (log.f64 base) 2)
(pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) 2)
(pow.f64 (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))) 2)
(pow.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))) 2)
(pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) 2)
(pow.f64 (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))) 2)
(pow.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))) 2)
(pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) 2)
(pow.f64 (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))) 2)
(pow.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))) 2)
(pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) 2)
(pow.f64 (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))) 2)
(pow.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))) 2)
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 base)) (atan2.f64 im re)))
(neg.f64 (*.f64 (neg.f64 (log.f64 base)) (atan2.f64 im re)))
(*.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 base)) (atan2.f64 im re)))
(neg.f64 (*.f64 (neg.f64 (log.f64 base)) (atan2.f64 im re)))
(*.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 base)) (atan2.f64 im re)))
(neg.f64 (*.f64 (neg.f64 (log.f64 base)) (atan2.f64 im re)))
(*.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 base)) (atan2.f64 im re)))
(neg.f64 (*.f64 (neg.f64 (log.f64 base)) (atan2.f64 im re)))
(*.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) (atan2.f64 im re))
(*.f64 (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))) (atan2.f64 im re))
(*.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))) (atan2.f64 im re))
(*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) (atan2.f64 im re))
(*.f64 (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))) (atan2.f64 im re))
(*.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))) (atan2.f64 im re))
(*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) (atan2.f64 im re))
(*.f64 (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))) (atan2.f64 im re))
(*.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))) (atan2.f64 im re))
(*.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) (atan2.f64 im re))
(*.f64 (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))) (atan2.f64 im re))
(*.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))) (atan2.f64 im re))
(/.f64 -1 (pow.f64 (log.f64 base) 2))
(neg.f64 (pow.f64 (log.f64 base) -2))
(/.f64 -1 (pow.f64 (log.f64 base) 2))
(neg.f64 (pow.f64 (log.f64 base) -2))
(/.f64 -1 (pow.f64 (log.f64 base) 2))
(neg.f64 (pow.f64 (log.f64 base) -2))
(/.f64 -1 (pow.f64 (log.f64 base) 2))
(neg.f64 (pow.f64 (log.f64 base) -2))
(/.f64 -1 (pow.f64 (log.f64 (/.f64 1 base)) 2))
(/.f64 -1 (pow.f64 (log.f64 base) 2))
(neg.f64 (pow.f64 (log.f64 base) -2))
(/.f64 -1 (pow.f64 (log.f64 (/.f64 1 base)) 2))
(/.f64 -1 (pow.f64 (log.f64 base) 2))
(neg.f64 (pow.f64 (log.f64 base) -2))
(/.f64 -1 (pow.f64 (log.f64 (/.f64 1 base)) 2))
(/.f64 -1 (pow.f64 (log.f64 base) 2))
(neg.f64 (pow.f64 (log.f64 base) -2))
(/.f64 -1 (pow.f64 (log.f64 (/.f64 1 base)) 2))
(/.f64 -1 (pow.f64 (log.f64 base) 2))
(neg.f64 (pow.f64 (log.f64 base) -2))
(/.f64 -1 (pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) 2))
(/.f64 -1 (pow.f64 (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))) 2))
(/.f64 -1 (pow.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))) 2))
(/.f64 -1 (pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) 2))
(/.f64 -1 (pow.f64 (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))) 2))
(/.f64 -1 (pow.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))) 2))
(/.f64 -1 (pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) 2))
(/.f64 -1 (pow.f64 (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))) 2))
(/.f64 -1 (pow.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))) 2))
(/.f64 -1 (pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) 2))
(/.f64 -1 (pow.f64 (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))) 2))
(/.f64 -1 (pow.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))) 2))
(+.f64 0 (pow.f64 (log.f64 base) 2))
(pow.f64 (neg.f64 (log.f64 base)) 2)
(pow.f64 (log.f64 base) 2)
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 base (log.f64 base))) 2)) (log.f64 (cbrt.f64 (pow.f64 base (log.f64 base)))))
(*.f64 3 (log.f64 (cbrt.f64 (pow.f64 base (log.f64 base)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 base (log.f64 base)))) (log.f64 (sqrt.f64 (pow.f64 base (log.f64 base)))))
(pow.f64 (neg.f64 (log.f64 base)) 2)
(pow.f64 (log.f64 base) 2)
(-.f64 0 (pow.f64 (log.f64 base) 2))
(neg.f64 (pow.f64 (log.f64 base) 2))
(-.f64 (exp.f64 (log1p.f64 (pow.f64 (log.f64 base) 2))) 1)
(pow.f64 (neg.f64 (log.f64 base)) 2)
(pow.f64 (log.f64 base) 2)
(*.f64 (log.f64 base) (log.f64 base))
(pow.f64 (neg.f64 (log.f64 base)) 2)
(pow.f64 (log.f64 base) 2)
(*.f64 (log.f64 base) (neg.f64 (log.f64 base)))
(neg.f64 (pow.f64 (log.f64 base) 2))
(*.f64 1 (pow.f64 (log.f64 base) 2))
(pow.f64 (neg.f64 (log.f64 base)) 2)
(pow.f64 (log.f64 base) 2)
(*.f64 (pow.f64 (log.f64 base) 2) 1)
(pow.f64 (neg.f64 (log.f64 base)) 2)
(pow.f64 (log.f64 base) 2)
(*.f64 (pow.f64 (log.f64 base) 2) -1)
(neg.f64 (pow.f64 (log.f64 base) 2))
(*.f64 (pow.f64 (cbrt.f64 (log.f64 base)) 4) (pow.f64 (cbrt.f64 (log.f64 base)) 2))
(pow.f64 (neg.f64 (log.f64 base)) 2)
(pow.f64 (log.f64 base) 2)
(*.f64 (pow.f64 (cbrt.f64 (log.f64 base)) 4) (neg.f64 (pow.f64 (cbrt.f64 (log.f64 base)) 2)))
(neg.f64 (pow.f64 (log.f64 base) 2))
(*.f64 (pow.f64 (cbrt.f64 (log.f64 base)) 2) (pow.f64 (cbrt.f64 (log.f64 base)) 4))
(pow.f64 (neg.f64 (log.f64 base)) 2)
(pow.f64 (log.f64 base) 2)
(*.f64 (sqrt.f64 (log.f64 base)) (pow.f64 (log.f64 base) 3/2))
(*.f64 -1 (pow.f64 (log.f64 base) 2))
(neg.f64 (pow.f64 (log.f64 base) 2))
(*.f64 (neg.f64 (log.f64 base)) (log.f64 base))
(neg.f64 (pow.f64 (log.f64 base) 2))
(*.f64 (pow.f64 (log.f64 base) 3/2) (sqrt.f64 (log.f64 base)))
(*.f64 (sqrt.f64 (log.f64 base)) (pow.f64 (log.f64 base) 3/2))
(*.f64 (neg.f64 (pow.f64 (cbrt.f64 (log.f64 base)) 4)) (pow.f64 (cbrt.f64 (log.f64 base)) 2))
(neg.f64 (pow.f64 (log.f64 base) 2))
(*.f64 (pow.f64 (cbrt.f64 (log.f64 base)) 5) (cbrt.f64 (log.f64 base)))
(pow.f64 (neg.f64 (log.f64 base)) 2)
(pow.f64 (log.f64 base) 2)
(*.f64 (*.f64 -1 (pow.f64 (cbrt.f64 (log.f64 base)) 4)) (pow.f64 (cbrt.f64 (log.f64 base)) 2))
(neg.f64 (pow.f64 (log.f64 base) 2))
(/.f64 (log.f64 base) (/.f64 1 (log.f64 base)))
(pow.f64 (neg.f64 (log.f64 base)) 2)
(pow.f64 (log.f64 base) 2)
(/.f64 1 (pow.f64 (log.f64 base) -2))
(pow.f64 (neg.f64 (log.f64 base)) 2)
(pow.f64 (log.f64 base) 2)
(/.f64 (pow.f64 (log.f64 base) 2) 1)
(pow.f64 (neg.f64 (log.f64 base)) 2)
(pow.f64 (log.f64 base) 2)
(/.f64 (pow.f64 (log.f64 base) 2) -1)
(/.f64 (pow.f64 (cbrt.f64 (log.f64 base)) 4) (pow.f64 (cbrt.f64 (log.f64 base)) -2))
(/.f64 -1 (pow.f64 (log.f64 base) -2))
(neg.f64 (pow.f64 (log.f64 base) 2))
(/.f64 (-.f64 0 (pow.f64 (log.f64 base) 6)) (+.f64 0 (+.f64 (pow.f64 (log.f64 base) 4) (*.f64 0 (pow.f64 (log.f64 base) 2)))))
(/.f64 (neg.f64 (pow.f64 (log.f64 base) 6)) (+.f64 0 (pow.f64 (log.f64 base) 4)))
(/.f64 (neg.f64 (pow.f64 (log.f64 base) 6)) (pow.f64 (log.f64 base) 4))
(/.f64 (-.f64 0 (pow.f64 (log.f64 base) 4)) (pow.f64 (log.f64 base) 2))
(neg.f64 (pow.f64 (log.f64 base) 2))
(neg.f64 (pow.f64 (log.f64 base) 2))
(sqrt.f64 (pow.f64 (log.f64 base) 4))
(pow.f64 (neg.f64 (log.f64 base)) 2)
(pow.f64 (log.f64 base) 2)
(log.f64 (pow.f64 base (log.f64 base)))
(pow.f64 (neg.f64 (log.f64 base)) 2)
(pow.f64 (log.f64 base) 2)
(log.f64 (+.f64 1 (expm1.f64 (pow.f64 (log.f64 base) 2))))
(pow.f64 (neg.f64 (log.f64 base)) 2)
(pow.f64 (log.f64 base) 2)
(log.f64 (/.f64 1 (+.f64 1 (expm1.f64 (pow.f64 (log.f64 base) 2)))))
(neg.f64 (pow.f64 (log.f64 base) 2))
(cbrt.f64 (pow.f64 (log.f64 base) 6))
(pow.f64 (neg.f64 (log.f64 base)) 2)
(pow.f64 (log.f64 base) 2)
(expm1.f64 (log1p.f64 (pow.f64 (log.f64 base) 2)))
(pow.f64 (neg.f64 (log.f64 base)) 2)
(pow.f64 (log.f64 base) 2)
(log1p.f64 (expm1.f64 (pow.f64 (log.f64 base) 2)))
(pow.f64 (neg.f64 (log.f64 base)) 2)
(pow.f64 (log.f64 base) 2)
(exp.f64 (*.f64 2 (log.f64 (log.f64 base))))
(pow.f64 (neg.f64 (log.f64 base)) 2)
(pow.f64 (log.f64 base) 2)
(exp.f64 (*.f64 (*.f64 2 (log.f64 (log.f64 base))) 1))
(pow.f64 (neg.f64 (log.f64 base)) 2)
(pow.f64 (log.f64 base) 2)
(exp.f64 (*.f64 (log.f64 (pow.f64 (log.f64 base) 6)) 1/3))
(pow.f64 (neg.f64 (log.f64 base)) 2)
(pow.f64 (log.f64 base) 2)
(exp.f64 (*.f64 (*.f64 2 (log.f64 (cbrt.f64 (log.f64 base)))) 3))
(pow.f64 (neg.f64 (log.f64 base)) 2)
(pow.f64 (log.f64 base) 2)
(+.f64 0 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (atan2.f64 im re)) (/.f64 1 (log.f64 base)))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (atan2.f64 im re)) (/.f64 1 (log.f64 base))))))
(*.f64 3 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (atan2.f64 im re)) (/.f64 1 (log.f64 base))))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (atan2.f64 im re)) (/.f64 1 (log.f64 base))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (atan2.f64 im re)) (/.f64 1 (log.f64 base))))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(-.f64 0 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base))))
(*.f64 (neg.f64 (atan2.f64 im re)) (/.f64 1 (log.f64 base)))
(neg.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
(/.f64 (atan2.f64 im re) (neg.f64 (log.f64 base)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base))))) 1)
(/.f64 (atan2.f64 im re) (log.f64 base))
(-.f64 (/.f64 0 (pow.f64 (log.f64 base) 2)) (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base))))
(*.f64 (neg.f64 (atan2.f64 im re)) (/.f64 1 (log.f64 base)))
(neg.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
(/.f64 (atan2.f64 im re) (neg.f64 (log.f64 base)))
(/.f64 (log.f64 base) (/.f64 (pow.f64 (log.f64 base) 2) (neg.f64 (atan2.f64 im re))))
(*.f64 (neg.f64 (atan2.f64 im re)) (/.f64 1 (log.f64 base)))
(neg.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
(/.f64 (atan2.f64 im re) (neg.f64 (log.f64 base)))
(/.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) 2))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 1 (/.f64 (pow.f64 (log.f64 base) 2) (*.f64 (log.f64 base) (atan2.f64 im re))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (pow.f64 (cbrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) 2) (/.f64 (pow.f64 (log.f64 base) 2) (cbrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re)))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (/.f64 (pow.f64 (log.f64 base) 2) (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re)))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 -1 (/.f64 (pow.f64 (log.f64 base) 2) (*.f64 (log.f64 base) (atan2.f64 im re))))
(*.f64 (neg.f64 (atan2.f64 im re)) (/.f64 1 (log.f64 base)))
(neg.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
(/.f64 (atan2.f64 im re) (neg.f64 (log.f64 base)))
(/.f64 (neg.f64 (log.f64 base)) (/.f64 (pow.f64 (log.f64 base) 2) (atan2.f64 im re)))
(*.f64 (neg.f64 (atan2.f64 im re)) (/.f64 1 (log.f64 base)))
(neg.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
(/.f64 (atan2.f64 im re) (neg.f64 (log.f64 base)))
(/.f64 (/.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (log.f64 base)) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (/.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) 1) (pow.f64 (log.f64 base) 2))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (/.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (cbrt.f64 (log.f64 base)) 4)) (pow.f64 (cbrt.f64 (log.f64 base)) 2))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (/.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) -1) (pow.f64 (log.f64 base) 2))
(*.f64 (neg.f64 (atan2.f64 im re)) (/.f64 1 (log.f64 base)))
(neg.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
(/.f64 (atan2.f64 im re) (neg.f64 (log.f64 base)))
(pow.f64 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base))) 1)
(/.f64 (atan2.f64 im re) (log.f64 base))
(pow.f64 (pow.f64 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base))) 2) 1/2)
(/.f64 (atan2.f64 im re) (log.f64 base))
(pow.f64 (pow.f64 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base))) 3) 1/3)
(/.f64 (atan2.f64 im re) (log.f64 base))
(pow.f64 (cbrt.f64 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base)))) 3)
(/.f64 (atan2.f64 im re) (log.f64 base))
(pow.f64 (sqrt.f64 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base)))) 2)
(/.f64 (atan2.f64 im re) (log.f64 base))
(pow.f64 (/.f64 (pow.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) 3) (pow.f64 (log.f64 base) 6)) 1/3)
(cbrt.f64 (/.f64 (pow.f64 (*.f64 (atan2.f64 im re) (log.f64 base)) 3) (pow.f64 (log.f64 base) 6)))
(cbrt.f64 (*.f64 1 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3)))
(pow.f64 (/.f64 (pow.f64 (log.f64 base) 2) (*.f64 (log.f64 base) (atan2.f64 im re))) -1)
(/.f64 (atan2.f64 im re) (log.f64 base))
(neg.f64 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base))))
(*.f64 (neg.f64 (atan2.f64 im re)) (/.f64 1 (log.f64 base)))
(neg.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
(/.f64 (atan2.f64 im re) (neg.f64 (log.f64 base)))
(sqrt.f64 (pow.f64 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base))) 2))
(/.f64 (atan2.f64 im re) (log.f64 base))
(log.f64 (pow.f64 (exp.f64 (atan2.f64 im re)) (/.f64 1 (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base))))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(log.f64 (/.f64 1 (+.f64 1 (expm1.f64 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base)))))))
(*.f64 (neg.f64 (atan2.f64 im re)) (/.f64 1 (log.f64 base)))
(neg.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
(/.f64 (atan2.f64 im re) (neg.f64 (log.f64 base)))
(cbrt.f64 (pow.f64 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base))) 3))
(/.f64 (atan2.f64 im re) (log.f64 base))
(cbrt.f64 (/.f64 (pow.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) 3) (pow.f64 (log.f64 base) 6)))
(cbrt.f64 (/.f64 (pow.f64 (*.f64 (atan2.f64 im re) (log.f64 base)) 3) (pow.f64 (log.f64 base) 6)))
(cbrt.f64 (*.f64 1 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3)))
(expm1.f64 (log1p.f64 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base)))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(log1p.f64 (expm1.f64 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base)))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(exp.f64 (log.f64 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base)))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(exp.f64 (*.f64 (log.f64 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base)))) 1))
(/.f64 (atan2.f64 im re) (log.f64 base))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base))))) 1/3))
(/.f64 (atan2.f64 im re) (log.f64 base))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base))))) 3))
(/.f64 (atan2.f64 im re) (log.f64 base))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base))))) 2))
(/.f64 (atan2.f64 im re) (log.f64 base))
(+.f64 0 (*.f64 (log.f64 base) (atan2.f64 im re)))
(neg.f64 (*.f64 (neg.f64 (log.f64 base)) (atan2.f64 im re)))
(*.f64 (atan2.f64 im re) (log.f64 base))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 base (atan2.f64 im re))) 2)) (log.f64 (cbrt.f64 (pow.f64 base (atan2.f64 im re)))))
(*.f64 3 (log.f64 (cbrt.f64 (pow.f64 base (atan2.f64 im re)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 base (atan2.f64 im re)))) (log.f64 (sqrt.f64 (pow.f64 base (atan2.f64 im re)))))
(neg.f64 (*.f64 (neg.f64 (log.f64 base)) (atan2.f64 im re)))
(*.f64 (atan2.f64 im re) (log.f64 base))
(-.f64 0 (*.f64 (log.f64 base) (atan2.f64 im re)))
(*.f64 (neg.f64 (log.f64 base)) (atan2.f64 im re))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (log.f64 base) (atan2.f64 im re)))) 1)
(neg.f64 (*.f64 (neg.f64 (log.f64 base)) (atan2.f64 im re)))
(*.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (-.f64 0 (pow.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) 3)) (+.f64 0 (+.f64 (pow.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) 2) (*.f64 0 (*.f64 (log.f64 base) (atan2.f64 im re))))))
(*.f64 (neg.f64 (log.f64 base)) (atan2.f64 im re))
(/.f64 (-.f64 0 (pow.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) 2)) (*.f64 (log.f64 base) (atan2.f64 im re)))
(*.f64 (neg.f64 (log.f64 base)) (atan2.f64 im re))
(pow.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) 1)
(neg.f64 (*.f64 (neg.f64 (log.f64 base)) (atan2.f64 im re)))
(*.f64 (atan2.f64 im re) (log.f64 base))
(pow.f64 (pow.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) 2) 1/2)
(neg.f64 (*.f64 (neg.f64 (log.f64 base)) (atan2.f64 im re)))
(*.f64 (atan2.f64 im re) (log.f64 base))
(pow.f64 (pow.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) 3) 1/3)
(neg.f64 (*.f64 (neg.f64 (log.f64 base)) (atan2.f64 im re)))
(*.f64 (atan2.f64 im re) (log.f64 base))
(pow.f64 (cbrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) 3)
(neg.f64 (*.f64 (neg.f64 (log.f64 base)) (atan2.f64 im re)))
(*.f64 (atan2.f64 im re) (log.f64 base))
(pow.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) 2)
(neg.f64 (*.f64 (neg.f64 (log.f64 base)) (atan2.f64 im re)))
(*.f64 (atan2.f64 im re) (log.f64 base))
(neg.f64 (*.f64 (log.f64 base) (atan2.f64 im re)))
(*.f64 (neg.f64 (log.f64 base)) (atan2.f64 im re))
(sqrt.f64 (pow.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) 2))
(neg.f64 (*.f64 (neg.f64 (log.f64 base)) (atan2.f64 im re)))
(*.f64 (atan2.f64 im re) (log.f64 base))
(log.f64 (pow.f64 base (atan2.f64 im re)))
(neg.f64 (*.f64 (neg.f64 (log.f64 base)) (atan2.f64 im re)))
(*.f64 (atan2.f64 im re) (log.f64 base))
(log.f64 (+.f64 1 (-.f64 (pow.f64 base (atan2.f64 im re)) 1)))
(neg.f64 (*.f64 (neg.f64 (log.f64 base)) (atan2.f64 im re)))
(*.f64 (atan2.f64 im re) (log.f64 base))
(log.f64 (/.f64 1 (+.f64 1 (-.f64 (pow.f64 base (atan2.f64 im re)) 1))))
(*.f64 (neg.f64 (log.f64 base)) (atan2.f64 im re))
(cbrt.f64 (pow.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) 3))
(neg.f64 (*.f64 (neg.f64 (log.f64 base)) (atan2.f64 im re)))
(*.f64 (atan2.f64 im re) (log.f64 base))
(expm1.f64 (log1p.f64 (*.f64 (log.f64 base) (atan2.f64 im re))))
(neg.f64 (*.f64 (neg.f64 (log.f64 base)) (atan2.f64 im re)))
(*.f64 (atan2.f64 im re) (log.f64 base))
(log1p.f64 (-.f64 (pow.f64 base (atan2.f64 im re)) 1))
(neg.f64 (*.f64 (neg.f64 (log.f64 base)) (atan2.f64 im re)))
(*.f64 (atan2.f64 im re) (log.f64 base))
(exp.f64 (log.f64 (*.f64 (log.f64 base) (atan2.f64 im re))))
(neg.f64 (*.f64 (neg.f64 (log.f64 base)) (atan2.f64 im re)))
(*.f64 (atan2.f64 im re) (log.f64 base))
(exp.f64 (*.f64 (log.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) 1))
(neg.f64 (*.f64 (neg.f64 (log.f64 base)) (atan2.f64 im re)))
(*.f64 (atan2.f64 im re) (log.f64 base))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 (log.f64 base) (atan2.f64 im re)))) 1/3))
(neg.f64 (*.f64 (neg.f64 (log.f64 base)) (atan2.f64 im re)))
(*.f64 (atan2.f64 im re) (log.f64 base))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re)))) 3))
(neg.f64 (*.f64 (neg.f64 (log.f64 base)) (atan2.f64 im re)))
(*.f64 (atan2.f64 im re) (log.f64 base))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re)))) 2))
(neg.f64 (*.f64 (neg.f64 (log.f64 base)) (atan2.f64 im re)))
(*.f64 (atan2.f64 im re) (log.f64 base))
(+.f64 0 (pow.f64 (log.f64 base) -2))
(pow.f64 (log.f64 base) -2)
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (pow.f64 (log.f64 base) -2))) 2)) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 (log.f64 base) -2)))))
(*.f64 3 (log.f64 (cbrt.f64 (exp.f64 (pow.f64 (log.f64 base) -2)))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (log.f64 base) -2)))) (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (log.f64 base) -2)))))
(*.f64 2 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (log.f64 base) -2)))))
(-.f64 (exp.f64 (log1p.f64 (pow.f64 (log.f64 base) -2))) 1)
(pow.f64 (log.f64 base) -2)
(*.f64 1 (pow.f64 (log.f64 base) -2))
(pow.f64 (log.f64 base) -2)
(*.f64 (pow.f64 (log.f64 base) -2) 1)
(pow.f64 (log.f64 base) -2)
(*.f64 (pow.f64 (cbrt.f64 (log.f64 base)) -2) (cbrt.f64 (pow.f64 (log.f64 base) -4)))
(*.f64 (cbrt.f64 (pow.f64 (log.f64 base) -4)) (pow.f64 (cbrt.f64 (log.f64 base)) -2))
(*.f64 (pow.f64 (cbrt.f64 (log.f64 base)) -2) (cbrt.f64 (pow.f64 (log.f64 base) -4)))
(*.f64 (/.f64 1 (log.f64 base)) (/.f64 1 (log.f64 base)))
(pow.f64 (log.f64 base) -2)
(*.f64 -1 (pow.f64 (log.f64 base) -2))
(/.f64 -1 (pow.f64 (log.f64 base) 2))
(neg.f64 (pow.f64 (log.f64 base) -2))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (log.f64 base)) 4)) (pow.f64 (cbrt.f64 (log.f64 base)) -2))
(*.f64 (pow.f64 (cbrt.f64 (log.f64 base)) -2) (/.f64 1 (pow.f64 (cbrt.f64 (log.f64 base)) 4)))
(/.f64 (pow.f64 (cbrt.f64 (log.f64 base)) -2) (pow.f64 (cbrt.f64 (log.f64 base)) 4))
(pow.f64 (log.f64 base) -2)
(pow.f64 (pow.f64 (log.f64 base) 2) -1)
(pow.f64 (log.f64 base) -2)
(pow.f64 (pow.f64 (log.f64 base) -2) 1)
(pow.f64 (log.f64 base) -2)
(pow.f64 (pow.f64 (log.f64 base) 6) -1/3)
(*.f64 (pow.f64 (pow.f64 (log.f64 base) 6) -1/6) (pow.f64 (pow.f64 (log.f64 base) 6) -1/6))
(pow.f64 (pow.f64 (log.f64 base) 4) -1/2)
(pow.f64 (pow.f64 (log.f64 base) -4) 1/2)
(pow.f64 (log.f64 base) -2)
(pow.f64 (pow.f64 (pow.f64 (log.f64 base) -2) 3) 1/3)
(pow.f64 (log.f64 base) -2)
(pow.f64 (pow.f64 (cbrt.f64 (log.f64 base)) 2) -3)
(pow.f64 (pow.f64 (cbrt.f64 (log.f64 base)) -2) 3)
(pow.f64 (log.f64 base) -2)
(pow.f64 (/.f64 1 (log.f64 base)) 2)
(pow.f64 (log.f64 base) -2)
(sqrt.f64 (pow.f64 (log.f64 base) -4))
(pow.f64 (log.f64 base) -2)
(log.f64 (exp.f64 (pow.f64 (log.f64 base) -2)))
(pow.f64 (log.f64 base) -2)
(log.f64 (+.f64 1 (expm1.f64 (pow.f64 (log.f64 base) -2))))
(pow.f64 (log.f64 base) -2)
(cbrt.f64 (pow.f64 (pow.f64 (log.f64 base) -2) 3))
(pow.f64 (log.f64 base) -2)
(expm1.f64 (log1p.f64 (pow.f64 (log.f64 base) -2)))
(pow.f64 (log.f64 base) -2)
(log1p.f64 (expm1.f64 (pow.f64 (log.f64 base) -2)))
(pow.f64 (log.f64 base) -2)
(exp.f64 (log.f64 (pow.f64 (log.f64 base) -2)))
(pow.f64 (log.f64 base) -2)
(exp.f64 (*.f64 (*.f64 2 (log.f64 (log.f64 base))) -1))
(pow.f64 (log.f64 base) -2)
(exp.f64 (*.f64 (log.f64 (pow.f64 (log.f64 base) -2)) 1))
(pow.f64 (log.f64 base) -2)
(exp.f64 (*.f64 (log.f64 (pow.f64 (pow.f64 (log.f64 base) -2) 3)) 1/3))
(pow.f64 (log.f64 base) -2)
(exp.f64 (*.f64 (log.f64 (pow.f64 (cbrt.f64 (log.f64 base)) -2)) 3))
(pow.f64 (log.f64 base) -2)
(exp.f64 (*.f64 (neg.f64 (log.f64 (log.f64 base))) 2))
(pow.f64 (log.f64 base) -2)

localize17.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(sqrt.f64 (pow.f64 (log.f64 base) 4))
0.3b
(/.f64 (fma.f64 (atan2.f64 im re) (log.f64 base) 0) (sqrt.f64 (pow.f64 (log.f64 base) 4)))
0.3b
(fma.f64 (atan2.f64 im re) (log.f64 base) 0)
0.9b
(pow.f64 (log.f64 base) 4)
Compiler

Compiled 42 to 20 computations (52.4% saved)

series5.0ms (0.1%)

Counts
3 → 56
Calls

15 calls:

TimeVariablePointExpression
1.0ms
base
@-inf
(pow.f64 (log.f64 base) 4)
1.0ms
base
@0
(pow.f64 (log.f64 base) 4)
1.0ms
base
@inf
(pow.f64 (log.f64 base) 4)
0.0ms
base
@inf
(sqrt.f64 (pow.f64 (log.f64 base) 4))
0.0ms
base
@-inf
(/.f64 (fma.f64 (atan2.f64 im re) (log.f64 base) 0) (sqrt.f64 (pow.f64 (log.f64 base) 4)))

rewrite77.0ms (1.3%)

Algorithm
batch-egg-rewrite
Rules
495×log-prod_binary64
378×exp-prod_binary64
342×prod-exp_binary64
277×pow2_binary64
274×pow-prod-down_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01230
124029
2277829
Stop Event
node limit
Counts
3 → 151
Calls
Call 1
Inputs
(pow.f64 (log.f64 base) 4)
(/.f64 (fma.f64 (atan2.f64 im re) (log.f64 base) 0) (sqrt.f64 (pow.f64 (log.f64 base) 4)))
(sqrt.f64 (pow.f64 (log.f64 base) 4))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (pow.f64 (log.f64 base) 4))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (pow.f64 (log.f64 base) 4))) 2)) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 (log.f64 base) 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (log.f64 base) 4)))) (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (log.f64 base) 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (pow.f64 (log.f64 base) 4))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (log.f64 base) (pow.f64 (log.f64 base) 3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (log.f64 base) 4) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (log.f64 base) 2) (pow.f64 (log.f64 base) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (log.f64 base) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (log.f64 base) 3) (log.f64 base))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (log.f64 base)) 4) (pow.f64 (cbrt.f64 (log.f64 base)) 8))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (log.f64 base)) 8) (pow.f64 (cbrt.f64 (log.f64 base)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (log.f64 base) 4) 5/6) (pow.f64 (cbrt.f64 (log.f64 base)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (log.f64 base) 8))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (log.f64 base) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (pow.f64 (log.f64 base) 4))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (log.f64 base) 12))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (log.f64 base) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (log.f64 base) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 4 (log.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 4 (log.f64 (log.f64 base))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 2 (log.f64 (log.f64 base))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 8 (log.f64 (log.f64 base))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (log.f64 base) 12)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (cbrt.f64 (log.f64 base)) 4)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (log.f64 base)) 1) 4))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (*.f64 4 (log.f64 (log.f64 base))) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (log.f64 base)) 2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (*.f64 4 (log.f64 (log.f64 base))) 1/2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (*.f64 2 (log.f64 (log.f64 base))) 1) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 (log.f64 base)) 1) (*.f64 3 (log.f64 (log.f64 base)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 (log.f64 base)) 2) (*.f64 2 (log.f64 (log.f64 base)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (*.f64 4 (log.f64 (log.f64 base))) 1/2) (*.f64 2 (log.f64 (log.f64 base)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (*.f64 2 (log.f64 (log.f64 base))) 1) (*.f64 2 (log.f64 (log.f64 base)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 2 (log.f64 (log.f64 base))) (*.f64 (log.f64 (log.f64 base)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 (log.f64 base)) 2) (*.f64 (log.f64 (log.f64 base)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (*.f64 4 (log.f64 (log.f64 base))) 1/2) (*.f64 (log.f64 (log.f64 base)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (*.f64 2 (log.f64 (log.f64 base))) 1) (*.f64 (log.f64 (log.f64 base)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 2 (log.f64 (log.f64 base))) (*.f64 (*.f64 4 (log.f64 (log.f64 base))) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 (log.f64 base)) 2) (*.f64 (*.f64 4 (log.f64 (log.f64 base))) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (*.f64 4 (log.f64 (log.f64 base))) 1/2) (*.f64 (*.f64 4 (log.f64 (log.f64 base))) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (*.f64 2 (log.f64 (log.f64 base))) 1) (*.f64 (*.f64 4 (log.f64 (log.f64 base))) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 2 (log.f64 (log.f64 base))) (*.f64 (*.f64 2 (log.f64 (log.f64 base))) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 (log.f64 base)) 2) (*.f64 (*.f64 2 (log.f64 (log.f64 base))) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (*.f64 4 (log.f64 (log.f64 base))) 1/2) (*.f64 (*.f64 2 (log.f64 (log.f64 base))) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (*.f64 2 (log.f64 (log.f64 base))) 1) (*.f64 (*.f64 2 (log.f64 (log.f64 base))) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 3 (log.f64 (log.f64 base))) (*.f64 (log.f64 (log.f64 base)) 1)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (pow.f64 base (atan2.f64 im re)) (pow.f64 (log.f64 base) -2))) 2)) (log.f64 (cbrt.f64 (pow.f64 (pow.f64 base (atan2.f64 im re)) (pow.f64 (log.f64 base) -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (pow.f64 base (atan2.f64 im re)) (pow.f64 (log.f64 base) -2)))) (log.f64 (sqrt.f64 (pow.f64 (pow.f64 base (atan2.f64 im re)) (pow.f64 (log.f64 base) -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2))) (cbrt.f64 (pow.f64 (/.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (log.f64 base)) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (/.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (log.f64 base)) 4)) (cbrt.f64 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) 2) (*.f64 (cbrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (pow.f64 (log.f64 base) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (log.f64 base)) (/.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (*.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (pow.f64 (log.f64 base) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (/.f64 1 (neg.f64 (pow.f64 (log.f64 base) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (log.f64 base) -2) (*.f64 (log.f64 base) (atan2.f64 im re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) 2) 1) (/.f64 (cbrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (pow.f64 (log.f64 base) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) 1) (/.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (pow.f64 (log.f64 base) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 (log.f64 base)) 4)) (/.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (cbrt.f64 (log.f64 base)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) 2) (pow.f64 (cbrt.f64 (log.f64 base)) 4)) (cbrt.f64 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (pow.f64 (cbrt.f64 (log.f64 base)) 4)) (/.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (pow.f64 (cbrt.f64 (log.f64 base)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (log.f64 base)) (/.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) 2) (log.f64 base)) (/.f64 (cbrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (log.f64 base)) 4) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (log.f64 base)) 6) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (log.f64 base)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (log.f64 base) 2) (*.f64 (log.f64 base) (atan2.f64 im re))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) 3) (pow.f64 (log.f64 base) 6)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 (pow.f64 (log.f64 base) 2) (*.f64 (log.f64 base) (atan2.f64 im re))) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2)))) 2)) (cbrt.f64 (log.f64 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2))))) (sqrt.f64 (log.f64 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (neg.f64 (pow.f64 (log.f64 base) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (log.f64 base)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (pow.f64 base (atan2.f64 im re)) (pow.f64 (log.f64 base) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (-.f64 (pow.f64 (pow.f64 base (atan2.f64 im re)) (pow.f64 (log.f64 base) -2)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (log.f64 base)) 6))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) 3) (pow.f64 (log.f64 base) 6)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (-.f64 (pow.f64 (pow.f64 base (atan2.f64 im re)) (pow.f64 (log.f64 base) -2)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (log.f64 base)) 6)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (log.f64 base))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (pow.f64 (log.f64 base) 2) (*.f64 (log.f64 base) (atan2.f64 im re)))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2))) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (*.f64 (log.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) 1) (*.f64 2 (log.f64 (log.f64 base)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (log.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (*.f64 (log.f64 (log.f64 base)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (*.f64 (log.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) 1) (*.f64 (log.f64 (log.f64 base)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (log.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (*.f64 (*.f64 4 (log.f64 (log.f64 base))) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (*.f64 (log.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) 1) (*.f64 (*.f64 4 (log.f64 (log.f64 base))) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (log.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (*.f64 (*.f64 2 (log.f64 (log.f64 base))) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (*.f64 (log.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) 1) (*.f64 (*.f64 2 (log.f64 (log.f64 base))) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) 1) (*.f64 -2 (log.f64 (log.f64 base)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 -2 (log.f64 (log.f64 base))) (*.f64 (log.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) 1)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (pow.f64 (log.f64 base) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 base (log.f64 base))) 2)) (log.f64 (cbrt.f64 (pow.f64 base (log.f64 base)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 base (log.f64 base)))) (log.f64 (sqrt.f64 (pow.f64 base (log.f64 base)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (pow.f64 (log.f64 base) 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (log.f64 base) (log.f64 base))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (log.f64 base) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (log.f64 base) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (log.f64 base)) 2) (pow.f64 (cbrt.f64 (log.f64 base)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (log.f64 base)) 4) (pow.f64 (cbrt.f64 (log.f64 base)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (log.f64 base)) (pow.f64 (log.f64 base) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (log.f64 base) 3/2) (sqrt.f64 (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (log.f64 base)) 5) (cbrt.f64 (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (log.f64 base) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (log.f64 base) 4) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (log.f64 base) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (log.f64 base) 6) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (log.f64 base) 8) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (log.f64 base) 12) 1/6)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (log.f64 base) 3) 2/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cbrt.f64 (log.f64 base)) 2) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cbrt.f64 (log.f64 base)) 4) 3/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (log.f64 base)) 6)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (log.f64 base)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1/2) (*.f64 4 (log.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 2) (log.f64 (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (*.f64 2 (log.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (*.f64 2 (log.f64 (log.f64 base)))) 2)) (cbrt.f64 (*.f64 2 (log.f64 (log.f64 base)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (*.f64 2 (log.f64 (log.f64 base))))) (sqrt.f64 (*.f64 2 (log.f64 (log.f64 base)))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (pow.f64 (log.f64 base) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 base (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (pow.f64 (log.f64 base) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (log.f64 base) 6))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (log.f64 base) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (log.f64 base) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 2 (log.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (log.f64 base)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 4 (log.f64 (log.f64 base))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 2 (log.f64 (log.f64 base))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 6 (log.f64 (log.f64 base))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (cbrt.f64 (log.f64 base)) 2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (log.f64 base))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (log.f64 base)) 1) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (*.f64 4 (log.f64 (log.f64 base))) 1) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (log.f64 base)) 2) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (*.f64 4 (log.f64 (log.f64 base))) 1/2) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (*.f64 2 (log.f64 (log.f64 base))) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 (log.f64 base)) 1) (log.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (log.f64 (log.f64 base)) (*.f64 (log.f64 (log.f64 base)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 (log.f64 base)) 1) (*.f64 (log.f64 (log.f64 base)) 1)))))))

simplify62.0ms (1%)

Algorithm
egg-herbie
Rules
677×associate-/l*_binary64
641×associate-/r*_binary64
565×fma-def_binary64
248×distribute-rgt-in_binary64
233×distribute-lft-in_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03582099
18251899
221451854
Stop Event
node limit
Counts
207 → 184
Calls
Call 1
Inputs
(pow.f64 (log.f64 (/.f64 1 base)) 4)
(pow.f64 (log.f64 (/.f64 1 base)) 4)
(pow.f64 (log.f64 (/.f64 1 base)) 4)
(pow.f64 (log.f64 (/.f64 1 base)) 4)
(pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) 4)
(pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) 4)
(pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) 4)
(pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) 4)
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(pow.f64 (log.f64 base) 2)
(pow.f64 (log.f64 base) 2)
(pow.f64 (log.f64 base) 2)
(pow.f64 (log.f64 base) 2)
(pow.f64 (log.f64 (/.f64 1 base)) 2)
(pow.f64 (log.f64 (/.f64 1 base)) 2)
(pow.f64 (log.f64 (/.f64 1 base)) 2)
(pow.f64 (log.f64 (/.f64 1 base)) 2)
(pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) 2)
(pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) 2)
(pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) 2)
(pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) 2)
(+.f64 0 (pow.f64 (log.f64 base) 4))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (pow.f64 (log.f64 base) 4))) 2)) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 (log.f64 base) 4)))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (log.f64 base) 4)))) (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (log.f64 base) 4)))))
(-.f64 (exp.f64 (log1p.f64 (pow.f64 (log.f64 base) 4))) 1)
(*.f64 (log.f64 base) (pow.f64 (log.f64 base) 3))
(*.f64 (pow.f64 (log.f64 base) 4) 1)
(*.f64 (pow.f64 (log.f64 base) 2) (pow.f64 (log.f64 base) 2))
(*.f64 1 (pow.f64 (log.f64 base) 4))
(*.f64 (pow.f64 (log.f64 base) 3) (log.f64 base))
(*.f64 (pow.f64 (cbrt.f64 (log.f64 base)) 4) (pow.f64 (cbrt.f64 (log.f64 base)) 8))
(*.f64 (pow.f64 (cbrt.f64 (log.f64 base)) 8) (pow.f64 (cbrt.f64 (log.f64 base)) 4))
(*.f64 (pow.f64 (pow.f64 (log.f64 base) 4) 5/6) (pow.f64 (cbrt.f64 (log.f64 base)) 2))
(sqrt.f64 (pow.f64 (log.f64 base) 8))
(log.f64 (exp.f64 (pow.f64 (log.f64 base) 4)))
(log.f64 (+.f64 1 (expm1.f64 (pow.f64 (log.f64 base) 4))))
(cbrt.f64 (pow.f64 (log.f64 base) 12))
(expm1.f64 (log1p.f64 (pow.f64 (log.f64 base) 4)))
(log1p.f64 (expm1.f64 (pow.f64 (log.f64 base) 4)))
(exp.f64 (*.f64 4 (log.f64 (log.f64 base))))
(exp.f64 (*.f64 (*.f64 4 (log.f64 (log.f64 base))) 1))
(exp.f64 (*.f64 (*.f64 2 (log.f64 (log.f64 base))) 2))
(exp.f64 (*.f64 (*.f64 8 (log.f64 (log.f64 base))) 1/2))
(exp.f64 (*.f64 (log.f64 (pow.f64 (log.f64 base) 12)) 1/3))
(exp.f64 (*.f64 (log.f64 (pow.f64 (cbrt.f64 (log.f64 base)) 4)) 3))
(exp.f64 (*.f64 (*.f64 (log.f64 (log.f64 base)) 1) 4))
(exp.f64 (*.f64 (*.f64 (*.f64 4 (log.f64 (log.f64 base))) 1) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (log.f64 base)) 2) 2))
(exp.f64 (*.f64 (*.f64 (*.f64 4 (log.f64 (log.f64 base))) 1/2) 2))
(exp.f64 (*.f64 (*.f64 (*.f64 2 (log.f64 (log.f64 base))) 1) 2))
(exp.f64 (+.f64 (*.f64 (log.f64 (log.f64 base)) 1) (*.f64 3 (log.f64 (log.f64 base)))))
(exp.f64 (+.f64 (*.f64 (log.f64 (log.f64 base)) 2) (*.f64 2 (log.f64 (log.f64 base)))))
(exp.f64 (+.f64 (*.f64 (*.f64 4 (log.f64 (log.f64 base))) 1/2) (*.f64 2 (log.f64 (log.f64 base)))))
(exp.f64 (+.f64 (*.f64 (*.f64 2 (log.f64 (log.f64 base))) 1) (*.f64 2 (log.f64 (log.f64 base)))))
(exp.f64 (+.f64 (*.f64 2 (log.f64 (log.f64 base))) (*.f64 (log.f64 (log.f64 base)) 2)))
(exp.f64 (+.f64 (*.f64 (log.f64 (log.f64 base)) 2) (*.f64 (log.f64 (log.f64 base)) 2)))
(exp.f64 (+.f64 (*.f64 (*.f64 4 (log.f64 (log.f64 base))) 1/2) (*.f64 (log.f64 (log.f64 base)) 2)))
(exp.f64 (+.f64 (*.f64 (*.f64 2 (log.f64 (log.f64 base))) 1) (*.f64 (log.f64 (log.f64 base)) 2)))
(exp.f64 (+.f64 (*.f64 2 (log.f64 (log.f64 base))) (*.f64 (*.f64 4 (log.f64 (log.f64 base))) 1/2)))
(exp.f64 (+.f64 (*.f64 (log.f64 (log.f64 base)) 2) (*.f64 (*.f64 4 (log.f64 (log.f64 base))) 1/2)))
(exp.f64 (+.f64 (*.f64 (*.f64 4 (log.f64 (log.f64 base))) 1/2) (*.f64 (*.f64 4 (log.f64 (log.f64 base))) 1/2)))
(exp.f64 (+.f64 (*.f64 (*.f64 2 (log.f64 (log.f64 base))) 1) (*.f64 (*.f64 4 (log.f64 (log.f64 base))) 1/2)))
(exp.f64 (+.f64 (*.f64 2 (log.f64 (log.f64 base))) (*.f64 (*.f64 2 (log.f64 (log.f64 base))) 1)))
(exp.f64 (+.f64 (*.f64 (log.f64 (log.f64 base)) 2) (*.f64 (*.f64 2 (log.f64 (log.f64 base))) 1)))
(exp.f64 (+.f64 (*.f64 (*.f64 4 (log.f64 (log.f64 base))) 1/2) (*.f64 (*.f64 2 (log.f64 (log.f64 base))) 1)))
(exp.f64 (+.f64 (*.f64 (*.f64 2 (log.f64 (log.f64 base))) 1) (*.f64 (*.f64 2 (log.f64 (log.f64 base))) 1)))
(exp.f64 (+.f64 (*.f64 3 (log.f64 (log.f64 base))) (*.f64 (log.f64 (log.f64 base)) 1)))
(+.f64 0 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (pow.f64 base (atan2.f64 im re)) (pow.f64 (log.f64 base) -2))) 2)) (log.f64 (cbrt.f64 (pow.f64 (pow.f64 base (atan2.f64 im re)) (pow.f64 (log.f64 base) -2)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (pow.f64 base (atan2.f64 im re)) (pow.f64 (log.f64 base) -2)))) (log.f64 (sqrt.f64 (pow.f64 (pow.f64 base (atan2.f64 im re)) (pow.f64 (log.f64 base) -2)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2)))) 1)
(*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2))
(*.f64 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2)) 1)
(*.f64 1 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2)))
(*.f64 (cbrt.f64 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2))) (cbrt.f64 (pow.f64 (/.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (log.f64 base)) 4)))
(*.f64 (cbrt.f64 (pow.f64 (/.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (log.f64 base)) 4)) (cbrt.f64 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2))))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) 2) (*.f64 (cbrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (pow.f64 (log.f64 base) -2)))
(*.f64 (/.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (log.f64 base)) (/.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (log.f64 base)))
(*.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (*.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (pow.f64 (log.f64 base) -2)))
(*.f64 (neg.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (/.f64 1 (neg.f64 (pow.f64 (log.f64 base) 2))))
(*.f64 (pow.f64 (log.f64 base) -2) (*.f64 (log.f64 base) (atan2.f64 im re)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) 2) 1) (/.f64 (cbrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (pow.f64 (log.f64 base) 2)))
(*.f64 (/.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) 1) (/.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (pow.f64 (log.f64 base) 2)))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (log.f64 base)) 4)) (/.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (cbrt.f64 (log.f64 base)) 2)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) 2) (pow.f64 (cbrt.f64 (log.f64 base)) 4)) (cbrt.f64 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2))))
(*.f64 (/.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (pow.f64 (cbrt.f64 (log.f64 base)) 4)) (/.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (pow.f64 (cbrt.f64 (log.f64 base)) 2)))
(*.f64 (/.f64 1 (log.f64 base)) (/.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (log.f64 base)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) 2) (log.f64 base)) (/.f64 (cbrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (log.f64 base)))
(pow.f64 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2)) 1)
(pow.f64 (pow.f64 (/.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (log.f64 base)) 4) 1/2)
(pow.f64 (pow.f64 (/.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (log.f64 base)) 6) 1/3)
(pow.f64 (cbrt.f64 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2))) 3)
(pow.f64 (/.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (log.f64 base)) 2)
(pow.f64 (/.f64 (pow.f64 (log.f64 base) 2) (*.f64 (log.f64 base) (atan2.f64 im re))) -1)
(pow.f64 (exp.f64 1) (log.f64 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2))))
(pow.f64 (/.f64 (pow.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) 3) (pow.f64 (log.f64 base) 6)) 1/3)
(pow.f64 (/.f64 (/.f64 (pow.f64 (log.f64 base) 2) (*.f64 (log.f64 base) (atan2.f64 im re))) 1) -1)
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2)))) 2)) (cbrt.f64 (log.f64 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2)))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2))))) (sqrt.f64 (log.f64 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2)))))
(neg.f64 (/.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (neg.f64 (pow.f64 (log.f64 base) 2))))
(sqrt.f64 (pow.f64 (/.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (log.f64 base)) 4))
(log.f64 (pow.f64 (pow.f64 base (atan2.f64 im re)) (pow.f64 (log.f64 base) -2)))
(log.f64 (+.f64 1 (-.f64 (pow.f64 (pow.f64 base (atan2.f64 im re)) (pow.f64 (log.f64 base) -2)) 1)))
(cbrt.f64 (pow.f64 (/.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (log.f64 base)) 6))
(cbrt.f64 (/.f64 (pow.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) 3) (pow.f64 (log.f64 base) 6)))
(expm1.f64 (log1p.f64 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2))))
(log1p.f64 (-.f64 (pow.f64 (pow.f64 base (atan2.f64 im re)) (pow.f64 (log.f64 base) -2)) 1))
(exp.f64 (log.f64 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2))))
(exp.f64 (*.f64 (log.f64 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2))) 1))
(exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (log.f64 base)) 6)) 1/3))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2)))) 3))
(exp.f64 (*.f64 (log.f64 (/.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (log.f64 base))) 2))
(exp.f64 (*.f64 (log.f64 (/.f64 (pow.f64 (log.f64 base) 2) (*.f64 (log.f64 base) (atan2.f64 im re)))) -1))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2))) 1) 1))
(exp.f64 (-.f64 (*.f64 (log.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) 1) (*.f64 2 (log.f64 (log.f64 base)))))
(exp.f64 (-.f64 (log.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (*.f64 (log.f64 (log.f64 base)) 2)))
(exp.f64 (-.f64 (*.f64 (log.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) 1) (*.f64 (log.f64 (log.f64 base)) 2)))
(exp.f64 (-.f64 (log.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (*.f64 (*.f64 4 (log.f64 (log.f64 base))) 1/2)))
(exp.f64 (-.f64 (*.f64 (log.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) 1) (*.f64 (*.f64 4 (log.f64 (log.f64 base))) 1/2)))
(exp.f64 (-.f64 (log.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (*.f64 (*.f64 2 (log.f64 (log.f64 base))) 1)))
(exp.f64 (-.f64 (*.f64 (log.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) 1) (*.f64 (*.f64 2 (log.f64 (log.f64 base))) 1)))
(exp.f64 (+.f64 (*.f64 (log.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) 1) (*.f64 -2 (log.f64 (log.f64 base)))))
(exp.f64 (+.f64 (*.f64 -2 (log.f64 (log.f64 base))) (*.f64 (log.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) 1)))
(+.f64 0 (pow.f64 (log.f64 base) 2))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 base (log.f64 base))) 2)) (log.f64 (cbrt.f64 (pow.f64 base (log.f64 base)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 base (log.f64 base)))) (log.f64 (sqrt.f64 (pow.f64 base (log.f64 base)))))
(-.f64 (exp.f64 (log1p.f64 (pow.f64 (log.f64 base) 2))) 1)
(*.f64 (log.f64 base) (log.f64 base))
(*.f64 (pow.f64 (log.f64 base) 2) 1)
(*.f64 1 (pow.f64 (log.f64 base) 2))
(*.f64 (pow.f64 (cbrt.f64 (log.f64 base)) 2) (pow.f64 (cbrt.f64 (log.f64 base)) 4))
(*.f64 (pow.f64 (cbrt.f64 (log.f64 base)) 4) (pow.f64 (cbrt.f64 (log.f64 base)) 2))
(*.f64 (sqrt.f64 (log.f64 base)) (pow.f64 (log.f64 base) 3/2))
(*.f64 (pow.f64 (log.f64 base) 3/2) (sqrt.f64 (log.f64 base)))
(*.f64 (pow.f64 (cbrt.f64 (log.f64 base)) 5) (cbrt.f64 (log.f64 base)))
(pow.f64 (log.f64 base) 2)
(pow.f64 (pow.f64 (log.f64 base) 4) 1/2)
(pow.f64 (pow.f64 (log.f64 base) 2) 1)
(pow.f64 (pow.f64 (log.f64 base) 6) 1/3)
(pow.f64 (pow.f64 (log.f64 base) 8) 1/4)
(pow.f64 (pow.f64 (log.f64 base) 12) 1/6)
(pow.f64 (pow.f64 (log.f64 base) 3) 2/3)
(pow.f64 (pow.f64 (cbrt.f64 (log.f64 base)) 2) 3)
(pow.f64 (pow.f64 (cbrt.f64 (log.f64 base)) 4) 3/2)
(pow.f64 (cbrt.f64 (log.f64 base)) 6)
(pow.f64 (sqrt.f64 (log.f64 base)) 4)
(pow.f64 (exp.f64 1/2) (*.f64 4 (log.f64 (log.f64 base))))
(pow.f64 (exp.f64 2) (log.f64 (log.f64 base)))
(pow.f64 (exp.f64 1) (*.f64 2 (log.f64 (log.f64 base))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (*.f64 2 (log.f64 (log.f64 base)))) 2)) (cbrt.f64 (*.f64 2 (log.f64 (log.f64 base)))))
(pow.f64 (exp.f64 (sqrt.f64 (*.f64 2 (log.f64 (log.f64 base))))) (sqrt.f64 (*.f64 2 (log.f64 (log.f64 base)))))
(fabs.f64 (pow.f64 (log.f64 base) 2))
(log.f64 (pow.f64 base (log.f64 base)))
(log.f64 (+.f64 1 (expm1.f64 (pow.f64 (log.f64 base) 2))))
(cbrt.f64 (pow.f64 (log.f64 base) 6))
(expm1.f64 (log1p.f64 (pow.f64 (log.f64 base) 2)))
(log1p.f64 (expm1.f64 (pow.f64 (log.f64 base) 2)))
(exp.f64 (*.f64 2 (log.f64 (log.f64 base))))
(exp.f64 (*.f64 (log.f64 (log.f64 base)) 2))
(exp.f64 (*.f64 (*.f64 4 (log.f64 (log.f64 base))) 1/2))
(exp.f64 (*.f64 (*.f64 2 (log.f64 (log.f64 base))) 1))
(exp.f64 (*.f64 (*.f64 6 (log.f64 (log.f64 base))) 1/3))
(exp.f64 (*.f64 (log.f64 (pow.f64 (cbrt.f64 (log.f64 base)) 2)) 3))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (log.f64 base))) 4))
(exp.f64 (*.f64 (*.f64 (log.f64 (log.f64 base)) 1) 2))
(exp.f64 (*.f64 (*.f64 (*.f64 4 (log.f64 (log.f64 base))) 1) 1/2))
(exp.f64 (*.f64 (*.f64 (log.f64 (log.f64 base)) 2) 1))
(exp.f64 (*.f64 (*.f64 (*.f64 4 (log.f64 (log.f64 base))) 1/2) 1))
(exp.f64 (*.f64 (*.f64 (*.f64 2 (log.f64 (log.f64 base))) 1) 1))
(exp.f64 (+.f64 (*.f64 (log.f64 (log.f64 base)) 1) (log.f64 (log.f64 base))))
(exp.f64 (+.f64 (log.f64 (log.f64 base)) (*.f64 (log.f64 (log.f64 base)) 1)))
(exp.f64 (+.f64 (*.f64 (log.f64 (log.f64 base)) 1) (*.f64 (log.f64 (log.f64 base)) 1)))
Outputs
(pow.f64 (log.f64 (/.f64 1 base)) 4)
(pow.f64 (neg.f64 (log.f64 base)) 4)
(pow.f64 (log.f64 base) 4)
(pow.f64 (log.f64 (/.f64 1 base)) 4)
(pow.f64 (neg.f64 (log.f64 base)) 4)
(pow.f64 (log.f64 base) 4)
(pow.f64 (log.f64 (/.f64 1 base)) 4)
(pow.f64 (neg.f64 (log.f64 base)) 4)
(pow.f64 (log.f64 base) 4)
(pow.f64 (log.f64 (/.f64 1 base)) 4)
(pow.f64 (neg.f64 (log.f64 base)) 4)
(pow.f64 (log.f64 base) 4)
(pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) 4)
(pow.f64 (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))) 4)
(pow.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))) 4)
(pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) 4)
(pow.f64 (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))) 4)
(pow.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))) 4)
(pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) 4)
(pow.f64 (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))) 4)
(pow.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))) 4)
(pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) 4)
(pow.f64 (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))) 4)
(pow.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))) 4)
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))))
(pow.f64 (log.f64 base) 2)
(pow.f64 (log.f64 base) 2)
(pow.f64 (log.f64 base) 2)
(pow.f64 (log.f64 base) 2)
(pow.f64 (log.f64 (/.f64 1 base)) 2)
(pow.f64 (log.f64 base) 2)
(pow.f64 (log.f64 (/.f64 1 base)) 2)
(pow.f64 (log.f64 base) 2)
(pow.f64 (log.f64 (/.f64 1 base)) 2)
(pow.f64 (log.f64 base) 2)
(pow.f64 (log.f64 (/.f64 1 base)) 2)
(pow.f64 (log.f64 base) 2)
(pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) 2)
(pow.f64 (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))) 2)
(pow.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))) 2)
(pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) 2)
(pow.f64 (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))) 2)
(pow.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))) 2)
(pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) 2)
(pow.f64 (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))) 2)
(pow.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))) 2)
(pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) 2)
(pow.f64 (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))) 2)
(pow.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))) 2)
(+.f64 0 (pow.f64 (log.f64 base) 4))
(pow.f64 (neg.f64 (log.f64 base)) 4)
(pow.f64 (log.f64 base) 4)
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (pow.f64 (log.f64 base) 4))) 2)) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 (log.f64 base) 4)))))
(*.f64 3 (log.f64 (cbrt.f64 (exp.f64 (pow.f64 (log.f64 base) 4)))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (log.f64 base) 4)))) (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (log.f64 base) 4)))))
(*.f64 2 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (log.f64 base) 4)))))
(-.f64 (exp.f64 (log1p.f64 (pow.f64 (log.f64 base) 4))) 1)
(pow.f64 (neg.f64 (log.f64 base)) 4)
(pow.f64 (log.f64 base) 4)
(*.f64 (log.f64 base) (pow.f64 (log.f64 base) 3))
(pow.f64 (neg.f64 (log.f64 base)) 4)
(pow.f64 (log.f64 base) 4)
(*.f64 (pow.f64 (log.f64 base) 4) 1)
(pow.f64 (neg.f64 (log.f64 base)) 4)
(pow.f64 (log.f64 base) 4)
(*.f64 (pow.f64 (log.f64 base) 2) (pow.f64 (log.f64 base) 2))
(pow.f64 (neg.f64 (log.f64 base)) 4)
(pow.f64 (log.f64 base) 4)
(*.f64 1 (pow.f64 (log.f64 base) 4))
(pow.f64 (neg.f64 (log.f64 base)) 4)
(pow.f64 (log.f64 base) 4)
(*.f64 (pow.f64 (log.f64 base) 3) (log.f64 base))
(pow.f64 (neg.f64 (log.f64 base)) 4)
(pow.f64 (log.f64 base) 4)
(*.f64 (pow.f64 (cbrt.f64 (log.f64 base)) 4) (pow.f64 (cbrt.f64 (log.f64 base)) 8))
(pow.f64 (neg.f64 (log.f64 base)) 4)
(pow.f64 (log.f64 base) 4)
(*.f64 (pow.f64 (cbrt.f64 (log.f64 base)) 8) (pow.f64 (cbrt.f64 (log.f64 base)) 4))
(pow.f64 (neg.f64 (log.f64 base)) 4)
(pow.f64 (log.f64 base) 4)
(*.f64 (pow.f64 (pow.f64 (log.f64 base) 4) 5/6) (pow.f64 (cbrt.f64 (log.f64 base)) 2))
(sqrt.f64 (pow.f64 (log.f64 base) 8))
(pow.f64 (neg.f64 (log.f64 base)) 4)
(pow.f64 (log.f64 base) 4)
(log.f64 (exp.f64 (pow.f64 (log.f64 base) 4)))
(pow.f64 (neg.f64 (log.f64 base)) 4)
(pow.f64 (log.f64 base) 4)
(log.f64 (+.f64 1 (expm1.f64 (pow.f64 (log.f64 base) 4))))
(pow.f64 (neg.f64 (log.f64 base)) 4)
(pow.f64 (log.f64 base) 4)
(cbrt.f64 (pow.f64 (log.f64 base) 12))
(pow.f64 (neg.f64 (log.f64 base)) 4)
(pow.f64 (log.f64 base) 4)
(expm1.f64 (log1p.f64 (pow.f64 (log.f64 base) 4)))
(pow.f64 (neg.f64 (log.f64 base)) 4)
(pow.f64 (log.f64 base) 4)
(log1p.f64 (expm1.f64 (pow.f64 (log.f64 base) 4)))
(pow.f64 (neg.f64 (log.f64 base)) 4)
(pow.f64 (log.f64 base) 4)
(exp.f64 (*.f64 4 (log.f64 (log.f64 base))))
(pow.f64 (neg.f64 (log.f64 base)) 4)
(pow.f64 (log.f64 base) 4)
(exp.f64 (*.f64 (*.f64 4 (log.f64 (log.f64 base))) 1))
(pow.f64 (neg.f64 (log.f64 base)) 4)
(pow.f64 (log.f64 base) 4)
(exp.f64 (*.f64 (*.f64 2 (log.f64 (log.f64 base))) 2))
(pow.f64 (neg.f64 (log.f64 base)) 4)
(pow.f64 (log.f64 base) 4)
(exp.f64 (*.f64 (*.f64 8 (log.f64 (log.f64 base))) 1/2))
(pow.f64 (neg.f64 (log.f64 base)) 4)
(pow.f64 (log.f64 base) 4)
(exp.f64 (*.f64 (log.f64 (pow.f64 (log.f64 base) 12)) 1/3))
(pow.f64 (neg.f64 (log.f64 base)) 4)
(pow.f64 (log.f64 base) 4)
(exp.f64 (*.f64 (log.f64 (pow.f64 (cbrt.f64 (log.f64 base)) 4)) 3))
(pow.f64 (neg.f64 (log.f64 base)) 4)
(pow.f64 (log.f64 base) 4)
(exp.f64 (*.f64 (*.f64 (log.f64 (log.f64 base)) 1) 4))
(pow.f64 (neg.f64 (log.f64 base)) 4)
(pow.f64 (log.f64 base) 4)
(exp.f64 (*.f64 (*.f64 (*.f64 4 (log.f64 (log.f64 base))) 1) 1))
(pow.f64 (neg.f64 (log.f64 base)) 4)
(pow.f64 (log.f64 base) 4)
(exp.f64 (*.f64 (*.f64 (log.f64 (log.f64 base)) 2) 2))
(pow.f64 (neg.f64 (log.f64 base)) 4)
(pow.f64 (log.f64 base) 4)
(exp.f64 (*.f64 (*.f64 (*.f64 4 (log.f64 (log.f64 base))) 1/2) 2))
(pow.f64 (neg.f64 (log.f64 base)) 4)
(pow.f64 (log.f64 base) 4)
(exp.f64 (*.f64 (*.f64 (*.f64 2 (log.f64 (log.f64 base))) 1) 2))
(pow.f64 (neg.f64 (log.f64 base)) 4)
(pow.f64 (log.f64 base) 4)
(exp.f64 (+.f64 (*.f64 (log.f64 (log.f64 base)) 1) (*.f64 3 (log.f64 (log.f64 base)))))
(pow.f64 (neg.f64 (log.f64 base)) 4)
(pow.f64 (log.f64 base) 4)
(exp.f64 (+.f64 (*.f64 (log.f64 (log.f64 base)) 2) (*.f64 2 (log.f64 (log.f64 base)))))
(pow.f64 (neg.f64 (log.f64 base)) 4)
(pow.f64 (log.f64 base) 4)
(exp.f64 (+.f64 (*.f64 (*.f64 4 (log.f64 (log.f64 base))) 1/2) (*.f64 2 (log.f64 (log.f64 base)))))
(pow.f64 (neg.f64 (log.f64 base)) 4)
(pow.f64 (log.f64 base) 4)
(exp.f64 (+.f64 (*.f64 (*.f64 2 (log.f64 (log.f64 base))) 1) (*.f64 2 (log.f64 (log.f64 base)))))
(pow.f64 (neg.f64 (log.f64 base)) 4)
(pow.f64 (log.f64 base) 4)
(exp.f64 (+.f64 (*.f64 2 (log.f64 (log.f64 base))) (*.f64 (log.f64 (log.f64 base)) 2)))
(pow.f64 (neg.f64 (log.f64 base)) 4)
(pow.f64 (log.f64 base) 4)
(exp.f64 (+.f64 (*.f64 (log.f64 (log.f64 base)) 2) (*.f64 (log.f64 (log.f64 base)) 2)))
(pow.f64 (neg.f64 (log.f64 base)) 4)
(pow.f64 (log.f64 base) 4)
(exp.f64 (+.f64 (*.f64 (*.f64 4 (log.f64 (log.f64 base))) 1/2) (*.f64 (log.f64 (log.f64 base)) 2)))
(pow.f64 (neg.f64 (log.f64 base)) 4)
(pow.f64 (log.f64 base) 4)
(exp.f64 (+.f64 (*.f64 (*.f64 2 (log.f64 (log.f64 base))) 1) (*.f64 (log.f64 (log.f64 base)) 2)))
(pow.f64 (neg.f64 (log.f64 base)) 4)
(pow.f64 (log.f64 base) 4)
(exp.f64 (+.f64 (*.f64 2 (log.f64 (log.f64 base))) (*.f64 (*.f64 4 (log.f64 (log.f64 base))) 1/2)))
(pow.f64 (neg.f64 (log.f64 base)) 4)
(pow.f64 (log.f64 base) 4)
(exp.f64 (+.f64 (*.f64 (log.f64 (log.f64 base)) 2) (*.f64 (*.f64 4 (log.f64 (log.f64 base))) 1/2)))
(pow.f64 (neg.f64 (log.f64 base)) 4)
(pow.f64 (log.f64 base) 4)
(exp.f64 (+.f64 (*.f64 (*.f64 4 (log.f64 (log.f64 base))) 1/2) (*.f64 (*.f64 4 (log.f64 (log.f64 base))) 1/2)))
(pow.f64 (neg.f64 (log.f64 base)) 4)
(pow.f64 (log.f64 base) 4)
(exp.f64 (+.f64 (*.f64 (*.f64 2 (log.f64 (log.f64 base))) 1) (*.f64 (*.f64 4 (log.f64 (log.f64 base))) 1/2)))
(pow.f64 (neg.f64 (log.f64 base)) 4)
(pow.f64 (log.f64 base) 4)
(exp.f64 (+.f64 (*.f64 2 (log.f64 (log.f64 base))) (*.f64 (*.f64 2 (log.f64 (log.f64 base))) 1)))
(pow.f64 (neg.f64 (log.f64 base)) 4)
(pow.f64 (log.f64 base) 4)
(exp.f64 (+.f64 (*.f64 (log.f64 (log.f64 base)) 2) (*.f64 (*.f64 2 (log.f64 (log.f64 base))) 1)))
(pow.f64 (neg.f64 (log.f64 base)) 4)
(pow.f64 (log.f64 base) 4)
(exp.f64 (+.f64 (*.f64 (*.f64 4 (log.f64 (log.f64 base))) 1/2) (*.f64 (*.f64 2 (log.f64 (log.f64 base))) 1)))
(pow.f64 (neg.f64 (log.f64 base)) 4)
(pow.f64 (log.f64 base) 4)
(exp.f64 (+.f64 (*.f64 (*.f64 2 (log.f64 (log.f64 base))) 1) (*.f64 (*.f64 2 (log.f64 (log.f64 base))) 1)))
(pow.f64 (neg.f64 (log.f64 base)) 4)
(pow.f64 (log.f64 base) 4)
(exp.f64 (+.f64 (*.f64 3 (log.f64 (log.f64 base))) (*.f64 (log.f64 (log.f64 base)) 1)))
(pow.f64 (neg.f64 (log.f64 base)) 4)
(pow.f64 (log.f64 base) 4)
(+.f64 0 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (pow.f64 base (atan2.f64 im re)) (pow.f64 (log.f64 base) -2))) 2)) (log.f64 (cbrt.f64 (pow.f64 (pow.f64 base (atan2.f64 im re)) (pow.f64 (log.f64 base) -2)))))
(*.f64 3 (log.f64 (cbrt.f64 (pow.f64 (pow.f64 base (atan2.f64 im re)) (pow.f64 (log.f64 base) -2)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (pow.f64 base (atan2.f64 im re)) (pow.f64 (log.f64 base) -2)))) (log.f64 (sqrt.f64 (pow.f64 (pow.f64 base (atan2.f64 im re)) (pow.f64 (log.f64 base) -2)))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2)))) 1)
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2)) 1)
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 1 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (cbrt.f64 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2))) (cbrt.f64 (pow.f64 (/.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (log.f64 base)) 4)))
(*.f64 (cbrt.f64 (*.f64 (log.f64 base) (*.f64 (atan2.f64 im re) (pow.f64 (log.f64 base) -2)))) (cbrt.f64 (pow.f64 (/.f64 (sqrt.f64 (*.f64 (atan2.f64 im re) (log.f64 base))) (log.f64 base)) 4)))
(*.f64 (cbrt.f64 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base)))) (cbrt.f64 (pow.f64 (/.f64 (sqrt.f64 (*.f64 (atan2.f64 im re) (log.f64 base))) (log.f64 base)) 4)))
(*.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (cbrt.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2)))
(*.f64 (cbrt.f64 (pow.f64 (/.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (log.f64 base)) 4)) (cbrt.f64 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2))))
(*.f64 (cbrt.f64 (*.f64 (log.f64 base) (*.f64 (atan2.f64 im re) (pow.f64 (log.f64 base) -2)))) (cbrt.f64 (pow.f64 (/.f64 (sqrt.f64 (*.f64 (atan2.f64 im re) (log.f64 base))) (log.f64 base)) 4)))
(*.f64 (cbrt.f64 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base)))) (cbrt.f64 (pow.f64 (/.f64 (sqrt.f64 (*.f64 (atan2.f64 im re) (log.f64 base))) (log.f64 base)) 4)))
(*.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (cbrt.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2)))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) 2) (*.f64 (cbrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (pow.f64 (log.f64 base) -2)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (log.f64 base)) (/.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (*.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (pow.f64 (log.f64 base) -2)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (neg.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (/.f64 1 (neg.f64 (pow.f64 (log.f64 base) 2))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (pow.f64 (log.f64 base) -2) (*.f64 (log.f64 base) (atan2.f64 im re)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) 2) 1) (/.f64 (cbrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (pow.f64 (log.f64 base) 2)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) 1) (/.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (pow.f64 (log.f64 base) 2)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (log.f64 base)) 4)) (/.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (cbrt.f64 (log.f64 base)) 2)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) 2) (pow.f64 (cbrt.f64 (log.f64 base)) 4)) (cbrt.f64 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2))))
(*.f64 (cbrt.f64 (*.f64 (log.f64 base) (*.f64 (atan2.f64 im re) (pow.f64 (log.f64 base) -2)))) (/.f64 (pow.f64 (cbrt.f64 (*.f64 (atan2.f64 im re) (log.f64 base))) 2) (pow.f64 (cbrt.f64 (log.f64 base)) 4)))
(/.f64 (pow.f64 (cbrt.f64 (*.f64 (atan2.f64 im re) (log.f64 base))) 2) (/.f64 (pow.f64 (cbrt.f64 (log.f64 base)) 4) (cbrt.f64 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base))))))
(*.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (/.f64 (pow.f64 (cbrt.f64 (*.f64 (atan2.f64 im re) (log.f64 base))) 2) (pow.f64 (cbrt.f64 (log.f64 base)) 4)))
(*.f64 (/.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (pow.f64 (cbrt.f64 (log.f64 base)) 4)) (/.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (pow.f64 (cbrt.f64 (log.f64 base)) 2)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 1 (log.f64 base)) (/.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) 2) (log.f64 base)) (/.f64 (cbrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(pow.f64 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2)) 1)
(/.f64 (atan2.f64 im re) (log.f64 base))
(pow.f64 (pow.f64 (/.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (log.f64 base)) 4) 1/2)
(/.f64 (atan2.f64 im re) (log.f64 base))
(pow.f64 (pow.f64 (/.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (log.f64 base)) 6) 1/3)
(/.f64 (atan2.f64 im re) (log.f64 base))
(pow.f64 (cbrt.f64 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2))) 3)
(/.f64 (atan2.f64 im re) (log.f64 base))
(pow.f64 (/.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (log.f64 base)) 2)
(/.f64 (atan2.f64 im re) (log.f64 base))
(pow.f64 (/.f64 (pow.f64 (log.f64 base) 2) (*.f64 (log.f64 base) (atan2.f64 im re))) -1)
(/.f64 (atan2.f64 im re) (log.f64 base))
(pow.f64 (exp.f64 1) (log.f64 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(pow.f64 (/.f64 (pow.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) 3) (pow.f64 (log.f64 base) 6)) 1/3)
(cbrt.f64 (/.f64 (pow.f64 (*.f64 (atan2.f64 im re) (log.f64 base)) 3) (pow.f64 (log.f64 base) 6)))
(cbrt.f64 (/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3)))
(pow.f64 (/.f64 (/.f64 (pow.f64 (log.f64 base) 2) (*.f64 (log.f64 base) (atan2.f64 im re))) 1) -1)
(/.f64 (atan2.f64 im re) (log.f64 base))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2)))) 2)) (cbrt.f64 (log.f64 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2)))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (log.f64 base) (*.f64 (atan2.f64 im re) (pow.f64 (log.f64 base) -2))))) 2)) (cbrt.f64 (log.f64 (*.f64 (log.f64 base) (*.f64 (atan2.f64 im re) (pow.f64 (log.f64 base) -2))))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base))))) 2)) (cbrt.f64 (log.f64 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base))))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) 2)) (cbrt.f64 (log.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2))))) (sqrt.f64 (log.f64 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2)))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 (log.f64 base) (*.f64 (atan2.f64 im re) (pow.f64 (log.f64 base) -2)))))) (sqrt.f64 (log.f64 (*.f64 (log.f64 base) (*.f64 (atan2.f64 im re) (pow.f64 (log.f64 base) -2))))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base)))))) (sqrt.f64 (log.f64 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base))))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))) (sqrt.f64 (log.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))
(neg.f64 (/.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (neg.f64 (pow.f64 (log.f64 base) 2))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(sqrt.f64 (pow.f64 (/.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (log.f64 base)) 4))
(/.f64 (atan2.f64 im re) (log.f64 base))
(log.f64 (pow.f64 (pow.f64 base (atan2.f64 im re)) (pow.f64 (log.f64 base) -2)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(log.f64 (+.f64 1 (-.f64 (pow.f64 (pow.f64 base (atan2.f64 im re)) (pow.f64 (log.f64 base) -2)) 1)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(cbrt.f64 (pow.f64 (/.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (log.f64 base)) 6))
(/.f64 (atan2.f64 im re) (log.f64 base))
(cbrt.f64 (/.f64 (pow.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) 3) (pow.f64 (log.f64 base) 6)))
(cbrt.f64 (/.f64 (pow.f64 (*.f64 (atan2.f64 im re) (log.f64 base)) 3) (pow.f64 (log.f64 base) 6)))
(cbrt.f64 (/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3)))
(expm1.f64 (log1p.f64 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(log1p.f64 (-.f64 (pow.f64 (pow.f64 base (atan2.f64 im re)) (pow.f64 (log.f64 base) -2)) 1))
(/.f64 (atan2.f64 im re) (log.f64 base))
(exp.f64 (log.f64 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(exp.f64 (*.f64 (log.f64 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2))) 1))
(/.f64 (atan2.f64 im re) (log.f64 base))
(exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (log.f64 base)) 6)) 1/3))
(/.f64 (atan2.f64 im re) (log.f64 base))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2)))) 3))
(/.f64 (atan2.f64 im re) (log.f64 base))
(exp.f64 (*.f64 (log.f64 (/.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (log.f64 base))) 2))
(/.f64 (atan2.f64 im re) (log.f64 base))
(exp.f64 (*.f64 (log.f64 (/.f64 (pow.f64 (log.f64 base) 2) (*.f64 (log.f64 base) (atan2.f64 im re)))) -1))
(/.f64 (atan2.f64 im re) (log.f64 base))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) -2))) 1) 1))
(/.f64 (atan2.f64 im re) (log.f64 base))
(exp.f64 (-.f64 (*.f64 (log.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) 1) (*.f64 2 (log.f64 (log.f64 base)))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(exp.f64 (-.f64 (log.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (*.f64 (log.f64 (log.f64 base)) 2)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(exp.f64 (-.f64 (*.f64 (log.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) 1) (*.f64 (log.f64 (log.f64 base)) 2)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(exp.f64 (-.f64 (log.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (*.f64 (*.f64 4 (log.f64 (log.f64 base))) 1/2)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(exp.f64 (-.f64 (*.f64 (log.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) 1) (*.f64 (*.f64 4 (log.f64 (log.f64 base))) 1/2)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(exp.f64 (-.f64 (log.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (*.f64 (*.f64 2 (log.f64 (log.f64 base))) 1)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(exp.f64 (-.f64 (*.f64 (log.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) 1) (*.f64 (*.f64 2 (log.f64 (log.f64 base))) 1)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(exp.f64 (+.f64 (*.f64 (log.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) 1) (*.f64 -2 (log.f64 (log.f64 base)))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(exp.f64 (+.f64 (*.f64 -2 (log.f64 (log.f64 base))) (*.f64 (log.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) 1)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(+.f64 0 (pow.f64 (log.f64 base) 2))
(pow.f64 (log.f64 base) 2)
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 base (log.f64 base))) 2)) (log.f64 (cbrt.f64 (pow.f64 base (log.f64 base)))))
(*.f64 3 (log.f64 (cbrt.f64 (pow.f64 base (log.f64 base)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 base (log.f64 base)))) (log.f64 (sqrt.f64 (pow.f64 base (log.f64 base)))))
(pow.f64 (log.f64 base) 2)
(-.f64 (exp.f64 (log1p.f64 (pow.f64 (log.f64 base) 2))) 1)
(pow.f64 (log.f64 base) 2)
(*.f64 (log.f64 base) (log.f64 base))
(pow.f64 (log.f64 base) 2)
(*.f64 (pow.f64 (log.f64 base) 2) 1)
(pow.f64 (log.f64 base) 2)
(*.f64 1 (pow.f64 (log.f64 base) 2))
(pow.f64 (log.f64 base) 2)
(*.f64 (pow.f64 (cbrt.f64 (log.f64 base)) 2) (pow.f64 (cbrt.f64 (log.f64 base)) 4))
(pow.f64 (log.f64 base) 2)
(*.f64 (pow.f64 (cbrt.f64 (log.f64 base)) 4) (pow.f64 (cbrt.f64 (log.f64 base)) 2))
(pow.f64 (log.f64 base) 2)
(*.f64 (sqrt.f64 (log.f64 base)) (pow.f64 (log.f64 base) 3/2))
(*.f64 (pow.f64 (log.f64 base) 3/2) (sqrt.f64 (log.f64 base)))
(*.f64 (sqrt.f64 (log.f64 base)) (pow.f64 (log.f64 base) 3/2))
(*.f64 (pow.f64 (cbrt.f64 (log.f64 base)) 5) (cbrt.f64 (log.f64 base)))
(pow.f64 (log.f64 base) 2)
(pow.f64 (log.f64 base) 2)
(pow.f64 (pow.f64 (log.f64 base) 4) 1/2)
(pow.f64 (log.f64 base) 2)
(pow.f64 (pow.f64 (log.f64 base) 2) 1)
(pow.f64 (log.f64 base) 2)
(pow.f64 (pow.f64 (log.f64 base) 6) 1/3)
(pow.f64 (log.f64 base) 2)
(pow.f64 (pow.f64 (log.f64 base) 8) 1/4)
(pow.f64 (pow.f64 (log.f64 base) 12) 1/6)
(pow.f64 (pow.f64 (log.f64 base) 3) 2/3)
(pow.f64 (log.f64 base) 2)
(pow.f64 (pow.f64 (cbrt.f64 (log.f64 base)) 2) 3)
(pow.f64 (log.f64 base) 2)
(pow.f64 (pow.f64 (cbrt.f64 (log.f64 base)) 4) 3/2)
(pow.f64 (cbrt.f64 (log.f64 base)) 6)
(pow.f64 (log.f64 base) 2)
(pow.f64 (sqrt.f64 (log.f64 base)) 4)
(pow.f64 (log.f64 base) 2)
(pow.f64 (exp.f64 1/2) (*.f64 4 (log.f64 (log.f64 base))))
(pow.f64 (log.f64 base) 2)
(pow.f64 (exp.f64 2) (log.f64 (log.f64 base)))
(pow.f64 (log.f64 base) 2)
(pow.f64 (exp.f64 1) (*.f64 2 (log.f64 (log.f64 base))))
(pow.f64 (log.f64 base) 2)
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (*.f64 2 (log.f64 (log.f64 base)))) 2)) (cbrt.f64 (*.f64 2 (log.f64 (log.f64 base)))))
(pow.f64 (exp.f64 (sqrt.f64 (*.f64 2 (log.f64 (log.f64 base))))) (sqrt.f64 (*.f64 2 (log.f64 (log.f64 base)))))
(fabs.f64 (pow.f64 (log.f64 base) 2))
(pow.f64 (log.f64 base) 2)
(log.f64 (pow.f64 base (log.f64 base)))
(pow.f64 (log.f64 base) 2)
(log.f64 (+.f64 1 (expm1.f64 (pow.f64 (log.f64 base) 2))))
(pow.f64 (log.f64 base) 2)
(cbrt.f64 (pow.f64 (log.f64 base) 6))
(pow.f64 (log.f64 base) 2)
(expm1.f64 (log1p.f64 (pow.f64 (log.f64 base) 2)))
(pow.f64 (log.f64 base) 2)
(log1p.f64 (expm1.f64 (pow.f64 (log.f64 base) 2)))
(pow.f64 (log.f64 base) 2)
(exp.f64 (*.f64 2 (log.f64 (log.f64 base))))
(pow.f64 (log.f64 base) 2)
(exp.f64 (*.f64 (log.f64 (log.f64 base)) 2))
(pow.f64 (log.f64 base) 2)
(exp.f64 (*.f64 (*.f64 4 (log.f64 (log.f64 base))) 1/2))
(pow.f64 (log.f64 base) 2)
(exp.f64 (*.f64 (*.f64 2 (log.f64 (log.f64 base))) 1))
(pow.f64 (log.f64 base) 2)
(exp.f64 (*.f64 (*.f64 6 (log.f64 (log.f64 base))) 1/3))
(pow.f64 (log.f64 base) 2)
(exp.f64 (*.f64 (log.f64 (pow.f64 (cbrt.f64 (log.f64 base)) 2)) 3))
(pow.f64 (log.f64 base) 2)
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (log.f64 base))) 4))
(pow.f64 (log.f64 base) 2)
(exp.f64 (*.f64 (*.f64 (log.f64 (log.f64 base)) 1) 2))
(pow.f64 (log.f64 base) 2)
(exp.f64 (*.f64 (*.f64 (*.f64 4 (log.f64 (log.f64 base))) 1) 1/2))
(pow.f64 (log.f64 base) 2)
(exp.f64 (*.f64 (*.f64 (log.f64 (log.f64 base)) 2) 1))
(pow.f64 (log.f64 base) 2)
(exp.f64 (*.f64 (*.f64 (*.f64 4 (log.f64 (log.f64 base))) 1/2) 1))
(pow.f64 (log.f64 base) 2)
(exp.f64 (*.f64 (*.f64 (*.f64 2 (log.f64 (log.f64 base))) 1) 1))
(pow.f64 (log.f64 base) 2)
(exp.f64 (+.f64 (*.f64 (log.f64 (log.f64 base)) 1) (log.f64 (log.f64 base))))
(pow.f64 (log.f64 base) 2)
(exp.f64 (+.f64 (log.f64 (log.f64 base)) (*.f64 (log.f64 (log.f64 base)) 1)))
(pow.f64 (log.f64 base) 2)
(exp.f64 (+.f64 (*.f64 (log.f64 (log.f64 base)) 1) (*.f64 (log.f64 (log.f64 base)) 1)))
(pow.f64 (log.f64 base) 2)

eval159.0ms (2.6%)

Compiler

Compiled 10445 to 4482 computations (57.1% saved)

prune139.0ms (2.3%)

Pruning

20 alts after pruning (17 fresh and 3 done)

PrunedKeptTotal
New66711678
Fresh6612
Picked101
Done235
Total67620696
Error
0b
Counts
696 → 20
Alt Table
Click to see full alt table
StatusErrorProgram
33.6b
(pow.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3) 1/3)
0.6b
(pow.f64 (*.f64 (/.f64 1 (atan2.f64 im re)) (log.f64 base)) -1)
30.5b
(pow.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2)
9.8b
(pow.f64 (log.f64 (pow.f64 base (/.f64 1 (atan2.f64 im re)))) -1)
5.9b
(pow.f64 (cbrt.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) 3)) -1)
1.5b
(pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 3)
1.6b
(/.f64 (fma.f64 (atan2.f64 im re) (log.f64 base) 0) (exp.f64 (log.f64 (pow.f64 (log.f64 base) 2))))
0.3b
(/.f64 (atan2.f64 im re) (log.f64 base))
0.5b
(/.f64 (/.f64 1 (log.f64 base)) (/.f64 1 (atan2.f64 im re)))
0.4b
(/.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) 2))
0.5b
(/.f64 1 (/.f64 (log.f64 base) (atan2.f64 im re)))
0.4b
(*.f64 (pow.f64 (log.f64 base) -2) (*.f64 (log.f64 base) (atan2.f64 im re)))
1.3b
(*.f64 (atan2.f64 im re) (pow.f64 (/.f64 1 (cbrt.f64 (log.f64 base))) 3))
0.3b
(*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base)))
31.5b
(*.f64 (atan2.f64 im re) (sqrt.f64 (pow.f64 (log.f64 base) -2)))
34.0b
(*.f64 (atan2.f64 im re) (exp.f64 (neg.f64 (log.f64 (log.f64 base)))))
0.8b
(*.f64 (atan2.f64 im re) (cbrt.f64 (pow.f64 (/.f64 1 (log.f64 base)) 3)))
31.9b
(sqrt.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -2))
31.1b
(exp.f64 (log.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
5.7b
(cbrt.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3))
Compiler

Compiled 474 to 351 computations (25.9% saved)

localize31.0ms (0.5%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.3b
(*.f64 (log.f64 base) (atan2.f64 im re))
0.3b
(*.f64 (pow.f64 (log.f64 base) -2) (*.f64 (log.f64 base) (atan2.f64 im re)))
0.5b
(pow.f64 (log.f64 base) -2)
Compiler

Compiled 33 to 12 computations (63.6% saved)

series5.0ms (0.1%)

Counts
2 → 48
Calls

12 calls:

TimeVariablePointExpression
1.0ms
base
@0
(pow.f64 (log.f64 base) -2)
1.0ms
base
@-inf
(pow.f64 (log.f64 base) -2)
1.0ms
base
@inf
(pow.f64 (log.f64 base) -2)
0.0ms
base
@inf
(*.f64 (pow.f64 (log.f64 base) -2) (*.f64 (log.f64 base) (atan2.f64 im re)))
0.0ms
re
@0
(*.f64 (pow.f64 (log.f64 base) -2) (*.f64 (log.f64 base) (atan2.f64 im re)))

rewrite46.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
906×pow1_binary64
832×add-log-exp_binary64
831×log1p-expm1-u_binary64
831×expm1-log1p-u_binary64
812×add-exp-log_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01023
120218
2234018
Stop Event
node limit
Counts
2 → 27
Calls
Call 1
Inputs
(pow.f64 (log.f64 base) -2)
(*.f64 (pow.f64 (log.f64 base) -2) (*.f64 (log.f64 base) (atan2.f64 im re)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (pow.f64 (log.f64 base) -2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (log.f64 base) -2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (log.f64 base) -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (log.f64 base) -2)) (cbrt.f64 (pow.f64 (log.f64 base) -4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (log.f64 base) -4)) (cbrt.f64 (pow.f64 (log.f64 base) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (log.f64 base)) (/.f64 1 (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (pow.f64 (log.f64 base) 2)) -2) (pow.f64 (cbrt.f64 (log.f64 base)) -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (log.f64 base)) -2) (pow.f64 (sqrt.f64 (log.f64 base)) -2))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (log.f64 base) -4))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (log.f64 base) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (pow.f64 (log.f64 base) -2) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (log.f64 base) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (log.f64 base) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 -2 (log.f64 (log.f64 base))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (pow.f64 (log.f64 base) -2) (pow.f64 (atan2.f64 im re) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (/.f64 1 (log.f64 base))) (atan2.f64 im re)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (pow.f64 (log.f64 base) -2) 3) (pow.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) 3) (pow.f64 (pow.f64 (log.f64 base) -2) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base)))))))))

simplify49.0ms (0.8%)

Algorithm
egg-herbie
Rules
681×distribute-rgt-in_binary64
669×distribute-lft-in_binary64
515×associate-*l*_binary64
463×associate-*r*_binary64
423×log-prod_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
091675
1199450
2597450
33600450
Stop Event
node limit
Counts
75 → 34
Calls
Call 1
Inputs
(/.f64 1 (pow.f64 (log.f64 base) 2))
(/.f64 1 (pow.f64 (log.f64 base) 2))
(/.f64 1 (pow.f64 (log.f64 base) 2))
(/.f64 1 (pow.f64 (log.f64 base) 2))
(/.f64 1 (pow.f64 (log.f64 (/.f64 1 base)) 2))
(/.f64 1 (pow.f64 (log.f64 (/.f64 1 base)) 2))
(/.f64 1 (pow.f64 (log.f64 (/.f64 1 base)) 2))
(/.f64 1 (pow.f64 (log.f64 (/.f64 1 base)) 2))
(/.f64 1 (pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) 2))
(/.f64 1 (pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) 2))
(/.f64 1 (pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) 2))
(/.f64 1 (pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) 2))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(-.f64 (+.f64 1 (pow.f64 (log.f64 base) -2)) 1)
(*.f64 (pow.f64 (log.f64 base) -2) 1)
(*.f64 1 (pow.f64 (log.f64 base) -2))
(*.f64 (cbrt.f64 (pow.f64 (log.f64 base) -2)) (cbrt.f64 (pow.f64 (log.f64 base) -4)))
(*.f64 (cbrt.f64 (pow.f64 (log.f64 base) -4)) (cbrt.f64 (pow.f64 (log.f64 base) -2)))
(*.f64 (/.f64 1 (log.f64 base)) (/.f64 1 (log.f64 base)))
(*.f64 (pow.f64 (cbrt.f64 (pow.f64 (log.f64 base) 2)) -2) (pow.f64 (cbrt.f64 (log.f64 base)) -2))
(*.f64 (pow.f64 (sqrt.f64 (log.f64 base)) -2) (pow.f64 (sqrt.f64 (log.f64 base)) -2))
(sqrt.f64 (pow.f64 (log.f64 base) -4))
(log.f64 (exp.f64 (pow.f64 (log.f64 base) -2)))
(cbrt.f64 (pow.f64 (pow.f64 (log.f64 base) -2) 3))
(expm1.f64 (log1p.f64 (pow.f64 (log.f64 base) -2)))
(log1p.f64 (expm1.f64 (pow.f64 (log.f64 base) -2)))
(exp.f64 (*.f64 -2 (log.f64 (log.f64 base))))
(-.f64 (+.f64 1 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base)))) 1)
(pow.f64 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base))) 1)
(pow.f64 (pow.f64 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base))) 3) 1/3)
(pow.f64 (cbrt.f64 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base)))) 3)
(pow.f64 (sqrt.f64 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base)))) 2)
(sqrt.f64 (*.f64 (pow.f64 (log.f64 base) -2) (pow.f64 (atan2.f64 im re) 2)))
(log.f64 (pow.f64 (exp.f64 (/.f64 1 (log.f64 base))) (atan2.f64 im re)))
(cbrt.f64 (pow.f64 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base))) 3))
(cbrt.f64 (*.f64 (pow.f64 (pow.f64 (log.f64 base) -2) 3) (pow.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) 3)))
(cbrt.f64 (*.f64 (pow.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) 3) (pow.f64 (pow.f64 (log.f64 base) -2) 3)))
(expm1.f64 (log1p.f64 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base)))))
(log1p.f64 (expm1.f64 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base)))))
(exp.f64 (log.f64 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base)))))
Outputs
(/.f64 1 (pow.f64 (log.f64 base) 2))
(pow.f64 (log.f64 base) -2)
(/.f64 1 (pow.f64 (log.f64 base) 2))
(pow.f64 (log.f64 base) -2)
(/.f64 1 (pow.f64 (log.f64 base) 2))
(pow.f64 (log.f64 base) -2)
(/.f64 1 (pow.f64 (log.f64 base) 2))
(pow.f64 (log.f64 base) -2)
(/.f64 1 (pow.f64 (log.f64 (/.f64 1 base)) 2))
(/.f64 1 (pow.f64 (log.f64 base) 2))
(pow.f64 (log.f64 base) -2)
(/.f64 1 (pow.f64 (log.f64 (/.f64 1 base)) 2))
(/.f64 1 (pow.f64 (log.f64 base) 2))
(pow.f64 (log.f64 base) -2)
(/.f64 1 (pow.f64 (log.f64 (/.f64 1 base)) 2))
(/.f64 1 (pow.f64 (log.f64 base) 2))
(pow.f64 (log.f64 base) -2)
(/.f64 1 (pow.f64 (log.f64 (/.f64 1 base)) 2))
(/.f64 1 (pow.f64 (log.f64 base) 2))
(pow.f64 (log.f64 base) -2)
(/.f64 1 (pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) 2))
(/.f64 1 (pow.f64 (log.f64 base) 2))
(pow.f64 (log.f64 base) -2)
(/.f64 1 (pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) 2))
(/.f64 1 (pow.f64 (log.f64 base) 2))
(pow.f64 (log.f64 base) -2)
(/.f64 1 (pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) 2))
(/.f64 1 (pow.f64 (log.f64 base) 2))
(pow.f64 (log.f64 base) -2)
(/.f64 1 (pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) 2))
(/.f64 1 (pow.f64 (log.f64 base) 2))
(pow.f64 (log.f64 base) -2)
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 1 (pow.f64 (log.f64 base) 2))
(pow.f64 (log.f64 base) -2)
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 1 (pow.f64 (log.f64 base) 2))
(pow.f64 (log.f64 base) -2)
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 1 (pow.f64 (log.f64 base) 2))
(pow.f64 (log.f64 base) -2)
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 1 (pow.f64 (log.f64 base) 2))
(pow.f64 (log.f64 base) -2)
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(/.f64 1 (pow.f64 (log.f64 base) 2))
(pow.f64 (log.f64 base) -2)
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(/.f64 1 (pow.f64 (log.f64 base) 2))
(pow.f64 (log.f64 base) -2)
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(/.f64 1 (pow.f64 (log.f64 base) 2))
(pow.f64 (log.f64 base) -2)
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(/.f64 1 (pow.f64 (log.f64 base) 2))
(pow.f64 (log.f64 base) -2)
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 1 (pow.f64 (log.f64 base) 2))
(pow.f64 (log.f64 base) -2)
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 1 (pow.f64 (log.f64 base) 2))
(pow.f64 (log.f64 base) -2)
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 1 (pow.f64 (log.f64 base) 2))
(pow.f64 (log.f64 base) -2)
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 1 (pow.f64 (log.f64 base) 2))
(pow.f64 (log.f64 base) -2)
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 1 (pow.f64 (log.f64 base) 2))
(pow.f64 (log.f64 base) -2)
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 1 (pow.f64 (log.f64 base) 2))
(pow.f64 (log.f64 base) -2)
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 1 (pow.f64 (log.f64 base) 2))
(pow.f64 (log.f64 base) -2)
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 1 (pow.f64 (log.f64 base) 2))
(pow.f64 (log.f64 base) -2)
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 1 (pow.f64 (log.f64 base) 2))
(pow.f64 (log.f64 base) -2)
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 1 (pow.f64 (log.f64 base) 2))
(pow.f64 (log.f64 base) -2)
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 1 (pow.f64 (log.f64 base) 2))
(pow.f64 (log.f64 base) -2)
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 1 (pow.f64 (log.f64 base) 2))
(pow.f64 (log.f64 base) -2)
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 1 (pow.f64 (log.f64 base) 2))
(pow.f64 (log.f64 base) -2)
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 1 (pow.f64 (log.f64 base) 2))
(pow.f64 (log.f64 base) -2)
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 1 (pow.f64 (log.f64 base) 2))
(pow.f64 (log.f64 base) -2)
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 1 (pow.f64 (log.f64 base) 2))
(pow.f64 (log.f64 base) -2)
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 1 (pow.f64 (log.f64 base) 2))
(pow.f64 (log.f64 base) -2)
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 1 (pow.f64 (log.f64 base) 2))
(pow.f64 (log.f64 base) -2)
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 1 (pow.f64 (log.f64 base) 2))
(pow.f64 (log.f64 base) -2)
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 1 (pow.f64 (log.f64 base) 2))
(pow.f64 (log.f64 base) -2)
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 1 (pow.f64 (log.f64 base) 2))
(pow.f64 (log.f64 base) -2)
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 1 (pow.f64 (log.f64 base) 2))
(pow.f64 (log.f64 base) -2)
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 1 (pow.f64 (log.f64 base) 2))
(pow.f64 (log.f64 base) -2)
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 1 (pow.f64 (log.f64 base) 2))
(pow.f64 (log.f64 base) -2)
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 1 (pow.f64 (log.f64 base) 2))
(pow.f64 (log.f64 base) -2)
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 1 (pow.f64 (log.f64 base) 2))
(pow.f64 (log.f64 base) -2)
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 1 (pow.f64 (log.f64 base) 2))
(pow.f64 (log.f64 base) -2)
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 1 (pow.f64 (log.f64 base) 2))
(pow.f64 (log.f64 base) -2)
(-.f64 (+.f64 1 (pow.f64 (log.f64 base) -2)) 1)
(/.f64 1 (pow.f64 (log.f64 base) 2))
(pow.f64 (log.f64 base) -2)
(*.f64 (pow.f64 (log.f64 base) -2) 1)
(/.f64 1 (pow.f64 (log.f64 base) 2))
(pow.f64 (log.f64 base) -2)
(*.f64 1 (pow.f64 (log.f64 base) -2))
(/.f64 1 (pow.f64 (log.f64 base) 2))
(pow.f64 (log.f64 base) -2)
(*.f64 (cbrt.f64 (pow.f64 (log.f64 base) -2)) (cbrt.f64 (pow.f64 (log.f64 base) -4)))
(/.f64 1 (pow.f64 (log.f64 base) 2))
(pow.f64 (log.f64 base) -2)
(*.f64 (cbrt.f64 (pow.f64 (log.f64 base) -4)) (cbrt.f64 (pow.f64 (log.f64 base) -2)))
(/.f64 1 (pow.f64 (log.f64 base) 2))
(pow.f64 (log.f64 base) -2)
(*.f64 (/.f64 1 (log.f64 base)) (/.f64 1 (log.f64 base)))
(/.f64 1 (pow.f64 (log.f64 base) 2))
(pow.f64 (log.f64 base) -2)
(*.f64 (pow.f64 (cbrt.f64 (pow.f64 (log.f64 base) 2)) -2) (pow.f64 (cbrt.f64 (log.f64 base)) -2))
(/.f64 1 (pow.f64 (log.f64 base) 2))
(pow.f64 (log.f64 base) -2)
(*.f64 (pow.f64 (sqrt.f64 (log.f64 base)) -2) (pow.f64 (sqrt.f64 (log.f64 base)) -2))
(/.f64 1 (pow.f64 (log.f64 base) 2))
(pow.f64 (log.f64 base) -2)
(sqrt.f64 (pow.f64 (log.f64 base) -4))
(/.f64 1 (pow.f64 (log.f64 base) 2))
(pow.f64 (log.f64 base) -2)
(log.f64 (exp.f64 (pow.f64 (log.f64 base) -2)))
(/.f64 1 (pow.f64 (log.f64 base) 2))
(pow.f64 (log.f64 base) -2)
(cbrt.f64 (pow.f64 (pow.f64 (log.f64 base) -2) 3))
(/.f64 1 (pow.f64 (log.f64 base) 2))
(pow.f64 (log.f64 base) -2)
(expm1.f64 (log1p.f64 (pow.f64 (log.f64 base) -2)))
(/.f64 1 (pow.f64 (log.f64 base) 2))
(pow.f64 (log.f64 base) -2)
(log1p.f64 (expm1.f64 (pow.f64 (log.f64 base) -2)))
(/.f64 1 (pow.f64 (log.f64 base) 2))
(pow.f64 (log.f64 base) -2)
(exp.f64 (*.f64 -2 (log.f64 (log.f64 base))))
(/.f64 1 (pow.f64 (log.f64 base) 2))
(pow.f64 (log.f64 base) -2)
(-.f64 (+.f64 1 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base)))) 1)
(/.f64 1 (pow.f64 (log.f64 base) 2))
(pow.f64 (log.f64 base) -2)
(pow.f64 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base))) 1)
(/.f64 1 (pow.f64 (log.f64 base) 2))
(pow.f64 (log.f64 base) -2)
(pow.f64 (pow.f64 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base))) 3) 1/3)
(/.f64 1 (pow.f64 (log.f64 base) 2))
(pow.f64 (log.f64 base) -2)
(pow.f64 (cbrt.f64 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base)))) 3)
(/.f64 1 (pow.f64 (log.f64 base) 2))
(pow.f64 (log.f64 base) -2)
(pow.f64 (sqrt.f64 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base)))) 2)
(/.f64 1 (pow.f64 (log.f64 base) 2))
(pow.f64 (log.f64 base) -2)
(sqrt.f64 (*.f64 (pow.f64 (log.f64 base) -2) (pow.f64 (atan2.f64 im re) 2)))
(/.f64 1 (pow.f64 (log.f64 base) 2))
(pow.f64 (log.f64 base) -2)
(log.f64 (pow.f64 (exp.f64 (/.f64 1 (log.f64 base))) (atan2.f64 im re)))
(/.f64 1 (pow.f64 (log.f64 base) 2))
(pow.f64 (log.f64 base) -2)
(cbrt.f64 (pow.f64 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base))) 3))
(/.f64 1 (pow.f64 (log.f64 base) 2))
(pow.f64 (log.f64 base) -2)
(cbrt.f64 (*.f64 (pow.f64 (pow.f64 (log.f64 base) -2) 3) (pow.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) 3)))
(/.f64 1 (pow.f64 (log.f64 base) 2))
(pow.f64 (log.f64 base) -2)
(cbrt.f64 (*.f64 (pow.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) 3) (pow.f64 (pow.f64 (log.f64 base) -2) 3)))
(/.f64 1 (pow.f64 (log.f64 base) 2))
(pow.f64 (log.f64 base) -2)
(expm1.f64 (log1p.f64 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base)))))
(/.f64 1 (pow.f64 (log.f64 base) 2))
(pow.f64 (log.f64 base) -2)
(log1p.f64 (expm1.f64 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base)))))
(/.f64 1 (pow.f64 (log.f64 base) 2))
(pow.f64 (log.f64 base) -2)
(exp.f64 (log.f64 (*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base)))))
(/.f64 1 (pow.f64 (log.f64 base) 2))
(pow.f64 (log.f64 base) -2)

localize9.0ms (0.2%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.3b
(/.f64 (log.f64 base) (atan2.f64 im re))
0.5b
(/.f64 1 (/.f64 (log.f64 base) (atan2.f64 im re)))
Compiler

Compiled 26 to 9 computations (65.4% saved)

series2.0ms (0%)

Counts
1 → 36
Calls

9 calls:

TimeVariablePointExpression
0.0ms
base
@-inf
(/.f64 1 (/.f64 (log.f64 base) (atan2.f64 im re)))
0.0ms
base
@0
(/.f64 1 (/.f64 (log.f64 base) (atan2.f64 im re)))
0.0ms
base
@inf
(/.f64 1 (/.f64 (log.f64 base) (atan2.f64 im re)))
0.0ms
im
@inf
(/.f64 1 (/.f64 (log.f64 base) (atan2.f64 im re)))
0.0ms
re
@inf
(/.f64 1 (/.f64 (log.f64 base) (atan2.f64 im re)))

rewrite48.0ms (0.8%)

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

Useful iterations: 1 (0.0ms)

IterNodesCost
0912
11809
222189
Stop Event
node limit
Counts
1 → 36
Calls
Call 1
Inputs
(/.f64 1 (/.f64 (log.f64 base) (atan2.f64 im re)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (/.f64 (atan2.f64 im re) (log.f64 base))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (atan2.f64 im re) (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (/.f64 1 (/.f64 (neg.f64 (log.f64 base)) (atan2.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (log.f64 base)) (atan2.f64 im re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (log.f64 base)) (pow.f64 (/.f64 1 (atan2.f64 im re)) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) 2) -1) (pow.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) -1) (pow.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) 1) (/.f64 (cbrt.f64 (atan2.f64 im re)) (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (atan2.f64 im re)) 1) (/.f64 (sqrt.f64 (atan2.f64 im re)) (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 (log.f64 base)) 2)) (/.f64 (atan2.f64 im re) (cbrt.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) (pow.f64 (cbrt.f64 (log.f64 base)) 2)) (/.f64 (cbrt.f64 (atan2.f64 im re)) (cbrt.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (atan2.f64 im re)) (pow.f64 (cbrt.f64 (log.f64 base)) 2)) (/.f64 (sqrt.f64 (atan2.f64 im re)) (cbrt.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (log.f64 base))) (/.f64 (atan2.f64 im re) (sqrt.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) (sqrt.f64 (log.f64 base))) (/.f64 (cbrt.f64 (atan2.f64 im re)) (sqrt.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (atan2.f64 im re)) (sqrt.f64 (log.f64 base))) (/.f64 (sqrt.f64 (atan2.f64 im re)) (sqrt.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (neg.f64 (log.f64 base))) (neg.f64 (atan2.f64 im re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 1 (log.f64 base)) 1) (atan2.f64 im re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 1 (log.f64 base)) (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2)) (cbrt.f64 (atan2.f64 im re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 1 (log.f64 base)) (sqrt.f64 (atan2.f64 im re))) (sqrt.f64 (atan2.f64 im re)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))))

simplify48.0ms (0.8%)

Algorithm
egg-herbie
Rules
454×log-div_binary64
443×log-prod_binary64
325×fma-def_binary64
290×associate-/l*_binary64
221×unswap-sqr_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0111677
1270677
2811674
33944671
Stop Event
node limit
Counts
72 → 43
Calls
Call 1
Inputs
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(-.f64 (+.f64 1 (/.f64 (atan2.f64 im re) (log.f64 base))) 1)
(*.f64 1 (/.f64 (atan2.f64 im re) (log.f64 base)))
(*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base)))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1)
(*.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(*.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(*.f64 -1 (/.f64 1 (/.f64 (neg.f64 (log.f64 base)) (atan2.f64 im re))))
(*.f64 (/.f64 1 (log.f64 base)) (atan2.f64 im re))
(*.f64 (/.f64 1 (log.f64 base)) (pow.f64 (/.f64 1 (atan2.f64 im re)) -1))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) 2) -1) (pow.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) -1))
(*.f64 (pow.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) -1) (pow.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) -1))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) 1) (/.f64 (cbrt.f64 (atan2.f64 im re)) (log.f64 base)))
(*.f64 (/.f64 (sqrt.f64 (atan2.f64 im re)) 1) (/.f64 (sqrt.f64 (atan2.f64 im re)) (log.f64 base)))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (log.f64 base)) 2)) (/.f64 (atan2.f64 im re) (cbrt.f64 (log.f64 base))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) (pow.f64 (cbrt.f64 (log.f64 base)) 2)) (/.f64 (cbrt.f64 (atan2.f64 im re)) (cbrt.f64 (log.f64 base))))
(*.f64 (/.f64 (sqrt.f64 (atan2.f64 im re)) (pow.f64 (cbrt.f64 (log.f64 base)) 2)) (/.f64 (sqrt.f64 (atan2.f64 im re)) (cbrt.f64 (log.f64 base))))
(*.f64 (/.f64 1 (sqrt.f64 (log.f64 base))) (/.f64 (atan2.f64 im re) (sqrt.f64 (log.f64 base))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) (sqrt.f64 (log.f64 base))) (/.f64 (cbrt.f64 (atan2.f64 im re)) (sqrt.f64 (log.f64 base))))
(*.f64 (/.f64 (sqrt.f64 (atan2.f64 im re)) (sqrt.f64 (log.f64 base))) (/.f64 (sqrt.f64 (atan2.f64 im re)) (sqrt.f64 (log.f64 base))))
(*.f64 (/.f64 1 (neg.f64 (log.f64 base))) (neg.f64 (atan2.f64 im re)))
(*.f64 (*.f64 (/.f64 1 (log.f64 base)) 1) (atan2.f64 im re))
(*.f64 (*.f64 (/.f64 1 (log.f64 base)) (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2)) (cbrt.f64 (atan2.f64 im re)))
(*.f64 (*.f64 (/.f64 1 (log.f64 base)) (sqrt.f64 (atan2.f64 im re))) (sqrt.f64 (atan2.f64 im re)))
(pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -1)
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1)
(pow.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3) 1/3)
(pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 3)
(pow.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2)
(sqrt.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -2))
(log.f64 (exp.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(cbrt.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3))
(cbrt.f64 (/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3)))
(expm1.f64 (log1p.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(log1p.f64 (expm1.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(exp.f64 (log.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
Outputs
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(-.f64 (+.f64 1 (/.f64 (atan2.f64 im re) (log.f64 base))) 1)
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 1 (/.f64 (atan2.f64 im re) (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1)
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 -1 (/.f64 1 (/.f64 (neg.f64 (log.f64 base)) (atan2.f64 im re))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 1 (log.f64 base)) (atan2.f64 im re))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 1 (log.f64 base)) (pow.f64 (/.f64 1 (atan2.f64 im re)) -1))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) 2) -1) (pow.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) -1))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) 2)) (/.f64 1 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re)))))
(/.f64 (/.f64 1 (pow.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) 2)) (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))))
(/.f64 (pow.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) -2) (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))))
(*.f64 (pow.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) -1) (pow.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) -1))
(pow.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) -2)
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) 1) (/.f64 (cbrt.f64 (atan2.f64 im re)) (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (sqrt.f64 (atan2.f64 im re)) 1) (/.f64 (sqrt.f64 (atan2.f64 im re)) (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (log.f64 base)) 2)) (/.f64 (atan2.f64 im re) (cbrt.f64 (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) (pow.f64 (cbrt.f64 (log.f64 base)) 2)) (/.f64 (cbrt.f64 (atan2.f64 im re)) (cbrt.f64 (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (sqrt.f64 (atan2.f64 im re)) (pow.f64 (cbrt.f64 (log.f64 base)) 2)) (/.f64 (sqrt.f64 (atan2.f64 im re)) (cbrt.f64 (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 1 (sqrt.f64 (log.f64 base))) (/.f64 (atan2.f64 im re) (sqrt.f64 (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) (sqrt.f64 (log.f64 base))) (/.f64 (cbrt.f64 (atan2.f64 im re)) (sqrt.f64 (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (sqrt.f64 (atan2.f64 im re)) (sqrt.f64 (log.f64 base))) (/.f64 (sqrt.f64 (atan2.f64 im re)) (sqrt.f64 (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 1 (neg.f64 (log.f64 base))) (neg.f64 (atan2.f64 im re)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (*.f64 (/.f64 1 (log.f64 base)) 1) (atan2.f64 im re))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (*.f64 (/.f64 1 (log.f64 base)) (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2)) (cbrt.f64 (atan2.f64 im re)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (*.f64 (/.f64 1 (log.f64 base)) (sqrt.f64 (atan2.f64 im re))) (sqrt.f64 (atan2.f64 im re)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -1)
(/.f64 (atan2.f64 im re) (log.f64 base))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1)
(/.f64 (atan2.f64 im re) (log.f64 base))
(pow.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3) 1/3)
(/.f64 (atan2.f64 im re) (log.f64 base))
(pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 3)
(/.f64 (atan2.f64 im re) (log.f64 base))
(pow.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2)
(/.f64 (atan2.f64 im re) (log.f64 base))
(sqrt.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -2))
(/.f64 (atan2.f64 im re) (log.f64 base))
(log.f64 (exp.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(cbrt.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3))
(/.f64 (atan2.f64 im re) (log.f64 base))
(cbrt.f64 (/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(expm1.f64 (log1p.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(log1p.f64 (expm1.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(exp.f64 (log.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))

localize18.0ms (0.3%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.3b
(/.f64 (atan2.f64 im re) (log.f64 base))
0.7b
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3)
5.5b
(cbrt.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3))
Compiler

Compiled 35 to 12 computations (65.7% saved)

series9.0ms (0.2%)

Counts
2 → 72
Calls

18 calls:

TimeVariablePointExpression
1.0ms
base
@-inf
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3)
1.0ms
re
@-inf
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3)
1.0ms
im
@-inf
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3)
1.0ms
im
@inf
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3)
1.0ms
re
@inf
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3)

rewrite52.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
895×pow1_binary64
834×add-log-exp_binary64
834×log1p-expm1-u_binary64
834×expm1-log1p-u_binary64
812×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01021
121021
2233121
Stop Event
node limit
Counts
2 → 78
Calls
Call 1
Inputs
(cbrt.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (/.f64 (atan2.f64 im re) (log.f64 base))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (atan2.f64 im re) (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (pow.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) (*.f64 (cbrt.f64 (atan2.f64 im re)) (/.f64 1 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (atan2.f64 im re)) (*.f64 (sqrt.f64 (atan2.f64 im re)) (/.f64 1 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (atan2.f64 im re)) (/.f64 1 (neg.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (log.f64 base)) (atan2.f64 im re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2) 1/3) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/3) (/.f64 (atan2.f64 im re) (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3/2) 1/3) (pow.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3/2) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) 1) (/.f64 (cbrt.f64 (atan2.f64 im re)) (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (atan2.f64 im re)) 1) (/.f64 (sqrt.f64 (atan2.f64 im re)) (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cbrt.f64 (pow.f64 (log.f64 base) 2))) (/.f64 (atan2.f64 im re) (cbrt.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) (cbrt.f64 (pow.f64 (log.f64 base) 2))) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (atan2.f64 im re)) (cbrt.f64 (pow.f64 (log.f64 base) 2))) (/.f64 (sqrt.f64 (atan2.f64 im re)) (cbrt.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (log.f64 base))) (/.f64 (atan2.f64 im re) (sqrt.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) (sqrt.f64 (log.f64 base))) (/.f64 (cbrt.f64 (atan2.f64 im re)) (sqrt.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (atan2.f64 im re) (log.f64 base))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (log.f64 base) (atan2.f64 im re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) (/.f64 (log.f64 base) (cbrt.f64 (atan2.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (atan2.f64 im re)) (/.f64 (log.f64 base) (sqrt.f64 (atan2.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (atan2.f64 im re)) (neg.f64 (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1 (neg.f64 (/.f64 (log.f64 base) (atan2.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (neg.f64 (atan2.f64 im re))) (neg.f64 (neg.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (atan2.f64 im re) (sqrt.f64 (log.f64 base))) (sqrt.f64 (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (atan2.f64 im re) 1) (log.f64 base))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (atan2.f64 im re) (cbrt.f64 (pow.f64 (log.f64 base) 2))) (cbrt.f64 (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (atan2.f64 im re) (neg.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (atan2.f64 im re) (*.f64 (/.f64 1 (log.f64 base)) (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2) (/.f64 (atan2.f64 im re) (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) (*.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (*.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (/.f64 1 (log.f64 base)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (atan2.f64 im re) 3) (/.f64 1 (pow.f64 (log.f64 base) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3/2) (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) 3) (/.f64 (atan2.f64 im re) (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 3) (pow.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2) (atan2.f64 im re)) (/.f64 1 (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2) 1) (/.f64 (atan2.f64 im re) (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2) (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2)) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2) (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (pow.f64 (log.f64 base) 3) (pow.f64 (atan2.f64 im re) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2) (/.f64 (log.f64 base) (atan2.f64 im re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (neg.f64 (atan2.f64 im re)) 3) (pow.f64 (neg.f64 (log.f64 base)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (pow.f64 (atan2.f64 im re) 3)) (neg.f64 (pow.f64 (log.f64 base) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (atan2.f64 im re) (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2)) (log.f64 base))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (atan2.f64 im re)) (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2)) (neg.f64 (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2) (atan2.f64 im re)) (log.f64 base))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2) 1) (/.f64 (log.f64 base) (atan2.f64 im re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2) (neg.f64 (atan2.f64 im re))) (neg.f64 (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 6))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 3 (log.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))))))

simplify72.0ms (1.2%)

Algorithm
egg-herbie
Rules
901×fma-neg_binary64
329×fma-def_binary64
313×associate-/r/_binary64
268×associate-/l/_binary64
262×*-commutative_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01851741
14291716
218041716
377431716
Stop Event
node limit
Counts
150 → 91
Calls
Call 1
Inputs
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3))
(/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3))
(/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3))
(/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3))
(/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3))
(/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3))
(/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3))
(/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3))
(/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3))
(/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3))
(/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3))
(/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3))
(/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3))
(/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3))
(/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3))
(/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3))
(/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3))
(/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3))
(/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3))
(/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3))
(/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3))
(/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3))
(/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3))
(/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3))
(/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3))
(/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3))
(/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3))
(/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3))
(*.f64 -1 (/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 (/.f64 1 base)) 3)))
(*.f64 -1 (/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 (/.f64 1 base)) 3)))
(*.f64 -1 (/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 (/.f64 1 base)) 3)))
(*.f64 -1 (/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 (/.f64 1 base)) 3)))
(/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) 3))
(/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) 3))
(/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) 3))
(/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) 3))
(-.f64 (+.f64 1 (/.f64 (atan2.f64 im re) (log.f64 base))) 1)
(*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base)))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1)
(*.f64 1 (/.f64 (atan2.f64 im re) (log.f64 base)))
(*.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2))
(*.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (pow.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2) 1/3))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(*.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) (*.f64 (cbrt.f64 (atan2.f64 im re)) (/.f64 1 (log.f64 base))))
(*.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(*.f64 (sqrt.f64 (atan2.f64 im re)) (*.f64 (sqrt.f64 (atan2.f64 im re)) (/.f64 1 (log.f64 base))))
(*.f64 (neg.f64 (atan2.f64 im re)) (/.f64 1 (neg.f64 (log.f64 base))))
(*.f64 (/.f64 1 (log.f64 base)) (atan2.f64 im re))
(*.f64 (pow.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2) 1/3) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(*.f64 (pow.f64 1 1/3) (/.f64 (atan2.f64 im re) (log.f64 base)))
(*.f64 (pow.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3/2) 1/3) (pow.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3/2) 1/3))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) 1) (/.f64 (cbrt.f64 (atan2.f64 im re)) (log.f64 base)))
(*.f64 (/.f64 (sqrt.f64 (atan2.f64 im re)) 1) (/.f64 (sqrt.f64 (atan2.f64 im re)) (log.f64 base)))
(*.f64 (/.f64 1 (cbrt.f64 (pow.f64 (log.f64 base) 2))) (/.f64 (atan2.f64 im re) (cbrt.f64 (log.f64 base))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) (cbrt.f64 (pow.f64 (log.f64 base) 2))) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(*.f64 (/.f64 (sqrt.f64 (atan2.f64 im re)) (cbrt.f64 (pow.f64 (log.f64 base) 2))) (/.f64 (sqrt.f64 (atan2.f64 im re)) (cbrt.f64 (log.f64 base))))
(*.f64 (/.f64 1 (sqrt.f64 (log.f64 base))) (/.f64 (atan2.f64 im re) (sqrt.f64 (log.f64 base))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) (sqrt.f64 (log.f64 base))) (/.f64 (cbrt.f64 (atan2.f64 im re)) (sqrt.f64 (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 1 (/.f64 (log.f64 base) (atan2.f64 im re)))
(/.f64 1 (/.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) 1))
(/.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) (/.f64 (log.f64 base) (cbrt.f64 (atan2.f64 im re))))
(/.f64 (sqrt.f64 (atan2.f64 im re)) (/.f64 (log.f64 base) (sqrt.f64 (atan2.f64 im re))))
(/.f64 (neg.f64 (atan2.f64 im re)) (neg.f64 (log.f64 base)))
(/.f64 -1 (neg.f64 (/.f64 (log.f64 base) (atan2.f64 im re))))
(/.f64 (neg.f64 (neg.f64 (atan2.f64 im re))) (neg.f64 (neg.f64 (log.f64 base))))
(/.f64 (/.f64 (atan2.f64 im re) (sqrt.f64 (log.f64 base))) (sqrt.f64 (log.f64 base)))
(/.f64 (/.f64 (atan2.f64 im re) 1) (log.f64 base))
(/.f64 (/.f64 (atan2.f64 im re) (cbrt.f64 (pow.f64 (log.f64 base) 2))) (cbrt.f64 (log.f64 base)))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1)
(pow.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3) 1/3)
(pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 3)
(pow.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2)
(pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -1)
(neg.f64 (/.f64 (atan2.f64 im re) (neg.f64 (log.f64 base))))
(sqrt.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2))
(log.f64 (exp.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(expm1.f64 (log1p.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(log1p.f64 (expm1.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(exp.f64 (log.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(-.f64 (+.f64 1 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3)) 1)
(*.f64 (atan2.f64 im re) (*.f64 (/.f64 1 (log.f64 base)) (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2)))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2))
(*.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3) 1)
(*.f64 1 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3))
(*.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2) (/.f64 (atan2.f64 im re) (log.f64 base)))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) (*.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2)))
(*.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (*.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2)))
(*.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (/.f64 1 (log.f64 base)) 3))
(*.f64 (pow.f64 (atan2.f64 im re) 3) (/.f64 1 (pow.f64 (log.f64 base) 3)))
(*.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3/2) (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3/2))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) 3) (/.f64 (atan2.f64 im re) (log.f64 base)))
(*.f64 (pow.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 3) (pow.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 3))
(*.f64 (*.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2) (atan2.f64 im re)) (/.f64 1 (log.f64 base)))
(*.f64 (*.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2) 1) (/.f64 (atan2.f64 im re) (log.f64 base)))
(*.f64 (*.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2) (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2)) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(*.f64 (*.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2) (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 1 (/.f64 (pow.f64 (log.f64 base) 3) (pow.f64 (atan2.f64 im re) 3)))
(/.f64 1 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) 3))
(/.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2) (/.f64 (log.f64 base) (atan2.f64 im re)))
(/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3))
(/.f64 (pow.f64 (neg.f64 (atan2.f64 im re)) 3) (pow.f64 (neg.f64 (log.f64 base)) 3))
(/.f64 (neg.f64 (pow.f64 (atan2.f64 im re) 3)) (neg.f64 (pow.f64 (log.f64 base) 3)))
(/.f64 (*.f64 (atan2.f64 im re) (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2)) (log.f64 base))
(/.f64 (*.f64 (neg.f64 (atan2.f64 im re)) (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2)) (neg.f64 (log.f64 base)))
(/.f64 (*.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2) (atan2.f64 im re)) (log.f64 base))
(/.f64 (*.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2) 1) (/.f64 (log.f64 base) (atan2.f64 im re)))
(/.f64 (*.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2) (neg.f64 (atan2.f64 im re))) (neg.f64 (log.f64 base)))
(sqrt.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 6))
(log.f64 (exp.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3)))
(cbrt.f64 (pow.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3) 3))
(expm1.f64 (log1p.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3)))
(log1p.f64 (expm1.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3)))
(exp.f64 (*.f64 3 (log.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))
Outputs
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))))
(/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3)
(/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3)
(/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3)
(/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3)
(/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3)
(/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3)
(/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3)
(/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3)
(/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3)
(/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3)
(/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3)
(/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3)
(/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3)
(/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3)
(/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3)
(/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3)
(/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3)
(/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3)
(/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3)
(/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3)
(/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3)
(/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3)
(/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3)
(/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3)
(/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3)
(/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3)
(/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3)
(/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3)
(*.f64 -1 (/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 (/.f64 1 base)) 3)))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3)
(*.f64 -1 (/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 (/.f64 1 base)) 3)))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3)
(*.f64 -1 (/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 (/.f64 1 base)) 3)))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3)
(*.f64 -1 (/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 (/.f64 1 base)) 3)))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3)
(/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) 3))
(/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))) 3))
(/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))) 3))
(/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) 3))
(/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))) 3))
(/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))) 3))
(/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) 3))
(/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))) 3))
(/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))) 3))
(/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) 3))
(/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))) 3))
(/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))) 3))
(-.f64 (+.f64 1 (/.f64 (atan2.f64 im re) (log.f64 base))) 1)
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1)
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 1 (/.f64 (atan2.f64 im re) (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (pow.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2) 1/3))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) (*.f64 (cbrt.f64 (atan2.f64 im re)) (/.f64 1 (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (sqrt.f64 (atan2.f64 im re)) (*.f64 (sqrt.f64 (atan2.f64 im re)) (/.f64 1 (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (neg.f64 (atan2.f64 im re)) (/.f64 1 (neg.f64 (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 1 (log.f64 base)) (atan2.f64 im re))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (pow.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2) 1/3) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (pow.f64 1 1/3) (/.f64 (atan2.f64 im re) (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (pow.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3/2) 1/3) (pow.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3/2) 1/3))
(*.f64 (cbrt.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3/2)) (cbrt.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3/2)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) 1) (/.f64 (cbrt.f64 (atan2.f64 im re)) (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (sqrt.f64 (atan2.f64 im re)) 1) (/.f64 (sqrt.f64 (atan2.f64 im re)) (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 1 (cbrt.f64 (pow.f64 (log.f64 base) 2))) (/.f64 (atan2.f64 im re) (cbrt.f64 (log.f64 base))))
(/.f64 (atan2.f64 im re) (*.f64 (cbrt.f64 (pow.f64 (log.f64 base) 2)) (cbrt.f64 (log.f64 base))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) (cbrt.f64 (pow.f64 (log.f64 base) 2))) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 (*.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) (cbrt.f64 (pow.f64 (log.f64 base) 2)))
(*.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (/.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) (cbrt.f64 (pow.f64 (log.f64 base) 2))))
(*.f64 (/.f64 (sqrt.f64 (atan2.f64 im re)) (cbrt.f64 (pow.f64 (log.f64 base) 2))) (/.f64 (sqrt.f64 (atan2.f64 im re)) (cbrt.f64 (log.f64 base))))
(*.f64 (/.f64 1 (cbrt.f64 (pow.f64 (log.f64 base) 2))) (/.f64 (atan2.f64 im re) (cbrt.f64 (log.f64 base))))
(/.f64 (atan2.f64 im re) (*.f64 (cbrt.f64 (pow.f64 (log.f64 base) 2)) (cbrt.f64 (log.f64 base))))
(*.f64 (/.f64 1 (sqrt.f64 (log.f64 base))) (/.f64 (atan2.f64 im re) (sqrt.f64 (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) (sqrt.f64 (log.f64 base))) (/.f64 (cbrt.f64 (atan2.f64 im re)) (sqrt.f64 (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 1 (/.f64 (log.f64 base) (atan2.f64 im re)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 1 (/.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) 1))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) (/.f64 (log.f64 base) (cbrt.f64 (atan2.f64 im re))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (sqrt.f64 (atan2.f64 im re)) (/.f64 (log.f64 base) (sqrt.f64 (atan2.f64 im re))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (neg.f64 (atan2.f64 im re)) (neg.f64 (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 -1 (neg.f64 (/.f64 (log.f64 base) (atan2.f64 im re))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (neg.f64 (neg.f64 (atan2.f64 im re))) (neg.f64 (neg.f64 (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (/.f64 (atan2.f64 im re) (sqrt.f64 (log.f64 base))) (sqrt.f64 (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (/.f64 (atan2.f64 im re) 1) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (/.f64 (atan2.f64 im re) (cbrt.f64 (pow.f64 (log.f64 base) 2))) (cbrt.f64 (log.f64 base)))
(*.f64 (/.f64 1 (cbrt.f64 (pow.f64 (log.f64 base) 2))) (/.f64 (atan2.f64 im re) (cbrt.f64 (log.f64 base))))
(/.f64 (atan2.f64 im re) (*.f64 (cbrt.f64 (pow.f64 (log.f64 base) 2)) (cbrt.f64 (log.f64 base))))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1)
(/.f64 (atan2.f64 im re) (log.f64 base))
(pow.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3) 1/3)
(/.f64 (atan2.f64 im re) (log.f64 base))
(pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 3)
(/.f64 (atan2.f64 im re) (log.f64 base))
(pow.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2)
(/.f64 (atan2.f64 im re) (log.f64 base))
(pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -1)
(/.f64 (atan2.f64 im re) (log.f64 base))
(neg.f64 (/.f64 (atan2.f64 im re) (neg.f64 (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(sqrt.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2))
(/.f64 (atan2.f64 im re) (log.f64 base))
(log.f64 (exp.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(expm1.f64 (log1p.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(log1p.f64 (expm1.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(exp.f64 (log.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(-.f64 (+.f64 1 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3)) 1)
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3)
(*.f64 (atan2.f64 im re) (*.f64 (/.f64 1 (log.f64 base)) (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2)))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3)
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3)
(*.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3) 1)
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3)
(*.f64 1 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3)
(*.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2) (/.f64 (atan2.f64 im re) (log.f64 base)))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3)
(*.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) (*.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2)))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3)
(*.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (*.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2)))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3)
(*.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (/.f64 1 (log.f64 base)) 3))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3)
(*.f64 (pow.f64 (atan2.f64 im re) 3) (/.f64 1 (pow.f64 (log.f64 base) 3)))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3)
(*.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3/2) (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3/2))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3)
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) 3) (/.f64 (atan2.f64 im re) (log.f64 base)))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3)
(*.f64 (pow.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 3) (pow.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 3))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3)
(*.f64 (*.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2) (atan2.f64 im re)) (/.f64 1 (log.f64 base)))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3)
(*.f64 (*.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2) 1) (/.f64 (atan2.f64 im re) (log.f64 base)))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3)
(*.f64 (*.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2) (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2)) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3)
(*.f64 (*.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2) (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3)
(/.f64 1 (/.f64 (pow.f64 (log.f64 base) 3) (pow.f64 (atan2.f64 im re) 3)))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3)
(/.f64 1 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) 3))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3)
(/.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2) (/.f64 (log.f64 base) (atan2.f64 im re)))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3)
(/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3)
(/.f64 (pow.f64 (neg.f64 (atan2.f64 im re)) 3) (pow.f64 (neg.f64 (log.f64 base)) 3))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3)
(/.f64 (neg.f64 (pow.f64 (atan2.f64 im re) 3)) (neg.f64 (pow.f64 (log.f64 base) 3)))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3)
(/.f64 (*.f64 (atan2.f64 im re) (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2)) (log.f64 base))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3)
(/.f64 (*.f64 (neg.f64 (atan2.f64 im re)) (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2)) (neg.f64 (log.f64 base)))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3)
(/.f64 (*.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2) (atan2.f64 im re)) (log.f64 base))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3)
(/.f64 (*.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2) 1) (/.f64 (log.f64 base) (atan2.f64 im re)))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3)
(/.f64 (*.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2) (neg.f64 (atan2.f64 im re))) (neg.f64 (log.f64 base)))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3)
(sqrt.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 6))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3)
(log.f64 (exp.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3)))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3)
(cbrt.f64 (pow.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3) 3))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3)
(expm1.f64 (log1p.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3)))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3)
(log1p.f64 (expm1.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3)))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3)
(exp.f64 (*.f64 3 (log.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3)

localize13.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.3b
(/.f64 (atan2.f64 im re) (log.f64 base))
0.7b
(pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 3)
4.2b
(cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
Compiler

Compiled 34 to 10 computations (70.6% saved)

series46.0ms (0.8%)

Counts
2 → 72
Calls

18 calls:

TimeVariablePointExpression
18.0ms
im
@inf
(pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 3)
8.0ms
base
@-inf
(cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
2.0ms
base
@-inf
(pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 3)
2.0ms
im
@0
(cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
2.0ms
base
@inf
(cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))

rewrite49.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
877×pow1_binary64
816×add-log-exp_binary64
816×log1p-expm1-u_binary64
816×expm1-log1p-u_binary64
796×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01020
120820
2225720
Stop Event
node limit
Counts
2 → 72
Calls
Call 1
Inputs
(cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
(pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 3)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) (pow.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) 2) (cbrt.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (atan2.f64 im re)) (cbrt.f64 (/.f64 1 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (atan2.f64 im re)) (pow.f64 (/.f64 1 (log.f64 base)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (atan2.f64 im re)) (/.f64 1 (cbrt.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/6) (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) 1/3) (cbrt.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/3) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 1/3) (pow.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (cbrt.f64 (log.f64 base)) (cbrt.f64 (atan2.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (atan2.f64 im re)) (cbrt.f64 (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (neg.f64 (atan2.f64 im re))) (cbrt.f64 (neg.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (cbrt.f64 (atan2.f64 im re))) (neg.f64 (cbrt.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/6) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (/.f64 (atan2.f64 im re) (log.f64 base))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (atan2.f64 im re) (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) 2) (*.f64 (cbrt.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) (*.f64 (cbrt.f64 (atan2.f64 im re)) (/.f64 1 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/6) (*.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/6) (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (atan2.f64 im re)) (*.f64 (sqrt.f64 (atan2.f64 im re)) (/.f64 1 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (atan2.f64 im re)) (/.f64 1 (neg.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (log.f64 base)) (atan2.f64 im re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) 2) 3) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/6) 3) (pow.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/6) 3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) 1) (/.f64 (cbrt.f64 (atan2.f64 im re)) (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (atan2.f64 im re)) 1) (/.f64 (sqrt.f64 (atan2.f64 im re)) (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 (log.f64 base)) 2)) (/.f64 (atan2.f64 im re) (cbrt.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (atan2.f64 im re)) (pow.f64 (cbrt.f64 (log.f64 base)) 2)) (/.f64 (sqrt.f64 (atan2.f64 im re)) (cbrt.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (log.f64 base))) (/.f64 (atan2.f64 im re) (sqrt.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) (sqrt.f64 (log.f64 base))) (/.f64 (cbrt.f64 (atan2.f64 im re)) (sqrt.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) 1) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) 2)) (cbrt.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/6)) (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (atan2.f64 im re) (log.f64 base))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (log.f64 base) (atan2.f64 im re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) (/.f64 (log.f64 base) (cbrt.f64 (atan2.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (atan2.f64 im re)) (/.f64 (log.f64 base) (sqrt.f64 (atan2.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (atan2.f64 im re)) (neg.f64 (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1 (neg.f64 (/.f64 (log.f64 base) (atan2.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (neg.f64 (atan2.f64 im re))) (neg.f64 (neg.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (atan2.f64 im re) (sqrt.f64 (log.f64 base))) (sqrt.f64 (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (atan2.f64 im re) 1) (log.f64 base))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (atan2.f64 im re) (pow.f64 (cbrt.f64 (log.f64 base)) 2)) (cbrt.f64 (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cbrt.f64 (atan2.f64 im re)) (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2)) (cbrt.f64 (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) (cbrt.f64 (atan2.f64 im re))) (cbrt.f64 (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (atan2.f64 im re) (neg.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))))

simplify68.0ms (1.1%)

Algorithm
egg-herbie
Rules
731×fma-neg_binary64
565×unswap-sqr_binary64
515×associate-/l*_binary64
402×associate-/r*_binary64
248×associate-*l/_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01791626
13881598
212481598
375321598
Stop Event
node limit
Counts
144 → 88
Calls
Call 1
Inputs
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/3)
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/3)
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/3)
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/3)
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/3)
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/3)
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/3)
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/3)
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/3)
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/3)
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/3)
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/3)
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/3)
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/3)
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/3)
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/3)
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/3)
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/3)
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/3)
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/3)
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/3)
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/3)
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/3)
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/3)
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/3)
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/3)
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/3)
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/3)
(*.f64 (pow.f64 (/.f64 (*.f64 1 (atan2.f64 im re)) (log.f64 (/.f64 1 base))) 1/3) (cbrt.f64 -1))
(*.f64 (pow.f64 (/.f64 (*.f64 1 (atan2.f64 im re)) (log.f64 (/.f64 1 base))) 1/3) (cbrt.f64 -1))
(*.f64 (pow.f64 (/.f64 (*.f64 1 (atan2.f64 im re)) (log.f64 (/.f64 1 base))) 1/3) (cbrt.f64 -1))
(*.f64 (pow.f64 (/.f64 (*.f64 1 (atan2.f64 im re)) (log.f64 (/.f64 1 base))) 1/3) (cbrt.f64 -1))
(pow.f64 (/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base))))) 1/3)
(pow.f64 (/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base))))) 1/3)
(pow.f64 (/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base))))) 1/3)
(pow.f64 (/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base))))) 1/3)
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(*.f64 -1 (*.f64 (pow.f64 1 1/3) (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base)))))
(*.f64 -1 (*.f64 (pow.f64 1 1/3) (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base)))))
(*.f64 -1 (*.f64 (pow.f64 1 1/3) (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base)))))
(*.f64 -1 (*.f64 (pow.f64 1 1/3) (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base)))))
(*.f64 (pow.f64 1 1/3) (/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base))))))
(*.f64 (pow.f64 1 1/3) (/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base))))))
(*.f64 (pow.f64 1 1/3) (/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base))))))
(*.f64 (pow.f64 1 1/3) (/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base))))))
(-.f64 (+.f64 1 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) 1)
(*.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 1)
(*.f64 1 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(*.f64 (cbrt.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) 2))
(*.f64 (cbrt.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) (pow.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) 1/3))
(*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) 2) (cbrt.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))
(*.f64 (cbrt.f64 (atan2.f64 im re)) (cbrt.f64 (/.f64 1 (log.f64 base))))
(*.f64 (cbrt.f64 (atan2.f64 im re)) (pow.f64 (/.f64 1 (log.f64 base)) 1/3))
(*.f64 (cbrt.f64 (atan2.f64 im re)) (/.f64 1 (cbrt.f64 (log.f64 base))))
(*.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/6) (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/6))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) 1/3) (cbrt.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))
(*.f64 (pow.f64 1 1/3) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(*.f64 (pow.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 1/3) (pow.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 1/3))
(/.f64 1 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))))
(/.f64 1 (/.f64 (cbrt.f64 (log.f64 base)) (cbrt.f64 (atan2.f64 im re))))
(/.f64 (cbrt.f64 (atan2.f64 im re)) (cbrt.f64 (log.f64 base)))
(/.f64 (cbrt.f64 (neg.f64 (atan2.f64 im re))) (cbrt.f64 (neg.f64 (log.f64 base))))
(/.f64 (neg.f64 (cbrt.f64 (atan2.f64 im re))) (neg.f64 (cbrt.f64 (log.f64 base))))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/3)
(pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 1)
(pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) 3)
(pow.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/6) 2)
(sqrt.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2))
(log.f64 (exp.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))
(expm1.f64 (log1p.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))
(log1p.f64 (expm1.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))
(exp.f64 (log.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))
(-.f64 (+.f64 1 (/.f64 (atan2.f64 im re) (log.f64 base))) 1)
(*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base)))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1)
(*.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2))
(*.f64 1 (/.f64 (atan2.f64 im re) (log.f64 base)))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) 2) (*.f64 (cbrt.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2)))
(*.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) (*.f64 (cbrt.f64 (atan2.f64 im re)) (/.f64 1 (log.f64 base))))
(*.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/6) (*.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/6) (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2)))
(*.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(*.f64 (sqrt.f64 (atan2.f64 im re)) (*.f64 (sqrt.f64 (atan2.f64 im re)) (/.f64 1 (log.f64 base))))
(*.f64 (neg.f64 (atan2.f64 im re)) (/.f64 1 (neg.f64 (log.f64 base))))
(*.f64 (/.f64 1 (log.f64 base)) (atan2.f64 im re))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) 2) 3) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(*.f64 (pow.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/6) 3) (pow.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/6) 3))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) 1) (/.f64 (cbrt.f64 (atan2.f64 im re)) (log.f64 base)))
(*.f64 (/.f64 (sqrt.f64 (atan2.f64 im re)) 1) (/.f64 (sqrt.f64 (atan2.f64 im re)) (log.f64 base)))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (log.f64 base)) 2)) (/.f64 (atan2.f64 im re) (cbrt.f64 (log.f64 base))))
(*.f64 (/.f64 (sqrt.f64 (atan2.f64 im re)) (pow.f64 (cbrt.f64 (log.f64 base)) 2)) (/.f64 (sqrt.f64 (atan2.f64 im re)) (cbrt.f64 (log.f64 base))))
(*.f64 (/.f64 1 (sqrt.f64 (log.f64 base))) (/.f64 (atan2.f64 im re) (sqrt.f64 (log.f64 base))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) (sqrt.f64 (log.f64 base))) (/.f64 (cbrt.f64 (atan2.f64 im re)) (sqrt.f64 (log.f64 base))))
(*.f64 (*.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) 1) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(*.f64 (*.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) 2)) (cbrt.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))
(*.f64 (*.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/6)) (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/6))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 1 (/.f64 (log.f64 base) (atan2.f64 im re)))
(/.f64 1 (/.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) 1))
(/.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) (/.f64 (log.f64 base) (cbrt.f64 (atan2.f64 im re))))
(/.f64 (sqrt.f64 (atan2.f64 im re)) (/.f64 (log.f64 base) (sqrt.f64 (atan2.f64 im re))))
(/.f64 (neg.f64 (atan2.f64 im re)) (neg.f64 (log.f64 base)))
(/.f64 -1 (neg.f64 (/.f64 (log.f64 base) (atan2.f64 im re))))
(/.f64 (neg.f64 (neg.f64 (atan2.f64 im re))) (neg.f64 (neg.f64 (log.f64 base))))
(/.f64 (/.f64 (atan2.f64 im re) (sqrt.f64 (log.f64 base))) (sqrt.f64 (log.f64 base)))
(/.f64 (/.f64 (atan2.f64 im re) 1) (log.f64 base))
(/.f64 (/.f64 (atan2.f64 im re) (pow.f64 (cbrt.f64 (log.f64 base)) 2)) (cbrt.f64 (log.f64 base)))
(/.f64 (*.f64 (cbrt.f64 (atan2.f64 im re)) (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2)) (cbrt.f64 (log.f64 base)))
(/.f64 (*.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) (cbrt.f64 (atan2.f64 im re))) (cbrt.f64 (log.f64 base)))
(neg.f64 (/.f64 (atan2.f64 im re) (neg.f64 (log.f64 base))))
(sqrt.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2))
(log.f64 (exp.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(cbrt.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3))
(cbrt.f64 (/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3)))
(expm1.f64 (log1p.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(log1p.f64 (expm1.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(exp.f64 (log.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
Outputs
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/3)
(cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/3)
(cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/3)
(cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/3)
(cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/3)
(cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/3)
(cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/3)
(cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/3)
(cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/3)
(cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/3)
(cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/3)
(cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/3)
(cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/3)
(cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/3)
(cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/3)
(cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/3)
(cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/3)
(cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/3)
(cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/3)
(cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/3)
(cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/3)
(cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/3)
(cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/3)
(cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/3)
(cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/3)
(cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/3)
(cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/3)
(cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/3)
(cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
(*.f64 (pow.f64 (/.f64 (*.f64 1 (atan2.f64 im re)) (log.f64 (/.f64 1 base))) 1/3) (cbrt.f64 -1))
(*.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (neg.f64 (log.f64 base)))) (cbrt.f64 -1))
(*.f64 (cbrt.f64 (/.f64 (neg.f64 (atan2.f64 im re)) (log.f64 base))) (cbrt.f64 -1))
(*.f64 (pow.f64 (/.f64 (*.f64 1 (atan2.f64 im re)) (log.f64 (/.f64 1 base))) 1/3) (cbrt.f64 -1))
(*.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (neg.f64 (log.f64 base)))) (cbrt.f64 -1))
(*.f64 (cbrt.f64 (/.f64 (neg.f64 (atan2.f64 im re)) (log.f64 base))) (cbrt.f64 -1))
(*.f64 (pow.f64 (/.f64 (*.f64 1 (atan2.f64 im re)) (log.f64 (/.f64 1 base))) 1/3) (cbrt.f64 -1))
(*.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (neg.f64 (log.f64 base)))) (cbrt.f64 -1))
(*.f64 (cbrt.f64 (/.f64 (neg.f64 (atan2.f64 im re)) (log.f64 base))) (cbrt.f64 -1))
(*.f64 (pow.f64 (/.f64 (*.f64 1 (atan2.f64 im re)) (log.f64 (/.f64 1 base))) 1/3) (cbrt.f64 -1))
(*.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (neg.f64 (log.f64 base)))) (cbrt.f64 -1))
(*.f64 (cbrt.f64 (/.f64 (neg.f64 (atan2.f64 im re)) (log.f64 base))) (cbrt.f64 -1))
(pow.f64 (/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base))))) 1/3)
(cbrt.f64 (/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base))))))
(cbrt.f64 (/.f64 (atan2.f64 im re) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base)))))
(pow.f64 (/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base))))) 1/3)
(cbrt.f64 (/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base))))))
(cbrt.f64 (/.f64 (atan2.f64 im re) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base)))))
(pow.f64 (/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base))))) 1/3)
(cbrt.f64 (/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base))))))
(cbrt.f64 (/.f64 (atan2.f64 im re) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base)))))
(pow.f64 (/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base))))) 1/3)
(cbrt.f64 (/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base))))))
(cbrt.f64 (/.f64 (atan2.f64 im re) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base)))))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 -1 (*.f64 (pow.f64 1 1/3) (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base)))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 -1 (*.f64 (pow.f64 1 1/3) (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base)))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 -1 (*.f64 (pow.f64 1 1/3) (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base)))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 -1 (*.f64 (pow.f64 1 1/3) (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base)))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (pow.f64 1 1/3) (/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base))))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))))
(*.f64 (pow.f64 1 1/3) (/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base))))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))))
(*.f64 (pow.f64 1 1/3) (/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base))))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))))
(*.f64 (pow.f64 1 1/3) (/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base))))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))))
(-.f64 (+.f64 1 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) 1)
(cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
(*.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 1)
(cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
(*.f64 1 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
(*.f64 (cbrt.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) 2))
(cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
(*.f64 (cbrt.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) (pow.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) 1/3))
(cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
(*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) 2) (cbrt.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))
(cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
(*.f64 (cbrt.f64 (atan2.f64 im re)) (cbrt.f64 (/.f64 1 (log.f64 base))))
(*.f64 (cbrt.f64 (atan2.f64 im re)) (pow.f64 (/.f64 1 (log.f64 base)) 1/3))
(*.f64 (cbrt.f64 (atan2.f64 im re)) (cbrt.f64 (/.f64 1 (log.f64 base))))
(*.f64 (cbrt.f64 (atan2.f64 im re)) (/.f64 1 (cbrt.f64 (log.f64 base))))
(/.f64 (cbrt.f64 (atan2.f64 im re)) (cbrt.f64 (log.f64 base)))
(*.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/6) (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/6))
(cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) 1/3) (cbrt.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))
(cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
(*.f64 (pow.f64 1 1/3) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
(*.f64 (pow.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 1/3) (pow.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 1/3))
(*.f64 (cbrt.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) (cbrt.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))
(/.f64 1 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))))
(/.f64 1 (/.f64 (cbrt.f64 (log.f64 base)) (cbrt.f64 (atan2.f64 im re))))
(*.f64 (cbrt.f64 (atan2.f64 im re)) (/.f64 1 (cbrt.f64 (log.f64 base))))
(/.f64 (cbrt.f64 (atan2.f64 im re)) (cbrt.f64 (log.f64 base)))
(/.f64 (cbrt.f64 (atan2.f64 im re)) (cbrt.f64 (log.f64 base)))
(*.f64 (cbrt.f64 (atan2.f64 im re)) (/.f64 1 (cbrt.f64 (log.f64 base))))
(/.f64 (cbrt.f64 (neg.f64 (atan2.f64 im re))) (cbrt.f64 (neg.f64 (log.f64 base))))
(/.f64 (neg.f64 (cbrt.f64 (atan2.f64 im re))) (neg.f64 (cbrt.f64 (log.f64 base))))
(*.f64 (cbrt.f64 (atan2.f64 im re)) (/.f64 1 (cbrt.f64 (log.f64 base))))
(/.f64 (cbrt.f64 (atan2.f64 im re)) (cbrt.f64 (log.f64 base)))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/3)
(cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
(pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 1)
(cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
(pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) 3)
(cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
(pow.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/6) 2)
(cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
(sqrt.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2))
(cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
(log.f64 (exp.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))
(cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
(expm1.f64 (log1p.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))
(cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
(log1p.f64 (expm1.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))
(cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
(exp.f64 (log.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))
(cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
(-.f64 (+.f64 1 (/.f64 (atan2.f64 im re) (log.f64 base))) 1)
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1)
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 1 (/.f64 (atan2.f64 im re) (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) 2) (*.f64 (cbrt.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) (*.f64 (cbrt.f64 (atan2.f64 im re)) (/.f64 1 (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/6) (*.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/6) (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (sqrt.f64 (atan2.f64 im re)) (*.f64 (sqrt.f64 (atan2.f64 im re)) (/.f64 1 (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (neg.f64 (atan2.f64 im re)) (/.f64 1 (neg.f64 (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 1 (log.f64 base)) (atan2.f64 im re))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) 2) 3) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (pow.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/6) 3) (pow.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/6) 3))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) 1) (/.f64 (cbrt.f64 (atan2.f64 im re)) (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (sqrt.f64 (atan2.f64 im re)) 1) (/.f64 (sqrt.f64 (atan2.f64 im re)) (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (log.f64 base)) 2)) (/.f64 (atan2.f64 im re) (cbrt.f64 (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (sqrt.f64 (atan2.f64 im re)) (pow.f64 (cbrt.f64 (log.f64 base)) 2)) (/.f64 (sqrt.f64 (atan2.f64 im re)) (cbrt.f64 (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 1 (sqrt.f64 (log.f64 base))) (/.f64 (atan2.f64 im re) (sqrt.f64 (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) (sqrt.f64 (log.f64 base))) (/.f64 (cbrt.f64 (atan2.f64 im re)) (sqrt.f64 (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (*.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) 1) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (*.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) 2)) (cbrt.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (*.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/6)) (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/6))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 1 (/.f64 (log.f64 base) (atan2.f64 im re)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 1 (/.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) 1))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) (/.f64 (log.f64 base) (cbrt.f64 (atan2.f64 im re))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (sqrt.f64 (atan2.f64 im re)) (/.f64 (log.f64 base) (sqrt.f64 (atan2.f64 im re))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (neg.f64 (atan2.f64 im re)) (neg.f64 (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 -1 (neg.f64 (/.f64 (log.f64 base) (atan2.f64 im re))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (neg.f64 (neg.f64 (atan2.f64 im re))) (neg.f64 (neg.f64 (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (/.f64 (atan2.f64 im re) (sqrt.f64 (log.f64 base))) (sqrt.f64 (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (/.f64 (atan2.f64 im re) 1) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (/.f64 (atan2.f64 im re) (pow.f64 (cbrt.f64 (log.f64 base)) 2)) (cbrt.f64 (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (*.f64 (cbrt.f64 (atan2.f64 im re)) (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2)) (cbrt.f64 (log.f64 base)))
(/.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) (/.f64 (cbrt.f64 (log.f64 base)) (cbrt.f64 (atan2.f64 im re))))
(*.f64 (/.f64 (cbrt.f64 (atan2.f64 im re)) (cbrt.f64 (log.f64 base))) (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) (/.f64 (cbrt.f64 (atan2.f64 im re)) (cbrt.f64 (log.f64 base))))
(/.f64 (*.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) (cbrt.f64 (atan2.f64 im re))) (cbrt.f64 (log.f64 base)))
(/.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) (/.f64 (cbrt.f64 (log.f64 base)) (cbrt.f64 (atan2.f64 im re))))
(*.f64 (/.f64 (cbrt.f64 (atan2.f64 im re)) (cbrt.f64 (log.f64 base))) (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) (/.f64 (cbrt.f64 (atan2.f64 im re)) (cbrt.f64 (log.f64 base))))
(neg.f64 (/.f64 (atan2.f64 im re) (neg.f64 (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(sqrt.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2))
(/.f64 (atan2.f64 im re) (log.f64 base))
(log.f64 (exp.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(cbrt.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3))
(/.f64 (atan2.f64 im re) (log.f64 base))
(cbrt.f64 (/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(expm1.f64 (log1p.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(log1p.f64 (expm1.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(exp.f64 (log.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))

localize17.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(/.f64 1 (cbrt.f64 (log.f64 base)))
0.3b
(*.f64 (atan2.f64 im re) (pow.f64 (/.f64 1 (cbrt.f64 (log.f64 base))) 3))
0.5b
(cbrt.f64 (log.f64 base))
0.8b
(pow.f64 (/.f64 1 (cbrt.f64 (log.f64 base))) 3)
Compiler

Compiled 39 to 19 computations (51.3% saved)

series19.0ms (0.3%)

Counts
4 → 72
Calls

18 calls:

TimeVariablePointExpression
2.0ms
base
@inf
(pow.f64 (/.f64 1 (cbrt.f64 (log.f64 base))) 3)
2.0ms
base
@-inf
(pow.f64 (/.f64 1 (cbrt.f64 (log.f64 base))) 3)
2.0ms
base
@0
(pow.f64 (/.f64 1 (cbrt.f64 (log.f64 base))) 3)
2.0ms
im
@0
(*.f64 (atan2.f64 im re) (pow.f64 (/.f64 1 (cbrt.f64 (log.f64 base))) 3))
2.0ms
base
@-inf
(cbrt.f64 (log.f64 base))

rewrite65.0ms (1.1%)

Algorithm
batch-egg-rewrite
Rules
488×log-prod_binary64
374×exp-prod_binary64
359×prod-exp_binary64
291×pow-prod-down_binary64
273×pow2_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01241
124228
2265528
Stop Event
node limit
Counts
4 → 190
Calls
Call 1
Inputs
(pow.f64 (/.f64 1 (cbrt.f64 (log.f64 base))) 3)
(cbrt.f64 (log.f64 base))
(*.f64 (atan2.f64 im re) (pow.f64 (/.f64 1 (cbrt.f64 (log.f64 base))) 3))
(/.f64 1 (cbrt.f64 (log.f64 base)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 1 (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 1 (log.f64 base)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 1 (log.f64 base))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 1 (log.f64 base))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 1 (log.f64 base))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 1 (log.f64 base)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 1 (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cbrt.f64 (log.f64 base))) (pow.f64 (cbrt.f64 (log.f64 base)) -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (log.f64 base)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (log.f64 base)) -2) (/.f64 1 (cbrt.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (log.f64 base)) -2)) (*.f64 (/.f64 1 (cbrt.f64 (cbrt.f64 (log.f64 base)))) (pow.f64 (cbrt.f64 (log.f64 base)) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (log.f64 base) -1/6) (pow.f64 (cbrt.f64 (log.f64 base)) -5/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (log.f64 base) -1/2) (pow.f64 (log.f64 base) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 (cbrt.f64 (log.f64 base)) -2) 1) (/.f64 1 (cbrt.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (log.f64 base)) -5/2) (pow.f64 (log.f64 base) -1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 (cbrt.f64 (log.f64 base)) -2) (cbrt.f64 (pow.f64 (cbrt.f64 (log.f64 base)) -2))) (/.f64 1 (cbrt.f64 (cbrt.f64 (log.f64 base)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (log.f64 base))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (log.f64 base) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (cbrt.f64 (log.f64 base)) -2) (cbrt.f64 (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1 (pow.f64 (neg.f64 (cbrt.f64 (log.f64 base))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1 (neg.f64 (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -1 (pow.f64 (cbrt.f64 (log.f64 base)) -2)) (neg.f64 (cbrt.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 (cbrt.f64 (log.f64 base)) -2) 1) (cbrt.f64 (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 (cbrt.f64 (log.f64 base)) -2) -1) (neg.f64 (cbrt.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (log.f64 base) -2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 1 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 1 (log.f64 base)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (log.f64 base) -3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 1 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 1 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (neg.f64 (log.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (neg.f64 (log.f64 (log.f64 base))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (log.f64 base)) -1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (log.f64 base))) -3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (log.f64 base) -3)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (neg.f64 (*.f64 2/3 (log.f64 (log.f64 base)))) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (log.f64 base) -1/2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (cbrt.f64 (log.f64 base))) 3) -1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (log.f64 base)) 1) -1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (log.f64 base)) 1/3) -3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (cbrt.f64 (log.f64 base))) 1) -3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (cbrt.f64 (log.f64 base))) -1) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (*.f64 -1/3 (log.f64 (log.f64 base))) 1) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (neg.f64 (log.f64 (log.f64 base))) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (*.f64 -1/3 (log.f64 (log.f64 base))) 3/2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (neg.f64 (*.f64 2/3 (log.f64 (log.f64 base)))) (*.f64 (log.f64 (log.f64 base)) 1/3)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (neg.f64 (*.f64 2/3 (log.f64 (log.f64 base)))) (*.f64 (log.f64 (cbrt.f64 (log.f64 base))) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (neg.f64 (*.f64 (log.f64 (cbrt.f64 (log.f64 base))) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (neg.f64 (*.f64 (log.f64 (log.f64 base)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 (cbrt.f64 (log.f64 base))) -1) (neg.f64 (*.f64 2/3 (log.f64 (log.f64 base))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (*.f64 -1/3 (log.f64 (log.f64 base))) 1) (neg.f64 (*.f64 2/3 (log.f64 (log.f64 base))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (neg.f64 (*.f64 2/3 (log.f64 (log.f64 base)))) (*.f64 (log.f64 (cbrt.f64 (log.f64 base))) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (neg.f64 (*.f64 2/3 (log.f64 (log.f64 base)))) (*.f64 (*.f64 -1/3 (log.f64 (log.f64 base))) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (*.f64 -1/3 (log.f64 (log.f64 base))) 3/2) (log.f64 (pow.f64 (log.f64 base) -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (log.f64 (pow.f64 (log.f64 base) -1/2)) (*.f64 (*.f64 -1/3 (log.f64 (log.f64 base))) 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (*.f64 -1/3 (log.f64 (log.f64 base))) 3/2) (*.f64 (*.f64 -1/3 (log.f64 (log.f64 base))) 3/2)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (cbrt.f64 (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (cbrt.f64 (log.f64 base)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (cbrt.f64 (log.f64 base))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (cbrt.f64 (log.f64 base))))) (log.f64 (sqrt.f64 (exp.f64 (cbrt.f64 (log.f64 base))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (cbrt.f64 (log.f64 base)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (cbrt.f64 (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (log.f64 base)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (log.f64 base))) (cbrt.f64 (pow.f64 (cbrt.f64 (log.f64 base)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (log.f64 base)) 2)) (cbrt.f64 (cbrt.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (log.f64 base) 1/6) (pow.f64 (log.f64 base) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 1 (cbrt.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (log.f64 base)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (log.f64 base)) 2)) (/.f64 1 (cbrt.f64 (cbrt.f64 (log.f64 base)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (log.f64 base) 1/6) (pow.f64 (log.f64 base) -1/6))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (cbrt.f64 (log.f64 base))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (log.f64 base) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (log.f64 base)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1 (cbrt.f64 (log.f64 base))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1 (log.f64 base)) -1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (E.f64) (log.f64 (cbrt.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cbrt.f64 (log.f64 base)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (log.f64 base) 2) 1/6)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (log.f64 base) 3) 1/9)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (cbrt.f64 (log.f64 base))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1 (cbrt.f64 (cbrt.f64 (log.f64 base)))) -3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (log.f64 base) 1/6) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (log.f64 base) -1/6) -2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (log.f64 base)) 2/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1/3) (log.f64 (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (cbrt.f64 (log.f64 base)))) 2)) (cbrt.f64 (log.f64 (cbrt.f64 (log.f64 base)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (cbrt.f64 (log.f64 base))))) (sqrt.f64 (log.f64 (cbrt.f64 (log.f64 base)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (cbrt.f64 (log.f64 base)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (cbrt.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (cbrt.f64 (log.f64 base)))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (cbrt.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (cbrt.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (cbrt.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (log.f64 base)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (log.f64 base))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (cbrt.f64 (log.f64 base)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 1/6 (log.f64 (log.f64 base))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (cbrt.f64 (log.f64 base))) 3) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (log.f64 base)) 1) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (log.f64 base)) 1/3) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (cbrt.f64 (log.f64 base))) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (neg.f64 (*.f64 (log.f64 (cbrt.f64 (log.f64 base))) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (neg.f64 (*.f64 (*.f64 -1/3 (log.f64 (log.f64 base))) 1)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (atan2.f64 im re) (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (atan2.f64 im re) (log.f64 base))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (E.f64) (log.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) 2)) (cbrt.f64 (log.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))) (sqrt.f64 (log.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (*.f64 (log.f64 (atan2.f64 im re)) 1) (log.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (log.f64 (atan2.f64 im re)) (*.f64 (log.f64 (cbrt.f64 (log.f64 base))) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (*.f64 (log.f64 (atan2.f64 im re)) 1) (*.f64 (log.f64 (cbrt.f64 (log.f64 base))) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (log.f64 (atan2.f64 im re)) (*.f64 (log.f64 (log.f64 base)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (*.f64 (log.f64 (atan2.f64 im re)) 1) (*.f64 (log.f64 (log.f64 base)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (neg.f64 (log.f64 (log.f64 base))) 1) (log.f64 (atan2.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (neg.f64 (log.f64 (log.f64 base))) (*.f64 (log.f64 (atan2.f64 im re)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (neg.f64 (log.f64 (log.f64 base))) 1) (*.f64 (log.f64 (atan2.f64 im re)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 (atan2.f64 im re)) 1) (neg.f64 (log.f64 (log.f64 base)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (log.f64 (atan2.f64 im re)) (*.f64 (neg.f64 (log.f64 (log.f64 base))) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 (atan2.f64 im re)) 1) (*.f64 (neg.f64 (log.f64 (log.f64 base))) 1)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 1 (cbrt.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 1 (cbrt.f64 (log.f64 base))))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 1 (cbrt.f64 (log.f64 base)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 1 (cbrt.f64 (log.f64 base)))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 1 (cbrt.f64 (log.f64 base)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 1 (cbrt.f64 (log.f64 base))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 1 (cbrt.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cbrt.f64 (log.f64 base))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cbrt.f64 (cbrt.f64 (log.f64 base)))) (cbrt.f64 (pow.f64 (cbrt.f64 (log.f64 base)) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (log.f64 base)) -2)) (/.f64 1 (cbrt.f64 (cbrt.f64 (log.f64 base)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (log.f64 base) -1/6) (pow.f64 (log.f64 base) -1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (/.f64 1 (neg.f64 (cbrt.f64 (log.f64 base)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (log.f64 base))) -2) (/.f64 1 (cbrt.f64 (cbrt.f64 (log.f64 base)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (log.f64 base) -1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (log.f64 base)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1 (cbrt.f64 (log.f64 base))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1 (log.f64 base)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (E.f64) (*.f64 -1/3 (log.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (log.f64 base) -3) 1/9)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cbrt.f64 (log.f64 base)) 2) -1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cbrt.f64 (log.f64 base)) -2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (log.f64 base) 3) -1/9)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (cbrt.f64 (log.f64 base))) -3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1 (cbrt.f64 (cbrt.f64 (log.f64 base)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (log.f64 base)) -2)) 3/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (log.f64 base) 1/6) -2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (log.f64 base) -1/6) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (log.f64 base)) -2/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (log.f64 base) -1/2) 2/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 -1) (log.f64 (cbrt.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (neg.f64 (neg.f64 (cbrt.f64 (log.f64 base)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (*.f64 -1/3 (log.f64 (log.f64 base)))) 2)) (cbrt.f64 (*.f64 -1/3 (log.f64 (log.f64 base)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (*.f64 -1/3 (log.f64 (log.f64 base))))) (sqrt.f64 (*.f64 -1/3 (log.f64 (log.f64 base)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (cbrt.f64 (log.f64 base)) -2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 1 (cbrt.f64 (log.f64 base)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 1 (cbrt.f64 (log.f64 base))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 1 (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 1 (cbrt.f64 (log.f64 base)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 1 (cbrt.f64 (log.f64 base)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 -1/3 (log.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (log.f64 base))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 -1/3 (log.f64 (log.f64 base))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (log.f64 base)) -2))) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (log.f64 base)) -1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (neg.f64 (log.f64 (log.f64 base))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 1/3 (*.f64 -1/3 (log.f64 (log.f64 base)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (log.f64 base) -1/6)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (cbrt.f64 (log.f64 base))) 3) -1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (log.f64 base)) 1) -1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (log.f64 base)) 1/3) -1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (cbrt.f64 (log.f64 base))) 1) -1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (cbrt.f64 (log.f64 base))) -1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (*.f64 -1/3 (log.f64 (log.f64 base))) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (neg.f64 (log.f64 (log.f64 base))) 1) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (neg.f64 (*.f64 (log.f64 (log.f64 base)) 1/3)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (neg.f64 (*.f64 (log.f64 (cbrt.f64 (log.f64 base))) 1)))))))

simplify71.0ms (1.2%)

Algorithm
egg-herbie
Rules
711×fma-def_binary64
474×distribute-rgt-in_binary64
322×exp-prod_binary64
302×sqr-pow_binary64
229×log-prod_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
042412884904403
19402484
227452476
Stop Event
node limit
Counts
262 → 239
Calls
Call 1
Inputs
(*.f64 (/.f64 1 (log.f64 base)) (pow.f64 1 1/3))
(*.f64 (/.f64 1 (log.f64 base)) (pow.f64 1 1/3))
(*.f64 (/.f64 1 (log.f64 base)) (pow.f64 1 1/3))
(*.f64 (/.f64 1 (log.f64 base)) (pow.f64 1 1/3))
(*.f64 -1 (*.f64 (pow.f64 1 1/3) (/.f64 1 (log.f64 (/.f64 1 base)))))
(*.f64 -1 (*.f64 (pow.f64 1 1/3) (/.f64 1 (log.f64 (/.f64 1 base)))))
(*.f64 -1 (*.f64 (pow.f64 1 1/3) (/.f64 1 (log.f64 (/.f64 1 base)))))
(*.f64 -1 (*.f64 (pow.f64 1 1/3) (/.f64 1 (log.f64 (/.f64 1 base)))))
(*.f64 (pow.f64 1 1/3) (/.f64 1 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base))))))
(*.f64 (pow.f64 1 1/3) (/.f64 1 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base))))))
(*.f64 (pow.f64 1 1/3) (/.f64 1 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base))))))
(*.f64 (pow.f64 1 1/3) (/.f64 1 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base))))))
(pow.f64 (log.f64 base) 1/3)
(pow.f64 (log.f64 base) 1/3)
(pow.f64 (log.f64 base) 1/3)
(pow.f64 (log.f64 base) 1/3)
(*.f64 (pow.f64 (*.f64 1 (log.f64 (/.f64 1 base))) 1/3) (cbrt.f64 -1))
(*.f64 (pow.f64 (*.f64 1 (log.f64 (/.f64 1 base))) 1/3) (cbrt.f64 -1))
(*.f64 (pow.f64 (*.f64 1 (log.f64 (/.f64 1 base))) 1/3) (cbrt.f64 -1))
(*.f64 (pow.f64 (*.f64 1 (log.f64 (/.f64 1 base))) 1/3) (cbrt.f64 -1))
(pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) 1/3)
(pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) 1/3)
(pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) 1/3)
(pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) 1/3)
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(pow.f64 (/.f64 1 (log.f64 base)) 1/3)
(pow.f64 (/.f64 1 (log.f64 base)) 1/3)
(pow.f64 (/.f64 1 (log.f64 base)) 1/3)
(pow.f64 (/.f64 1 (log.f64 base)) 1/3)
(*.f64 (pow.f64 (/.f64 1 (log.f64 (/.f64 1 base))) 1/3) (cbrt.f64 -1))
(*.f64 (pow.f64 (/.f64 1 (log.f64 (/.f64 1 base))) 1/3) (cbrt.f64 -1))
(*.f64 (pow.f64 (/.f64 1 (log.f64 (/.f64 1 base))) 1/3) (cbrt.f64 -1))
(*.f64 (pow.f64 (/.f64 1 (log.f64 (/.f64 1 base))) 1/3) (cbrt.f64 -1))
(pow.f64 (/.f64 1 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base))))) 1/3)
(pow.f64 (/.f64 1 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base))))) 1/3)
(pow.f64 (/.f64 1 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base))))) 1/3)
(pow.f64 (/.f64 1 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base))))) 1/3)
(+.f64 0 (/.f64 1 (log.f64 base)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 1 (log.f64 base)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 1 (log.f64 base))))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 1 (log.f64 base))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 1 (log.f64 base))))))
(-.f64 (exp.f64 (log1p.f64 (/.f64 1 (log.f64 base)))) 1)
(*.f64 1 (/.f64 1 (log.f64 base)))
(*.f64 (/.f64 1 (cbrt.f64 (log.f64 base))) (pow.f64 (cbrt.f64 (log.f64 base)) -2))
(*.f64 (/.f64 1 (log.f64 base)) 1)
(*.f64 (pow.f64 (cbrt.f64 (log.f64 base)) -2) (/.f64 1 (cbrt.f64 (log.f64 base))))
(*.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (log.f64 base)) -2)) (*.f64 (/.f64 1 (cbrt.f64 (cbrt.f64 (log.f64 base)))) (pow.f64 (cbrt.f64 (log.f64 base)) -2)))
(*.f64 (pow.f64 (log.f64 base) -1/6) (pow.f64 (cbrt.f64 (log.f64 base)) -5/2))
(*.f64 (pow.f64 (log.f64 base) -1/2) (pow.f64 (log.f64 base) -1/2))
(*.f64 (*.f64 (pow.f64 (cbrt.f64 (log.f64 base)) -2) 1) (/.f64 1 (cbrt.f64 (log.f64 base))))
(*.f64 (pow.f64 (cbrt.f64 (log.f64 base)) -5/2) (pow.f64 (log.f64 base) -1/6))
(*.f64 (*.f64 (pow.f64 (cbrt.f64 (log.f64 base)) -2) (cbrt.f64 (pow.f64 (cbrt.f64 (log.f64 base)) -2))) (/.f64 1 (cbrt.f64 (cbrt.f64 (log.f64 base)))))
(/.f64 1 (log.f64 base))
(/.f64 1 (/.f64 (log.f64 base) 1))
(/.f64 (pow.f64 (cbrt.f64 (log.f64 base)) -2) (cbrt.f64 (log.f64 base)))
(/.f64 -1 (pow.f64 (neg.f64 (cbrt.f64 (log.f64 base))) 3))
(/.f64 -1 (neg.f64 (log.f64 base)))
(/.f64 (*.f64 -1 (pow.f64 (cbrt.f64 (log.f64 base)) -2)) (neg.f64 (cbrt.f64 (log.f64 base))))
(/.f64 (*.f64 (pow.f64 (cbrt.f64 (log.f64 base)) -2) 1) (cbrt.f64 (log.f64 base)))
(/.f64 (*.f64 (pow.f64 (cbrt.f64 (log.f64 base)) -2) -1) (neg.f64 (cbrt.f64 (log.f64 base))))
(sqrt.f64 (pow.f64 (log.f64 base) -2))
(log.f64 (exp.f64 (/.f64 1 (log.f64 base))))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 1 (log.f64 base)))))
(cbrt.f64 (pow.f64 (log.f64 base) -3))
(expm1.f64 (log1p.f64 (/.f64 1 (log.f64 base))))
(log1p.f64 (expm1.f64 (/.f64 1 (log.f64 base))))
(exp.f64 (neg.f64 (log.f64 (log.f64 base))))
(exp.f64 (*.f64 (neg.f64 (log.f64 (log.f64 base))) 1))
(exp.f64 (*.f64 (log.f64 (log.f64 base)) -1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (log.f64 base))) -3))
(exp.f64 (*.f64 (log.f64 (pow.f64 (log.f64 base) -3)) 1/3))
(exp.f64 (*.f64 (neg.f64 (*.f64 2/3 (log.f64 (log.f64 base)))) 3/2))
(exp.f64 (*.f64 (log.f64 (pow.f64 (log.f64 base) -1/2)) 2))
(exp.f64 (*.f64 (*.f64 (log.f64 (cbrt.f64 (log.f64 base))) 3) -1))
(exp.f64 (*.f64 (*.f64 (log.f64 (log.f64 base)) 1) -1))
(exp.f64 (*.f64 (*.f64 (log.f64 (log.f64 base)) 1/3) -3))
(exp.f64 (*.f64 (*.f64 (log.f64 (cbrt.f64 (log.f64 base))) 1) -3))
(exp.f64 (*.f64 (*.f64 (log.f64 (cbrt.f64 (log.f64 base))) -1) 3))
(exp.f64 (*.f64 (*.f64 (*.f64 -1/3 (log.f64 (log.f64 base))) 1) 3))
(exp.f64 (*.f64 (*.f64 (neg.f64 (log.f64 (log.f64 base))) 1) 1))
(exp.f64 (*.f64 (*.f64 (*.f64 -1/3 (log.f64 (log.f64 base))) 3/2) 2))
(exp.f64 (-.f64 (neg.f64 (*.f64 2/3 (log.f64 (log.f64 base)))) (*.f64 (log.f64 (log.f64 base)) 1/3)))
(exp.f64 (-.f64 (neg.f64 (*.f64 2/3 (log.f64 (log.f64 base)))) (*.f64 (log.f64 (cbrt.f64 (log.f64 base))) 1)))
(exp.f64 (neg.f64 (*.f64 (log.f64 (cbrt.f64 (log.f64 base))) 3)))
(exp.f64 (neg.f64 (*.f64 (log.f64 (log.f64 base)) 1)))
(exp.f64 (+.f64 (*.f64 (log.f64 (cbrt.f64 (log.f64 base))) -1) (neg.f64 (*.f64 2/3 (log.f64 (log.f64 base))))))
(exp.f64 (+.f64 (*.f64 (*.f64 -1/3 (log.f64 (log.f64 base))) 1) (neg.f64 (*.f64 2/3 (log.f64 (log.f64 base))))))
(exp.f64 (+.f64 (neg.f64 (*.f64 2/3 (log.f64 (log.f64 base)))) (*.f64 (log.f64 (cbrt.f64 (log.f64 base))) -1)))
(exp.f64 (+.f64 (neg.f64 (*.f64 2/3 (log.f64 (log.f64 base)))) (*.f64 (*.f64 -1/3 (log.f64 (log.f64 base))) 1)))
(exp.f64 (+.f64 (*.f64 (*.f64 -1/3 (log.f64 (log.f64 base))) 3/2) (log.f64 (pow.f64 (log.f64 base) -1/2))))
(exp.f64 (+.f64 (log.f64 (pow.f64 (log.f64 base) -1/2)) (*.f64 (*.f64 -1/3 (log.f64 (log.f64 base))) 3/2)))
(exp.f64 (+.f64 (*.f64 (*.f64 -1/3 (log.f64 (log.f64 base))) 3/2) (*.f64 (*.f64 -1/3 (log.f64 (log.f64 base))) 3/2)))
(+.f64 0 (cbrt.f64 (log.f64 base)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (cbrt.f64 (log.f64 base)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (cbrt.f64 (log.f64 base))))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (cbrt.f64 (log.f64 base))))) (log.f64 (sqrt.f64 (exp.f64 (cbrt.f64 (log.f64 base))))))
(-.f64 (exp.f64 (log1p.f64 (cbrt.f64 (log.f64 base)))) 1)
(*.f64 1 (cbrt.f64 (log.f64 base)))
(*.f64 (cbrt.f64 (log.f64 base)) 1)
(*.f64 (cbrt.f64 (cbrt.f64 (log.f64 base))) (cbrt.f64 (pow.f64 (cbrt.f64 (log.f64 base)) 2)))
(*.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (log.f64 base)) 2)) (cbrt.f64 (cbrt.f64 (log.f64 base))))
(*.f64 (pow.f64 (log.f64 base) 1/6) (pow.f64 (log.f64 base) 1/6))
(/.f64 1 (/.f64 1 (cbrt.f64 (log.f64 base))))
(/.f64 (cbrt.f64 (log.f64 base)) 1)
(/.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (log.f64 base)) 2)) (/.f64 1 (cbrt.f64 (cbrt.f64 (log.f64 base)))))
(/.f64 (pow.f64 (log.f64 base) 1/6) (pow.f64 (log.f64 base) -1/6))
(/.f64 (neg.f64 (cbrt.f64 (log.f64 base))) -1)
(pow.f64 (log.f64 base) 1/3)
(pow.f64 (cbrt.f64 (log.f64 base)) 1)
(pow.f64 (/.f64 1 (cbrt.f64 (log.f64 base))) -1)
(pow.f64 (/.f64 1 (log.f64 base)) -1/3)
(pow.f64 (E.f64) (log.f64 (cbrt.f64 (log.f64 base))))
(pow.f64 (pow.f64 (cbrt.f64 (log.f64 base)) 2) 1/2)
(pow.f64 (pow.f64 (log.f64 base) 2) 1/6)
(pow.f64 (pow.f64 (log.f64 base) 3) 1/9)
(pow.f64 (cbrt.f64 (cbrt.f64 (log.f64 base))) 3)
(pow.f64 (/.f64 1 (cbrt.f64 (cbrt.f64 (log.f64 base)))) -3)
(pow.f64 (pow.f64 (log.f64 base) 1/6) 2)
(pow.f64 (pow.f64 (log.f64 base) -1/6) -2)
(pow.f64 (sqrt.f64 (log.f64 base)) 2/3)
(pow.f64 (exp.f64 1/3) (log.f64 (log.f64 base)))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (cbrt.f64 (log.f64 base)))) 2)) (cbrt.f64 (log.f64 (cbrt.f64 (log.f64 base)))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (cbrt.f64 (log.f64 base))))) (sqrt.f64 (log.f64 (cbrt.f64 (log.f64 base)))))
(sqrt.f64 (pow.f64 (cbrt.f64 (log.f64 base)) 2))
(log.f64 (exp.f64 (cbrt.f64 (log.f64 base))))
(log.f64 (+.f64 1 (expm1.f64 (cbrt.f64 (log.f64 base)))))
(expm1.f64 (log1p.f64 (cbrt.f64 (log.f64 base))))
(log1p.f64 (expm1.f64 (cbrt.f64 (log.f64 base))))
(exp.f64 (log.f64 (cbrt.f64 (log.f64 base))))
(exp.f64 (*.f64 (log.f64 (log.f64 base)) 1/3))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (log.f64 base))) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (cbrt.f64 (log.f64 base)))) 3))
(exp.f64 (*.f64 (*.f64 1/6 (log.f64 (log.f64 base))) 2))
(exp.f64 (*.f64 (*.f64 (log.f64 (cbrt.f64 (log.f64 base))) 3) 1/3))
(exp.f64 (*.f64 (*.f64 (log.f64 (log.f64 base)) 1) 1/3))
(exp.f64 (*.f64 (*.f64 (log.f64 (log.f64 base)) 1/3) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (cbrt.f64 (log.f64 base))) 1) 1))
(exp.f64 (neg.f64 (*.f64 (log.f64 (cbrt.f64 (log.f64 base))) -1)))
(exp.f64 (neg.f64 (*.f64 (*.f64 -1/3 (log.f64 (log.f64 base))) 1)))
(+.f64 0 (/.f64 (atan2.f64 im re) (log.f64 base)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))
(-.f64 (exp.f64 (log1p.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) 1)
(/.f64 (atan2.f64 im re) (log.f64 base))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1)
(pow.f64 (E.f64) (log.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(pow.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2) 1/2)
(pow.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3) 1/3)
(pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 3)
(pow.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2)
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) 2)) (cbrt.f64 (log.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))) (sqrt.f64 (log.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))
(sqrt.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2))
(log.f64 (exp.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))
(cbrt.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3))
(expm1.f64 (log1p.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(log1p.f64 (expm1.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(exp.f64 (log.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(exp.f64 (*.f64 (log.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 1))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) 1/3))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) 3))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) 2))
(exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 1) 1))
(exp.f64 (-.f64 (*.f64 (log.f64 (atan2.f64 im re)) 1) (log.f64 (log.f64 base))))
(exp.f64 (-.f64 (log.f64 (atan2.f64 im re)) (*.f64 (log.f64 (cbrt.f64 (log.f64 base))) 3)))
(exp.f64 (-.f64 (*.f64 (log.f64 (atan2.f64 im re)) 1) (*.f64 (log.f64 (cbrt.f64 (log.f64 base))) 3)))
(exp.f64 (-.f64 (log.f64 (atan2.f64 im re)) (*.f64 (log.f64 (log.f64 base)) 1)))
(exp.f64 (-.f64 (*.f64 (log.f64 (atan2.f64 im re)) 1) (*.f64 (log.f64 (log.f64 base)) 1)))
(exp.f64 (+.f64 (*.f64 (neg.f64 (log.f64 (log.f64 base))) 1) (log.f64 (atan2.f64 im re))))
(exp.f64 (+.f64 (neg.f64 (log.f64 (log.f64 base))) (*.f64 (log.f64 (atan2.f64 im re)) 1)))
(exp.f64 (+.f64 (*.f64 (neg.f64 (log.f64 (log.f64 base))) 1) (*.f64 (log.f64 (atan2.f64 im re)) 1)))
(exp.f64 (+.f64 (*.f64 (log.f64 (atan2.f64 im re)) 1) (neg.f64 (log.f64 (log.f64 base)))))
(exp.f64 (+.f64 (log.f64 (atan2.f64 im re)) (*.f64 (neg.f64 (log.f64 (log.f64 base))) 1)))
(exp.f64 (+.f64 (*.f64 (log.f64 (atan2.f64 im re)) 1) (*.f64 (neg.f64 (log.f64 (log.f64 base))) 1)))
(+.f64 0 (/.f64 1 (cbrt.f64 (log.f64 base))))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 1 (cbrt.f64 (log.f64 base))))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 1 (cbrt.f64 (log.f64 base)))))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 1 (cbrt.f64 (log.f64 base)))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 1 (cbrt.f64 (log.f64 base)))))))
(-.f64 (exp.f64 (log1p.f64 (/.f64 1 (cbrt.f64 (log.f64 base))))) 1)
(*.f64 1 (/.f64 1 (cbrt.f64 (log.f64 base))))
(*.f64 (/.f64 1 (cbrt.f64 (log.f64 base))) 1)
(*.f64 (/.f64 1 (cbrt.f64 (cbrt.f64 (log.f64 base)))) (cbrt.f64 (pow.f64 (cbrt.f64 (log.f64 base)) -2)))
(*.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (log.f64 base)) -2)) (/.f64 1 (cbrt.f64 (cbrt.f64 (log.f64 base)))))
(*.f64 (pow.f64 (log.f64 base) -1/6) (pow.f64 (log.f64 base) -1/6))
(*.f64 -1 (/.f64 1 (neg.f64 (cbrt.f64 (log.f64 base)))))
(*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (log.f64 base))) -2) (/.f64 1 (cbrt.f64 (cbrt.f64 (log.f64 base)))))
(pow.f64 (log.f64 base) -1/3)
(pow.f64 (cbrt.f64 (log.f64 base)) -1)
(pow.f64 (/.f64 1 (cbrt.f64 (log.f64 base))) 1)
(pow.f64 (/.f64 1 (log.f64 base)) 1/3)
(pow.f64 (E.f64) (*.f64 -1/3 (log.f64 (log.f64 base))))
(pow.f64 (pow.f64 (log.f64 base) -3) 1/9)
(pow.f64 (pow.f64 (cbrt.f64 (log.f64 base)) 2) -1/2)
(pow.f64 (pow.f64 (cbrt.f64 (log.f64 base)) -2) 1/2)
(pow.f64 (pow.f64 (log.f64 base) 3) -1/9)
(pow.f64 (cbrt.f64 (cbrt.f64 (log.f64 base))) -3)
(pow.f64 (/.f64 1 (cbrt.f64 (cbrt.f64 (log.f64 base)))) 3)
(pow.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (log.f64 base)) -2)) 3/2)
(pow.f64 (pow.f64 (log.f64 base) 1/6) -2)
(pow.f64 (pow.f64 (log.f64 base) -1/6) 2)
(pow.f64 (sqrt.f64 (log.f64 base)) -2/3)
(pow.f64 (pow.f64 (log.f64 base) -1/2) 2/3)
(pow.f64 (exp.f64 -1) (log.f64 (cbrt.f64 (log.f64 base))))
(pow.f64 (neg.f64 (neg.f64 (cbrt.f64 (log.f64 base)))) -1)
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (*.f64 -1/3 (log.f64 (log.f64 base)))) 2)) (cbrt.f64 (*.f64 -1/3 (log.f64 (log.f64 base)))))
(pow.f64 (exp.f64 (sqrt.f64 (*.f64 -1/3 (log.f64 (log.f64 base))))) (sqrt.f64 (*.f64 -1/3 (log.f64 (log.f64 base)))))
(sqrt.f64 (pow.f64 (cbrt.f64 (log.f64 base)) -2))
(log.f64 (exp.f64 (/.f64 1 (cbrt.f64 (log.f64 base)))))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 1 (cbrt.f64 (log.f64 base))))))
(cbrt.f64 (/.f64 1 (log.f64 base)))
(expm1.f64 (log1p.f64 (/.f64 1 (cbrt.f64 (log.f64 base)))))
(log1p.f64 (expm1.f64 (/.f64 1 (cbrt.f64 (log.f64 base)))))
(exp.f64 (*.f64 -1/3 (log.f64 (log.f64 base))))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (log.f64 base))) -1))
(exp.f64 (*.f64 (*.f64 -1/3 (log.f64 (log.f64 base))) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (log.f64 base)) -2))) 3/2))
(exp.f64 (*.f64 (log.f64 (log.f64 base)) -1/3))
(exp.f64 (*.f64 (neg.f64 (log.f64 (log.f64 base))) 1/3))
(exp.f64 (*.f64 (*.f64 1/3 (*.f64 -1/3 (log.f64 (log.f64 base)))) 3))
(exp.f64 (*.f64 (log.f64 (pow.f64 (log.f64 base) -1/6)) 2))
(exp.f64 (*.f64 (*.f64 (log.f64 (cbrt.f64 (log.f64 base))) 3) -1/3))
(exp.f64 (*.f64 (*.f64 (log.f64 (log.f64 base)) 1) -1/3))
(exp.f64 (*.f64 (*.f64 (log.f64 (log.f64 base)) 1/3) -1))
(exp.f64 (*.f64 (*.f64 (log.f64 (cbrt.f64 (log.f64 base))) 1) -1))
(exp.f64 (*.f64 (*.f64 (log.f64 (cbrt.f64 (log.f64 base))) -1) 1))
(exp.f64 (*.f64 (*.f64 (*.f64 -1/3 (log.f64 (log.f64 base))) 1) 1))
(exp.f64 (*.f64 (*.f64 (neg.f64 (log.f64 (log.f64 base))) 1) 1/3))
(exp.f64 (neg.f64 (*.f64 (log.f64 (log.f64 base)) 1/3)))
(exp.f64 (neg.f64 (*.f64 (log.f64 (cbrt.f64 (log.f64 base))) 1)))
Outputs
(*.f64 (/.f64 1 (log.f64 base)) (pow.f64 1 1/3))
(/.f64 1 (log.f64 base))
(*.f64 (/.f64 1 (log.f64 base)) (pow.f64 1 1/3))
(/.f64 1 (log.f64 base))
(*.f64 (/.f64 1 (log.f64 base)) (pow.f64 1 1/3))
(/.f64 1 (log.f64 base))
(*.f64 (/.f64 1 (log.f64 base)) (pow.f64 1 1/3))
(/.f64 1 (log.f64 base))
(*.f64 -1 (*.f64 (pow.f64 1 1/3) (/.f64 1 (log.f64 (/.f64 1 base)))))
(/.f64 1 (log.f64 base))
(*.f64 -1 (*.f64 (pow.f64 1 1/3) (/.f64 1 (log.f64 (/.f64 1 base)))))
(/.f64 1 (log.f64 base))
(*.f64 -1 (*.f64 (pow.f64 1 1/3) (/.f64 1 (log.f64 (/.f64 1 base)))))
(/.f64 1 (log.f64 base))
(*.f64 -1 (*.f64 (pow.f64 1 1/3) (/.f64 1 (log.f64 (/.f64 1 base)))))
(/.f64 1 (log.f64 base))
(*.f64 (pow.f64 1 1/3) (/.f64 1 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base))))))
(/.f64 1 (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))))
(/.f64 1 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))))
(*.f64 (pow.f64 1 1/3) (/.f64 1 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base))))))
(/.f64 1 (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))))
(/.f64 1 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))))
(*.f64 (pow.f64 1 1/3) (/.f64 1 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base))))))
(/.f64 1 (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))))
(/.f64 1 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))))
(*.f64 (pow.f64 1 1/3) (/.f64 1 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base))))))
(/.f64 1 (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))))
(/.f64 1 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))))
(pow.f64 (log.f64 base) 1/3)
(cbrt.f64 (log.f64 base))
(pow.f64 (log.f64 base) 1/3)
(cbrt.f64 (log.f64 base))
(pow.f64 (log.f64 base) 1/3)
(cbrt.f64 (log.f64 base))
(pow.f64 (log.f64 base) 1/3)
(cbrt.f64 (log.f64 base))
(*.f64 (pow.f64 (*.f64 1 (log.f64 (/.f64 1 base))) 1/3) (cbrt.f64 -1))
(*.f64 (cbrt.f64 (neg.f64 (log.f64 base))) (cbrt.f64 -1))
(*.f64 (cbrt.f64 -1) (neg.f64 (cbrt.f64 (log.f64 base))))
(*.f64 (pow.f64 (*.f64 1 (log.f64 (/.f64 1 base))) 1/3) (cbrt.f64 -1))
(*.f64 (cbrt.f64 (neg.f64 (log.f64 base))) (cbrt.f64 -1))
(*.f64 (cbrt.f64 -1) (neg.f64 (cbrt.f64 (log.f64 base))))
(*.f64 (pow.f64 (*.f64 1 (log.f64 (/.f64 1 base))) 1/3) (cbrt.f64 -1))
(*.f64 (cbrt.f64 (neg.f64 (log.f64 base))) (cbrt.f64 -1))
(*.f64 (cbrt.f64 -1) (neg.f64 (cbrt.f64 (log.f64 base))))
(*.f64 (pow.f64 (*.f64 1 (log.f64 (/.f64 1 base))) 1/3) (cbrt.f64 -1))
(*.f64 (cbrt.f64 (neg.f64 (log.f64 base))) (cbrt.f64 -1))
(*.f64 (cbrt.f64 -1) (neg.f64 (cbrt.f64 (log.f64 base))))
(pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) 1/3)
(cbrt.f64 (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))))
(cbrt.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))))
(pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) 1/3)
(cbrt.f64 (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))))
(cbrt.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))))
(pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) 1/3)
(cbrt.f64 (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))))
(cbrt.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))))
(pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) 1/3)
(cbrt.f64 (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))))
(cbrt.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))))
(pow.f64 (/.f64 1 (log.f64 base)) 1/3)
(cbrt.f64 (/.f64 1 (log.f64 base)))
(/.f64 1 (cbrt.f64 (log.f64 base)))
(pow.f64 (/.f64 1 (log.f64 base)) 1/3)
(cbrt.f64 (/.f64 1 (log.f64 base)))
(/.f64 1 (cbrt.f64 (log.f64 base)))
(pow.f64 (/.f64 1 (log.f64 base)) 1/3)
(cbrt.f64 (/.f64 1 (log.f64 base)))
(/.f64 1 (cbrt.f64 (log.f64 base)))
(pow.f64 (/.f64 1 (log.f64 base)) 1/3)
(cbrt.f64 (/.f64 1 (log.f64 base)))
(/.f64 1 (cbrt.f64 (log.f64 base)))
(*.f64 (pow.f64 (/.f64 1 (log.f64 (/.f64 1 base))) 1/3) (cbrt.f64 -1))
(*.f64 (cbrt.f64 -1) (cbrt.f64 (/.f64 1 (neg.f64 (log.f64 base)))))
(*.f64 (cbrt.f64 -1) (cbrt.f64 (/.f64 -1 (log.f64 base))))
(*.f64 (pow.f64 (/.f64 1 (log.f64 (/.f64 1 base))) 1/3) (cbrt.f64 -1))
(*.f64 (cbrt.f64 -1) (cbrt.f64 (/.f64 1 (neg.f64 (log.f64 base)))))
(*.f64 (cbrt.f64 -1) (cbrt.f64 (/.f64 -1 (log.f64 base))))
(*.f64 (pow.f64 (/.f64 1 (log.f64 (/.f64 1 base))) 1/3) (cbrt.f64 -1))
(*.f64 (cbrt.f64 -1) (cbrt.f64 (/.f64 1 (neg.f64 (log.f64 base)))))
(*.f64 (cbrt.f64 -1) (cbrt.f64 (/.f64 -1 (log.f64 base))))
(*.f64 (pow.f64 (/.f64 1 (log.f64 (/.f64 1 base))) 1/3) (cbrt.f64 -1))
(*.f64 (cbrt.f64 -1) (cbrt.f64 (/.f64 1 (neg.f64 (log.f64 base)))))
(*.f64 (cbrt.f64 -1) (cbrt.f64 (/.f64 -1 (log.f64 base))))
(pow.f64 (/.f64 1 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base))))) 1/3)
(cbrt.f64 (/.f64 1 (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base))))))
(cbrt.f64 (/.f64 1 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base)))))
(pow.f64 (/.f64 1 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base))))) 1/3)
(cbrt.f64 (/.f64 1 (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base))))))
(cbrt.f64 (/.f64 1 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base)))))
(pow.f64 (/.f64 1 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base))))) 1/3)
(cbrt.f64 (/.f64 1 (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base))))))
(cbrt.f64 (/.f64 1 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base)))))
(pow.f64 (/.f64 1 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base))))) 1/3)
(cbrt.f64 (/.f64 1 (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base))))))
(cbrt.f64 (/.f64 1 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base)))))
(+.f64 0 (/.f64 1 (log.f64 base)))
(/.f64 1 (log.f64 base))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 1 (log.f64 base)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 1 (log.f64 base))))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (exp.f64 (/.f64 1 (log.f64 base)))))) (log.f64 (cbrt.f64 (exp.f64 (/.f64 1 (log.f64 base))))))
(*.f64 3 (log.f64 (cbrt.f64 (exp.f64 (/.f64 1 (log.f64 base))))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 1 (log.f64 base))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 1 (log.f64 base))))))
(*.f64 2 (log.f64 (sqrt.f64 (exp.f64 (/.f64 1 (log.f64 base))))))
(-.f64 (exp.f64 (log1p.f64 (/.f64 1 (log.f64 base)))) 1)
(/.f64 1 (log.f64 base))
(*.f64 1 (/.f64 1 (log.f64 base)))
(/.f64 1 (log.f64 base))
(*.f64 (/.f64 1 (cbrt.f64 (log.f64 base))) (pow.f64 (cbrt.f64 (log.f64 base)) -2))
(/.f64 1 (log.f64 base))
(*.f64 (/.f64 1 (log.f64 base)) 1)
(/.f64 1 (log.f64 base))
(*.f64 (pow.f64 (cbrt.f64 (log.f64 base)) -2) (/.f64 1 (cbrt.f64 (log.f64 base))))
(/.f64 1 (log.f64 base))
(*.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (log.f64 base)) -2)) (*.f64 (/.f64 1 (cbrt.f64 (cbrt.f64 (log.f64 base)))) (pow.f64 (cbrt.f64 (log.f64 base)) -2)))
(*.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (log.f64 base)) -2)) (/.f64 (pow.f64 (cbrt.f64 (log.f64 base)) -2) (cbrt.f64 (cbrt.f64 (log.f64 base)))))
(*.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (log.f64 base)) -2)) (pow.f64 (/.f64 1 (cbrt.f64 (cbrt.f64 (log.f64 base)))) 7))
(*.f64 (pow.f64 (log.f64 base) -1/6) (pow.f64 (cbrt.f64 (log.f64 base)) -5/2))
(*.f64 (pow.f64 (log.f64 base) -1/2) (pow.f64 (log.f64 base) -1/2))
(/.f64 1 (log.f64 base))
(*.f64 (*.f64 (pow.f64 (cbrt.f64 (log.f64 base)) -2) 1) (/.f64 1 (cbrt.f64 (log.f64 base))))
(/.f64 1 (log.f64 base))
(*.f64 (pow.f64 (cbrt.f64 (log.f64 base)) -5/2) (pow.f64 (log.f64 base) -1/6))
(*.f64 (pow.f64 (log.f64 base) -1/6) (pow.f64 (cbrt.f64 (log.f64 base)) -5/2))
(*.f64 (*.f64 (pow.f64 (cbrt.f64 (log.f64 base)) -2) (cbrt.f64 (pow.f64 (cbrt.f64 (log.f64 base)) -2))) (/.f64 1 (cbrt.f64 (cbrt.f64 (log.f64 base)))))
(*.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (log.f64 base)) -2)) (/.f64 (pow.f64 (cbrt.f64 (log.f64 base)) -2) (cbrt.f64 (cbrt.f64 (log.f64 base)))))
(*.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (log.f64 base)) -2)) (pow.f64 (/.f64 1 (cbrt.f64 (cbrt.f64 (log.f64 base)))) 7))
(/.f64 1 (log.f64 base))
(/.f64 1 (/.f64 (log.f64 base) 1))
(/.f64 1 (log.f64 base))
(/.f64 (pow.f64 (cbrt.f64 (log.f64 base)) -2) (cbrt.f64 (log.f64 base)))
(/.f64 1 (log.f64 base))
(/.f64 -1 (pow.f64 (neg.f64 (cbrt.f64 (log.f64 base))) 3))
(/.f64 1 (log.f64 base))
(/.f64 -1 (neg.f64 (log.f64 base)))
(/.f64 1 (log.f64 base))
(/.f64 (*.f64 -1 (pow.f64 (cbrt.f64 (log.f64 base)) -2)) (neg.f64 (cbrt.f64 (log.f64 base))))
(/.f64 1 (log.f64 base))
(/.f64 (*.f64 (pow.f64 (cbrt.f64 (log.f64 base)) -2) 1) (cbrt.f64 (log.f64 base)))
(/.f64 1 (log.f64 base))
(/.f64 (*.f64 (pow.f64 (cbrt.f64 (log.f64 base)) -2) -1) (neg.f64 (cbrt.f64 (log.f64 base))))
(/.f64 1 (log.f64 base))
(sqrt.f64 (pow.f64 (log.f64 base) -2))
(/.f64 1 (log.f64 base))
(log.f64 (exp.f64 (/.f64 1 (log.f64 base))))
(/.f64 1 (log.f64 base))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 1 (log.f64 base)))))
(/.f64 1 (log.f64 base))
(cbrt.f64 (pow.f64 (log.f64 base) -3))
(/.f64 1 (log.f64 base))
(expm1.f64 (log1p.f64 (/.f64 1 (log.f64 base))))
(/.f64 1 (log.f64 base))
(log1p.f64 (expm1.f64 (/.f64 1 (log.f64 base))))
(/.f64 1 (log.f64 base))
(exp.f64 (neg.f64 (log.f64 (log.f64 base))))
(/.f64 1 (log.f64 base))
(exp.f64 (*.f64 (neg.f64 (log.f64 (log.f64 base))) 1))
(/.f64 1 (log.f64 base))
(exp.f64 (*.f64 (log.f64 (log.f64 base)) -1))
(/.f64 1 (log.f64 base))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (log.f64 base))) -3))
(/.f64 1 (log.f64 base))
(exp.f64 (*.f64 (log.f64 (pow.f64 (log.f64 base) -3)) 1/3))
(/.f64 1 (log.f64 base))
(exp.f64 (*.f64 (neg.f64 (*.f64 2/3 (log.f64 (log.f64 base)))) 3/2))
(/.f64 1 (log.f64 base))
(exp.f64 (*.f64 (log.f64 (pow.f64 (log.f64 base) -1/2)) 2))
(/.f64 1 (log.f64 base))
(exp.f64 (*.f64 (*.f64 (log.f64 (cbrt.f64 (log.f64 base))) 3) -1))
(/.f64 1 (log.f64 base))
(exp.f64 (*.f64 (*.f64 (log.f64 (log.f64 base)) 1) -1))
(/.f64 1 (log.f64 base))
(exp.f64 (*.f64 (*.f64 (log.f64 (log.f64 base)) 1/3) -3))
(/.f64 1 (log.f64 base))
(exp.f64 (*.f64 (*.f64 (log.f64 (cbrt.f64 (log.f64 base))) 1) -3))
(/.f64 1 (log.f64 base))
(exp.f64 (*.f64 (*.f64 (log.f64 (cbrt.f64 (log.f64 base))) -1) 3))
(/.f64 1 (log.f64 base))
(exp.f64 (*.f64 (*.f64 (*.f64 -1/3 (log.f64 (log.f64 base))) 1) 3))
(/.f64 1 (log.f64 base))
(exp.f64 (*.f64 (*.f64 (neg.f64 (log.f64 (log.f64 base))) 1) 1))
(/.f64 1 (log.f64 base))
(exp.f64 (*.f64 (*.f64 (*.f64 -1/3 (log.f64 (log.f64 base))) 3/2) 2))
(/.f64 1 (log.f64 base))
(exp.f64 (-.f64 (neg.f64 (*.f64 2/3 (log.f64 (log.f64 base)))) (*.f64 (log.f64 (log.f64 base)) 1/3)))
(/.f64 1 (log.f64 base))
(exp.f64 (-.f64 (neg.f64 (*.f64 2/3 (log.f64 (log.f64 base)))) (*.f64 (log.f64 (cbrt.f64 (log.f64 base))) 1)))
(/.f64 1 (log.f64 base))
(exp.f64 (neg.f64 (*.f64 (log.f64 (cbrt.f64 (log.f64 base))) 3)))
(/.f64 1 (log.f64 base))
(exp.f64 (neg.f64 (*.f64 (log.f64 (log.f64 base)) 1)))
(/.f64 1 (log.f64 base))
(exp.f64 (+.f64 (*.f64 (log.f64 (cbrt.f64 (log.f64 base))) -1) (neg.f64 (*.f64 2/3 (log.f64 (log.f64 base))))))
(/.f64 1 (log.f64 base))
(exp.f64 (+.f64 (*.f64 (*.f64 -1/3 (log.f64 (log.f64 base))) 1) (neg.f64 (*.f64 2/3 (log.f64 (log.f64 base))))))
(/.f64 1 (log.f64 base))
(exp.f64 (+.f64 (neg.f64 (*.f64 2/3 (log.f64 (log.f64 base)))) (*.f64 (log.f64 (cbrt.f64 (log.f64 base))) -1)))
(/.f64 1 (log.f64 base))
(exp.f64 (+.f64 (neg.f64 (*.f64 2/3 (log.f64 (log.f64 base)))) (*.f64 (*.f64 -1/3 (log.f64 (log.f64 base))) 1)))
(/.f64 1 (log.f64 base))
(exp.f64 (+.f64 (*.f64 (*.f64 -1/3 (log.f64 (log.f64 base))) 3/2) (log.f64 (pow.f64 (log.f64 base) -1/2))))
(/.f64 1 (log.f64 base))
(exp.f64 (+.f64 (log.f64 (pow.f64 (log.f64 base) -1/2)) (*.f64 (*.f64 -1/3 (log.f64 (log.f64 base))) 3/2)))
(/.f64 1 (log.f64 base))
(exp.f64 (+.f64 (*.f64 (*.f64 -1/3 (log.f64 (log.f64 base))) 3/2) (*.f64 (*.f64 -1/3 (log.f64 (log.f64 base))) 3/2)))
(/.f64 1 (log.f64 base))
(+.f64 0 (cbrt.f64 (log.f64 base)))
(cbrt.f64 (log.f64 base))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (cbrt.f64 (log.f64 base)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (cbrt.f64 (log.f64 base))))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (exp.f64 (cbrt.f64 (log.f64 base)))))) (log.f64 (cbrt.f64 (exp.f64 (cbrt.f64 (log.f64 base))))))
(*.f64 3 (log.f64 (cbrt.f64 (exp.f64 (cbrt.f64 (log.f64 base))))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (cbrt.f64 (log.f64 base))))) (log.f64 (sqrt.f64 (exp.f64 (cbrt.f64 (log.f64 base))))))
(*.f64 2 (log.f64 (sqrt.f64 (exp.f64 (cbrt.f64 (log.f64 base))))))
(-.f64 (exp.f64 (log1p.f64 (cbrt.f64 (log.f64 base)))) 1)
(cbrt.f64 (log.f64 base))
(*.f64 1 (cbrt.f64 (log.f64 base)))
(cbrt.f64 (log.f64 base))
(*.f64 (cbrt.f64 (log.f64 base)) 1)
(cbrt.f64 (log.f64 base))
(*.f64 (cbrt.f64 (cbrt.f64 (log.f64 base))) (cbrt.f64 (pow.f64 (cbrt.f64 (log.f64 base)) 2)))
(*.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (log.f64 base)) 2)) (cbrt.f64 (cbrt.f64 (log.f64 base))))
(*.f64 (cbrt.f64 (cbrt.f64 (log.f64 base))) (cbrt.f64 (pow.f64 (cbrt.f64 (log.f64 base)) 2)))
(*.f64 (pow.f64 (log.f64 base) 1/6) (pow.f64 (log.f64 base) 1/6))
(cbrt.f64 (log.f64 base))
(/.f64 1 (/.f64 1 (cbrt.f64 (log.f64 base))))
(cbrt.f64 (log.f64 base))
(/.f64 (cbrt.f64 (log.f64 base)) 1)
(cbrt.f64 (log.f64 base))
(/.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (log.f64 base)) 2)) (/.f64 1 (cbrt.f64 (cbrt.f64 (log.f64 base)))))
(*.f64 (cbrt.f64 (cbrt.f64 (log.f64 base))) (cbrt.f64 (pow.f64 (cbrt.f64 (log.f64 base)) 2)))
(/.f64 (pow.f64 (log.f64 base) 1/6) (pow.f64 (log.f64 base) -1/6))
(/.f64 (neg.f64 (cbrt.f64 (log.f64 base))) -1)
(cbrt.f64 (log.f64 base))
(pow.f64 (log.f64 base) 1/3)
(cbrt.f64 (log.f64 base))
(pow.f64 (cbrt.f64 (log.f64 base)) 1)
(cbrt.f64 (log.f64 base))
(pow.f64 (/.f64 1 (cbrt.f64 (log.f64 base))) -1)
(cbrt.f64 (log.f64 base))
(pow.f64 (/.f64 1 (log.f64 base)) -1/3)
(cbrt.f64 (log.f64 base))
(pow.f64 (E.f64) (log.f64 (cbrt.f64 (log.f64 base))))
(cbrt.f64 (log.f64 base))
(pow.f64 (pow.f64 (cbrt.f64 (log.f64 base)) 2) 1/2)
(cbrt.f64 (log.f64 base))
(pow.f64 (pow.f64 (log.f64 base) 2) 1/6)
(cbrt.f64 (log.f64 base))
(pow.f64 (pow.f64 (log.f64 base) 3) 1/9)
(*.f64 (pow.f64 (pow.f64 (log.f64 base) 3) 1/18) (pow.f64 (pow.f64 (log.f64 base) 3) 1/18))
(pow.f64 (cbrt.f64 (cbrt.f64 (log.f64 base))) 3)
(cbrt.f64 (log.f64 base))
(pow.f64 (/.f64 1 (cbrt.f64 (cbrt.f64 (log.f64 base)))) -3)
(pow.f64 (pow.f64 (log.f64 base) 1/6) 2)
(cbrt.f64 (log.f64 base))
(pow.f64 (pow.f64 (log.f64 base) -1/6) -2)
(pow.f64 (sqrt.f64 (log.f64 base)) 2/3)
(*.f64 (pow.f64 (sqrt.f64 (log.f64 base)) 1/3) (pow.f64 (sqrt.f64 (log.f64 base)) 1/3))
(*.f64 (cbrt.f64 (sqrt.f64 (log.f64 base))) (cbrt.f64 (sqrt.f64 (log.f64 base))))
(pow.f64 (exp.f64 1/3) (log.f64 (log.f64 base)))
(cbrt.f64 (log.f64 base))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (cbrt.f64 (log.f64 base)))) 2)) (cbrt.f64 (log.f64 (cbrt.f64 (log.f64 base)))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (cbrt.f64 (log.f64 base))))) (sqrt.f64 (log.f64 (cbrt.f64 (log.f64 base)))))
(sqrt.f64 (pow.f64 (cbrt.f64 (log.f64 base)) 2))
(cbrt.f64 (log.f64 base))
(log.f64 (exp.f64 (cbrt.f64 (log.f64 base))))
(cbrt.f64 (log.f64 base))
(log.f64 (+.f64 1 (expm1.f64 (cbrt.f64 (log.f64 base)))))
(cbrt.f64 (log.f64 base))
(expm1.f64 (log1p.f64 (cbrt.f64 (log.f64 base))))
(cbrt.f64 (log.f64 base))
(log1p.f64 (expm1.f64 (cbrt.f64 (log.f64 base))))
(cbrt.f64 (log.f64 base))
(exp.f64 (log.f64 (cbrt.f64 (log.f64 base))))
(cbrt.f64 (log.f64 base))
(exp.f64 (*.f64 (log.f64 (log.f64 base)) 1/3))
(cbrt.f64 (log.f64 base))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (log.f64 base))) 1))
(cbrt.f64 (log.f64 base))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (cbrt.f64 (log.f64 base)))) 3))
(cbrt.f64 (log.f64 base))
(exp.f64 (*.f64 (*.f64 1/6 (log.f64 (log.f64 base))) 2))
(cbrt.f64 (log.f64 base))
(exp.f64 (*.f64 (*.f64 (log.f64 (cbrt.f64 (log.f64 base))) 3) 1/3))
(cbrt.f64 (log.f64 base))
(exp.f64 (*.f64 (*.f64 (log.f64 (log.f64 base)) 1) 1/3))
(cbrt.f64 (log.f64 base))
(exp.f64 (*.f64 (*.f64 (log.f64 (log.f64 base)) 1/3) 1))
(cbrt.f64 (log.f64 base))
(exp.f64 (*.f64 (*.f64 (log.f64 (cbrt.f64 (log.f64 base))) 1) 1))
(cbrt.f64 (log.f64 base))
(exp.f64 (neg.f64 (*.f64 (log.f64 (cbrt.f64 (log.f64 base))) -1)))
(cbrt.f64 (log.f64 base))
(exp.f64 (neg.f64 (*.f64 (*.f64 -1/3 (log.f64 (log.f64 base))) 1)))
(cbrt.f64 (log.f64 base))
(+.f64 0 (/.f64 (atan2.f64 im re) (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (exp.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))) (log.f64 (cbrt.f64 (exp.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))
(*.f64 3 (log.f64 (cbrt.f64 (exp.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))
(*.f64 2 (log.f64 (sqrt.f64 (exp.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))
(-.f64 (exp.f64 (log1p.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) 1)
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1)
(/.f64 (atan2.f64 im re) (log.f64 base))
(pow.f64 (E.f64) (log.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(pow.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2) 1/2)
(/.f64 (atan2.f64 im re) (log.f64 base))
(pow.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3) 1/3)
(/.f64 (atan2.f64 im re) (log.f64 base))
(pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 3)
(/.f64 (atan2.f64 im re) (log.f64 base))
(pow.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2)
(/.f64 (atan2.f64 im re) (log.f64 base))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) 2)) (cbrt.f64 (log.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))) (sqrt.f64 (log.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))
(sqrt.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2))
(/.f64 (atan2.f64 im re) (log.f64 base))
(log.f64 (exp.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(cbrt.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3))
(/.f64 (atan2.f64 im re) (log.f64 base))
(expm1.f64 (log1p.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(log1p.f64 (expm1.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(exp.f64 (log.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(exp.f64 (*.f64 (log.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 1))
(/.f64 (atan2.f64 im re) (log.f64 base))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) 1/3))
(/.f64 (atan2.f64 im re) (log.f64 base))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) 3))
(/.f64 (atan2.f64 im re) (log.f64 base))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) 2))
(/.f64 (atan2.f64 im re) (log.f64 base))
(exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 1) 1))
(/.f64 (atan2.f64 im re) (log.f64 base))
(exp.f64 (-.f64 (*.f64 (log.f64 (atan2.f64 im re)) 1) (log.f64 (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(exp.f64 (-.f64 (log.f64 (atan2.f64 im re)) (*.f64 (log.f64 (cbrt.f64 (log.f64 base))) 3)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(exp.f64 (-.f64 (*.f64 (log.f64 (atan2.f64 im re)) 1) (*.f64 (log.f64 (cbrt.f64 (log.f64 base))) 3)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(exp.f64 (-.f64 (log.f64 (atan2.f64 im re)) (*.f64 (log.f64 (log.f64 base)) 1)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(exp.f64 (-.f64 (*.f64 (log.f64 (atan2.f64 im re)) 1) (*.f64 (log.f64 (log.f64 base)) 1)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(exp.f64 (+.f64 (*.f64 (neg.f64 (log.f64 (log.f64 base))) 1) (log.f64 (atan2.f64 im re))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(exp.f64 (+.f64 (neg.f64 (log.f64 (log.f64 base))) (*.f64 (log.f64 (atan2.f64 im re)) 1)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(exp.f64 (+.f64 (*.f64 (neg.f64 (log.f64 (log.f64 base))) 1) (*.f64 (log.f64 (atan2.f64 im re)) 1)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(exp.f64 (+.f64 (*.f64 (log.f64 (atan2.f64 im re)) 1) (neg.f64 (log.f64 (log.f64 base)))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(exp.f64 (+.f64 (log.f64 (atan2.f64 im re)) (*.f64 (neg.f64 (log.f64 (log.f64 base))) 1)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(exp.f64 (+.f64 (*.f64 (log.f64 (atan2.f64 im re)) 1) (*.f64 (neg.f64 (log.f64 (log.f64 base))) 1)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(+.f64 0 (/.f64 1 (cbrt.f64 (log.f64 base))))
(cbrt.f64 (/.f64 1 (log.f64 base)))
(/.f64 1 (cbrt.f64 (log.f64 base)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 1 (cbrt.f64 (log.f64 base))))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 1 (cbrt.f64 (log.f64 base)))))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (exp.f64 (/.f64 1 (cbrt.f64 (log.f64 base))))))) (log.f64 (cbrt.f64 (exp.f64 (/.f64 1 (cbrt.f64 (log.f64 base)))))))
(*.f64 3 (log.f64 (cbrt.f64 (exp.f64 (/.f64 1 (cbrt.f64 (log.f64 base)))))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 1 (cbrt.f64 (log.f64 base)))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 1 (cbrt.f64 (log.f64 base)))))))
(*.f64 2 (log.f64 (sqrt.f64 (exp.f64 (/.f64 1 (cbrt.f64 (log.f64 base)))))))
(-.f64 (exp.f64 (log1p.f64 (/.f64 1 (cbrt.f64 (log.f64 base))))) 1)
(cbrt.f64 (/.f64 1 (log.f64 base)))
(/.f64 1 (cbrt.f64 (log.f64 base)))
(*.f64 1 (/.f64 1 (cbrt.f64 (log.f64 base))))
(cbrt.f64 (/.f64 1 (log.f64 base)))
(/.f64 1 (cbrt.f64 (log.f64 base)))
(*.f64 (/.f64 1 (cbrt.f64 (log.f64 base))) 1)
(cbrt.f64 (/.f64 1 (log.f64 base)))
(/.f64 1 (cbrt.f64 (log.f64 base)))
(*.f64 (/.f64 1 (cbrt.f64 (cbrt.f64 (log.f64 base)))) (cbrt.f64 (pow.f64 (cbrt.f64 (log.f64 base)) -2)))
(*.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (log.f64 base)) -2)) (/.f64 1 (cbrt.f64 (cbrt.f64 (log.f64 base)))))
(/.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (log.f64 base)) -2)) (cbrt.f64 (cbrt.f64 (log.f64 base))))
(*.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (log.f64 base)) -2)) (/.f64 1 (cbrt.f64 (cbrt.f64 (log.f64 base)))))
(/.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (log.f64 base)) -2)) (cbrt.f64 (cbrt.f64 (log.f64 base))))
(*.f64 (pow.f64 (log.f64 base) -1/6) (pow.f64 (log.f64 base) -1/6))
(cbrt.f64 (/.f64 1 (log.f64 base)))
(/.f64 1 (cbrt.f64 (log.f64 base)))
(*.f64 -1 (/.f64 1 (neg.f64 (cbrt.f64 (log.f64 base)))))
(cbrt.f64 (/.f64 1 (log.f64 base)))
(/.f64 1 (cbrt.f64 (log.f64 base)))
(*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (log.f64 base))) -2) (/.f64 1 (cbrt.f64 (cbrt.f64 (log.f64 base)))))
(cbrt.f64 (/.f64 1 (log.f64 base)))
(/.f64 1 (cbrt.f64 (log.f64 base)))
(pow.f64 (log.f64 base) -1/3)
(cbrt.f64 (/.f64 1 (log.f64 base)))
(/.f64 1 (cbrt.f64 (log.f64 base)))
(pow.f64 (cbrt.f64 (log.f64 base)) -1)
(cbrt.f64 (/.f64 1 (log.f64 base)))
(/.f64 1 (cbrt.f64 (log.f64 base)))
(pow.f64 (/.f64 1 (cbrt.f64 (log.f64 base))) 1)
(cbrt.f64 (/.f64 1 (log.f64 base)))
(/.f64 1 (cbrt.f64 (log.f64 base)))
(pow.f64 (/.f64 1 (log.f64 base)) 1/3)
(cbrt.f64 (/.f64 1 (log.f64 base)))
(/.f64 1 (cbrt.f64 (log.f64 base)))
(pow.f64 (E.f64) (*.f64 -1/3 (log.f64 (log.f64 base))))
(cbrt.f64 (/.f64 1 (log.f64 base)))
(/.f64 1 (cbrt.f64 (log.f64 base)))
(pow.f64 (pow.f64 (log.f64 base) -3) 1/9)
(*.f64 (pow.f64 (pow.f64 (log.f64 base) -3) 1/18) (pow.f64 (pow.f64 (log.f64 base) -3) 1/18))
(pow.f64 (pow.f64 (cbrt.f64 (log.f64 base)) 2) -1/2)
(pow.f64 (pow.f64 (cbrt.f64 (log.f64 base)) -2) 1/2)
(cbrt.f64 (/.f64 1 (log.f64 base)))
(/.f64 1 (cbrt.f64 (log.f64 base)))
(pow.f64 (pow.f64 (log.f64 base) 3) -1/9)
(*.f64 (pow.f64 (pow.f64 (log.f64 base) 3) -1/18) (pow.f64 (pow.f64 (log.f64 base) 3) -1/18))
(pow.f64 (cbrt.f64 (cbrt.f64 (log.f64 base))) -3)
(pow.f64 (/.f64 1 (cbrt.f64 (cbrt.f64 (log.f64 base)))) 3)
(cbrt.f64 (/.f64 1 (log.f64 base)))
(/.f64 1 (cbrt.f64 (log.f64 base)))
(pow.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (log.f64 base)) -2)) 3/2)
(pow.f64 (pow.f64 (log.f64 base) 1/6) -2)
(pow.f64 (pow.f64 (log.f64 base) -1/6) 2)
(cbrt.f64 (/.f64 1 (log.f64 base)))
(/.f64 1 (cbrt.f64 (log.f64 base)))
(pow.f64 (sqrt.f64 (log.f64 base)) -2/3)
(*.f64 (pow.f64 (sqrt.f64 (log.f64 base)) -1/3) (pow.f64 (sqrt.f64 (log.f64 base)) -1/3))
(*.f64 (*.f64 (pow.f64 (sqrt.f64 (log.f64 base)) -1/6) (pow.f64 (sqrt.f64 (log.f64 base)) -1/6)) (*.f64 (pow.f64 (sqrt.f64 (log.f64 base)) -1/6) (pow.f64 (sqrt.f64 (log.f64 base)) -1/6)))
(pow.f64 (pow.f64 (log.f64 base) -1/2) 2/3)
(*.f64 (pow.f64 (pow.f64 (log.f64 base) -1/2) 1/3) (pow.f64 (pow.f64 (log.f64 base) -1/2) 1/3))
(*.f64 (cbrt.f64 (pow.f64 (log.f64 base) -1/2)) (cbrt.f64 (pow.f64 (log.f64 base) -1/2)))
(pow.f64 (exp.f64 -1) (log.f64 (cbrt.f64 (log.f64 base))))
(cbrt.f64 (/.f64 1 (log.f64 base)))
(/.f64 1 (cbrt.f64 (log.f64 base)))
(pow.f64 (neg.f64 (neg.f64 (cbrt.f64 (log.f64 base)))) -1)
(cbrt.f64 (/.f64 1 (log.f64 base)))
(/.f64 1 (cbrt.f64 (log.f64 base)))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (*.f64 -1/3 (log.f64 (log.f64 base)))) 2)) (cbrt.f64 (*.f64 -1/3 (log.f64 (log.f64 base)))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (*.f64 (log.f64 (log.f64 base)) -1/3)) 2)) (cbrt.f64 (*.f64 (log.f64 (log.f64 base)) -1/3)))
(pow.f64 (exp.f64 (sqrt.f64 (*.f64 -1/3 (log.f64 (log.f64 base))))) (sqrt.f64 (*.f64 -1/3 (log.f64 (log.f64 base)))))
(pow.f64 (exp.f64 (sqrt.f64 (*.f64 (log.f64 (log.f64 base)) -1/3))) (sqrt.f64 (*.f64 (log.f64 (log.f64 base)) -1/3)))
(sqrt.f64 (pow.f64 (cbrt.f64 (log.f64 base)) -2))
(cbrt.f64 (/.f64 1 (log.f64 base)))
(/.f64 1 (cbrt.f64 (log.f64 base)))
(log.f64 (exp.f64 (/.f64 1 (cbrt.f64 (log.f64 base)))))
(cbrt.f64 (/.f64 1 (log.f64 base)))
(/.f64 1 (cbrt.f64 (log.f64 base)))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 1 (cbrt.f64 (log.f64 base))))))
(cbrt.f64 (/.f64 1 (log.f64 base)))
(/.f64 1 (cbrt.f64 (log.f64 base)))
(cbrt.f64 (/.f64 1 (log.f64 base)))
(/.f64 1 (cbrt.f64 (log.f64 base)))
(expm1.f64 (log1p.f64 (/.f64 1 (cbrt.f64 (log.f64 base)))))
(cbrt.f64 (/.f64 1 (log.f64 base)))
(/.f64 1 (cbrt.f64 (log.f64 base)))
(log1p.f64 (expm1.f64 (/.f64 1 (cbrt.f64 (log.f64 base)))))
(cbrt.f64 (/.f64 1 (log.f64 base)))
(/.f64 1 (cbrt.f64 (log.f64 base)))
(exp.f64 (*.f64 -1/3 (log.f64 (log.f64 base))))
(cbrt.f64 (/.f64 1 (log.f64 base)))
(/.f64 1 (cbrt.f64 (log.f64 base)))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (log.f64 base))) -1))
(cbrt.f64 (/.f64 1 (log.f64 base)))
(/.f64 1 (cbrt.f64 (log.f64 base)))
(exp.f64 (*.f64 (*.f64 -1/3 (log.f64 (log.f64 base))) 1))
(cbrt.f64 (/.f64 1 (log.f64 base)))
(/.f64 1 (cbrt.f64 (log.f64 base)))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (log.f64 base)) -2))) 3/2))
(pow.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (log.f64 base)) -2)) 3/2)
(exp.f64 (*.f64 (log.f64 (log.f64 base)) -1/3))
(cbrt.f64 (/.f64 1 (log.f64 base)))
(/.f64 1 (cbrt.f64 (log.f64 base)))
(exp.f64 (*.f64 (neg.f64 (log.f64 (log.f64 base))) 1/3))
(cbrt.f64 (/.f64 1 (log.f64 base)))
(/.f64 1 (cbrt.f64 (log.f64 base)))
(exp.f64 (*.f64 (*.f64 1/3 (*.f64 -1/3 (log.f64 (log.f64 base)))) 3))
(cbrt.f64 (/.f64 1 (log.f64 base)))
(/.f64 1 (cbrt.f64 (log.f64 base)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (log.f64 base) -1/6)) 2))
(cbrt.f64 (/.f64 1 (log.f64 base)))
(/.f64 1 (cbrt.f64 (log.f64 base)))
(exp.f64 (*.f64 (*.f64 (log.f64 (cbrt.f64 (log.f64 base))) 3) -1/3))
(cbrt.f64 (/.f64 1 (log.f64 base)))
(/.f64 1 (cbrt.f64 (log.f64 base)))
(exp.f64 (*.f64 (*.f64 (log.f64 (log.f64 base)) 1) -1/3))
(cbrt.f64 (/.f64 1 (log.f64 base)))
(/.f64 1 (cbrt.f64 (log.f64 base)))
(exp.f64 (*.f64 (*.f64 (log.f64 (log.f64 base)) 1/3) -1))
(cbrt.f64 (/.f64 1 (log.f64 base)))
(/.f64 1 (cbrt.f64 (log.f64 base)))
(exp.f64 (*.f64 (*.f64 (log.f64 (cbrt.f64 (log.f64 base))) 1) -1))
(cbrt.f64 (/.f64 1 (log.f64 base)))
(/.f64 1 (cbrt.f64 (log.f64 base)))
(exp.f64 (*.f64 (*.f64 (log.f64 (cbrt.f64 (log.f64 base))) -1) 1))
(cbrt.f64 (/.f64 1 (log.f64 base)))
(/.f64 1 (cbrt.f64 (log.f64 base)))
(exp.f64 (*.f64 (*.f64 (*.f64 -1/3 (log.f64 (log.f64 base))) 1) 1))
(cbrt.f64 (/.f64 1 (log.f64 base)))
(/.f64 1 (cbrt.f64 (log.f64 base)))
(exp.f64 (*.f64 (*.f64 (neg.f64 (log.f64 (log.f64 base))) 1) 1/3))
(cbrt.f64 (/.f64 1 (log.f64 base)))
(/.f64 1 (cbrt.f64 (log.f64 base)))
(exp.f64 (neg.f64 (*.f64 (log.f64 (log.f64 base)) 1/3)))
(cbrt.f64 (/.f64 1 (log.f64 base)))
(/.f64 1 (cbrt.f64 (log.f64 base)))
(exp.f64 (neg.f64 (*.f64 (log.f64 (cbrt.f64 (log.f64 base))) 1)))
(cbrt.f64 (/.f64 1 (log.f64 base)))
(/.f64 1 (cbrt.f64 (log.f64 base)))

eval144.0ms (2.4%)

Compiler

Compiled 9263 to 3995 computations (56.9% saved)

prune178.0ms (2.9%)

Pruning

21 alts after pruning (14 fresh and 7 done)

PrunedKeptTotal
New6469655
Fresh7512
Picked101
Done077
Total65421675
Error
0b
Counts
675 → 21
Alt Table
Click to see full alt table
StatusErrorProgram
33.6b
(pow.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3) 1/3)
31.3b
(pow.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/3) 3)
1.4b
(pow.f64 (/.f64 1 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re)))) 3)
30.5b
(pow.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2)
32.0b
(pow.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) -2)
1.5b
(pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 3)
0.3b
(/.f64 (atan2.f64 im re) (log.f64 base))
0.5b
(/.f64 (/.f64 1 (log.f64 base)) (/.f64 1 (atan2.f64 im re)))
0.5b
(/.f64 1 (/.f64 (log.f64 base) (atan2.f64 im re)))
0.6b
(/.f64 1 (*.f64 (/.f64 1 (atan2.f64 im re)) (log.f64 base)))
9.8b
(/.f64 1 (log.f64 (pow.f64 base (/.f64 1 (atan2.f64 im re)))))
32.6b
(/.f64 1 (exp.f64 (log.f64 (/.f64 (log.f64 base) (atan2.f64 im re)))))
5.9b
(/.f64 1 (cbrt.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) 3)))
0.4b
(*.f64 (pow.f64 (log.f64 base) -2) (*.f64 (log.f64 base) (atan2.f64 im re)))
34.1b
(*.f64 (atan2.f64 im re) (pow.f64 (pow.f64 (log.f64 base) -1/3) 3))
0.3b
(*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base)))
34.0b
(*.f64 (atan2.f64 im re) (exp.f64 (neg.f64 (log.f64 (log.f64 base)))))
0.7b
(*.f64 (atan2.f64 im re) (cbrt.f64 (pow.f64 (log.f64 base) -3)))
31.9b
(sqrt.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -2))
31.1b
(exp.f64 (log.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
5.7b
(cbrt.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3))
Compiler

Compiled 437 to 330 computations (24.5% saved)

localize15.0ms (0.3%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.1b
(/.f64 1 (atan2.f64 im re))
0.3b
(/.f64 1 (log.f64 base))
0.4b
(/.f64 (/.f64 1 (log.f64 base)) (/.f64 1 (atan2.f64 im re)))
Compiler

Compiled 31 to 15 computations (51.6% saved)

series5.0ms (0.1%)

Counts
2 → 36
Calls

15 calls:

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

rewrite49.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
965×pow1_binary64
885×add-log-exp_binary64
885×log1p-expm1-u_binary64
885×expm1-log1p-u_binary64
103×add-sqr-sqrt_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01022
120616
2259916
Stop Event
node limit
Counts
2 → 56
Calls
Call 1
Inputs
(/.f64 (/.f64 1 (log.f64 base)) (/.f64 1 (atan2.f64 im re)))
(/.f64 1 (atan2.f64 im re))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (atan2.f64 im re) (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (log.f64 base)) (atan2.f64 im re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (log.f64 base) -2)) (*.f64 (/.f64 1 (cbrt.f64 (log.f64 base))) (atan2.f64 im re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (log.f64 base) -1/2) (*.f64 (pow.f64 (log.f64 base) -1/2) (atan2.f64 im re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -1 (log.f64 base)) (/.f64 1 (/.f64 -1 (atan2.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (log.f64 base) -2)) 1) (/.f64 (/.f64 1 (cbrt.f64 (log.f64 base))) (/.f64 1 (atan2.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (log.f64 base) -1/2) 1) (/.f64 (pow.f64 (log.f64 base) -1/2) (/.f64 1 (atan2.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cbrt.f64 (pow.f64 (atan2.f64 im re) -2))) (/.f64 (/.f64 1 (log.f64 base)) (/.f64 1 (cbrt.f64 (atan2.f64 im re)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (log.f64 base) -2)) (cbrt.f64 (pow.f64 (atan2.f64 im re) -2))) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (log.f64 base) -1/2) (cbrt.f64 (pow.f64 (atan2.f64 im re) -2))) (/.f64 (pow.f64 (log.f64 base) -1/2) (/.f64 1 (cbrt.f64 (atan2.f64 im re)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (atan2.f64 im re) -1/2)) (/.f64 (/.f64 1 (log.f64 base)) (pow.f64 (atan2.f64 im re) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (log.f64 base) -2)) (pow.f64 (atan2.f64 im re) -1/2)) (/.f64 (/.f64 1 (cbrt.f64 (log.f64 base))) (pow.f64 (atan2.f64 im re) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (log.f64 base)) -1) (neg.f64 (atan2.f64 im re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 1 (log.f64 base)) (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2)) (cbrt.f64 (atan2.f64 im re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 1 (log.f64 base)) (sqrt.f64 (atan2.f64 im re))) (sqrt.f64 (atan2.f64 im re)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (/.f64 1 (log.f64 base)) (/.f64 -1 (atan2.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (/.f64 1 (log.f64 base)) 3) (pow.f64 (/.f64 1 (atan2.f64 im re)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 1 (atan2.f64 im re)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 1 (atan2.f64 im re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (atan2.f64 im re)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cbrt.f64 (atan2.f64 im re))) (cbrt.f64 (pow.f64 (atan2.f64 im re) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (atan2.f64 im re) -2)) (/.f64 1 (cbrt.f64 (atan2.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (atan2.f64 im re) -1/2) (pow.f64 (atan2.f64 im re) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (/.f64 -1 (atan2.f64 im re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) -1) (pow.f64 (cbrt.f64 (atan2.f64 im re)) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (atan2.f64 im re)) -1) (pow.f64 (sqrt.f64 (atan2.f64 im re)) -1))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (atan2.f64 im re) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1 (atan2.f64 im re)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 1 (atan2.f64 im re)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1 (cbrt.f64 (atan2.f64 im re))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (atan2.f64 im re) -1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (atan2.f64 im re) -2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 1 (atan2.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 1 (atan2.f64 im re)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 1 (atan2.f64 im re)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 1 (atan2.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 1 (atan2.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (neg.f64 (log.f64 (atan2.f64 im re))))))))

simplify75.0ms (1.2%)

Algorithm
egg-herbie
Rules
615×unswap-sqr_binary64
591×fma-def_binary64
496×associate-/r*_binary64
483×associate-/l*_binary64
396×associate-*l/_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0142964
1349929
21239923
37446923
Stop Event
node limit
Counts
92 → 69
Calls
Call 1
Inputs
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(-.f64 (exp.f64 (log1p.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) 1)
(*.f64 1 (/.f64 (atan2.f64 im re) (log.f64 base)))
(*.f64 (/.f64 1 (log.f64 base)) (atan2.f64 im re))
(*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base)))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1)
(*.f64 (cbrt.f64 (pow.f64 (log.f64 base) -2)) (*.f64 (/.f64 1 (cbrt.f64 (log.f64 base))) (atan2.f64 im re)))
(*.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(*.f64 (pow.f64 (log.f64 base) -1/2) (*.f64 (pow.f64 (log.f64 base) -1/2) (atan2.f64 im re)))
(*.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(*.f64 (/.f64 -1 (log.f64 base)) (/.f64 1 (/.f64 -1 (atan2.f64 im re))))
(*.f64 (/.f64 (cbrt.f64 (pow.f64 (log.f64 base) -2)) 1) (/.f64 (/.f64 1 (cbrt.f64 (log.f64 base))) (/.f64 1 (atan2.f64 im re))))
(*.f64 (/.f64 (pow.f64 (log.f64 base) -1/2) 1) (/.f64 (pow.f64 (log.f64 base) -1/2) (/.f64 1 (atan2.f64 im re))))
(*.f64 (/.f64 1 (cbrt.f64 (pow.f64 (atan2.f64 im re) -2))) (/.f64 (/.f64 1 (log.f64 base)) (/.f64 1 (cbrt.f64 (atan2.f64 im re)))))
(*.f64 (/.f64 (cbrt.f64 (pow.f64 (log.f64 base) -2)) (cbrt.f64 (pow.f64 (atan2.f64 im re) -2))) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(*.f64 (/.f64 (pow.f64 (log.f64 base) -1/2) (cbrt.f64 (pow.f64 (atan2.f64 im re) -2))) (/.f64 (pow.f64 (log.f64 base) -1/2) (/.f64 1 (cbrt.f64 (atan2.f64 im re)))))
(*.f64 (/.f64 1 (pow.f64 (atan2.f64 im re) -1/2)) (/.f64 (/.f64 1 (log.f64 base)) (pow.f64 (atan2.f64 im re) -1/2)))
(*.f64 (/.f64 (cbrt.f64 (pow.f64 (log.f64 base) -2)) (pow.f64 (atan2.f64 im re) -1/2)) (/.f64 (/.f64 1 (cbrt.f64 (log.f64 base))) (pow.f64 (atan2.f64 im re) -1/2)))
(*.f64 (/.f64 (/.f64 1 (log.f64 base)) -1) (neg.f64 (atan2.f64 im re)))
(*.f64 (*.f64 (/.f64 1 (log.f64 base)) (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2)) (cbrt.f64 (atan2.f64 im re)))
(*.f64 (*.f64 (/.f64 1 (log.f64 base)) (sqrt.f64 (atan2.f64 im re))) (sqrt.f64 (atan2.f64 im re)))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1)
(pow.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3) 1/3)
(pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 3)
(pow.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2)
(pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -1)
(neg.f64 (/.f64 (/.f64 1 (log.f64 base)) (/.f64 -1 (atan2.f64 im re))))
(sqrt.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2))
(log.f64 (exp.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))
(cbrt.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3))
(cbrt.f64 (/.f64 (pow.f64 (/.f64 1 (log.f64 base)) 3) (pow.f64 (/.f64 1 (atan2.f64 im re)) 3)))
(expm1.f64 (log1p.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(log1p.f64 (expm1.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(exp.f64 (log.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(-.f64 (exp.f64 (log1p.f64 (/.f64 1 (atan2.f64 im re)))) 1)
(*.f64 1 (/.f64 1 (atan2.f64 im re)))
(*.f64 (/.f64 1 (atan2.f64 im re)) 1)
(*.f64 (/.f64 1 (cbrt.f64 (atan2.f64 im re))) (cbrt.f64 (pow.f64 (atan2.f64 im re) -2)))
(*.f64 (cbrt.f64 (pow.f64 (atan2.f64 im re) -2)) (/.f64 1 (cbrt.f64 (atan2.f64 im re))))
(*.f64 (pow.f64 (atan2.f64 im re) -1/2) (pow.f64 (atan2.f64 im re) -1/2))
(*.f64 -1 (/.f64 -1 (atan2.f64 im re)))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) -1) (pow.f64 (cbrt.f64 (atan2.f64 im re)) -1))
(*.f64 (pow.f64 (sqrt.f64 (atan2.f64 im re)) -1) (pow.f64 (sqrt.f64 (atan2.f64 im re)) -1))
(pow.f64 (atan2.f64 im re) -1)
(pow.f64 (/.f64 1 (atan2.f64 im re)) 1)
(pow.f64 (pow.f64 (/.f64 1 (atan2.f64 im re)) 3) 1/3)
(pow.f64 (/.f64 1 (cbrt.f64 (atan2.f64 im re))) 3)
(pow.f64 (pow.f64 (atan2.f64 im re) -1/2) 2)
(sqrt.f64 (pow.f64 (atan2.f64 im re) -2))
(log.f64 (exp.f64 (/.f64 1 (atan2.f64 im re))))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 1 (atan2.f64 im re)))))
(cbrt.f64 (pow.f64 (/.f64 1 (atan2.f64 im re)) 3))
(expm1.f64 (log1p.f64 (/.f64 1 (atan2.f64 im re))))
(log1p.f64 (expm1.f64 (/.f64 1 (atan2.f64 im re))))
(exp.f64 (neg.f64 (log.f64 (atan2.f64 im re))))
Outputs
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(-.f64 (exp.f64 (log1p.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) 1)
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 1 (/.f64 (atan2.f64 im re) (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 1 (log.f64 base)) (atan2.f64 im re))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1)
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (cbrt.f64 (pow.f64 (log.f64 base) -2)) (*.f64 (/.f64 1 (cbrt.f64 (log.f64 base))) (atan2.f64 im re)))
(*.f64 (cbrt.f64 (pow.f64 (log.f64 base) -2)) (/.f64 (*.f64 1 (atan2.f64 im re)) (cbrt.f64 (log.f64 base))))
(*.f64 (cbrt.f64 (pow.f64 (log.f64 base) -2)) (/.f64 (atan2.f64 im re) (cbrt.f64 (log.f64 base))))
(*.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (pow.f64 (log.f64 base) -1/2) (*.f64 (pow.f64 (log.f64 base) -1/2) (atan2.f64 im re)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 -1 (log.f64 base)) (/.f64 1 (/.f64 -1 (atan2.f64 im re))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (cbrt.f64 (pow.f64 (log.f64 base) -2)) 1) (/.f64 (/.f64 1 (cbrt.f64 (log.f64 base))) (/.f64 1 (atan2.f64 im re))))
(*.f64 (cbrt.f64 (pow.f64 (log.f64 base) -2)) (/.f64 (*.f64 1 (atan2.f64 im re)) (cbrt.f64 (log.f64 base))))
(*.f64 (cbrt.f64 (pow.f64 (log.f64 base) -2)) (/.f64 (atan2.f64 im re) (cbrt.f64 (log.f64 base))))
(*.f64 (/.f64 (pow.f64 (log.f64 base) -1/2) 1) (/.f64 (pow.f64 (log.f64 base) -1/2) (/.f64 1 (atan2.f64 im re))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 1 (cbrt.f64 (pow.f64 (atan2.f64 im re) -2))) (/.f64 (/.f64 1 (log.f64 base)) (/.f64 1 (cbrt.f64 (atan2.f64 im re)))))
(*.f64 (/.f64 1 (cbrt.f64 (pow.f64 (atan2.f64 im re) -2))) (*.f64 (/.f64 (/.f64 1 (log.f64 base)) 1) (cbrt.f64 (atan2.f64 im re))))
(*.f64 (/.f64 (/.f64 1 (log.f64 base)) (cbrt.f64 (pow.f64 (atan2.f64 im re) -2))) (cbrt.f64 (atan2.f64 im re)))
(/.f64 (cbrt.f64 (atan2.f64 im re)) (*.f64 (cbrt.f64 (pow.f64 (atan2.f64 im re) -2)) (log.f64 base)))
(*.f64 (/.f64 (cbrt.f64 (pow.f64 (log.f64 base) -2)) (cbrt.f64 (pow.f64 (atan2.f64 im re) -2))) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(*.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (/.f64 (cbrt.f64 (pow.f64 (log.f64 base) -2)) (cbrt.f64 (pow.f64 (atan2.f64 im re) -2))))
(*.f64 (/.f64 (pow.f64 (log.f64 base) -1/2) (cbrt.f64 (pow.f64 (atan2.f64 im re) -2))) (/.f64 (pow.f64 (log.f64 base) -1/2) (/.f64 1 (cbrt.f64 (atan2.f64 im re)))))
(*.f64 (/.f64 1 (cbrt.f64 (pow.f64 (atan2.f64 im re) -2))) (*.f64 (/.f64 (/.f64 1 (log.f64 base)) 1) (cbrt.f64 (atan2.f64 im re))))
(*.f64 (/.f64 (/.f64 1 (log.f64 base)) (cbrt.f64 (pow.f64 (atan2.f64 im re) -2))) (cbrt.f64 (atan2.f64 im re)))
(/.f64 (cbrt.f64 (atan2.f64 im re)) (*.f64 (cbrt.f64 (pow.f64 (atan2.f64 im re) -2)) (log.f64 base)))
(*.f64 (/.f64 1 (pow.f64 (atan2.f64 im re) -1/2)) (/.f64 (/.f64 1 (log.f64 base)) (pow.f64 (atan2.f64 im re) -1/2)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (cbrt.f64 (pow.f64 (log.f64 base) -2)) (pow.f64 (atan2.f64 im re) -1/2)) (/.f64 (/.f64 1 (cbrt.f64 (log.f64 base))) (pow.f64 (atan2.f64 im re) -1/2)))
(*.f64 (cbrt.f64 (pow.f64 (log.f64 base) -2)) (/.f64 (*.f64 1 (atan2.f64 im re)) (cbrt.f64 (log.f64 base))))
(*.f64 (cbrt.f64 (pow.f64 (log.f64 base) -2)) (/.f64 (atan2.f64 im re) (cbrt.f64 (log.f64 base))))
(*.f64 (/.f64 (/.f64 1 (log.f64 base)) -1) (neg.f64 (atan2.f64 im re)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (*.f64 (/.f64 1 (log.f64 base)) (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2)) (cbrt.f64 (atan2.f64 im re)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (*.f64 (/.f64 1 (log.f64 base)) (sqrt.f64 (atan2.f64 im re))) (sqrt.f64 (atan2.f64 im re)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1)
(/.f64 (atan2.f64 im re) (log.f64 base))
(pow.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3) 1/3)
(/.f64 (atan2.f64 im re) (log.f64 base))
(pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 3)
(/.f64 (atan2.f64 im re) (log.f64 base))
(pow.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2)
(/.f64 (atan2.f64 im re) (log.f64 base))
(pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -1)
(/.f64 (atan2.f64 im re) (log.f64 base))
(neg.f64 (/.f64 (/.f64 1 (log.f64 base)) (/.f64 -1 (atan2.f64 im re))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(sqrt.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2))
(/.f64 (atan2.f64 im re) (log.f64 base))
(log.f64 (exp.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(cbrt.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3))
(/.f64 (atan2.f64 im re) (log.f64 base))
(cbrt.f64 (/.f64 (pow.f64 (/.f64 1 (log.f64 base)) 3) (pow.f64 (/.f64 1 (atan2.f64 im re)) 3)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(expm1.f64 (log1p.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(log1p.f64 (expm1.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(exp.f64 (log.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(-.f64 (exp.f64 (log1p.f64 (/.f64 1 (atan2.f64 im re)))) 1)
(/.f64 1 (atan2.f64 im re))
(*.f64 1 (/.f64 1 (atan2.f64 im re)))
(/.f64 1 (atan2.f64 im re))
(*.f64 (/.f64 1 (atan2.f64 im re)) 1)
(/.f64 1 (atan2.f64 im re))
(*.f64 (/.f64 1 (cbrt.f64 (atan2.f64 im re))) (cbrt.f64 (pow.f64 (atan2.f64 im re) -2)))
(*.f64 (cbrt.f64 (pow.f64 (atan2.f64 im re) -2)) (/.f64 1 (cbrt.f64 (atan2.f64 im re))))
(/.f64 (cbrt.f64 (pow.f64 (atan2.f64 im re) -2)) (cbrt.f64 (atan2.f64 im re)))
(*.f64 (cbrt.f64 (pow.f64 (atan2.f64 im re) -2)) (/.f64 1 (cbrt.f64 (atan2.f64 im re))))
(/.f64 (cbrt.f64 (pow.f64 (atan2.f64 im re) -2)) (cbrt.f64 (atan2.f64 im re)))
(*.f64 (pow.f64 (atan2.f64 im re) -1/2) (pow.f64 (atan2.f64 im re) -1/2))
(/.f64 1 (atan2.f64 im re))
(*.f64 -1 (/.f64 -1 (atan2.f64 im re)))
(/.f64 1 (atan2.f64 im re))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) -1) (pow.f64 (cbrt.f64 (atan2.f64 im re)) -1))
(/.f64 1 (atan2.f64 im re))
(*.f64 (pow.f64 (sqrt.f64 (atan2.f64 im re)) -1) (pow.f64 (sqrt.f64 (atan2.f64 im re)) -1))
(/.f64 1 (atan2.f64 im re))
(pow.f64 (atan2.f64 im re) -1)
(/.f64 1 (atan2.f64 im re))
(pow.f64 (/.f64 1 (atan2.f64 im re)) 1)
(/.f64 1 (atan2.f64 im re))
(pow.f64 (pow.f64 (/.f64 1 (atan2.f64 im re)) 3) 1/3)
(/.f64 1 (atan2.f64 im re))
(pow.f64 (/.f64 1 (cbrt.f64 (atan2.f64 im re))) 3)
(/.f64 1 (atan2.f64 im re))
(pow.f64 (pow.f64 (atan2.f64 im re) -1/2) 2)
(/.f64 1 (atan2.f64 im re))
(sqrt.f64 (pow.f64 (atan2.f64 im re) -2))
(/.f64 1 (atan2.f64 im re))
(log.f64 (exp.f64 (/.f64 1 (atan2.f64 im re))))
(/.f64 1 (atan2.f64 im re))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 1 (atan2.f64 im re)))))
(/.f64 1 (atan2.f64 im re))
(cbrt.f64 (pow.f64 (/.f64 1 (atan2.f64 im re)) 3))
(/.f64 1 (atan2.f64 im re))
(expm1.f64 (log1p.f64 (/.f64 1 (atan2.f64 im re))))
(/.f64 1 (atan2.f64 im re))
(log1p.f64 (expm1.f64 (/.f64 1 (atan2.f64 im re))))
(/.f64 1 (atan2.f64 im re))
(exp.f64 (neg.f64 (log.f64 (atan2.f64 im re))))
(/.f64 1 (atan2.f64 im re))

localize14.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.1b
(/.f64 1 (atan2.f64 im re))
0.4b
(*.f64 (/.f64 1 (atan2.f64 im re)) (log.f64 base))
0.5b
(/.f64 1 (*.f64 (/.f64 1 (atan2.f64 im re)) (log.f64 base)))
Compiler

Compiled 35 to 16 computations (54.3% saved)

series5.0ms (0.1%)

Counts
2 → 72
Calls

18 calls:

TimeVariablePointExpression
1.0ms
base
@inf
(*.f64 (/.f64 1 (atan2.f64 im re)) (log.f64 base))
0.0ms
im
@0
(/.f64 1 (*.f64 (/.f64 1 (atan2.f64 im re)) (log.f64 base)))
0.0ms
im
@inf
(/.f64 1 (*.f64 (/.f64 1 (atan2.f64 im re)) (log.f64 base)))
0.0ms
base
@inf
(/.f64 1 (*.f64 (/.f64 1 (atan2.f64 im re)) (log.f64 base)))
0.0ms
base
@-inf
(/.f64 1 (*.f64 (/.f64 1 (atan2.f64 im re)) (log.f64 base)))

rewrite48.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
904×pow1_binary64
827×add-log-exp_binary64
827×log1p-expm1-u_binary64
827×expm1-log1p-u_binary64
807×add-exp-log_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01021
119918
2240018
Stop Event
node limit
Counts
2 → 53
Calls
Call 1
Inputs
(/.f64 1 (*.f64 (/.f64 1 (atan2.f64 im re)) (log.f64 base)))
(*.f64 (/.f64 1 (atan2.f64 im re)) (log.f64 base))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (/.f64 (atan2.f64 im re) (log.f64 base))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (atan2.f64 im re) (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (atan2.f64 im re) (pow.f64 (log.f64 base) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (/.f64 1 (/.f64 (neg.f64 (log.f64 base)) (atan2.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (log.f64 base) -1) (atan2.f64 im re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) 2) -1) (pow.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) -1) (pow.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (log.f64 base)) (atan2.f64 im re))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (/.f64 (log.f64 base) (atan2.f64 im re))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (atan2.f64 im re) (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 1 (atan2.f64 im re)) (/.f64 1 (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (log.f64 base) (atan2.f64 im re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (cbrt.f64 (log.f64 base)) 2) (/.f64 (atan2.f64 im re) (cbrt.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) 2) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (log.f64 base)) (/.f64 (atan2.f64 im re) (sqrt.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (neg.f64 (log.f64 base)) (atan2.f64 im re)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (log.f64 base)) (neg.f64 (atan2.f64 im re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (log.f64 base) (sqrt.f64 (atan2.f64 im re))) (sqrt.f64 (atan2.f64 im re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (log.f64 base) 1) (atan2.f64 im re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (log.f64 base) (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2)) (cbrt.f64 (atan2.f64 im re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -1 (log.f64 base)) (neg.f64 (atan2.f64 im re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (log.f64 base) -1) (neg.f64 (atan2.f64 im re)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 base (/.f64 1 (atan2.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (log.f64 base) 3) (pow.f64 (atan2.f64 im re) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (/.f64 1 (atan2.f64 im re)) 3) (pow.f64 (log.f64 base) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (log.f64 base) 3) (pow.f64 (/.f64 1 (atan2.f64 im re)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (log.f64 base) (atan2.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (log.f64 base) (atan2.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (log.f64 base) (atan2.f64 im re))))))))

simplify52.0ms (0.9%)

Algorithm
egg-herbie
Rules
784×log-prod_binary64
718×log-div_binary64
612×fma-neg_binary64
387×times-frac_binary64
366×unswap-sqr_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01281238
12871222
210151222
360191222
Stop Event
node limit
Counts
125 → 62
Calls
Call 1
Inputs
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (log.f64 base) (atan2.f64 im re))
(/.f64 (log.f64 base) (atan2.f64 im re))
(/.f64 (log.f64 base) (atan2.f64 im re))
(/.f64 (log.f64 base) (atan2.f64 im re))
(/.f64 (log.f64 base) (atan2.f64 im re))
(/.f64 (log.f64 base) (atan2.f64 im re))
(/.f64 (log.f64 base) (atan2.f64 im re))
(/.f64 (log.f64 base) (atan2.f64 im re))
(/.f64 (log.f64 base) (atan2.f64 im re))
(/.f64 (log.f64 base) (atan2.f64 im re))
(/.f64 (log.f64 base) (atan2.f64 im re))
(/.f64 (log.f64 base) (atan2.f64 im re))
(/.f64 (log.f64 base) (atan2.f64 im re))
(/.f64 (log.f64 base) (atan2.f64 im re))
(/.f64 (log.f64 base) (atan2.f64 im re))
(/.f64 (log.f64 base) (atan2.f64 im re))
(/.f64 (log.f64 base) (atan2.f64 im re))
(/.f64 (log.f64 base) (atan2.f64 im re))
(/.f64 (log.f64 base) (atan2.f64 im re))
(/.f64 (log.f64 base) (atan2.f64 im re))
(/.f64 (log.f64 base) (atan2.f64 im re))
(/.f64 (log.f64 base) (atan2.f64 im re))
(/.f64 (log.f64 base) (atan2.f64 im re))
(/.f64 (log.f64 base) (atan2.f64 im re))
(/.f64 (log.f64 base) (atan2.f64 im re))
(/.f64 (log.f64 base) (atan2.f64 im re))
(/.f64 (log.f64 base) (atan2.f64 im re))
(/.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 -1 (/.f64 (log.f64 (/.f64 1 base)) (atan2.f64 im re)))
(*.f64 -1 (/.f64 (log.f64 (/.f64 1 base)) (atan2.f64 im re)))
(*.f64 -1 (/.f64 (log.f64 (/.f64 1 base)) (atan2.f64 im re)))
(*.f64 -1 (/.f64 (log.f64 (/.f64 1 base)) (atan2.f64 im re)))
(/.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) (atan2.f64 im re))
(/.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) (atan2.f64 im re))
(/.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) (atan2.f64 im re))
(/.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) (atan2.f64 im re))
(-.f64 (+.f64 1 (/.f64 (atan2.f64 im re) (log.f64 base))) 1)
(*.f64 1 (/.f64 (atan2.f64 im re) (log.f64 base)))
(*.f64 (atan2.f64 im re) (pow.f64 (log.f64 base) -1))
(*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base)))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1)
(*.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(*.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(*.f64 -1 (/.f64 1 (/.f64 (neg.f64 (log.f64 base)) (atan2.f64 im re))))
(*.f64 (pow.f64 (log.f64 base) -1) (atan2.f64 im re))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) 2) -1) (pow.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) -1))
(*.f64 (pow.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) -1) (pow.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) -1))
(*.f64 (/.f64 1 (log.f64 base)) (atan2.f64 im re))
(pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -1)
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1)
(pow.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3) 1/3)
(pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 3)
(pow.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2)
(sqrt.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -2))
(log.f64 (exp.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(cbrt.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3))
(expm1.f64 (log1p.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(log1p.f64 (expm1.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(exp.f64 (log.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(-.f64 (+.f64 1 (/.f64 (log.f64 base) (atan2.f64 im re))) 1)
(/.f64 1 (/.f64 (atan2.f64 im re) (log.f64 base)))
(/.f64 (/.f64 1 (atan2.f64 im re)) (/.f64 1 (log.f64 base)))
(/.f64 (log.f64 base) (atan2.f64 im re))
(/.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) 1)
(/.f64 (pow.f64 (cbrt.f64 (log.f64 base)) 2) (/.f64 (atan2.f64 im re) (cbrt.f64 (log.f64 base))))
(/.f64 (pow.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) 2) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 (sqrt.f64 (log.f64 base)) (/.f64 (atan2.f64 im re) (sqrt.f64 (log.f64 base))))
(/.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 (/.f64 (neg.f64 (log.f64 base)) (atan2.f64 im re)) -1)
(/.f64 (neg.f64 (log.f64 base)) (neg.f64 (atan2.f64 im re)))
(/.f64 (/.f64 (log.f64 base) (sqrt.f64 (atan2.f64 im re))) (sqrt.f64 (atan2.f64 im re)))
(/.f64 (/.f64 (log.f64 base) 1) (atan2.f64 im re))
(/.f64 (/.f64 (log.f64 base) (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2)) (cbrt.f64 (atan2.f64 im re)))
(/.f64 (*.f64 -1 (log.f64 base)) (neg.f64 (atan2.f64 im re)))
(/.f64 (*.f64 (log.f64 base) -1) (neg.f64 (atan2.f64 im re)))
(pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) 1)
(pow.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) 3) 1/3)
(pow.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) 3)
(pow.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) 2)
(sqrt.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) 2))
(log.f64 (pow.f64 base (/.f64 1 (atan2.f64 im re))))
(cbrt.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) 3))
(cbrt.f64 (/.f64 (pow.f64 (log.f64 base) 3) (pow.f64 (atan2.f64 im re) 3)))
(cbrt.f64 (*.f64 (pow.f64 (/.f64 1 (atan2.f64 im re)) 3) (pow.f64 (log.f64 base) 3)))
(cbrt.f64 (*.f64 (pow.f64 (log.f64 base) 3) (pow.f64 (/.f64 1 (atan2.f64 im re)) 3)))
(expm1.f64 (log1p.f64 (/.f64 (log.f64 base) (atan2.f64 im re))))
(log1p.f64 (expm1.f64 (/.f64 (log.f64 base) (atan2.f64 im re))))
(exp.f64 (log.f64 (/.f64 (log.f64 base) (atan2.f64 im re))))
Outputs
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))))
(/.f64 (log.f64 base) (atan2.f64 im re))
(/.f64 (log.f64 base) (atan2.f64 im re))
(/.f64 (log.f64 base) (atan2.f64 im re))
(/.f64 (log.f64 base) (atan2.f64 im re))
(/.f64 (log.f64 base) (atan2.f64 im re))
(/.f64 (log.f64 base) (atan2.f64 im re))
(/.f64 (log.f64 base) (atan2.f64 im re))
(/.f64 (log.f64 base) (atan2.f64 im re))
(/.f64 (log.f64 base) (atan2.f64 im re))
(/.f64 (log.f64 base) (atan2.f64 im re))
(/.f64 (log.f64 base) (atan2.f64 im re))
(/.f64 (log.f64 base) (atan2.f64 im re))
(/.f64 (log.f64 base) (atan2.f64 im re))
(/.f64 (log.f64 base) (atan2.f64 im re))
(/.f64 (log.f64 base) (atan2.f64 im re))
(/.f64 (log.f64 base) (atan2.f64 im re))
(/.f64 (log.f64 base) (atan2.f64 im re))
(/.f64 (log.f64 base) (atan2.f64 im re))
(/.f64 (log.f64 base) (atan2.f64 im re))
(/.f64 (log.f64 base) (atan2.f64 im re))
(/.f64 (log.f64 base) (atan2.f64 im re))
(/.f64 (log.f64 base) (atan2.f64 im re))
(/.f64 (log.f64 base) (atan2.f64 im re))
(/.f64 (log.f64 base) (atan2.f64 im re))
(/.f64 (log.f64 base) (atan2.f64 im re))
(/.f64 (log.f64 base) (atan2.f64 im re))
(/.f64 (log.f64 base) (atan2.f64 im re))
(/.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 -1 (/.f64 (log.f64 (/.f64 1 base)) (atan2.f64 im re)))
(/.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 -1 (/.f64 (log.f64 (/.f64 1 base)) (atan2.f64 im re)))
(/.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 -1 (/.f64 (log.f64 (/.f64 1 base)) (atan2.f64 im re)))
(/.f64 (log.f64 base) (atan2.f64 im re))
(*.f64 -1 (/.f64 (log.f64 (/.f64 1 base)) (atan2.f64 im re)))
(/.f64 (log.f64 base) (atan2.f64 im re))
(/.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) (atan2.f64 im re))
(/.f64 (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))) (atan2.f64 im re))
(/.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))) (atan2.f64 im re))
(/.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) (atan2.f64 im re))
(/.f64 (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))) (atan2.f64 im re))
(/.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))) (atan2.f64 im re))
(/.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) (atan2.f64 im re))
(/.f64 (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))) (atan2.f64 im re))
(/.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))) (atan2.f64 im re))
(/.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) (atan2.f64 im re))
(/.f64 (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))) (atan2.f64 im re))
(/.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))) (atan2.f64 im re))
(-.f64 (+.f64 1 (/.f64 (atan2.f64 im re) (log.f64 base))) 1)
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 1 (/.f64 (atan2.f64 im re) (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (atan2.f64 im re) (pow.f64 (log.f64 base) -1))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1)
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 -1 (/.f64 1 (/.f64 (neg.f64 (log.f64 base)) (atan2.f64 im re))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (pow.f64 (log.f64 base) -1) (atan2.f64 im re))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) 2) -1) (pow.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) -1))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (pow.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) -1) (pow.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) -1))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 1 (log.f64 base)) (atan2.f64 im re))
(/.f64 (atan2.f64 im re) (log.f64 base))
(pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -1)
(/.f64 (atan2.f64 im re) (log.f64 base))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1)
(/.f64 (atan2.f64 im re) (log.f64 base))
(pow.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3) 1/3)
(/.f64 (atan2.f64 im re) (log.f64 base))
(pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 3)
(/.f64 (atan2.f64 im re) (log.f64 base))
(pow.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2)
(/.f64 (atan2.f64 im re) (log.f64 base))
(sqrt.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -2))
(/.f64 (atan2.f64 im re) (log.f64 base))
(log.f64 (exp.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(cbrt.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3))
(/.f64 (atan2.f64 im re) (log.f64 base))
(expm1.f64 (log1p.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(log1p.f64 (expm1.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(exp.f64 (log.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(-.f64 (+.f64 1 (/.f64 (log.f64 base) (atan2.f64 im re))) 1)
(/.f64 (log.f64 base) (atan2.f64 im re))
(/.f64 1 (/.f64 (atan2.f64 im re) (log.f64 base)))
(/.f64 (log.f64 base) (atan2.f64 im re))
(/.f64 (/.f64 1 (atan2.f64 im re)) (/.f64 1 (log.f64 base)))
(/.f64 (log.f64 base) (atan2.f64 im re))
(/.f64 (log.f64 base) (atan2.f64 im re))
(/.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) 1)
(/.f64 (log.f64 base) (atan2.f64 im re))
(/.f64 (pow.f64 (cbrt.f64 (log.f64 base)) 2) (/.f64 (atan2.f64 im re) (cbrt.f64 (log.f64 base))))
(/.f64 (log.f64 base) (atan2.f64 im re))
(/.f64 (pow.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) 2) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 (sqrt.f64 (log.f64 base)) (/.f64 (atan2.f64 im re) (sqrt.f64 (log.f64 base))))
(/.f64 (log.f64 base) (atan2.f64 im re))
(/.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 (/.f64 (neg.f64 (log.f64 base)) (atan2.f64 im re)) -1)
(/.f64 (log.f64 base) (atan2.f64 im re))
(/.f64 (neg.f64 (log.f64 base)) (neg.f64 (atan2.f64 im re)))
(/.f64 (log.f64 base) (atan2.f64 im re))
(/.f64 (/.f64 (log.f64 base) (sqrt.f64 (atan2.f64 im re))) (sqrt.f64 (atan2.f64 im re)))
(/.f64 (log.f64 base) (atan2.f64 im re))
(/.f64 (/.f64 (log.f64 base) 1) (atan2.f64 im re))
(/.f64 (log.f64 base) (atan2.f64 im re))
(/.f64 (/.f64 (log.f64 base) (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2)) (cbrt.f64 (atan2.f64 im re)))
(/.f64 (log.f64 base) (atan2.f64 im re))
(/.f64 (*.f64 -1 (log.f64 base)) (neg.f64 (atan2.f64 im re)))
(/.f64 (log.f64 base) (atan2.f64 im re))
(/.f64 (*.f64 (log.f64 base) -1) (neg.f64 (atan2.f64 im re)))
(/.f64 (log.f64 base) (atan2.f64 im re))
(pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) 1)
(/.f64 (log.f64 base) (atan2.f64 im re))
(pow.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) 3) 1/3)
(/.f64 (log.f64 base) (atan2.f64 im re))
(pow.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) 3)
(/.f64 (log.f64 base) (atan2.f64 im re))
(pow.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) 2)
(/.f64 (log.f64 base) (atan2.f64 im re))
(sqrt.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) 2))
(/.f64 (log.f64 base) (atan2.f64 im re))
(log.f64 (pow.f64 base (/.f64 1 (atan2.f64 im re))))
(/.f64 (log.f64 base) (atan2.f64 im re))
(cbrt.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) 3))
(/.f64 (log.f64 base) (atan2.f64 im re))
(cbrt.f64 (/.f64 (pow.f64 (log.f64 base) 3) (pow.f64 (atan2.f64 im re) 3)))
(/.f64 (log.f64 base) (atan2.f64 im re))
(cbrt.f64 (*.f64 (pow.f64 (/.f64 1 (atan2.f64 im re)) 3) (pow.f64 (log.f64 base) 3)))
(/.f64 (log.f64 base) (atan2.f64 im re))
(cbrt.f64 (*.f64 (pow.f64 (log.f64 base) 3) (pow.f64 (/.f64 1 (atan2.f64 im re)) 3)))
(/.f64 (log.f64 base) (atan2.f64 im re))
(expm1.f64 (log1p.f64 (/.f64 (log.f64 base) (atan2.f64 im re))))
(/.f64 (log.f64 base) (atan2.f64 im re))
(log1p.f64 (expm1.f64 (/.f64 (log.f64 base) (atan2.f64 im re))))
(/.f64 (log.f64 base) (atan2.f64 im re))
(exp.f64 (log.f64 (/.f64 (log.f64 base) (atan2.f64 im re))))
(/.f64 (log.f64 base) (atan2.f64 im re))

localize13.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.3b
(/.f64 (log.f64 base) (atan2.f64 im re))
0.5b
(pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -2)
3.1b
(sqrt.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -2))
Compiler

Compiled 35 to 12 computations (65.7% saved)

series11.0ms (0.2%)

Counts
2 → 72
Calls

18 calls:

TimeVariablePointExpression
4.0ms
re
@-inf
(pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -2)
1.0ms
base
@-inf
(pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -2)
1.0ms
base
@inf
(pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -2)
1.0ms
base
@0
(pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -2)
1.0ms
im
@-inf
(pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -2)

rewrite52.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
946×pow1_binary64
875×add-log-exp_binary64
874×log1p-expm1-u_binary64
874×expm1-log1p-u_binary64
853×add-exp-log_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01024
120521
2243821
Stop Event
node limit
Counts
2 → 61
Calls
Call 1
Inputs
(sqrt.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -2))
(pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -2)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (/.f64 (atan2.f64 im re) (log.f64 base))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (atan2.f64 im re) (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cbrt.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -4))) (sqrt.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (log.f64 base) -1) (pow.f64 (/.f64 1 (atan2.f64 im re)) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) 2) -1) (pow.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) -1) (pow.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/2) (/.f64 (atan2.f64 im re) (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -4)) 1/2) (pow.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (atan2.f64 im re) 2)) 1) (/.f64 (cbrt.f64 (atan2.f64 im re)) (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (atan2.f64 im re)) 1) (/.f64 (sqrt.f64 (atan2.f64 im re)) (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cbrt.f64 (pow.f64 (log.f64 base) 2))) (/.f64 (atan2.f64 im re) (cbrt.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (atan2.f64 im re) 2)) (cbrt.f64 (pow.f64 (log.f64 base) 2))) (/.f64 (cbrt.f64 (atan2.f64 im re)) (cbrt.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (atan2.f64 im re)) (cbrt.f64 (pow.f64 (log.f64 base) 2))) (/.f64 (sqrt.f64 (atan2.f64 im re)) (cbrt.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (log.f64 base))) (/.f64 (atan2.f64 im re) (sqrt.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (atan2.f64 im re) 2)) (sqrt.f64 (log.f64 base))) (/.f64 (cbrt.f64 (atan2.f64 im re)) (sqrt.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (atan2.f64 im re)) (sqrt.f64 (log.f64 base))) (/.f64 (sqrt.f64 (atan2.f64 im re)) (sqrt.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (atan2.f64 im re) (log.f64 base))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (log.f64 base) (atan2.f64 im re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (pow.f64 (atan2.f64 im re) 2)) (/.f64 (log.f64 base) (cbrt.f64 (atan2.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (atan2.f64 im re)) (/.f64 (log.f64 base) (sqrt.f64 (atan2.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (atan2.f64 im re)) (neg.f64 (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (atan2.f64 im re) (sqrt.f64 (log.f64 base))) (sqrt.f64 (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (atan2.f64 im re) 1) (log.f64 base))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (atan2.f64 im re) (cbrt.f64 (pow.f64 (log.f64 base) 2))) (cbrt.f64 (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (/.f64 (atan2.f64 im re) (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) (cbrt.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) (*.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (/.f64 (atan2.f64 im re) (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -4)) (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (*.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (/.f64 (atan2.f64 im re) (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (log.f64 base) -2) (pow.f64 (/.f64 1 (atan2.f64 im re)) -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) 2) -2) (pow.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) -2) (pow.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2)) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -4))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -2) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 -2 (log.f64 (/.f64 (log.f64 base) (atan2.f64 im re)))))))))

simplify68.0ms (1.1%)

Algorithm
egg-herbie
Rules
719×unswap-sqr_binary64
501×fma-def_binary64
460×times-frac_binary64
431×fma-neg_binary64
341×associate-*l/_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01671860
13701688
211941675
370591675
Stop Event
node limit
Counts
133 → 84
Calls
Call 1
Inputs
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (log.f64 base) 2))
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (log.f64 base) 2))
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (log.f64 base) 2))
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (log.f64 base) 2))
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (log.f64 (/.f64 1 base)) 2))
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (log.f64 (/.f64 1 base)) 2))
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (log.f64 (/.f64 1 base)) 2))
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (log.f64 (/.f64 1 base)) 2))
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) 2))
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) 2))
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) 2))
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) 2))
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (log.f64 base) 2))
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (log.f64 base) 2))
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (log.f64 base) 2))
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (log.f64 base) 2))
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (log.f64 base) 2))
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (log.f64 base) 2))
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (log.f64 base) 2))
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (log.f64 base) 2))
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (log.f64 base) 2))
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (log.f64 base) 2))
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (log.f64 base) 2))
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (log.f64 base) 2))
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (log.f64 base) 2))
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (log.f64 base) 2))
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (log.f64 base) 2))
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (log.f64 base) 2))
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (log.f64 base) 2))
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (log.f64 base) 2))
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (log.f64 base) 2))
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (log.f64 base) 2))
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (log.f64 base) 2))
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (log.f64 base) 2))
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (log.f64 base) 2))
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (log.f64 base) 2))
(-.f64 (+.f64 1 (/.f64 (atan2.f64 im re) (log.f64 base))) 1)
(*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base)))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1)
(*.f64 1 (/.f64 (atan2.f64 im re) (log.f64 base)))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(*.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2))
(*.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(*.f64 (sqrt.f64 (cbrt.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -4))) (sqrt.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2)))
(*.f64 (pow.f64 (log.f64 base) -1) (pow.f64 (/.f64 1 (atan2.f64 im re)) -1))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) 2) -1) (pow.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) -1))
(*.f64 (pow.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) -1) (pow.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) -1))
(*.f64 (pow.f64 1 1/2) (/.f64 (atan2.f64 im re) (log.f64 base)))
(*.f64 (pow.f64 (cbrt.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -4)) 1/2) (pow.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) 1/2))
(*.f64 (/.f64 (cbrt.f64 (pow.f64 (atan2.f64 im re) 2)) 1) (/.f64 (cbrt.f64 (atan2.f64 im re)) (log.f64 base)))
(*.f64 (/.f64 (sqrt.f64 (atan2.f64 im re)) 1) (/.f64 (sqrt.f64 (atan2.f64 im re)) (log.f64 base)))
(*.f64 (/.f64 1 (cbrt.f64 (pow.f64 (log.f64 base) 2))) (/.f64 (atan2.f64 im re) (cbrt.f64 (log.f64 base))))
(*.f64 (/.f64 (cbrt.f64 (pow.f64 (atan2.f64 im re) 2)) (cbrt.f64 (pow.f64 (log.f64 base) 2))) (/.f64 (cbrt.f64 (atan2.f64 im re)) (cbrt.f64 (log.f64 base))))
(*.f64 (/.f64 (sqrt.f64 (atan2.f64 im re)) (cbrt.f64 (pow.f64 (log.f64 base) 2))) (/.f64 (sqrt.f64 (atan2.f64 im re)) (cbrt.f64 (log.f64 base))))
(*.f64 (/.f64 1 (sqrt.f64 (log.f64 base))) (/.f64 (atan2.f64 im re) (sqrt.f64 (log.f64 base))))
(*.f64 (/.f64 (cbrt.f64 (pow.f64 (atan2.f64 im re) 2)) (sqrt.f64 (log.f64 base))) (/.f64 (cbrt.f64 (atan2.f64 im re)) (sqrt.f64 (log.f64 base))))
(*.f64 (/.f64 (sqrt.f64 (atan2.f64 im re)) (sqrt.f64 (log.f64 base))) (/.f64 (sqrt.f64 (atan2.f64 im re)) (sqrt.f64 (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 1 (/.f64 (log.f64 base) (atan2.f64 im re)))
(/.f64 (cbrt.f64 (pow.f64 (atan2.f64 im re) 2)) (/.f64 (log.f64 base) (cbrt.f64 (atan2.f64 im re))))
(/.f64 (sqrt.f64 (atan2.f64 im re)) (/.f64 (log.f64 base) (sqrt.f64 (atan2.f64 im re))))
(/.f64 (neg.f64 (atan2.f64 im re)) (neg.f64 (log.f64 base)))
(/.f64 (/.f64 (atan2.f64 im re) (sqrt.f64 (log.f64 base))) (sqrt.f64 (log.f64 base)))
(/.f64 (/.f64 (atan2.f64 im re) 1) (log.f64 base))
(/.f64 (/.f64 (atan2.f64 im re) (cbrt.f64 (pow.f64 (log.f64 base) 2))) (cbrt.f64 (log.f64 base)))
(pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -1)
(pow.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -2) 1/2)
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1)
(pow.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -3) 1/3)
(pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 3)
(pow.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2)
(fabs.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
(log.f64 (exp.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(cbrt.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -3))
(cbrt.f64 (/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3)))
(expm1.f64 (log1p.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(log1p.f64 (expm1.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(exp.f64 (log.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(-.f64 (+.f64 1 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -2)) 1)
(*.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -2) 1)
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (/.f64 (atan2.f64 im re) (log.f64 base)))
(*.f64 1 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -2))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) (cbrt.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -4)))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) (*.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (/.f64 (atan2.f64 im re) (log.f64 base))))
(*.f64 (cbrt.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -4)) (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2))
(*.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (*.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (/.f64 (atan2.f64 im re) (log.f64 base))))
(*.f64 (*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(*.f64 (pow.f64 (log.f64 base) -2) (pow.f64 (/.f64 1 (atan2.f64 im re)) -2))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) 2) -2) (pow.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) -2))
(*.f64 (pow.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) -2) (pow.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) -2))
(*.f64 (*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2)) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(sqrt.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -4))
(log.f64 (exp.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -2)))
(cbrt.f64 (pow.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -2) 3))
(expm1.f64 (log1p.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -2)))
(log1p.f64 (expm1.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -2)))
(exp.f64 (*.f64 -2 (log.f64 (/.f64 (log.f64 base) (atan2.f64 im re)))))
Outputs
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 -1 (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (log.f64 base) 2))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2)
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (log.f64 base) 2))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2)
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (log.f64 base) 2))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2)
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (log.f64 base) 2))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2)
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (log.f64 (/.f64 1 base)) 2))
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (log.f64 base) 2))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2)
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (log.f64 (/.f64 1 base)) 2))
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (log.f64 base) 2))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2)
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (log.f64 (/.f64 1 base)) 2))
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (log.f64 base) 2))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2)
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (log.f64 (/.f64 1 base)) 2))
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (log.f64 base) 2))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2)
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) 2))
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))) 2))
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))) 2))
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) 2))
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))) 2))
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))) 2))
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) 2))
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))) 2))
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))) 2))
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) 2))
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))) 2))
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))) 2))
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (log.f64 base) 2))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2)
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (log.f64 base) 2))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2)
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (log.f64 base) 2))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2)
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (log.f64 base) 2))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2)
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (log.f64 base) 2))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2)
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (log.f64 base) 2))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2)
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (log.f64 base) 2))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2)
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (log.f64 base) 2))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2)
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (log.f64 base) 2))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2)
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (log.f64 base) 2))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2)
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (log.f64 base) 2))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2)
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (log.f64 base) 2))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2)
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (log.f64 base) 2))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2)
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (log.f64 base) 2))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2)
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (log.f64 base) 2))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2)
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (log.f64 base) 2))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2)
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (log.f64 base) 2))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2)
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (log.f64 base) 2))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2)
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (log.f64 base) 2))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2)
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (log.f64 base) 2))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2)
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (log.f64 base) 2))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2)
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (log.f64 base) 2))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2)
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (log.f64 base) 2))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2)
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (log.f64 base) 2))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2)
(-.f64 (+.f64 1 (/.f64 (atan2.f64 im re) (log.f64 base))) 1)
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1)
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 1 (/.f64 (atan2.f64 im re) (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (sqrt.f64 (cbrt.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -4))) (sqrt.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2)))
(*.f64 (sqrt.f64 (cbrt.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -4))) (fabs.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))
(*.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (sqrt.f64 (cbrt.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 4))))
(*.f64 (pow.f64 (log.f64 base) -1) (pow.f64 (/.f64 1 (atan2.f64 im re)) -1))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) 2) -1) (pow.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) -1))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) 2)) (/.f64 1 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re)))))
(/.f64 (pow.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) -2) (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))))
(*.f64 (pow.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) -1) (pow.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) -1))
(pow.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) -2)
(*.f64 (pow.f64 1 1/2) (/.f64 (atan2.f64 im re) (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (pow.f64 (cbrt.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -4)) 1/2) (pow.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) 1/2))
(*.f64 (sqrt.f64 (cbrt.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -4))) (sqrt.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2)))
(*.f64 (sqrt.f64 (cbrt.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -4))) (fabs.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))
(*.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (sqrt.f64 (cbrt.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 4))))
(*.f64 (/.f64 (cbrt.f64 (pow.f64 (atan2.f64 im re) 2)) 1) (/.f64 (cbrt.f64 (atan2.f64 im re)) (log.f64 base)))
(*.f64 (cbrt.f64 (pow.f64 (atan2.f64 im re) 2)) (/.f64 (cbrt.f64 (atan2.f64 im re)) (log.f64 base)))
(*.f64 (cbrt.f64 (atan2.f64 im re)) (/.f64 (cbrt.f64 (pow.f64 (atan2.f64 im re) 2)) (log.f64 base)))
(*.f64 (/.f64 (sqrt.f64 (atan2.f64 im re)) 1) (/.f64 (sqrt.f64 (atan2.f64 im re)) (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 1 (cbrt.f64 (pow.f64 (log.f64 base) 2))) (/.f64 (atan2.f64 im re) (cbrt.f64 (log.f64 base))))
(/.f64 (/.f64 (atan2.f64 im re) (cbrt.f64 (log.f64 base))) (cbrt.f64 (pow.f64 (log.f64 base) 2)))
(/.f64 (atan2.f64 im re) (*.f64 (cbrt.f64 (pow.f64 (log.f64 base) 2)) (cbrt.f64 (log.f64 base))))
(*.f64 (/.f64 (cbrt.f64 (pow.f64 (atan2.f64 im re) 2)) (cbrt.f64 (pow.f64 (log.f64 base) 2))) (/.f64 (cbrt.f64 (atan2.f64 im re)) (cbrt.f64 (log.f64 base))))
(*.f64 (/.f64 (sqrt.f64 (atan2.f64 im re)) (cbrt.f64 (pow.f64 (log.f64 base) 2))) (/.f64 (sqrt.f64 (atan2.f64 im re)) (cbrt.f64 (log.f64 base))))
(*.f64 (/.f64 1 (cbrt.f64 (pow.f64 (log.f64 base) 2))) (/.f64 (atan2.f64 im re) (cbrt.f64 (log.f64 base))))
(/.f64 (/.f64 (atan2.f64 im re) (cbrt.f64 (log.f64 base))) (cbrt.f64 (pow.f64 (log.f64 base) 2)))
(/.f64 (atan2.f64 im re) (*.f64 (cbrt.f64 (pow.f64 (log.f64 base) 2)) (cbrt.f64 (log.f64 base))))
(*.f64 (/.f64 1 (sqrt.f64 (log.f64 base))) (/.f64 (atan2.f64 im re) (sqrt.f64 (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (cbrt.f64 (pow.f64 (atan2.f64 im re) 2)) (sqrt.f64 (log.f64 base))) (/.f64 (cbrt.f64 (atan2.f64 im re)) (sqrt.f64 (log.f64 base))))
(*.f64 (cbrt.f64 (pow.f64 (atan2.f64 im re) 2)) (/.f64 (cbrt.f64 (atan2.f64 im re)) (log.f64 base)))
(*.f64 (cbrt.f64 (atan2.f64 im re)) (/.f64 (cbrt.f64 (pow.f64 (atan2.f64 im re) 2)) (log.f64 base)))
(*.f64 (/.f64 (sqrt.f64 (atan2.f64 im re)) (sqrt.f64 (log.f64 base))) (/.f64 (sqrt.f64 (atan2.f64 im re)) (sqrt.f64 (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 1 (/.f64 (log.f64 base) (atan2.f64 im re)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (cbrt.f64 (pow.f64 (atan2.f64 im re) 2)) (/.f64 (log.f64 base) (cbrt.f64 (atan2.f64 im re))))
(*.f64 (cbrt.f64 (pow.f64 (atan2.f64 im re) 2)) (/.f64 (cbrt.f64 (atan2.f64 im re)) (log.f64 base)))
(*.f64 (cbrt.f64 (atan2.f64 im re)) (/.f64 (cbrt.f64 (pow.f64 (atan2.f64 im re) 2)) (log.f64 base)))
(/.f64 (sqrt.f64 (atan2.f64 im re)) (/.f64 (log.f64 base) (sqrt.f64 (atan2.f64 im re))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (neg.f64 (atan2.f64 im re)) (neg.f64 (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (/.f64 (atan2.f64 im re) (sqrt.f64 (log.f64 base))) (sqrt.f64 (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (/.f64 (atan2.f64 im re) 1) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (/.f64 (atan2.f64 im re) (cbrt.f64 (pow.f64 (log.f64 base) 2))) (cbrt.f64 (log.f64 base)))
(*.f64 (/.f64 1 (cbrt.f64 (pow.f64 (log.f64 base) 2))) (/.f64 (atan2.f64 im re) (cbrt.f64 (log.f64 base))))
(/.f64 (/.f64 (atan2.f64 im re) (cbrt.f64 (log.f64 base))) (cbrt.f64 (pow.f64 (log.f64 base) 2)))
(/.f64 (atan2.f64 im re) (*.f64 (cbrt.f64 (pow.f64 (log.f64 base) 2)) (cbrt.f64 (log.f64 base))))
(pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -1)
(/.f64 (atan2.f64 im re) (log.f64 base))
(pow.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -2) 1/2)
(/.f64 (atan2.f64 im re) (log.f64 base))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1)
(/.f64 (atan2.f64 im re) (log.f64 base))
(pow.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -3) 1/3)
(cbrt.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -3))
(pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 3)
(/.f64 (atan2.f64 im re) (log.f64 base))
(pow.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2)
(/.f64 (atan2.f64 im re) (log.f64 base))
(fabs.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(log.f64 (exp.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(cbrt.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -3))
(cbrt.f64 (/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3)))
(cbrt.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3))
(expm1.f64 (log1p.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(log1p.f64 (expm1.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(exp.f64 (log.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(-.f64 (+.f64 1 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -2)) 1)
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (log.f64 base) 2))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2)
(*.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -2) 1)
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (log.f64 base) 2))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2)
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (/.f64 (atan2.f64 im re) (log.f64 base)))
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (log.f64 base) 2))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2)
(*.f64 1 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -2))
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (log.f64 base) 2))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2)
(*.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) (cbrt.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -4)))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) (cbrt.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 4)))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) (*.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (log.f64 base) 2))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2)
(*.f64 (cbrt.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -4)) (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) (cbrt.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -4)))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) (cbrt.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 4)))
(*.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (*.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (log.f64 base) 2))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2)
(*.f64 (*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (log.f64 base) 2))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2)
(*.f64 (pow.f64 (log.f64 base) -2) (pow.f64 (/.f64 1 (atan2.f64 im re)) -2))
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (log.f64 base) 2))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2)
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) 2) -2) (pow.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) -2))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) -2) (pow.f64 (pow.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) 2) -2))
(*.f64 (pow.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) -2) (pow.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) -2))
(pow.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) -4)
(*.f64 (*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2)) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (log.f64 base) 2))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2)
(sqrt.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -4))
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (log.f64 base) 2))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2)
(log.f64 (exp.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -2)))
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (log.f64 base) 2))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2)
(cbrt.f64 (pow.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -2) 3))
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (log.f64 base) 2))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2)
(expm1.f64 (log1p.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -2)))
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (log.f64 base) 2))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2)
(log1p.f64 (expm1.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -2)))
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (log.f64 base) 2))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2)
(exp.f64 (*.f64 -2 (log.f64 (/.f64 (log.f64 base) (atan2.f64 im re)))))
(/.f64 (pow.f64 (atan2.f64 im re) 2) (pow.f64 (log.f64 base) 2))
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2)

localize11.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.2b
(pow.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) -2)
0.3b
(/.f64 (log.f64 base) (atan2.f64 im re))
2.2b
(sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re)))
Compiler

Compiled 34 to 10 computations (70.6% saved)

series13.0ms (0.2%)

Counts
2 → 44
Calls

18 calls:

TimeVariablePointExpression
3.0ms
re
@-inf
(pow.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) -2)
1.0ms
base
@inf
(pow.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) -2)
1.0ms
im
@-inf
(pow.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) -2)
1.0ms
base
@-inf
(pow.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) -2)
1.0ms
im
@inf
(pow.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) -2)

rewrite49.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
958×pow1_binary64
886×add-log-exp_binary64
885×log1p-expm1-u_binary64
885×expm1-log1p-u_binary64
103×add-sqr-sqrt_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01023
120820
2249320
Stop Event
node limit
Counts
2 → 64
Calls
Call 1
Inputs
(sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re)))
(pow.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) -2)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re)))) (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) (cbrt.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) 1/4) (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (log.f64 base)) (sqrt.f64 (/.f64 1 (atan2.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (log.f64 base)) (pow.f64 (/.f64 1 (atan2.f64 im re)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (log.f64 base)) (/.f64 1 (sqrt.f64 (atan2.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) 2)) (sqrt.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/2) (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) 2) 1/2) (pow.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (sqrt.f64 (atan2.f64 im re)) (sqrt.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (log.f64 base)) (sqrt.f64 (atan2.f64 im re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (neg.f64 (log.f64 base))) (sqrt.f64 (neg.f64 (atan2.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (sqrt.f64 (log.f64 base))) (neg.f64 (sqrt.f64 (atan2.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) 3/2) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) 1/4) 2)))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re)))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (atan2.f64 im re) (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (log.f64 base) -1) (pow.f64 (/.f64 1 (atan2.f64 im re)) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) 2) -1) (pow.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) -2) (pow.f64 (cbrt.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re)))) -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) 1/4) -2) (pow.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) 1/4) -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (atan2.f64 im re) 2)) 1) (/.f64 (cbrt.f64 (atan2.f64 im re)) (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (atan2.f64 im re)) 1) (/.f64 (sqrt.f64 (atan2.f64 im re)) (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cbrt.f64 (pow.f64 (log.f64 base) 2))) (/.f64 (atan2.f64 im re) (cbrt.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (atan2.f64 im re) 2)) (cbrt.f64 (pow.f64 (log.f64 base) 2))) (/.f64 (cbrt.f64 (atan2.f64 im re)) (cbrt.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (atan2.f64 im re)) (cbrt.f64 (pow.f64 (log.f64 base) 2))) (/.f64 (sqrt.f64 (atan2.f64 im re)) (cbrt.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (log.f64 base))) (/.f64 (atan2.f64 im re) (sqrt.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (atan2.f64 im re) 2)) (sqrt.f64 (log.f64 base))) (/.f64 (cbrt.f64 (atan2.f64 im re)) (sqrt.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (atan2.f64 im re)) (sqrt.f64 (log.f64 base))) (/.f64 (sqrt.f64 (atan2.f64 im re)) (sqrt.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (atan2.f64 im re) (log.f64 base))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (log.f64 base) (atan2.f64 im re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (pow.f64 (atan2.f64 im re) 2)) (/.f64 (log.f64 base) (cbrt.f64 (atan2.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (atan2.f64 im re)) (/.f64 (log.f64 base) (sqrt.f64 (atan2.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (atan2.f64 im re)) (neg.f64 (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (atan2.f64 im re) (sqrt.f64 (log.f64 base))) (sqrt.f64 (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (atan2.f64 im re) 1) (log.f64 base))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (atan2.f64 im re) (cbrt.f64 (pow.f64 (log.f64 base) 2))) (cbrt.f64 (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))))

simplify63.0ms (1%)

Algorithm
egg-herbie
Rules
459×log-prod_binary64
408×associate-*l*_binary64
374×associate-*r*_binary64
367×fabs-mul_binary64
348×cube-prod_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01731433
13581387
28951377
350121343
Stop Event
node limit
Counts
108 → 87
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 -1) (sqrt.f64 (/.f64 (log.f64 (/.f64 1 base)) (atan2.f64 im re))))
(*.f64 (sqrt.f64 -1) (sqrt.f64 (/.f64 (log.f64 (/.f64 1 base)) (atan2.f64 im re))))
(*.f64 (sqrt.f64 -1) (sqrt.f64 (/.f64 (log.f64 (/.f64 1 base)) (atan2.f64 im re))))
(*.f64 (sqrt.f64 -1) (sqrt.f64 (/.f64 (log.f64 (/.f64 1 base)) (atan2.f64 im re))))
(sqrt.f64 (/.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) (atan2.f64 im re)))
(sqrt.f64 (/.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) (atan2.f64 im re)))
(sqrt.f64 (/.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) (atan2.f64 im re)))
(sqrt.f64 (/.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) (atan2.f64 im re)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (log.f64 (/.f64 1 base))))
(/.f64 (atan2.f64 im re) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (log.f64 (/.f64 1 base))))
(/.f64 (atan2.f64 im re) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (log.f64 (/.f64 1 base))))
(/.f64 (atan2.f64 im re) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (log.f64 (/.f64 1 base))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(-.f64 (exp.f64 (log1p.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))))) 1)
(*.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) 1)
(*.f64 1 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))))
(*.f64 (cbrt.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re)))) (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))))
(*.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) (cbrt.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re)))))
(*.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) 1/4) (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) 1/4))
(*.f64 (sqrt.f64 (log.f64 base)) (sqrt.f64 (/.f64 1 (atan2.f64 im re))))
(*.f64 (sqrt.f64 (log.f64 base)) (pow.f64 (/.f64 1 (atan2.f64 im re)) 1/2))
(*.f64 (sqrt.f64 (log.f64 base)) (/.f64 1 (sqrt.f64 (atan2.f64 im re))))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) 2)) (sqrt.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re)))))
(*.f64 (pow.f64 1 1/2) (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) 2) 1/2) (pow.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) 1/2))
(/.f64 1 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 1 (/.f64 (sqrt.f64 (atan2.f64 im re)) (sqrt.f64 (log.f64 base))))
(/.f64 (sqrt.f64 (log.f64 base)) (sqrt.f64 (atan2.f64 im re)))
(/.f64 (sqrt.f64 (neg.f64 (log.f64 base))) (sqrt.f64 (neg.f64 (atan2.f64 im re))))
(/.f64 (neg.f64 (sqrt.f64 (log.f64 base))) (neg.f64 (sqrt.f64 (atan2.f64 im re))))
(pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) 1/2)
(pow.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) 1)
(pow.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) 3/2) 1/3)
(pow.f64 (cbrt.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re)))) 3)
(pow.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) 1/4) 2)
(fabs.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))))
(log.f64 (exp.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re)))))
(log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))))))
(cbrt.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) 3/2))
(expm1.f64 (log1p.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re)))))
(log1p.f64 (expm1.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re)))))
(exp.f64 (log.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re)))))
(-.f64 (exp.f64 (log1p.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) 1)
(*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base)))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1)
(*.f64 1 (/.f64 (atan2.f64 im re) (log.f64 base)))
(*.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(*.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(*.f64 (pow.f64 (log.f64 base) -1) (pow.f64 (/.f64 1 (atan2.f64 im re)) -1))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) 2) -1) (pow.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) -1))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) -2) (pow.f64 (cbrt.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re)))) -2))
(*.f64 (pow.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) 1/4) -2) (pow.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) 1/4) -2))
(*.f64 (/.f64 (cbrt.f64 (pow.f64 (atan2.f64 im re) 2)) 1) (/.f64 (cbrt.f64 (atan2.f64 im re)) (log.f64 base)))
(*.f64 (/.f64 (sqrt.f64 (atan2.f64 im re)) 1) (/.f64 (sqrt.f64 (atan2.f64 im re)) (log.f64 base)))
(*.f64 (/.f64 1 (cbrt.f64 (pow.f64 (log.f64 base) 2))) (/.f64 (atan2.f64 im re) (cbrt.f64 (log.f64 base))))
(*.f64 (/.f64 (cbrt.f64 (pow.f64 (atan2.f64 im re) 2)) (cbrt.f64 (pow.f64 (log.f64 base) 2))) (/.f64 (cbrt.f64 (atan2.f64 im re)) (cbrt.f64 (log.f64 base))))
(*.f64 (/.f64 (sqrt.f64 (atan2.f64 im re)) (cbrt.f64 (pow.f64 (log.f64 base) 2))) (/.f64 (sqrt.f64 (atan2.f64 im re)) (cbrt.f64 (log.f64 base))))
(*.f64 (/.f64 1 (sqrt.f64 (log.f64 base))) (/.f64 (atan2.f64 im re) (sqrt.f64 (log.f64 base))))
(*.f64 (/.f64 (cbrt.f64 (pow.f64 (atan2.f64 im re) 2)) (sqrt.f64 (log.f64 base))) (/.f64 (cbrt.f64 (atan2.f64 im re)) (sqrt.f64 (log.f64 base))))
(*.f64 (/.f64 (sqrt.f64 (atan2.f64 im re)) (sqrt.f64 (log.f64 base))) (/.f64 (sqrt.f64 (atan2.f64 im re)) (sqrt.f64 (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 1 (/.f64 (log.f64 base) (atan2.f64 im re)))
(/.f64 (cbrt.f64 (pow.f64 (atan2.f64 im re) 2)) (/.f64 (log.f64 base) (cbrt.f64 (atan2.f64 im re))))
(/.f64 (sqrt.f64 (atan2.f64 im re)) (/.f64 (log.f64 base) (sqrt.f64 (atan2.f64 im re))))
(/.f64 (neg.f64 (atan2.f64 im re)) (neg.f64 (log.f64 base)))
(/.f64 (/.f64 (atan2.f64 im re) (sqrt.f64 (log.f64 base))) (sqrt.f64 (log.f64 base)))
(/.f64 (/.f64 (atan2.f64 im re) 1) (log.f64 base))
(/.f64 (/.f64 (atan2.f64 im re) (cbrt.f64 (pow.f64 (log.f64 base) 2))) (cbrt.f64 (log.f64 base)))
(sqrt.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -2))
(log.f64 (exp.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))
(cbrt.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3))
(cbrt.f64 (/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3)))
(expm1.f64 (log1p.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(log1p.f64 (expm1.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(exp.f64 (log.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
Outputs
(*.f64 (sqrt.f64 -1) (sqrt.f64 (/.f64 (log.f64 (/.f64 1 base)) (atan2.f64 im re))))
(*.f64 (sqrt.f64 -1) (sqrt.f64 (/.f64 (neg.f64 (log.f64 base)) (atan2.f64 im re))))
(*.f64 (sqrt.f64 -1) (sqrt.f64 (neg.f64 (/.f64 (log.f64 base) (atan2.f64 im re)))))
(*.f64 (sqrt.f64 -1) (sqrt.f64 (/.f64 (log.f64 base) (neg.f64 (atan2.f64 im re)))))
(*.f64 (sqrt.f64 -1) (sqrt.f64 (/.f64 (log.f64 (/.f64 1 base)) (atan2.f64 im re))))
(*.f64 (sqrt.f64 -1) (sqrt.f64 (/.f64 (neg.f64 (log.f64 base)) (atan2.f64 im re))))
(*.f64 (sqrt.f64 -1) (sqrt.f64 (neg.f64 (/.f64 (log.f64 base) (atan2.f64 im re)))))
(*.f64 (sqrt.f64 -1) (sqrt.f64 (/.f64 (log.f64 base) (neg.f64 (atan2.f64 im re)))))
(*.f64 (sqrt.f64 -1) (sqrt.f64 (/.f64 (log.f64 (/.f64 1 base)) (atan2.f64 im re))))
(*.f64 (sqrt.f64 -1) (sqrt.f64 (/.f64 (neg.f64 (log.f64 base)) (atan2.f64 im re))))
(*.f64 (sqrt.f64 -1) (sqrt.f64 (neg.f64 (/.f64 (log.f64 base) (atan2.f64 im re)))))
(*.f64 (sqrt.f64 -1) (sqrt.f64 (/.f64 (log.f64 base) (neg.f64 (atan2.f64 im re)))))
(*.f64 (sqrt.f64 -1) (sqrt.f64 (/.f64 (log.f64 (/.f64 1 base)) (atan2.f64 im re))))
(*.f64 (sqrt.f64 -1) (sqrt.f64 (/.f64 (neg.f64 (log.f64 base)) (atan2.f64 im re))))
(*.f64 (sqrt.f64 -1) (sqrt.f64 (neg.f64 (/.f64 (log.f64 base) (atan2.f64 im re)))))
(*.f64 (sqrt.f64 -1) (sqrt.f64 (/.f64 (log.f64 base) (neg.f64 (atan2.f64 im re)))))
(sqrt.f64 (/.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) (atan2.f64 im re)))
(sqrt.f64 (/.f64 (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))) (atan2.f64 im re)))
(sqrt.f64 (/.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))) (atan2.f64 im re)))
(sqrt.f64 (/.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) (atan2.f64 im re)))
(sqrt.f64 (/.f64 (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))) (atan2.f64 im re)))
(sqrt.f64 (/.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))) (atan2.f64 im re)))
(sqrt.f64 (/.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) (atan2.f64 im re)))
(sqrt.f64 (/.f64 (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))) (atan2.f64 im re)))
(sqrt.f64 (/.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))) (atan2.f64 im re)))
(sqrt.f64 (/.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))) (atan2.f64 im re)))
(sqrt.f64 (/.f64 (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))) (atan2.f64 im re)))
(sqrt.f64 (/.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))) (atan2.f64 im re)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (log.f64 (/.f64 1 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (log.f64 (/.f64 1 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (log.f64 (/.f64 1 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (log.f64 (/.f64 1 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(-.f64 (exp.f64 (log1p.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))))) 1)
(sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re)))
(*.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) 1)
(sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re)))
(*.f64 1 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))))
(sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re)))
(*.f64 (cbrt.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re)))) (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))))
(*.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) (cbrt.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re)))))
(*.f64 (cbrt.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re)))) (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))))
(*.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) 1/4) (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) 1/4))
(sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re)))
(*.f64 (sqrt.f64 (log.f64 base)) (sqrt.f64 (/.f64 1 (atan2.f64 im re))))
(*.f64 (sqrt.f64 (log.f64 base)) (pow.f64 (/.f64 1 (atan2.f64 im re)) 1/2))
(*.f64 (sqrt.f64 (log.f64 base)) (sqrt.f64 (/.f64 1 (atan2.f64 im re))))
(*.f64 (sqrt.f64 (log.f64 base)) (/.f64 1 (sqrt.f64 (atan2.f64 im re))))
(/.f64 1 (/.f64 (sqrt.f64 (atan2.f64 im re)) (sqrt.f64 (log.f64 base))))
(/.f64 (sqrt.f64 (log.f64 base)) (sqrt.f64 (atan2.f64 im re)))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) 2)) (sqrt.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re)))))
(*.f64 (fabs.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re)))) (sqrt.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re)))))
(*.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) (sqrt.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re)))))
(pow.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) 3/2)
(*.f64 (pow.f64 1 1/2) (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))))
(sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re)))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) 2) 1/2) (pow.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) 1/2))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) 2)) (sqrt.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re)))))
(*.f64 (fabs.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re)))) (sqrt.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re)))))
(*.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) (sqrt.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re)))))
(pow.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) 3/2)
(/.f64 1 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 1 (/.f64 (sqrt.f64 (atan2.f64 im re)) (sqrt.f64 (log.f64 base))))
(/.f64 (sqrt.f64 (log.f64 base)) (sqrt.f64 (atan2.f64 im re)))
(/.f64 1 (/.f64 (sqrt.f64 (atan2.f64 im re)) (sqrt.f64 (log.f64 base))))
(/.f64 (sqrt.f64 (log.f64 base)) (sqrt.f64 (atan2.f64 im re)))
(/.f64 (sqrt.f64 (log.f64 base)) (sqrt.f64 (atan2.f64 im re)))
(/.f64 1 (/.f64 (sqrt.f64 (atan2.f64 im re)) (sqrt.f64 (log.f64 base))))
(/.f64 (sqrt.f64 (neg.f64 (log.f64 base))) (sqrt.f64 (neg.f64 (atan2.f64 im re))))
(/.f64 (neg.f64 (sqrt.f64 (log.f64 base))) (neg.f64 (sqrt.f64 (atan2.f64 im re))))
(/.f64 1 (/.f64 (sqrt.f64 (atan2.f64 im re)) (sqrt.f64 (log.f64 base))))
(/.f64 (sqrt.f64 (log.f64 base)) (sqrt.f64 (atan2.f64 im re)))
(pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) 1/2)
(sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re)))
(pow.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) 1)
(sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re)))
(pow.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) 3/2) 1/3)
(cbrt.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) 3/2))
(pow.f64 (cbrt.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re)))) 3)
(sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re)))
(pow.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) 1/4) 2)
(sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re)))
(fabs.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))))
(sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re)))
(log.f64 (exp.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re)))))
(sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re)))
(log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))))))
(sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re)))
(cbrt.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) 3/2))
(expm1.f64 (log1p.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re)))))
(sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re)))
(log1p.f64 (expm1.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re)))))
(sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re)))
(exp.f64 (log.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re)))))
(sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re)))
(-.f64 (exp.f64 (log1p.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) 1)
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1)
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 1 (/.f64 (atan2.f64 im re) (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (pow.f64 (log.f64 base) -1) (pow.f64 (/.f64 1 (atan2.f64 im re)) -1))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) 2) -1) (pow.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) -1))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) 2)) (/.f64 1 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re)))))
(/.f64 (pow.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) -2) (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))))
(pow.f64 (/.f64 1 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re)))) 3)
(*.f64 (pow.f64 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) -2) (pow.f64 (cbrt.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re)))) -2))
(*.f64 (pow.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) 1/4) -2) (pow.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) 1/4) -2))
(pow.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) 1/4) -4)
(*.f64 (/.f64 (cbrt.f64 (pow.f64 (atan2.f64 im re) 2)) 1) (/.f64 (cbrt.f64 (atan2.f64 im re)) (log.f64 base)))
(*.f64 (cbrt.f64 (pow.f64 (atan2.f64 im re) 2)) (/.f64 (cbrt.f64 (atan2.f64 im re)) (log.f64 base)))
(*.f64 (/.f64 (sqrt.f64 (atan2.f64 im re)) 1) (/.f64 (sqrt.f64 (atan2.f64 im re)) (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 1 (cbrt.f64 (pow.f64 (log.f64 base) 2))) (/.f64 (atan2.f64 im re) (cbrt.f64 (log.f64 base))))
(/.f64 (/.f64 (atan2.f64 im re) (cbrt.f64 (log.f64 base))) (cbrt.f64 (pow.f64 (log.f64 base) 2)))
(/.f64 (atan2.f64 im re) (*.f64 (cbrt.f64 (pow.f64 (log.f64 base) 2)) (cbrt.f64 (log.f64 base))))
(*.f64 (/.f64 (cbrt.f64 (pow.f64 (atan2.f64 im re) 2)) (cbrt.f64 (pow.f64 (log.f64 base) 2))) (/.f64 (cbrt.f64 (atan2.f64 im re)) (cbrt.f64 (log.f64 base))))
(/.f64 (cbrt.f64 (pow.f64 (atan2.f64 im re) 2)) (*.f64 (/.f64 (cbrt.f64 (pow.f64 (log.f64 base) 2)) (cbrt.f64 (atan2.f64 im re))) (cbrt.f64 (log.f64 base))))
(*.f64 (/.f64 (sqrt.f64 (atan2.f64 im re)) (cbrt.f64 (pow.f64 (log.f64 base) 2))) (/.f64 (sqrt.f64 (atan2.f64 im re)) (cbrt.f64 (log.f64 base))))
(*.f64 (/.f64 1 (cbrt.f64 (pow.f64 (log.f64 base) 2))) (/.f64 (atan2.f64 im re) (cbrt.f64 (log.f64 base))))
(/.f64 (/.f64 (atan2.f64 im re) (cbrt.f64 (log.f64 base))) (cbrt.f64 (pow.f64 (log.f64 base) 2)))
(/.f64 (atan2.f64 im re) (*.f64 (cbrt.f64 (pow.f64 (log.f64 base) 2)) (cbrt.f64 (log.f64 base))))
(*.f64 (/.f64 1 (sqrt.f64 (log.f64 base))) (/.f64 (atan2.f64 im re) (sqrt.f64 (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (cbrt.f64 (pow.f64 (atan2.f64 im re) 2)) (sqrt.f64 (log.f64 base))) (/.f64 (cbrt.f64 (atan2.f64 im re)) (sqrt.f64 (log.f64 base))))
(*.f64 (cbrt.f64 (pow.f64 (atan2.f64 im re) 2)) (/.f64 (cbrt.f64 (atan2.f64 im re)) (log.f64 base)))
(*.f64 (/.f64 (sqrt.f64 (atan2.f64 im re)) (sqrt.f64 (log.f64 base))) (/.f64 (sqrt.f64 (atan2.f64 im re)) (sqrt.f64 (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 1 (/.f64 (log.f64 base) (atan2.f64 im re)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (cbrt.f64 (pow.f64 (atan2.f64 im re) 2)) (/.f64 (log.f64 base) (cbrt.f64 (atan2.f64 im re))))
(*.f64 (cbrt.f64 (pow.f64 (atan2.f64 im re) 2)) (/.f64 (cbrt.f64 (atan2.f64 im re)) (log.f64 base)))
(/.f64 (sqrt.f64 (atan2.f64 im re)) (/.f64 (log.f64 base) (sqrt.f64 (atan2.f64 im re))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (neg.f64 (atan2.f64 im re)) (neg.f64 (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (/.f64 (atan2.f64 im re) (sqrt.f64 (log.f64 base))) (sqrt.f64 (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (/.f64 (atan2.f64 im re) 1) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (/.f64 (atan2.f64 im re) (cbrt.f64 (pow.f64 (log.f64 base) 2))) (cbrt.f64 (log.f64 base)))
(*.f64 (/.f64 1 (cbrt.f64 (pow.f64 (log.f64 base) 2))) (/.f64 (atan2.f64 im re) (cbrt.f64 (log.f64 base))))
(/.f64 (/.f64 (atan2.f64 im re) (cbrt.f64 (log.f64 base))) (cbrt.f64 (pow.f64 (log.f64 base) 2)))
(/.f64 (atan2.f64 im re) (*.f64 (cbrt.f64 (pow.f64 (log.f64 base) 2)) (cbrt.f64 (log.f64 base))))
(sqrt.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -2))
(/.f64 (atan2.f64 im re) (log.f64 base))
(log.f64 (exp.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(cbrt.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3))
(/.f64 (atan2.f64 im re) (log.f64 base))
(cbrt.f64 (/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(expm1.f64 (log1p.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(log1p.f64 (expm1.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(exp.f64 (log.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))

localize14.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.3b
(/.f64 (atan2.f64 im re) (log.f64 base))
0.4b
(pow.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/3) 3)
4.3b
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/3)
Compiler

Compiled 37 to 14 computations (62.2% saved)

series17.0ms (0.3%)

Counts
2 → 44
Calls

18 calls:

TimeVariablePointExpression
12.0ms
re
@-inf
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/3)
0.0ms
base
@-inf
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/3)
0.0ms
im
@0
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/3)
0.0ms
base
@0
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/3)
0.0ms
im
@0
(pow.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/3) 3)

rewrite48.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
953×pow1_binary64
890×add-log-exp_binary64
890×log1p-expm1-u_binary64
890×expm1-log1p-u_binary64
103×add-sqr-sqrt_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01120
123720
2247620
Stop Event
node limit
Counts
2 → 67
Calls
Call 1
Inputs
(pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/3)
(pow.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/3) 3)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) (pow.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) 2) (cbrt.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (atan2.f64 im re)) (cbrt.f64 (/.f64 1 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (atan2.f64 im re)) (pow.f64 (/.f64 1 (log.f64 base)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/6) (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) 1/3) (cbrt.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/3) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 1/3) (pow.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (atan2.f64 im re)) (cbrt.f64 (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (neg.f64 (atan2.f64 im re))) (cbrt.f64 (neg.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (atan2.f64 im re) (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) 2) (*.f64 (cbrt.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) (*.f64 (cbrt.f64 (atan2.f64 im re)) (/.f64 1 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (atan2.f64 im re)) (*.f64 (sqrt.f64 (atan2.f64 im re)) (/.f64 1 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (atan2.f64 im re)) (/.f64 1 (neg.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (log.f64 base)) (atan2.f64 im re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/6) (*.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/6) (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) 2) 3) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/6) 3) (pow.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/6) 3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) 1) (/.f64 (cbrt.f64 (atan2.f64 im re)) (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (atan2.f64 im re)) 1) (/.f64 (sqrt.f64 (atan2.f64 im re)) (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 (log.f64 base)) 2)) (/.f64 (atan2.f64 im re) (cbrt.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) (pow.f64 (cbrt.f64 (log.f64 base)) 2)) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (atan2.f64 im re)) (pow.f64 (cbrt.f64 (log.f64 base)) 2)) (/.f64 (sqrt.f64 (atan2.f64 im re)) (cbrt.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (log.f64 base))) (/.f64 (atan2.f64 im re) (sqrt.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) (sqrt.f64 (log.f64 base))) (/.f64 (cbrt.f64 (atan2.f64 im re)) (sqrt.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) 1) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) 2)) (cbrt.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/6)) (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (atan2.f64 im re) (log.f64 base))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (log.f64 base) (atan2.f64 im re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) (/.f64 (log.f64 base) (cbrt.f64 (atan2.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (atan2.f64 im re)) (/.f64 (log.f64 base) (sqrt.f64 (atan2.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (atan2.f64 im re)) (neg.f64 (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1 (neg.f64 (/.f64 (log.f64 base) (atan2.f64 im re))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (neg.f64 (atan2.f64 im re))) (neg.f64 (neg.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (atan2.f64 im re) (sqrt.f64 (log.f64 base))) (sqrt.f64 (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (atan2.f64 im re) 1) (log.f64 base))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (atan2.f64 im re) (pow.f64 (cbrt.f64 (log.f64 base)) 2)) (cbrt.f64 (log.f64 base)))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (atan2.f64 im re) (neg.f64 (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))))

simplify73.0ms (1.2%)

Algorithm
egg-herbie
Rules
814×fma-def_binary64
546×log-div_binary64
437×associate-/l*_binary64
328×associate-/r*_binary64
300×associate-*l/_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01701228
13631212
210971212
362821212
Stop Event
node limit
Counts
111 → 81
Calls
Call 1
Inputs
(*.f64 (pow.f64 (/.f64 (*.f64 1 (atan2.f64 im re)) (log.f64 (/.f64 1 base))) 1/3) (cbrt.f64 -1))
(*.f64 (pow.f64 (/.f64 (*.f64 1 (atan2.f64 im re)) (log.f64 (/.f64 1 base))) 1/3) (cbrt.f64 -1))
(*.f64 (pow.f64 (/.f64 (*.f64 1 (atan2.f64 im re)) (log.f64 (/.f64 1 base))) 1/3) (cbrt.f64 -1))
(*.f64 (pow.f64 (/.f64 (*.f64 1 (atan2.f64 im re)) (log.f64 (/.f64 1 base))) 1/3) (cbrt.f64 -1))
(pow.f64 (/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base))))) 1/3)
(pow.f64 (/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base))))) 1/3)
(pow.f64 (/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base))))) 1/3)
(pow.f64 (/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base))))) 1/3)
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(*.f64 -1 (*.f64 (pow.f64 1 1/3) (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base)))))
(*.f64 -1 (*.f64 (pow.f64 1 1/3) (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base)))))
(*.f64 -1 (*.f64 (pow.f64 1 1/3) (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base)))))
(*.f64 -1 (*.f64 (pow.f64 1 1/3) (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base)))))
(*.f64 (pow.f64 1 1/3) (/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base))))))
(*.f64 (pow.f64 1 1/3) (/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base))))))
(*.f64 (pow.f64 1 1/3) (/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base))))))
(*.f64 (pow.f64 1 1/3) (/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base))))))
(-.f64 (exp.f64 (log1p.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))) 1)
(*.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 1)
(*.f64 1 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(*.f64 (cbrt.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) 2))
(*.f64 (cbrt.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) (pow.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) 1/3))
(*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) 2) (cbrt.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))
(*.f64 (cbrt.f64 (atan2.f64 im re)) (cbrt.f64 (/.f64 1 (log.f64 base))))
(*.f64 (cbrt.f64 (atan2.f64 im re)) (pow.f64 (/.f64 1 (log.f64 base)) 1/3))
(*.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/6) (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/6))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) 1/3) (cbrt.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))
(*.f64 (pow.f64 1 1/3) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(*.f64 (pow.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 1/3) (pow.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 1/3))
(/.f64 1 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))))
(/.f64 (cbrt.f64 (atan2.f64 im re)) (cbrt.f64 (log.f64 base)))
(/.f64 (cbrt.f64 (neg.f64 (atan2.f64 im re))) (cbrt.f64 (neg.f64 (log.f64 base))))
(sqrt.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2))
(log.f64 (exp.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))
(log.f64 (+.f64 1 (expm1.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))
(cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
(expm1.f64 (log1p.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))
(log1p.f64 (expm1.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))
(exp.f64 (log.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))
(-.f64 (exp.f64 (log1p.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) 1)
(*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base)))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1)
(*.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2))
(*.f64 1 (/.f64 (atan2.f64 im re) (log.f64 base)))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) 2) (*.f64 (cbrt.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2)))
(*.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) (*.f64 (cbrt.f64 (atan2.f64 im re)) (/.f64 1 (log.f64 base))))
(*.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(*.f64 (sqrt.f64 (atan2.f64 im re)) (*.f64 (sqrt.f64 (atan2.f64 im re)) (/.f64 1 (log.f64 base))))
(*.f64 (neg.f64 (atan2.f64 im re)) (/.f64 1 (neg.f64 (log.f64 base))))
(*.f64 (/.f64 1 (log.f64 base)) (atan2.f64 im re))
(*.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/6) (*.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/6) (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2)))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) 2) 3) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(*.f64 (pow.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/6) 3) (pow.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/6) 3))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) 1) (/.f64 (cbrt.f64 (atan2.f64 im re)) (log.f64 base)))
(*.f64 (/.f64 (sqrt.f64 (atan2.f64 im re)) 1) (/.f64 (sqrt.f64 (atan2.f64 im re)) (log.f64 base)))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (log.f64 base)) 2)) (/.f64 (atan2.f64 im re) (cbrt.f64 (log.f64 base))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) (pow.f64 (cbrt.f64 (log.f64 base)) 2)) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(*.f64 (/.f64 (sqrt.f64 (atan2.f64 im re)) (pow.f64 (cbrt.f64 (log.f64 base)) 2)) (/.f64 (sqrt.f64 (atan2.f64 im re)) (cbrt.f64 (log.f64 base))))
(*.f64 (/.f64 1 (sqrt.f64 (log.f64 base))) (/.f64 (atan2.f64 im re) (sqrt.f64 (log.f64 base))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) (sqrt.f64 (log.f64 base))) (/.f64 (cbrt.f64 (atan2.f64 im re)) (sqrt.f64 (log.f64 base))))
(*.f64 (*.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) 1) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(*.f64 (*.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) 2)) (cbrt.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))
(*.f64 (*.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/6)) (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/6))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 1 (/.f64 (log.f64 base) (atan2.f64 im re)))
(/.f64 1 (/.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) 1))
(/.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) (/.f64 (log.f64 base) (cbrt.f64 (atan2.f64 im re))))
(/.f64 (sqrt.f64 (atan2.f64 im re)) (/.f64 (log.f64 base) (sqrt.f64 (atan2.f64 im re))))
(/.f64 (neg.f64 (atan2.f64 im re)) (neg.f64 (log.f64 base)))
(/.f64 -1 (neg.f64 (/.f64 (log.f64 base) (atan2.f64 im re))))
(/.f64 (neg.f64 (neg.f64 (atan2.f64 im re))) (neg.f64 (neg.f64 (log.f64 base))))
(/.f64 (/.f64 (atan2.f64 im re) (sqrt.f64 (log.f64 base))) (sqrt.f64 (log.f64 base)))
(/.f64 (/.f64 (atan2.f64 im re) 1) (log.f64 base))
(/.f64 (/.f64 (atan2.f64 im re) (pow.f64 (cbrt.f64 (log.f64 base)) 2)) (cbrt.f64 (log.f64 base)))
(neg.f64 (/.f64 (atan2.f64 im re) (neg.f64 (log.f64 base))))
(sqrt.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2))
(log.f64 (exp.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))
(cbrt.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3))
(cbrt.f64 (/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3)))
(expm1.f64 (log1p.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(log1p.f64 (expm1.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(exp.f64 (log.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
Outputs
(*.f64 (pow.f64 (/.f64 (*.f64 1 (atan2.f64 im re)) (log.f64 (/.f64 1 base))) 1/3) (cbrt.f64 -1))
(*.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (neg.f64 (log.f64 base)))) (cbrt.f64 -1))
(*.f64 (cbrt.f64 (/.f64 (neg.f64 (atan2.f64 im re)) (log.f64 base))) (cbrt.f64 -1))
(*.f64 (pow.f64 (/.f64 (*.f64 1 (atan2.f64 im re)) (log.f64 (/.f64 1 base))) 1/3) (cbrt.f64 -1))
(*.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (neg.f64 (log.f64 base)))) (cbrt.f64 -1))
(*.f64 (cbrt.f64 (/.f64 (neg.f64 (atan2.f64 im re)) (log.f64 base))) (cbrt.f64 -1))
(*.f64 (pow.f64 (/.f64 (*.f64 1 (atan2.f64 im re)) (log.f64 (/.f64 1 base))) 1/3) (cbrt.f64 -1))
(*.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (neg.f64 (log.f64 base)))) (cbrt.f64 -1))
(*.f64 (cbrt.f64 (/.f64 (neg.f64 (atan2.f64 im re)) (log.f64 base))) (cbrt.f64 -1))
(*.f64 (pow.f64 (/.f64 (*.f64 1 (atan2.f64 im re)) (log.f64 (/.f64 1 base))) 1/3) (cbrt.f64 -1))
(*.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (neg.f64 (log.f64 base)))) (cbrt.f64 -1))
(*.f64 (cbrt.f64 (/.f64 (neg.f64 (atan2.f64 im re)) (log.f64 base))) (cbrt.f64 -1))
(pow.f64 (/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base))))) 1/3)
(cbrt.f64 (/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base))))))
(cbrt.f64 (/.f64 (atan2.f64 im re) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base)))))
(pow.f64 (/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base))))) 1/3)
(cbrt.f64 (/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base))))))
(cbrt.f64 (/.f64 (atan2.f64 im re) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base)))))
(pow.f64 (/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base))))) 1/3)
(cbrt.f64 (/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base))))))
(cbrt.f64 (/.f64 (atan2.f64 im re) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base)))))
(pow.f64 (/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base))))) 1/3)
(cbrt.f64 (/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base))))))
(cbrt.f64 (/.f64 (atan2.f64 im re) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base)))))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) (pow.f64 1 1/3))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 -1 (*.f64 (pow.f64 1 1/3) (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base)))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 -1 (*.f64 (pow.f64 1 1/3) (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base)))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 -1 (*.f64 (pow.f64 1 1/3) (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base)))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 -1 (*.f64 (pow.f64 1 1/3) (/.f64 (atan2.f64 im re) (log.f64 (/.f64 1 base)))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (pow.f64 1 1/3) (/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base))))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))))
(*.f64 (pow.f64 1 1/3) (/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base))))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))))
(*.f64 (pow.f64 1 1/3) (/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base))))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))))
(*.f64 (pow.f64 1 1/3) (/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 base))))))
(/.f64 (atan2.f64 im re) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 base)))))
(/.f64 (atan2.f64 im re) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 base))))
(-.f64 (exp.f64 (log1p.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))) 1)
(cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
(*.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 1)
(cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
(*.f64 1 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
(*.f64 (cbrt.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) 2))
(cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
(*.f64 (cbrt.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) (pow.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) 1/3))
(cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
(*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) 2) (cbrt.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))
(cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
(*.f64 (cbrt.f64 (atan2.f64 im re)) (cbrt.f64 (/.f64 1 (log.f64 base))))
(*.f64 (cbrt.f64 (atan2.f64 im re)) (pow.f64 (/.f64 1 (log.f64 base)) 1/3))
(*.f64 (cbrt.f64 (atan2.f64 im re)) (cbrt.f64 (/.f64 1 (log.f64 base))))
(*.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/6) (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/6))
(cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) 1/3) (cbrt.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))
(cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
(*.f64 (pow.f64 1 1/3) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
(*.f64 (pow.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 1/3) (pow.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 1/3))
(*.f64 (cbrt.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) (cbrt.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))
(/.f64 1 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))))
(/.f64 (cbrt.f64 (atan2.f64 im re)) (cbrt.f64 (log.f64 base)))
(/.f64 (cbrt.f64 (neg.f64 (atan2.f64 im re))) (cbrt.f64 (neg.f64 (log.f64 base))))
(sqrt.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2))
(cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
(log.f64 (exp.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))
(cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
(log.f64 (+.f64 1 (expm1.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))))
(cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
(cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
(expm1.f64 (log1p.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))
(cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
(log1p.f64 (expm1.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))
(cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
(exp.f64 (log.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))
(cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))
(-.f64 (exp.f64 (log1p.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) 1)
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1)
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 1 (/.f64 (atan2.f64 im re) (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) 2) (*.f64 (cbrt.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) (*.f64 (cbrt.f64 (atan2.f64 im re)) (/.f64 1 (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (sqrt.f64 (atan2.f64 im re)) (*.f64 (sqrt.f64 (atan2.f64 im re)) (/.f64 1 (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (neg.f64 (atan2.f64 im re)) (/.f64 1 (neg.f64 (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 1 (log.f64 base)) (atan2.f64 im re))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/6) (*.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/6) (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) 2) 3) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (pow.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/6) 3) (pow.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/6) 3))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) 1) (/.f64 (cbrt.f64 (atan2.f64 im re)) (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (sqrt.f64 (atan2.f64 im re)) 1) (/.f64 (sqrt.f64 (atan2.f64 im re)) (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (log.f64 base)) 2)) (/.f64 (atan2.f64 im re) (cbrt.f64 (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) (pow.f64 (cbrt.f64 (log.f64 base)) 2)) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(*.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) (/.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) (pow.f64 (cbrt.f64 (log.f64 base)) 2)))
(/.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) (/.f64 (pow.f64 (cbrt.f64 (log.f64 base)) 2) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))
(*.f64 (/.f64 (sqrt.f64 (atan2.f64 im re)) (pow.f64 (cbrt.f64 (log.f64 base)) 2)) (/.f64 (sqrt.f64 (atan2.f64 im re)) (cbrt.f64 (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 1 (sqrt.f64 (log.f64 base))) (/.f64 (atan2.f64 im re) (sqrt.f64 (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) (sqrt.f64 (log.f64 base))) (/.f64 (cbrt.f64 (atan2.f64 im re)) (sqrt.f64 (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (*.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) 1) (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (*.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))) 2)) (cbrt.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (*.f64 (pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2) (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/6)) (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/6))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 1 (/.f64 (log.f64 base) (atan2.f64 im re)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 1 (/.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) 1))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (pow.f64 (cbrt.f64 (atan2.f64 im re)) 2) (/.f64 (log.f64 base) (cbrt.f64 (atan2.f64 im re))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (sqrt.f64 (atan2.f64 im re)) (/.f64 (log.f64 base) (sqrt.f64 (atan2.f64 im re))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (neg.f64 (atan2.f64 im re)) (neg.f64 (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 -1 (neg.f64 (/.f64 (log.f64 base) (atan2.f64 im re))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (neg.f64 (neg.f64 (atan2.f64 im re))) (neg.f64 (neg.f64 (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (/.f64 (atan2.f64 im re) (sqrt.f64 (log.f64 base))) (sqrt.f64 (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (/.f64 (atan2.f64 im re) 1) (log.f64 base))
(/.f64 (atan2.f64 im re) (log.f64 base))
(/.f64 (/.f64 (atan2.f64 im re) (pow.f64 (cbrt.f64 (log.f64 base)) 2)) (cbrt.f64 (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(neg.f64 (/.f64 (atan2.f64 im re) (neg.f64 (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(sqrt.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 2))
(/.f64 (atan2.f64 im re) (log.f64 base))
(log.f64 (exp.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 (atan2.f64 im re) (log.f64 base)))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(cbrt.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3))
(/.f64 (atan2.f64 im re) (log.f64 base))
(cbrt.f64 (/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(expm1.f64 (log1p.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(log1p.f64 (expm1.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))
(exp.f64 (log.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(/.f64 (atan2.f64 im re) (log.f64 base))

eval153.0ms (2.5%)

Compiler

Compiled 7713 to 3174 computations (58.8% saved)

prune96.0ms (1.6%)

Pruning

21 alts after pruning (9 fresh and 12 done)

PrunedKeptTotal
New5640564
Fresh099
Picked011
Done01111
Total56421585
Error
0b
Counts
585 → 21
Alt Table
Click to see full alt table
StatusErrorProgram
33.6b
(pow.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3) 1/3)
31.3b
(pow.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/3) 3)
1.4b
(pow.f64 (/.f64 1 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re)))) 3)
30.5b
(pow.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2)
32.0b
(pow.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) -2)
1.5b
(pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 3)
0.3b
(/.f64 (atan2.f64 im re) (log.f64 base))
0.5b
(/.f64 (/.f64 1 (log.f64 base)) (/.f64 1 (atan2.f64 im re)))
0.5b
(/.f64 1 (/.f64 (log.f64 base) (atan2.f64 im re)))
0.6b
(/.f64 1 (*.f64 (/.f64 1 (atan2.f64 im re)) (log.f64 base)))
9.8b
(/.f64 1 (log.f64 (pow.f64 base (/.f64 1 (atan2.f64 im re)))))
32.6b
(/.f64 1 (exp.f64 (log.f64 (/.f64 (log.f64 base) (atan2.f64 im re)))))
5.9b
(/.f64 1 (cbrt.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) 3)))
0.4b
(*.f64 (pow.f64 (log.f64 base) -2) (*.f64 (log.f64 base) (atan2.f64 im re)))
34.1b
(*.f64 (atan2.f64 im re) (pow.f64 (pow.f64 (log.f64 base) -1/3) 3))
0.3b
(*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base)))
34.0b
(*.f64 (atan2.f64 im re) (exp.f64 (neg.f64 (log.f64 (log.f64 base)))))
0.7b
(*.f64 (atan2.f64 im re) (cbrt.f64 (pow.f64 (log.f64 base) -3)))
31.9b
(sqrt.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -2))
31.1b
(exp.f64 (log.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
5.7b
(cbrt.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3))
Compiler

Compiled 259 to 194 computations (25.1% saved)

regimes112.0ms (1.8%)

Accuracy

Total -57.1b remaining (-20588.1%)

Threshold costs -57.1b (-20588.1%)

Counts
40 → 1
Calls
Call 1
Inputs
(/.f64 (atan2.f64 im re) (log.f64 base))
(*.f64 (atan2.f64 im re) (/.f64 1 (log.f64 base)))
(/.f64 1 (/.f64 (log.f64 base) (atan2.f64 im re)))
(/.f64 1 (*.f64 (/.f64 1 (atan2.f64 im re)) (log.f64 base)))
(/.f64 (/.f64 1 (log.f64 base)) (/.f64 1 (atan2.f64 im re)))
(pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -1)
(/.f64 1 (log.f64 (pow.f64 base (/.f64 1 (atan2.f64 im re)))))
(pow.f64 (*.f64 (/.f64 1 (atan2.f64 im re)) (log.f64 base)) -1)
(exp.f64 (log.f64 (/.f64 (atan2.f64 im re) (log.f64 base))))
(cbrt.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3))
(sqrt.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) -2))
(*.f64 (atan2.f64 im re) (cbrt.f64 (pow.f64 (log.f64 base) -3)))
(*.f64 (atan2.f64 im re) (exp.f64 (neg.f64 (log.f64 (log.f64 base)))))
(*.f64 (atan2.f64 im re) (sqrt.f64 (pow.f64 (log.f64 base) -2)))
(pow.f64 (cbrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 3)
(pow.f64 (sqrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re))) -2)
(pow.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 base))) 2)
(*.f64 (atan2.f64 im re) (pow.f64 (pow.f64 (log.f64 base) -1/3) 3))
(/.f64 1 (exp.f64 (log.f64 (/.f64 (log.f64 base) (atan2.f64 im re)))))
(pow.f64 (log.f64 (pow.f64 base (/.f64 1 (atan2.f64 im re)))) -1)
(pow.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 1/3) 3)
(pow.f64 (pow.f64 (/.f64 (atan2.f64 im re) (log.f64 base)) 3) 1/3)
(*.f64 (atan2.f64 im re) (cbrt.f64 (pow.f64 (/.f64 1 (log.f64 base)) 3)))
(*.f64 (atan2.f64 im re) (pow.f64 (/.f64 1 (cbrt.f64 (log.f64 base))) 3))
(*.f64 (pow.f64 (log.f64 base) -2) (*.f64 (log.f64 base) (atan2.f64 im re)))
(/.f64 1 (cbrt.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) 3)))
(/.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) (pow.f64 (log.f64 base) 2))
(pow.f64 (/.f64 1 (cbrt.f64 (/.f64 (log.f64 base) (atan2.f64 im re)))) 3)
(/.f64 (*.f64 (atan2.f64 im re) (log.f64 base)) (*.f64 (log.f64 base) (log.f64 base)))
(*.f64 (neg.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (/.f64 1 (neg.f64 (pow.f64 (log.f64 base) 2))))
(cbrt.f64 (/.f64 (pow.f64 (atan2.f64 im re) 3) (pow.f64 (log.f64 base) 3)))
(/.f64 (/.f64 (atan2.f64 im re) (sqrt.f64 (log.f64 base))) (sqrt.f64 (log.f64 base)))
(pow.f64 (cbrt.f64 (pow.f64 (/.f64 (log.f64 base) (atan2.f64 im re)) 3)) -1)
(pow.f64 (/.f64 (sqrt.f64 (*.f64 (log.f64 base) (atan2.f64 im re))) (log.f64 base)) 2)
(/.f64 (fma.f64 (atan2.f64 im re) (log.f64 base) 0) (*.f64 (log.f64 base) (log.f64 base)))
(/.f64 (fma.f64 (atan2.f64 im re) (log.f64 base) 0) (sqrt.f64 (pow.f64 (log.f64 base) 4)))
(/.f64 (cbrt.f64 (pow.f64 (*.f64 (log.f64 base) (atan2.f64 im re)) 3)) (*.f64 (log.f64 base) (log.f64 base)))
(/.f64 (-.f64 (*.f64 (atan2.f64 im re) (log.f64 base)) (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) 0)) (+.f64 (*.f64 (log.f64 base) (log.f64 base)) (*.f64 0 0)))
(/.f64 (fma.f64 (atan2.f64 im re) (log.f64 base) 0) (exp.f64 (log.f64 (pow.f64 (log.f64 base) 2))))
(/.f64 (*.f64 (*.f64 (atan2.f64 im re) (sqrt.f64 (log.f64 base))) (sqrt.f64 (log.f64 base))) (*.f64 (log.f64 base) (log.f64 base)))
Outputs
(/.f64 (atan2.f64 im re) (log.f64 base))
Calls

5 calls:

32.0ms
re
17.0ms
(/.f64 (-.f64 (*.f64 (atan2.f64 im re) (log.f64 base)) (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) 0)) (+.f64 (*.f64 (log.f64 base) (log.f64 base)) (*.f64 0 0)))
17.0ms
(log.f64 base)
17.0ms
base
17.0ms
im
Results
ErrorSegmentsBranch
0.3b1re
0.3b1im
0.3b1base
0.3b1(/.f64 (-.f64 (*.f64 (atan2.f64 im re) (log.f64 base)) (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) 0)) (+.f64 (*.f64 (log.f64 base) (log.f64 base)) (*.f64 0 0)))
0.3b1(log.f64 base)
Compiler

Compiled 489 to 213 computations (56.4% saved)

simplify2.0ms (0%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
079
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(/.f64 (atan2.f64 im re) (log.f64 base))
Outputs
(/.f64 (atan2.f64 im re) (log.f64 base))
Compiler

Compiled 9 to 6 computations (33.3% saved)

soundness167.0ms (2.7%)

Algorithm
egg-herbie
Rules
877×fma-def_binary64
692×fma-neg_binary64
640×cube-prod_binary64
454×associate-/l*_binary64
447×sqr-pow_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01920
14119
26812
3949
41159
52739
610679
724959
835459
953049
1059099
1169949
Stop Event
node limit
Compiler

Compiled 138 to 86 computations (37.7% saved)

end13.0ms (0.2%)

Compiler

Compiled 9 to 6 computations (33.3% saved)

Profiling

Loading profile data...