Details

Time bar (total: 11.5s)

analyze327.0ms (2.8%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.9%0.1%0
0%99.9%0.1%1
0%99.9%0.1%2
0%99.9%0.1%3
0%99.9%0.1%4
0%99.9%0.1%5
0%81.1%18.9%6
0%81.1%18.9%7
9.4%68.6%22%8
14%53%32.9%9
16.4%50.7%32.9%10
24.6%40.2%35.3%11
28.7%30.2%41.1%12
Compiler

Compiled 41 to 24 computations (41.5% saved)

sample1.7s (15%)

Results
1.5s8256×body256valid
241.0ms1520×body256invalid

preprocess72.0ms (0.6%)

Algorithm
egg-herbie
Rules
632×associate-/l*_binary64
519×fma-neg_binary64
473×associate-/r*_binary64
432×div-sub_binary64
371×fma-def_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
054208
1165200
2545200
31766192
45046192
033
Stop Event
saturated
node limit
Calls
Call 1
Inputs
0
1
2
Outputs
0
1
2
Call 2
Inputs
(+.f64 (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (+.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (+.f64 (neg.f64 h) (sqrt.f64 (-.f64 (*.f64 h h) (*.f64 g g)))))) (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (-.f64 (neg.f64 h) (sqrt.f64 (-.f64 (*.f64 h h) (*.f64 g g)))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 g)) (+.f64 (neg.f64 a) (sqrt.f64 (-.f64 (*.f64 a a) (*.f64 h h)))))) (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 g)) (-.f64 (neg.f64 a) (sqrt.f64 (-.f64 (*.f64 a a) (*.f64 h h)))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 h)) (+.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 a a)))))) (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 h)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 a a)))))))
Outputs
(+.f64 (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (+.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (+.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (fma.f64 g g (*.f64 h (neg.f64 h)))) g))) (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (neg.f64 g) (sqrt.f64 (fma.f64 g g (*.f64 h (neg.f64 h))))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (+.f64 (neg.f64 h) (sqrt.f64 (-.f64 (*.f64 h h) (*.f64 g g)))))) (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (-.f64 (neg.f64 h) (sqrt.f64 (-.f64 (*.f64 h h) (*.f64 g g)))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (+.f64 (neg.f64 h) (sqrt.f64 (-.f64 (*.f64 h h) (*.f64 g g)))))) (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (neg.f64 h) (sqrt.f64 (-.f64 (*.f64 h h) (*.f64 g g)))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 h h) (*.f64 g g))) h))) (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (neg.f64 h) (sqrt.f64 (-.f64 (*.f64 h h) (*.f64 g g)))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 h h) (*.f64 g g))) h))) (cbrt.f64 (*.f64 (+.f64 h (sqrt.f64 (-.f64 (*.f64 h h) (*.f64 g g)))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 g)) (+.f64 (neg.f64 a) (sqrt.f64 (-.f64 (*.f64 a a) (*.f64 h h)))))) (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 g)) (-.f64 (neg.f64 a) (sqrt.f64 (-.f64 (*.f64 a a) (*.f64 h h)))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 g) (+.f64 (neg.f64 a) (sqrt.f64 (-.f64 (*.f64 a a) (*.f64 h h)))))) (cbrt.f64 (*.f64 (/.f64 1/2 g) (-.f64 (neg.f64 a) (sqrt.f64 (-.f64 (*.f64 a a) (*.f64 h h)))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 g) (-.f64 (sqrt.f64 (-.f64 (*.f64 a a) (*.f64 h h))) a))) (cbrt.f64 (*.f64 (/.f64 1/2 g) (-.f64 (neg.f64 a) (sqrt.f64 (-.f64 (*.f64 a a) (*.f64 h h)))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 g) (-.f64 (sqrt.f64 (-.f64 (*.f64 a a) (*.f64 h h))) a))) (cbrt.f64 (neg.f64 (/.f64 (+.f64 a (sqrt.f64 (-.f64 (*.f64 a a) (*.f64 h h)))) (*.f64 2 g)))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 g) (-.f64 (sqrt.f64 (-.f64 (*.f64 a a) (*.f64 h h))) a))) (cbrt.f64 (*.f64 (+.f64 a (sqrt.f64 (-.f64 (*.f64 a a) (*.f64 h h)))) (/.f64 -1/2 g))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 h)) (+.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 a a)))))) (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 h)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 a a)))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 h) (+.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 a a)))))) (cbrt.f64 (*.f64 (/.f64 1/2 h) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 a a)))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 h) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 a a))) g))) (cbrt.f64 (*.f64 (/.f64 1/2 h) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 a a)))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 h) (-.f64 (sqrt.f64 (fma.f64 g g (*.f64 a (neg.f64 a)))) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (fma.f64 g g (*.f64 a (neg.f64 a))))) (/.f64 -1/2 h))))
Compiler

Compiled 43 to 26 computations (39.5% saved)

simplify123.0ms (1.1%)

Algorithm
egg-herbie
Rules
729×fma-neg_binary64
529×unsub-neg_binary64
480×div-sub_binary64
394×times-frac_binary64
355×fma-def_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02052
15450
215450
347948
4128848
5264548
6391948
7530148
8612148
9671548
10778948
Stop Event
node limit
Counts
1 → 2
Calls
Call 1
Inputs
(+.f64 (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (+.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))
Outputs
(+.f64 (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (+.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (+.f64 (neg.f64 g) (sqrt.f64 (fma.f64 g g (neg.f64 (*.f64 h h))))))) (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (neg.f64 g) (sqrt.f64 (fma.f64 g g (neg.f64 (*.f64 h h))))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))

eval1.0ms (0%)

Compiler

Compiled 71 to 34 computations (52.1% saved)

prune1.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New112
Fresh101
Picked000
Done000
Total213
Error
40.4b
Counts
3 → 1
Alt Table
Click to see full alt table
StatusErrorProgram
40.4b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
Compiler

Compiled 34 to 18 computations (47.1% saved)

localize36.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
3.8b
(-.f64 (*.f64 g g) (*.f64 h h))
8.3b
(cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g)))
9.7b
(cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a)))
32.1b
(sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))
Compiler

Compiled 144 to 38 computations (73.6% saved)

series35.0ms (0.3%)

Counts
4 → 60
Calls

30 calls:

TimeVariablePointExpression
4.0ms
h
@inf
(cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a)))
4.0ms
h
@0
(cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a)))
3.0ms
g
@0
(cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a)))
2.0ms
g
@0
(cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g)))
2.0ms
g
@inf
(cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a)))

rewrite112.0ms (1%)

Algorithm
batch-egg-rewrite
Rules
507×fma-neg_binary64
325×expm1-udef_binary64
325×log1p-udef_binary64
275×log-pow_binary64
205×add-sqr-sqrt_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01868
140868
2591965
Stop Event
node limit
Counts
4 → 160
Calls
Call 1
Inputs
(sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))
(cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a)))
(cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g)))
(-.f64 (*.f64 g g) (*.f64 h h))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) (cbrt.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/4) (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 2)) (sqrt.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (+.f64 g h)) (sqrt.f64 (-.f64 g h)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/2) (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 2) 1/2) (pow.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (+.f64 g h) 1/2) (pow.f64 (-.f64 g h) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (-.f64 (pow.f64 g 4) (pow.f64 h 4))) (hypot.f64 g h))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (-.f64 (pow.f64 g 6) (pow.f64 h 6))) (hypot.f64 (*.f64 g g) (hypot.f64 (*.f64 h h) (*.f64 g h))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/4) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 3/2) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) (hypot.f64 (sqrt.f64 (*.f64 h (neg.f64 h))) h))))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 (hypot.f64 (sqrt.f64 (*.f64 h (neg.f64 h))) h) (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 (sqrt.f64 (*.f64 h (neg.f64 h))) g)))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (cbrt.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (/.f64 -1/2 a))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (/.f64 -1/2 a))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (cbrt.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (/.f64 -1/2 a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 -1/2 a)) (cbrt.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))) (cbrt.f64 (/.f64 -1/2 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (/.f64 -1/2 a)))) (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (/.f64 -1/2 a)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (/.f64 -1/2 a)))) 2) (cbrt.f64 (cbrt.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (/.f64 -1/2 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (/.f64 -1/2 a)) 1/6) (pow.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (/.f64 -1/2 a)) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/3) (cbrt.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (/.f64 -1/2 a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (/.f64 -1/2 a))) 2) 1/3) (cbrt.f64 (cbrt.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (/.f64 -1/2 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (/.f64 -1/2 a))) 1/3) (pow.f64 (sqrt.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (/.f64 -1/2 a))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) -1/2)) (cbrt.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (/.f64 -1/2 a)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (/.f64 -1/2 a))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (/.f64 -1/2 a)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (/.f64 -1/2 a)) 1/6) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (/.f64 -1/2 a))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (cbrt.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (/.f64 -1/2 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (cbrt.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (/.f64 -1/2 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (cbrt.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (/.f64 -1/2 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (cbrt.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (/.f64 -1/2 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (cbrt.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (/.f64 -1/2 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (/.f64 -1/2 a))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (/.f64 -1/2 a)))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (cbrt.f64 (*.f64 (/.f64 -1/2 a) (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (/.f64 -1/2 a) (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (cbrt.f64 (*.f64 (/.f64 -1/2 a) (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (*.f64 (/.f64 -1/2 a) (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g)))) (cbrt.f64 (cbrt.f64 (pow.f64 (*.f64 (/.f64 -1/2 a) (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (pow.f64 (*.f64 (/.f64 -1/2 a) (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g)) 2))) (cbrt.f64 (cbrt.f64 (*.f64 (/.f64 -1/2 a) (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 -1/2 a)) (cbrt.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g)) (cbrt.f64 (/.f64 -1/2 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (/.f64 -1/2 a) (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g)) 1/6) (pow.f64 (*.f64 (/.f64 -1/2 a) (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g)) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/3) (cbrt.f64 (*.f64 (/.f64 -1/2 a) (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (pow.f64 (*.f64 (/.f64 -1/2 a) (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g)) 2)) 1/3) (cbrt.f64 (cbrt.f64 (*.f64 (/.f64 -1/2 a) (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (*.f64 (/.f64 -1/2 a) (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g))) 1/3) (pow.f64 (sqrt.f64 (*.f64 (/.f64 -1/2 a) (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (*.f64 1/2 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g))) (cbrt.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 -1/2 a) (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (/.f64 -1/2 a) (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 (/.f64 -1/2 a) (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (/.f64 -1/2 a) (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g)) 1/6) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (cbrt.f64 (pow.f64 (*.f64 (/.f64 -1/2 a) (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (cbrt.f64 (*.f64 (/.f64 -1/2 a) (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (cbrt.f64 (*.f64 (/.f64 -1/2 a) (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g))))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (cbrt.f64 (*.f64 (/.f64 -1/2 a) (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (cbrt.f64 (*.f64 (/.f64 -1/2 a) (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (cbrt.f64 (*.f64 (/.f64 -1/2 a) (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (/.f64 -1/2 a) (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (/.f64 -1/2 a) (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g)))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 g g) (*.f64 h (neg.f64 h)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 g g) (*.f64 (*.f64 h (neg.f64 h)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 g g) (+.f64 (*.f64 h (neg.f64 h)) (fma.f64 (neg.f64 h) h (*.f64 h h))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 g g) (*.f64 h h)) (fma.f64 (neg.f64 h) h (*.f64 h h)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 g g) (*.f64 h h)) (fma.f64 (*.f64 h (neg.f64 h)) 1 (*.f64 h h)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 g g) (*.f64 h h)) (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 h) 2)) (cbrt.f64 (pow.f64 h 4)) (*.f64 h h)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 g g) (*.f64 h h)) (*.f64 (fma.f64 (neg.f64 h) h (*.f64 h h)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 g g) (*.f64 h h)) (+.f64 (fma.f64 (neg.f64 h) h (*.f64 h h)) (fma.f64 (neg.f64 h) h (*.f64 h h))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 h (neg.f64 h)) (*.f64 g g))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (neg.f64 h) h (*.f64 h h)) (-.f64 (*.f64 g g) (*.f64 h h)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (*.f64 g g) (*.f64 h h)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) (pow.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) (*.f64 (cbrt.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 2) (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/4) (*.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/4) (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 g 6) (pow.f64 h 6)) (/.f64 1 (+.f64 (+.f64 (pow.f64 g 4) (pow.f64 h 4)) (pow.f64 (*.f64 g h) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 g 4) (pow.f64 h 4)) (/.f64 1 (fma.f64 g g (*.f64 h h))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 g h) (-.f64 g h))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 g h) (+.f64 g h))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/4)) (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (cbrt.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (+.f64 (pow.f64 g 4) (pow.f64 h 4)) (pow.f64 (*.f64 g h) 2)) (-.f64 (pow.f64 g 6) (pow.f64 h 6))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 g g (*.f64 h h)) (-.f64 (pow.f64 g 4) (pow.f64 h 4))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 g 6) (pow.f64 h 6)) (+.f64 (+.f64 (pow.f64 g 4) (pow.f64 h 4)) (pow.f64 (*.f64 g h) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 g 4) (pow.f64 h 4)) (fma.f64 g g (*.f64 h h)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 g 6) (pow.f64 h 6))) (neg.f64 (+.f64 (+.f64 (pow.f64 g 4) (pow.f64 h 4)) (pow.f64 (*.f64 g h) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 g 4) (pow.f64 h 4))) (neg.f64 (fma.f64 g g (*.f64 h h))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 g 6) (pow.f64 (*.f64 h (neg.f64 h)) 3)) (+.f64 (pow.f64 g 4) (-.f64 (*.f64 (*.f64 h (neg.f64 h)) (*.f64 h (neg.f64 h))) (*.f64 (*.f64 g g) (*.f64 h (neg.f64 h))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 3) (pow.f64 (fma.f64 (neg.f64 h) h (*.f64 h h)) 3)) (+.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 2) (-.f64 (*.f64 (fma.f64 (neg.f64 h) h (*.f64 h h)) (fma.f64 (neg.f64 h) h (*.f64 h h))) (*.f64 (-.f64 (*.f64 g g) (*.f64 h h)) (fma.f64 (neg.f64 h) h (*.f64 h h))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 g 4) (*.f64 (*.f64 h (neg.f64 h)) (*.f64 h (neg.f64 h)))) (-.f64 (*.f64 g g) (*.f64 h (neg.f64 h))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 2) (*.f64 (fma.f64 (neg.f64 h) h (*.f64 h h)) (fma.f64 (neg.f64 h) h (*.f64 h h)))) (-.f64 (-.f64 (*.f64 g g) (*.f64 h h)) (fma.f64 (neg.f64 h) h (*.f64 h h))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (+.f64 g h)) (-.f64 g h)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (*.f64 g g))) (pow.f64 (exp.f64 h) h)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (pow.f64 (exp.f64 g) g) (+.f64 1 (expm1.f64 (*.f64 h h)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (*.f64 g g))) (+.f64 1 (expm1.f64 (*.f64 h h)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 g g))) (exp.f64 (*.f64 h (neg.f64 h)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 g) g) (/.f64 1 (pow.f64 (exp.f64 h) h))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 g g))) (/.f64 1 (pow.f64 (exp.f64 h) h))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (exp.f64 (fma.f64 (neg.f64 h) h (*.f64 h h)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 h (neg.f64 h))) (pow.f64 (exp.f64 g) g)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 1 (pow.f64 (exp.f64 h) h)) (pow.f64 (exp.f64 g) g)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 h (neg.f64 h))) (+.f64 1 (expm1.f64 (*.f64 g g)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 1 (pow.f64 (exp.f64 h) h)) (+.f64 1 (expm1.f64 (*.f64 g g)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 (neg.f64 h) h (*.f64 h h))) (pow.f64 (exp.f64 (+.f64 g h)) (-.f64 g h))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 (neg.f64 h) h (*.f64 h h))) (+.f64 1 (expm1.f64 (-.f64 (*.f64 g g) (*.f64 h h))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (-.f64 (*.f64 g g) (*.f64 h h))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (-.f64 (*.f64 g g) (*.f64 h h))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (-.f64 (*.f64 g g) (*.f64 h h))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 g g (*.f64 h (neg.f64 h)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 g g (neg.f64 (-.f64 (*.f64 h h) (fma.f64 (neg.f64 h) h (*.f64 h h)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 g g) 1 (*.f64 h (neg.f64 h)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 g g) 1 (neg.f64 (-.f64 (*.f64 h h) (fma.f64 (neg.f64 h) h (*.f64 h h)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) (fma.f64 (neg.f64 h) h (*.f64 h h)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 g g) (*.f64 h (neg.f64 h)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 g g) (neg.f64 (-.f64 (*.f64 h h) (fma.f64 (neg.f64 h) h (*.f64 h h)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (*.f64 g g) (*.f64 h h)) (fma.f64 (neg.f64 h) h (*.f64 h h)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 2) (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) (fma.f64 (neg.f64 h) h (*.f64 h h)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 g) 2) (cbrt.f64 (pow.f64 g 4)) (*.f64 h (neg.f64 h)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 g) 2) (cbrt.f64 (pow.f64 g 4)) (neg.f64 (-.f64 (*.f64 h h) (fma.f64 (neg.f64 h) h (*.f64 h h)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 g) 2) (*.f64 (cbrt.f64 g) g) (*.f64 h (neg.f64 h)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 g) 2) (*.f64 (cbrt.f64 g) g) (neg.f64 (-.f64 (*.f64 h h) (fma.f64 (neg.f64 h) h (*.f64 h h)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 g 4)) (pow.f64 (cbrt.f64 g) 2) (*.f64 h (neg.f64 h)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 g 4)) (pow.f64 (cbrt.f64 g) 2) (neg.f64 (-.f64 (*.f64 h h) (fma.f64 (neg.f64 h) h (*.f64 h h)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 g) (*.f64 (sqrt.f64 g) g) (*.f64 h (neg.f64 h)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 g) (*.f64 (sqrt.f64 g) g) (neg.f64 (-.f64 (*.f64 h h) (fma.f64 (neg.f64 h) h (*.f64 h h)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 g h) (-.f64 g h) (fma.f64 (neg.f64 h) h (*.f64 h h)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 g (sqrt.f64 g)) (sqrt.f64 g) (*.f64 h (neg.f64 h)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 g (sqrt.f64 g)) (sqrt.f64 g) (neg.f64 (-.f64 (*.f64 h h) (fma.f64 (neg.f64 h) h (*.f64 h h)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 g (pow.f64 (cbrt.f64 g) 2)) (cbrt.f64 g) (*.f64 h (neg.f64 h)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 g (pow.f64 (cbrt.f64 g) 2)) (cbrt.f64 g) (neg.f64 (-.f64 (*.f64 h h) (fma.f64 (neg.f64 h) h (*.f64 h h)))))))))

simplify99.0ms (0.9%)

Algorithm
egg-herbie
Rules
944×fma-def_binary64
622×associate-/l*_binary64
365×unswap-sqr_binary64
296×associate-*l/_binary64
260×associate-*r/_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02042389
16352172
223722125
366812125
Stop Event
node limit
Counts
220 → 220
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 -1) h)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (*.f64 (sqrt.f64 -1) h))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3)))) (*.f64 (sqrt.f64 -1) h)))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3)))) (+.f64 (*.f64 (sqrt.f64 -1) h) (*.f64 1/16 (/.f64 (pow.f64 g 6) (*.f64 (pow.f64 (sqrt.f64 -1) 5) (pow.f64 h 5)))))))
g
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) g)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 g (*.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 (*.f64 -1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5))) (+.f64 g (*.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))))))
(*.f64 -1 g)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 -1 g))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 (*.f64 -1 g) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))))
(+.f64 (*.f64 1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 (*.f64 -1 g) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))))))
g
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) g)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 g (*.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 (*.f64 -1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5))) (+.f64 g (*.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))))))
(*.f64 (sqrt.f64 -1) h)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (*.f64 (sqrt.f64 -1) h))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3)))) (*.f64 (sqrt.f64 -1) h)))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3)))) (+.f64 (*.f64 (sqrt.f64 -1) h) (*.f64 1/16 (/.f64 (pow.f64 g 6) (*.f64 (pow.f64 (sqrt.f64 -1) 5) (pow.f64 h 5)))))))
(*.f64 -1 (*.f64 (sqrt.f64 -1) h))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (*.f64 -1 (*.f64 (sqrt.f64 -1) h)))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (+.f64 (*.f64 -1 (*.f64 (sqrt.f64 -1) h)) (*.f64 1/8 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3))))))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (+.f64 (*.f64 -1 (*.f64 (sqrt.f64 -1) h)) (+.f64 (*.f64 -1/16 (/.f64 (pow.f64 g 6) (*.f64 (pow.f64 (sqrt.f64 -1) 5) (pow.f64 h 5)))) (*.f64 1/8 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3)))))))
(*.f64 (pow.f64 (/.f64 (*.f64 (sqrt.f64 -1) (*.f64 1 h)) a) 1/3) (cbrt.f64 -1/2))
(+.f64 (*.f64 (pow.f64 (/.f64 (*.f64 (sqrt.f64 -1) (*.f64 1 h)) a) 1/3) (cbrt.f64 -1/2)) (*.f64 1/3 (*.f64 (*.f64 (cbrt.f64 -1/2) g) (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (pow.f64 a 7) (pow.f64 h 2)))) 1/9))))
(+.f64 (*.f64 (pow.f64 (/.f64 (*.f64 (sqrt.f64 -1) (*.f64 1 h)) a) 1/3) (cbrt.f64 -1/2)) (+.f64 (*.f64 1/3 (*.f64 (*.f64 (cbrt.f64 -1/2) g) (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (pow.f64 a 7) (pow.f64 h 2)))) 1/9))) (*.f64 1/3 (*.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (*.f64 1/3 (pow.f64 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 (pow.f64 a 17) h))) 1/9))) (pow.f64 g 2))) (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (pow.f64 h 2))) 1/3)))))
(+.f64 (*.f64 -1/3 (*.f64 (*.f64 (+.f64 (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 5) (*.f64 (pow.f64 a 4) (pow.f64 h 5)))) 1/9) (-.f64 (*.f64 1/2 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (*.f64 1/3 (pow.f64 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 (pow.f64 a 17) h))) 1/9))))) (*.f64 1/27 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (pow.f64 a 7) (pow.f64 h 2)))) 1/3))) (*.f64 (cbrt.f64 -1/2) (pow.f64 g 3))) (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (pow.f64 h 2))) 1/3))) (+.f64 (*.f64 (pow.f64 (/.f64 (*.f64 (sqrt.f64 -1) (*.f64 1 h)) a) 1/3) (cbrt.f64 -1/2)) (+.f64 (*.f64 1/3 (*.f64 (*.f64 (cbrt.f64 -1/2) g) (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (pow.f64 a 7) (pow.f64 h 2)))) 1/9))) (*.f64 1/3 (*.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (*.f64 1/3 (pow.f64 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 (pow.f64 a 17) h))) 1/9))) (pow.f64 g 2))) (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (pow.f64 h 2))) 1/3))))))
(*.f64 (pow.f64 (/.f64 (*.f64 1 g) a) 1/3) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)))
(+.f64 (*.f64 -1/6 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 h 2)) (pow.f64 (cbrt.f64 2) 2)) (pow.f64 (/.f64 1 (*.f64 a (pow.f64 g 5))) 1/3))) (*.f64 (pow.f64 (/.f64 (*.f64 1 g) a) 1/3) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2))))
(+.f64 (*.f64 -1/6 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 h 2)) (pow.f64 (cbrt.f64 2) 2)) (pow.f64 (/.f64 1 (*.f64 a (pow.f64 g 5))) 1/3))) (+.f64 (*.f64 -1/18 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 h 4)) (pow.f64 (cbrt.f64 2) 2)) (pow.f64 (/.f64 1 (*.f64 a (pow.f64 g 11))) 1/3))) (*.f64 (pow.f64 (/.f64 (*.f64 1 g) a) 1/3) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)))))
(+.f64 (*.f64 -1/6 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 h 2)) (pow.f64 (cbrt.f64 2) 2)) (pow.f64 (/.f64 1 (*.f64 a (pow.f64 g 5))) 1/3))) (+.f64 (*.f64 1/3 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (-.f64 (*.f64 1/216 (/.f64 1 (*.f64 a (*.f64 (pow.f64 (cbrt.f64 2) 6) (pow.f64 g 5))))) (*.f64 13/144 (/.f64 1 (*.f64 a (pow.f64 g 5))))) (pow.f64 h 6))) (pow.f64 (cbrt.f64 2) 2)) (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (pow.f64 g 2)) 1/3))) (+.f64 (*.f64 -1/18 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 h 4)) (pow.f64 (cbrt.f64 2) 2)) (pow.f64 (/.f64 1 (*.f64 a (pow.f64 g 11))) 1/3))) (*.f64 (pow.f64 (/.f64 (*.f64 1 g) a) 1/3) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2))))))
(*.f64 (pow.f64 (/.f64 (*.f64 (sqrt.f64 -1) (*.f64 1 h)) a) 1/3) (cbrt.f64 1/2))
(+.f64 (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (pow.f64 a 7) (pow.f64 h 2)))) 1/9) (*.f64 (cbrt.f64 1/2) g))) (*.f64 (pow.f64 (/.f64 (*.f64 (sqrt.f64 -1) (*.f64 1 h)) a) 1/3) (cbrt.f64 1/2)))
(+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (pow.f64 h 2))) 1/3) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (*.f64 1/3 (pow.f64 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 (pow.f64 a 17) h))) 1/9))) (*.f64 (pow.f64 g 2) (cbrt.f64 1/2))))) (+.f64 (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (pow.f64 a 7) (pow.f64 h 2)))) 1/9) (*.f64 (cbrt.f64 1/2) g))) (*.f64 (pow.f64 (/.f64 (*.f64 (sqrt.f64 -1) (*.f64 1 h)) a) 1/3) (cbrt.f64 1/2))))
(+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (pow.f64 h 2))) 1/3) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (*.f64 1/3 (pow.f64 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 (pow.f64 a 17) h))) 1/9))) (*.f64 (pow.f64 g 2) (cbrt.f64 1/2))))) (+.f64 (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (pow.f64 h 2))) 1/3) (*.f64 (+.f64 (*.f64 -1/27 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (pow.f64 a 7) (pow.f64 h 2)))) 1/3)) (*.f64 -2/3 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 5) (*.f64 (pow.f64 a 4) (pow.f64 h 5)))) 1/9) (-.f64 (*.f64 1/2 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (*.f64 1/3 (pow.f64 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 (pow.f64 a 17) h))) 1/9)))))) (*.f64 (pow.f64 g 3) (cbrt.f64 1/2))))) (+.f64 (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (pow.f64 a 7) (pow.f64 h 2)))) 1/9) (*.f64 (cbrt.f64 1/2) g))) (*.f64 (pow.f64 (/.f64 (*.f64 (sqrt.f64 -1) (*.f64 1 h)) a) 1/3) (cbrt.f64 1/2)))))
(*.f64 -1 (pow.f64 h 2))
(+.f64 (pow.f64 g 2) (*.f64 -1 (pow.f64 h 2)))
(+.f64 (pow.f64 g 2) (*.f64 -1 (pow.f64 h 2)))
(+.f64 (pow.f64 g 2) (*.f64 -1 (pow.f64 h 2)))
(pow.f64 g 2)
(+.f64 (pow.f64 g 2) (*.f64 -1 (pow.f64 h 2)))
(+.f64 (pow.f64 g 2) (*.f64 -1 (pow.f64 h 2)))
(+.f64 (pow.f64 g 2) (*.f64 -1 (pow.f64 h 2)))
(pow.f64 g 2)
(+.f64 (pow.f64 g 2) (*.f64 -1 (pow.f64 h 2)))
(+.f64 (pow.f64 g 2) (*.f64 -1 (pow.f64 h 2)))
(+.f64 (pow.f64 g 2) (*.f64 -1 (pow.f64 h 2)))
(pow.f64 g 2)
(+.f64 (pow.f64 g 2) (*.f64 -1 (pow.f64 h 2)))
(+.f64 (pow.f64 g 2) (*.f64 -1 (pow.f64 h 2)))
(+.f64 (pow.f64 g 2) (*.f64 -1 (pow.f64 h 2)))
(*.f64 -1 (pow.f64 h 2))
(+.f64 (pow.f64 g 2) (*.f64 -1 (pow.f64 h 2)))
(+.f64 (pow.f64 g 2) (*.f64 -1 (pow.f64 h 2)))
(+.f64 (pow.f64 g 2) (*.f64 -1 (pow.f64 h 2)))
(*.f64 -1 (pow.f64 h 2))
(+.f64 (pow.f64 g 2) (*.f64 -1 (pow.f64 h 2)))
(+.f64 (pow.f64 g 2) (*.f64 -1 (pow.f64 h 2)))
(+.f64 (pow.f64 g 2) (*.f64 -1 (pow.f64 h 2)))
Outputs
(*.f64 (sqrt.f64 -1) h)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (*.f64 (sqrt.f64 -1) h))
(fma.f64 1/2 (/.f64 (*.f64 g g) (*.f64 (sqrt.f64 -1) h)) (*.f64 (sqrt.f64 -1) h))
(fma.f64 (sqrt.f64 -1) h (*.f64 1/2 (*.f64 (/.f64 g (sqrt.f64 -1)) (/.f64 g h))))
(fma.f64 (sqrt.f64 -1) h (/.f64 (*.f64 (/.f64 g (sqrt.f64 -1)) g) (/.f64 h 1/2)))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3)))) (*.f64 (sqrt.f64 -1) h)))
(fma.f64 1/2 (/.f64 (*.f64 g g) (*.f64 (sqrt.f64 -1) h)) (fma.f64 -1/8 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3))) (*.f64 (sqrt.f64 -1) h)))
(fma.f64 1/2 (*.f64 (/.f64 g (sqrt.f64 -1)) (/.f64 g h)) (fma.f64 (sqrt.f64 -1) h (*.f64 -1/8 (/.f64 (pow.f64 g 4) (*.f64 (neg.f64 (sqrt.f64 -1)) (pow.f64 h 3))))))
(fma.f64 (/.f64 -1/8 (neg.f64 (sqrt.f64 -1))) (/.f64 (pow.f64 g 4) (pow.f64 h 3)) (fma.f64 (sqrt.f64 -1) h (/.f64 (*.f64 (/.f64 g (sqrt.f64 -1)) g) (/.f64 h 1/2))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3)))) (+.f64 (*.f64 (sqrt.f64 -1) h) (*.f64 1/16 (/.f64 (pow.f64 g 6) (*.f64 (pow.f64 (sqrt.f64 -1) 5) (pow.f64 h 5)))))))
(fma.f64 1/2 (/.f64 (*.f64 g g) (*.f64 (sqrt.f64 -1) h)) (fma.f64 -1/8 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3))) (fma.f64 (sqrt.f64 -1) h (*.f64 1/16 (/.f64 (pow.f64 g 6) (*.f64 (pow.f64 (sqrt.f64 -1) 5) (pow.f64 h 5)))))))
(fma.f64 1/2 (*.f64 (/.f64 g (sqrt.f64 -1)) (/.f64 g h)) (fma.f64 -1/8 (/.f64 (pow.f64 g 4) (*.f64 (neg.f64 (sqrt.f64 -1)) (pow.f64 h 3))) (fma.f64 (sqrt.f64 -1) h (*.f64 1/16 (/.f64 (pow.f64 g 6) (*.f64 (pow.f64 (sqrt.f64 -1) 5) (pow.f64 h 5)))))))
(fma.f64 1/2 (*.f64 (/.f64 g (sqrt.f64 -1)) (/.f64 g h)) (fma.f64 (sqrt.f64 -1) h (fma.f64 -1/8 (/.f64 (pow.f64 g 4) (*.f64 (sqrt.f64 -1) (neg.f64 (pow.f64 h 3)))) (*.f64 (/.f64 1/16 (pow.f64 (sqrt.f64 -1) 5)) (/.f64 (pow.f64 g 6) (pow.f64 h 5))))))
g
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) g)
(fma.f64 -1/2 (/.f64 (*.f64 h h) g) g)
(fma.f64 -1/2 (/.f64 h (/.f64 g h)) g)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 g (*.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))))
(+.f64 (fma.f64 -1/2 (/.f64 (*.f64 h h) g) g) (*.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))))
(fma.f64 -1/2 (/.f64 h (/.f64 g h)) (fma.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) g))
(fma.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 (*.f64 -1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5))) (+.f64 g (*.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))))))
(fma.f64 -1/2 (/.f64 (*.f64 h h) g) (fma.f64 -1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5)) (+.f64 g (*.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))))))
(fma.f64 -1/2 (/.f64 h (/.f64 g h)) (fma.f64 -1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5)) (fma.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) g)))
(fma.f64 -1/2 (/.f64 h (/.f64 g h)) (fma.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (fma.f64 -1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5)) g)))
(*.f64 -1 g)
(neg.f64 g)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 -1 g))
(fma.f64 1/2 (/.f64 (*.f64 h h) g) (neg.f64 g))
(-.f64 (*.f64 1/2 (/.f64 h (/.f64 g h))) g)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 (*.f64 -1 g) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))))
(fma.f64 1/2 (/.f64 (*.f64 h h) g) (fma.f64 -1 g (*.f64 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) 1/8)))
(fma.f64 1/2 (/.f64 h (/.f64 g h)) (-.f64 (/.f64 1/8 (/.f64 (pow.f64 g 3) (pow.f64 h 4))) g))
(-.f64 (fma.f64 1/2 (/.f64 h (/.f64 g h)) (*.f64 (/.f64 1/8 (pow.f64 g 3)) (pow.f64 h 4))) g)
(-.f64 (*.f64 (/.f64 1/8 (pow.f64 g 3)) (pow.f64 h 4)) (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g))
(+.f64 (*.f64 1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 (*.f64 -1 g) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))))))
(fma.f64 1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5)) (fma.f64 1/2 (/.f64 (*.f64 h h) g) (fma.f64 -1 g (*.f64 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) 1/8))))
(fma.f64 1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5)) (fma.f64 1/2 (/.f64 h (/.f64 g h)) (-.f64 (/.f64 1/8 (/.f64 (pow.f64 g 3) (pow.f64 h 4))) g)))
(fma.f64 1/2 (/.f64 h (/.f64 g h)) (-.f64 (fma.f64 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) 1/8 (*.f64 1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5)))) g))
(fma.f64 1/2 (/.f64 h (/.f64 g h)) (-.f64 (*.f64 (/.f64 1/8 (pow.f64 g 3)) (pow.f64 h 4)) (fma.f64 -1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5)) g)))
g
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) g)
(fma.f64 -1/2 (/.f64 (*.f64 h h) g) g)
(fma.f64 -1/2 (/.f64 h (/.f64 g h)) g)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 g (*.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))))
(+.f64 (fma.f64 -1/2 (/.f64 (*.f64 h h) g) g) (*.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))))
(fma.f64 -1/2 (/.f64 h (/.f64 g h)) (fma.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) g))
(fma.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 (*.f64 -1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5))) (+.f64 g (*.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))))))
(fma.f64 -1/2 (/.f64 (*.f64 h h) g) (fma.f64 -1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5)) (+.f64 g (*.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))))))
(fma.f64 -1/2 (/.f64 h (/.f64 g h)) (fma.f64 -1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5)) (fma.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) g)))
(fma.f64 -1/2 (/.f64 h (/.f64 g h)) (fma.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (fma.f64 -1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5)) g)))
(*.f64 (sqrt.f64 -1) h)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (*.f64 (sqrt.f64 -1) h))
(fma.f64 1/2 (/.f64 (*.f64 g g) (*.f64 (sqrt.f64 -1) h)) (*.f64 (sqrt.f64 -1) h))
(fma.f64 (sqrt.f64 -1) h (*.f64 1/2 (*.f64 (/.f64 g (sqrt.f64 -1)) (/.f64 g h))))
(fma.f64 (sqrt.f64 -1) h (/.f64 (*.f64 (/.f64 g (sqrt.f64 -1)) g) (/.f64 h 1/2)))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3)))) (*.f64 (sqrt.f64 -1) h)))
(fma.f64 1/2 (/.f64 (*.f64 g g) (*.f64 (sqrt.f64 -1) h)) (fma.f64 -1/8 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3))) (*.f64 (sqrt.f64 -1) h)))
(fma.f64 1/2 (*.f64 (/.f64 g (sqrt.f64 -1)) (/.f64 g h)) (fma.f64 (sqrt.f64 -1) h (*.f64 -1/8 (/.f64 (pow.f64 g 4) (*.f64 (neg.f64 (sqrt.f64 -1)) (pow.f64 h 3))))))
(fma.f64 (/.f64 -1/8 (neg.f64 (sqrt.f64 -1))) (/.f64 (pow.f64 g 4) (pow.f64 h 3)) (fma.f64 (sqrt.f64 -1) h (/.f64 (*.f64 (/.f64 g (sqrt.f64 -1)) g) (/.f64 h 1/2))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3)))) (+.f64 (*.f64 (sqrt.f64 -1) h) (*.f64 1/16 (/.f64 (pow.f64 g 6) (*.f64 (pow.f64 (sqrt.f64 -1) 5) (pow.f64 h 5)))))))
(fma.f64 1/2 (/.f64 (*.f64 g g) (*.f64 (sqrt.f64 -1) h)) (fma.f64 -1/8 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3))) (fma.f64 (sqrt.f64 -1) h (*.f64 1/16 (/.f64 (pow.f64 g 6) (*.f64 (pow.f64 (sqrt.f64 -1) 5) (pow.f64 h 5)))))))
(fma.f64 1/2 (*.f64 (/.f64 g (sqrt.f64 -1)) (/.f64 g h)) (fma.f64 -1/8 (/.f64 (pow.f64 g 4) (*.f64 (neg.f64 (sqrt.f64 -1)) (pow.f64 h 3))) (fma.f64 (sqrt.f64 -1) h (*.f64 1/16 (/.f64 (pow.f64 g 6) (*.f64 (pow.f64 (sqrt.f64 -1) 5) (pow.f64 h 5)))))))
(fma.f64 1/2 (*.f64 (/.f64 g (sqrt.f64 -1)) (/.f64 g h)) (fma.f64 (sqrt.f64 -1) h (fma.f64 -1/8 (/.f64 (pow.f64 g 4) (*.f64 (sqrt.f64 -1) (neg.f64 (pow.f64 h 3)))) (*.f64 (/.f64 1/16 (pow.f64 (sqrt.f64 -1) 5)) (/.f64 (pow.f64 g 6) (pow.f64 h 5))))))
(*.f64 -1 (*.f64 (sqrt.f64 -1) h))
(neg.f64 (*.f64 (sqrt.f64 -1) h))
(*.f64 (sqrt.f64 -1) (neg.f64 h))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (*.f64 -1 (*.f64 (sqrt.f64 -1) h)))
(fma.f64 -1/2 (/.f64 (*.f64 g g) (*.f64 (sqrt.f64 -1) h)) (neg.f64 (*.f64 (sqrt.f64 -1) h)))
(-.f64 (*.f64 (/.f64 -1/2 h) (/.f64 g (/.f64 (sqrt.f64 -1) g))) (*.f64 (sqrt.f64 -1) h))
(-.f64 (*.f64 (/.f64 -1/2 h) (*.f64 (/.f64 g (sqrt.f64 -1)) g)) (*.f64 (sqrt.f64 -1) h))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (+.f64 (*.f64 -1 (*.f64 (sqrt.f64 -1) h)) (*.f64 1/8 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3))))))
(fma.f64 -1/2 (/.f64 (*.f64 g g) (*.f64 (sqrt.f64 -1) h)) (fma.f64 -1 (*.f64 (sqrt.f64 -1) h) (*.f64 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3))) 1/8)))
(fma.f64 (*.f64 (/.f64 g (sqrt.f64 -1)) (/.f64 g h)) -1/2 (-.f64 (*.f64 (/.f64 1/8 (neg.f64 (sqrt.f64 -1))) (/.f64 (pow.f64 g 4) (pow.f64 h 3))) (*.f64 (sqrt.f64 -1) h)))
(-.f64 (fma.f64 (*.f64 (/.f64 g (sqrt.f64 -1)) (/.f64 g h)) -1/2 (*.f64 (/.f64 1/8 (neg.f64 (sqrt.f64 -1))) (/.f64 (pow.f64 g 4) (pow.f64 h 3)))) (*.f64 (sqrt.f64 -1) h))
(-.f64 (*.f64 (/.f64 1/8 (neg.f64 (sqrt.f64 -1))) (/.f64 (pow.f64 g 4) (pow.f64 h 3))) (fma.f64 (sqrt.f64 -1) h (/.f64 (*.f64 (/.f64 g (sqrt.f64 -1)) g) (/.f64 h 1/2))))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (+.f64 (*.f64 -1 (*.f64 (sqrt.f64 -1) h)) (+.f64 (*.f64 -1/16 (/.f64 (pow.f64 g 6) (*.f64 (pow.f64 (sqrt.f64 -1) 5) (pow.f64 h 5)))) (*.f64 1/8 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3)))))))
(fma.f64 -1/2 (/.f64 (*.f64 g g) (*.f64 (sqrt.f64 -1) h)) (fma.f64 -1 (*.f64 (sqrt.f64 -1) h) (fma.f64 -1/16 (/.f64 (pow.f64 g 6) (*.f64 (pow.f64 (sqrt.f64 -1) 5) (pow.f64 h 5))) (*.f64 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3))) 1/8))))
(fma.f64 (*.f64 (/.f64 g (sqrt.f64 -1)) (/.f64 g h)) -1/2 (-.f64 (fma.f64 (/.f64 (pow.f64 g 4) (*.f64 (neg.f64 (sqrt.f64 -1)) (pow.f64 h 3))) 1/8 (*.f64 (/.f64 (pow.f64 g 6) (*.f64 (pow.f64 (sqrt.f64 -1) 5) (pow.f64 h 5))) -1/16)) (*.f64 (sqrt.f64 -1) h)))
(-.f64 (fma.f64 (*.f64 (/.f64 g (sqrt.f64 -1)) (/.f64 g h)) -1/2 (fma.f64 (/.f64 (pow.f64 g 4) (*.f64 (sqrt.f64 -1) (neg.f64 (pow.f64 h 3)))) 1/8 (/.f64 (*.f64 -1/16 (/.f64 (pow.f64 g 6) (pow.f64 h 5))) (pow.f64 (sqrt.f64 -1) 5)))) (*.f64 (sqrt.f64 -1) h))
(fma.f64 (*.f64 (/.f64 g (sqrt.f64 -1)) (/.f64 g h)) -1/2 (-.f64 (*.f64 (/.f64 1/8 (neg.f64 (sqrt.f64 -1))) (/.f64 (pow.f64 g 4) (pow.f64 h 3))) (fma.f64 (/.f64 1/16 (pow.f64 (sqrt.f64 -1) 5)) (/.f64 (pow.f64 g 6) (pow.f64 h 5)) (*.f64 (sqrt.f64 -1) h))))
(*.f64 (pow.f64 (/.f64 (*.f64 (sqrt.f64 -1) (*.f64 1 h)) a) 1/3) (cbrt.f64 -1/2))
(*.f64 (cbrt.f64 (/.f64 (sqrt.f64 -1) (/.f64 a h))) (cbrt.f64 -1/2))
(*.f64 (cbrt.f64 (*.f64 (/.f64 (sqrt.f64 -1) a) h)) (cbrt.f64 -1/2))
(+.f64 (*.f64 (pow.f64 (/.f64 (*.f64 (sqrt.f64 -1) (*.f64 1 h)) a) 1/3) (cbrt.f64 -1/2)) (*.f64 1/3 (*.f64 (*.f64 (cbrt.f64 -1/2) g) (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (pow.f64 a 7) (pow.f64 h 2)))) 1/9))))
(fma.f64 (cbrt.f64 (/.f64 (sqrt.f64 -1) (/.f64 a h))) (cbrt.f64 -1/2) (*.f64 1/3 (*.f64 (*.f64 g (cbrt.f64 -1/2)) (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (*.f64 h h) (pow.f64 a 7)))) 1/18) (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (*.f64 h h) (pow.f64 a 7)))) 1/18)))))
(fma.f64 1/3 (*.f64 (*.f64 g (cbrt.f64 -1/2)) (*.f64 (pow.f64 (/.f64 -1 (*.f64 h (*.f64 h (pow.f64 a 7)))) 1/18) (pow.f64 (/.f64 -1 (*.f64 h (*.f64 h (pow.f64 a 7)))) 1/18))) (*.f64 (cbrt.f64 (*.f64 (/.f64 (sqrt.f64 -1) a) h)) (cbrt.f64 -1/2)))
(*.f64 (cbrt.f64 -1/2) (+.f64 (cbrt.f64 (*.f64 (/.f64 (sqrt.f64 -1) a) h)) (*.f64 (*.f64 g (*.f64 (pow.f64 (/.f64 -1 (*.f64 (*.f64 h h) (pow.f64 a 7))) 1/18) (pow.f64 (/.f64 -1 (*.f64 (*.f64 h h) (pow.f64 a 7))) 1/18))) 1/3)))
(+.f64 (*.f64 (pow.f64 (/.f64 (*.f64 (sqrt.f64 -1) (*.f64 1 h)) a) 1/3) (cbrt.f64 -1/2)) (+.f64 (*.f64 1/3 (*.f64 (*.f64 (cbrt.f64 -1/2) g) (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (pow.f64 a 7) (pow.f64 h 2)))) 1/9))) (*.f64 1/3 (*.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (*.f64 1/3 (pow.f64 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 (pow.f64 a 17) h))) 1/9))) (pow.f64 g 2))) (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (pow.f64 h 2))) 1/3)))))
(fma.f64 (cbrt.f64 (/.f64 (sqrt.f64 -1) (/.f64 a h))) (cbrt.f64 -1/2) (*.f64 1/3 (+.f64 (*.f64 (*.f64 g (cbrt.f64 -1/2)) (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (*.f64 h h) (pow.f64 a 7)))) 1/18) (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (*.f64 h h) (pow.f64 a 7)))) 1/18))) (*.f64 (cbrt.f64 -1/2) (*.f64 (*.f64 (*.f64 g g) (-.f64 (/.f64 1/2 (*.f64 (sqrt.f64 -1) (*.f64 h a))) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 h (pow.f64 a 17)))) 1/18) (pow.f64 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 h (pow.f64 a 17)))) 1/18))))) (cbrt.f64 (/.f64 (*.f64 a a) (*.f64 (*.f64 h h) (pow.f64 (sqrt.f64 -1) 2)))))))))
(fma.f64 1/3 (*.f64 (cbrt.f64 -1/2) (+.f64 (*.f64 g (*.f64 (pow.f64 (/.f64 -1 (*.f64 h (*.f64 h (pow.f64 a 7)))) 1/18) (pow.f64 (/.f64 -1 (*.f64 h (*.f64 h (pow.f64 a 7)))) 1/18))) (*.f64 (+.f64 (/.f64 1/2 (*.f64 (sqrt.f64 -1) (*.f64 h a))) (*.f64 (*.f64 -1/3 (pow.f64 (/.f64 (/.f64 (/.f64 1 (sqrt.f64 -1)) h) (pow.f64 a 17)) 1/18)) (pow.f64 (/.f64 (/.f64 (/.f64 1 (sqrt.f64 -1)) h) (pow.f64 a 17)) 1/18))) (*.f64 (*.f64 g g) (cbrt.f64 (/.f64 (*.f64 a a) (*.f64 h (neg.f64 h)))))))) (*.f64 (cbrt.f64 (*.f64 (/.f64 (sqrt.f64 -1) a) h)) (cbrt.f64 -1/2)))
(fma.f64 1/3 (*.f64 (cbrt.f64 -1/2) (fma.f64 g (*.f64 (pow.f64 (/.f64 -1 (*.f64 (*.f64 h h) (pow.f64 a 7))) 1/18) (pow.f64 (/.f64 -1 (*.f64 (*.f64 h h) (pow.f64 a 7))) 1/18)) (*.f64 (fma.f64 (*.f64 (pow.f64 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 h (pow.f64 a 17)))) 1/18) (pow.f64 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 h (pow.f64 a 17)))) 1/18)) -1/3 (/.f64 1/2 (*.f64 (sqrt.f64 -1) (*.f64 h a)))) (*.f64 (*.f64 g g) (cbrt.f64 (/.f64 (*.f64 a a) (*.f64 h (neg.f64 h)))))))) (*.f64 (cbrt.f64 (*.f64 (/.f64 (sqrt.f64 -1) a) h)) (cbrt.f64 -1/2)))
(+.f64 (*.f64 -1/3 (*.f64 (*.f64 (+.f64 (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 5) (*.f64 (pow.f64 a 4) (pow.f64 h 5)))) 1/9) (-.f64 (*.f64 1/2 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (*.f64 1/3 (pow.f64 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 (pow.f64 a 17) h))) 1/9))))) (*.f64 1/27 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (pow.f64 a 7) (pow.f64 h 2)))) 1/3))) (*.f64 (cbrt.f64 -1/2) (pow.f64 g 3))) (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (pow.f64 h 2))) 1/3))) (+.f64 (*.f64 (pow.f64 (/.f64 (*.f64 (sqrt.f64 -1) (*.f64 1 h)) a) 1/3) (cbrt.f64 -1/2)) (+.f64 (*.f64 1/3 (*.f64 (*.f64 (cbrt.f64 -1/2) g) (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (pow.f64 a 7) (pow.f64 h 2)))) 1/9))) (*.f64 1/3 (*.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (*.f64 1/3 (pow.f64 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 (pow.f64 a 17) h))) 1/9))) (pow.f64 g 2))) (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (pow.f64 h 2))) 1/3))))))
(fma.f64 -1/3 (*.f64 (cbrt.f64 (/.f64 (*.f64 a a) (*.f64 (*.f64 h h) (pow.f64 (sqrt.f64 -1) 2)))) (*.f64 (fma.f64 2/3 (*.f64 (-.f64 (/.f64 1/2 (*.f64 (sqrt.f64 -1) (*.f64 h a))) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 h (pow.f64 a 17)))) 1/18) (pow.f64 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 h (pow.f64 a 17)))) 1/18)))) (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 5) (*.f64 (pow.f64 h 5) (pow.f64 a 4)))) 1/18) (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 5) (*.f64 (pow.f64 h 5) (pow.f64 a 4)))) 1/18))) (*.f64 1/27 (cbrt.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (*.f64 h h) (pow.f64 a 7))))))) (*.f64 (pow.f64 g 3) (cbrt.f64 -1/2)))) (fma.f64 (cbrt.f64 (/.f64 (sqrt.f64 -1) (/.f64 a h))) (cbrt.f64 -1/2) (*.f64 1/3 (+.f64 (*.f64 (*.f64 g (cbrt.f64 -1/2)) (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (*.f64 h h) (pow.f64 a 7)))) 1/18) (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (*.f64 h h) (pow.f64 a 7)))) 1/18))) (*.f64 (cbrt.f64 -1/2) (*.f64 (*.f64 (*.f64 g g) (-.f64 (/.f64 1/2 (*.f64 (sqrt.f64 -1) (*.f64 h a))) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 h (pow.f64 a 17)))) 1/18) (pow.f64 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 h (pow.f64 a 17)))) 1/18))))) (cbrt.f64 (/.f64 (*.f64 a a) (*.f64 (*.f64 h h) (pow.f64 (sqrt.f64 -1) 2))))))))))
(fma.f64 -1/3 (*.f64 (cbrt.f64 (/.f64 (*.f64 a a) (*.f64 h (neg.f64 h)))) (*.f64 (pow.f64 g 3) (*.f64 (cbrt.f64 -1/2) (fma.f64 2/3 (*.f64 (+.f64 (/.f64 1/2 (*.f64 (sqrt.f64 -1) (*.f64 h a))) (*.f64 (*.f64 -1/3 (pow.f64 (/.f64 (/.f64 (/.f64 1 (sqrt.f64 -1)) h) (pow.f64 a 17)) 1/18)) (pow.f64 (/.f64 (/.f64 (/.f64 1 (sqrt.f64 -1)) h) (pow.f64 a 17)) 1/18))) (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 5) (*.f64 (pow.f64 h 5) (pow.f64 a 4)))) 1/18) (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 5) (*.f64 (pow.f64 h 5) (pow.f64 a 4)))) 1/18))) (*.f64 1/27 (cbrt.f64 (/.f64 -1 (*.f64 h (*.f64 h (pow.f64 a 7)))))))))) (fma.f64 1/3 (*.f64 (cbrt.f64 -1/2) (+.f64 (*.f64 g (*.f64 (pow.f64 (/.f64 -1 (*.f64 h (*.f64 h (pow.f64 a 7)))) 1/18) (pow.f64 (/.f64 -1 (*.f64 h (*.f64 h (pow.f64 a 7)))) 1/18))) (*.f64 (+.f64 (/.f64 1/2 (*.f64 (sqrt.f64 -1) (*.f64 h a))) (*.f64 (*.f64 -1/3 (pow.f64 (/.f64 (/.f64 (/.f64 1 (sqrt.f64 -1)) h) (pow.f64 a 17)) 1/18)) (pow.f64 (/.f64 (/.f64 (/.f64 1 (sqrt.f64 -1)) h) (pow.f64 a 17)) 1/18))) (*.f64 (*.f64 g g) (cbrt.f64 (/.f64 (*.f64 a a) (*.f64 h (neg.f64 h)))))))) (*.f64 (cbrt.f64 (*.f64 (/.f64 (sqrt.f64 -1) a) h)) (cbrt.f64 -1/2))))
(+.f64 (*.f64 (cbrt.f64 -1/2) (+.f64 (cbrt.f64 (*.f64 (/.f64 (sqrt.f64 -1) a) h)) (*.f64 (*.f64 g (*.f64 (pow.f64 (/.f64 -1 (*.f64 (*.f64 h h) (pow.f64 a 7))) 1/18) (pow.f64 (/.f64 -1 (*.f64 (*.f64 h h) (pow.f64 a 7))) 1/18))) 1/3))) (*.f64 (cbrt.f64 (/.f64 (*.f64 a a) (*.f64 h (neg.f64 h)))) (+.f64 (*.f64 1/3 (*.f64 (*.f64 g g) (*.f64 (cbrt.f64 -1/2) (fma.f64 (*.f64 (pow.f64 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 h (pow.f64 a 17)))) 1/18) (pow.f64 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 h (pow.f64 a 17)))) 1/18)) -1/3 (/.f64 1/2 (*.f64 (sqrt.f64 -1) (*.f64 h a))))))) (*.f64 (*.f64 -1/3 (*.f64 (pow.f64 g 3) (cbrt.f64 -1/2))) (fma.f64 (fma.f64 (*.f64 (pow.f64 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 h (pow.f64 a 17)))) 1/18) (pow.f64 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 h (pow.f64 a 17)))) 1/18)) -1/3 (/.f64 1/2 (*.f64 (sqrt.f64 -1) (*.f64 h a)))) (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 5) (*.f64 (pow.f64 h 5) (pow.f64 a 4)))) 1/18) (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 5) (*.f64 (pow.f64 h 5) (pow.f64 a 4)))) 1/18))) (*.f64 1/27 (cbrt.f64 (/.f64 -1 (*.f64 (*.f64 h h) (pow.f64 a 7))))))))))
(*.f64 (pow.f64 (/.f64 (*.f64 1 g) a) 1/3) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)))
(*.f64 (cbrt.f64 (/.f64 g a)) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)))
(*.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 2) (cbrt.f64 (/.f64 g a))))
(+.f64 (*.f64 -1/6 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 h 2)) (pow.f64 (cbrt.f64 2) 2)) (pow.f64 (/.f64 1 (*.f64 a (pow.f64 g 5))) 1/3))) (*.f64 (pow.f64 (/.f64 (*.f64 1 g) a) 1/3) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2))))
(fma.f64 -1/6 (*.f64 (/.f64 (cbrt.f64 -1/2) (/.f64 (pow.f64 (cbrt.f64 2) 2) (*.f64 h h))) (cbrt.f64 (/.f64 1 (*.f64 (pow.f64 g 5) a)))) (*.f64 (cbrt.f64 (/.f64 g a)) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2))))
(fma.f64 (cbrt.f64 (/.f64 g a)) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)) (*.f64 -1/6 (*.f64 (/.f64 (*.f64 h (*.f64 h (cbrt.f64 -1/2))) (pow.f64 (cbrt.f64 2) 2)) (cbrt.f64 (/.f64 (/.f64 1 a) (pow.f64 g 5))))))
(fma.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 2) (cbrt.f64 (/.f64 g a))) (*.f64 (cbrt.f64 (/.f64 (/.f64 1 a) (pow.f64 g 5))) (*.f64 -1/6 (*.f64 (/.f64 (cbrt.f64 -1/2) (pow.f64 (cbrt.f64 2) 2)) (*.f64 h h)))))
(+.f64 (*.f64 -1/6 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 h 2)) (pow.f64 (cbrt.f64 2) 2)) (pow.f64 (/.f64 1 (*.f64 a (pow.f64 g 5))) 1/3))) (+.f64 (*.f64 -1/18 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 h 4)) (pow.f64 (cbrt.f64 2) 2)) (pow.f64 (/.f64 1 (*.f64 a (pow.f64 g 11))) 1/3))) (*.f64 (pow.f64 (/.f64 (*.f64 1 g) a) 1/3) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)))))
(fma.f64 -1/6 (*.f64 (/.f64 (cbrt.f64 -1/2) (/.f64 (pow.f64 (cbrt.f64 2) 2) (*.f64 h h))) (cbrt.f64 (/.f64 1 (*.f64 (pow.f64 g 5) a)))) (fma.f64 -1/18 (*.f64 (/.f64 (*.f64 (pow.f64 h 4) (cbrt.f64 -1/2)) (pow.f64 (cbrt.f64 2) 2)) (cbrt.f64 (/.f64 1 (*.f64 a (pow.f64 g 11))))) (*.f64 (cbrt.f64 (/.f64 g a)) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)))))
(fma.f64 -1/6 (*.f64 (/.f64 (*.f64 h (*.f64 h (cbrt.f64 -1/2))) (pow.f64 (cbrt.f64 2) 2)) (cbrt.f64 (/.f64 (/.f64 1 a) (pow.f64 g 5)))) (fma.f64 (cbrt.f64 (/.f64 g a)) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)) (*.f64 -1/18 (/.f64 (*.f64 (cbrt.f64 (/.f64 1 (*.f64 a (pow.f64 g 11)))) (cbrt.f64 -1/2)) (/.f64 (pow.f64 (cbrt.f64 2) 2) (pow.f64 h 4))))))
(fma.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 2) (cbrt.f64 (/.f64 g a))) (fma.f64 (cbrt.f64 (/.f64 (/.f64 1 a) (pow.f64 g 11))) (*.f64 -1/18 (*.f64 (/.f64 (cbrt.f64 -1/2) (pow.f64 (cbrt.f64 2) 2)) (pow.f64 h 4))) (*.f64 (cbrt.f64 (/.f64 (/.f64 1 a) (pow.f64 g 5))) (*.f64 -1/6 (*.f64 (/.f64 (cbrt.f64 -1/2) (pow.f64 (cbrt.f64 2) 2)) (*.f64 h h))))))
(+.f64 (*.f64 -1/6 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 h 2)) (pow.f64 (cbrt.f64 2) 2)) (pow.f64 (/.f64 1 (*.f64 a (pow.f64 g 5))) 1/3))) (+.f64 (*.f64 1/3 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (-.f64 (*.f64 1/216 (/.f64 1 (*.f64 a (*.f64 (pow.f64 (cbrt.f64 2) 6) (pow.f64 g 5))))) (*.f64 13/144 (/.f64 1 (*.f64 a (pow.f64 g 5))))) (pow.f64 h 6))) (pow.f64 (cbrt.f64 2) 2)) (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (pow.f64 g 2)) 1/3))) (+.f64 (*.f64 -1/18 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 h 4)) (pow.f64 (cbrt.f64 2) 2)) (pow.f64 (/.f64 1 (*.f64 a (pow.f64 g 11))) 1/3))) (*.f64 (pow.f64 (/.f64 (*.f64 1 g) a) 1/3) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2))))))
(fma.f64 -1/6 (*.f64 (/.f64 (cbrt.f64 -1/2) (/.f64 (pow.f64 (cbrt.f64 2) 2) (*.f64 h h))) (cbrt.f64 (/.f64 1 (*.f64 (pow.f64 g 5) a)))) (fma.f64 1/3 (*.f64 (/.f64 (cbrt.f64 -1/2) (/.f64 (pow.f64 (cbrt.f64 2) 2) (*.f64 (pow.f64 h 6) (-.f64 (/.f64 1/216 (*.f64 a (*.f64 (pow.f64 g 5) (pow.f64 (cbrt.f64 2) 6)))) (/.f64 13/144 (*.f64 (pow.f64 g 5) a)))))) (cbrt.f64 (/.f64 (*.f64 a a) (*.f64 g g)))) (fma.f64 -1/18 (*.f64 (/.f64 (*.f64 (pow.f64 h 4) (cbrt.f64 -1/2)) (pow.f64 (cbrt.f64 2) 2)) (cbrt.f64 (/.f64 1 (*.f64 a (pow.f64 g 11))))) (*.f64 (cbrt.f64 (/.f64 g a)) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2))))))
(fma.f64 -1/6 (*.f64 (/.f64 (*.f64 h (*.f64 h (cbrt.f64 -1/2))) (pow.f64 (cbrt.f64 2) 2)) (cbrt.f64 (/.f64 (/.f64 1 a) (pow.f64 g 5)))) (fma.f64 1/3 (/.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (pow.f64 h 6) (+.f64 (/.f64 (/.f64 1/216 (*.f64 4 a)) (pow.f64 g 5)) (/.f64 -13/144 (*.f64 (pow.f64 g 5) a))))) (/.f64 (pow.f64 (cbrt.f64 2) 2) (cbrt.f64 (/.f64 (/.f64 (*.f64 a a) g) g)))) (fma.f64 (cbrt.f64 (/.f64 g a)) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)) (*.f64 -1/18 (/.f64 (*.f64 (cbrt.f64 (/.f64 1 (*.f64 a (pow.f64 g 11)))) (cbrt.f64 -1/2)) (/.f64 (pow.f64 (cbrt.f64 2) 2) (pow.f64 h 4)))))))
(fma.f64 (cbrt.f64 (*.f64 (/.f64 a g) (/.f64 a g))) (*.f64 (/.f64 (*.f64 1/3 (cbrt.f64 -1/2)) (/.f64 (pow.f64 (cbrt.f64 2) 2) (pow.f64 h 6))) (+.f64 (/.f64 1/216 (*.f64 (pow.f64 g 5) (*.f64 4 a))) (/.f64 -13/144 (*.f64 (pow.f64 g 5) a)))) (fma.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 2) (cbrt.f64 (/.f64 g a))) (fma.f64 (cbrt.f64 (/.f64 (/.f64 1 a) (pow.f64 g 11))) (*.f64 -1/18 (*.f64 (/.f64 (cbrt.f64 -1/2) (pow.f64 (cbrt.f64 2) 2)) (pow.f64 h 4))) (*.f64 (cbrt.f64 (/.f64 (/.f64 1 a) (pow.f64 g 5))) (*.f64 -1/6 (*.f64 (/.f64 (cbrt.f64 -1/2) (pow.f64 (cbrt.f64 2) 2)) (*.f64 h h)))))))
(*.f64 (pow.f64 (/.f64 (*.f64 (sqrt.f64 -1) (*.f64 1 h)) a) 1/3) (cbrt.f64 1/2))
(*.f64 (cbrt.f64 (/.f64 (sqrt.f64 -1) (/.f64 a h))) (cbrt.f64 1/2))
(*.f64 (cbrt.f64 (*.f64 (/.f64 (sqrt.f64 -1) a) h)) (cbrt.f64 1/2))
(+.f64 (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (pow.f64 a 7) (pow.f64 h 2)))) 1/9) (*.f64 (cbrt.f64 1/2) g))) (*.f64 (pow.f64 (/.f64 (*.f64 (sqrt.f64 -1) (*.f64 1 h)) a) 1/3) (cbrt.f64 1/2)))
(fma.f64 -1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (*.f64 h h) (pow.f64 a 7)))) 1/18) (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (*.f64 h h) (pow.f64 a 7)))) 1/18)) (*.f64 g (cbrt.f64 1/2))) (*.f64 (cbrt.f64 (/.f64 (sqrt.f64 -1) (/.f64 a h))) (cbrt.f64 1/2)))
(fma.f64 (cbrt.f64 (*.f64 (/.f64 (sqrt.f64 -1) a) h)) (cbrt.f64 1/2) (*.f64 (*.f64 (pow.f64 (/.f64 -1 (*.f64 h (*.f64 h (pow.f64 a 7)))) 1/18) (pow.f64 (/.f64 -1 (*.f64 h (*.f64 h (pow.f64 a 7)))) 1/18)) (*.f64 (*.f64 g (cbrt.f64 1/2)) -1/3)))
(*.f64 (cbrt.f64 1/2) (+.f64 (cbrt.f64 (*.f64 (/.f64 (sqrt.f64 -1) a) h)) (*.f64 (*.f64 (*.f64 (pow.f64 (/.f64 -1 (*.f64 (*.f64 h h) (pow.f64 a 7))) 1/18) (pow.f64 (/.f64 -1 (*.f64 (*.f64 h h) (pow.f64 a 7))) 1/18)) -1/3) g)))
(+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (pow.f64 h 2))) 1/3) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (*.f64 1/3 (pow.f64 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 (pow.f64 a 17) h))) 1/9))) (*.f64 (pow.f64 g 2) (cbrt.f64 1/2))))) (+.f64 (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (pow.f64 a 7) (pow.f64 h 2)))) 1/9) (*.f64 (cbrt.f64 1/2) g))) (*.f64 (pow.f64 (/.f64 (*.f64 (sqrt.f64 -1) (*.f64 1 h)) a) 1/3) (cbrt.f64 1/2))))
(fma.f64 1/3 (*.f64 (cbrt.f64 (/.f64 (*.f64 a a) (*.f64 (*.f64 h h) (pow.f64 (sqrt.f64 -1) 2)))) (*.f64 (-.f64 (/.f64 1/2 (*.f64 (sqrt.f64 -1) (*.f64 h a))) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 h (pow.f64 a 17)))) 1/18) (pow.f64 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 h (pow.f64 a 17)))) 1/18)))) (*.f64 (*.f64 g g) (cbrt.f64 1/2)))) (fma.f64 -1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (*.f64 h h) (pow.f64 a 7)))) 1/18) (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (*.f64 h h) (pow.f64 a 7)))) 1/18)) (*.f64 g (cbrt.f64 1/2))) (*.f64 (cbrt.f64 (/.f64 (sqrt.f64 -1) (/.f64 a h))) (cbrt.f64 1/2))))
(fma.f64 1/3 (*.f64 (+.f64 (/.f64 1/2 (*.f64 (sqrt.f64 -1) (*.f64 h a))) (*.f64 (*.f64 -1/3 (pow.f64 (/.f64 (/.f64 (/.f64 1 (sqrt.f64 -1)) h) (pow.f64 a 17)) 1/18)) (pow.f64 (/.f64 (/.f64 (/.f64 1 (sqrt.f64 -1)) h) (pow.f64 a 17)) 1/18))) (*.f64 (*.f64 g (*.f64 g (cbrt.f64 1/2))) (cbrt.f64 (/.f64 (*.f64 a a) (*.f64 h (neg.f64 h)))))) (fma.f64 (cbrt.f64 (*.f64 (/.f64 (sqrt.f64 -1) a) h)) (cbrt.f64 1/2) (*.f64 (*.f64 (pow.f64 (/.f64 -1 (*.f64 h (*.f64 h (pow.f64 a 7)))) 1/18) (pow.f64 (/.f64 -1 (*.f64 h (*.f64 h (pow.f64 a 7)))) 1/18)) (*.f64 (*.f64 g (cbrt.f64 1/2)) -1/3))))
(fma.f64 1/3 (*.f64 (fma.f64 (*.f64 (pow.f64 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 h (pow.f64 a 17)))) 1/18) (pow.f64 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 h (pow.f64 a 17)))) 1/18)) -1/3 (/.f64 1/2 (*.f64 (sqrt.f64 -1) (*.f64 h a)))) (*.f64 (*.f64 g (*.f64 g (cbrt.f64 1/2))) (cbrt.f64 (/.f64 (*.f64 a a) (*.f64 h (neg.f64 h)))))) (*.f64 (cbrt.f64 1/2) (+.f64 (cbrt.f64 (*.f64 (/.f64 (sqrt.f64 -1) a) h)) (*.f64 (*.f64 (*.f64 (pow.f64 (/.f64 -1 (*.f64 (*.f64 h h) (pow.f64 a 7))) 1/18) (pow.f64 (/.f64 -1 (*.f64 (*.f64 h h) (pow.f64 a 7))) 1/18)) -1/3) g))))
(+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (pow.f64 h 2))) 1/3) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (*.f64 1/3 (pow.f64 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 (pow.f64 a 17) h))) 1/9))) (*.f64 (pow.f64 g 2) (cbrt.f64 1/2))))) (+.f64 (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (pow.f64 h 2))) 1/3) (*.f64 (+.f64 (*.f64 -1/27 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (pow.f64 a 7) (pow.f64 h 2)))) 1/3)) (*.f64 -2/3 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 5) (*.f64 (pow.f64 a 4) (pow.f64 h 5)))) 1/9) (-.f64 (*.f64 1/2 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (*.f64 1/3 (pow.f64 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 (pow.f64 a 17) h))) 1/9)))))) (*.f64 (pow.f64 g 3) (cbrt.f64 1/2))))) (+.f64 (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (pow.f64 a 7) (pow.f64 h 2)))) 1/9) (*.f64 (cbrt.f64 1/2) g))) (*.f64 (pow.f64 (/.f64 (*.f64 (sqrt.f64 -1) (*.f64 1 h)) a) 1/3) (cbrt.f64 1/2)))))
(fma.f64 1/3 (*.f64 (cbrt.f64 (/.f64 (*.f64 a a) (*.f64 (*.f64 h h) (pow.f64 (sqrt.f64 -1) 2)))) (*.f64 (-.f64 (/.f64 1/2 (*.f64 (sqrt.f64 -1) (*.f64 h a))) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 h (pow.f64 a 17)))) 1/18) (pow.f64 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 h (pow.f64 a 17)))) 1/18)))) (*.f64 (*.f64 g g) (cbrt.f64 1/2)))) (fma.f64 -1/3 (*.f64 (cbrt.f64 (/.f64 (*.f64 a a) (*.f64 (*.f64 h h) (pow.f64 (sqrt.f64 -1) 2)))) (*.f64 (fma.f64 -1/27 (cbrt.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (*.f64 h h) (pow.f64 a 7))))) (*.f64 (*.f64 -2/3 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 5) (*.f64 (pow.f64 h 5) (pow.f64 a 4)))) 1/18) (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 5) (*.f64 (pow.f64 h 5) (pow.f64 a 4)))) 1/18))) (-.f64 (/.f64 1/2 (*.f64 (sqrt.f64 -1) (*.f64 h a))) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 h (pow.f64 a 17)))) 1/18) (pow.f64 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 h (pow.f64 a 17)))) 1/18)))))) (*.f64 (pow.f64 g 3) (cbrt.f64 1/2)))) (fma.f64 -1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (*.f64 h h) (pow.f64 a 7)))) 1/18) (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (*.f64 h h) (pow.f64 a 7)))) 1/18)) (*.f64 g (cbrt.f64 1/2))) (*.f64 (cbrt.f64 (/.f64 (sqrt.f64 -1) (/.f64 a h))) (cbrt.f64 1/2)))))
(fma.f64 1/3 (*.f64 (+.f64 (/.f64 1/2 (*.f64 (sqrt.f64 -1) (*.f64 h a))) (*.f64 (*.f64 -1/3 (pow.f64 (/.f64 (/.f64 (/.f64 1 (sqrt.f64 -1)) h) (pow.f64 a 17)) 1/18)) (pow.f64 (/.f64 (/.f64 (/.f64 1 (sqrt.f64 -1)) h) (pow.f64 a 17)) 1/18))) (*.f64 (*.f64 g (*.f64 g (cbrt.f64 1/2))) (cbrt.f64 (/.f64 (*.f64 a a) (*.f64 h (neg.f64 h)))))) (fma.f64 -1/3 (*.f64 (cbrt.f64 (/.f64 (*.f64 a a) (*.f64 h (neg.f64 h)))) (*.f64 (pow.f64 g 3) (*.f64 (cbrt.f64 1/2) (fma.f64 (cbrt.f64 (/.f64 -1 (*.f64 h (*.f64 h (pow.f64 a 7))))) -1/27 (*.f64 (+.f64 (/.f64 1/2 (*.f64 (sqrt.f64 -1) (*.f64 h a))) (*.f64 (*.f64 -1/3 (pow.f64 (/.f64 (/.f64 (/.f64 1 (sqrt.f64 -1)) h) (pow.f64 a 17)) 1/18)) (pow.f64 (/.f64 (/.f64 (/.f64 1 (sqrt.f64 -1)) h) (pow.f64 a 17)) 1/18))) (*.f64 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 5) (*.f64 (pow.f64 h 5) (pow.f64 a 4)))) 1/18) (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 5) (*.f64 (pow.f64 h 5) (pow.f64 a 4)))) 1/18)) -2/3)))))) (fma.f64 (cbrt.f64 (*.f64 (/.f64 (sqrt.f64 -1) a) h)) (cbrt.f64 1/2) (*.f64 (*.f64 (pow.f64 (/.f64 -1 (*.f64 h (*.f64 h (pow.f64 a 7)))) 1/18) (pow.f64 (/.f64 -1 (*.f64 h (*.f64 h (pow.f64 a 7)))) 1/18)) (*.f64 (*.f64 g (cbrt.f64 1/2)) -1/3)))))
(+.f64 (*.f64 (cbrt.f64 1/2) (+.f64 (cbrt.f64 (*.f64 (/.f64 (sqrt.f64 -1) a) h)) (*.f64 (*.f64 (*.f64 (pow.f64 (/.f64 -1 (*.f64 (*.f64 h h) (pow.f64 a 7))) 1/18) (pow.f64 (/.f64 -1 (*.f64 (*.f64 h h) (pow.f64 a 7))) 1/18)) -1/3) g))) (*.f64 (cbrt.f64 (/.f64 (*.f64 a a) (*.f64 h (neg.f64 h)))) (+.f64 (*.f64 1/3 (*.f64 (*.f64 g g) (*.f64 (fma.f64 (*.f64 (pow.f64 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 h (pow.f64 a 17)))) 1/18) (pow.f64 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 h (pow.f64 a 17)))) 1/18)) -1/3 (/.f64 1/2 (*.f64 (sqrt.f64 -1) (*.f64 h a)))) (cbrt.f64 1/2)))) (*.f64 -1/3 (*.f64 (fma.f64 (fma.f64 (*.f64 (pow.f64 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 h (pow.f64 a 17)))) 1/18) (pow.f64 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 h (pow.f64 a 17)))) 1/18)) -1/3 (/.f64 1/2 (*.f64 (sqrt.f64 -1) (*.f64 h a)))) (*.f64 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 5) (*.f64 (pow.f64 h 5) (pow.f64 a 4)))) 1/18) (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 5) (*.f64 (pow.f64 h 5) (pow.f64 a 4)))) 1/18)) -2/3) (*.f64 (cbrt.f64 (/.f64 -1 (*.f64 (*.f64 h h) (pow.f64 a 7)))) -1/27)) (*.f64 (pow.f64 g 3) (cbrt.f64 1/2)))))))
(*.f64 -1 (pow.f64 h 2))
(neg.f64 (*.f64 h h))
(*.f64 h (neg.f64 h))
(+.f64 (pow.f64 g 2) (*.f64 -1 (pow.f64 h 2)))
(+.f64 (*.f64 g g) (neg.f64 (*.f64 h h)))
(fma.f64 g g (*.f64 h (neg.f64 h)))
(-.f64 (*.f64 g g) (*.f64 h h))
(+.f64 (pow.f64 g 2) (*.f64 -1 (pow.f64 h 2)))
(+.f64 (*.f64 g g) (neg.f64 (*.f64 h h)))
(fma.f64 g g (*.f64 h (neg.f64 h)))
(-.f64 (*.f64 g g) (*.f64 h h))
(+.f64 (pow.f64 g 2) (*.f64 -1 (pow.f64 h 2)))
(+.f64 (*.f64 g g) (neg.f64 (*.f64 h h)))
(fma.f64 g g (*.f64 h (neg.f64 h)))
(-.f64 (*.f64 g g) (*.f64 h h))
(pow.f64 g 2)
(*.f64 g g)
(+.f64 (pow.f64 g 2) (*.f64 -1 (pow.f64 h 2)))
(+.f64 (*.f64 g g) (neg.f64 (*.f64 h h)))
(fma.f64 g g (*.f64 h (neg.f64 h)))
(-.f64 (*.f64 g g) (*.f64 h h))
(+.f64 (pow.f64 g 2) (*.f64 -1 (pow.f64 h 2)))
(+.f64 (*.f64 g g) (neg.f64 (*.f64 h h)))
(fma.f64 g g (*.f64 h (neg.f64 h)))
(-.f64 (*.f64 g g) (*.f64 h h))
(+.f64 (pow.f64 g 2) (*.f64 -1 (pow.f64 h 2)))
(+.f64 (*.f64 g g) (neg.f64 (*.f64 h h)))
(fma.f64 g g (*.f64 h (neg.f64 h)))
(-.f64 (*.f64 g g) (*.f64 h h))
(pow.f64 g 2)
(*.f64 g g)
(+.f64 (pow.f64 g 2) (*.f64 -1 (pow.f64 h 2)))
(+.f64 (*.f64 g g) (neg.f64 (*.f64 h h)))
(fma.f64 g g (*.f64 h (neg.f64 h)))
(-.f64 (*.f64 g g) (*.f64 h h))
(+.f64 (pow.f64 g 2) (*.f64 -1 (pow.f64 h 2)))
(+.f64 (*.f64 g g) (neg.f64 (*.f64 h h)))
(fma.f64 g g (*.f64 h (neg.f64 h)))
(-.f64 (*.f64 g g) (*.f64 h h))
(+.f64 (pow.f64 g 2) (*.f64 -1 (pow.f64 h 2)))
(+.f64 (*.f64 g g) (neg.f64 (*.f64 h h)))
(fma.f64 g g (*.f64 h (neg.f64 h)))
(-.f64 (*.f64 g g) (*.f64 h h))
(pow.f64 g 2)
(*.f64 g g)
(+.f64 (pow.f64 g 2) (*.f64 -1 (pow.f64 h 2)))
(+.f64 (*.f64 g g) (neg.f64 (*.f64 h h)))
(fma.f64 g g (*.f64 h (neg.f64 h)))
(-.f64 (*.f64 g g) (*.f64 h h))
(+.f64 (pow.f64 g 2) (*.f64 -1 (pow.f64 h 2)))
(+.f64 (*.f64 g g) (neg.f64 (*.f64 h h)))
(fma.f64 g g (*.f64 h (neg.f64 h)))
(-.f64 (*.f64 g g) (*.f64 h h))
(+.f64 (pow.f64 g 2) (*.f64 -1 (pow.f64 h 2)))
(+.f64 (*.f64 g g) (neg.f64 (*.f64 h h)))
(fma.f64 g g (*.f64 h (neg.f64 h)))
(-.f64 (*.f64 g g) (*.f64 h h))
(*.f64 -1 (pow.f64 h 2))
(neg.f64 (*.f64 h h))
(*.f64 h (neg.f64 h))
(+.f64 (pow.f64 g 2) (*.f64 -1 (pow.f64 h 2)))
(+.f64 (*.f64 g g) (neg.f64 (*.f64 h h)))
(fma.f64 g g (*.f64 h (neg.f64 h)))
(-.f64 (*.f64 g g) (*.f64 h h))
(+.f64 (pow.f64 g 2) (*.f64 -1 (pow.f64 h 2)))
(+.f64 (*.f64 g g) (neg.f64 (*.f64 h h)))
(fma.f64 g g (*.f64 h (neg.f64 h)))
(-.f64 (*.f64 g g) (*.f64 h h))
(+.f64 (pow.f64 g 2) (*.f64 -1 (pow.f64 h 2)))
(+.f64 (*.f64 g g) (neg.f64 (*.f64 h h)))
(fma.f64 g g (*.f64 h (neg.f64 h)))
(-.f64 (*.f64 g g) (*.f64 h h))
(*.f64 -1 (pow.f64 h 2))
(neg.f64 (*.f64 h h))
(*.f64 h (neg.f64 h))
(+.f64 (pow.f64 g 2) (*.f64 -1 (pow.f64 h 2)))
(+.f64 (*.f64 g g) (neg.f64 (*.f64 h h)))
(fma.f64 g g (*.f64 h (neg.f64 h)))
(-.f64 (*.f64 g g) (*.f64 h h))
(+.f64 (pow.f64 g 2) (*.f64 -1 (pow.f64 h 2)))
(+.f64 (*.f64 g g) (neg.f64 (*.f64 h h)))
(fma.f64 g g (*.f64 h (neg.f64 h)))
(-.f64 (*.f64 g g) (*.f64 h h))
(+.f64 (pow.f64 g 2) (*.f64 -1 (pow.f64 h 2)))
(+.f64 (*.f64 g g) (neg.f64 (*.f64 h h)))
(fma.f64 g g (*.f64 h (neg.f64 h)))
(-.f64 (*.f64 g g) (*.f64 h h))

eval213.0ms (1.9%)

Compiler

Compiled 15405 to 6923 computations (55.1% saved)

prune98.0ms (0.9%)

Pruning

25 alts after pruning (25 fresh and 0 done)

PrunedKeptTotal
New34325368
Fresh000
Picked101
Done000
Total34425369
Error
36.4b
Counts
369 → 25
Alt Table
Click to see full alt table
StatusErrorProgram
46.3b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (exp.f64 (*.f64 (log.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 1/2)) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
48.8b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (cbrt.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 3/2)) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
54.5b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (pow.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (/.f64 -1/2 a)) 1/3))
46.6b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.f64 g (exp.f64 (*.f64 (log.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 1/2))) (/.f64 -1/2 a))))
48.5b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.f64 g (cbrt.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 3/2))) (/.f64 -1/2 a))))
44.8b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (fma.f64 (pow.f64 (cbrt.f64 g) 2) (*.f64 (cbrt.f64 g) g) (*.f64 h (neg.f64 h))))) (/.f64 -1/2 a))))
44.6b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 3)) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
50.6b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (/.f64 (cbrt.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) -1/2)) (cbrt.f64 a)))
54.6b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (exp.f64 (log.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
51.7b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.f64 g (-.f64 (*.f64 1/2 (/.f64 h (/.f64 g h))) g)) (/.f64 -1/2 a))))
49.4b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.f64 g (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g)) (/.f64 -1/2 a))))
50.1b
(+.f64 (/.f64 (cbrt.f64 (*.f64 1/2 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g))) (cbrt.f64 a)) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
50.6b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (*.f64 (cbrt.f64 (/.f64 -1/2 a)) (cbrt.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))))
43.5b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (pow.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/4) 2) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
50.0b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (neg.f64 g) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
51.3b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
51.9b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.f64 g (neg.f64 g)) (/.f64 -1/2 a))))
49.6b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.f64 g g) (/.f64 -1/2 a))))
55.0b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.f64 g (pow.f64 (cbrt.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) 3)) (/.f64 -1/2 a))))
51.9b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.f64 g (*.f64 (sqrt.f64 (+.f64 g h)) (sqrt.f64 (-.f64 g h)))) (/.f64 -1/2 a))))
44.0b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 2)) (sqrt.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
44.7b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 3))) (/.f64 -1/2 a))))
40.4b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (*.f64 (-.f64 g h) (+.f64 g h)))) (/.f64 -1/2 a))))
49.6b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (*.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 2) (cbrt.f64 (/.f64 g a)))))
50.0b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (-.f64 (*.f64 1/2 (/.f64 h (/.f64 g h))) g) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
Compiler

Compiled 1726 to 1102 computations (36.2% saved)

localize41.0ms (0.4%)

Local error

Found 4 expressions with local error:

NewErrorProgram
8.3b
(cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g)))
9.7b
(cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (*.f64 (-.f64 g h) (+.f64 g h)))) (/.f64 -1/2 a)))
32.1b
(sqrt.f64 (*.f64 (-.f64 g h) (+.f64 g h)))
32.1b
(sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))
Compiler

Compiled 165 to 42 computations (74.5% saved)

series39.0ms (0.3%)

Counts
2 → 32
Calls

15 calls:

TimeVariablePointExpression
7.0ms
h
@0
(cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (*.f64 (-.f64 g h) (+.f64 g h)))) (/.f64 -1/2 a)))
6.0ms
g
@-inf
(cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (*.f64 (-.f64 g h) (+.f64 g h)))) (/.f64 -1/2 a)))
6.0ms
g
@0
(cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (*.f64 (-.f64 g h) (+.f64 g h)))) (/.f64 -1/2 a)))
6.0ms
h
@inf
(cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (*.f64 (-.f64 g h) (+.f64 g h)))) (/.f64 -1/2 a)))
4.0ms
g
@inf
(cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (*.f64 (-.f64 g h) (+.f64 g h)))) (/.f64 -1/2 a)))

rewrite84.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
736×log-prod_binary64
672×fma-def_binary64
315×fma-neg_binary64
263×expm1-udef_binary64
263×log1p-udef_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01335
129735
2445235
Stop Event
node limit
Counts
2 → 73
Calls
Call 1
Inputs
(sqrt.f64 (*.f64 (-.f64 g h) (+.f64 g h)))
(cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (*.f64 (-.f64 g h) (+.f64 g h)))) (/.f64 -1/2 a)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (sqrt.f64 (fma.f64 g g (neg.f64 (*.f64 h h)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (fma.f64 g g (neg.f64 (*.f64 h h)))))) (cbrt.f64 (exp.f64 (sqrt.f64 (fma.f64 g g (neg.f64 (*.f64 h h)))))))) (log.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (fma.f64 g g (neg.f64 (*.f64 h h))))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (fma.f64 g g (neg.f64 (*.f64 h h))))))) (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (fma.f64 g g (neg.f64 (*.f64 h h))))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (sqrt.f64 (fma.f64 g g (neg.f64 (*.f64 h h)))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 g g (neg.f64 (*.f64 h h)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (fma.f64 g g (neg.f64 (*.f64 h h)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 g g (neg.f64 (*.f64 h h)))) (cbrt.f64 (sqrt.f64 (fma.f64 g g (neg.f64 (*.f64 h h))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sqrt.f64 (fma.f64 g g (neg.f64 (*.f64 h h))))) (cbrt.f64 (fma.f64 g g (neg.f64 (*.f64 h h)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (+.f64 g h)) (sqrt.f64 (-.f64 g h)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (fma.f64 g g (neg.f64 (*.f64 h h))) 1/4) (pow.f64 (fma.f64 g g (neg.f64 (*.f64 h h))) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 g h)) (sqrt.f64 (+.f64 g h)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (fma.f64 g g (neg.f64 (*.f64 h h)))) 2)) (sqrt.f64 (cbrt.f64 (fma.f64 g g (neg.f64 (*.f64 h h))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/2) (sqrt.f64 (fma.f64 g g (neg.f64 (*.f64 h h)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (fma.f64 g g (neg.f64 (*.f64 h h)))) 2) 1/2) (pow.f64 (cbrt.f64 (fma.f64 g g (neg.f64 (*.f64 h h)))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 g g (neg.f64 (*.f64 h h))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 g g (neg.f64 (*.f64 h h)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (sqrt.f64 (fma.f64 g g (neg.f64 (*.f64 h h))))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 g g (neg.f64 (*.f64 h h))) 1/4) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 g g (neg.f64 (*.f64 h h))) 3/2) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (sqrt.f64 (fma.f64 g g (neg.f64 (*.f64 h h)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (sqrt.f64 (fma.f64 g g (neg.f64 (*.f64 h h))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (fma.f64 g g (neg.f64 (*.f64 h h)))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 g g (neg.f64 (*.f64 h h))) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 (sqrt.f64 (*.f64 h (-.f64 g h))) (sqrt.f64 (*.f64 g (-.f64 g h))))))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 (sqrt.f64 (*.f64 h (-.f64 g h))) (*.f64 (sqrt.f64 (-.f64 g h)) (sqrt.f64 g)))))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 (sqrt.f64 (*.f64 h (-.f64 g h))) (*.f64 (sqrt.f64 g) (sqrt.f64 (-.f64 g h))))))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 (sqrt.f64 (*.f64 g (-.f64 g h))) (sqrt.f64 (*.f64 h (-.f64 g h))))))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 (sqrt.f64 (*.f64 g (-.f64 g h))) (*.f64 (sqrt.f64 (-.f64 g h)) (sqrt.f64 h)))))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 (sqrt.f64 (*.f64 g (-.f64 g h))) (*.f64 (sqrt.f64 h) (sqrt.f64 (-.f64 g h))))))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 (*.f64 (sqrt.f64 (-.f64 g h)) (sqrt.f64 g)) (sqrt.f64 (*.f64 h (-.f64 g h))))))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 (*.f64 (sqrt.f64 (-.f64 g h)) (sqrt.f64 g)) (*.f64 (sqrt.f64 (-.f64 g h)) (sqrt.f64 h)))))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 (*.f64 (sqrt.f64 (-.f64 g h)) (sqrt.f64 g)) (*.f64 (sqrt.f64 h) (sqrt.f64 (-.f64 g h))))))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 (*.f64 (sqrt.f64 g) (sqrt.f64 (-.f64 g h))) (sqrt.f64 (*.f64 h (-.f64 g h))))))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 (*.f64 (sqrt.f64 g) (sqrt.f64 (-.f64 g h))) (*.f64 (sqrt.f64 (-.f64 g h)) (sqrt.f64 h)))))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 (*.f64 (sqrt.f64 g) (sqrt.f64 (-.f64 g h))) (*.f64 (sqrt.f64 h) (sqrt.f64 (-.f64 g h))))))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 (*.f64 (sqrt.f64 (-.f64 g h)) (sqrt.f64 h)) (sqrt.f64 (*.f64 g (-.f64 g h))))))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 (*.f64 (sqrt.f64 (-.f64 g h)) (sqrt.f64 h)) (*.f64 (sqrt.f64 (-.f64 g h)) (sqrt.f64 g)))))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 (*.f64 (sqrt.f64 (-.f64 g h)) (sqrt.f64 h)) (*.f64 (sqrt.f64 g) (sqrt.f64 (-.f64 g h))))))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 (*.f64 (sqrt.f64 h) (sqrt.f64 (-.f64 g h))) (sqrt.f64 (*.f64 g (-.f64 g h))))))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 (*.f64 (sqrt.f64 h) (sqrt.f64 (-.f64 g h))) (*.f64 (sqrt.f64 (-.f64 g h)) (sqrt.f64 g)))))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 (*.f64 (sqrt.f64 h) (sqrt.f64 (-.f64 g h))) (*.f64 (sqrt.f64 g) (sqrt.f64 (-.f64 g h))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (sqrt.f64 (fma.f64 g g (neg.f64 (*.f64 h h))))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (sqrt.f64 (fma.f64 g g (neg.f64 (*.f64 h h))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (sqrt.f64 (fma.f64 g g (neg.f64 (*.f64 h h))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 g g (neg.f64 (*.f64 h h)))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (fma.f64 g g (neg.f64 (*.f64 h h))))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (fma.f64 g g (neg.f64 (*.f64 h h))))) (/.f64 -1/2 a))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (fma.f64 g g (neg.f64 (*.f64 h h))))) (/.f64 -1/2 a))))) (cbrt.f64 (exp.f64 (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (fma.f64 g g (neg.f64 (*.f64 h h))))) (/.f64 -1/2 a))))))) (log.f64 (cbrt.f64 (exp.f64 (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (fma.f64 g g (neg.f64 (*.f64 h h))))) (/.f64 -1/2 a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (fma.f64 g g (neg.f64 (*.f64 h h))))) (/.f64 -1/2 a)))))) (log.f64 (sqrt.f64 (exp.f64 (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (fma.f64 g g (neg.f64 (*.f64 h h))))) (/.f64 -1/2 a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (fma.f64 g g (neg.f64 (*.f64 h h))))) (/.f64 -1/2 a))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (fma.f64 g g (neg.f64 (*.f64 h h))))) (/.f64 -1/2 a))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (fma.f64 g g (neg.f64 (*.f64 h h))))) (/.f64 -1/2 a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 -1/2 a)) (cbrt.f64 (+.f64 g (sqrt.f64 (fma.f64 g g (neg.f64 (*.f64 h h)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (+.f64 g (sqrt.f64 (fma.f64 g g (neg.f64 (*.f64 h h)))))) (cbrt.f64 (/.f64 -1/2 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (fma.f64 g g (neg.f64 (*.f64 h h))))) (/.f64 -1/2 a)))) (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (fma.f64 g g (neg.f64 (*.f64 h h))))) (/.f64 -1/2 a)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (fma.f64 g g (neg.f64 (*.f64 h h))))) (/.f64 -1/2 a)))) 2) (cbrt.f64 (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (fma.f64 g g (neg.f64 (*.f64 h h))))) (/.f64 -1/2 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (+.f64 g (sqrt.f64 (fma.f64 g g (neg.f64 (*.f64 h h))))) (/.f64 -1/2 a)) 1/6) (pow.f64 (*.f64 (+.f64 g (sqrt.f64 (fma.f64 g g (neg.f64 (*.f64 h h))))) (/.f64 -1/2 a)) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/3) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (fma.f64 g g (neg.f64 (*.f64 h h))))) (/.f64 -1/2 a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (fma.f64 g g (neg.f64 (*.f64 h h))))) (/.f64 -1/2 a))) 2) 1/3) (cbrt.f64 (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (fma.f64 g g (neg.f64 (*.f64 h h))))) (/.f64 -1/2 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (*.f64 (+.f64 g (sqrt.f64 (fma.f64 g g (neg.f64 (*.f64 h h))))) (/.f64 -1/2 a))) 1/3) (pow.f64 (sqrt.f64 (*.f64 (+.f64 g (sqrt.f64 (fma.f64 g g (neg.f64 (*.f64 h h))))) (/.f64 -1/2 a))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (fma.f64 g g (neg.f64 (*.f64 h h))))) -1/2)) (cbrt.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (+.f64 g (sqrt.f64 (fma.f64 g g (neg.f64 (*.f64 h h))))) (/.f64 -1/2 a)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (fma.f64 g g (neg.f64 (*.f64 h h))))) (/.f64 -1/2 a))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (fma.f64 g g (neg.f64 (*.f64 h h))))) (/.f64 -1/2 a)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (+.f64 g (sqrt.f64 (fma.f64 g g (neg.f64 (*.f64 h h))))) (/.f64 -1/2 a)) 1/6) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (fma.f64 g g (neg.f64 (*.f64 h h))))) (/.f64 -1/2 a))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (fma.f64 g g (neg.f64 (*.f64 h h))))) (/.f64 -1/2 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (fma.f64 g g (neg.f64 (*.f64 h h))))) (/.f64 -1/2 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (fma.f64 g g (neg.f64 (*.f64 h h))))) (/.f64 -1/2 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (fma.f64 g g (neg.f64 (*.f64 h h))))) (/.f64 -1/2 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (fma.f64 g g (neg.f64 (*.f64 h h))))) (/.f64 -1/2 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (+.f64 g (sqrt.f64 (fma.f64 g g (neg.f64 (*.f64 h h))))) (/.f64 -1/2 a))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (fma.f64 g g (neg.f64 (*.f64 h h))))) (/.f64 -1/2 a)))) 1))))))

simplify78.0ms (0.7%)

Algorithm
egg-herbie
Rules
336×associate-*r*_binary64
327×associate-/l/_binary64
319×associate-/r/_binary64
287×times-frac_binary64
249×associate-*l*_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03042286
111101826
25303959
Stop Event
node limit
Counts
105 → 117
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 -1) h)
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (+.f64 h (*.f64 -1 h)) g) (*.f64 (sqrt.f64 -1) h))) (*.f64 (sqrt.f64 -1) h))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (+.f64 h (*.f64 -1 h)) g) (*.f64 (sqrt.f64 -1) h))) (+.f64 (*.f64 (sqrt.f64 -1) h) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 g 2) (-.f64 1 (pow.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 h) h) (*.f64 (sqrt.f64 -1) h))) 2))) (*.f64 (sqrt.f64 -1) h)))))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (+.f64 h (*.f64 -1 h)) g) (*.f64 (sqrt.f64 -1) h))) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (-.f64 1 (pow.f64 (*.f64 1/2 (/.f64 (+.f64 h (*.f64 -1 h)) (*.f64 (sqrt.f64 -1) h))) 2)) (*.f64 (pow.f64 g 3) (+.f64 (*.f64 -1 h) h))) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3)))) (+.f64 (*.f64 (sqrt.f64 -1) h) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 g 2) (-.f64 1 (pow.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 h) h) (*.f64 (sqrt.f64 -1) h))) 2))) (*.f64 (sqrt.f64 -1) h))))))
g
(+.f64 (*.f64 1/2 (+.f64 (*.f64 -1 h) h)) g)
(+.f64 (*.f64 1/2 (+.f64 (*.f64 -1 h) h)) (+.f64 g (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1 (pow.f64 h 2)) (pow.f64 (*.f64 1/2 (+.f64 h (*.f64 -1 h))) 2)) g))))
(+.f64 (*.f64 1/2 (+.f64 (*.f64 -1 h) h)) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (-.f64 (*.f64 -1 (pow.f64 h 2)) (pow.f64 (*.f64 1/2 (+.f64 (*.f64 -1 h) h)) 2)) (+.f64 h (*.f64 -1 h))) (pow.f64 g 2))) (+.f64 g (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1 (pow.f64 h 2)) (pow.f64 (*.f64 1/2 (+.f64 h (*.f64 -1 h))) 2)) g)))))
(*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) g))
(+.f64 (*.f64 1/2 (+.f64 (*.f64 -1 h) h)) (*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) g)))
(+.f64 (*.f64 1/2 (+.f64 (*.f64 -1 h) h)) (+.f64 (*.f64 -1/2 (/.f64 (-.f64 (pow.f64 h 2) (pow.f64 (*.f64 1/2 (/.f64 (+.f64 h (*.f64 -1 h)) (sqrt.f64 -1))) 2)) g)) (*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) g))))
(+.f64 (*.f64 1/2 (+.f64 (*.f64 -1 h) h)) (+.f64 (*.f64 -1/2 (/.f64 (-.f64 (pow.f64 h 2) (pow.f64 (*.f64 1/2 (/.f64 (+.f64 h (*.f64 -1 h)) (sqrt.f64 -1))) 2)) g)) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (+.f64 h (*.f64 -1 h)) (-.f64 (pow.f64 h 2) (pow.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 h) h) (sqrt.f64 -1))) 2))) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (pow.f64 g 2)))) (*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) g)))))
g
(+.f64 g (*.f64 1/2 (/.f64 (*.f64 h (+.f64 (*.f64 -1 g) g)) g)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 1/2 (/.f64 (+.f64 g (*.f64 -1 g)) g)) 2) 1) (pow.f64 h 2)) g)) (+.f64 g (*.f64 1/2 (/.f64 (*.f64 h (+.f64 (*.f64 -1 g) g)) g))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 1/2 (/.f64 (+.f64 g (*.f64 -1 g)) g)) 2) 1) (pow.f64 h 2)) g)) (+.f64 (*.f64 1/4 (/.f64 (*.f64 (+.f64 1 (pow.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 g) g) g)) 2)) (*.f64 (+.f64 g (*.f64 -1 g)) (pow.f64 h 3))) (pow.f64 g 3))) (+.f64 g (*.f64 1/2 (/.f64 (*.f64 h (+.f64 (*.f64 -1 g) g)) g)))))
(*.f64 (sqrt.f64 -1) h)
(+.f64 (*.f64 (sqrt.f64 -1) h) (*.f64 1/2 (/.f64 (+.f64 g (*.f64 -1 g)) (sqrt.f64 -1))))
(+.f64 (*.f64 1/2 (/.f64 (-.f64 (pow.f64 g 2) (pow.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 g) g) (sqrt.f64 -1))) 2)) (*.f64 (sqrt.f64 -1) h))) (+.f64 (*.f64 (sqrt.f64 -1) h) (*.f64 1/2 (/.f64 (+.f64 g (*.f64 -1 g)) (sqrt.f64 -1)))))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (-.f64 (pow.f64 g 2) (pow.f64 (*.f64 1/2 (/.f64 (+.f64 g (*.f64 -1 g)) (sqrt.f64 -1))) 2)) (+.f64 (*.f64 -1 g) g)) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 2)))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (pow.f64 g 2) (pow.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 g) g) (sqrt.f64 -1))) 2)) (*.f64 (sqrt.f64 -1) h))) (+.f64 (*.f64 (sqrt.f64 -1) h) (*.f64 1/2 (/.f64 (+.f64 g (*.f64 -1 g)) (sqrt.f64 -1))))))
(*.f64 -1 (*.f64 (sqrt.f64 -1) h))
(+.f64 (*.f64 -1 (*.f64 (sqrt.f64 -1) h)) (*.f64 1/2 (/.f64 (+.f64 g (*.f64 -1 g)) (sqrt.f64 -1))))
(+.f64 (*.f64 -1 (*.f64 (sqrt.f64 -1) h)) (+.f64 (*.f64 -1/2 (/.f64 (-.f64 (pow.f64 g 2) (pow.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 g) g) (sqrt.f64 -1))) 2)) (*.f64 (sqrt.f64 -1) h))) (*.f64 1/2 (/.f64 (+.f64 g (*.f64 -1 g)) (sqrt.f64 -1)))))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (-.f64 (pow.f64 g 2) (pow.f64 (*.f64 1/2 (/.f64 (+.f64 g (*.f64 -1 g)) (sqrt.f64 -1))) 2)) (+.f64 (*.f64 -1 g) g)) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 2)))) (+.f64 (*.f64 -1 (*.f64 (sqrt.f64 -1) h)) (+.f64 (*.f64 -1/2 (/.f64 (-.f64 (pow.f64 g 2) (pow.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 g) g) (sqrt.f64 -1))) 2)) (*.f64 (sqrt.f64 -1) h))) (*.f64 1/2 (/.f64 (+.f64 g (*.f64 -1 g)) (sqrt.f64 -1))))))
(*.f64 (pow.f64 (/.f64 (*.f64 (sqrt.f64 -1) (*.f64 1 h)) a) 1/3) (cbrt.f64 -1/2))
(+.f64 (*.f64 1/3 (*.f64 (*.f64 (+.f64 (*.f64 1/2 (/.f64 (+.f64 h (*.f64 -1 h)) (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (/.f64 1 a)) (*.f64 (cbrt.f64 -1/2) g)) (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (pow.f64 h 2))) 1/9))) (*.f64 (pow.f64 (/.f64 (*.f64 (sqrt.f64 -1) (*.f64 1 h)) a) 1/3) (cbrt.f64 -1/2)))
(+.f64 (*.f64 1/3 (*.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (pow.f64 g 2) (-.f64 (*.f64 1/2 (/.f64 (-.f64 1 (pow.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 h) h) (*.f64 (sqrt.f64 -1) h))) 2)) (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 (*.f64 1 a) (*.f64 (sqrt.f64 -1) h)) 1/9) (pow.f64 (+.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 h) h) (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (/.f64 1 a)) 2)))))) (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (pow.f64 h 2))) 1/3))) (+.f64 (*.f64 1/3 (*.f64 (*.f64 (+.f64 (*.f64 1/2 (/.f64 (+.f64 h (*.f64 -1 h)) (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (/.f64 1 a)) (*.f64 (cbrt.f64 -1/2) g)) (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (pow.f64 h 2))) 1/9))) (*.f64 (pow.f64 (/.f64 (*.f64 (sqrt.f64 -1) (*.f64 1 h)) a) 1/3) (cbrt.f64 -1/2))))
(+.f64 (*.f64 1/3 (*.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (pow.f64 g 2) (-.f64 (*.f64 1/2 (/.f64 (-.f64 1 (pow.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 h) h) (*.f64 (sqrt.f64 -1) h))) 2)) (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 (*.f64 1 a) (*.f64 (sqrt.f64 -1) h)) 1/9) (pow.f64 (+.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 h) h) (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (/.f64 1 a)) 2)))))) (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (pow.f64 h 2))) 1/3))) (+.f64 (*.f64 1/3 (*.f64 (*.f64 (+.f64 (*.f64 1/2 (/.f64 (+.f64 h (*.f64 -1 h)) (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (/.f64 1 a)) (*.f64 (cbrt.f64 -1/2) g)) (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (pow.f64 h 2))) 1/9))) (+.f64 (*.f64 (pow.f64 (/.f64 (*.f64 (sqrt.f64 -1) (*.f64 1 h)) a) 1/3) (cbrt.f64 -1/2)) (*.f64 1/3 (*.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (pow.f64 g 3) (-.f64 (*.f64 -1/4 (/.f64 (*.f64 (-.f64 1 (pow.f64 (*.f64 1/2 (/.f64 (+.f64 h (*.f64 -1 h)) (*.f64 (sqrt.f64 -1) h))) 2)) (+.f64 (*.f64 -1 h) h)) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (*.f64 a (pow.f64 h 3))))) (+.f64 (*.f64 2/3 (*.f64 (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 5)) (*.f64 (pow.f64 (sqrt.f64 -1) 5) (pow.f64 h 5))) 1/9) (*.f64 (-.f64 (*.f64 1/2 (/.f64 (-.f64 1 (pow.f64 (*.f64 1/2 (/.f64 (+.f64 h (*.f64 -1 h)) (*.f64 (sqrt.f64 -1) h))) 2)) (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (*.f64 1/3 (*.f64 (pow.f64 (+.f64 (*.f64 1/2 (/.f64 (+.f64 h (*.f64 -1 h)) (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (/.f64 1 a)) 2) (pow.f64 (/.f64 (*.f64 1 a) (*.f64 (sqrt.f64 -1) h)) 1/9)))) (+.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 h) h) (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (/.f64 1 a))))) (*.f64 1/27 (*.f64 (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (pow.f64 h 2))) 1/3) (pow.f64 (+.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 h) h) (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (/.f64 1 a)) 3))))))) (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (pow.f64 h 2))) 1/3))))))
(*.f64 (pow.f64 (/.f64 (*.f64 1 g) a) 1/3) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)))
(+.f64 (*.f64 1/6 (*.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (+.f64 (*.f64 -1 g) g) h)) (*.f64 (pow.f64 (/.f64 (pow.f64 1 4) (*.f64 (pow.f64 a 7) (pow.f64 g 11))) 1/9) (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 2) 2)) 1/3)))) (*.f64 (pow.f64 (/.f64 (*.f64 1 g) a) 1/3) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2))))
(+.f64 (*.f64 1/6 (*.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (+.f64 (*.f64 -1 g) g) h)) (*.f64 (pow.f64 (/.f64 (pow.f64 1 4) (*.f64 (pow.f64 a 7) (pow.f64 g 11))) 1/9) (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 2) 2)) 1/3)))) (+.f64 (*.f64 1/3 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (-.f64 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (*.f64 1/2 (/.f64 (+.f64 g (*.f64 -1 g)) g)) 2) 1) (*.f64 a g))) (*.f64 1/12 (*.f64 (pow.f64 (/.f64 (pow.f64 1 4) (*.f64 (pow.f64 a 17) (pow.f64 g 19))) 1/9) (*.f64 (pow.f64 (/.f64 1 (cbrt.f64 2)) 1/3) (pow.f64 (+.f64 g (*.f64 -1 g)) 2))))) (pow.f64 h 2))) (pow.f64 (cbrt.f64 2) 2)) (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (pow.f64 g 2)) 1/3))) (*.f64 (pow.f64 (/.f64 (*.f64 1 g) a) 1/3) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)))))
(+.f64 (*.f64 1/6 (*.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (+.f64 (*.f64 -1 g) g) h)) (*.f64 (pow.f64 (/.f64 (pow.f64 1 4) (*.f64 (pow.f64 a 7) (pow.f64 g 11))) 1/9) (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 2) 2)) 1/3)))) (+.f64 (*.f64 1/3 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (-.f64 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (*.f64 1/2 (/.f64 (+.f64 g (*.f64 -1 g)) g)) 2) 1) (*.f64 a g))) (*.f64 1/12 (*.f64 (pow.f64 (/.f64 (pow.f64 1 4) (*.f64 (pow.f64 a 17) (pow.f64 g 19))) 1/9) (*.f64 (pow.f64 (/.f64 1 (cbrt.f64 2)) 1/3) (pow.f64 (+.f64 g (*.f64 -1 g)) 2))))) (pow.f64 h 2))) (pow.f64 (cbrt.f64 2) 2)) (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (pow.f64 g 2)) 1/3))) (+.f64 (*.f64 1/3 (*.f64 (/.f64 (*.f64 (-.f64 (*.f64 1/4 (/.f64 (*.f64 (+.f64 1 (pow.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 g) g) g)) 2)) (+.f64 g (*.f64 -1 g))) (*.f64 a (pow.f64 g 3)))) (+.f64 (*.f64 1/216 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 a 7) (pow.f64 g 11))) 1/3) (/.f64 (pow.f64 (+.f64 g (*.f64 -1 g)) 3) (pow.f64 (cbrt.f64 2) 2)))) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 (pow.f64 1 4) (*.f64 (pow.f64 a 4) (pow.f64 g 14))) 1/9) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 2) 5)) 1/3) (*.f64 (+.f64 g (*.f64 -1 g)) (-.f64 (*.f64 -1/2 (/.f64 (+.f64 1 (pow.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 g) g) g)) 2)) (*.f64 a g))) (*.f64 1/12 (*.f64 (pow.f64 (/.f64 (pow.f64 1 4) (*.f64 (pow.f64 a 17) (pow.f64 g 19))) 1/9) (*.f64 (pow.f64 (/.f64 1 (cbrt.f64 2)) 1/3) (pow.f64 (+.f64 (*.f64 -1 g) g) 2))))))))))) (*.f64 (cbrt.f64 -1/2) (pow.f64 h 3))) (pow.f64 (cbrt.f64 2) 2)) (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (pow.f64 g 2)) 1/3))) (*.f64 (pow.f64 (/.f64 (*.f64 1 g) a) 1/3) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2))))))
Outputs
(*.f64 (sqrt.f64 -1) h)
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (+.f64 h (*.f64 -1 h)) g) (*.f64 (sqrt.f64 -1) h))) (*.f64 (sqrt.f64 -1) h))
(fma.f64 1/2 (*.f64 (/.f64 (*.f64 0 h) (sqrt.f64 -1)) (/.f64 g h)) (*.f64 (sqrt.f64 -1) h))
(fma.f64 (sqrt.f64 -1) h (/.f64 0 (*.f64 (sqrt.f64 -1) h)))
(fma.f64 (sqrt.f64 -1) h 0)
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (+.f64 h (*.f64 -1 h)) g) (*.f64 (sqrt.f64 -1) h))) (+.f64 (*.f64 (sqrt.f64 -1) h) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 g 2) (-.f64 1 (pow.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 h) h) (*.f64 (sqrt.f64 -1) h))) 2))) (*.f64 (sqrt.f64 -1) h)))))
(fma.f64 1/2 (*.f64 (/.f64 (*.f64 0 h) (sqrt.f64 -1)) (/.f64 g h)) (fma.f64 (sqrt.f64 -1) h (/.f64 (*.f64 1/2 (*.f64 (*.f64 g g) (-.f64 1 (pow.f64 (*.f64 1/2 (/.f64 (*.f64 0 h) (*.f64 (sqrt.f64 -1) h))) 2)))) (*.f64 (sqrt.f64 -1) h))))
(+.f64 (fma.f64 (sqrt.f64 -1) h (/.f64 0 (*.f64 (sqrt.f64 -1) h))) (*.f64 (/.f64 1/2 (sqrt.f64 -1)) (/.f64 (*.f64 (*.f64 g g) (-.f64 1 (pow.f64 (/.f64 0 (*.f64 (sqrt.f64 -1) h)) 2))) h)))
(fma.f64 (sqrt.f64 -1) h (*.f64 (/.f64 1/2 (sqrt.f64 -1)) (/.f64 (*.f64 g g) h)))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (+.f64 h (*.f64 -1 h)) g) (*.f64 (sqrt.f64 -1) h))) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (-.f64 1 (pow.f64 (*.f64 1/2 (/.f64 (+.f64 h (*.f64 -1 h)) (*.f64 (sqrt.f64 -1) h))) 2)) (*.f64 (pow.f64 g 3) (+.f64 (*.f64 -1 h) h))) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3)))) (+.f64 (*.f64 (sqrt.f64 -1) h) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 g 2) (-.f64 1 (pow.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 h) h) (*.f64 (sqrt.f64 -1) h))) 2))) (*.f64 (sqrt.f64 -1) h))))))
(fma.f64 1/2 (*.f64 (/.f64 (*.f64 0 h) (sqrt.f64 -1)) (/.f64 g h)) (fma.f64 (sqrt.f64 -1) h (/.f64 (*.f64 1/2 (*.f64 (*.f64 g g) (-.f64 1 (pow.f64 (*.f64 1/2 (/.f64 (*.f64 0 h) (*.f64 (sqrt.f64 -1) h))) 2)))) (*.f64 (sqrt.f64 -1) h))))
(+.f64 (fma.f64 (sqrt.f64 -1) h (/.f64 0 (*.f64 (sqrt.f64 -1) h))) (*.f64 (/.f64 1/2 (sqrt.f64 -1)) (/.f64 (*.f64 (*.f64 g g) (-.f64 1 (pow.f64 (/.f64 0 (*.f64 (sqrt.f64 -1) h)) 2))) h)))
(fma.f64 (sqrt.f64 -1) h (*.f64 (/.f64 1/2 (sqrt.f64 -1)) (/.f64 (*.f64 g g) h)))
g
(+.f64 (*.f64 1/2 (+.f64 (*.f64 -1 h) h)) g)
g
(+.f64 (*.f64 1/2 (+.f64 (*.f64 -1 h) h)) (+.f64 g (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1 (pow.f64 h 2)) (pow.f64 (*.f64 1/2 (+.f64 h (*.f64 -1 h))) 2)) g))))
(+.f64 (fma.f64 1/2 (*.f64 0 h) g) (/.f64 (*.f64 1/2 (-.f64 (neg.f64 (*.f64 h h)) (pow.f64 (*.f64 1/2 (*.f64 0 h)) 2))) g))
(fma.f64 1/2 (/.f64 (fma.f64 -1 (*.f64 h h) 0) g) g)
(fma.f64 1/2 (*.f64 h (neg.f64 (/.f64 h g))) g)
(+.f64 (*.f64 1/2 (+.f64 (*.f64 -1 h) h)) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (-.f64 (*.f64 -1 (pow.f64 h 2)) (pow.f64 (*.f64 1/2 (+.f64 (*.f64 -1 h) h)) 2)) (+.f64 h (*.f64 -1 h))) (pow.f64 g 2))) (+.f64 g (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1 (pow.f64 h 2)) (pow.f64 (*.f64 1/2 (+.f64 h (*.f64 -1 h))) 2)) g)))))
(+.f64 (fma.f64 1/2 (*.f64 0 h) g) (/.f64 (*.f64 1/2 (-.f64 (neg.f64 (*.f64 h h)) (pow.f64 (*.f64 1/2 (*.f64 0 h)) 2))) g))
(fma.f64 1/2 (/.f64 (fma.f64 -1 (*.f64 h h) 0) g) g)
(fma.f64 1/2 (*.f64 h (neg.f64 (/.f64 h g))) g)
(*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) g))
g
(+.f64 (*.f64 1/2 (+.f64 (*.f64 -1 h) h)) (*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) g)))
g
(+.f64 (*.f64 1/2 (+.f64 (*.f64 -1 h) h)) (+.f64 (*.f64 -1/2 (/.f64 (-.f64 (pow.f64 h 2) (pow.f64 (*.f64 1/2 (/.f64 (+.f64 h (*.f64 -1 h)) (sqrt.f64 -1))) 2)) g)) (*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) g))))
(fma.f64 1/2 (*.f64 0 h) (fma.f64 -1/2 (/.f64 (-.f64 (*.f64 h h) (pow.f64 (*.f64 1/2 (/.f64 (*.f64 0 h) (sqrt.f64 -1))) 2)) g) (neg.f64 (*.f64 g (pow.f64 (sqrt.f64 -1) 2)))))
(fma.f64 -1/2 (/.f64 (-.f64 (*.f64 h h) (pow.f64 (/.f64 0 (sqrt.f64 -1)) 2)) g) g)
(fma.f64 (/.f64 -1/2 g) (*.f64 h h) g)
(+.f64 (*.f64 1/2 (+.f64 (*.f64 -1 h) h)) (+.f64 (*.f64 -1/2 (/.f64 (-.f64 (pow.f64 h 2) (pow.f64 (*.f64 1/2 (/.f64 (+.f64 h (*.f64 -1 h)) (sqrt.f64 -1))) 2)) g)) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (+.f64 h (*.f64 -1 h)) (-.f64 (pow.f64 h 2) (pow.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 h) h) (sqrt.f64 -1))) 2))) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (pow.f64 g 2)))) (*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) g)))))
(fma.f64 1/2 (*.f64 0 h) (fma.f64 -1/2 (/.f64 (-.f64 (*.f64 h h) (pow.f64 (*.f64 1/2 (/.f64 (*.f64 0 h) (sqrt.f64 -1))) 2)) g) (neg.f64 (*.f64 g (pow.f64 (sqrt.f64 -1) 2)))))
(fma.f64 -1/2 (/.f64 (-.f64 (*.f64 h h) (pow.f64 (/.f64 0 (sqrt.f64 -1)) 2)) g) g)
(fma.f64 (/.f64 -1/2 g) (*.f64 h h) g)
g
(+.f64 g (*.f64 1/2 (/.f64 (*.f64 h (+.f64 (*.f64 -1 g) g)) g)))
g
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 1/2 (/.f64 (+.f64 g (*.f64 -1 g)) g)) 2) 1) (pow.f64 h 2)) g)) (+.f64 g (*.f64 1/2 (/.f64 (*.f64 h (+.f64 (*.f64 -1 g) g)) g))))
(fma.f64 1/2 (*.f64 0 h) (fma.f64 -1/2 (/.f64 (-.f64 (*.f64 h h) (pow.f64 (*.f64 1/2 (/.f64 (*.f64 0 h) (sqrt.f64 -1))) 2)) g) (neg.f64 (*.f64 g (pow.f64 (sqrt.f64 -1) 2)))))
(fma.f64 -1/2 (/.f64 (-.f64 (*.f64 h h) (pow.f64 (/.f64 0 (sqrt.f64 -1)) 2)) g) g)
(fma.f64 (/.f64 -1/2 g) (*.f64 h h) g)
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 1/2 (/.f64 (+.f64 g (*.f64 -1 g)) g)) 2) 1) (pow.f64 h 2)) g)) (+.f64 (*.f64 1/4 (/.f64 (*.f64 (+.f64 1 (pow.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 g) g) g)) 2)) (*.f64 (+.f64 g (*.f64 -1 g)) (pow.f64 h 3))) (pow.f64 g 3))) (+.f64 g (*.f64 1/2 (/.f64 (*.f64 h (+.f64 (*.f64 -1 g) g)) g)))))
(fma.f64 1/2 (*.f64 0 h) (fma.f64 -1/2 (/.f64 (-.f64 (*.f64 h h) (pow.f64 (*.f64 1/2 (/.f64 (*.f64 0 h) (sqrt.f64 -1))) 2)) g) (neg.f64 (*.f64 g (pow.f64 (sqrt.f64 -1) 2)))))
(fma.f64 -1/2 (/.f64 (-.f64 (*.f64 h h) (pow.f64 (/.f64 0 (sqrt.f64 -1)) 2)) g) g)
(fma.f64 (/.f64 -1/2 g) (*.f64 h h) g)
(*.f64 (sqrt.f64 -1) h)
(+.f64 (*.f64 (sqrt.f64 -1) h) (*.f64 1/2 (/.f64 (+.f64 g (*.f64 -1 g)) (sqrt.f64 -1))))
(fma.f64 1/2 (*.f64 (/.f64 (*.f64 0 h) (sqrt.f64 -1)) (/.f64 g h)) (*.f64 (sqrt.f64 -1) h))
(fma.f64 (sqrt.f64 -1) h (/.f64 0 (*.f64 (sqrt.f64 -1) h)))
(fma.f64 (sqrt.f64 -1) h 0)
(+.f64 (*.f64 1/2 (/.f64 (-.f64 (pow.f64 g 2) (pow.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 g) g) (sqrt.f64 -1))) 2)) (*.f64 (sqrt.f64 -1) h))) (+.f64 (*.f64 (sqrt.f64 -1) h) (*.f64 1/2 (/.f64 (+.f64 g (*.f64 -1 g)) (sqrt.f64 -1)))))
(fma.f64 1/2 (*.f64 (/.f64 (*.f64 0 h) (sqrt.f64 -1)) (/.f64 g h)) (fma.f64 (sqrt.f64 -1) h (/.f64 (*.f64 1/2 (*.f64 (*.f64 g g) (-.f64 1 (pow.f64 (*.f64 1/2 (/.f64 (*.f64 0 h) (*.f64 (sqrt.f64 -1) h))) 2)))) (*.f64 (sqrt.f64 -1) h))))
(+.f64 (fma.f64 (sqrt.f64 -1) h (/.f64 0 (*.f64 (sqrt.f64 -1) h))) (*.f64 (/.f64 1/2 (sqrt.f64 -1)) (/.f64 (*.f64 (*.f64 g g) (-.f64 1 (pow.f64 (/.f64 0 (*.f64 (sqrt.f64 -1) h)) 2))) h)))
(fma.f64 (sqrt.f64 -1) h (*.f64 (/.f64 1/2 (sqrt.f64 -1)) (/.f64 (*.f64 g g) h)))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (-.f64 (pow.f64 g 2) (pow.f64 (*.f64 1/2 (/.f64 (+.f64 g (*.f64 -1 g)) (sqrt.f64 -1))) 2)) (+.f64 (*.f64 -1 g) g)) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 2)))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (pow.f64 g 2) (pow.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 g) g) (sqrt.f64 -1))) 2)) (*.f64 (sqrt.f64 -1) h))) (+.f64 (*.f64 (sqrt.f64 -1) h) (*.f64 1/2 (/.f64 (+.f64 g (*.f64 -1 g)) (sqrt.f64 -1))))))
(fma.f64 1/2 (*.f64 (/.f64 (*.f64 0 h) (sqrt.f64 -1)) (/.f64 g h)) (fma.f64 (sqrt.f64 -1) h (/.f64 (*.f64 1/2 (*.f64 (*.f64 g g) (-.f64 1 (pow.f64 (*.f64 1/2 (/.f64 (*.f64 0 h) (*.f64 (sqrt.f64 -1) h))) 2)))) (*.f64 (sqrt.f64 -1) h))))
(+.f64 (fma.f64 (sqrt.f64 -1) h (/.f64 0 (*.f64 (sqrt.f64 -1) h))) (*.f64 (/.f64 1/2 (sqrt.f64 -1)) (/.f64 (*.f64 (*.f64 g g) (-.f64 1 (pow.f64 (/.f64 0 (*.f64 (sqrt.f64 -1) h)) 2))) h)))
(fma.f64 (sqrt.f64 -1) h (*.f64 (/.f64 1/2 (sqrt.f64 -1)) (/.f64 (*.f64 g g) h)))
(*.f64 -1 (*.f64 (sqrt.f64 -1) h))
(neg.f64 (*.f64 (sqrt.f64 -1) h))
(*.f64 (sqrt.f64 -1) (neg.f64 h))
(+.f64 (*.f64 -1 (*.f64 (sqrt.f64 -1) h)) (*.f64 1/2 (/.f64 (+.f64 g (*.f64 -1 g)) (sqrt.f64 -1))))
(neg.f64 (*.f64 (sqrt.f64 -1) h))
(*.f64 (sqrt.f64 -1) (neg.f64 h))
(+.f64 (*.f64 -1 (*.f64 (sqrt.f64 -1) h)) (+.f64 (*.f64 -1/2 (/.f64 (-.f64 (pow.f64 g 2) (pow.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 g) g) (sqrt.f64 -1))) 2)) (*.f64 (sqrt.f64 -1) h))) (*.f64 1/2 (/.f64 (+.f64 g (*.f64 -1 g)) (sqrt.f64 -1)))))
(fma.f64 -1 (*.f64 (sqrt.f64 -1) h) (fma.f64 -1/2 (/.f64 (-.f64 (*.f64 g g) (pow.f64 (/.f64 (*.f64 1/2 (*.f64 0 g)) (sqrt.f64 -1)) 2)) (*.f64 (sqrt.f64 -1) h)) (/.f64 (*.f64 1/2 (*.f64 0 g)) (sqrt.f64 -1))))
(-.f64 (fma.f64 -1/2 (/.f64 (-.f64 (*.f64 g g) (pow.f64 (/.f64 0 (sqrt.f64 -1)) 2)) (*.f64 (sqrt.f64 -1) h)) (/.f64 0 (sqrt.f64 -1))) (*.f64 (sqrt.f64 -1) h))
(-.f64 (*.f64 (/.f64 -1/2 (sqrt.f64 -1)) (/.f64 (*.f64 g g) h)) (*.f64 (sqrt.f64 -1) h))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (-.f64 (pow.f64 g 2) (pow.f64 (*.f64 1/2 (/.f64 (+.f64 g (*.f64 -1 g)) (sqrt.f64 -1))) 2)) (+.f64 (*.f64 -1 g) g)) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 2)))) (+.f64 (*.f64 -1 (*.f64 (sqrt.f64 -1) h)) (+.f64 (*.f64 -1/2 (/.f64 (-.f64 (pow.f64 g 2) (pow.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 g) g) (sqrt.f64 -1))) 2)) (*.f64 (sqrt.f64 -1) h))) (*.f64 1/2 (/.f64 (+.f64 g (*.f64 -1 g)) (sqrt.f64 -1))))))
(fma.f64 -1 (*.f64 (sqrt.f64 -1) h) (fma.f64 -1/2 (/.f64 (-.f64 (*.f64 g g) (pow.f64 (/.f64 (*.f64 1/2 (*.f64 0 g)) (sqrt.f64 -1)) 2)) (*.f64 (sqrt.f64 -1) h)) (/.f64 (*.f64 1/2 (*.f64 0 g)) (sqrt.f64 -1))))
(-.f64 (fma.f64 -1/2 (/.f64 (-.f64 (*.f64 g g) (pow.f64 (/.f64 0 (sqrt.f64 -1)) 2)) (*.f64 (sqrt.f64 -1) h)) (/.f64 0 (sqrt.f64 -1))) (*.f64 (sqrt.f64 -1) h))
(-.f64 (*.f64 (/.f64 -1/2 (sqrt.f64 -1)) (/.f64 (*.f64 g g) h)) (*.f64 (sqrt.f64 -1) h))
(*.f64 (pow.f64 (/.f64 (*.f64 (sqrt.f64 -1) (*.f64 1 h)) a) 1/3) (cbrt.f64 -1/2))
(*.f64 (cbrt.f64 (/.f64 (sqrt.f64 -1) (/.f64 a h))) (cbrt.f64 -1/2))
(*.f64 (cbrt.f64 (*.f64 (sqrt.f64 -1) (/.f64 h a))) (cbrt.f64 -1/2))
(+.f64 (*.f64 1/3 (*.f64 (*.f64 (+.f64 (*.f64 1/2 (/.f64 (+.f64 h (*.f64 -1 h)) (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (/.f64 1 a)) (*.f64 (cbrt.f64 -1/2) g)) (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (pow.f64 h 2))) 1/9))) (*.f64 (pow.f64 (/.f64 (*.f64 (sqrt.f64 -1) (*.f64 1 h)) a) 1/3) (cbrt.f64 -1/2)))
(fma.f64 1/3 (*.f64 (*.f64 (*.f64 g (cbrt.f64 -1/2)) (fma.f64 1/2 (/.f64 (*.f64 0 h) (*.f64 (sqrt.f64 -1) (*.f64 h a))) (/.f64 1 a))) (*.f64 (pow.f64 (/.f64 (*.f64 a a) (*.f64 (*.f64 h h) (pow.f64 (sqrt.f64 -1) 2))) 1/18) (pow.f64 (/.f64 (*.f64 a a) (*.f64 (*.f64 h h) (pow.f64 (sqrt.f64 -1) 2))) 1/18))) (*.f64 (cbrt.f64 (/.f64 (sqrt.f64 -1) (/.f64 a h))) (cbrt.f64 -1/2)))
(fma.f64 1/3 (*.f64 (*.f64 g (cbrt.f64 -1/2)) (*.f64 (+.f64 (/.f64 1 a) (/.f64 (/.f64 0 (sqrt.f64 -1)) (*.f64 h a))) (*.f64 (pow.f64 (/.f64 (*.f64 a a) (neg.f64 (*.f64 h h))) 1/18) (pow.f64 (/.f64 (*.f64 a a) (neg.f64 (*.f64 h h))) 1/18)))) (*.f64 (cbrt.f64 (/.f64 (sqrt.f64 -1) (/.f64 a h))) (cbrt.f64 -1/2)))
(fma.f64 1/3 (*.f64 (*.f64 g (cbrt.f64 -1/2)) (*.f64 (+.f64 0 (/.f64 1 a)) (*.f64 (pow.f64 (*.f64 (/.f64 a (neg.f64 (*.f64 h h))) a) 1/18) (pow.f64 (*.f64 (/.f64 a (neg.f64 (*.f64 h h))) a) 1/18)))) (*.f64 (cbrt.f64 (*.f64 (sqrt.f64 -1) (/.f64 h a))) (cbrt.f64 -1/2)))
(+.f64 (*.f64 1/3 (*.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (pow.f64 g 2) (-.f64 (*.f64 1/2 (/.f64 (-.f64 1 (pow.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 h) h) (*.f64 (sqrt.f64 -1) h))) 2)) (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 (*.f64 1 a) (*.f64 (sqrt.f64 -1) h)) 1/9) (pow.f64 (+.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 h) h) (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (/.f64 1 a)) 2)))))) (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (pow.f64 h 2))) 1/3))) (+.f64 (*.f64 1/3 (*.f64 (*.f64 (+.f64 (*.f64 1/2 (/.f64 (+.f64 h (*.f64 -1 h)) (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (/.f64 1 a)) (*.f64 (cbrt.f64 -1/2) g)) (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (pow.f64 h 2))) 1/9))) (*.f64 (pow.f64 (/.f64 (*.f64 (sqrt.f64 -1) (*.f64 1 h)) a) 1/3) (cbrt.f64 -1/2))))
(fma.f64 1/3 (*.f64 (*.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 g g)) (fma.f64 1/2 (/.f64 (-.f64 1 (pow.f64 (*.f64 1/2 (/.f64 (*.f64 0 h) (*.f64 (sqrt.f64 -1) h))) 2)) (*.f64 (sqrt.f64 -1) (*.f64 h a))) (neg.f64 (*.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 a (*.f64 (sqrt.f64 -1) h)) 1/18) (pow.f64 (/.f64 a (*.f64 (sqrt.f64 -1) h)) 1/18))) (pow.f64 (fma.f64 1/2 (/.f64 (*.f64 0 h) (*.f64 (sqrt.f64 -1) (*.f64 h a))) (/.f64 1 a)) 2))))) (cbrt.f64 (/.f64 (*.f64 a a) (*.f64 (*.f64 h h) (pow.f64 (sqrt.f64 -1) 2))))) (fma.f64 1/3 (*.f64 (*.f64 (*.f64 g (cbrt.f64 -1/2)) (fma.f64 1/2 (/.f64 (*.f64 0 h) (*.f64 (sqrt.f64 -1) (*.f64 h a))) (/.f64 1 a))) (*.f64 (pow.f64 (/.f64 (*.f64 a a) (*.f64 (*.f64 h h) (pow.f64 (sqrt.f64 -1) 2))) 1/18) (pow.f64 (/.f64 (*.f64 a a) (*.f64 (*.f64 h h) (pow.f64 (sqrt.f64 -1) 2))) 1/18))) (*.f64 (cbrt.f64 (/.f64 (sqrt.f64 -1) (/.f64 a h))) (cbrt.f64 -1/2))))
(fma.f64 1/3 (*.f64 (*.f64 (fma.f64 1/2 (/.f64 (-.f64 1 (pow.f64 (/.f64 0 (*.f64 (sqrt.f64 -1) h)) 2)) (*.f64 (sqrt.f64 -1) (*.f64 h a))) (*.f64 (*.f64 (*.f64 (pow.f64 (/.f64 a (*.f64 (sqrt.f64 -1) h)) 1/18) (pow.f64 (/.f64 a (*.f64 (sqrt.f64 -1) h)) 1/18)) (pow.f64 (+.f64 (/.f64 1 a) (/.f64 (/.f64 0 (sqrt.f64 -1)) (*.f64 h a))) 2)) -1/3)) (*.f64 (*.f64 g g) (cbrt.f64 -1/2))) (cbrt.f64 (/.f64 (*.f64 a a) (neg.f64 (*.f64 h h))))) (fma.f64 1/3 (*.f64 (*.f64 g (cbrt.f64 -1/2)) (*.f64 (+.f64 (/.f64 1 a) (/.f64 (/.f64 0 (sqrt.f64 -1)) (*.f64 h a))) (*.f64 (pow.f64 (/.f64 (*.f64 a a) (neg.f64 (*.f64 h h))) 1/18) (pow.f64 (/.f64 (*.f64 a a) (neg.f64 (*.f64 h h))) 1/18)))) (*.f64 (cbrt.f64 (/.f64 (sqrt.f64 -1) (/.f64 a h))) (cbrt.f64 -1/2))))
(+.f64 (*.f64 (*.f64 (pow.f64 (*.f64 (/.f64 a (neg.f64 (*.f64 h h))) a) 1/18) (pow.f64 (*.f64 (/.f64 a (neg.f64 (*.f64 h h))) a) 1/18)) (*.f64 (*.f64 1/3 (*.f64 g (cbrt.f64 -1/2))) (+.f64 0 (/.f64 1 a)))) (*.f64 (cbrt.f64 -1/2) (+.f64 (cbrt.f64 (*.f64 (sqrt.f64 -1) (/.f64 h a))) (*.f64 (*.f64 (*.f64 g g) (*.f64 (+.f64 (/.f64 1/2 (*.f64 (sqrt.f64 -1) (*.f64 h a))) (*.f64 (*.f64 (pow.f64 (/.f64 a (*.f64 (sqrt.f64 -1) h)) 1/18) (pow.f64 (/.f64 a (*.f64 (sqrt.f64 -1) h)) 1/18)) (*.f64 (pow.f64 (+.f64 0 (/.f64 1 a)) 2) -1/3))) (cbrt.f64 (*.f64 (/.f64 a (neg.f64 (*.f64 h h))) a)))) 1/3))))
(+.f64 (*.f64 1/3 (*.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (pow.f64 g 2) (-.f64 (*.f64 1/2 (/.f64 (-.f64 1 (pow.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 h) h) (*.f64 (sqrt.f64 -1) h))) 2)) (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 (*.f64 1 a) (*.f64 (sqrt.f64 -1) h)) 1/9) (pow.f64 (+.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 h) h) (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (/.f64 1 a)) 2)))))) (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (pow.f64 h 2))) 1/3))) (+.f64 (*.f64 1/3 (*.f64 (*.f64 (+.f64 (*.f64 1/2 (/.f64 (+.f64 h (*.f64 -1 h)) (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (/.f64 1 a)) (*.f64 (cbrt.f64 -1/2) g)) (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (pow.f64 h 2))) 1/9))) (+.f64 (*.f64 (pow.f64 (/.f64 (*.f64 (sqrt.f64 -1) (*.f64 1 h)) a) 1/3) (cbrt.f64 -1/2)) (*.f64 1/3 (*.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (pow.f64 g 3) (-.f64 (*.f64 -1/4 (/.f64 (*.f64 (-.f64 1 (pow.f64 (*.f64 1/2 (/.f64 (+.f64 h (*.f64 -1 h)) (*.f64 (sqrt.f64 -1) h))) 2)) (+.f64 (*.f64 -1 h) h)) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (*.f64 a (pow.f64 h 3))))) (+.f64 (*.f64 2/3 (*.f64 (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 5)) (*.f64 (pow.f64 (sqrt.f64 -1) 5) (pow.f64 h 5))) 1/9) (*.f64 (-.f64 (*.f64 1/2 (/.f64 (-.f64 1 (pow.f64 (*.f64 1/2 (/.f64 (+.f64 h (*.f64 -1 h)) (*.f64 (sqrt.f64 -1) h))) 2)) (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (*.f64 1/3 (*.f64 (pow.f64 (+.f64 (*.f64 1/2 (/.f64 (+.f64 h (*.f64 -1 h)) (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (/.f64 1 a)) 2) (pow.f64 (/.f64 (*.f64 1 a) (*.f64 (sqrt.f64 -1) h)) 1/9)))) (+.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 h) h) (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (/.f64 1 a))))) (*.f64 1/27 (*.f64 (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (pow.f64 h 2))) 1/3) (pow.f64 (+.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 h) h) (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (/.f64 1 a)) 3))))))) (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (pow.f64 h 2))) 1/3))))))
(fma.f64 1/3 (*.f64 (*.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 g g)) (fma.f64 1/2 (/.f64 (-.f64 1 (pow.f64 (*.f64 1/2 (/.f64 (*.f64 0 h) (*.f64 (sqrt.f64 -1) h))) 2)) (*.f64 (sqrt.f64 -1) (*.f64 h a))) (neg.f64 (*.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 a (*.f64 (sqrt.f64 -1) h)) 1/18) (pow.f64 (/.f64 a (*.f64 (sqrt.f64 -1) h)) 1/18))) (pow.f64 (fma.f64 1/2 (/.f64 (*.f64 0 h) (*.f64 (sqrt.f64 -1) (*.f64 h a))) (/.f64 1 a)) 2))))) (cbrt.f64 (/.f64 (*.f64 a a) (*.f64 (*.f64 h h) (pow.f64 (sqrt.f64 -1) 2))))) (fma.f64 1/3 (*.f64 (*.f64 (*.f64 g (cbrt.f64 -1/2)) (fma.f64 1/2 (/.f64 (*.f64 0 h) (*.f64 (sqrt.f64 -1) (*.f64 h a))) (/.f64 1 a))) (*.f64 (pow.f64 (/.f64 (*.f64 a a) (*.f64 (*.f64 h h) (pow.f64 (sqrt.f64 -1) 2))) 1/18) (pow.f64 (/.f64 (*.f64 a a) (*.f64 (*.f64 h h) (pow.f64 (sqrt.f64 -1) 2))) 1/18))) (fma.f64 (cbrt.f64 (/.f64 (sqrt.f64 -1) (/.f64 a h))) (cbrt.f64 -1/2) (*.f64 1/3 (*.f64 (cbrt.f64 -1/2) (*.f64 (*.f64 (pow.f64 g 3) (-.f64 (*.f64 -1/4 (/.f64 (-.f64 1 (pow.f64 (*.f64 1/2 (/.f64 (*.f64 0 h) (*.f64 (sqrt.f64 -1) h))) 2)) (/.f64 (*.f64 (pow.f64 (sqrt.f64 -1) 3) (*.f64 (pow.f64 h 3) a)) (*.f64 0 h)))) (fma.f64 2/3 (*.f64 (*.f64 (pow.f64 (/.f64 (pow.f64 a 5) (*.f64 (pow.f64 (sqrt.f64 -1) 5) (pow.f64 h 5))) 1/18) (pow.f64 (/.f64 (pow.f64 a 5) (*.f64 (pow.f64 (sqrt.f64 -1) 5) (pow.f64 h 5))) 1/18)) (*.f64 (fma.f64 1/2 (/.f64 (*.f64 0 h) (*.f64 (sqrt.f64 -1) (*.f64 h a))) (/.f64 1 a)) (fma.f64 1/2 (/.f64 (-.f64 1 (pow.f64 (*.f64 1/2 (/.f64 (*.f64 0 h) (*.f64 (sqrt.f64 -1) h))) 2)) (*.f64 (sqrt.f64 -1) (*.f64 h a))) (neg.f64 (*.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 a (*.f64 (sqrt.f64 -1) h)) 1/18) (pow.f64 (/.f64 a (*.f64 (sqrt.f64 -1) h)) 1/18))) (pow.f64 (fma.f64 1/2 (/.f64 (*.f64 0 h) (*.f64 (sqrt.f64 -1) (*.f64 h a))) (/.f64 1 a)) 2)))))) (*.f64 (*.f64 1/27 (cbrt.f64 (/.f64 (*.f64 a a) (*.f64 (*.f64 h h) (pow.f64 (sqrt.f64 -1) 2))))) (pow.f64 (fma.f64 1/2 (/.f64 (*.f64 0 h) (*.f64 (sqrt.f64 -1) (*.f64 h a))) (/.f64 1 a)) 3))))) (cbrt.f64 (/.f64 (*.f64 a a) (*.f64 (*.f64 h h) (pow.f64 (sqrt.f64 -1) 2))))))))))
(fma.f64 1/3 (*.f64 (*.f64 (fma.f64 1/2 (/.f64 (-.f64 1 (pow.f64 (/.f64 0 (*.f64 (sqrt.f64 -1) h)) 2)) (*.f64 (sqrt.f64 -1) (*.f64 h a))) (*.f64 (*.f64 (*.f64 (pow.f64 (/.f64 a (*.f64 (sqrt.f64 -1) h)) 1/18) (pow.f64 (/.f64 a (*.f64 (sqrt.f64 -1) h)) 1/18)) (pow.f64 (+.f64 (/.f64 1 a) (/.f64 (/.f64 0 (sqrt.f64 -1)) (*.f64 h a))) 2)) -1/3)) (*.f64 (*.f64 g g) (cbrt.f64 -1/2))) (cbrt.f64 (/.f64 (*.f64 a a) (neg.f64 (*.f64 h h))))) (fma.f64 1/3 (*.f64 (*.f64 g (cbrt.f64 -1/2)) (*.f64 (+.f64 (/.f64 1 a) (/.f64 (/.f64 0 (sqrt.f64 -1)) (*.f64 h a))) (*.f64 (pow.f64 (/.f64 (*.f64 a a) (neg.f64 (*.f64 h h))) 1/18) (pow.f64 (/.f64 (*.f64 a a) (neg.f64 (*.f64 h h))) 1/18)))) (fma.f64 1/3 (*.f64 (cbrt.f64 -1/2) (*.f64 (-.f64 (/.f64 (/.f64 (*.f64 0 (/.f64 (-.f64 1 (pow.f64 (/.f64 0 (*.f64 (sqrt.f64 -1) h)) 2)) (sqrt.f64 -1))) (pow.f64 h 3)) a) (fma.f64 2/3 (*.f64 (fma.f64 1/2 (/.f64 (-.f64 1 (pow.f64 (/.f64 0 (*.f64 (sqrt.f64 -1) h)) 2)) (*.f64 (sqrt.f64 -1) (*.f64 h a))) (*.f64 (*.f64 (*.f64 (pow.f64 (/.f64 a (*.f64 (sqrt.f64 -1) h)) 1/18) (pow.f64 (/.f64 a (*.f64 (sqrt.f64 -1) h)) 1/18)) (pow.f64 (+.f64 (/.f64 1 a) (/.f64 (/.f64 0 (sqrt.f64 -1)) (*.f64 h a))) 2)) -1/3)) (*.f64 (+.f64 (/.f64 1 a) (/.f64 (/.f64 0 (sqrt.f64 -1)) (*.f64 h a))) (*.f64 (pow.f64 (/.f64 (pow.f64 a 5) (*.f64 (pow.f64 (sqrt.f64 -1) 5) (pow.f64 h 5))) 1/18) (pow.f64 (/.f64 (pow.f64 a 5) (*.f64 (pow.f64 (sqrt.f64 -1) 5) (pow.f64 h 5))) 1/18)))) (*.f64 (cbrt.f64 (/.f64 (*.f64 a a) (neg.f64 (*.f64 h h)))) (*.f64 (pow.f64 (+.f64 (/.f64 1 a) (/.f64 (/.f64 0 (sqrt.f64 -1)) (*.f64 h a))) 3) 1/27)))) (*.f64 (pow.f64 g 3) (cbrt.f64 (/.f64 (*.f64 a a) (neg.f64 (*.f64 h h))))))) (*.f64 (cbrt.f64 (/.f64 (sqrt.f64 -1) (/.f64 a h))) (cbrt.f64 -1/2)))))
(+.f64 (fma.f64 1/3 (*.f64 (*.f64 g (cbrt.f64 -1/2)) (*.f64 (+.f64 0 (/.f64 1 a)) (*.f64 (pow.f64 (*.f64 (/.f64 a (neg.f64 (*.f64 h h))) a) 1/18) (pow.f64 (*.f64 (/.f64 a (neg.f64 (*.f64 h h))) a) 1/18)))) (*.f64 (cbrt.f64 (*.f64 (sqrt.f64 -1) (/.f64 h a))) (cbrt.f64 -1/2))) (*.f64 (*.f64 (cbrt.f64 (*.f64 (/.f64 a (neg.f64 (*.f64 h h))) a)) 1/3) (+.f64 (*.f64 (cbrt.f64 -1/2) (neg.f64 (*.f64 (pow.f64 g 3) (fma.f64 1/27 (*.f64 (cbrt.f64 (*.f64 (/.f64 a (neg.f64 (*.f64 h h))) a)) (pow.f64 (+.f64 0 (/.f64 1 a)) 3)) (*.f64 (+.f64 0 (/.f64 (+.f64 (/.f64 1/2 (*.f64 (sqrt.f64 -1) (*.f64 h a))) (*.f64 (*.f64 (pow.f64 (/.f64 a (*.f64 (sqrt.f64 -1) h)) 1/18) (pow.f64 (/.f64 a (*.f64 (sqrt.f64 -1) h)) 1/18)) (*.f64 (pow.f64 (+.f64 0 (/.f64 1 a)) 2) -1/3))) a)) (*.f64 (*.f64 2/3 (pow.f64 (/.f64 (pow.f64 a 5) (*.f64 (pow.f64 (sqrt.f64 -1) 5) (pow.f64 h 5))) 1/18)) (pow.f64 (/.f64 (pow.f64 a 5) (*.f64 (pow.f64 (sqrt.f64 -1) 5) (pow.f64 h 5))) 1/18))))))) (*.f64 (+.f64 (/.f64 1/2 (*.f64 (sqrt.f64 -1) (*.f64 h a))) (*.f64 (*.f64 (pow.f64 (/.f64 a (*.f64 (sqrt.f64 -1) h)) 1/18) (pow.f64 (/.f64 a (*.f64 (sqrt.f64 -1) h)) 1/18)) (*.f64 (pow.f64 (+.f64 0 (/.f64 1 a)) 2) -1/3))) (*.f64 (*.f64 g g) (cbrt.f64 -1/2))))))
(*.f64 (pow.f64 (/.f64 (*.f64 1 g) a) 1/3) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)))
(*.f64 (cbrt.f64 (/.f64 g a)) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)))
(*.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 2) (cbrt.f64 (/.f64 g a))))
(+.f64 (*.f64 1/6 (*.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (+.f64 (*.f64 -1 g) g) h)) (*.f64 (pow.f64 (/.f64 (pow.f64 1 4) (*.f64 (pow.f64 a 7) (pow.f64 g 11))) 1/9) (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 2) 2)) 1/3)))) (*.f64 (pow.f64 (/.f64 (*.f64 1 g) a) 1/3) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2))))
(fma.f64 1/6 (*.f64 (cbrt.f64 -1/2) (*.f64 (*.f64 h (*.f64 0 g)) (*.f64 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 a 7) (pow.f64 g 11))) 1/18) (pow.f64 (/.f64 1 (*.f64 (pow.f64 a 7) (pow.f64 g 11))) 1/18)) (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 2) 2)))))) (*.f64 (cbrt.f64 (/.f64 g a)) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2))))
(fma.f64 (cbrt.f64 (/.f64 g a)) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)) (*.f64 0 (*.f64 (cbrt.f64 -1/2) (*.f64 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 a 7) (pow.f64 g 11))) 1/18) (pow.f64 (/.f64 1 (*.f64 (pow.f64 a 7) (pow.f64 g 11))) 1/18)) (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 2) 2)))))))
(fma.f64 (cbrt.f64 (/.f64 g a)) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)) 0)
(+.f64 (*.f64 1/6 (*.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (+.f64 (*.f64 -1 g) g) h)) (*.f64 (pow.f64 (/.f64 (pow.f64 1 4) (*.f64 (pow.f64 a 7) (pow.f64 g 11))) 1/9) (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 2) 2)) 1/3)))) (+.f64 (*.f64 1/3 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (-.f64 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (*.f64 1/2 (/.f64 (+.f64 g (*.f64 -1 g)) g)) 2) 1) (*.f64 a g))) (*.f64 1/12 (*.f64 (pow.f64 (/.f64 (pow.f64 1 4) (*.f64 (pow.f64 a 17) (pow.f64 g 19))) 1/9) (*.f64 (pow.f64 (/.f64 1 (cbrt.f64 2)) 1/3) (pow.f64 (+.f64 g (*.f64 -1 g)) 2))))) (pow.f64 h 2))) (pow.f64 (cbrt.f64 2) 2)) (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (pow.f64 g 2)) 1/3))) (*.f64 (pow.f64 (/.f64 (*.f64 1 g) a) 1/3) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)))))
(fma.f64 1/6 (*.f64 (cbrt.f64 -1/2) (*.f64 (*.f64 h (*.f64 0 g)) (*.f64 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 a 7) (pow.f64 g 11))) 1/18) (pow.f64 (/.f64 1 (*.f64 (pow.f64 a 7) (pow.f64 g 11))) 1/18)) (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 2) 2)))))) (fma.f64 1/3 (/.f64 (*.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (*.f64 h h) (+.f64 (*.f64 -1/2 (/.f64 (+.f64 1 (pow.f64 (*.f64 1/2 (/.f64 (*.f64 0 g) g)) 2)) (*.f64 g a))) (*.f64 -1/12 (*.f64 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 a 17) (pow.f64 g 19))) 1/18) (pow.f64 (/.f64 1 (*.f64 (pow.f64 a 17) (pow.f64 g 19))) 1/18)) (*.f64 (cbrt.f64 (/.f64 1 (cbrt.f64 2))) (pow.f64 (*.f64 0 g) 2))))))) (cbrt.f64 (/.f64 (*.f64 a a) (*.f64 g g)))) (pow.f64 (cbrt.f64 2) 2)) (*.f64 (cbrt.f64 (/.f64 g a)) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)))))
(fma.f64 (*.f64 0 (cbrt.f64 -1/2)) (*.f64 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 a 7) (pow.f64 g 11))) 1/18) (pow.f64 (/.f64 1 (*.f64 (pow.f64 a 7) (pow.f64 g 11))) 1/18)) (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 2) 2)))) (fma.f64 1/3 (/.f64 (*.f64 (cbrt.f64 -1/2) (cbrt.f64 (*.f64 (/.f64 a g) (/.f64 a g)))) (/.f64 (/.f64 (pow.f64 (cbrt.f64 2) 2) (*.f64 h h)) (-.f64 (/.f64 -1/2 (/.f64 (*.f64 g a) (+.f64 1 (/.f64 (/.f64 0 g) g)))) (*.f64 0 (*.f64 (*.f64 (pow.f64 (/.f64 (/.f64 1 (pow.f64 a 17)) (pow.f64 g 19)) 1/18) (pow.f64 (/.f64 (/.f64 1 (pow.f64 a 17)) (pow.f64 g 19)) 1/18)) (cbrt.f64 (/.f64 1 (cbrt.f64 2)))))))) (*.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 2) (cbrt.f64 (/.f64 g a))))))
(+.f64 0 (fma.f64 1/3 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (cbrt.f64 (*.f64 (/.f64 a g) (/.f64 a g)))) (pow.f64 (cbrt.f64 2) 2)) (+.f64 (*.f64 (/.f64 -1/2 (*.f64 g a)) (*.f64 h h)) 0)) (*.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 2) (cbrt.f64 (/.f64 g a))))))
(+.f64 (*.f64 1/6 (*.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (+.f64 (*.f64 -1 g) g) h)) (*.f64 (pow.f64 (/.f64 (pow.f64 1 4) (*.f64 (pow.f64 a 7) (pow.f64 g 11))) 1/9) (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 2) 2)) 1/3)))) (+.f64 (*.f64 1/3 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (-.f64 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (*.f64 1/2 (/.f64 (+.f64 g (*.f64 -1 g)) g)) 2) 1) (*.f64 a g))) (*.f64 1/12 (*.f64 (pow.f64 (/.f64 (pow.f64 1 4) (*.f64 (pow.f64 a 17) (pow.f64 g 19))) 1/9) (*.f64 (pow.f64 (/.f64 1 (cbrt.f64 2)) 1/3) (pow.f64 (+.f64 g (*.f64 -1 g)) 2))))) (pow.f64 h 2))) (pow.f64 (cbrt.f64 2) 2)) (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (pow.f64 g 2)) 1/3))) (+.f64 (*.f64 1/3 (*.f64 (/.f64 (*.f64 (-.f64 (*.f64 1/4 (/.f64 (*.f64 (+.f64 1 (pow.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 g) g) g)) 2)) (+.f64 g (*.f64 -1 g))) (*.f64 a (pow.f64 g 3)))) (+.f64 (*.f64 1/216 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 a 7) (pow.f64 g 11))) 1/3) (/.f64 (pow.f64 (+.f64 g (*.f64 -1 g)) 3) (pow.f64 (cbrt.f64 2) 2)))) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 (pow.f64 1 4) (*.f64 (pow.f64 a 4) (pow.f64 g 14))) 1/9) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 2) 5)) 1/3) (*.f64 (+.f64 g (*.f64 -1 g)) (-.f64 (*.f64 -1/2 (/.f64 (+.f64 1 (pow.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 g) g) g)) 2)) (*.f64 a g))) (*.f64 1/12 (*.f64 (pow.f64 (/.f64 (pow.f64 1 4) (*.f64 (pow.f64 a 17) (pow.f64 g 19))) 1/9) (*.f64 (pow.f64 (/.f64 1 (cbrt.f64 2)) 1/3) (pow.f64 (+.f64 (*.f64 -1 g) g) 2))))))))))) (*.f64 (cbrt.f64 -1/2) (pow.f64 h 3))) (pow.f64 (cbrt.f64 2) 2)) (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (pow.f64 g 2)) 1/3))) (*.f64 (pow.f64 (/.f64 (*.f64 1 g) a) 1/3) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2))))))
(fma.f64 1/6 (*.f64 (cbrt.f64 -1/2) (*.f64 (*.f64 h (*.f64 0 g)) (*.f64 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 a 7) (pow.f64 g 11))) 1/18) (pow.f64 (/.f64 1 (*.f64 (pow.f64 a 7) (pow.f64 g 11))) 1/18)) (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 2) 2)))))) (fma.f64 1/3 (/.f64 (*.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (*.f64 h h) (+.f64 (*.f64 -1/2 (/.f64 (+.f64 1 (pow.f64 (*.f64 1/2 (/.f64 (*.f64 0 g) g)) 2)) (*.f64 g a))) (*.f64 -1/12 (*.f64 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 a 17) (pow.f64 g 19))) 1/18) (pow.f64 (/.f64 1 (*.f64 (pow.f64 a 17) (pow.f64 g 19))) 1/18)) (*.f64 (cbrt.f64 (/.f64 1 (cbrt.f64 2))) (pow.f64 (*.f64 0 g) 2))))))) (cbrt.f64 (/.f64 (*.f64 a a) (*.f64 g g)))) (pow.f64 (cbrt.f64 2) 2)) (fma.f64 1/3 (*.f64 (cbrt.f64 (/.f64 (*.f64 a a) (*.f64 g g))) (/.f64 (-.f64 (*.f64 1/4 (/.f64 (+.f64 1 (pow.f64 (*.f64 1/2 (/.f64 (*.f64 0 g) g)) 2)) (/.f64 (*.f64 (pow.f64 g 3) a) (*.f64 0 g)))) (fma.f64 1/216 (*.f64 (cbrt.f64 (/.f64 1 (*.f64 (pow.f64 a 7) (pow.f64 g 11)))) (/.f64 (pow.f64 (*.f64 0 g) 3) (pow.f64 (cbrt.f64 2) 2))) (*.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 (/.f64 1 (pow.f64 a 4)) (pow.f64 g 14)) 1/18) (pow.f64 (/.f64 (/.f64 1 (pow.f64 a 4)) (pow.f64 g 14)) 1/18))) (*.f64 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 2) 5))) (*.f64 0 g)) (+.f64 (*.f64 -1/2 (/.f64 (+.f64 1 (pow.f64 (*.f64 1/2 (/.f64 (*.f64 0 g) g)) 2)) (*.f64 g a))) (*.f64 -1/12 (*.f64 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 a 17) (pow.f64 g 19))) 1/18) (pow.f64 (/.f64 1 (*.f64 (pow.f64 a 17) (pow.f64 g 19))) 1/18)) (*.f64 (cbrt.f64 (/.f64 1 (cbrt.f64 2))) (pow.f64 (*.f64 0 g) 2))))))))) (/.f64 (pow.f64 (cbrt.f64 2) 2) (*.f64 (pow.f64 h 3) (cbrt.f64 -1/2))))) (*.f64 (cbrt.f64 (/.f64 g a)) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2))))))
(+.f64 (*.f64 (cbrt.f64 (*.f64 (/.f64 a g) (/.f64 a g))) (+.f64 (*.f64 1/3 (/.f64 (cbrt.f64 -1/2) (/.f64 (/.f64 (pow.f64 (cbrt.f64 2) 2) (*.f64 h h)) (-.f64 (/.f64 -1/2 (/.f64 (*.f64 g a) (+.f64 1 (/.f64 (/.f64 0 g) g)))) (*.f64 0 (*.f64 (*.f64 (pow.f64 (/.f64 (/.f64 1 (pow.f64 a 17)) (pow.f64 g 19)) 1/18) (pow.f64 (/.f64 (/.f64 1 (pow.f64 a 17)) (pow.f64 g 19)) 1/18)) (cbrt.f64 (/.f64 1 (cbrt.f64 2))))))))) (*.f64 1/3 (*.f64 (/.f64 (-.f64 (*.f64 (/.f64 (+.f64 1 (/.f64 (/.f64 0 g) g)) a) (/.f64 0 (pow.f64 g 3))) (fma.f64 1/3 (*.f64 (*.f64 (pow.f64 (/.f64 (/.f64 1 (pow.f64 a 4)) (pow.f64 g 14)) 1/18) (pow.f64 (/.f64 (/.f64 1 (pow.f64 a 4)) (pow.f64 g 14)) 1/18)) (*.f64 (-.f64 (/.f64 -1/2 (/.f64 (*.f64 g a) (+.f64 1 (/.f64 (/.f64 0 g) g)))) (*.f64 0 (*.f64 (*.f64 (pow.f64 (/.f64 (/.f64 1 (pow.f64 a 17)) (pow.f64 g 19)) 1/18) (pow.f64 (/.f64 (/.f64 1 (pow.f64 a 17)) (pow.f64 g 19)) 1/18)) (cbrt.f64 (/.f64 1 (cbrt.f64 2)))))) (*.f64 0 (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 2) 5)))))) (*.f64 (cbrt.f64 (/.f64 1 (*.f64 (pow.f64 a 7) (pow.f64 g 11)))) (*.f64 (/.f64 0 (pow.f64 (cbrt.f64 2) 2)) 1/216)))) (pow.f64 (cbrt.f64 2) 2)) (*.f64 (pow.f64 h 3) (cbrt.f64 -1/2)))))) (fma.f64 (cbrt.f64 (/.f64 g a)) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)) (*.f64 0 (*.f64 (cbrt.f64 -1/2) (*.f64 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 a 7) (pow.f64 g 11))) 1/18) (pow.f64 (/.f64 1 (*.f64 (pow.f64 a 7) (pow.f64 g 11))) 1/18)) (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 2) 2))))))))
(+.f64 (*.f64 (*.f64 (cbrt.f64 (*.f64 (/.f64 a g) (/.f64 a g))) 1/3) (+.f64 0 (*.f64 (/.f64 (cbrt.f64 -1/2) (pow.f64 (cbrt.f64 2) 2)) (+.f64 (*.f64 (/.f64 -1/2 (*.f64 g a)) (*.f64 h h)) 0)))) (fma.f64 (cbrt.f64 (/.f64 g a)) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)) 0))

localize33.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
1.0b
(+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))
3.8b
(-.f64 (*.f64 g g) (*.f64 h h))
9.7b
(cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a)))
32.1b
(sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))
Compiler

Compiled 116 to 38 computations (67.2% saved)

series3.0ms (0%)

Counts
1 → 24
Calls

6 calls:

TimeVariablePointExpression
1.0ms
g
@0
(+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))
0.0ms
g
@-inf
(+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))
0.0ms
g
@inf
(+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))
0.0ms
h
@0
(+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))
0.0ms
h
@-inf
(+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))

rewrite71.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
693×fma-def_binary64
435×log-prod_binary64
336×fma-neg_binary64
329×pow-prod-down_binary64
245×pow2_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0815
118915
2289914
Stop Event
node limit
Counts
1 → 54
Calls
Call 1
Inputs
(+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 g g) (-.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))) (/.f64 (-.f64 (*.f64 g g) (*.f64 h h)) (-.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))) (pow.f64 (cbrt.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))) 2) (cbrt.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))) (sqrt.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 g 3) (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 3/2)) (/.f64 1 (fma.f64 g g (-.f64 (*.f64 g g) (fma.f64 h h (*.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (-.f64 (*.f64 g g) (*.f64 g g)) (*.f64 h h)) (/.f64 1 (-.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 g g (-.f64 (*.f64 g g) (fma.f64 h h (*.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))) (+.f64 (pow.f64 g 3) (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 3/2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (+.f64 (-.f64 (*.f64 g g) (*.f64 g g)) (*.f64 h h))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 g 3) (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 3/2)) (fma.f64 g g (-.f64 (*.f64 g g) (fma.f64 h h (*.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 g 3) (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 3/2)) (fma.f64 (+.f64 g h) (-.f64 g h) (-.f64 (*.f64 g g) (*.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (-.f64 (*.f64 g g) (*.f64 g g)) (*.f64 h h)) (-.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 g 3) (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 3/2))) (neg.f64 (fma.f64 g g (-.f64 (*.f64 g g) (fma.f64 h h (*.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (-.f64 (*.f64 g g) (*.f64 g g)) (*.f64 h h))) (neg.f64 (-.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 (+.f64 g h) (-.f64 g h) (neg.f64 (*.f64 g g))) (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 g g (-.f64 (*.f64 g g) (fma.f64 h h (*.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))) (+.f64 (pow.f64 g 3) (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 3/2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (-.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (+.f64 (-.f64 (*.f64 g g) (*.f64 g g)) (*.f64 h h))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 g)) (exp.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 g) (+.f64 1 (expm1.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 g)) (+.f64 1 (expm1.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))) (exp.f64 g)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (+.f64 1 (expm1.f64 g))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))) (+.f64 1 (expm1.f64 g))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 g 1 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) 1 g)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 g) (pow.f64 (cbrt.f64 g) 2) (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/6) g)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 g) 2) (cbrt.f64 g) (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/6) (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 g) (sqrt.f64 g) (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/4) (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/4) g)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (cbrt.f64 g) g)) (sqrt.f64 (pow.f64 (cbrt.f64 g) 2)) (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (+.f64 g h)) (sqrt.f64 (-.f64 g h)) g)))))

simplify70.0ms (0.6%)

Algorithm
egg-herbie
Rules
751×associate-/l/_binary64
466×times-frac_binary64
416×distribute-neg-frac_binary64
396×associate-/r/_binary64
378×cancel-sign-sub-inv_binary64
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
073548
1220537
2705523
33520521
46368520
Stop Event
node limit
Counts
78 → 85
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 -1) h)
(+.f64 (*.f64 (sqrt.f64 -1) h) g)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (+.f64 (*.f64 (sqrt.f64 -1) h) g))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3)))) (+.f64 (*.f64 (sqrt.f64 -1) h) g)))
(*.f64 2 g)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 2 g))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 (*.f64 2 g) (*.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 (*.f64 -1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5))) (+.f64 (*.f64 2 g) (*.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))))))
(*.f64 1/2 (/.f64 (pow.f64 h 2) g))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))))
(+.f64 (*.f64 1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))))
(+.f64 (*.f64 1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 1/16 (pow.f64 h 8)) (pow.f64 (*.f64 -1/8 (pow.f64 h 4)) 2)) (pow.f64 g 7))) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))))))
(*.f64 2 g)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 2 g))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 (*.f64 2 g) (*.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 (*.f64 -1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5))) (+.f64 (*.f64 2 g) (*.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))))))
(*.f64 (sqrt.f64 -1) h)
(+.f64 (*.f64 (sqrt.f64 -1) h) g)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (+.f64 (*.f64 (sqrt.f64 -1) h) g))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3)))) (+.f64 (*.f64 (sqrt.f64 -1) h) g)))
(*.f64 -1 (*.f64 (sqrt.f64 -1) h))
(+.f64 (*.f64 -1 (*.f64 (sqrt.f64 -1) h)) g)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (+.f64 (*.f64 -1 (*.f64 (sqrt.f64 -1) h)) g))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (+.f64 (*.f64 -1 (*.f64 (sqrt.f64 -1) h)) (+.f64 g (*.f64 1/8 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3)))))))
Outputs
(*.f64 (sqrt.f64 -1) h)
(+.f64 (*.f64 (sqrt.f64 -1) h) g)
(fma.f64 (sqrt.f64 -1) h g)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (+.f64 (*.f64 (sqrt.f64 -1) h) g))
(fma.f64 1/2 (/.f64 (*.f64 g g) (*.f64 (sqrt.f64 -1) h)) (fma.f64 (sqrt.f64 -1) h g))
(fma.f64 1/2 (*.f64 (/.f64 g (sqrt.f64 -1)) (/.f64 g h)) (fma.f64 (sqrt.f64 -1) h g))
(fma.f64 (sqrt.f64 -1) h (fma.f64 (/.f64 1/2 (sqrt.f64 -1)) (/.f64 g (/.f64 h g)) g))
(fma.f64 (sqrt.f64 -1) h (fma.f64 1/2 (/.f64 (/.f64 g (/.f64 h g)) (sqrt.f64 -1)) g))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3)))) (+.f64 (*.f64 (sqrt.f64 -1) h) g)))
(fma.f64 1/2 (/.f64 (*.f64 g g) (*.f64 (sqrt.f64 -1) h)) (fma.f64 -1/8 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3))) (fma.f64 (sqrt.f64 -1) h g)))
(fma.f64 1/2 (*.f64 (/.f64 g (sqrt.f64 -1)) (/.f64 g h)) (fma.f64 -1/8 (/.f64 (pow.f64 g 4) (*.f64 (neg.f64 (sqrt.f64 -1)) (pow.f64 h 3))) (fma.f64 (sqrt.f64 -1) h g)))
(fma.f64 (/.f64 1/8 (sqrt.f64 -1)) (/.f64 (pow.f64 g 4) (pow.f64 h 3)) (fma.f64 (sqrt.f64 -1) h (fma.f64 (/.f64 1/2 (sqrt.f64 -1)) (/.f64 g (/.f64 h g)) g)))
(fma.f64 (/.f64 1/8 (sqrt.f64 -1)) (/.f64 (pow.f64 g 4) (pow.f64 h 3)) (fma.f64 (sqrt.f64 -1) h (fma.f64 1/2 (/.f64 (/.f64 g (/.f64 h g)) (sqrt.f64 -1)) g)))
(*.f64 2 g)
(*.f64 g 2)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 2 g))
(fma.f64 -1/2 (/.f64 (*.f64 h h) g) (*.f64 g 2))
(fma.f64 g 2 (*.f64 -1/2 (/.f64 h (/.f64 g h))))
(fma.f64 g 2 (*.f64 -1/2 (*.f64 (/.f64 h g) h)))
(fma.f64 g 2 (*.f64 (/.f64 -1/2 g) (*.f64 h h)))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 (*.f64 2 g) (*.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))))
(fma.f64 -1/2 (/.f64 (*.f64 h h) g) (fma.f64 2 g (*.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))))
(fma.f64 -1/2 (/.f64 h (/.f64 g h)) (fma.f64 g 2 (*.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))))
(fma.f64 g 2 (fma.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 -1/2 (*.f64 (/.f64 h g) h))))
(fma.f64 g 2 (fma.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 (/.f64 -1/2 g) (*.f64 h h))))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 (*.f64 -1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5))) (+.f64 (*.f64 2 g) (*.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))))))
(fma.f64 -1/2 (/.f64 (*.f64 h h) g) (fma.f64 -1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5)) (fma.f64 2 g (*.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))))))
(fma.f64 -1/2 (/.f64 h (/.f64 g h)) (fma.f64 -1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5)) (fma.f64 g 2 (*.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))))))
(fma.f64 -1/2 (*.f64 (/.f64 h g) h) (fma.f64 g 2 (fma.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 (/.f64 -1/16 (pow.f64 g 5)) (pow.f64 h 6)))))
(*.f64 1/2 (/.f64 (pow.f64 h 2) g))
(*.f64 1/2 (/.f64 (*.f64 h h) g))
(*.f64 1/2 (/.f64 h (/.f64 g h)))
(*.f64 (/.f64 1/2 g) (*.f64 h h))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))))
(fma.f64 1/2 (/.f64 (*.f64 h h) g) (*.f64 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) 1/8))
(fma.f64 1/2 (/.f64 h (/.f64 g h)) (*.f64 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) 1/8))
(fma.f64 1/2 (*.f64 (/.f64 h g) h) (*.f64 (/.f64 1/8 (pow.f64 g 3)) (pow.f64 h 4)))
(+.f64 (*.f64 1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))))
(fma.f64 1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5)) (fma.f64 1/2 (/.f64 (*.f64 h h) g) (*.f64 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) 1/8)))
(fma.f64 (/.f64 (pow.f64 h 6) (pow.f64 g 5)) 1/16 (fma.f64 1/2 (/.f64 h (/.f64 g h)) (*.f64 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) 1/8)))
(fma.f64 1/2 (*.f64 (/.f64 h g) h) (fma.f64 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) 1/8 (*.f64 (/.f64 1/16 (pow.f64 g 5)) (pow.f64 h 6))))
(+.f64 (*.f64 1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 1/16 (pow.f64 h 8)) (pow.f64 (*.f64 -1/8 (pow.f64 h 4)) 2)) (pow.f64 g 7))) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))))))
(fma.f64 1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5)) (fma.f64 1/2 (/.f64 (*.f64 h h) g) (fma.f64 1/2 (/.f64 (fma.f64 1/16 (pow.f64 h 8) (pow.f64 (*.f64 -1/8 (pow.f64 h 4)) 2)) (pow.f64 g 7)) (*.f64 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) 1/8))))
(fma.f64 (/.f64 (pow.f64 h 6) (pow.f64 g 5)) 1/16 (fma.f64 1/2 (/.f64 h (/.f64 g h)) (fma.f64 1/2 (/.f64 (fma.f64 1/16 (pow.f64 h 8) (*.f64 (pow.f64 h 8) 1/64)) (pow.f64 g 7)) (*.f64 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) 1/8))))
(fma.f64 1/2 (+.f64 (*.f64 (/.f64 h g) h) (/.f64 (*.f64 (pow.f64 h 8) 5/64) (pow.f64 g 7))) (fma.f64 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) 1/8 (*.f64 (/.f64 1/16 (pow.f64 g 5)) (pow.f64 h 6))))
(fma.f64 1/2 (*.f64 (/.f64 h g) h) (fma.f64 (/.f64 (pow.f64 h 6) (pow.f64 g 5)) 1/16 (fma.f64 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) 1/8 (/.f64 (*.f64 (pow.f64 h 8) 5/128) (pow.f64 g 7)))))
(*.f64 2 g)
(*.f64 g 2)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 2 g))
(fma.f64 -1/2 (/.f64 (*.f64 h h) g) (*.f64 g 2))
(fma.f64 g 2 (*.f64 -1/2 (/.f64 h (/.f64 g h))))
(fma.f64 g 2 (*.f64 -1/2 (*.f64 (/.f64 h g) h)))
(fma.f64 g 2 (*.f64 (/.f64 -1/2 g) (*.f64 h h)))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 (*.f64 2 g) (*.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))))
(fma.f64 -1/2 (/.f64 (*.f64 h h) g) (fma.f64 2 g (*.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))))
(fma.f64 -1/2 (/.f64 h (/.f64 g h)) (fma.f64 g 2 (*.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))))
(fma.f64 g 2 (fma.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 -1/2 (*.f64 (/.f64 h g) h))))
(fma.f64 g 2 (fma.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 (/.f64 -1/2 g) (*.f64 h h))))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 (*.f64 -1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5))) (+.f64 (*.f64 2 g) (*.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))))))
(fma.f64 -1/2 (/.f64 (*.f64 h h) g) (fma.f64 -1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5)) (fma.f64 2 g (*.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))))))
(fma.f64 -1/2 (/.f64 h (/.f64 g h)) (fma.f64 -1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5)) (fma.f64 g 2 (*.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))))))
(fma.f64 -1/2 (*.f64 (/.f64 h g) h) (fma.f64 g 2 (fma.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 (/.f64 -1/16 (pow.f64 g 5)) (pow.f64 h 6)))))
(*.f64 (sqrt.f64 -1) h)
(+.f64 (*.f64 (sqrt.f64 -1) h) g)
(fma.f64 (sqrt.f64 -1) h g)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (+.f64 (*.f64 (sqrt.f64 -1) h) g))
(fma.f64 1/2 (/.f64 (*.f64 g g) (*.f64 (sqrt.f64 -1) h)) (fma.f64 (sqrt.f64 -1) h g))
(fma.f64 1/2 (*.f64 (/.f64 g (sqrt.f64 -1)) (/.f64 g h)) (fma.f64 (sqrt.f64 -1) h g))
(fma.f64 (sqrt.f64 -1) h (fma.f64 (/.f64 1/2 (sqrt.f64 -1)) (/.f64 g (/.f64 h g)) g))
(fma.f64 (sqrt.f64 -1) h (fma.f64 1/2 (/.f64 (/.f64 g (/.f64 h g)) (sqrt.f64 -1)) g))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3)))) (+.f64 (*.f64 (sqrt.f64 -1) h) g)))
(fma.f64 1/2 (/.f64 (*.f64 g g) (*.f64 (sqrt.f64 -1) h)) (fma.f64 -1/8 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3))) (fma.f64 (sqrt.f64 -1) h g)))
(fma.f64 1/2 (*.f64 (/.f64 g (sqrt.f64 -1)) (/.f64 g h)) (fma.f64 -1/8 (/.f64 (pow.f64 g 4) (*.f64 (neg.f64 (sqrt.f64 -1)) (pow.f64 h 3))) (fma.f64 (sqrt.f64 -1) h g)))
(fma.f64 (/.f64 1/8 (sqrt.f64 -1)) (/.f64 (pow.f64 g 4) (pow.f64 h 3)) (fma.f64 (sqrt.f64 -1) h (fma.f64 (/.f64 1/2 (sqrt.f64 -1)) (/.f64 g (/.f64 h g)) g)))
(fma.f64 (/.f64 1/8 (sqrt.f64 -1)) (/.f64 (pow.f64 g 4) (pow.f64 h 3)) (fma.f64 (sqrt.f64 -1) h (fma.f64 1/2 (/.f64 (/.f64 g (/.f64 h g)) (sqrt.f64 -1)) g)))
(*.f64 -1 (*.f64 (sqrt.f64 -1) h))
(neg.f64 (*.f64 (sqrt.f64 -1) h))
(*.f64 (sqrt.f64 -1) (neg.f64 h))
(+.f64 (*.f64 -1 (*.f64 (sqrt.f64 -1) h)) g)
(fma.f64 -1 (*.f64 (sqrt.f64 -1) h) g)
(-.f64 g (*.f64 (sqrt.f64 -1) h))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (+.f64 (*.f64 -1 (*.f64 (sqrt.f64 -1) h)) g))
(fma.f64 -1/2 (/.f64 (*.f64 g g) (*.f64 (sqrt.f64 -1) h)) (fma.f64 -1 (*.f64 (sqrt.f64 -1) h) g))
(fma.f64 (*.f64 (/.f64 g (sqrt.f64 -1)) (/.f64 g h)) -1/2 (-.f64 g (*.f64 (sqrt.f64 -1) h)))
(-.f64 (fma.f64 (/.f64 -1/2 (sqrt.f64 -1)) (/.f64 g (/.f64 h g)) g) (*.f64 (sqrt.f64 -1) h))
(-.f64 g (fma.f64 (sqrt.f64 -1) h (*.f64 1/2 (/.f64 (/.f64 g (/.f64 h g)) (sqrt.f64 -1)))))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (+.f64 (*.f64 -1 (*.f64 (sqrt.f64 -1) h)) (+.f64 g (*.f64 1/8 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3)))))))
(fma.f64 -1/2 (/.f64 (*.f64 g g) (*.f64 (sqrt.f64 -1) h)) (+.f64 (fma.f64 -1 (*.f64 (sqrt.f64 -1) h) g) (/.f64 (*.f64 1/8 (pow.f64 g 4)) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3)))))
(fma.f64 (*.f64 (/.f64 g (sqrt.f64 -1)) (/.f64 g h)) -1/2 (-.f64 (fma.f64 (/.f64 (pow.f64 g 4) (*.f64 (neg.f64 (sqrt.f64 -1)) (pow.f64 h 3))) 1/8 g) (*.f64 (sqrt.f64 -1) h)))
(-.f64 (fma.f64 (*.f64 (/.f64 g (sqrt.f64 -1)) (/.f64 g h)) -1/2 (fma.f64 (/.f64 -1/8 (sqrt.f64 -1)) (/.f64 (pow.f64 g 4) (pow.f64 h 3)) g)) (*.f64 (sqrt.f64 -1) h))
(-.f64 (fma.f64 (/.f64 -1/8 (sqrt.f64 -1)) (/.f64 (pow.f64 g 4) (pow.f64 h 3)) g) (fma.f64 (sqrt.f64 -1) h (*.f64 1/2 (/.f64 (/.f64 g (/.f64 h g)) (sqrt.f64 -1)))))
(fma.f64 (*.f64 (/.f64 g (sqrt.f64 -1)) g) (+.f64 (/.f64 -1/2 h) (/.f64 (*.f64 (*.f64 1/8 g) g) (neg.f64 (pow.f64 h 3)))) (-.f64 g (*.f64 (sqrt.f64 -1) h)))

localize48.0ms (0.4%)

Local error

Found 4 expressions with local error:

NewErrorProgram
3.8b
(-.f64 (*.f64 g g) (*.f64 h h))
8.3b
(cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g)))
16.8b
(cbrt.f64 (*.f64 (+.f64 g (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g)) (/.f64 -1/2 a)))
32.1b
(sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))
Compiler

Compiled 160 to 53 computations (66.9% saved)

series9.0ms (0.1%)

Counts
1 → 4
Calls

9 calls:

TimeVariablePointExpression
2.0ms
h
@0
(cbrt.f64 (*.f64 (+.f64 g (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g)) (/.f64 -1/2 a)))
1.0ms
g
@0
(cbrt.f64 (*.f64 (+.f64 g (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g)) (/.f64 -1/2 a)))
1.0ms
g
@inf
(cbrt.f64 (*.f64 (+.f64 g (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g)) (/.f64 -1/2 a)))
1.0ms
g
@-inf
(cbrt.f64 (*.f64 (+.f64 g (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g)) (/.f64 -1/2 a)))
1.0ms
h
@inf
(cbrt.f64 (*.f64 (+.f64 g (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g)) (/.f64 -1/2 a)))

rewrite69.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
709×log-prod_binary64
604×prod-diff_binary64
245×expm1-udef_binary64
245×log1p-udef_binary64
229×fma-def_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01222
127022
2386822
Stop Event
node limit
Counts
1 → 27
Calls
Call 1
Inputs
(cbrt.f64 (*.f64 (+.f64 g (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g)) (/.f64 -1/2 a)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (cbrt.f64 (*.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g)) (/.f64 -1/2 a))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (cbrt.f64 (*.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g)) (/.f64 -1/2 a))))) (cbrt.f64 (exp.f64 (cbrt.f64 (*.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g)) (/.f64 -1/2 a))))))) (log.f64 (cbrt.f64 (exp.f64 (cbrt.f64 (*.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g)) (/.f64 -1/2 a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (cbrt.f64 (*.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g)) (/.f64 -1/2 a)))))) (log.f64 (sqrt.f64 (exp.f64 (cbrt.f64 (*.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g)) (/.f64 -1/2 a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (cbrt.f64 (*.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g)) (/.f64 -1/2 a))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g)) (/.f64 -1/2 a))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (cbrt.f64 (*.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g)) (/.f64 -1/2 a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g))) (cbrt.f64 (/.f64 -1/2 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (*.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g)) (/.f64 -1/2 a)))) (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g)) (/.f64 -1/2 a)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g)) (/.f64 -1/2 a)))) 2) (cbrt.f64 (cbrt.f64 (*.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g)) (/.f64 -1/2 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 -1/2 a)) (cbrt.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g)) (/.f64 -1/2 a)) 1/6) (pow.f64 (*.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g)) (/.f64 -1/2 a)) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/3) (cbrt.f64 (*.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g)) (/.f64 -1/2 a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g)) (/.f64 -1/2 a))) 2) 1/3) (cbrt.f64 (cbrt.f64 (*.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g)) (/.f64 -1/2 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (*.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g)) (/.f64 -1/2 a))) 1/3) (pow.f64 (sqrt.f64 (*.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g)) (/.f64 -1/2 a))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (*.f64 -1/2 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g)))) (cbrt.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g)) (/.f64 -1/2 a)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g)) (/.f64 -1/2 a))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g)) (/.f64 -1/2 a)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g)) (/.f64 -1/2 a)) 1/6) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g)) (/.f64 -1/2 a))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (cbrt.f64 (*.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g)) (/.f64 -1/2 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (cbrt.f64 (*.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g)) (/.f64 -1/2 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (cbrt.f64 (*.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g)) (/.f64 -1/2 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (cbrt.f64 (*.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g)) (/.f64 -1/2 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (cbrt.f64 (*.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g)) (/.f64 -1/2 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g)) (/.f64 -1/2 a))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g)) (/.f64 -1/2 a)))) 1))))))

simplify80.0ms (0.7%)

Algorithm
egg-herbie
Rules
778×associate-*r/_binary64
676×associate-/l/_binary64
585×associate-/r/_binary64
553×fma-def_binary64
510×*-commutative_binary64
Iterations

Useful iterations: 5 (0.0ms)

IterNodesCost
059268
1162268
2467268
32116268
45597258
57312250
67830250
Stop Event
node limit
Counts
31 → 35
Calls
Call 1
Inputs
(*.f64 (pow.f64 (/.f64 (*.f64 1 g) a) 1/3) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)))
(+.f64 (*.f64 -1/6 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 h 2)) (pow.f64 (cbrt.f64 2) 2)) (pow.f64 (/.f64 1 (*.f64 a (pow.f64 g 5))) 1/3))) (*.f64 (pow.f64 (/.f64 (*.f64 1 g) a) 1/3) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2))))
(+.f64 (*.f64 -1/36 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 h 4)) (pow.f64 (cbrt.f64 2) 5)) (pow.f64 (/.f64 1 (*.f64 a (pow.f64 g 11))) 1/3))) (+.f64 (*.f64 -1/6 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 h 2)) (pow.f64 (cbrt.f64 2) 2)) (pow.f64 (/.f64 1 (*.f64 a (pow.f64 g 5))) 1/3))) (*.f64 (pow.f64 (/.f64 (*.f64 1 g) a) 1/3) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)))))
(+.f64 (*.f64 -1/36 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 h 4)) (pow.f64 (cbrt.f64 2) 5)) (pow.f64 (/.f64 1 (*.f64 a (pow.f64 g 11))) 1/3))) (+.f64 (*.f64 -1/6 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 h 2)) (pow.f64 (cbrt.f64 2) 2)) (pow.f64 (/.f64 1 (*.f64 a (pow.f64 g 5))) 1/3))) (+.f64 (*.f64 -5/648 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 h 6)) (pow.f64 (cbrt.f64 2) 8)) (pow.f64 (/.f64 1 (*.f64 a (pow.f64 g 17))) 1/3))) (*.f64 (pow.f64 (/.f64 (*.f64 1 g) a) 1/3) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2))))))
Outputs
(*.f64 (pow.f64 (/.f64 (*.f64 1 g) a) 1/3) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)))
(*.f64 (cbrt.f64 (/.f64 g a)) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)))
(+.f64 (*.f64 -1/6 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 h 2)) (pow.f64 (cbrt.f64 2) 2)) (pow.f64 (/.f64 1 (*.f64 a (pow.f64 g 5))) 1/3))) (*.f64 (pow.f64 (/.f64 (*.f64 1 g) a) 1/3) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2))))
(fma.f64 -1/6 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 h h)) (pow.f64 (cbrt.f64 2) 2)) (cbrt.f64 (/.f64 (/.f64 1 a) (pow.f64 g 5)))) (*.f64 (cbrt.f64 (/.f64 g a)) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2))))
(fma.f64 -1/6 (*.f64 (*.f64 (/.f64 (cbrt.f64 -1/2) (pow.f64 (cbrt.f64 2) 2)) (*.f64 h h)) (cbrt.f64 (/.f64 (/.f64 1 a) (pow.f64 g 5)))) (*.f64 (cbrt.f64 (/.f64 g a)) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2))))
(fma.f64 (cbrt.f64 (/.f64 g a)) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)) (*.f64 (cbrt.f64 (/.f64 (/.f64 1 a) (pow.f64 g 5))) (/.f64 (*.f64 (*.f64 h h) -1/6) (/.f64 (pow.f64 (cbrt.f64 2) 2) (cbrt.f64 -1/2)))))
(fma.f64 (cbrt.f64 (/.f64 g a)) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)) (*.f64 -1/6 (*.f64 (/.f64 (cbrt.f64 (/.f64 1 (*.f64 a (pow.f64 g 5)))) (pow.f64 (cbrt.f64 2) 2)) (*.f64 (cbrt.f64 -1/2) (*.f64 h h)))))
(*.f64 (cbrt.f64 -1/2) (+.f64 (*.f64 (cbrt.f64 (/.f64 g a)) (cbrt.f64 2)) (/.f64 (*.f64 (*.f64 h h) (*.f64 -1/6 (cbrt.f64 (/.f64 (/.f64 1 (pow.f64 g 5)) a)))) (pow.f64 (cbrt.f64 2) 2))))
(+.f64 (*.f64 -1/36 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 h 4)) (pow.f64 (cbrt.f64 2) 5)) (pow.f64 (/.f64 1 (*.f64 a (pow.f64 g 11))) 1/3))) (+.f64 (*.f64 -1/6 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 h 2)) (pow.f64 (cbrt.f64 2) 2)) (pow.f64 (/.f64 1 (*.f64 a (pow.f64 g 5))) 1/3))) (*.f64 (pow.f64 (/.f64 (*.f64 1 g) a) 1/3) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)))))
(fma.f64 -1/36 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 h 4)) (pow.f64 (cbrt.f64 2) 5)) (cbrt.f64 (/.f64 1 (*.f64 a (pow.f64 g 11))))) (fma.f64 -1/6 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 h h)) (pow.f64 (cbrt.f64 2) 2)) (cbrt.f64 (/.f64 (/.f64 1 a) (pow.f64 g 5)))) (*.f64 (cbrt.f64 (/.f64 g a)) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)))))
(fma.f64 -1/36 (*.f64 (*.f64 (/.f64 (cbrt.f64 -1/2) (pow.f64 (cbrt.f64 2) 5)) (pow.f64 h 4)) (cbrt.f64 (/.f64 (/.f64 1 a) (pow.f64 g 11)))) (fma.f64 -1/6 (*.f64 (*.f64 (/.f64 (cbrt.f64 -1/2) (pow.f64 (cbrt.f64 2) 2)) (*.f64 h h)) (cbrt.f64 (/.f64 (/.f64 1 a) (pow.f64 g 5)))) (*.f64 (cbrt.f64 (/.f64 g a)) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)))))
(fma.f64 (cbrt.f64 (/.f64 g a)) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)) (fma.f64 (*.f64 (*.f64 h h) (/.f64 (cbrt.f64 -1/2) (pow.f64 (cbrt.f64 2) 2))) (*.f64 -1/6 (cbrt.f64 (/.f64 (/.f64 1 a) (pow.f64 g 5)))) (*.f64 (cbrt.f64 (/.f64 (/.f64 1 a) (pow.f64 g 11))) (*.f64 -1/36 (*.f64 (pow.f64 h 4) (/.f64 (cbrt.f64 -1/2) (pow.f64 (cbrt.f64 2) 5)))))))
(fma.f64 (cbrt.f64 (/.f64 g a)) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)) (fma.f64 (cbrt.f64 (/.f64 1 (*.f64 a (pow.f64 g 11)))) (*.f64 (pow.f64 h 4) (/.f64 (*.f64 (cbrt.f64 -1/2) -1/36) (pow.f64 (cbrt.f64 2) 5))) (*.f64 -1/6 (*.f64 (/.f64 (cbrt.f64 (/.f64 1 (*.f64 a (pow.f64 g 5)))) (pow.f64 (cbrt.f64 2) 2)) (*.f64 (cbrt.f64 -1/2) (*.f64 h h))))))
(fma.f64 -1/36 (*.f64 (pow.f64 h 4) (/.f64 (*.f64 (cbrt.f64 -1/2) (cbrt.f64 (/.f64 (/.f64 1 a) (pow.f64 g 11)))) (pow.f64 (cbrt.f64 2) 5))) (*.f64 (cbrt.f64 -1/2) (+.f64 (*.f64 (cbrt.f64 (/.f64 g a)) (cbrt.f64 2)) (/.f64 (*.f64 (*.f64 h h) (*.f64 -1/6 (cbrt.f64 (/.f64 (/.f64 1 (pow.f64 g 5)) a)))) (pow.f64 (cbrt.f64 2) 2)))))
(*.f64 (cbrt.f64 -1/2) (+.f64 (*.f64 (cbrt.f64 (/.f64 g a)) (cbrt.f64 2)) (+.f64 (/.f64 (*.f64 (*.f64 h h) (*.f64 -1/6 (cbrt.f64 (/.f64 (/.f64 1 (pow.f64 g 5)) a)))) (pow.f64 (cbrt.f64 2) 2)) (/.f64 (*.f64 (pow.f64 h 4) (*.f64 -1/36 (cbrt.f64 (/.f64 (/.f64 1 a) (pow.f64 g 11))))) (pow.f64 (cbrt.f64 2) 5)))))
(+.f64 (*.f64 -1/36 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 h 4)) (pow.f64 (cbrt.f64 2) 5)) (pow.f64 (/.f64 1 (*.f64 a (pow.f64 g 11))) 1/3))) (+.f64 (*.f64 -1/6 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 h 2)) (pow.f64 (cbrt.f64 2) 2)) (pow.f64 (/.f64 1 (*.f64 a (pow.f64 g 5))) 1/3))) (+.f64 (*.f64 -5/648 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 h 6)) (pow.f64 (cbrt.f64 2) 8)) (pow.f64 (/.f64 1 (*.f64 a (pow.f64 g 17))) 1/3))) (*.f64 (pow.f64 (/.f64 (*.f64 1 g) a) 1/3) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2))))))
(fma.f64 -1/36 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 h 4)) (pow.f64 (cbrt.f64 2) 5)) (cbrt.f64 (/.f64 1 (*.f64 a (pow.f64 g 11))))) (fma.f64 -1/6 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 h h)) (pow.f64 (cbrt.f64 2) 2)) (cbrt.f64 (/.f64 (/.f64 1 a) (pow.f64 g 5)))) (fma.f64 -5/648 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 h 6)) (pow.f64 (cbrt.f64 2) 8)) (cbrt.f64 (/.f64 1 (*.f64 a (pow.f64 g 17))))) (*.f64 (cbrt.f64 (/.f64 g a)) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2))))))
(fma.f64 -1/36 (*.f64 (*.f64 (/.f64 (cbrt.f64 -1/2) (pow.f64 (cbrt.f64 2) 5)) (pow.f64 h 4)) (cbrt.f64 (/.f64 (/.f64 1 a) (pow.f64 g 11)))) (fma.f64 -1/6 (*.f64 (*.f64 (/.f64 (cbrt.f64 -1/2) (pow.f64 (cbrt.f64 2) 2)) (*.f64 h h)) (cbrt.f64 (/.f64 (/.f64 1 a) (pow.f64 g 5)))) (fma.f64 -5/648 (/.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (pow.f64 h 6) (cbrt.f64 (/.f64 (/.f64 1 a) (pow.f64 g 17))))) (pow.f64 (cbrt.f64 2) 8)) (*.f64 (cbrt.f64 (/.f64 g a)) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2))))))
(fma.f64 -1/6 (*.f64 (*.f64 (*.f64 h h) (/.f64 (cbrt.f64 -1/2) (pow.f64 (cbrt.f64 2) 2))) (cbrt.f64 (/.f64 (/.f64 1 a) (pow.f64 g 5)))) (fma.f64 -1/36 (*.f64 (*.f64 (pow.f64 h 4) (/.f64 (cbrt.f64 -1/2) (pow.f64 (cbrt.f64 2) 5))) (cbrt.f64 (/.f64 (/.f64 1 a) (pow.f64 g 11)))) (fma.f64 (cbrt.f64 (/.f64 g a)) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)) (*.f64 (*.f64 (pow.f64 h 6) (/.f64 (cbrt.f64 -1/2) (pow.f64 (cbrt.f64 2) 8))) (*.f64 -5/648 (cbrt.f64 (/.f64 (/.f64 1 a) (pow.f64 g 17))))))))
(fma.f64 (cbrt.f64 (/.f64 g a)) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)) (fma.f64 -5/648 (*.f64 (*.f64 (pow.f64 h 6) (/.f64 (cbrt.f64 -1/2) (pow.f64 (cbrt.f64 2) 8))) (cbrt.f64 (/.f64 1 (*.f64 a (pow.f64 g 17))))) (fma.f64 (cbrt.f64 (/.f64 1 (*.f64 a (pow.f64 g 11)))) (*.f64 (pow.f64 h 4) (/.f64 (*.f64 (cbrt.f64 -1/2) -1/36) (pow.f64 (cbrt.f64 2) 5))) (*.f64 -1/6 (*.f64 (/.f64 (cbrt.f64 (/.f64 1 (*.f64 a (pow.f64 g 5)))) (pow.f64 (cbrt.f64 2) 2)) (*.f64 (cbrt.f64 -1/2) (*.f64 h h)))))))
(+.f64 (*.f64 (cbrt.f64 -1/2) (+.f64 (*.f64 (cbrt.f64 (/.f64 g a)) (cbrt.f64 2)) (/.f64 (*.f64 (*.f64 h h) (*.f64 -1/6 (cbrt.f64 (/.f64 (/.f64 1 (pow.f64 g 5)) a)))) (pow.f64 (cbrt.f64 2) 2)))) (*.f64 (cbrt.f64 -1/2) (+.f64 (/.f64 (*.f64 (pow.f64 h 4) (*.f64 -1/36 (cbrt.f64 (/.f64 (/.f64 1 a) (pow.f64 g 11))))) (pow.f64 (cbrt.f64 2) 5)) (/.f64 (*.f64 (pow.f64 h 6) (*.f64 -5/648 (cbrt.f64 (/.f64 (/.f64 1 a) (pow.f64 g 17))))) (pow.f64 (cbrt.f64 2) 8)))))
(*.f64 (cbrt.f64 -1/2) (+.f64 (+.f64 (*.f64 (cbrt.f64 (/.f64 g a)) (cbrt.f64 2)) (/.f64 (*.f64 (*.f64 h h) (*.f64 -1/6 (cbrt.f64 (/.f64 (/.f64 1 (pow.f64 g 5)) a)))) (pow.f64 (cbrt.f64 2) 2))) (+.f64 (/.f64 (*.f64 (pow.f64 h 6) (*.f64 -5/648 (cbrt.f64 (/.f64 (/.f64 1 a) (pow.f64 g 17))))) (pow.f64 (cbrt.f64 2) 8)) (/.f64 (*.f64 (pow.f64 h 4) (*.f64 -1/36 (cbrt.f64 (/.f64 (/.f64 1 a) (pow.f64 g 11))))) (pow.f64 (cbrt.f64 2) 5)))))

localize53.0ms (0.5%)

Local error

Found 4 expressions with local error:

NewErrorProgram
16.4b
(cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (exp.f64 (*.f64 (log.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 1/2)) g)))
31.5b
(-.f64 (exp.f64 (*.f64 (log.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 1/2)) g)
32.1b
(sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))
33.3b
(log.f64 (-.f64 (*.f64 g g) (*.f64 h h)))
Compiler

Compiled 185 to 59 computations (68.1% saved)

series14.0ms (0.1%)

Counts
3 → 52
Calls

21 calls:

TimeVariablePointExpression
2.0ms
g
@0
(log.f64 (-.f64 (*.f64 g g) (*.f64 h h)))
1.0ms
g
@inf
(log.f64 (-.f64 (*.f64 g g) (*.f64 h h)))
1.0ms
h
@0
(log.f64 (-.f64 (*.f64 g g) (*.f64 h h)))
1.0ms
h
@inf
(log.f64 (-.f64 (*.f64 g g) (*.f64 h h)))
1.0ms
g
@0
(cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (exp.f64 (*.f64 (log.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 1/2)) g)))

rewrite115.0ms (1%)

Algorithm
batch-egg-rewrite
Rules
783×log-prod_binary64
736×fma-def_binary64
323×fma-neg_binary64
284×expm1-udef_binary64
284×log1p-udef_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01552
133250
2462648
Stop Event
node limit
Counts
3 → 182
Calls
Call 1
Inputs
(log.f64 (-.f64 (*.f64 g g) (*.f64 h h)))
(-.f64 (exp.f64 (*.f64 (log.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 1/2)) g)
(cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (exp.f64 (*.f64 (log.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 1/2)) g)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (log.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (*.f64 2 (log.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (log.f64 (*.f64 (cbrt.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (+.f64 g h)) (log.f64 (-.f64 g h)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (-.f64 (pow.f64 g 6) (pow.f64 h 6))) (log.f64 (/.f64 1 (fma.f64 (*.f64 h h) (fma.f64 h h (*.f64 g g)) (pow.f64 g 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (log.f64 (-.f64 (*.f64 g g) (*.f64 h h))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (-.f64 (pow.f64 g 4) (pow.f64 h 4))) (log.f64 (/.f64 1 (fma.f64 h h (*.f64 g g)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (-.f64 g h)) (log.f64 (+.f64 g h)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1/4 (log.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (log.f64 (*.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/4) (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 2 (log.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))) (log.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/4))) (*.f64 1/4 (log.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))) (log.f64 (cbrt.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (log.f64 (-.f64 (*.f64 g g) (*.f64 h h))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (log.f64 (-.f64 (pow.f64 g 6) (pow.f64 h 6))) (log.f64 (fma.f64 (*.f64 h h) (fma.f64 h h (*.f64 g g)) (pow.f64 g 4))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (log.f64 (/.f64 (fma.f64 (*.f64 h h) (fma.f64 h h (*.f64 g g)) (pow.f64 g 4)) (-.f64 (pow.f64 g 6) (pow.f64 h 6)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (log.f64 (/.f64 (fma.f64 h h (*.f64 g g)) (-.f64 (pow.f64 g 4) (pow.f64 h 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (log.f64 (-.f64 (pow.f64 g 4) (pow.f64 h 4))) (log.f64 (fma.f64 h h (*.f64 g g))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (log.f64 (neg.f64 (-.f64 (pow.f64 g 6) (pow.f64 h 6)))) (log.f64 (neg.f64 (fma.f64 (*.f64 h h) (fma.f64 h h (*.f64 g g)) (pow.f64 g 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (log.f64 (neg.f64 (-.f64 (pow.f64 g 4) (pow.f64 h 4)))) (log.f64 (neg.f64 (fma.f64 h h (*.f64 g g)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (log.f64 (+.f64 (pow.f64 g 6) (pow.f64 (*.f64 h (neg.f64 h)) 3))) (log.f64 (+.f64 (pow.f64 g 4) (-.f64 (*.f64 (*.f64 h (neg.f64 h)) (*.f64 h (neg.f64 h))) (*.f64 (*.f64 g g) (*.f64 h (neg.f64 h)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (log.f64 (+.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 3) (pow.f64 (fma.f64 h (neg.f64 h) (*.f64 h h)) 3))) (log.f64 (+.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 2) (-.f64 (*.f64 (fma.f64 h (neg.f64 h) (*.f64 h h)) (fma.f64 h (neg.f64 h) (*.f64 h h))) (*.f64 (-.f64 (*.f64 g g) (*.f64 h h)) (fma.f64 h (neg.f64 h) (*.f64 h h)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (log.f64 (-.f64 (pow.f64 g 4) (*.f64 (*.f64 h (neg.f64 h)) (*.f64 h (neg.f64 h))))) (log.f64 (-.f64 (*.f64 g g) (*.f64 h (neg.f64 h)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (log.f64 (-.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 2) (*.f64 (fma.f64 h (neg.f64 h) (*.f64 h h)) (fma.f64 h (neg.f64 h) (*.f64 h h))))) (log.f64 (-.f64 (-.f64 (*.f64 g g) (*.f64 h h)) (fma.f64 h (neg.f64 h) (*.f64 h h)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (log.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 2 (log.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (log.f64 (-.f64 (*.f64 g g) (*.f64 h h))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (log.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (pow.f64 (cbrt.f64 (log.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (log.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) 2) (cbrt.f64 (log.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (log.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (sqrt.f64 (log.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/3 (*.f64 3 (log.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (log.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 3 (log.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (log.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (log.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (log.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (log.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (log.f64 (/.f64 (fma.f64 (*.f64 h h) (fma.f64 h h (*.f64 g g)) (pow.f64 g 4)) (-.f64 (pow.f64 g 6) (pow.f64 h 6)))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (log.f64 (/.f64 (fma.f64 h h (*.f64 g g)) (-.f64 (pow.f64 g 4) (pow.f64 h 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (log.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (log.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (log.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (fma.f64 (+.f64 g h) (-.f64 g h) -1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (log.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (log.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (log.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 1/2 (log.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1/2 (log.f64 (-.f64 (*.f64 g g) (*.f64 h h))) (log.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (log.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) 1 (log.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (log.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (log.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (log.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))) (pow.f64 (cbrt.f64 (log.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))) 2) (log.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (log.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))) 2) (cbrt.f64 (log.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))) (log.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (log.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) 2) (*.f64 (cbrt.f64 (log.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) 1/2) (log.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (log.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))) (sqrt.f64 (log.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))) (log.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (log.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (*.f64 (sqrt.f64 (log.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) 1/2) (log.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 1/2 (pow.f64 (cbrt.f64 (log.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) 2)) (cbrt.f64 (log.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (log.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 1/2 (sqrt.f64 (log.f64 (-.f64 (*.f64 g g) (*.f64 h h))))) (sqrt.f64 (log.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (log.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) (neg.f64 g))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) (*.f64 (neg.f64 g) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g) (fma.f64 (neg.f64 g) 1 g))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g) (fma.f64 (neg.f64 (cbrt.f64 g)) (pow.f64 (cbrt.f64 g) 2) g))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g) (+.f64 (neg.f64 g) g))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 g) (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g))) (cbrt.f64 (exp.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g))))) (log.f64 (cbrt.f64 (exp.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g)))) (log.f64 (sqrt.f64 (exp.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g)) (cbrt.f64 (pow.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g) 2)) (cbrt.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g)) (sqrt.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 3/2) (pow.f64 g 3)) (/.f64 1 (fma.f64 g (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (-.f64 (*.f64 g g) (*.f64 h h)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (+.f64 g h) (-.f64 g h) (neg.f64 (*.f64 g g))) (/.f64 1 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/4) (sqrt.f64 g)) (-.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/4) (sqrt.f64 g)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 g (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (-.f64 (*.f64 g g) (*.f64 h h))) (-.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 3/2) (pow.f64 g 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (fma.f64 (+.f64 g h) (-.f64 g h) (neg.f64 (*.f64 g g)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 3/2) (pow.f64 g 3)) (fma.f64 g (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (-.f64 (*.f64 g g) (*.f64 h h))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 (+.f64 g h) (-.f64 g h) (neg.f64 (*.f64 g g))) (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 3/2) (pow.f64 g 3))) (neg.f64 (fma.f64 g (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (-.f64 (*.f64 g g) (*.f64 h h)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (fma.f64 (+.f64 g h) (-.f64 g h) (neg.f64 (*.f64 g g)))) (neg.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 3/2) (pow.f64 (neg.f64 g) 3)) (fma.f64 (+.f64 g h) (-.f64 g h) (-.f64 (*.f64 (neg.f64 g) (neg.f64 g)) (*.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) (neg.f64 g)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (-.f64 (*.f64 g g) (*.f64 h h)) (*.f64 (neg.f64 g) (neg.f64 g))) (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) (neg.f64 g)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))) (exp.f64 g)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (exp.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (+.f64 1 (expm1.f64 g))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))) (+.f64 1 (expm1.f64 g))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))) (exp.f64 (neg.f64 g))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (/.f64 1 (exp.f64 g))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))) (/.f64 1 (exp.f64 g))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (neg.f64 g)) (exp.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 1 (exp.f64 g)) (exp.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (neg.f64 g)) (+.f64 1 (expm1.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 1 (exp.f64 g)) (+.f64 1 (expm1.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) 1 (neg.f64 g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) 1 (*.f64 (neg.f64 g) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g) 1 (fma.f64 (neg.f64 g) 1 g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g) 1 (fma.f64 (neg.f64 (cbrt.f64 g)) (pow.f64 (cbrt.f64 g) 2) g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g) 1 (+.f64 (neg.f64 g) g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) (neg.f64 g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) (*.f64 (neg.f64 g) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g) (fma.f64 (neg.f64 g) 1 g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g) (fma.f64 (neg.f64 (cbrt.f64 g)) (pow.f64 (cbrt.f64 g) 2) g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g) (+.f64 (neg.f64 g) g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (neg.f64 g) (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 g) 2) (neg.f64 (cbrt.f64 g)) (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g)) (cbrt.f64 (pow.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g) 2)) (fma.f64 (neg.f64 g) 1 g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g)) (cbrt.f64 (pow.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g) 2)) (fma.f64 (neg.f64 (cbrt.f64 g)) (pow.f64 (cbrt.f64 g) 2) g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g)) (cbrt.f64 (pow.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g) 2)) (+.f64 (neg.f64 g) g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g) 2)) (cbrt.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g)) (fma.f64 (neg.f64 g) 1 g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g) 2)) (cbrt.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g)) (fma.f64 (neg.f64 (cbrt.f64 g)) (pow.f64 (cbrt.f64 g) 2) g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g) 2)) (cbrt.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g)) (+.f64 (neg.f64 g) g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) (neg.f64 g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) (*.f64 (neg.f64 g) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) (cbrt.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (neg.f64 g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) (cbrt.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (*.f64 (neg.f64 g) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g)) (sqrt.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g)) (fma.f64 (neg.f64 g) 1 g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g)) (sqrt.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g)) (fma.f64 (neg.f64 (cbrt.f64 g)) (pow.f64 (cbrt.f64 g) 2) g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g)) (sqrt.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g)) (+.f64 (neg.f64 g) g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 g) (neg.f64 (sqrt.f64 g)) (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/4) (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/4) (neg.f64 g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/4) (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/4) (*.f64 (neg.f64 g) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 3/2) (pow.f64 g 3)) (/.f64 1 (fma.f64 g (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (-.f64 (*.f64 g g) (*.f64 h h)))) (fma.f64 (neg.f64 g) 1 g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 3/2) (pow.f64 g 3)) (/.f64 1 (fma.f64 g (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (-.f64 (*.f64 g g) (*.f64 h h)))) (fma.f64 (neg.f64 (cbrt.f64 g)) (pow.f64 (cbrt.f64 g) 2) g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 3/2) (pow.f64 g 3)) (/.f64 1 (fma.f64 g (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (-.f64 (*.f64 g g) (*.f64 h h)))) (+.f64 (neg.f64 g) g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (+.f64 g h) (-.f64 g h) (neg.f64 (*.f64 g g))) (/.f64 1 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))) (fma.f64 (neg.f64 g) 1 g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (+.f64 g h) (-.f64 g h) (neg.f64 (*.f64 g g))) (/.f64 1 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))) (fma.f64 (neg.f64 (cbrt.f64 g)) (pow.f64 (cbrt.f64 g) 2) g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (+.f64 g h) (-.f64 g h) (neg.f64 (*.f64 g g))) (/.f64 1 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))) (+.f64 (neg.f64 g) g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (neg.f64 g)) (cbrt.f64 (neg.f64 g))) (cbrt.f64 (neg.f64 g)) (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (+.f64 g h)) (sqrt.f64 (-.f64 g h)) (neg.f64 g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (+.f64 g h)) (sqrt.f64 (-.f64 g h)) (*.f64 (neg.f64 g) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (neg.f64 g)) (sqrt.f64 (neg.f64 g)) (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 2)) (sqrt.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (neg.f64 g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 2)) (sqrt.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (*.f64 (neg.f64 g) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (pow.f64 (cbrt.f64 g) 2)) (cbrt.f64 g) (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (sqrt.f64 g)) (sqrt.f64 g) (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 1 1/2) (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) (neg.f64 g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 1 1/2) (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) (*.f64 (neg.f64 g) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 2) 1/2) (pow.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 1/2) (neg.f64 g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 2) 1/2) (pow.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 1/2) (*.f64 (neg.f64 g) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (+.f64 g h) 1/2) (pow.f64 (-.f64 g h) 1/2) (neg.f64 g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (+.f64 g h) 1/2) (pow.f64 (-.f64 g h) 1/2) (*.f64 (neg.f64 g) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/4) (sqrt.f64 g)) (-.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/4) (sqrt.f64 g)) (fma.f64 (neg.f64 g) 1 g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/4) (sqrt.f64 g)) (-.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/4) (sqrt.f64 g)) (fma.f64 (neg.f64 (cbrt.f64 g)) (pow.f64 (cbrt.f64 g) 2) g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/4) (sqrt.f64 g)) (-.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/4) (sqrt.f64 g)) (+.f64 (neg.f64 g) g))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (cbrt.f64 (*.f64 1/2 (/.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g) a))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (cbrt.f64 (*.f64 1/2 (/.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g) a))))) (cbrt.f64 (exp.f64 (cbrt.f64 (*.f64 1/2 (/.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g) a))))))) (log.f64 (cbrt.f64 (exp.f64 (cbrt.f64 (*.f64 1/2 (/.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g) a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (cbrt.f64 (*.f64 1/2 (/.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g) a)))))) (log.f64 (sqrt.f64 (exp.f64 (cbrt.f64 (*.f64 1/2 (/.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g) a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (cbrt.f64 (*.f64 1/2 (/.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g) a))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 1/2 (/.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g) a))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (cbrt.f64 (*.f64 1/2 (/.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g) a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (*.f64 1/2 (/.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g) a)))) (cbrt.f64 (cbrt.f64 (pow.f64 (*.f64 1/2 (/.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g) a)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (pow.f64 (*.f64 1/2 (/.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g) a)) 2))) (cbrt.f64 (cbrt.f64 (*.f64 1/2 (/.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g) a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g)) (cbrt.f64 (/.f64 1/2 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 1/2 a)) (cbrt.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 1/2 (/.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g) a)) 1/6) (pow.f64 (*.f64 1/2 (/.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g) a)) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/3) (cbrt.f64 (*.f64 1/2 (/.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g) a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (pow.f64 (*.f64 1/2 (/.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g) a)) 2)) 1/3) (cbrt.f64 (cbrt.f64 (*.f64 1/2 (/.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g) a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (*.f64 1/2 (/.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g) a))) 1/3) (pow.f64 (sqrt.f64 (*.f64 1/2 (/.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g) a))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (*.f64 1/2 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g))) (cbrt.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 1/2 (/.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g) a)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 1/2 (/.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g) a))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 1/2 (/.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g) a)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 1/2 (/.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g) a)) 1/6) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (cbrt.f64 (pow.f64 (*.f64 1/2 (/.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g) a)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (cbrt.f64 (*.f64 1/2 (/.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g) a)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (cbrt.f64 (*.f64 1/2 (/.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g) a))))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (cbrt.f64 (*.f64 1/2 (/.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g) a)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (cbrt.f64 (*.f64 1/2 (/.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g) a)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (cbrt.f64 (*.f64 1/2 (/.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g) a)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 1/2 (/.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g) a))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 1/2 (/.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g) a)))) 1))))))

simplify95.0ms (0.8%)

Algorithm
egg-herbie
Rules
901×fma-def_binary64
693×associate-/r*_binary64
454×associate-/l*_binary64
359×*-commutative_binary64
355×fma-neg_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02111905
16491796
221601733
371551733
Stop Event
node limit
Counts
234 → 263
Calls
Call 1
Inputs
(log.f64 (neg.f64 (pow.f64 h 2)))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 g 2) (pow.f64 h 2))) (log.f64 (neg.f64 (pow.f64 h 2))))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 g 4) (pow.f64 h 4))) (+.f64 (*.f64 -1 (/.f64 (pow.f64 g 2) (pow.f64 h 2))) (log.f64 (neg.f64 (pow.f64 h 2)))))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 g 4) (pow.f64 h 4))) (+.f64 (*.f64 -1/3 (/.f64 (pow.f64 g 6) (pow.f64 h 6))) (+.f64 (*.f64 -1 (/.f64 (pow.f64 g 2) (pow.f64 h 2))) (log.f64 (neg.f64 (pow.f64 h 2))))))
(*.f64 -2 (log.f64 (/.f64 1 g)))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 h 2) (pow.f64 g 2))) (*.f64 -2 (log.f64 (/.f64 1 g))))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 h 2) (pow.f64 g 2))) (+.f64 (*.f64 -2 (log.f64 (/.f64 1 g))) (*.f64 -1/2 (/.f64 (pow.f64 h 4) (pow.f64 g 4)))))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 h 2) (pow.f64 g 2))) (+.f64 (*.f64 -2 (log.f64 (/.f64 1 g))) (+.f64 (*.f64 -1/3 (/.f64 (pow.f64 h 6) (pow.f64 g 6))) (*.f64 -1/2 (/.f64 (pow.f64 h 4) (pow.f64 g 4))))))
(*.f64 -2 (log.f64 (/.f64 -1 g)))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 h 2) (pow.f64 g 2))) (*.f64 -2 (log.f64 (/.f64 -1 g))))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 h 2) (pow.f64 g 2))) (+.f64 (*.f64 -2 (log.f64 (/.f64 -1 g))) (*.f64 -1/2 (/.f64 (pow.f64 h 4) (pow.f64 g 4)))))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 h 2) (pow.f64 g 2))) (+.f64 (*.f64 -1/3 (/.f64 (pow.f64 h 6) (pow.f64 g 6))) (+.f64 (*.f64 -2 (log.f64 (/.f64 -1 g))) (*.f64 -1/2 (/.f64 (pow.f64 h 4) (pow.f64 g 4))))))
(log.f64 (pow.f64 g 2))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 h 2) (pow.f64 g 2))) (log.f64 (pow.f64 g 2)))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 h 2) (pow.f64 g 2))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 4) (pow.f64 g 4))) (log.f64 (pow.f64 g 2))))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 h 2) (pow.f64 g 2))) (+.f64 (*.f64 -1/3 (/.f64 (pow.f64 h 6) (pow.f64 g 6))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 4) (pow.f64 g 4))) (log.f64 (pow.f64 g 2)))))
(+.f64 (*.f64 -2 (log.f64 (/.f64 1 h))) (log.f64 -1))
(+.f64 (*.f64 -2 (log.f64 (/.f64 1 h))) (+.f64 (log.f64 -1) (*.f64 -1 (/.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 g 4) (pow.f64 h 4))) (+.f64 (*.f64 -2 (log.f64 (/.f64 1 h))) (+.f64 (log.f64 -1) (*.f64 -1 (/.f64 (pow.f64 g 2) (pow.f64 h 2))))))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 g 4) (pow.f64 h 4))) (+.f64 (*.f64 -2 (log.f64 (/.f64 1 h))) (+.f64 (*.f64 -1/3 (/.f64 (pow.f64 g 6) (pow.f64 h 6))) (+.f64 (log.f64 -1) (*.f64 -1 (/.f64 (pow.f64 g 2) (pow.f64 h 2)))))))
(+.f64 (log.f64 -1) (*.f64 -2 (log.f64 (/.f64 -1 h))))
(+.f64 (log.f64 -1) (+.f64 (*.f64 -1 (/.f64 (pow.f64 g 2) (pow.f64 h 2))) (*.f64 -2 (log.f64 (/.f64 -1 h)))))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 g 4) (pow.f64 h 4))) (+.f64 (log.f64 -1) (+.f64 (*.f64 -1 (/.f64 (pow.f64 g 2) (pow.f64 h 2))) (*.f64 -2 (log.f64 (/.f64 -1 h))))))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 g 4) (pow.f64 h 4))) (+.f64 (*.f64 -1/3 (/.f64 (pow.f64 g 6) (pow.f64 h 6))) (+.f64 (log.f64 -1) (+.f64 (*.f64 -1 (/.f64 (pow.f64 g 2) (pow.f64 h 2))) (*.f64 -2 (log.f64 (/.f64 -1 h)))))))
(*.f64 (sqrt.f64 -1) h)
(+.f64 (*.f64 (sqrt.f64 -1) h) (*.f64 -1 g))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (+.f64 (*.f64 (sqrt.f64 -1) h) (*.f64 -1 g)))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3)))) (+.f64 (*.f64 (sqrt.f64 -1) h) (*.f64 -1 g))))
(*.f64 -1/2 (/.f64 (pow.f64 h 2) g))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 (*.f64 -1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5))) (*.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 (*.f64 -1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5))) (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (*.f64 1/16 (pow.f64 h 8)) (pow.f64 (*.f64 -1/8 (pow.f64 h 4)) 2)) (pow.f64 g 7))) (*.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))))))
(*.f64 -2 g)
(+.f64 (*.f64 -2 g) (*.f64 1/2 (/.f64 (pow.f64 h 2) g)))
(+.f64 (*.f64 -2 g) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))))
(+.f64 (*.f64 1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5))) (+.f64 (*.f64 -2 g) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))))))
(*.f64 -1/2 (/.f64 (pow.f64 h 2) g))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 (*.f64 -1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5))) (*.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 (*.f64 -1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 g 6))) (pow.f64 (/.f64 -1/8 (pow.f64 g 3)) 2)) (pow.f64 h 8)) g)) (*.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))))))
(*.f64 (sqrt.f64 -1) h)
(+.f64 (*.f64 (sqrt.f64 -1) h) (*.f64 -1 g))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (+.f64 (*.f64 (sqrt.f64 -1) h) (*.f64 -1 g)))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3)))) (+.f64 (*.f64 (sqrt.f64 -1) h) (*.f64 -1 g))))
(*.f64 -1 (*.f64 (sqrt.f64 -1) h))
(+.f64 (*.f64 -1 (*.f64 (sqrt.f64 -1) h)) (*.f64 -1 g))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (+.f64 (*.f64 -1 (*.f64 (sqrt.f64 -1) h)) (*.f64 -1 g)))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (+.f64 (*.f64 -1 (*.f64 (sqrt.f64 -1) h)) (+.f64 (*.f64 -1 g) (*.f64 1/8 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3)))))))
(*.f64 (pow.f64 (/.f64 (*.f64 (sqrt.f64 -1) (*.f64 1 h)) a) 1/3) (cbrt.f64 1/2))
(+.f64 (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (pow.f64 a 7) (pow.f64 h 2)))) 1/9) (*.f64 (cbrt.f64 1/2) g))) (*.f64 (pow.f64 (/.f64 (*.f64 (sqrt.f64 -1) (*.f64 1 h)) a) 1/3) (cbrt.f64 1/2)))
(+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (pow.f64 h 2))) 1/3) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (*.f64 1/3 (pow.f64 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 (pow.f64 a 17) h))) 1/9))) (*.f64 (pow.f64 g 2) (cbrt.f64 1/2))))) (+.f64 (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (pow.f64 a 7) (pow.f64 h 2)))) 1/9) (*.f64 (cbrt.f64 1/2) g))) (*.f64 (pow.f64 (/.f64 (*.f64 (sqrt.f64 -1) (*.f64 1 h)) a) 1/3) (cbrt.f64 1/2))))
(+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (pow.f64 h 2))) 1/3) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (*.f64 1/3 (pow.f64 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 (pow.f64 a 17) h))) 1/9))) (*.f64 (pow.f64 g 2) (cbrt.f64 1/2))))) (+.f64 (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (pow.f64 h 2))) 1/3) (*.f64 (+.f64 (*.f64 -1/27 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (pow.f64 a 7) (pow.f64 h 2)))) 1/3)) (*.f64 -2/3 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 5) (*.f64 (pow.f64 a 4) (pow.f64 h 5)))) 1/9) (-.f64 (*.f64 1/2 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (*.f64 1/3 (pow.f64 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 (pow.f64 a 17) h))) 1/9)))))) (*.f64 (pow.f64 g 3) (cbrt.f64 1/2))))) (+.f64 (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (pow.f64 a 7) (pow.f64 h 2)))) 1/9) (*.f64 (cbrt.f64 1/2) g))) (*.f64 (pow.f64 (/.f64 (*.f64 (sqrt.f64 -1) (*.f64 1 h)) a) 1/3) (cbrt.f64 1/2)))))
Outputs
(log.f64 (neg.f64 (pow.f64 h 2)))
(log.f64 (neg.f64 (*.f64 h h)))
(log.f64 (*.f64 h (neg.f64 h)))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 g 2) (pow.f64 h 2))) (log.f64 (neg.f64 (pow.f64 h 2))))
(fma.f64 -1 (/.f64 (*.f64 g g) (*.f64 h h)) (log.f64 (neg.f64 (*.f64 h h))))
(-.f64 (log.f64 (*.f64 h (neg.f64 h))) (*.f64 (/.f64 g h) (/.f64 g h)))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 g 4) (pow.f64 h 4))) (+.f64 (*.f64 -1 (/.f64 (pow.f64 g 2) (pow.f64 h 2))) (log.f64 (neg.f64 (pow.f64 h 2)))))
(fma.f64 -1/2 (/.f64 (pow.f64 g 4) (pow.f64 h 4)) (fma.f64 -1 (/.f64 (*.f64 g g) (*.f64 h h)) (log.f64 (neg.f64 (*.f64 h h)))))
(fma.f64 -1/2 (/.f64 (pow.f64 g 4) (pow.f64 h 4)) (-.f64 (log.f64 (*.f64 h (neg.f64 h))) (*.f64 (/.f64 g h) (/.f64 g h))))
(-.f64 (fma.f64 -1/2 (/.f64 (pow.f64 g 4) (pow.f64 h 4)) (log.f64 (*.f64 h (neg.f64 h)))) (*.f64 (/.f64 g h) (/.f64 g h)))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 g 4) (pow.f64 h 4))) (+.f64 (*.f64 -1/3 (/.f64 (pow.f64 g 6) (pow.f64 h 6))) (+.f64 (*.f64 -1 (/.f64 (pow.f64 g 2) (pow.f64 h 2))) (log.f64 (neg.f64 (pow.f64 h 2))))))
(fma.f64 -1/2 (/.f64 (pow.f64 g 4) (pow.f64 h 4)) (fma.f64 -1/3 (/.f64 (pow.f64 g 6) (pow.f64 h 6)) (fma.f64 -1 (/.f64 (*.f64 g g) (*.f64 h h)) (log.f64 (neg.f64 (*.f64 h h))))))
(fma.f64 -1/2 (/.f64 (pow.f64 g 4) (pow.f64 h 4)) (fma.f64 -1/3 (/.f64 (pow.f64 g 6) (pow.f64 h 6)) (-.f64 (log.f64 (*.f64 h (neg.f64 h))) (*.f64 (/.f64 g h) (/.f64 g h)))))
(fma.f64 -1/2 (/.f64 (pow.f64 g 4) (pow.f64 h 4)) (-.f64 (fma.f64 -1/3 (/.f64 (pow.f64 g 6) (pow.f64 h 6)) (log.f64 (*.f64 h (neg.f64 h)))) (*.f64 (/.f64 g h) (/.f64 g h))))
(*.f64 -2 (log.f64 (/.f64 1 g)))
(*.f64 -2 (neg.f64 (log.f64 g)))
(neg.f64 (*.f64 -2 (log.f64 g)))
(*.f64 2 (log.f64 g))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 h 2) (pow.f64 g 2))) (*.f64 -2 (log.f64 (/.f64 1 g))))
(fma.f64 -1 (/.f64 (*.f64 h h) (*.f64 g g)) (*.f64 -2 (neg.f64 (log.f64 g))))
(-.f64 (neg.f64 (*.f64 -2 (log.f64 g))) (*.f64 (/.f64 h g) (/.f64 h g)))
(-.f64 (*.f64 2 (log.f64 g)) (*.f64 (/.f64 h g) (/.f64 h g)))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 h 2) (pow.f64 g 2))) (+.f64 (*.f64 -2 (log.f64 (/.f64 1 g))) (*.f64 -1/2 (/.f64 (pow.f64 h 4) (pow.f64 g 4)))))
(fma.f64 -1 (/.f64 (*.f64 h h) (*.f64 g g)) (fma.f64 -2 (neg.f64 (log.f64 g)) (*.f64 -1/2 (/.f64 (pow.f64 h 4) (pow.f64 g 4)))))
(-.f64 (fma.f64 -1/2 (/.f64 (pow.f64 h 4) (pow.f64 g 4)) (neg.f64 (*.f64 -2 (log.f64 g)))) (*.f64 (/.f64 h g) (/.f64 h g)))
(-.f64 (fma.f64 2 (log.f64 g) (/.f64 -1/2 (/.f64 (pow.f64 g 4) (pow.f64 h 4)))) (*.f64 (/.f64 h g) (/.f64 h g)))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 h 2) (pow.f64 g 2))) (+.f64 (*.f64 -2 (log.f64 (/.f64 1 g))) (+.f64 (*.f64 -1/3 (/.f64 (pow.f64 h 6) (pow.f64 g 6))) (*.f64 -1/2 (/.f64 (pow.f64 h 4) (pow.f64 g 4))))))
(fma.f64 -1 (/.f64 (*.f64 h h) (*.f64 g g)) (fma.f64 -2 (neg.f64 (log.f64 g)) (fma.f64 -1/3 (/.f64 (pow.f64 h 6) (pow.f64 g 6)) (*.f64 -1/2 (/.f64 (pow.f64 h 4) (pow.f64 g 4))))))
(-.f64 (fma.f64 -2 (neg.f64 (log.f64 g)) (fma.f64 -1/2 (/.f64 (pow.f64 h 4) (pow.f64 g 4)) (/.f64 (*.f64 -1/3 (pow.f64 h 6)) (pow.f64 g 6)))) (*.f64 (/.f64 h g) (/.f64 h g)))
(-.f64 (fma.f64 2 (log.f64 g) (fma.f64 -1/3 (/.f64 (pow.f64 h 6) (pow.f64 g 6)) (/.f64 -1/2 (/.f64 (pow.f64 g 4) (pow.f64 h 4))))) (*.f64 (/.f64 h g) (/.f64 h g)))
(*.f64 -2 (log.f64 (/.f64 -1 g)))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 h 2) (pow.f64 g 2))) (*.f64 -2 (log.f64 (/.f64 -1 g))))
(fma.f64 -1 (/.f64 (*.f64 h h) (*.f64 g g)) (*.f64 -2 (log.f64 (/.f64 -1 g))))
(fma.f64 -2 (log.f64 (/.f64 -1 g)) (/.f64 (*.f64 h (neg.f64 h)) (*.f64 g g)))
(fma.f64 -2 (log.f64 (/.f64 -1 g)) (*.f64 (/.f64 h g) (neg.f64 (/.f64 h g))))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 h 2) (pow.f64 g 2))) (+.f64 (*.f64 -2 (log.f64 (/.f64 -1 g))) (*.f64 -1/2 (/.f64 (pow.f64 h 4) (pow.f64 g 4)))))
(fma.f64 -1 (/.f64 (*.f64 h h) (*.f64 g g)) (fma.f64 -2 (log.f64 (/.f64 -1 g)) (*.f64 -1/2 (/.f64 (pow.f64 h 4) (pow.f64 g 4)))))
(-.f64 (fma.f64 -1/2 (/.f64 (pow.f64 h 4) (pow.f64 g 4)) (*.f64 -2 (log.f64 (/.f64 -1 g)))) (*.f64 (/.f64 h g) (/.f64 h g)))
(fma.f64 -1/2 (/.f64 (pow.f64 h 4) (pow.f64 g 4)) (fma.f64 -2 (log.f64 (/.f64 -1 g)) (*.f64 (/.f64 h g) (neg.f64 (/.f64 h g)))))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 h 2) (pow.f64 g 2))) (+.f64 (*.f64 -1/3 (/.f64 (pow.f64 h 6) (pow.f64 g 6))) (+.f64 (*.f64 -2 (log.f64 (/.f64 -1 g))) (*.f64 -1/2 (/.f64 (pow.f64 h 4) (pow.f64 g 4))))))
(fma.f64 -1 (/.f64 (*.f64 h h) (*.f64 g g)) (fma.f64 -1/3 (/.f64 (pow.f64 h 6) (pow.f64 g 6)) (fma.f64 -2 (log.f64 (/.f64 -1 g)) (*.f64 -1/2 (/.f64 (pow.f64 h 4) (pow.f64 g 4))))))
(-.f64 (fma.f64 -1/3 (/.f64 (pow.f64 h 6) (pow.f64 g 6)) (fma.f64 -1/2 (/.f64 (pow.f64 h 4) (pow.f64 g 4)) (*.f64 -2 (log.f64 (/.f64 -1 g))))) (*.f64 (/.f64 h g) (/.f64 h g)))
(fma.f64 -1/3 (/.f64 (pow.f64 h 6) (pow.f64 g 6)) (fma.f64 -1/2 (/.f64 (pow.f64 h 4) (pow.f64 g 4)) (fma.f64 -2 (log.f64 (/.f64 -1 g)) (*.f64 (/.f64 h g) (neg.f64 (/.f64 h g))))))
(log.f64 (pow.f64 g 2))
(*.f64 -2 (neg.f64 (log.f64 g)))
(neg.f64 (*.f64 -2 (log.f64 g)))
(*.f64 2 (log.f64 g))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 h 2) (pow.f64 g 2))) (log.f64 (pow.f64 g 2)))
(fma.f64 -1 (/.f64 (*.f64 h h) (*.f64 g g)) (*.f64 -2 (neg.f64 (log.f64 g))))
(-.f64 (neg.f64 (*.f64 -2 (log.f64 g))) (*.f64 (/.f64 h g) (/.f64 h g)))
(-.f64 (*.f64 2 (log.f64 g)) (*.f64 (/.f64 h g) (/.f64 h g)))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 h 2) (pow.f64 g 2))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 4) (pow.f64 g 4))) (log.f64 (pow.f64 g 2))))
(fma.f64 -1 (/.f64 (*.f64 h h) (*.f64 g g)) (fma.f64 -2 (neg.f64 (log.f64 g)) (*.f64 -1/2 (/.f64 (pow.f64 h 4) (pow.f64 g 4)))))
(-.f64 (fma.f64 -1/2 (/.f64 (pow.f64 h 4) (pow.f64 g 4)) (neg.f64 (*.f64 -2 (log.f64 g)))) (*.f64 (/.f64 h g) (/.f64 h g)))
(-.f64 (fma.f64 2 (log.f64 g) (/.f64 -1/2 (/.f64 (pow.f64 g 4) (pow.f64 h 4)))) (*.f64 (/.f64 h g) (/.f64 h g)))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 h 2) (pow.f64 g 2))) (+.f64 (*.f64 -1/3 (/.f64 (pow.f64 h 6) (pow.f64 g 6))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 4) (pow.f64 g 4))) (log.f64 (pow.f64 g 2)))))
(fma.f64 -1 (/.f64 (*.f64 h h) (*.f64 g g)) (fma.f64 -2 (neg.f64 (log.f64 g)) (fma.f64 -1/3 (/.f64 (pow.f64 h 6) (pow.f64 g 6)) (*.f64 -1/2 (/.f64 (pow.f64 h 4) (pow.f64 g 4))))))
(-.f64 (fma.f64 -2 (neg.f64 (log.f64 g)) (fma.f64 -1/2 (/.f64 (pow.f64 h 4) (pow.f64 g 4)) (/.f64 (*.f64 -1/3 (pow.f64 h 6)) (pow.f64 g 6)))) (*.f64 (/.f64 h g) (/.f64 h g)))
(-.f64 (fma.f64 2 (log.f64 g) (fma.f64 -1/3 (/.f64 (pow.f64 h 6) (pow.f64 g 6)) (/.f64 -1/2 (/.f64 (pow.f64 g 4) (pow.f64 h 4))))) (*.f64 (/.f64 h g) (/.f64 h g)))
(+.f64 (*.f64 -2 (log.f64 (/.f64 1 h))) (log.f64 -1))
(log.f64 (neg.f64 (*.f64 h h)))
(log.f64 (*.f64 h (neg.f64 h)))
(+.f64 (*.f64 -2 (log.f64 (/.f64 1 h))) (+.f64 (log.f64 -1) (*.f64 -1 (/.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(fma.f64 -1 (/.f64 (*.f64 g g) (*.f64 h h)) (log.f64 (neg.f64 (*.f64 h h))))
(-.f64 (log.f64 (*.f64 h (neg.f64 h))) (*.f64 (/.f64 g h) (/.f64 g h)))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 g 4) (pow.f64 h 4))) (+.f64 (*.f64 -2 (log.f64 (/.f64 1 h))) (+.f64 (log.f64 -1) (*.f64 -1 (/.f64 (pow.f64 g 2) (pow.f64 h 2))))))
(fma.f64 -1/2 (/.f64 (pow.f64 g 4) (pow.f64 h 4)) (fma.f64 -1 (/.f64 (*.f64 g g) (*.f64 h h)) (log.f64 (neg.f64 (*.f64 h h)))))
(fma.f64 -1/2 (/.f64 (pow.f64 g 4) (pow.f64 h 4)) (-.f64 (log.f64 (*.f64 h (neg.f64 h))) (*.f64 (/.f64 g h) (/.f64 g h))))
(-.f64 (fma.f64 -1/2 (/.f64 (pow.f64 g 4) (pow.f64 h 4)) (log.f64 (*.f64 h (neg.f64 h)))) (*.f64 (/.f64 g h) (/.f64 g h)))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 g 4) (pow.f64 h 4))) (+.f64 (*.f64 -2 (log.f64 (/.f64 1 h))) (+.f64 (*.f64 -1/3 (/.f64 (pow.f64 g 6) (pow.f64 h 6))) (+.f64 (log.f64 -1) (*.f64 -1 (/.f64 (pow.f64 g 2) (pow.f64 h 2)))))))
(fma.f64 -1/2 (/.f64 (pow.f64 g 4) (pow.f64 h 4)) (fma.f64 -1/3 (/.f64 (pow.f64 g 6) (pow.f64 h 6)) (fma.f64 -1 (/.f64 (*.f64 g g) (*.f64 h h)) (log.f64 (neg.f64 (*.f64 h h))))))
(fma.f64 -1/2 (/.f64 (pow.f64 g 4) (pow.f64 h 4)) (fma.f64 -1/3 (/.f64 (pow.f64 g 6) (pow.f64 h 6)) (-.f64 (log.f64 (*.f64 h (neg.f64 h))) (*.f64 (/.f64 g h) (/.f64 g h)))))
(fma.f64 -1/2 (/.f64 (pow.f64 g 4) (pow.f64 h 4)) (-.f64 (fma.f64 -1/3 (/.f64 (pow.f64 g 6) (pow.f64 h 6)) (log.f64 (*.f64 h (neg.f64 h)))) (*.f64 (/.f64 g h) (/.f64 g h))))
(+.f64 (log.f64 -1) (*.f64 -2 (log.f64 (/.f64 -1 h))))
(fma.f64 -2 (log.f64 (/.f64 -1 h)) (log.f64 -1))
(+.f64 (log.f64 -1) (+.f64 (*.f64 -1 (/.f64 (pow.f64 g 2) (pow.f64 h 2))) (*.f64 -2 (log.f64 (/.f64 -1 h)))))
(+.f64 (log.f64 -1) (fma.f64 -1 (/.f64 (*.f64 g g) (*.f64 h h)) (*.f64 -2 (log.f64 (/.f64 -1 h)))))
(+.f64 (/.f64 (*.f64 (neg.f64 g) g) (*.f64 h h)) (fma.f64 -2 (log.f64 (/.f64 -1 h)) (log.f64 -1)))
(-.f64 (fma.f64 -2 (log.f64 (/.f64 -1 h)) (log.f64 -1)) (*.f64 (/.f64 g h) (/.f64 g h)))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 g 4) (pow.f64 h 4))) (+.f64 (log.f64 -1) (+.f64 (*.f64 -1 (/.f64 (pow.f64 g 2) (pow.f64 h 2))) (*.f64 -2 (log.f64 (/.f64 -1 h))))))
(fma.f64 -1/2 (/.f64 (pow.f64 g 4) (pow.f64 h 4)) (+.f64 (log.f64 -1) (fma.f64 -1 (/.f64 (*.f64 g g) (*.f64 h h)) (*.f64 -2 (log.f64 (/.f64 -1 h))))))
(+.f64 (-.f64 (*.f64 -2 (log.f64 (/.f64 -1 h))) (*.f64 (/.f64 g h) (/.f64 g h))) (fma.f64 -1/2 (/.f64 (pow.f64 g 4) (pow.f64 h 4)) (log.f64 -1)))
(fma.f64 -1/2 (/.f64 (pow.f64 g 4) (pow.f64 h 4)) (-.f64 (fma.f64 -2 (log.f64 (/.f64 -1 h)) (log.f64 -1)) (*.f64 (/.f64 g h) (/.f64 g h))))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 g 4) (pow.f64 h 4))) (+.f64 (*.f64 -1/3 (/.f64 (pow.f64 g 6) (pow.f64 h 6))) (+.f64 (log.f64 -1) (+.f64 (*.f64 -1 (/.f64 (pow.f64 g 2) (pow.f64 h 2))) (*.f64 -2 (log.f64 (/.f64 -1 h)))))))
(fma.f64 -1/2 (/.f64 (pow.f64 g 4) (pow.f64 h 4)) (fma.f64 -1/3 (/.f64 (pow.f64 g 6) (pow.f64 h 6)) (+.f64 (log.f64 -1) (fma.f64 -1 (/.f64 (*.f64 g g) (*.f64 h h)) (*.f64 -2 (log.f64 (/.f64 -1 h)))))))
(fma.f64 -1/2 (/.f64 (pow.f64 g 4) (pow.f64 h 4)) (+.f64 (-.f64 (fma.f64 -1/3 (/.f64 (pow.f64 g 6) (pow.f64 h 6)) (log.f64 -1)) (*.f64 (/.f64 g h) (/.f64 g h))) (*.f64 -2 (log.f64 (/.f64 -1 h)))))
(fma.f64 -1/2 (/.f64 (pow.f64 g 4) (pow.f64 h 4)) (fma.f64 -1/3 (/.f64 (pow.f64 g 6) (pow.f64 h 6)) (-.f64 (fma.f64 -2 (log.f64 (/.f64 -1 h)) (log.f64 -1)) (*.f64 (/.f64 g h) (/.f64 g h)))))
(*.f64 (sqrt.f64 -1) h)
(*.f64 h (sqrt.f64 -1))
(+.f64 (*.f64 (sqrt.f64 -1) h) (*.f64 -1 g))
(fma.f64 (sqrt.f64 -1) h (neg.f64 g))
(-.f64 (*.f64 h (sqrt.f64 -1)) g)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (+.f64 (*.f64 (sqrt.f64 -1) h) (*.f64 -1 g)))
(fma.f64 1/2 (/.f64 (*.f64 g g) (*.f64 h (sqrt.f64 -1))) (fma.f64 (sqrt.f64 -1) h (neg.f64 g)))
(-.f64 (fma.f64 1/2 (/.f64 (/.f64 (*.f64 g g) h) (sqrt.f64 -1)) (*.f64 h (sqrt.f64 -1))) g)
(fma.f64 h (sqrt.f64 -1) (fma.f64 1/2 (*.f64 (/.f64 g h) (/.f64 g (sqrt.f64 -1))) (neg.f64 g)))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3)))) (+.f64 (*.f64 (sqrt.f64 -1) h) (*.f64 -1 g))))
(fma.f64 1/2 (/.f64 (*.f64 g g) (*.f64 h (sqrt.f64 -1))) (fma.f64 -1/8 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3))) (fma.f64 (sqrt.f64 -1) h (neg.f64 g))))
(fma.f64 1/2 (/.f64 (/.f64 (*.f64 g g) h) (sqrt.f64 -1)) (-.f64 (fma.f64 -1/8 (/.f64 (pow.f64 g 4) (*.f64 (neg.f64 (sqrt.f64 -1)) (pow.f64 h 3))) (*.f64 h (sqrt.f64 -1))) g))
(-.f64 (fma.f64 1/2 (*.f64 (/.f64 g h) (/.f64 g (sqrt.f64 -1))) (fma.f64 (/.f64 1/8 (sqrt.f64 -1)) (/.f64 (pow.f64 g 4) (pow.f64 h 3)) (*.f64 h (sqrt.f64 -1)))) g)
(*.f64 -1/2 (/.f64 (pow.f64 h 2) g))
(*.f64 -1/2 (/.f64 (*.f64 h h) g))
(*.f64 -1/2 (/.f64 h (/.f64 g h)))
(*.f64 (/.f64 -1/2 g) (*.f64 h h))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))))
(fma.f64 -1/2 (/.f64 (*.f64 h h) g) (*.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))))
(fma.f64 -1/2 (/.f64 h (/.f64 g h)) (*.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))))
(fma.f64 -1/2 (*.f64 (/.f64 h g) h) (/.f64 (*.f64 (pow.f64 h 4) -1/8) (pow.f64 g 3)))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 (*.f64 -1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5))) (*.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))))
(fma.f64 -1/2 (/.f64 (*.f64 h h) g) (fma.f64 -1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5)) (*.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))))
(fma.f64 -1/2 (/.f64 h (/.f64 g h)) (fma.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (/.f64 -1/16 (/.f64 (pow.f64 g 5) (pow.f64 h 6)))))
(fma.f64 -1/2 (*.f64 (/.f64 h g) h) (fma.f64 -1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5)) (/.f64 (*.f64 (pow.f64 h 4) -1/8) (pow.f64 g 3))))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 (*.f64 -1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5))) (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (*.f64 1/16 (pow.f64 h 8)) (pow.f64 (*.f64 -1/8 (pow.f64 h 4)) 2)) (pow.f64 g 7))) (*.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))))))
(fma.f64 -1/2 (/.f64 (*.f64 h h) g) (fma.f64 -1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5)) (fma.f64 -1/2 (/.f64 (fma.f64 1/16 (pow.f64 h 8) (pow.f64 (*.f64 (pow.f64 h 4) -1/8) 2)) (pow.f64 g 7)) (*.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))))))
(fma.f64 -1/2 (/.f64 h (/.f64 g h)) (fma.f64 -1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5)) (fma.f64 -1/2 (/.f64 (fma.f64 1/16 (pow.f64 h 8) (*.f64 (pow.f64 h 8) 1/64)) (pow.f64 g 7)) (*.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))))))
(fma.f64 -1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5)) (fma.f64 -1/2 (*.f64 (/.f64 h g) h) (fma.f64 -1/2 (/.f64 (*.f64 (pow.f64 h 8) 5/64) (pow.f64 g 7)) (/.f64 (*.f64 (pow.f64 h 4) -1/8) (pow.f64 g 3)))))
(*.f64 -2 g)
(*.f64 g -2)
(+.f64 (*.f64 -2 g) (*.f64 1/2 (/.f64 (pow.f64 h 2) g)))
(fma.f64 -2 g (*.f64 1/2 (/.f64 (*.f64 h h) g)))
(fma.f64 g -2 (*.f64 1/2 (/.f64 h (/.f64 g h))))
(fma.f64 g -2 (*.f64 (/.f64 1/2 g) (*.f64 h h)))
(+.f64 (*.f64 -2 g) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))))
(fma.f64 -2 g (fma.f64 1/2 (/.f64 (*.f64 h h) g) (*.f64 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) 1/8)))
(fma.f64 g -2 (fma.f64 1/2 (/.f64 h (/.f64 g h)) (*.f64 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) 1/8)))
(fma.f64 g -2 (fma.f64 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) 1/8 (*.f64 (/.f64 1/2 g) (*.f64 h h))))
(+.f64 (*.f64 1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5))) (+.f64 (*.f64 -2 g) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))))))
(fma.f64 1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5)) (fma.f64 -2 g (fma.f64 1/2 (/.f64 (*.f64 h h) g) (*.f64 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) 1/8))))
(fma.f64 (/.f64 (pow.f64 h 6) (pow.f64 g 5)) 1/16 (fma.f64 g -2 (fma.f64 1/2 (/.f64 h (/.f64 g h)) (*.f64 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) 1/8))))
(fma.f64 g -2 (fma.f64 (/.f64 (pow.f64 h 6) (pow.f64 g 5)) 1/16 (fma.f64 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) 1/8 (*.f64 (/.f64 1/2 g) (*.f64 h h)))))
(*.f64 -1/2 (/.f64 (pow.f64 h 2) g))
(*.f64 -1/2 (/.f64 (*.f64 h h) g))
(*.f64 -1/2 (/.f64 h (/.f64 g h)))
(*.f64 (/.f64 -1/2 g) (*.f64 h h))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))))
(fma.f64 -1/2 (/.f64 (*.f64 h h) g) (*.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))))
(fma.f64 -1/2 (/.f64 h (/.f64 g h)) (*.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))))
(fma.f64 -1/2 (*.f64 (/.f64 h g) h) (/.f64 (*.f64 (pow.f64 h 4) -1/8) (pow.f64 g 3)))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 (*.f64 -1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5))) (*.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))))
(fma.f64 -1/2 (/.f64 (*.f64 h h) g) (fma.f64 -1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5)) (*.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))))
(fma.f64 -1/2 (/.f64 h (/.f64 g h)) (fma.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (/.f64 -1/16 (/.f64 (pow.f64 g 5) (pow.f64 h 6)))))
(fma.f64 -1/2 (*.f64 (/.f64 h g) h) (fma.f64 -1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5)) (/.f64 (*.f64 (pow.f64 h 4) -1/8) (pow.f64 g 3))))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 (*.f64 -1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 g 6))) (pow.f64 (/.f64 -1/8 (pow.f64 g 3)) 2)) (pow.f64 h 8)) g)) (*.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))))))
(fma.f64 -1/2 (/.f64 (*.f64 h h) g) (fma.f64 -1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5)) (fma.f64 -1/2 (/.f64 (+.f64 (/.f64 1/16 (pow.f64 g 6)) (pow.f64 (/.f64 -1/8 (pow.f64 g 3)) 2)) (/.f64 g (pow.f64 h 8))) (*.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))))))
(fma.f64 -1/2 (/.f64 h (/.f64 g h)) (fma.f64 -1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5)) (fma.f64 -1/2 (*.f64 (/.f64 (+.f64 (/.f64 1/16 (pow.f64 g 6)) (pow.f64 (/.f64 -1/8 (pow.f64 g 3)) 2)) g) (pow.f64 h 8)) (*.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))))))
(fma.f64 -1/2 (*.f64 (/.f64 h g) h) (fma.f64 -1/2 (*.f64 (pow.f64 h 8) (/.f64 (+.f64 (/.f64 1/16 (pow.f64 g 6)) (pow.f64 (/.f64 -1/8 (pow.f64 g 3)) 2)) g)) (fma.f64 -1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5)) (/.f64 (*.f64 (pow.f64 h 4) -1/8) (pow.f64 g 3)))))
(*.f64 (sqrt.f64 -1) h)
(*.f64 h (sqrt.f64 -1))
(+.f64 (*.f64 (sqrt.f64 -1) h) (*.f64 -1 g))
(fma.f64 (sqrt.f64 -1) h (neg.f64 g))
(-.f64 (*.f64 h (sqrt.f64 -1)) g)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (+.f64 (*.f64 (sqrt.f64 -1) h) (*.f64 -1 g)))
(fma.f64 1/2 (/.f64 (*.f64 g g) (*.f64 h (sqrt.f64 -1))) (fma.f64 (sqrt.f64 -1) h (neg.f64 g)))
(-.f64 (fma.f64 1/2 (/.f64 (/.f64 (*.f64 g g) h) (sqrt.f64 -1)) (*.f64 h (sqrt.f64 -1))) g)
(fma.f64 h (sqrt.f64 -1) (fma.f64 1/2 (*.f64 (/.f64 g h) (/.f64 g (sqrt.f64 -1))) (neg.f64 g)))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3)))) (+.f64 (*.f64 (sqrt.f64 -1) h) (*.f64 -1 g))))
(fma.f64 1/2 (/.f64 (*.f64 g g) (*.f64 h (sqrt.f64 -1))) (fma.f64 -1/8 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3))) (fma.f64 (sqrt.f64 -1) h (neg.f64 g))))
(fma.f64 1/2 (/.f64 (/.f64 (*.f64 g g) h) (sqrt.f64 -1)) (-.f64 (fma.f64 -1/8 (/.f64 (pow.f64 g 4) (*.f64 (neg.f64 (sqrt.f64 -1)) (pow.f64 h 3))) (*.f64 h (sqrt.f64 -1))) g))
(-.f64 (fma.f64 1/2 (*.f64 (/.f64 g h) (/.f64 g (sqrt.f64 -1))) (fma.f64 (/.f64 1/8 (sqrt.f64 -1)) (/.f64 (pow.f64 g 4) (pow.f64 h 3)) (*.f64 h (sqrt.f64 -1)))) g)
(*.f64 -1 (*.f64 (sqrt.f64 -1) h))
(neg.f64 (*.f64 h (sqrt.f64 -1)))
(*.f64 (sqrt.f64 -1) (neg.f64 h))
(+.f64 (*.f64 -1 (*.f64 (sqrt.f64 -1) h)) (*.f64 -1 g))
(*.f64 -1 (+.f64 (*.f64 h (sqrt.f64 -1)) g))
(neg.f64 (fma.f64 h (sqrt.f64 -1) g))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (+.f64 (*.f64 -1 (*.f64 (sqrt.f64 -1) h)) (*.f64 -1 g)))
(fma.f64 -1/2 (/.f64 (*.f64 g g) (*.f64 h (sqrt.f64 -1))) (*.f64 -1 (+.f64 (*.f64 h (sqrt.f64 -1)) g)))
(fma.f64 -1/2 (/.f64 (/.f64 (*.f64 g g) h) (sqrt.f64 -1)) (neg.f64 (fma.f64 h (sqrt.f64 -1) g)))
(-.f64 (*.f64 -1/2 (*.f64 (/.f64 g h) (/.f64 g (sqrt.f64 -1)))) (fma.f64 h (sqrt.f64 -1) g))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (+.f64 (*.f64 -1 (*.f64 (sqrt.f64 -1) h)) (+.f64 (*.f64 -1 g) (*.f64 1/8 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3)))))))
(fma.f64 -1/2 (/.f64 (*.f64 g g) (*.f64 h (sqrt.f64 -1))) (fma.f64 -1 (*.f64 h (sqrt.f64 -1)) (fma.f64 -1 g (*.f64 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3))) 1/8))))
(fma.f64 -1/2 (/.f64 (/.f64 (*.f64 g g) h) (sqrt.f64 -1)) (fma.f64 -1 (fma.f64 h (sqrt.f64 -1) g) (*.f64 (/.f64 1/8 (pow.f64 h 3)) (/.f64 (pow.f64 g 4) (neg.f64 (sqrt.f64 -1))))))
(fma.f64 -1/2 (*.f64 (/.f64 g h) (/.f64 g (sqrt.f64 -1))) (-.f64 (*.f64 (/.f64 (pow.f64 g 4) (pow.f64 h 3)) (/.f64 -1/8 (sqrt.f64 -1))) (fma.f64 h (sqrt.f64 -1) g)))
(-.f64 (fma.f64 (/.f64 -1/8 (sqrt.f64 -1)) (/.f64 (pow.f64 g 4) (pow.f64 h 3)) (*.f64 -1/2 (*.f64 (/.f64 g h) (/.f64 g (sqrt.f64 -1))))) (fma.f64 h (sqrt.f64 -1) g))
(*.f64 (pow.f64 (/.f64 (*.f64 (sqrt.f64 -1) (*.f64 1 h)) a) 1/3) (cbrt.f64 1/2))
(*.f64 (cbrt.f64 (/.f64 (sqrt.f64 -1) (/.f64 a h))) (cbrt.f64 1/2))
(*.f64 (cbrt.f64 (*.f64 (/.f64 (sqrt.f64 -1) a) h)) (cbrt.f64 1/2))
(*.f64 (cbrt.f64 (*.f64 h (/.f64 (sqrt.f64 -1) a))) (cbrt.f64 1/2))
(+.f64 (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (pow.f64 a 7) (pow.f64 h 2)))) 1/9) (*.f64 (cbrt.f64 1/2) g))) (*.f64 (pow.f64 (/.f64 (*.f64 (sqrt.f64 -1) (*.f64 1 h)) a) 1/3) (cbrt.f64 1/2)))
(fma.f64 -1/3 (*.f64 (*.f64 (pow.f64 (/.f64 (/.f64 1 (pow.f64 (sqrt.f64 -1) 2)) (*.f64 (*.f64 h h) (pow.f64 a 7))) 1/18) (pow.f64 (/.f64 (/.f64 1 (pow.f64 (sqrt.f64 -1) 2)) (*.f64 (*.f64 h h) (pow.f64 a 7))) 1/18)) (*.f64 g (cbrt.f64 1/2))) (*.f64 (cbrt.f64 (/.f64 (sqrt.f64 -1) (/.f64 a h))) (cbrt.f64 1/2)))
(fma.f64 -1/3 (*.f64 g (*.f64 (cbrt.f64 1/2) (*.f64 (pow.f64 (/.f64 -1 (*.f64 (*.f64 h h) (pow.f64 a 7))) 1/18) (pow.f64 (/.f64 -1 (*.f64 (*.f64 h h) (pow.f64 a 7))) 1/18)))) (*.f64 (cbrt.f64 (*.f64 (/.f64 (sqrt.f64 -1) a) h)) (cbrt.f64 1/2)))
(*.f64 (cbrt.f64 1/2) (+.f64 (cbrt.f64 (*.f64 h (/.f64 (sqrt.f64 -1) a))) (*.f64 g (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 -1 (*.f64 (*.f64 h h) (pow.f64 a 7))) 1/18) (pow.f64 (/.f64 -1 (*.f64 (*.f64 h h) (pow.f64 a 7))) 1/18))))))
(+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (pow.f64 h 2))) 1/3) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (*.f64 1/3 (pow.f64 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 (pow.f64 a 17) h))) 1/9))) (*.f64 (pow.f64 g 2) (cbrt.f64 1/2))))) (+.f64 (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (pow.f64 a 7) (pow.f64 h 2)))) 1/9) (*.f64 (cbrt.f64 1/2) g))) (*.f64 (pow.f64 (/.f64 (*.f64 (sqrt.f64 -1) (*.f64 1 h)) a) 1/3) (cbrt.f64 1/2))))
(fma.f64 1/3 (*.f64 (cbrt.f64 (/.f64 (*.f64 a a) (*.f64 (*.f64 h h) (pow.f64 (sqrt.f64 -1) 2)))) (*.f64 (+.f64 (/.f64 1/2 (*.f64 (sqrt.f64 -1) (*.f64 h a))) (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 h (pow.f64 a 17)))) 1/18) (pow.f64 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 h (pow.f64 a 17)))) 1/18)))) (*.f64 (*.f64 g g) (cbrt.f64 1/2)))) (fma.f64 -1/3 (*.f64 (*.f64 (pow.f64 (/.f64 (/.f64 1 (pow.f64 (sqrt.f64 -1) 2)) (*.f64 (*.f64 h h) (pow.f64 a 7))) 1/18) (pow.f64 (/.f64 (/.f64 1 (pow.f64 (sqrt.f64 -1) 2)) (*.f64 (*.f64 h h) (pow.f64 a 7))) 1/18)) (*.f64 g (cbrt.f64 1/2))) (*.f64 (cbrt.f64 (/.f64 (sqrt.f64 -1) (/.f64 a h))) (cbrt.f64 1/2))))
(fma.f64 1/3 (*.f64 (cbrt.f64 (/.f64 (*.f64 a a) (*.f64 h (neg.f64 h)))) (*.f64 (*.f64 g g) (*.f64 (cbrt.f64 1/2) (+.f64 (/.f64 1/2 (*.f64 h (*.f64 (sqrt.f64 -1) a))) (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 (/.f64 1 (sqrt.f64 -1)) (*.f64 h (pow.f64 a 17))) 1/18) (pow.f64 (/.f64 (/.f64 1 (sqrt.f64 -1)) (*.f64 h (pow.f64 a 17))) 1/18))))))) (fma.f64 -1/3 (*.f64 g (*.f64 (cbrt.f64 1/2) (*.f64 (pow.f64 (/.f64 -1 (*.f64 (*.f64 h h) (pow.f64 a 7))) 1/18) (pow.f64 (/.f64 -1 (*.f64 (*.f64 h h) (pow.f64 a 7))) 1/18)))) (*.f64 (cbrt.f64 (*.f64 (/.f64 (sqrt.f64 -1) a) h)) (cbrt.f64 1/2))))
(fma.f64 1/3 (*.f64 (cbrt.f64 (/.f64 a (/.f64 (neg.f64 h) (/.f64 a h)))) (*.f64 (fma.f64 -1/3 (*.f64 (pow.f64 (/.f64 (/.f64 (/.f64 1 h) (pow.f64 a 17)) (sqrt.f64 -1)) 1/18) (pow.f64 (/.f64 (/.f64 (/.f64 1 h) (pow.f64 a 17)) (sqrt.f64 -1)) 1/18)) (/.f64 1/2 (*.f64 (sqrt.f64 -1) (*.f64 h a)))) (*.f64 (*.f64 g g) (cbrt.f64 1/2)))) (*.f64 (cbrt.f64 1/2) (+.f64 (cbrt.f64 (*.f64 h (/.f64 (sqrt.f64 -1) a))) (*.f64 g (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 -1 (*.f64 (*.f64 h h) (pow.f64 a 7))) 1/18) (pow.f64 (/.f64 -1 (*.f64 (*.f64 h h) (pow.f64 a 7))) 1/18)))))))
(+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (pow.f64 h 2))) 1/3) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (*.f64 1/3 (pow.f64 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 (pow.f64 a 17) h))) 1/9))) (*.f64 (pow.f64 g 2) (cbrt.f64 1/2))))) (+.f64 (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (pow.f64 h 2))) 1/3) (*.f64 (+.f64 (*.f64 -1/27 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (pow.f64 a 7) (pow.f64 h 2)))) 1/3)) (*.f64 -2/3 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 5) (*.f64 (pow.f64 a 4) (pow.f64 h 5)))) 1/9) (-.f64 (*.f64 1/2 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (*.f64 1/3 (pow.f64 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 (pow.f64 a 17) h))) 1/9)))))) (*.f64 (pow.f64 g 3) (cbrt.f64 1/2))))) (+.f64 (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (pow.f64 a 7) (pow.f64 h 2)))) 1/9) (*.f64 (cbrt.f64 1/2) g))) (*.f64 (pow.f64 (/.f64 (*.f64 (sqrt.f64 -1) (*.f64 1 h)) a) 1/3) (cbrt.f64 1/2)))))
(fma.f64 1/3 (*.f64 (cbrt.f64 (/.f64 (*.f64 a a) (*.f64 (*.f64 h h) (pow.f64 (sqrt.f64 -1) 2)))) (*.f64 (+.f64 (/.f64 1/2 (*.f64 (sqrt.f64 -1) (*.f64 h a))) (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 h (pow.f64 a 17)))) 1/18) (pow.f64 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 h (pow.f64 a 17)))) 1/18)))) (*.f64 (*.f64 g g) (cbrt.f64 1/2)))) (fma.f64 -1/3 (*.f64 (cbrt.f64 (/.f64 (*.f64 a a) (*.f64 (*.f64 h h) (pow.f64 (sqrt.f64 -1) 2)))) (*.f64 (fma.f64 -1/27 (cbrt.f64 (/.f64 (/.f64 1 (pow.f64 (sqrt.f64 -1) 2)) (*.f64 (*.f64 h h) (pow.f64 a 7)))) (*.f64 -2/3 (*.f64 (+.f64 (/.f64 1/2 (*.f64 (sqrt.f64 -1) (*.f64 h a))) (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 h (pow.f64 a 17)))) 1/18) (pow.f64 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 h (pow.f64 a 17)))) 1/18)))) (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 5) (*.f64 (pow.f64 a 4) (pow.f64 h 5)))) 1/18) (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 5) (*.f64 (pow.f64 a 4) (pow.f64 h 5)))) 1/18))))) (*.f64 (pow.f64 g 3) (cbrt.f64 1/2)))) (fma.f64 -1/3 (*.f64 (*.f64 (pow.f64 (/.f64 (/.f64 1 (pow.f64 (sqrt.f64 -1) 2)) (*.f64 (*.f64 h h) (pow.f64 a 7))) 1/18) (pow.f64 (/.f64 (/.f64 1 (pow.f64 (sqrt.f64 -1) 2)) (*.f64 (*.f64 h h) (pow.f64 a 7))) 1/18)) (*.f64 g (cbrt.f64 1/2))) (*.f64 (cbrt.f64 (/.f64 (sqrt.f64 -1) (/.f64 a h))) (cbrt.f64 1/2)))))
(fma.f64 1/3 (*.f64 (cbrt.f64 (/.f64 (*.f64 a a) (*.f64 h (neg.f64 h)))) (*.f64 (*.f64 g g) (*.f64 (cbrt.f64 1/2) (+.f64 (/.f64 1/2 (*.f64 h (*.f64 (sqrt.f64 -1) a))) (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 (/.f64 1 (sqrt.f64 -1)) (*.f64 h (pow.f64 a 17))) 1/18) (pow.f64 (/.f64 (/.f64 1 (sqrt.f64 -1)) (*.f64 h (pow.f64 a 17))) 1/18))))))) (fma.f64 -1/3 (*.f64 (cbrt.f64 (/.f64 (*.f64 a a) (*.f64 h (neg.f64 h)))) (*.f64 (fma.f64 -1/27 (cbrt.f64 (/.f64 -1 (*.f64 (*.f64 h h) (pow.f64 a 7)))) (*.f64 (*.f64 (pow.f64 (/.f64 (/.f64 1 (pow.f64 (sqrt.f64 -1) 5)) (*.f64 (pow.f64 a 4) (pow.f64 h 5))) 1/18) (pow.f64 (/.f64 (/.f64 1 (pow.f64 (sqrt.f64 -1) 5)) (*.f64 (pow.f64 a 4) (pow.f64 h 5))) 1/18)) (*.f64 (+.f64 (/.f64 1/2 (*.f64 h (*.f64 (sqrt.f64 -1) a))) (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 (/.f64 1 (sqrt.f64 -1)) (*.f64 h (pow.f64 a 17))) 1/18) (pow.f64 (/.f64 (/.f64 1 (sqrt.f64 -1)) (*.f64 h (pow.f64 a 17))) 1/18)))) -2/3))) (*.f64 (pow.f64 g 3) (cbrt.f64 1/2)))) (fma.f64 -1/3 (*.f64 g (*.f64 (cbrt.f64 1/2) (*.f64 (pow.f64 (/.f64 -1 (*.f64 (*.f64 h h) (pow.f64 a 7))) 1/18) (pow.f64 (/.f64 -1 (*.f64 (*.f64 h h) (pow.f64 a 7))) 1/18)))) (*.f64 (cbrt.f64 (*.f64 (/.f64 (sqrt.f64 -1) a) h)) (cbrt.f64 1/2)))))
(+.f64 (*.f64 (cbrt.f64 1/2) (+.f64 (cbrt.f64 (*.f64 h (/.f64 (sqrt.f64 -1) a))) (*.f64 g (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 -1 (*.f64 (*.f64 h h) (pow.f64 a 7))) 1/18) (pow.f64 (/.f64 -1 (*.f64 (*.f64 h h) (pow.f64 a 7))) 1/18)))))) (*.f64 (cbrt.f64 (/.f64 a (/.f64 (neg.f64 h) (/.f64 a h)))) (+.f64 (*.f64 1/3 (*.f64 (fma.f64 -1/3 (*.f64 (pow.f64 (/.f64 (/.f64 (/.f64 1 h) (pow.f64 a 17)) (sqrt.f64 -1)) 1/18) (pow.f64 (/.f64 (/.f64 (/.f64 1 h) (pow.f64 a 17)) (sqrt.f64 -1)) 1/18)) (/.f64 1/2 (*.f64 (sqrt.f64 -1) (*.f64 h a)))) (*.f64 (*.f64 g g) (cbrt.f64 1/2)))) (*.f64 -1/3 (*.f64 (fma.f64 (fma.f64 -1/3 (*.f64 (pow.f64 (/.f64 (/.f64 (/.f64 1 h) (pow.f64 a 17)) (sqrt.f64 -1)) 1/18) (pow.f64 (/.f64 (/.f64 (/.f64 1 h) (pow.f64 a 17)) (sqrt.f64 -1)) 1/18)) (/.f64 1/2 (*.f64 (sqrt.f64 -1) (*.f64 h a)))) (*.f64 -2/3 (*.f64 (pow.f64 (/.f64 (/.f64 1 (pow.f64 (sqrt.f64 -1) 5)) (*.f64 (pow.f64 a 4) (pow.f64 h 5))) 1/18) (pow.f64 (/.f64 (/.f64 1 (pow.f64 (sqrt.f64 -1) 5)) (*.f64 (pow.f64 a 4) (pow.f64 h 5))) 1/18))) (*.f64 -1/27 (cbrt.f64 (/.f64 -1 (*.f64 (*.f64 h h) (pow.f64 a 7)))))) (*.f64 (pow.f64 g 3) (cbrt.f64 1/2)))))))

localize61.0ms (0.5%)

Local error

Found 4 expressions with local error:

NewErrorProgram
12.2b
(cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 3))) (/.f64 -1/2 a)))
32.1b
(sqrt.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 3))
32.1b
(sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))
33.1b
(cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))
Compiler

Compiled 186 to 60 computations (67.7% saved)

series20.0ms (0.2%)

Counts
3 → 40
Calls

21 calls:

TimeVariablePointExpression
9.0ms
g
@0
(cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))
1.0ms
h
@0
(cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))
1.0ms
h
@inf
(cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 3))) (/.f64 -1/2 a)))
1.0ms
g
@0
(cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 3))) (/.f64 -1/2 a)))
1.0ms
g
@-inf
(cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 3))) (/.f64 -1/2 a)))

rewrite92.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
816×fma-def_binary64
746×log-prod_binary64
389×fma-neg_binary64
279×expm1-udef_binary64
279×log1p-udef_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01647
136147
2467145
Stop Event
node limit
Counts
3 → 94
Calls
Call 1
Inputs
(cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))
(sqrt.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 3))
(cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 3))) (/.f64 -1/2 a)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))) (cbrt.f64 (exp.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))))) (log.f64 (cbrt.f64 (exp.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) (log.f64 (sqrt.f64 (exp.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (cbrt.f64 (cbrt.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (pow.f64 (cbrt.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 2)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 2))) (cbrt.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/6) (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (+.f64 g h)) (cbrt.f64 (-.f64 g h)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/3) (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 2)) 1/3) (cbrt.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (+.f64 g h) 1/3) (pow.f64 (-.f64 g h) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (-.f64 (pow.f64 g 4) (pow.f64 h 4))) (cbrt.f64 (fma.f64 h h (*.f64 g g))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (-.f64 (pow.f64 g 6) (pow.f64 h 6))) (cbrt.f64 (fma.f64 (*.f64 h h) (fma.f64 h h (*.f64 g g)) (pow.f64 g 4))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/6) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (cbrt.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))) (cbrt.f64 (exp.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))) (log.f64 (cbrt.f64 (exp.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))) (log.f64 (sqrt.f64 (exp.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/4) (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/6) (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/6) (pow.f64 (cbrt.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 2)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (+.f64 g h)) (sqrt.f64 (-.f64 g h)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 2)) 1/2) (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/2) (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (+.f64 g h) 1/2) (pow.f64 (-.f64 g h) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 3/2) (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 2))) 3/2) (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/6) 3/2) (pow.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/6) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (-.f64 (pow.f64 g 4) (pow.f64 h 4))) (hypot.f64 g h))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (-.f64 (pow.f64 g 6) (pow.f64 h 6))) (hypot.f64 (*.f64 g g) (hypot.f64 (*.f64 h h) (*.f64 g h))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 3/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/4) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/6) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 3/2) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) (hypot.f64 (sqrt.f64 (*.f64 h (neg.f64 h))) h))))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 (sqrt.f64 (*.f64 h (neg.f64 h))) g)))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 (hypot.f64 (sqrt.f64 (*.f64 h (neg.f64 h))) h) (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (cbrt.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (/.f64 -1/2 a))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (cbrt.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (/.f64 -1/2 a))))) (cbrt.f64 (exp.f64 (cbrt.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (/.f64 -1/2 a))))))) (log.f64 (cbrt.f64 (exp.f64 (cbrt.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (/.f64 -1/2 a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (cbrt.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (/.f64 -1/2 a)))))) (log.f64 (sqrt.f64 (exp.f64 (cbrt.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (/.f64 -1/2 a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (cbrt.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (/.f64 -1/2 a))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (/.f64 -1/2 a))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (cbrt.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (/.f64 -1/2 a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 -1/2 a)) (cbrt.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))) (cbrt.f64 (/.f64 -1/2 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (/.f64 -1/2 a)))) (cbrt.f64 (cbrt.f64 (pow.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (/.f64 -1/2 a)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (pow.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (/.f64 -1/2 a)) 2))) (cbrt.f64 (cbrt.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (/.f64 -1/2 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (/.f64 -1/2 a)) 1/6) (pow.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (/.f64 -1/2 a)) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/3) (cbrt.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (/.f64 -1/2 a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (pow.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (/.f64 -1/2 a)) 2)) 1/3) (cbrt.f64 (cbrt.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (/.f64 -1/2 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (/.f64 -1/2 a))) 1/3) (pow.f64 (sqrt.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (/.f64 -1/2 a))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) -1/2)) (cbrt.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (/.f64 -1/2 a)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (/.f64 -1/2 a))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (/.f64 -1/2 a)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (/.f64 -1/2 a)) 1/6) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (cbrt.f64 (pow.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (/.f64 -1/2 a)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (cbrt.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (/.f64 -1/2 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (cbrt.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (/.f64 -1/2 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (cbrt.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (/.f64 -1/2 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (cbrt.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (/.f64 -1/2 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (cbrt.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (/.f64 -1/2 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (/.f64 -1/2 a))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (/.f64 -1/2 a)))) 1))))))

simplify91.0ms (0.8%)

Algorithm
egg-herbie
Rules
947×fma-def_binary64
763×associate-/l*_binary64
527×unswap-sqr_binary64
328×associate-*l/_binary64
295×associate-*r/_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02361880
17181774
225741749
369551749
Stop Event
node limit
Counts
134 → 157
Calls
Call 1
Inputs
(*.f64 (pow.f64 (*.f64 1 (pow.f64 h 2)) 1/3) (cbrt.f64 -1))
(+.f64 (*.f64 (pow.f64 (*.f64 1 (pow.f64 h 2)) 1/3) (cbrt.f64 -1)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 h 4)) 1/3) (/.f64 (pow.f64 g 2) (pow.f64 (cbrt.f64 -1) 2)))))
(+.f64 (*.f64 -1/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 h 10)) 1/3) (/.f64 (pow.f64 g 4) (pow.f64 (cbrt.f64 -1) 5)))) (+.f64 (*.f64 (pow.f64 (*.f64 1 (pow.f64 h 2)) 1/3) (cbrt.f64 -1)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 h 4)) 1/3) (/.f64 (pow.f64 g 2) (pow.f64 (cbrt.f64 -1) 2))))))
(+.f64 (*.f64 -1/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 h 10)) 1/3) (/.f64 (pow.f64 g 4) (pow.f64 (cbrt.f64 -1) 5)))) (+.f64 (*.f64 (pow.f64 (*.f64 1 (pow.f64 h 2)) 1/3) (cbrt.f64 -1)) (+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 h 4)) 1/3) (/.f64 (pow.f64 g 2) (pow.f64 (cbrt.f64 -1) 2)))) (*.f64 5/81 (*.f64 (pow.f64 (/.f64 1 (pow.f64 h 16)) 1/3) (/.f64 (pow.f64 g 6) (pow.f64 (cbrt.f64 -1) 8)))))))
(pow.f64 (pow.f64 g 2) 1/3)
(+.f64 (pow.f64 (pow.f64 g 2) 1/3) (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 g 4)) 1/3) (pow.f64 h 2))))
(+.f64 (pow.f64 (pow.f64 g 2) 1/3) (+.f64 (*.f64 -1/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 g 10)) 1/3) (pow.f64 h 4))) (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 g 4)) 1/3) (pow.f64 h 2)))))
(+.f64 (pow.f64 (pow.f64 g 2) 1/3) (+.f64 (*.f64 -1/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 g 10)) 1/3) (pow.f64 h 4))) (+.f64 (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 g 4)) 1/3) (pow.f64 h 2))) (*.f64 -5/81 (*.f64 (pow.f64 (/.f64 1 (pow.f64 g 16)) 1/3) (pow.f64 h 6))))))
(*.f64 (sqrt.f64 -1) h)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (*.f64 (sqrt.f64 -1) h))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3)))) (*.f64 (sqrt.f64 -1) h)))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3)))) (+.f64 (*.f64 (sqrt.f64 -1) h) (*.f64 1/16 (/.f64 (pow.f64 g 6) (*.f64 (pow.f64 (sqrt.f64 -1) 5) (pow.f64 h 5)))))))
g
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) g)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 g (*.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 (*.f64 -1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5))) (+.f64 g (*.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))))))
(*.f64 -1 g)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 -1 g))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 (*.f64 -1 g) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))))
(+.f64 (*.f64 1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 (*.f64 -1 g) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))))))
g
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) g)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 g (*.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 (*.f64 -1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5))) (+.f64 g (*.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))))))
(*.f64 (sqrt.f64 -1) h)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (*.f64 (sqrt.f64 -1) h))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3)))) (*.f64 (sqrt.f64 -1) h)))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3)))) (+.f64 (*.f64 (sqrt.f64 -1) h) (*.f64 1/16 (/.f64 (pow.f64 g 6) (*.f64 (pow.f64 (sqrt.f64 -1) 5) (pow.f64 h 5)))))))
(*.f64 -1 (*.f64 (sqrt.f64 -1) h))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (*.f64 -1 (*.f64 (sqrt.f64 -1) h)))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (+.f64 (*.f64 -1 (*.f64 (sqrt.f64 -1) h)) (*.f64 1/8 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3))))))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (+.f64 (*.f64 -1 (*.f64 (sqrt.f64 -1) h)) (+.f64 (*.f64 -1/16 (/.f64 (pow.f64 g 6) (*.f64 (pow.f64 (sqrt.f64 -1) 5) (pow.f64 h 5)))) (*.f64 1/8 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3)))))))
(*.f64 (pow.f64 (/.f64 (*.f64 (sqrt.f64 -1) (*.f64 1 h)) a) 1/3) (cbrt.f64 -1/2))
(+.f64 (*.f64 (pow.f64 (/.f64 (*.f64 (sqrt.f64 -1) (*.f64 1 h)) a) 1/3) (cbrt.f64 -1/2)) (*.f64 1/3 (*.f64 (*.f64 (cbrt.f64 -1/2) g) (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (pow.f64 a 7) (pow.f64 h 2)))) 1/9))))
(+.f64 (*.f64 (pow.f64 (/.f64 (*.f64 (sqrt.f64 -1) (*.f64 1 h)) a) 1/3) (cbrt.f64 -1/2)) (+.f64 (*.f64 1/3 (*.f64 (*.f64 (cbrt.f64 -1/2) g) (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (pow.f64 a 7) (pow.f64 h 2)))) 1/9))) (*.f64 1/3 (*.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (*.f64 1/3 (pow.f64 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 (pow.f64 a 17) h))) 1/9))) (pow.f64 g 2))) (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (pow.f64 h 2))) 1/3)))))
(+.f64 (*.f64 -1/3 (*.f64 (*.f64 (+.f64 (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 5) (*.f64 (pow.f64 a 4) (pow.f64 h 5)))) 1/9) (-.f64 (*.f64 1/2 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (*.f64 1/3 (pow.f64 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 (pow.f64 a 17) h))) 1/9))))) (*.f64 1/27 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (pow.f64 a 7) (pow.f64 h 2)))) 1/3))) (*.f64 (cbrt.f64 -1/2) (pow.f64 g 3))) (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (pow.f64 h 2))) 1/3))) (+.f64 (*.f64 (pow.f64 (/.f64 (*.f64 (sqrt.f64 -1) (*.f64 1 h)) a) 1/3) (cbrt.f64 -1/2)) (+.f64 (*.f64 1/3 (*.f64 (*.f64 (cbrt.f64 -1/2) g) (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (pow.f64 a 7) (pow.f64 h 2)))) 1/9))) (*.f64 1/3 (*.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (*.f64 1/3 (pow.f64 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 (pow.f64 a 17) h))) 1/9))) (pow.f64 g 2))) (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (pow.f64 h 2))) 1/3))))))
(*.f64 (pow.f64 (/.f64 (*.f64 1 g) a) 1/3) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)))
(+.f64 (*.f64 -1/6 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 h 2)) (pow.f64 (cbrt.f64 2) 2)) (pow.f64 (/.f64 1 (*.f64 a (pow.f64 g 5))) 1/3))) (*.f64 (pow.f64 (/.f64 (*.f64 1 g) a) 1/3) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2))))
(+.f64 (*.f64 -1/6 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 h 2)) (pow.f64 (cbrt.f64 2) 2)) (pow.f64 (/.f64 1 (*.f64 a (pow.f64 g 5))) 1/3))) (+.f64 (*.f64 -1/18 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 h 4)) (pow.f64 (cbrt.f64 2) 2)) (pow.f64 (/.f64 1 (*.f64 a (pow.f64 g 11))) 1/3))) (*.f64 (pow.f64 (/.f64 (*.f64 1 g) a) 1/3) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)))))
(+.f64 (*.f64 -1/6 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 h 2)) (pow.f64 (cbrt.f64 2) 2)) (pow.f64 (/.f64 1 (*.f64 a (pow.f64 g 5))) 1/3))) (+.f64 (*.f64 1/3 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (-.f64 (*.f64 1/216 (/.f64 1 (*.f64 a (*.f64 (pow.f64 (cbrt.f64 2) 6) (pow.f64 g 5))))) (*.f64 13/144 (/.f64 1 (*.f64 a (pow.f64 g 5))))) (pow.f64 h 6))) (pow.f64 (cbrt.f64 2) 2)) (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (pow.f64 g 2)) 1/3))) (+.f64 (*.f64 -1/18 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 h 4)) (pow.f64 (cbrt.f64 2) 2)) (pow.f64 (/.f64 1 (*.f64 a (pow.f64 g 11))) 1/3))) (*.f64 (pow.f64 (/.f64 (*.f64 1 g) a) 1/3) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2))))))
Outputs
(*.f64 (pow.f64 (*.f64 1 (pow.f64 h 2)) 1/3) (cbrt.f64 -1))
(*.f64 (cbrt.f64 (*.f64 h h)) (cbrt.f64 -1))
(+.f64 (*.f64 (pow.f64 (*.f64 1 (pow.f64 h 2)) 1/3) (cbrt.f64 -1)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 h 4)) 1/3) (/.f64 (pow.f64 g 2) (pow.f64 (cbrt.f64 -1) 2)))))
(fma.f64 (cbrt.f64 (*.f64 h h)) (cbrt.f64 -1) (*.f64 1/3 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 h 4))) (/.f64 (*.f64 g g) (pow.f64 (cbrt.f64 -1) 2)))))
(fma.f64 (cbrt.f64 (*.f64 h h)) (cbrt.f64 -1) (*.f64 1/3 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 h 4))) (/.f64 g (/.f64 (pow.f64 (cbrt.f64 -1) 2) g)))))
(fma.f64 1/3 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 h 4))) (*.f64 (/.f64 g (pow.f64 (cbrt.f64 -1) 2)) g)) (*.f64 (cbrt.f64 (*.f64 h h)) (cbrt.f64 -1)))
(+.f64 (*.f64 -1/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 h 10)) 1/3) (/.f64 (pow.f64 g 4) (pow.f64 (cbrt.f64 -1) 5)))) (+.f64 (*.f64 (pow.f64 (*.f64 1 (pow.f64 h 2)) 1/3) (cbrt.f64 -1)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 h 4)) 1/3) (/.f64 (pow.f64 g 2) (pow.f64 (cbrt.f64 -1) 2))))))
(fma.f64 -1/9 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 h 10))) (/.f64 (pow.f64 g 4) (pow.f64 (cbrt.f64 -1) 5))) (fma.f64 (cbrt.f64 (*.f64 h h)) (cbrt.f64 -1) (*.f64 1/3 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 h 4))) (/.f64 (*.f64 g g) (pow.f64 (cbrt.f64 -1) 2))))))
(fma.f64 -1/9 (/.f64 (cbrt.f64 (/.f64 1 (pow.f64 h 10))) (/.f64 (pow.f64 (cbrt.f64 -1) 5) (pow.f64 g 4))) (fma.f64 (cbrt.f64 (*.f64 h h)) (cbrt.f64 -1) (*.f64 1/3 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 h 4))) (/.f64 g (/.f64 (pow.f64 (cbrt.f64 -1) 2) g))))))
(fma.f64 1/3 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 h 4))) (*.f64 (/.f64 g (pow.f64 (cbrt.f64 -1) 2)) g)) (fma.f64 (cbrt.f64 (*.f64 h h)) (cbrt.f64 -1) (*.f64 -1/9 (*.f64 (/.f64 (cbrt.f64 (/.f64 1 (pow.f64 h 10))) (pow.f64 (cbrt.f64 -1) 5)) (pow.f64 g 4)))))
(+.f64 (*.f64 -1/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 h 10)) 1/3) (/.f64 (pow.f64 g 4) (pow.f64 (cbrt.f64 -1) 5)))) (+.f64 (*.f64 (pow.f64 (*.f64 1 (pow.f64 h 2)) 1/3) (cbrt.f64 -1)) (+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 h 4)) 1/3) (/.f64 (pow.f64 g 2) (pow.f64 (cbrt.f64 -1) 2)))) (*.f64 5/81 (*.f64 (pow.f64 (/.f64 1 (pow.f64 h 16)) 1/3) (/.f64 (pow.f64 g 6) (pow.f64 (cbrt.f64 -1) 8)))))))
(fma.f64 -1/9 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 h 10))) (/.f64 (pow.f64 g 4) (pow.f64 (cbrt.f64 -1) 5))) (fma.f64 (cbrt.f64 (*.f64 h h)) (cbrt.f64 -1) (fma.f64 1/3 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 h 4))) (/.f64 (*.f64 g g) (pow.f64 (cbrt.f64 -1) 2))) (*.f64 5/81 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 h 16))) (/.f64 (pow.f64 g 6) (pow.f64 (cbrt.f64 -1) 8)))))))
(fma.f64 -1/9 (/.f64 (cbrt.f64 (/.f64 1 (pow.f64 h 10))) (/.f64 (pow.f64 (cbrt.f64 -1) 5) (pow.f64 g 4))) (fma.f64 (cbrt.f64 (*.f64 h h)) (cbrt.f64 -1) (fma.f64 1/3 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 h 4))) (/.f64 g (/.f64 (pow.f64 (cbrt.f64 -1) 2) g))) (*.f64 (*.f64 5/81 (/.f64 (pow.f64 g 6) (pow.f64 (cbrt.f64 -1) 8))) (cbrt.f64 (/.f64 1 (pow.f64 h 16)))))))
(fma.f64 (cbrt.f64 (*.f64 h h)) (cbrt.f64 -1) (fma.f64 -1/9 (*.f64 (/.f64 (cbrt.f64 (/.f64 1 (pow.f64 h 10))) (pow.f64 (cbrt.f64 -1) 5)) (pow.f64 g 4)) (fma.f64 1/3 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 h 4))) (*.f64 (/.f64 g (pow.f64 (cbrt.f64 -1) 2)) g)) (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 h 16))) (/.f64 (*.f64 (pow.f64 g 6) 5/81) (pow.f64 (cbrt.f64 -1) 8))))))
(pow.f64 (pow.f64 g 2) 1/3)
(cbrt.f64 (*.f64 g g))
(+.f64 (pow.f64 (pow.f64 g 2) 1/3) (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 g 4)) 1/3) (pow.f64 h 2))))
(+.f64 (cbrt.f64 (*.f64 g g)) (*.f64 -1/3 (*.f64 (*.f64 h h) (cbrt.f64 (/.f64 1 (pow.f64 g 4))))))
(fma.f64 -1/3 (*.f64 (*.f64 h h) (cbrt.f64 (/.f64 1 (pow.f64 g 4)))) (cbrt.f64 (*.f64 g g)))
(fma.f64 (*.f64 h h) (*.f64 -1/3 (cbrt.f64 (/.f64 1 (pow.f64 g 4)))) (cbrt.f64 (*.f64 g g)))
(+.f64 (pow.f64 (pow.f64 g 2) 1/3) (+.f64 (*.f64 -1/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 g 10)) 1/3) (pow.f64 h 4))) (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 g 4)) 1/3) (pow.f64 h 2)))))
(+.f64 (cbrt.f64 (*.f64 g g)) (fma.f64 -1/9 (*.f64 (pow.f64 h 4) (cbrt.f64 (/.f64 1 (pow.f64 g 10)))) (*.f64 -1/3 (*.f64 (*.f64 h h) (cbrt.f64 (/.f64 1 (pow.f64 g 4)))))))
(+.f64 (cbrt.f64 (*.f64 g g)) (fma.f64 -1/9 (*.f64 (pow.f64 h 4) (cbrt.f64 (/.f64 1 (pow.f64 g 10)))) (*.f64 (*.f64 h h) (*.f64 -1/3 (cbrt.f64 (/.f64 1 (pow.f64 g 4)))))))
(fma.f64 (*.f64 h h) (*.f64 -1/3 (cbrt.f64 (/.f64 1 (pow.f64 g 4)))) (fma.f64 (pow.f64 h 4) (*.f64 -1/9 (cbrt.f64 (/.f64 1 (pow.f64 g 10)))) (cbrt.f64 (*.f64 g g))))
(+.f64 (pow.f64 (pow.f64 g 2) 1/3) (+.f64 (*.f64 -1/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 g 10)) 1/3) (pow.f64 h 4))) (+.f64 (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 g 4)) 1/3) (pow.f64 h 2))) (*.f64 -5/81 (*.f64 (pow.f64 (/.f64 1 (pow.f64 g 16)) 1/3) (pow.f64 h 6))))))
(+.f64 (cbrt.f64 (*.f64 g g)) (fma.f64 -1/9 (*.f64 (pow.f64 h 4) (cbrt.f64 (/.f64 1 (pow.f64 g 10)))) (fma.f64 -1/3 (*.f64 (*.f64 h h) (cbrt.f64 (/.f64 1 (pow.f64 g 4)))) (*.f64 -5/81 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 g 16))) (pow.f64 h 6))))))
(+.f64 (cbrt.f64 (*.f64 g g)) (fma.f64 (*.f64 h h) (*.f64 -1/3 (cbrt.f64 (/.f64 1 (pow.f64 g 4)))) (fma.f64 -5/81 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 g 16))) (pow.f64 h 6)) (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 g 10))) (*.f64 (pow.f64 h 4) -1/9)))))
(*.f64 (sqrt.f64 -1) h)
(*.f64 h (sqrt.f64 -1))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (*.f64 (sqrt.f64 -1) h))
(fma.f64 1/2 (/.f64 (*.f64 g g) (*.f64 h (sqrt.f64 -1))) (*.f64 h (sqrt.f64 -1)))
(fma.f64 h (sqrt.f64 -1) (*.f64 1/2 (*.f64 (/.f64 g h) (/.f64 g (sqrt.f64 -1)))))
(fma.f64 h (sqrt.f64 -1) (/.f64 (/.f64 (*.f64 g g) (/.f64 h 1/2)) (sqrt.f64 -1)))
(fma.f64 h (sqrt.f64 -1) (/.f64 1/2 (/.f64 (/.f64 (sqrt.f64 -1) (/.f64 g h)) g)))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3)))) (*.f64 (sqrt.f64 -1) h)))
(fma.f64 1/2 (/.f64 (*.f64 g g) (*.f64 h (sqrt.f64 -1))) (fma.f64 -1/8 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3))) (*.f64 h (sqrt.f64 -1))))
(fma.f64 1/2 (*.f64 (/.f64 g h) (/.f64 g (sqrt.f64 -1))) (fma.f64 h (sqrt.f64 -1) (/.f64 (/.f64 (*.f64 (pow.f64 g 4) -1/8) (pow.f64 h 3)) (neg.f64 (sqrt.f64 -1)))))
(fma.f64 h (sqrt.f64 -1) (fma.f64 1/2 (*.f64 (/.f64 g h) (/.f64 g (sqrt.f64 -1))) (*.f64 (/.f64 -1/8 (pow.f64 h 3)) (/.f64 (pow.f64 g 4) (neg.f64 (sqrt.f64 -1))))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3)))) (+.f64 (*.f64 (sqrt.f64 -1) h) (*.f64 1/16 (/.f64 (pow.f64 g 6) (*.f64 (pow.f64 (sqrt.f64 -1) 5) (pow.f64 h 5)))))))
(fma.f64 1/2 (/.f64 (*.f64 g g) (*.f64 h (sqrt.f64 -1))) (fma.f64 -1/8 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3))) (fma.f64 (sqrt.f64 -1) h (*.f64 1/16 (/.f64 (pow.f64 g 6) (*.f64 (pow.f64 (sqrt.f64 -1) 5) (pow.f64 h 5)))))))
(fma.f64 1/2 (*.f64 (/.f64 g h) (/.f64 g (sqrt.f64 -1))) (fma.f64 -1/8 (/.f64 (pow.f64 g 4) (*.f64 (neg.f64 (sqrt.f64 -1)) (pow.f64 h 3))) (fma.f64 h (sqrt.f64 -1) (*.f64 (/.f64 1/16 (pow.f64 h 5)) (/.f64 (pow.f64 g 6) (pow.f64 (sqrt.f64 -1) 5))))))
(fma.f64 1/2 (*.f64 (/.f64 g h) (/.f64 g (sqrt.f64 -1))) (fma.f64 -1/8 (/.f64 (pow.f64 g 4) (*.f64 (sqrt.f64 -1) (neg.f64 (pow.f64 h 3)))) (fma.f64 (/.f64 1/16 (pow.f64 h 5)) (/.f64 (pow.f64 g 6) (pow.f64 (sqrt.f64 -1) 5)) (*.f64 h (sqrt.f64 -1)))))
g
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) g)
(fma.f64 -1/2 (/.f64 (*.f64 h h) g) g)
(fma.f64 -1/2 (/.f64 h (/.f64 g h)) g)
(fma.f64 -1/2 (*.f64 h (/.f64 h g)) g)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 g (*.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))))
(+.f64 (fma.f64 -1/2 (/.f64 (*.f64 h h) g) g) (*.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))))
(fma.f64 -1/2 (/.f64 h (/.f64 g h)) (fma.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) g))
(fma.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 (*.f64 -1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5))) (+.f64 g (*.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))))))
(fma.f64 -1/2 (/.f64 (*.f64 h h) g) (fma.f64 -1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5)) (+.f64 g (*.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))))))
(fma.f64 -1/2 (/.f64 h (/.f64 g h)) (fma.f64 -1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5)) (fma.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) g)))
(fma.f64 -1/2 (*.f64 h (/.f64 h g)) (fma.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (fma.f64 -1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5)) g)))
(*.f64 -1 g)
(neg.f64 g)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 -1 g))
(fma.f64 1/2 (/.f64 (*.f64 h h) g) (neg.f64 g))
(-.f64 (/.f64 (*.f64 (*.f64 h h) 1/2) g) g)
(fma.f64 (/.f64 1/2 g) (*.f64 h h) (neg.f64 g))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 (*.f64 -1 g) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))))
(fma.f64 1/2 (/.f64 (*.f64 h h) g) (fma.f64 -1 g (*.f64 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) 1/8)))
(fma.f64 1/2 (/.f64 h (/.f64 g h)) (-.f64 (*.f64 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) 1/8) g))
(-.f64 (fma.f64 1/2 (*.f64 h (/.f64 h g)) (*.f64 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) 1/8)) g)
(+.f64 (*.f64 1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 (*.f64 -1 g) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))))))
(fma.f64 1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5)) (fma.f64 1/2 (/.f64 (*.f64 h h) g) (fma.f64 -1 g (*.f64 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) 1/8))))
(fma.f64 1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5)) (fma.f64 1/2 (/.f64 h (/.f64 g h)) (-.f64 (*.f64 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) 1/8) g)))
(fma.f64 1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5)) (-.f64 (fma.f64 1/2 (*.f64 h (/.f64 h g)) (*.f64 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) 1/8)) g))
(fma.f64 1/2 (*.f64 h (/.f64 h g)) (fma.f64 1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5)) (fma.f64 (/.f64 1/8 (pow.f64 g 3)) (pow.f64 h 4) (neg.f64 g))))
g
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) g)
(fma.f64 -1/2 (/.f64 (*.f64 h h) g) g)
(fma.f64 -1/2 (/.f64 h (/.f64 g h)) g)
(fma.f64 -1/2 (*.f64 h (/.f64 h g)) g)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 g (*.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))))
(+.f64 (fma.f64 -1/2 (/.f64 (*.f64 h h) g) g) (*.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))))
(fma.f64 -1/2 (/.f64 h (/.f64 g h)) (fma.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) g))
(fma.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 (*.f64 -1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5))) (+.f64 g (*.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))))))
(fma.f64 -1/2 (/.f64 (*.f64 h h) g) (fma.f64 -1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5)) (+.f64 g (*.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))))))
(fma.f64 -1/2 (/.f64 h (/.f64 g h)) (fma.f64 -1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5)) (fma.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) g)))
(fma.f64 -1/2 (*.f64 h (/.f64 h g)) (fma.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (fma.f64 -1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5)) g)))
(*.f64 (sqrt.f64 -1) h)
(*.f64 h (sqrt.f64 -1))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (*.f64 (sqrt.f64 -1) h))
(fma.f64 1/2 (/.f64 (*.f64 g g) (*.f64 h (sqrt.f64 -1))) (*.f64 h (sqrt.f64 -1)))
(fma.f64 h (sqrt.f64 -1) (*.f64 1/2 (*.f64 (/.f64 g h) (/.f64 g (sqrt.f64 -1)))))
(fma.f64 h (sqrt.f64 -1) (/.f64 (/.f64 (*.f64 g g) (/.f64 h 1/2)) (sqrt.f64 -1)))
(fma.f64 h (sqrt.f64 -1) (/.f64 1/2 (/.f64 (/.f64 (sqrt.f64 -1) (/.f64 g h)) g)))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3)))) (*.f64 (sqrt.f64 -1) h)))
(fma.f64 1/2 (/.f64 (*.f64 g g) (*.f64 h (sqrt.f64 -1))) (fma.f64 -1/8 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3))) (*.f64 h (sqrt.f64 -1))))
(fma.f64 1/2 (*.f64 (/.f64 g h) (/.f64 g (sqrt.f64 -1))) (fma.f64 h (sqrt.f64 -1) (/.f64 (/.f64 (*.f64 (pow.f64 g 4) -1/8) (pow.f64 h 3)) (neg.f64 (sqrt.f64 -1)))))
(fma.f64 h (sqrt.f64 -1) (fma.f64 1/2 (*.f64 (/.f64 g h) (/.f64 g (sqrt.f64 -1))) (*.f64 (/.f64 -1/8 (pow.f64 h 3)) (/.f64 (pow.f64 g 4) (neg.f64 (sqrt.f64 -1))))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3)))) (+.f64 (*.f64 (sqrt.f64 -1) h) (*.f64 1/16 (/.f64 (pow.f64 g 6) (*.f64 (pow.f64 (sqrt.f64 -1) 5) (pow.f64 h 5)))))))
(fma.f64 1/2 (/.f64 (*.f64 g g) (*.f64 h (sqrt.f64 -1))) (fma.f64 -1/8 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3))) (fma.f64 (sqrt.f64 -1) h (*.f64 1/16 (/.f64 (pow.f64 g 6) (*.f64 (pow.f64 (sqrt.f64 -1) 5) (pow.f64 h 5)))))))
(fma.f64 1/2 (*.f64 (/.f64 g h) (/.f64 g (sqrt.f64 -1))) (fma.f64 -1/8 (/.f64 (pow.f64 g 4) (*.f64 (neg.f64 (sqrt.f64 -1)) (pow.f64 h 3))) (fma.f64 h (sqrt.f64 -1) (*.f64 (/.f64 1/16 (pow.f64 h 5)) (/.f64 (pow.f64 g 6) (pow.f64 (sqrt.f64 -1) 5))))))
(fma.f64 1/2 (*.f64 (/.f64 g h) (/.f64 g (sqrt.f64 -1))) (fma.f64 -1/8 (/.f64 (pow.f64 g 4) (*.f64 (sqrt.f64 -1) (neg.f64 (pow.f64 h 3)))) (fma.f64 (/.f64 1/16 (pow.f64 h 5)) (/.f64 (pow.f64 g 6) (pow.f64 (sqrt.f64 -1) 5)) (*.f64 h (sqrt.f64 -1)))))
(*.f64 -1 (*.f64 (sqrt.f64 -1) h))
(neg.f64 (*.f64 h (sqrt.f64 -1)))
(*.f64 (sqrt.f64 -1) (neg.f64 h))
(*.f64 h (neg.f64 (sqrt.f64 -1)))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (*.f64 -1 (*.f64 (sqrt.f64 -1) h)))
(fma.f64 -1/2 (/.f64 (*.f64 g g) (*.f64 h (sqrt.f64 -1))) (neg.f64 (*.f64 h (sqrt.f64 -1))))
(-.f64 (*.f64 (/.f64 -1/2 h) (/.f64 (*.f64 g g) (sqrt.f64 -1))) (*.f64 h (sqrt.f64 -1)))
(-.f64 (/.f64 (/.f64 (*.f64 g g) (/.f64 h -1/2)) (sqrt.f64 -1)) (*.f64 h (sqrt.f64 -1)))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (+.f64 (*.f64 -1 (*.f64 (sqrt.f64 -1) h)) (*.f64 1/8 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3))))))
(fma.f64 -1/2 (/.f64 (*.f64 g g) (*.f64 h (sqrt.f64 -1))) (fma.f64 -1 (*.f64 h (sqrt.f64 -1)) (*.f64 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3))) 1/8)))
(fma.f64 (*.f64 (/.f64 g h) (/.f64 g (sqrt.f64 -1))) -1/2 (-.f64 (*.f64 (/.f64 1/8 (neg.f64 (sqrt.f64 -1))) (/.f64 (pow.f64 g 4) (pow.f64 h 3))) (*.f64 h (sqrt.f64 -1))))
(-.f64 (fma.f64 (/.f64 1/8 (pow.f64 h 3)) (/.f64 (pow.f64 g 4) (neg.f64 (sqrt.f64 -1))) (/.f64 (/.f64 (*.f64 g g) (/.f64 h -1/2)) (sqrt.f64 -1))) (*.f64 h (sqrt.f64 -1)))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (+.f64 (*.f64 -1 (*.f64 (sqrt.f64 -1) h)) (+.f64 (*.f64 -1/16 (/.f64 (pow.f64 g 6) (*.f64 (pow.f64 (sqrt.f64 -1) 5) (pow.f64 h 5)))) (*.f64 1/8 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3)))))))
(fma.f64 -1/2 (/.f64 (*.f64 g g) (*.f64 h (sqrt.f64 -1))) (fma.f64 -1 (*.f64 h (sqrt.f64 -1)) (fma.f64 -1/16 (/.f64 (pow.f64 g 6) (*.f64 (pow.f64 (sqrt.f64 -1) 5) (pow.f64 h 5))) (*.f64 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3))) 1/8))))
(fma.f64 (*.f64 (/.f64 g h) (/.f64 g (sqrt.f64 -1))) -1/2 (-.f64 (fma.f64 (/.f64 (pow.f64 g 4) (*.f64 (neg.f64 (sqrt.f64 -1)) (pow.f64 h 3))) 1/8 (*.f64 (/.f64 -1/16 (pow.f64 (sqrt.f64 -1) 5)) (/.f64 (pow.f64 g 6) (pow.f64 h 5)))) (*.f64 h (sqrt.f64 -1))))
(-.f64 (fma.f64 (*.f64 (/.f64 g h) (/.f64 g (sqrt.f64 -1))) -1/2 (fma.f64 (/.f64 (pow.f64 g 4) (*.f64 (sqrt.f64 -1) (neg.f64 (pow.f64 h 3)))) 1/8 (*.f64 (/.f64 -1/16 (pow.f64 h 5)) (/.f64 (pow.f64 g 6) (pow.f64 (sqrt.f64 -1) 5))))) (*.f64 h (sqrt.f64 -1)))
(*.f64 (pow.f64 (/.f64 (*.f64 (sqrt.f64 -1) (*.f64 1 h)) a) 1/3) (cbrt.f64 -1/2))
(*.f64 (cbrt.f64 (/.f64 (sqrt.f64 -1) (/.f64 a h))) (cbrt.f64 -1/2))
(*.f64 (cbrt.f64 (*.f64 (/.f64 (sqrt.f64 -1) a) h)) (cbrt.f64 -1/2))
(+.f64 (*.f64 (pow.f64 (/.f64 (*.f64 (sqrt.f64 -1) (*.f64 1 h)) a) 1/3) (cbrt.f64 -1/2)) (*.f64 1/3 (*.f64 (*.f64 (cbrt.f64 -1/2) g) (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (pow.f64 a 7) (pow.f64 h 2)))) 1/9))))
(fma.f64 (cbrt.f64 (/.f64 (sqrt.f64 -1) (/.f64 a h))) (cbrt.f64 -1/2) (*.f64 1/3 (*.f64 (*.f64 g (cbrt.f64 -1/2)) (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (*.f64 h h) (pow.f64 a 7)))) 1/18) (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (*.f64 h h) (pow.f64 a 7)))) 1/18)))))
(fma.f64 1/3 (*.f64 g (*.f64 (cbrt.f64 -1/2) (*.f64 (pow.f64 (/.f64 -1 (*.f64 h (*.f64 h (pow.f64 a 7)))) 1/18) (pow.f64 (/.f64 -1 (*.f64 h (*.f64 h (pow.f64 a 7)))) 1/18)))) (*.f64 (cbrt.f64 (*.f64 (/.f64 (sqrt.f64 -1) a) h)) (cbrt.f64 -1/2)))
(*.f64 (cbrt.f64 -1/2) (+.f64 (cbrt.f64 (*.f64 (/.f64 (sqrt.f64 -1) a) h)) (*.f64 (*.f64 g (*.f64 (pow.f64 (/.f64 -1 (*.f64 h (*.f64 h (pow.f64 a 7)))) 1/18) (pow.f64 (/.f64 -1 (*.f64 h (*.f64 h (pow.f64 a 7)))) 1/18))) 1/3)))
(+.f64 (*.f64 (pow.f64 (/.f64 (*.f64 (sqrt.f64 -1) (*.f64 1 h)) a) 1/3) (cbrt.f64 -1/2)) (+.f64 (*.f64 1/3 (*.f64 (*.f64 (cbrt.f64 -1/2) g) (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (pow.f64 a 7) (pow.f64 h 2)))) 1/9))) (*.f64 1/3 (*.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (*.f64 1/3 (pow.f64 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 (pow.f64 a 17) h))) 1/9))) (pow.f64 g 2))) (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (pow.f64 h 2))) 1/3)))))
(fma.f64 (cbrt.f64 (/.f64 (sqrt.f64 -1) (/.f64 a h))) (cbrt.f64 -1/2) (*.f64 1/3 (+.f64 (*.f64 (*.f64 g (cbrt.f64 -1/2)) (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (*.f64 h h) (pow.f64 a 7)))) 1/18) (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (*.f64 h h) (pow.f64 a 7)))) 1/18))) (*.f64 (cbrt.f64 -1/2) (*.f64 (*.f64 (*.f64 g g) (-.f64 (/.f64 1/2 (*.f64 (sqrt.f64 -1) (*.f64 h a))) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 h (pow.f64 a 17)))) 1/18) (pow.f64 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 h (pow.f64 a 17)))) 1/18))))) (cbrt.f64 (/.f64 (*.f64 a a) (*.f64 (*.f64 h h) (pow.f64 (sqrt.f64 -1) 2)))))))))
(fma.f64 1/3 (*.f64 (cbrt.f64 -1/2) (+.f64 (*.f64 g (*.f64 (pow.f64 (/.f64 -1 (*.f64 h (*.f64 h (pow.f64 a 7)))) 1/18) (pow.f64 (/.f64 -1 (*.f64 h (*.f64 h (pow.f64 a 7)))) 1/18))) (*.f64 (*.f64 g g) (*.f64 (-.f64 (/.f64 1/2 (*.f64 (sqrt.f64 -1) (*.f64 h a))) (*.f64 (*.f64 1/3 (pow.f64 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 h (pow.f64 a 17)))) 1/18)) (pow.f64 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 h (pow.f64 a 17)))) 1/18))) (cbrt.f64 (*.f64 -1 (/.f64 (*.f64 a a) (*.f64 h h)))))))) (*.f64 (cbrt.f64 (*.f64 (/.f64 (sqrt.f64 -1) a) h)) (cbrt.f64 -1/2)))
(fma.f64 1/3 (*.f64 (cbrt.f64 -1/2) (fma.f64 g (*.f64 (pow.f64 (/.f64 -1 (*.f64 h (*.f64 h (pow.f64 a 7)))) 1/18) (pow.f64 (/.f64 -1 (*.f64 h (*.f64 h (pow.f64 a 7)))) 1/18)) (*.f64 (fma.f64 -1/3 (*.f64 (pow.f64 (/.f64 (/.f64 1 (sqrt.f64 -1)) (*.f64 h (pow.f64 a 17))) 1/18) (pow.f64 (/.f64 (/.f64 1 (sqrt.f64 -1)) (*.f64 h (pow.f64 a 17))) 1/18)) (/.f64 1/2 (*.f64 h (*.f64 (sqrt.f64 -1) a)))) (*.f64 (*.f64 g g) (cbrt.f64 (*.f64 (/.f64 a (neg.f64 (*.f64 h h))) a)))))) (*.f64 (cbrt.f64 (*.f64 (/.f64 (sqrt.f64 -1) a) h)) (cbrt.f64 -1/2)))
(+.f64 (*.f64 -1/3 (*.f64 (*.f64 (+.f64 (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 5) (*.f64 (pow.f64 a 4) (pow.f64 h 5)))) 1/9) (-.f64 (*.f64 1/2 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (*.f64 1/3 (pow.f64 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 (pow.f64 a 17) h))) 1/9))))) (*.f64 1/27 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (pow.f64 a 7) (pow.f64 h 2)))) 1/3))) (*.f64 (cbrt.f64 -1/2) (pow.f64 g 3))) (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (pow.f64 h 2))) 1/3))) (+.f64 (*.f64 (pow.f64 (/.f64 (*.f64 (sqrt.f64 -1) (*.f64 1 h)) a) 1/3) (cbrt.f64 -1/2)) (+.f64 (*.f64 1/3 (*.f64 (*.f64 (cbrt.f64 -1/2) g) (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (pow.f64 a 7) (pow.f64 h 2)))) 1/9))) (*.f64 1/3 (*.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (*.f64 1/3 (pow.f64 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 (pow.f64 a 17) h))) 1/9))) (pow.f64 g 2))) (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (pow.f64 h 2))) 1/3))))))
(fma.f64 -1/3 (*.f64 (cbrt.f64 (/.f64 (*.f64 a a) (*.f64 (*.f64 h h) (pow.f64 (sqrt.f64 -1) 2)))) (*.f64 (fma.f64 2/3 (*.f64 (-.f64 (/.f64 1/2 (*.f64 (sqrt.f64 -1) (*.f64 h a))) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 h (pow.f64 a 17)))) 1/18) (pow.f64 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 h (pow.f64 a 17)))) 1/18)))) (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 5) (*.f64 (pow.f64 h 5) (pow.f64 a 4)))) 1/18) (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 5) (*.f64 (pow.f64 h 5) (pow.f64 a 4)))) 1/18))) (*.f64 1/27 (cbrt.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (*.f64 h h) (pow.f64 a 7))))))) (*.f64 (pow.f64 g 3) (cbrt.f64 -1/2)))) (fma.f64 (cbrt.f64 (/.f64 (sqrt.f64 -1) (/.f64 a h))) (cbrt.f64 -1/2) (*.f64 1/3 (+.f64 (*.f64 (*.f64 g (cbrt.f64 -1/2)) (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (*.f64 h h) (pow.f64 a 7)))) 1/18) (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (*.f64 h h) (pow.f64 a 7)))) 1/18))) (*.f64 (cbrt.f64 -1/2) (*.f64 (*.f64 (*.f64 g g) (-.f64 (/.f64 1/2 (*.f64 (sqrt.f64 -1) (*.f64 h a))) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 h (pow.f64 a 17)))) 1/18) (pow.f64 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 h (pow.f64 a 17)))) 1/18))))) (cbrt.f64 (/.f64 (*.f64 a a) (*.f64 (*.f64 h h) (pow.f64 (sqrt.f64 -1) 2))))))))))
(fma.f64 -1/3 (*.f64 (cbrt.f64 (*.f64 -1 (/.f64 (*.f64 a a) (*.f64 h h)))) (*.f64 (pow.f64 g 3) (*.f64 (cbrt.f64 -1/2) (fma.f64 (*.f64 (*.f64 2/3 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 5) (*.f64 (pow.f64 h 5) (pow.f64 a 4)))) 1/18)) (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 5) (*.f64 (pow.f64 h 5) (pow.f64 a 4)))) 1/18)) (-.f64 (/.f64 1/2 (*.f64 (sqrt.f64 -1) (*.f64 h a))) (*.f64 (*.f64 1/3 (pow.f64 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 h (pow.f64 a 17)))) 1/18)) (pow.f64 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 h (pow.f64 a 17)))) 1/18))) (*.f64 1/27 (cbrt.f64 (/.f64 -1 (*.f64 h (*.f64 h (pow.f64 a 7)))))))))) (fma.f64 1/3 (*.f64 (cbrt.f64 -1/2) (+.f64 (*.f64 g (*.f64 (pow.f64 (/.f64 -1 (*.f64 h (*.f64 h (pow.f64 a 7)))) 1/18) (pow.f64 (/.f64 -1 (*.f64 h (*.f64 h (pow.f64 a 7)))) 1/18))) (*.f64 (*.f64 g g) (*.f64 (-.f64 (/.f64 1/2 (*.f64 (sqrt.f64 -1) (*.f64 h a))) (*.f64 (*.f64 1/3 (pow.f64 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 h (pow.f64 a 17)))) 1/18)) (pow.f64 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 h (pow.f64 a 17)))) 1/18))) (cbrt.f64 (*.f64 -1 (/.f64 (*.f64 a a) (*.f64 h h)))))))) (*.f64 (cbrt.f64 (*.f64 (/.f64 (sqrt.f64 -1) a) h)) (cbrt.f64 -1/2))))
(+.f64 (*.f64 (cbrt.f64 -1/2) (+.f64 (cbrt.f64 (*.f64 (/.f64 (sqrt.f64 -1) a) h)) (*.f64 (*.f64 g (*.f64 (pow.f64 (/.f64 -1 (*.f64 h (*.f64 h (pow.f64 a 7)))) 1/18) (pow.f64 (/.f64 -1 (*.f64 h (*.f64 h (pow.f64 a 7)))) 1/18))) 1/3))) (*.f64 (cbrt.f64 (*.f64 (/.f64 a (neg.f64 (*.f64 h h))) a)) (+.f64 (*.f64 1/3 (*.f64 (*.f64 g g) (*.f64 (cbrt.f64 -1/2) (fma.f64 -1/3 (*.f64 (pow.f64 (/.f64 (/.f64 1 (sqrt.f64 -1)) (*.f64 h (pow.f64 a 17))) 1/18) (pow.f64 (/.f64 (/.f64 1 (sqrt.f64 -1)) (*.f64 h (pow.f64 a 17))) 1/18)) (/.f64 1/2 (*.f64 h (*.f64 (sqrt.f64 -1) a))))))) (*.f64 -1/3 (*.f64 (pow.f64 g 3) (*.f64 (cbrt.f64 -1/2) (fma.f64 (fma.f64 -1/3 (*.f64 (pow.f64 (/.f64 (/.f64 1 (sqrt.f64 -1)) (*.f64 h (pow.f64 a 17))) 1/18) (pow.f64 (/.f64 (/.f64 1 (sqrt.f64 -1)) (*.f64 h (pow.f64 a 17))) 1/18)) (/.f64 1/2 (*.f64 h (*.f64 (sqrt.f64 -1) a)))) (*.f64 (*.f64 2/3 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 5) (*.f64 (pow.f64 h 5) (pow.f64 a 4)))) 1/18)) (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 5) (*.f64 (pow.f64 h 5) (pow.f64 a 4)))) 1/18)) (*.f64 1/27 (cbrt.f64 (/.f64 -1 (*.f64 h (*.f64 h (pow.f64 a 7)))))))))))))
(*.f64 (pow.f64 (/.f64 (*.f64 1 g) a) 1/3) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)))
(*.f64 (cbrt.f64 (/.f64 g a)) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)))
(*.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 2) (cbrt.f64 (/.f64 g a))))
(+.f64 (*.f64 -1/6 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 h 2)) (pow.f64 (cbrt.f64 2) 2)) (pow.f64 (/.f64 1 (*.f64 a (pow.f64 g 5))) 1/3))) (*.f64 (pow.f64 (/.f64 (*.f64 1 g) a) 1/3) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2))))
(fma.f64 -1/6 (*.f64 (/.f64 (*.f64 (*.f64 h h) (cbrt.f64 -1/2)) (pow.f64 (cbrt.f64 2) 2)) (cbrt.f64 (/.f64 1 (*.f64 (pow.f64 g 5) a)))) (*.f64 (cbrt.f64 (/.f64 g a)) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2))))
(fma.f64 (cbrt.f64 (/.f64 g a)) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)) (*.f64 -1/6 (*.f64 (/.f64 (*.f64 h (*.f64 h (cbrt.f64 -1/2))) (pow.f64 (cbrt.f64 2) 2)) (cbrt.f64 (/.f64 1 (*.f64 (pow.f64 g 5) a))))))
(fma.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 2) (cbrt.f64 (/.f64 g a))) (*.f64 (cbrt.f64 (/.f64 (/.f64 1 a) (pow.f64 g 5))) (*.f64 (/.f64 (*.f64 -1/6 (cbrt.f64 -1/2)) (pow.f64 (cbrt.f64 2) 2)) (*.f64 h h))))
(+.f64 (*.f64 -1/6 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 h 2)) (pow.f64 (cbrt.f64 2) 2)) (pow.f64 (/.f64 1 (*.f64 a (pow.f64 g 5))) 1/3))) (+.f64 (*.f64 -1/18 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 h 4)) (pow.f64 (cbrt.f64 2) 2)) (pow.f64 (/.f64 1 (*.f64 a (pow.f64 g 11))) 1/3))) (*.f64 (pow.f64 (/.f64 (*.f64 1 g) a) 1/3) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)))))
(fma.f64 -1/6 (*.f64 (/.f64 (*.f64 (*.f64 h h) (cbrt.f64 -1/2)) (pow.f64 (cbrt.f64 2) 2)) (cbrt.f64 (/.f64 1 (*.f64 (pow.f64 g 5) a)))) (fma.f64 -1/18 (*.f64 (/.f64 (cbrt.f64 -1/2) (/.f64 (pow.f64 (cbrt.f64 2) 2) (pow.f64 h 4))) (cbrt.f64 (/.f64 1 (*.f64 a (pow.f64 g 11))))) (*.f64 (cbrt.f64 (/.f64 g a)) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)))))
(fma.f64 -1/6 (*.f64 (/.f64 (*.f64 h (*.f64 h (cbrt.f64 -1/2))) (pow.f64 (cbrt.f64 2) 2)) (cbrt.f64 (/.f64 1 (*.f64 (pow.f64 g 5) a)))) (fma.f64 (cbrt.f64 (/.f64 g a)) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)) (*.f64 -1/18 (*.f64 (/.f64 (*.f64 (pow.f64 h 4) (cbrt.f64 -1/2)) (pow.f64 (cbrt.f64 2) 2)) (cbrt.f64 (/.f64 1 (*.f64 a (pow.f64 g 11))))))))
(fma.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 2) (cbrt.f64 (/.f64 g a))) (fma.f64 -1/6 (*.f64 (/.f64 h (/.f64 (pow.f64 (cbrt.f64 2) 2) (*.f64 h (cbrt.f64 -1/2)))) (cbrt.f64 (/.f64 (/.f64 1 a) (pow.f64 g 5)))) (*.f64 (cbrt.f64 (/.f64 (/.f64 1 a) (pow.f64 g 11))) (/.f64 -1/18 (/.f64 (pow.f64 (cbrt.f64 2) 2) (*.f64 (pow.f64 h 4) (cbrt.f64 -1/2)))))))
(+.f64 (*.f64 -1/6 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 h 2)) (pow.f64 (cbrt.f64 2) 2)) (pow.f64 (/.f64 1 (*.f64 a (pow.f64 g 5))) 1/3))) (+.f64 (*.f64 1/3 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (-.f64 (*.f64 1/216 (/.f64 1 (*.f64 a (*.f64 (pow.f64 (cbrt.f64 2) 6) (pow.f64 g 5))))) (*.f64 13/144 (/.f64 1 (*.f64 a (pow.f64 g 5))))) (pow.f64 h 6))) (pow.f64 (cbrt.f64 2) 2)) (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (pow.f64 g 2)) 1/3))) (+.f64 (*.f64 -1/18 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 h 4)) (pow.f64 (cbrt.f64 2) 2)) (pow.f64 (/.f64 1 (*.f64 a (pow.f64 g 11))) 1/3))) (*.f64 (pow.f64 (/.f64 (*.f64 1 g) a) 1/3) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2))))))
(fma.f64 -1/6 (*.f64 (/.f64 (*.f64 (*.f64 h h) (cbrt.f64 -1/2)) (pow.f64 (cbrt.f64 2) 2)) (cbrt.f64 (/.f64 1 (*.f64 (pow.f64 g 5) a)))) (fma.f64 1/3 (*.f64 (/.f64 (cbrt.f64 -1/2) (/.f64 (pow.f64 (cbrt.f64 2) 2) (*.f64 (pow.f64 h 6) (-.f64 (/.f64 1/216 (*.f64 a (*.f64 (pow.f64 g 5) (pow.f64 (cbrt.f64 2) 6)))) (/.f64 13/144 (*.f64 (pow.f64 g 5) a)))))) (cbrt.f64 (/.f64 (*.f64 a a) (*.f64 g g)))) (fma.f64 -1/18 (*.f64 (/.f64 (cbrt.f64 -1/2) (/.f64 (pow.f64 (cbrt.f64 2) 2) (pow.f64 h 4))) (cbrt.f64 (/.f64 1 (*.f64 a (pow.f64 g 11))))) (*.f64 (cbrt.f64 (/.f64 g a)) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2))))))
(fma.f64 -1/6 (*.f64 (/.f64 (*.f64 h (*.f64 h (cbrt.f64 -1/2))) (pow.f64 (cbrt.f64 2) 2)) (cbrt.f64 (/.f64 1 (*.f64 (pow.f64 g 5) a)))) (fma.f64 1/3 (/.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (pow.f64 h 6) (+.f64 (/.f64 (/.f64 1/216 (*.f64 4 a)) (pow.f64 g 5)) (/.f64 -13/144 (*.f64 (pow.f64 g 5) a))))) (/.f64 (pow.f64 (cbrt.f64 2) 2) (cbrt.f64 (/.f64 a (/.f64 (*.f64 g g) a))))) (fma.f64 (cbrt.f64 (/.f64 g a)) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)) (*.f64 -1/18 (*.f64 (/.f64 (*.f64 (pow.f64 h 4) (cbrt.f64 -1/2)) (pow.f64 (cbrt.f64 2) 2)) (cbrt.f64 (/.f64 1 (*.f64 a (pow.f64 g 11)))))))))
(fma.f64 1/3 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (cbrt.f64 (*.f64 (/.f64 a g) (/.f64 a g)))) (pow.f64 (cbrt.f64 2) 2)) (*.f64 (pow.f64 h 6) (+.f64 (/.f64 1/216 (*.f64 (pow.f64 g 5) (*.f64 4 a))) (/.f64 -13/144 (*.f64 (pow.f64 g 5) a))))) (fma.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 2) (cbrt.f64 (/.f64 g a))) (fma.f64 -1/6 (*.f64 (/.f64 h (/.f64 (pow.f64 (cbrt.f64 2) 2) (*.f64 h (cbrt.f64 -1/2)))) (cbrt.f64 (/.f64 (/.f64 1 a) (pow.f64 g 5)))) (*.f64 (cbrt.f64 (/.f64 (/.f64 1 a) (pow.f64 g 11))) (/.f64 -1/18 (/.f64 (pow.f64 (cbrt.f64 2) 2) (*.f64 (pow.f64 h 4) (cbrt.f64 -1/2))))))))

eval1.0s (9.1%)

Compiler

Compiled 51977 to 25956 computations (50.1% saved)

prune259.0ms (2.3%)

Pruning

40 alts after pruning (38 fresh and 2 done)

PrunedKeptTotal
New1208321240
Fresh14620
Picked101
Done224
Total1225401265
Error
10.1b
Counts
1265 → 40
Alt Table
Click to see full alt table
StatusErrorProgram
51.2b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (+.f64 g (exp.f64 (*.f64 (log.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 1/2))) (/.f64 -1/2 a))))
44.0b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 2)) (sqrt.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
49.6b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (*.f64 (cbrt.f64 (/.f64 g a)) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2))))
50.1b
(+.f64 (*.f64 (cbrt.f64 (/.f64 1/2 a)) (cbrt.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
62.1b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (+.f64 g (neg.f64 g)) (/.f64 -1/2 a))))
19.6b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 2) (cbrt.f64 (/.f64 g a)))))
48.8b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (cbrt.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 3/2)) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
53.5b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (expm1.f64 (log1p.f64 (cbrt.f64 (*.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g)) (/.f64 -1/2 a))))))
55.0b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (pow.f64 (cbrt.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))) 3) (/.f64 -1/2 a))))
44.8b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (*.f64 (cbrt.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g))) (cbrt.f64 (/.f64 -1/2 a))))
62.3b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (fma.f64 1/2 (*.f64 (/.f64 h g) h) (*.f64 (/.f64 1/8 (pow.f64 g 3)) (pow.f64 h 4))) (/.f64 -1/2 a))))
44.6b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 3)) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
51.5b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (/.f64 (cbrt.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) -1/2)) (cbrt.f64 a)))
50.6b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (*.f64 (/.f64 -1/2 g) (*.f64 h h)))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
59.0b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (pow.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (/.f64 -1/2 a)) 1/3))
53.6b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (+.f64 0 (fma.f64 1/3 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (cbrt.f64 (*.f64 (/.f64 a g) (/.f64 a g)))) (pow.f64 (cbrt.f64 2) 2)) (+.f64 (*.f64 (/.f64 -1/2 (*.f64 g a)) (*.f64 h h)) 0)) (*.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 2) (cbrt.f64 (/.f64 g a)))))))
61.4b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (*.f64 (/.f64 1/2 g) (*.f64 h h)) (/.f64 -1/2 a))))
51.0b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/6) (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (/.f64 -1/2 a))))
61.4b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (/.f64 -1/2 a))))
40.4b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (*.f64 (-.f64 g h) (+.f64 g h)))) (/.f64 -1/2 a))))
55.1b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (/.f64 -1/2 a)))) 3))
54.5b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (fma.f64 (pow.f64 (cbrt.f64 g) 2) (cbrt.f64 g) (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (/.f64 -1/2 a))))
49.5b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g)) (/.f64 -1/2 a)))) 3))
19.1b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (+.f64 g g) (/.f64 -1/2 a))))
53.6b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (+.f64 g (cbrt.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 3/2))) (/.f64 -1/2 a))))
50.0b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (-.f64 (*.f64 1/2 (/.f64 h (/.f64 g h))) g) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
40.9b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (+.f64 g (*.f64 (sqrt.f64 (+.f64 g h)) (sqrt.f64 (-.f64 g h)))) (/.f64 -1/2 a))))
50.0b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (fma.f64 g -2 (*.f64 (/.f64 1/2 g) (*.f64 h h))))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
44.8b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (/.f64 (cbrt.f64 (*.f64 -1/2 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g)))) (cbrt.f64 a)))
51.7b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.f64 g (-.f64 (*.f64 1/2 (/.f64 h (/.f64 g h))) g)) (/.f64 -1/2 a))))
49.4b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.f64 g (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g)) (/.f64 -1/2 a))))
57.5b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (fma.f64 (+.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/4) (sqrt.f64 g)) (-.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/4) (sqrt.f64 g)) (fma.f64 (neg.f64 (cbrt.f64 g)) (pow.f64 (cbrt.f64 g) 2) g)))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
18.5b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g) g))) (cbrt.f64 (*.f64 (+.f64 g (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g)) (/.f64 -1/2 a))))
51.5b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 (/.f64 -1/2 a)) (cbrt.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))))
57.3b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (expm1.f64 (log1p.f64 (cbrt.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (/.f64 -1/2 a))))))
46.8b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (exp.f64 (*.f64 (cbrt.f64 (pow.f64 (log.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 3)) 1/2)) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
51.9b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g)) 3))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
54.6b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (exp.f64 (*.f64 (exp.f64 (log.f64 (log.f64 (-.f64 (*.f64 g g) (*.f64 h h))))) 1/2)) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
50.0b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (*.f64 g -2))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
49.6b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.f64 g g) (/.f64 -1/2 a))))
Compiler

Compiled 2564 to 1690 computations (34.1% saved)

localize46.0ms (0.4%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(*.f64 (+.f64 g (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g)) (/.f64 -1/2 a))
1.2b
(cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g) g)))
2.5b
(-.f64 (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g) g)
16.8b
(cbrt.f64 (*.f64 (+.f64 g (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g)) (/.f64 -1/2 a)))
Compiler

Compiled 139 to 60 computations (56.8% saved)

series17.0ms (0.1%)

Counts
3 → 60
Calls

24 calls:

TimeVariablePointExpression
2.0ms
g
@inf
(*.f64 (+.f64 g (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g)) (/.f64 -1/2 a))
1.0ms
a
@0
(*.f64 (+.f64 g (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g)) (/.f64 -1/2 a))
1.0ms
a
@inf
(*.f64 (+.f64 g (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g)) (/.f64 -1/2 a))
1.0ms
g
@-inf
(-.f64 (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g) g)
1.0ms
g
@inf
(-.f64 (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g) g)

rewrite99.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
923×prod-diff_binary64
302×expm1-udef_binary64
302×log1p-udef_binary64
184×add-sqr-sqrt_binary64
178×*-un-lft-identity_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01656
136356
2526956
Stop Event
node limit
Counts
3 → 124
Calls
Call 1
Inputs
(-.f64 (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g) g)
(cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g) g)))
(*.f64 (+.f64 g (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g)) (/.f64 -1/2 a))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) (neg.f64 g))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) (*.f64 (neg.f64 g) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) g) (fma.f64 (neg.f64 g) 1 g))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) g) (fma.f64 (neg.f64 (cbrt.f64 g)) (pow.f64 (cbrt.f64 g) 2) g))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) g) (fma.f64 (neg.f64 (sqrt.f64 g)) (sqrt.f64 g) g))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) g) (fma.f64 -1 g g))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) g) (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 g) 2)) (cbrt.f64 g) g))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 -1/2 (*.f64 h (/.f64 h g))) (-.f64 g g))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 -1/2 (*.f64 h (/.f64 h g))) (+.f64 g (neg.f64 g)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 g) (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) 1 (neg.f64 g)) (fma.f64 (neg.f64 g) 1 g))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) 1 (neg.f64 g)) (fma.f64 (neg.f64 (cbrt.f64 g)) (pow.f64 (cbrt.f64 g) 2) g))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) 1 (neg.f64 g)) (fma.f64 (neg.f64 (sqrt.f64 g)) (sqrt.f64 g) g))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) 1 (neg.f64 g)) (fma.f64 -1 g g))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) 1 (neg.f64 g)) (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 g) 2)) (cbrt.f64 g) g))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g)) (pow.f64 (cbrt.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g)) 2) (neg.f64 g)) (fma.f64 (neg.f64 g) 1 g))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g)) (pow.f64 (cbrt.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g)) 2) (neg.f64 g)) (fma.f64 (neg.f64 (cbrt.f64 g)) (pow.f64 (cbrt.f64 g) 2) g))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g)) (pow.f64 (cbrt.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g)) 2) (neg.f64 g)) (fma.f64 (neg.f64 (sqrt.f64 g)) (sqrt.f64 g) g))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g)) (pow.f64 (cbrt.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g)) 2) (neg.f64 g)) (fma.f64 -1 g g))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g)) (pow.f64 (cbrt.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g)) 2) (neg.f64 g)) (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 g) 2)) (cbrt.f64 g) g))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) g) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) g))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) g)) (pow.f64 (cbrt.f64 (-.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) g)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (-.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) g)) 2) (cbrt.f64 (-.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) g)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) g)) (sqrt.f64 (-.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) g)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) 3) (pow.f64 g 3)) (/.f64 1 (+.f64 (pow.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) 2) (*.f64 g (+.f64 g (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) 2) (*.f64 g g)) (/.f64 1 (+.f64 g (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g)) (sqrt.f64 g)) (-.f64 (sqrt.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g)) (sqrt.f64 g)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 (pow.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) 2) (*.f64 g g)) (+.f64 (pow.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) 3) (pow.f64 g 3))) (fma.f64 g g (*.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) (-.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) g))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 (pow.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) 2) (*.f64 g g)) (-.f64 (*.f64 g g) (pow.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) 2))) (-.f64 g (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (pow.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) 2) (*.f64 g (+.f64 g (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g)))) (-.f64 (pow.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) 3) (pow.f64 g 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 g (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g)) (-.f64 (pow.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) 2) (*.f64 g g))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) 3) (pow.f64 g 3)) (+.f64 (pow.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) 2) (*.f64 g (+.f64 g (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) 2) (*.f64 g g)) (+.f64 g (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) 3) (pow.f64 g 3))) (neg.f64 (+.f64 (pow.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) 2) (*.f64 g (+.f64 g (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) 2) (*.f64 g g))) (neg.f64 (+.f64 g (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) 3) (pow.f64 (neg.f64 g) 3)) (+.f64 (pow.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) 2) (-.f64 (*.f64 (neg.f64 g) (neg.f64 g)) (*.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) (neg.f64 g)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) 2) (*.f64 (neg.f64 g) (neg.f64 g))) (-.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) (neg.f64 g)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (-.f64 (pow.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) 2) (*.f64 g g)) 1) (+.f64 g (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (-.f64 (pow.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) 2) (*.f64 g g)) (pow.f64 (cbrt.f64 (+.f64 g (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g))) 2)) (cbrt.f64 (+.f64 g (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (-.f64 (pow.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) 2) (*.f64 g g)) (sqrt.f64 (+.f64 g (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g)))) (sqrt.f64 (+.f64 g (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) g) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) g) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (-.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) g)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (-.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) g)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (-.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) g) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (-.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) g)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (-.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) g))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (-.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) g) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (-.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) g)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (-.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) g)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (-.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) g)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (-.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) g)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) (neg.f64 g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g)) 2) (cbrt.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g)) (neg.f64 g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g)) (sqrt.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g)) (neg.f64 g))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (cbrt.f64 (*.f64 (-.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) g) (/.f64 -1/2 a))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (-.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) g) (/.f64 -1/2 a))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (cbrt.f64 (*.f64 (-.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) g) (/.f64 -1/2 a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 -1/2 a)) (cbrt.f64 (-.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) g)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) g)) (cbrt.f64 (/.f64 -1/2 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (*.f64 (-.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) g) (/.f64 -1/2 a)))) (cbrt.f64 (cbrt.f64 (pow.f64 (*.f64 (-.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) g) (/.f64 -1/2 a)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (pow.f64 (*.f64 (-.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) g) (/.f64 -1/2 a)) 2))) (cbrt.f64 (cbrt.f64 (*.f64 (-.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) g) (/.f64 -1/2 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (-.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) g) (/.f64 -1/2 a)) 1/6) (pow.f64 (*.f64 (-.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) g) (/.f64 -1/2 a)) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/3) (cbrt.f64 (*.f64 (-.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) g) (/.f64 -1/2 a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (pow.f64 (*.f64 (-.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) g) (/.f64 -1/2 a)) 2)) 1/3) (cbrt.f64 (cbrt.f64 (*.f64 (-.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) g) (/.f64 -1/2 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (*.f64 (-.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) g) (/.f64 -1/2 a))) 1/3) (pow.f64 (sqrt.f64 (*.f64 (-.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) g) (/.f64 -1/2 a))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (*.f64 (-.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) g) 1/2)) (cbrt.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (-.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) g) (/.f64 -1/2 a)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (-.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) g) (/.f64 -1/2 a))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 (-.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) g) (/.f64 -1/2 a)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (-.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) g) (/.f64 -1/2 a)) 1/6) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (cbrt.f64 (pow.f64 (*.f64 (-.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) g) (/.f64 -1/2 a)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (cbrt.f64 (*.f64 (-.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) g) (/.f64 -1/2 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (cbrt.f64 (*.f64 (-.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) g) (/.f64 -1/2 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (cbrt.f64 (*.f64 (-.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) g) (/.f64 -1/2 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (cbrt.f64 (*.f64 (-.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) g) (/.f64 -1/2 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (cbrt.f64 (*.f64 (-.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) g) (/.f64 -1/2 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (-.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) g) (/.f64 -1/2 a))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (-.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) g) (/.f64 -1/2 a)))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 g (/.f64 -1/2 a)) (*.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) (/.f64 -1/2 a)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) (/.f64 -1/2 a)) (*.f64 g (/.f64 -1/2 a)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (/.f64 -1/2 a) g) (*.f64 (/.f64 -1/2 a) (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (/.f64 -1/2 a) (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g)) (*.f64 (/.f64 -1/2 a) g))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (+.f64 g (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g)) (/.f64 -1/2 a)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 g (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g)) (*.f64 a 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 a (*.f64 -1/2 (+.f64 g (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) 3) (pow.f64 g 3)) (*.f64 (*.f64 a 2) (fma.f64 g g (*.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) (-.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) g)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 g g) (pow.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) 2)) (*.f64 (*.f64 a 2) (-.f64 g (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -1/2 (+.f64 g (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g))) a)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 -1/2 (+.f64 g (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g)))) (neg.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (pow.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) 3) (pow.f64 g 3)) -1/2) (*.f64 (fma.f64 g g (*.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) (-.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) g))) a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 g g) (pow.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) 2)) -1/2) (*.f64 (-.f64 g (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g)) a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (pow.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) 3) (pow.f64 g 3)) 1/2) (*.f64 (fma.f64 g g (*.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) (-.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) g))) (neg.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 g g) (pow.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) 2)) 1/2) (*.f64 (-.f64 g (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g)) (neg.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (pow.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) 3) (pow.f64 g 3)) 1) (*.f64 (fma.f64 g g (*.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) (-.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) g))) (*.f64 a 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 g g) (pow.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) 2)) 1) (*.f64 (-.f64 g (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g)) (*.f64 a 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -1/2 (+.f64 (pow.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) 3) (pow.f64 g 3))) (*.f64 a (fma.f64 g g (*.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) (-.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) g)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/2 (+.f64 (pow.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) 3) (pow.f64 g 3))) (*.f64 (neg.f64 a) (fma.f64 g g (*.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) (-.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) g)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -1/2 (-.f64 (*.f64 g g) (pow.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) 2))) (*.f64 a (-.f64 g (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/2 (-.f64 (*.f64 g g) (pow.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) 2))) (*.f64 (neg.f64 a) (-.f64 g (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 -1/2 (+.f64 g (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g))) 1) a)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 -1/2 (+.f64 g (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g))) (pow.f64 (cbrt.f64 a) 2)) (cbrt.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 -1/2 (+.f64 g (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g))) (sqrt.f64 a)) (sqrt.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (pow.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) 3) (pow.f64 g 3)) (/.f64 -1/2 a)) (fma.f64 g g (*.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) (-.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) g))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 g g) (pow.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) 2)) (/.f64 -1/2 a)) (-.f64 g (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/2 (+.f64 g (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g))) (neg.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 g (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g)) 1/2) (neg.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 -1/2 a) (+.f64 (pow.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) 3) (pow.f64 g 3))) (fma.f64 g g (*.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) (-.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) g))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 -1/2 a) (-.f64 (*.f64 g g) (pow.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) 2))) (-.f64 g (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (+.f64 g (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g)) (/.f64 -1/2 a)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (+.f64 g (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g)) (/.f64 -1/2 a)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (+.f64 g (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g)) (/.f64 -1/2 a))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (+.f64 g (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g)) (/.f64 -1/2 a))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (+.f64 g (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g)) (/.f64 -1/2 a)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (/.f64 -1/2 a)) (+.f64 g (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (+.f64 g (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g)) (/.f64 -1/2 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (+.f64 g (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g)) (/.f64 -1/2 a)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (+.f64 g (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g)) 3) (pow.f64 (/.f64 -1/2 a) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (/.f64 -1/2 a) 3) (pow.f64 (+.f64 g (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (+.f64 g (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g)) (/.f64 -1/2 a))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (+.f64 g (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g)) (/.f64 -1/2 a))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (+.f64 g (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g)) (/.f64 -1/2 a))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (+.f64 g (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g)) (/.f64 -1/2 a))) 1))))))

simplify81.0ms (0.7%)

Algorithm
egg-herbie
Rules
672×distribute-rgt-neg-in_binary64
611×distribute-lft-neg-in_binary64
581×fma-neg_binary64
474×distribute-neg-frac_binary64
453×cancel-sign-sub-inv_binary64
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
021867
147867
2114867
3259867
4844777
53832777
66982777
Stop Event
node limit
Counts
184 → 133
Calls
Call 1
Inputs
(*.f64 -1/2 (/.f64 (pow.f64 h 2) g))
(*.f64 -1/2 (/.f64 (pow.f64 h 2) g))
(*.f64 -1/2 (/.f64 (pow.f64 h 2) g))
(*.f64 -1/2 (/.f64 (pow.f64 h 2) g))
(*.f64 -1/2 (/.f64 (pow.f64 h 2) g))
(*.f64 -1/2 (/.f64 (pow.f64 h 2) g))
(*.f64 -1/2 (/.f64 (pow.f64 h 2) g))
(*.f64 -1/2 (/.f64 (pow.f64 h 2) g))
(*.f64 -1/2 (/.f64 (pow.f64 h 2) g))
(*.f64 -1/2 (/.f64 (pow.f64 h 2) g))
(*.f64 -1/2 (/.f64 (pow.f64 h 2) g))
(*.f64 -1/2 (/.f64 (pow.f64 h 2) g))
(*.f64 -1/2 (/.f64 (pow.f64 h 2) g))
(*.f64 -1/2 (/.f64 (pow.f64 h 2) g))
(*.f64 -1/2 (/.f64 (pow.f64 h 2) g))
(*.f64 -1/2 (/.f64 (pow.f64 h 2) g))
(*.f64 -1/2 (/.f64 (pow.f64 h 2) g))
(*.f64 -1/2 (/.f64 (pow.f64 h 2) g))
(*.f64 -1/2 (/.f64 (pow.f64 h 2) g))
(*.f64 -1/2 (/.f64 (pow.f64 h 2) g))
(*.f64 -1/2 (/.f64 (pow.f64 h 2) g))
(*.f64 -1/2 (/.f64 (pow.f64 h 2) g))
(*.f64 -1/2 (/.f64 (pow.f64 h 2) g))
(*.f64 -1/2 (/.f64 (pow.f64 h 2) g))
(*.f64 1/4 (/.f64 (pow.f64 h 2) (*.f64 a g)))
(+.f64 (*.f64 1/4 (/.f64 (pow.f64 h 2) (*.f64 a g))) (*.f64 -1 (/.f64 g a)))
(+.f64 (*.f64 1/4 (/.f64 (pow.f64 h 2) (*.f64 a g))) (*.f64 -1 (/.f64 g a)))
(+.f64 (*.f64 1/4 (/.f64 (pow.f64 h 2) (*.f64 a g))) (*.f64 -1 (/.f64 g a)))
(*.f64 -1 (/.f64 g a))
(+.f64 (*.f64 1/4 (/.f64 (pow.f64 h 2) (*.f64 a g))) (*.f64 -1 (/.f64 g a)))
(+.f64 (*.f64 1/4 (/.f64 (pow.f64 h 2) (*.f64 a g))) (*.f64 -1 (/.f64 g a)))
(+.f64 (*.f64 1/4 (/.f64 (pow.f64 h 2) (*.f64 a g))) (*.f64 -1 (/.f64 g a)))
(*.f64 -1 (/.f64 g a))
(+.f64 (*.f64 1/4 (/.f64 (pow.f64 h 2) (*.f64 a g))) (*.f64 -1 (/.f64 g a)))
(+.f64 (*.f64 1/4 (/.f64 (pow.f64 h 2) (*.f64 a g))) (*.f64 -1 (/.f64 g a)))
(+.f64 (*.f64 1/4 (/.f64 (pow.f64 h 2) (*.f64 a g))) (*.f64 -1 (/.f64 g a)))
(*.f64 -1 (/.f64 g a))
(+.f64 (*.f64 1/4 (/.f64 (pow.f64 h 2) (*.f64 a g))) (*.f64 -1 (/.f64 g a)))
(+.f64 (*.f64 1/4 (/.f64 (pow.f64 h 2) (*.f64 a g))) (*.f64 -1 (/.f64 g a)))
(+.f64 (*.f64 1/4 (/.f64 (pow.f64 h 2) (*.f64 a g))) (*.f64 -1 (/.f64 g a)))
(*.f64 1/4 (/.f64 (pow.f64 h 2) (*.f64 a g)))
(+.f64 (*.f64 1/4 (/.f64 (pow.f64 h 2) (*.f64 a g))) (*.f64 -1 (/.f64 g a)))
(+.f64 (*.f64 1/4 (/.f64 (pow.f64 h 2) (*.f64 a g))) (*.f64 -1 (/.f64 g a)))
(+.f64 (*.f64 1/4 (/.f64 (pow.f64 h 2) (*.f64 a g))) (*.f64 -1 (/.f64 g a)))
(*.f64 1/4 (/.f64 (pow.f64 h 2) (*.f64 a g)))
(+.f64 (*.f64 1/4 (/.f64 (pow.f64 h 2) (*.f64 a g))) (*.f64 -1 (/.f64 g a)))
(+.f64 (*.f64 1/4 (/.f64 (pow.f64 h 2) (*.f64 a g))) (*.f64 -1 (/.f64 g a)))
(+.f64 (*.f64 1/4 (/.f64 (pow.f64 h 2) (*.f64 a g))) (*.f64 -1 (/.f64 g a)))
(*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 2 g)) a))
(*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 2 g)) a))
(*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 2 g)) a))
(*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 2 g)) a))
(*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 2 g)) a))
(*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 2 g)) a))
(*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 2 g)) a))
(*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 2 g)) a))
(*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 2 g)) a))
(*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 2 g)) a))
(*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 2 g)) a))
(*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 2 g)) a))
Outputs
(*.f64 -1/2 (/.f64 (pow.f64 h 2) g))
(*.f64 -1/2 (/.f64 (*.f64 h h) g))
(/.f64 (*.f64 (*.f64 -1/2 h) h) g)
(*.f64 (/.f64 h g) (*.f64 -1/2 h))
(*.f64 -1/2 (*.f64 h (/.f64 h g)))
(*.f64 -1/2 (/.f64 (pow.f64 h 2) g))
(*.f64 -1/2 (/.f64 (*.f64 h h) g))
(/.f64 (*.f64 (*.f64 -1/2 h) h) g)
(*.f64 (/.f64 h g) (*.f64 -1/2 h))
(*.f64 -1/2 (*.f64 h (/.f64 h g)))
(*.f64 -1/2 (/.f64 (pow.f64 h 2) g))
(*.f64 -1/2 (/.f64 (*.f64 h h) g))
(/.f64 (*.f64 (*.f64 -1/2 h) h) g)
(*.f64 (/.f64 h g) (*.f64 -1/2 h))
(*.f64 -1/2 (*.f64 h (/.f64 h g)))
(*.f64 -1/2 (/.f64 (pow.f64 h 2) g))
(*.f64 -1/2 (/.f64 (*.f64 h h) g))
(/.f64 (*.f64 (*.f64 -1/2 h) h) g)
(*.f64 (/.f64 h g) (*.f64 -1/2 h))
(*.f64 -1/2 (*.f64 h (/.f64 h g)))
(*.f64 -1/2 (/.f64 (pow.f64 h 2) g))
(*.f64 -1/2 (/.f64 (*.f64 h h) g))
(/.f64 (*.f64 (*.f64 -1/2 h) h) g)
(*.f64 (/.f64 h g) (*.f64 -1/2 h))
(*.f64 -1/2 (*.f64 h (/.f64 h g)))
(*.f64 -1/2 (/.f64 (pow.f64 h 2) g))
(*.f64 -1/2 (/.f64 (*.f64 h h) g))
(/.f64 (*.f64 (*.f64 -1/2 h) h) g)
(*.f64 (/.f64 h g) (*.f64 -1/2 h))
(*.f64 -1/2 (*.f64 h (/.f64 h g)))
(*.f64 -1/2 (/.f64 (pow.f64 h 2) g))
(*.f64 -1/2 (/.f64 (*.f64 h h) g))
(/.f64 (*.f64 (*.f64 -1/2 h) h) g)
(*.f64 (/.f64 h g) (*.f64 -1/2 h))
(*.f64 -1/2 (*.f64 h (/.f64 h g)))
(*.f64 -1/2 (/.f64 (pow.f64 h 2) g))
(*.f64 -1/2 (/.f64 (*.f64 h h) g))
(/.f64 (*.f64 (*.f64 -1/2 h) h) g)
(*.f64 (/.f64 h g) (*.f64 -1/2 h))
(*.f64 -1/2 (*.f64 h (/.f64 h g)))
(*.f64 -1/2 (/.f64 (pow.f64 h 2) g))
(*.f64 -1/2 (/.f64 (*.f64 h h) g))
(/.f64 (*.f64 (*.f64 -1/2 h) h) g)
(*.f64 (/.f64 h g) (*.f64 -1/2 h))
(*.f64 -1/2 (*.f64 h (/.f64 h g)))
(*.f64 -1/2 (/.f64 (pow.f64 h 2) g))
(*.f64 -1/2 (/.f64 (*.f64 h h) g))
(/.f64 (*.f64 (*.f64 -1/2 h) h) g)
(*.f64 (/.f64 h g) (*.f64 -1/2 h))
(*.f64 -1/2 (*.f64 h (/.f64 h g)))
(*.f64 -1/2 (/.f64 (pow.f64 h 2) g))
(*.f64 -1/2 (/.f64 (*.f64 h h) g))
(/.f64 (*.f64 (*.f64 -1/2 h) h) g)
(*.f64 (/.f64 h g) (*.f64 -1/2 h))
(*.f64 -1/2 (*.f64 h (/.f64 h g)))
(*.f64 -1/2 (/.f64 (pow.f64 h 2) g))
(*.f64 -1/2 (/.f64 (*.f64 h h) g))
(/.f64 (*.f64 (*.f64 -1/2 h) h) g)
(*.f64 (/.f64 h g) (*.f64 -1/2 h))
(*.f64 -1/2 (*.f64 h (/.f64 h g)))
(*.f64 -1/2 (/.f64 (pow.f64 h 2) g))
(*.f64 -1/2 (/.f64 (*.f64 h h) g))
(/.f64 (*.f64 (*.f64 -1/2 h) h) g)
(*.f64 (/.f64 h g) (*.f64 -1/2 h))
(*.f64 -1/2 (*.f64 h (/.f64 h g)))
(*.f64 -1/2 (/.f64 (pow.f64 h 2) g))
(*.f64 -1/2 (/.f64 (*.f64 h h) g))
(/.f64 (*.f64 (*.f64 -1/2 h) h) g)
(*.f64 (/.f64 h g) (*.f64 -1/2 h))
(*.f64 -1/2 (*.f64 h (/.f64 h g)))
(*.f64 -1/2 (/.f64 (pow.f64 h 2) g))
(*.f64 -1/2 (/.f64 (*.f64 h h) g))
(/.f64 (*.f64 (*.f64 -1/2 h) h) g)
(*.f64 (/.f64 h g) (*.f64 -1/2 h))
(*.f64 -1/2 (*.f64 h (/.f64 h g)))
(*.f64 -1/2 (/.f64 (pow.f64 h 2) g))
(*.f64 -1/2 (/.f64 (*.f64 h h) g))
(/.f64 (*.f64 (*.f64 -1/2 h) h) g)
(*.f64 (/.f64 h g) (*.f64 -1/2 h))
(*.f64 -1/2 (*.f64 h (/.f64 h g)))
(*.f64 -1/2 (/.f64 (pow.f64 h 2) g))
(*.f64 -1/2 (/.f64 (*.f64 h h) g))
(/.f64 (*.f64 (*.f64 -1/2 h) h) g)
(*.f64 (/.f64 h g) (*.f64 -1/2 h))
(*.f64 -1/2 (*.f64 h (/.f64 h g)))
(*.f64 -1/2 (/.f64 (pow.f64 h 2) g))
(*.f64 -1/2 (/.f64 (*.f64 h h) g))
(/.f64 (*.f64 (*.f64 -1/2 h) h) g)
(*.f64 (/.f64 h g) (*.f64 -1/2 h))
(*.f64 -1/2 (*.f64 h (/.f64 h g)))
(*.f64 -1/2 (/.f64 (pow.f64 h 2) g))
(*.f64 -1/2 (/.f64 (*.f64 h h) g))
(/.f64 (*.f64 (*.f64 -1/2 h) h) g)
(*.f64 (/.f64 h g) (*.f64 -1/2 h))
(*.f64 -1/2 (*.f64 h (/.f64 h g)))
(*.f64 -1/2 (/.f64 (pow.f64 h 2) g))
(*.f64 -1/2 (/.f64 (*.f64 h h) g))
(/.f64 (*.f64 (*.f64 -1/2 h) h) g)
(*.f64 (/.f64 h g) (*.f64 -1/2 h))
(*.f64 -1/2 (*.f64 h (/.f64 h g)))
(*.f64 -1/2 (/.f64 (pow.f64 h 2) g))
(*.f64 -1/2 (/.f64 (*.f64 h h) g))
(/.f64 (*.f64 (*.f64 -1/2 h) h) g)
(*.f64 (/.f64 h g) (*.f64 -1/2 h))
(*.f64 -1/2 (*.f64 h (/.f64 h g)))
(*.f64 -1/2 (/.f64 (pow.f64 h 2) g))
(*.f64 -1/2 (/.f64 (*.f64 h h) g))
(/.f64 (*.f64 (*.f64 -1/2 h) h) g)
(*.f64 (/.f64 h g) (*.f64 -1/2 h))
(*.f64 -1/2 (*.f64 h (/.f64 h g)))
(*.f64 -1/2 (/.f64 (pow.f64 h 2) g))
(*.f64 -1/2 (/.f64 (*.f64 h h) g))
(/.f64 (*.f64 (*.f64 -1/2 h) h) g)
(*.f64 (/.f64 h g) (*.f64 -1/2 h))
(*.f64 -1/2 (*.f64 h (/.f64 h g)))
(*.f64 -1/2 (/.f64 (pow.f64 h 2) g))
(*.f64 -1/2 (/.f64 (*.f64 h h) g))
(/.f64 (*.f64 (*.f64 -1/2 h) h) g)
(*.f64 (/.f64 h g) (*.f64 -1/2 h))
(*.f64 -1/2 (*.f64 h (/.f64 h g)))
(*.f64 1/4 (/.f64 (pow.f64 h 2) (*.f64 a g)))
(*.f64 1/4 (/.f64 (*.f64 h h) (*.f64 g a)))
(*.f64 1/4 (*.f64 (/.f64 h g) (/.f64 h a)))
(*.f64 (/.f64 (*.f64 h h) g) (/.f64 1/4 a))
(*.f64 (*.f64 h h) (/.f64 (/.f64 1/4 g) a))
(*.f64 h (*.f64 h (/.f64 (/.f64 1/4 g) a)))
(+.f64 (*.f64 1/4 (/.f64 (pow.f64 h 2) (*.f64 a g))) (*.f64 -1 (/.f64 g a)))
(fma.f64 1/4 (/.f64 (*.f64 h h) (*.f64 g a)) (neg.f64 (/.f64 g a)))
(-.f64 (*.f64 1/4 (*.f64 (/.f64 h g) (/.f64 h a))) (/.f64 g a))
(fma.f64 (/.f64 1/4 g) (/.f64 h (/.f64 a h)) (/.f64 (neg.f64 g) a))
(-.f64 (*.f64 (*.f64 h h) (/.f64 (/.f64 1/4 g) a)) (/.f64 g a))
(/.f64 (-.f64 (*.f64 (*.f64 h (/.f64 h g)) 1/4) g) a)
(+.f64 (*.f64 1/4 (/.f64 (pow.f64 h 2) (*.f64 a g))) (*.f64 -1 (/.f64 g a)))
(fma.f64 1/4 (/.f64 (*.f64 h h) (*.f64 g a)) (neg.f64 (/.f64 g a)))
(-.f64 (*.f64 1/4 (*.f64 (/.f64 h g) (/.f64 h a))) (/.f64 g a))
(fma.f64 (/.f64 1/4 g) (/.f64 h (/.f64 a h)) (/.f64 (neg.f64 g) a))
(-.f64 (*.f64 (*.f64 h h) (/.f64 (/.f64 1/4 g) a)) (/.f64 g a))
(/.f64 (-.f64 (*.f64 (*.f64 h (/.f64 h g)) 1/4) g) a)
(+.f64 (*.f64 1/4 (/.f64 (pow.f64 h 2) (*.f64 a g))) (*.f64 -1 (/.f64 g a)))
(fma.f64 1/4 (/.f64 (*.f64 h h) (*.f64 g a)) (neg.f64 (/.f64 g a)))
(-.f64 (*.f64 1/4 (*.f64 (/.f64 h g) (/.f64 h a))) (/.f64 g a))
(fma.f64 (/.f64 1/4 g) (/.f64 h (/.f64 a h)) (/.f64 (neg.f64 g) a))
(-.f64 (*.f64 (*.f64 h h) (/.f64 (/.f64 1/4 g) a)) (/.f64 g a))
(/.f64 (-.f64 (*.f64 (*.f64 h (/.f64 h g)) 1/4) g) a)
(*.f64 -1 (/.f64 g a))
(neg.f64 (/.f64 g a))
(/.f64 (neg.f64 g) a)
(+.f64 (*.f64 1/4 (/.f64 (pow.f64 h 2) (*.f64 a g))) (*.f64 -1 (/.f64 g a)))
(fma.f64 1/4 (/.f64 (*.f64 h h) (*.f64 g a)) (neg.f64 (/.f64 g a)))
(-.f64 (*.f64 1/4 (*.f64 (/.f64 h g) (/.f64 h a))) (/.f64 g a))
(fma.f64 (/.f64 1/4 g) (/.f64 h (/.f64 a h)) (/.f64 (neg.f64 g) a))
(-.f64 (*.f64 (*.f64 h h) (/.f64 (/.f64 1/4 g) a)) (/.f64 g a))
(/.f64 (-.f64 (*.f64 (*.f64 h (/.f64 h g)) 1/4) g) a)
(+.f64 (*.f64 1/4 (/.f64 (pow.f64 h 2) (*.f64 a g))) (*.f64 -1 (/.f64 g a)))
(fma.f64 1/4 (/.f64 (*.f64 h h) (*.f64 g a)) (neg.f64 (/.f64 g a)))
(-.f64 (*.f64 1/4 (*.f64 (/.f64 h g) (/.f64 h a))) (/.f64 g a))
(fma.f64 (/.f64 1/4 g) (/.f64 h (/.f64 a h)) (/.f64 (neg.f64 g) a))
(-.f64 (*.f64 (*.f64 h h) (/.f64 (/.f64 1/4 g) a)) (/.f64 g a))
(/.f64 (-.f64 (*.f64 (*.f64 h (/.f64 h g)) 1/4) g) a)
(+.f64 (*.f64 1/4 (/.f64 (pow.f64 h 2) (*.f64 a g))) (*.f64 -1 (/.f64 g a)))
(fma.f64 1/4 (/.f64 (*.f64 h h) (*.f64 g a)) (neg.f64 (/.f64 g a)))
(-.f64 (*.f64 1/4 (*.f64 (/.f64 h g) (/.f64 h a))) (/.f64 g a))
(fma.f64 (/.f64 1/4 g) (/.f64 h (/.f64 a h)) (/.f64 (neg.f64 g) a))
(-.f64 (*.f64 (*.f64 h h) (/.f64 (/.f64 1/4 g) a)) (/.f64 g a))
(/.f64 (-.f64 (*.f64 (*.f64 h (/.f64 h g)) 1/4) g) a)
(*.f64 -1 (/.f64 g a))
(neg.f64 (/.f64 g a))
(/.f64 (neg.f64 g) a)
(+.f64 (*.f64 1/4 (/.f64 (pow.f64 h 2) (*.f64 a g))) (*.f64 -1 (/.f64 g a)))
(fma.f64 1/4 (/.f64 (*.f64 h h) (*.f64 g a)) (neg.f64 (/.f64 g a)))
(-.f64 (*.f64 1/4 (*.f64 (/.f64 h g) (/.f64 h a))) (/.f64 g a))
(fma.f64 (/.f64 1/4 g) (/.f64 h (/.f64 a h)) (/.f64 (neg.f64 g) a))
(-.f64 (*.f64 (*.f64 h h) (/.f64 (/.f64 1/4 g) a)) (/.f64 g a))
(/.f64 (-.f64 (*.f64 (*.f64 h (/.f64 h g)) 1/4) g) a)
(+.f64 (*.f64 1/4 (/.f64 (pow.f64 h 2) (*.f64 a g))) (*.f64 -1 (/.f64 g a)))
(fma.f64 1/4 (/.f64 (*.f64 h h) (*.f64 g a)) (neg.f64 (/.f64 g a)))
(-.f64 (*.f64 1/4 (*.f64 (/.f64 h g) (/.f64 h a))) (/.f64 g a))
(fma.f64 (/.f64 1/4 g) (/.f64 h (/.f64 a h)) (/.f64 (neg.f64 g) a))
(-.f64 (*.f64 (*.f64 h h) (/.f64 (/.f64 1/4 g) a)) (/.f64 g a))
(/.f64 (-.f64 (*.f64 (*.f64 h (/.f64 h g)) 1/4) g) a)
(+.f64 (*.f64 1/4 (/.f64 (pow.f64 h 2) (*.f64 a g))) (*.f64 -1 (/.f64 g a)))
(fma.f64 1/4 (/.f64 (*.f64 h h) (*.f64 g a)) (neg.f64 (/.f64 g a)))
(-.f64 (*.f64 1/4 (*.f64 (/.f64 h g) (/.f64 h a))) (/.f64 g a))
(fma.f64 (/.f64 1/4 g) (/.f64 h (/.f64 a h)) (/.f64 (neg.f64 g) a))
(-.f64 (*.f64 (*.f64 h h) (/.f64 (/.f64 1/4 g) a)) (/.f64 g a))
(/.f64 (-.f64 (*.f64 (*.f64 h (/.f64 h g)) 1/4) g) a)
(*.f64 -1 (/.f64 g a))
(neg.f64 (/.f64 g a))
(/.f64 (neg.f64 g) a)
(+.f64 (*.f64 1/4 (/.f64 (pow.f64 h 2) (*.f64 a g))) (*.f64 -1 (/.f64 g a)))
(fma.f64 1/4 (/.f64 (*.f64 h h) (*.f64 g a)) (neg.f64 (/.f64 g a)))
(-.f64 (*.f64 1/4 (*.f64 (/.f64 h g) (/.f64 h a))) (/.f64 g a))
(fma.f64 (/.f64 1/4 g) (/.f64 h (/.f64 a h)) (/.f64 (neg.f64 g) a))
(-.f64 (*.f64 (*.f64 h h) (/.f64 (/.f64 1/4 g) a)) (/.f64 g a))
(/.f64 (-.f64 (*.f64 (*.f64 h (/.f64 h g)) 1/4) g) a)
(+.f64 (*.f64 1/4 (/.f64 (pow.f64 h 2) (*.f64 a g))) (*.f64 -1 (/.f64 g a)))
(fma.f64 1/4 (/.f64 (*.f64 h h) (*.f64 g a)) (neg.f64 (/.f64 g a)))
(-.f64 (*.f64 1/4 (*.f64 (/.f64 h g) (/.f64 h a))) (/.f64 g a))
(fma.f64 (/.f64 1/4 g) (/.f64 h (/.f64 a h)) (/.f64 (neg.f64 g) a))
(-.f64 (*.f64 (*.f64 h h) (/.f64 (/.f64 1/4 g) a)) (/.f64 g a))
(/.f64 (-.f64 (*.f64 (*.f64 h (/.f64 h g)) 1/4) g) a)
(+.f64 (*.f64 1/4 (/.f64 (pow.f64 h 2) (*.f64 a g))) (*.f64 -1 (/.f64 g a)))
(fma.f64 1/4 (/.f64 (*.f64 h h) (*.f64 g a)) (neg.f64 (/.f64 g a)))
(-.f64 (*.f64 1/4 (*.f64 (/.f64 h g) (/.f64 h a))) (/.f64 g a))
(fma.f64 (/.f64 1/4 g) (/.f64 h (/.f64 a h)) (/.f64 (neg.f64 g) a))
(-.f64 (*.f64 (*.f64 h h) (/.f64 (/.f64 1/4 g) a)) (/.f64 g a))
(/.f64 (-.f64 (*.f64 (*.f64 h (/.f64 h g)) 1/4) g) a)
(*.f64 1/4 (/.f64 (pow.f64 h 2) (*.f64 a g)))
(*.f64 1/4 (/.f64 (*.f64 h h) (*.f64 g a)))
(*.f64 1/4 (*.f64 (/.f64 h g) (/.f64 h a)))
(*.f64 (/.f64 (*.f64 h h) g) (/.f64 1/4 a))
(*.f64 (*.f64 h h) (/.f64 (/.f64 1/4 g) a))
(*.f64 h (*.f64 h (/.f64 (/.f64 1/4 g) a)))
(+.f64 (*.f64 1/4 (/.f64 (pow.f64 h 2) (*.f64 a g))) (*.f64 -1 (/.f64 g a)))
(fma.f64 1/4 (/.f64 (*.f64 h h) (*.f64 g a)) (neg.f64 (/.f64 g a)))
(-.f64 (*.f64 1/4 (*.f64 (/.f64 h g) (/.f64 h a))) (/.f64 g a))
(fma.f64 (/.f64 1/4 g) (/.f64 h (/.f64 a h)) (/.f64 (neg.f64 g) a))
(-.f64 (*.f64 (*.f64 h h) (/.f64 (/.f64 1/4 g) a)) (/.f64 g a))
(/.f64 (-.f64 (*.f64 (*.f64 h (/.f64 h g)) 1/4) g) a)
(+.f64 (*.f64 1/4 (/.f64 (pow.f64 h 2) (*.f64 a g))) (*.f64 -1 (/.f64 g a)))
(fma.f64 1/4 (/.f64 (*.f64 h h) (*.f64 g a)) (neg.f64 (/.f64 g a)))
(-.f64 (*.f64 1/4 (*.f64 (/.f64 h g) (/.f64 h a))) (/.f64 g a))
(fma.f64 (/.f64 1/4 g) (/.f64 h (/.f64 a h)) (/.f64 (neg.f64 g) a))
(-.f64 (*.f64 (*.f64 h h) (/.f64 (/.f64 1/4 g) a)) (/.f64 g a))
(/.f64 (-.f64 (*.f64 (*.f64 h (/.f64 h g)) 1/4) g) a)
(+.f64 (*.f64 1/4 (/.f64 (pow.f64 h 2) (*.f64 a g))) (*.f64 -1 (/.f64 g a)))
(fma.f64 1/4 (/.f64 (*.f64 h h) (*.f64 g a)) (neg.f64 (/.f64 g a)))
(-.f64 (*.f64 1/4 (*.f64 (/.f64 h g) (/.f64 h a))) (/.f64 g a))
(fma.f64 (/.f64 1/4 g) (/.f64 h (/.f64 a h)) (/.f64 (neg.f64 g) a))
(-.f64 (*.f64 (*.f64 h h) (/.f64 (/.f64 1/4 g) a)) (/.f64 g a))
(/.f64 (-.f64 (*.f64 (*.f64 h (/.f64 h g)) 1/4) g) a)
(*.f64 1/4 (/.f64 (pow.f64 h 2) (*.f64 a g)))
(*.f64 1/4 (/.f64 (*.f64 h h) (*.f64 g a)))
(*.f64 1/4 (*.f64 (/.f64 h g) (/.f64 h a)))
(*.f64 (/.f64 (*.f64 h h) g) (/.f64 1/4 a))
(*.f64 (*.f64 h h) (/.f64 (/.f64 1/4 g) a))
(*.f64 h (*.f64 h (/.f64 (/.f64 1/4 g) a)))
(+.f64 (*.f64 1/4 (/.f64 (pow.f64 h 2) (*.f64 a g))) (*.f64 -1 (/.f64 g a)))
(fma.f64 1/4 (/.f64 (*.f64 h h) (*.f64 g a)) (neg.f64 (/.f64 g a)))
(-.f64 (*.f64 1/4 (*.f64 (/.f64 h g) (/.f64 h a))) (/.f64 g a))
(fma.f64 (/.f64 1/4 g) (/.f64 h (/.f64 a h)) (/.f64 (neg.f64 g) a))
(-.f64 (*.f64 (*.f64 h h) (/.f64 (/.f64 1/4 g) a)) (/.f64 g a))
(/.f64 (-.f64 (*.f64 (*.f64 h (/.f64 h g)) 1/4) g) a)
(+.f64 (*.f64 1/4 (/.f64 (pow.f64 h 2) (*.f64 a g))) (*.f64 -1 (/.f64 g a)))
(fma.f64 1/4 (/.f64 (*.f64 h h) (*.f64 g a)) (neg.f64 (/.f64 g a)))
(-.f64 (*.f64 1/4 (*.f64 (/.f64 h g) (/.f64 h a))) (/.f64 g a))
(fma.f64 (/.f64 1/4 g) (/.f64 h (/.f64 a h)) (/.f64 (neg.f64 g) a))
(-.f64 (*.f64 (*.f64 h h) (/.f64 (/.f64 1/4 g) a)) (/.f64 g a))
(/.f64 (-.f64 (*.f64 (*.f64 h (/.f64 h g)) 1/4) g) a)
(+.f64 (*.f64 1/4 (/.f64 (pow.f64 h 2) (*.f64 a g))) (*.f64 -1 (/.f64 g a)))
(fma.f64 1/4 (/.f64 (*.f64 h h) (*.f64 g a)) (neg.f64 (/.f64 g a)))
(-.f64 (*.f64 1/4 (*.f64 (/.f64 h g) (/.f64 h a))) (/.f64 g a))
(fma.f64 (/.f64 1/4 g) (/.f64 h (/.f64 a h)) (/.f64 (neg.f64 g) a))
(-.f64 (*.f64 (*.f64 h h) (/.f64 (/.f64 1/4 g) a)) (/.f64 g a))
(/.f64 (-.f64 (*.f64 (*.f64 h (/.f64 h g)) 1/4) g) a)
(*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 2 g)) a))
(fma.f64 1/4 (/.f64 (*.f64 h h) (*.f64 g a)) (neg.f64 (/.f64 g a)))
(-.f64 (*.f64 1/4 (*.f64 (/.f64 h g) (/.f64 h a))) (/.f64 g a))
(fma.f64 (/.f64 1/4 g) (/.f64 h (/.f64 a h)) (/.f64 (neg.f64 g) a))
(-.f64 (*.f64 (*.f64 h h) (/.f64 (/.f64 1/4 g) a)) (/.f64 g a))
(/.f64 (-.f64 (*.f64 (*.f64 h (/.f64 h g)) 1/4) g) a)
(*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 2 g)) a))
(fma.f64 1/4 (/.f64 (*.f64 h h) (*.f64 g a)) (neg.f64 (/.f64 g a)))
(-.f64 (*.f64 1/4 (*.f64 (/.f64 h g) (/.f64 h a))) (/.f64 g a))
(fma.f64 (/.f64 1/4 g) (/.f64 h (/.f64 a h)) (/.f64 (neg.f64 g) a))
(-.f64 (*.f64 (*.f64 h h) (/.f64 (/.f64 1/4 g) a)) (/.f64 g a))
(/.f64 (-.f64 (*.f64 (*.f64 h (/.f64 h g)) 1/4) g) a)
(*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 2 g)) a))
(fma.f64 1/4 (/.f64 (*.f64 h h) (*.f64 g a)) (neg.f64 (/.f64 g a)))
(-.f64 (*.f64 1/4 (*.f64 (/.f64 h g) (/.f64 h a))) (/.f64 g a))
(fma.f64 (/.f64 1/4 g) (/.f64 h (/.f64 a h)) (/.f64 (neg.f64 g) a))
(-.f64 (*.f64 (*.f64 h h) (/.f64 (/.f64 1/4 g) a)) (/.f64 g a))
(/.f64 (-.f64 (*.f64 (*.f64 h (/.f64 h g)) 1/4) g) a)
(*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 2 g)) a))
(fma.f64 1/4 (/.f64 (*.f64 h h) (*.f64 g a)) (neg.f64 (/.f64 g a)))
(-.f64 (*.f64 1/4 (*.f64 (/.f64 h g) (/.f64 h a))) (/.f64 g a))
(fma.f64 (/.f64 1/4 g) (/.f64 h (/.f64 a h)) (/.f64 (neg.f64 g) a))
(-.f64 (*.f64 (*.f64 h h) (/.f64 (/.f64 1/4 g) a)) (/.f64 g a))
(/.f64 (-.f64 (*.f64 (*.f64 h (/.f64 h g)) 1/4) g) a)
(*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 2 g)) a))
(fma.f64 1/4 (/.f64 (*.f64 h h) (*.f64 g a)) (neg.f64 (/.f64 g a)))
(-.f64 (*.f64 1/4 (*.f64 (/.f64 h g) (/.f64 h a))) (/.f64 g a))
(fma.f64 (/.f64 1/4 g) (/.f64 h (/.f64 a h)) (/.f64 (neg.f64 g) a))
(-.f64 (*.f64 (*.f64 h h) (/.f64 (/.f64 1/4 g) a)) (/.f64 g a))
(/.f64 (-.f64 (*.f64 (*.f64 h (/.f64 h g)) 1/4) g) a)
(*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 2 g)) a))
(fma.f64 1/4 (/.f64 (*.f64 h h) (*.f64 g a)) (neg.f64 (/.f64 g a)))
(-.f64 (*.f64 1/4 (*.f64 (/.f64 h g) (/.f64 h a))) (/.f64 g a))
(fma.f64 (/.f64 1/4 g) (/.f64 h (/.f64 a h)) (/.f64 (neg.f64 g) a))
(-.f64 (*.f64 (*.f64 h h) (/.f64 (/.f64 1/4 g) a)) (/.f64 g a))
(/.f64 (-.f64 (*.f64 (*.f64 h (/.f64 h g)) 1/4) g) a)
(*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 2 g)) a))
(fma.f64 1/4 (/.f64 (*.f64 h h) (*.f64 g a)) (neg.f64 (/.f64 g a)))
(-.f64 (*.f64 1/4 (*.f64 (/.f64 h g) (/.f64 h a))) (/.f64 g a))
(fma.f64 (/.f64 1/4 g) (/.f64 h (/.f64 a h)) (/.f64 (neg.f64 g) a))
(-.f64 (*.f64 (*.f64 h h) (/.f64 (/.f64 1/4 g) a)) (/.f64 g a))
(/.f64 (-.f64 (*.f64 (*.f64 h (/.f64 h g)) 1/4) g) a)
(*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 2 g)) a))
(fma.f64 1/4 (/.f64 (*.f64 h h) (*.f64 g a)) (neg.f64 (/.f64 g a)))
(-.f64 (*.f64 1/4 (*.f64 (/.f64 h g) (/.f64 h a))) (/.f64 g a))
(fma.f64 (/.f64 1/4 g) (/.f64 h (/.f64 a h)) (/.f64 (neg.f64 g) a))
(-.f64 (*.f64 (*.f64 h h) (/.f64 (/.f64 1/4 g) a)) (/.f64 g a))
(/.f64 (-.f64 (*.f64 (*.f64 h (/.f64 h g)) 1/4) g) a)
(*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 2 g)) a))
(fma.f64 1/4 (/.f64 (*.f64 h h) (*.f64 g a)) (neg.f64 (/.f64 g a)))
(-.f64 (*.f64 1/4 (*.f64 (/.f64 h g) (/.f64 h a))) (/.f64 g a))
(fma.f64 (/.f64 1/4 g) (/.f64 h (/.f64 a h)) (/.f64 (neg.f64 g) a))
(-.f64 (*.f64 (*.f64 h h) (/.f64 (/.f64 1/4 g) a)) (/.f64 g a))
(/.f64 (-.f64 (*.f64 (*.f64 h (/.f64 h g)) 1/4) g) a)
(*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 2 g)) a))
(fma.f64 1/4 (/.f64 (*.f64 h h) (*.f64 g a)) (neg.f64 (/.f64 g a)))
(-.f64 (*.f64 1/4 (*.f64 (/.f64 h g) (/.f64 h a))) (/.f64 g a))
(fma.f64 (/.f64 1/4 g) (/.f64 h (/.f64 a h)) (/.f64 (neg.f64 g) a))
(-.f64 (*.f64 (*.f64 h h) (/.f64 (/.f64 1/4 g) a)) (/.f64 g a))
(/.f64 (-.f64 (*.f64 (*.f64 h (/.f64 h g)) 1/4) g) a)
(*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 2 g)) a))
(fma.f64 1/4 (/.f64 (*.f64 h h) (*.f64 g a)) (neg.f64 (/.f64 g a)))
(-.f64 (*.f64 1/4 (*.f64 (/.f64 h g) (/.f64 h a))) (/.f64 g a))
(fma.f64 (/.f64 1/4 g) (/.f64 h (/.f64 a h)) (/.f64 (neg.f64 g) a))
(-.f64 (*.f64 (*.f64 h h) (/.f64 (/.f64 1/4 g) a)) (/.f64 g a))
(/.f64 (-.f64 (*.f64 (*.f64 h (/.f64 h g)) 1/4) g) a)
(*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 2 g)) a))
(fma.f64 1/4 (/.f64 (*.f64 h h) (*.f64 g a)) (neg.f64 (/.f64 g a)))
(-.f64 (*.f64 1/4 (*.f64 (/.f64 h g) (/.f64 h a))) (/.f64 g a))
(fma.f64 (/.f64 1/4 g) (/.f64 h (/.f64 a h)) (/.f64 (neg.f64 g) a))
(-.f64 (*.f64 (*.f64 h h) (/.f64 (/.f64 1/4 g) a)) (/.f64 g a))
(/.f64 (-.f64 (*.f64 (*.f64 h (/.f64 h g)) 1/4) g) a)

localize25.0ms (0.2%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.2b
(*.f64 (+.f64 g g) (/.f64 -1/2 a))
16.8b
(cbrt.f64 (*.f64 (+.f64 g g) (/.f64 -1/2 a)))
Compiler

Compiled 66 to 34 computations (48.5% saved)

series8.0ms (0.1%)

Counts
2 → 24
Calls

12 calls:

TimeVariablePointExpression
2.0ms
g
@0
(cbrt.f64 (*.f64 (+.f64 g g) (/.f64 -1/2 a)))
1.0ms
g
@inf
(cbrt.f64 (*.f64 (+.f64 g g) (/.f64 -1/2 a)))
1.0ms
g
@inf
(*.f64 (+.f64 g g) (/.f64 -1/2 a))
1.0ms
a
@inf
(*.f64 (+.f64 g g) (/.f64 -1/2 a))
1.0ms
g
@0
(*.f64 (+.f64 g g) (/.f64 -1/2 a))

rewrite63.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
825×pow1_binary64
776×add-log-exp_binary64
774×log1p-expm1-u_binary64
774×expm1-log1p-u_binary64
760×add-exp-log_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0822
117616
2242816
Stop Event
node limit
Counts
2 → 61
Calls
Call 1
Inputs
(cbrt.f64 (*.f64 (+.f64 g g) (/.f64 -1/2 a)))
(*.f64 (+.f64 g g) (/.f64 -1/2 a))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (/.f64 (+.f64 g g) (cbrt.f64 a))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 g g) (cbrt.f64 (/.f64 -1/2 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 g g) (cbrt.f64 a)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (+.f64 g g) (cbrt.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (+.f64 g g) (cbrt.f64 a))) (pow.f64 (cbrt.f64 (/.f64 (+.f64 g g) (cbrt.f64 a))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (+.f64 g g) (cbrt.f64 a))) 2) (cbrt.f64 (/.f64 (+.f64 g g) (cbrt.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 -1/2 a)) (+.f64 g g))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 (+.f64 g g) a) 1/6) (pow.f64 (/.f64 (+.f64 g g) a) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/3) (/.f64 (+.f64 g g) (cbrt.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (/.f64 (+.f64 g g) (cbrt.f64 a)) 2) 1/3) (cbrt.f64 (/.f64 (+.f64 g g) (cbrt.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 (+.f64 g g) (sqrt.f64 a)) 1/3) (pow.f64 (/.f64 (+.f64 g g) (sqrt.f64 a)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 g g) (cbrt.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (+.f64 g g) a) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (+.f64 g g) (cbrt.f64 a)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (+.f64 g g) (cbrt.f64 a))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (+.f64 g g) a) 1/6) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (+.f64 g g) (cbrt.f64 a)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (+.f64 g g) (cbrt.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (+.f64 g g) (cbrt.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (+.f64 g g) (cbrt.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (+.f64 g g) (cbrt.f64 a))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 g (/.f64 -1/2 a)) (*.f64 g (/.f64 -1/2 a)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (/.f64 -1/2 a) g) (*.f64 (/.f64 -1/2 a) g))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (/.f64 (+.f64 g g) a)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 g g) a)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 g g) (*.f64 a -2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 a (+.f64 g g)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (+.f64 g g) (sqrt.f64 a)) (sqrt.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (pow.f64 g 3)) (*.f64 (*.f64 a -2) (fma.f64 g g 0)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 0 (*.f64 0 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 0 (*.f64 0 (*.f64 a -2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 0 (*.f64 0 (neg.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 0 (*.f64 a 0))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 0 (*.f64 (*.f64 a -2) 0))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 0 (*.f64 (neg.f64 a) 0))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 g g)) (neg.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 2 (pow.f64 g 3)) -1/2) (*.f64 (fma.f64 g g 0) a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 2 (pow.f64 g 3)) 1) (*.f64 (fma.f64 g g 0) (*.f64 a -2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 2 (pow.f64 g 3)) 1/2) (*.f64 (fma.f64 g g 0) (neg.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -1/2 (*.f64 2 (pow.f64 g 3))) (*.f64 a (fma.f64 g g 0)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/2 (*.f64 2 (pow.f64 g 3))) (*.f64 (neg.f64 a) (fma.f64 g g 0)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (+.f64 g g) 1) a)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (+.f64 g g) (pow.f64 (cbrt.f64 a) 2)) (cbrt.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 2 (pow.f64 g 3)) (/.f64 -1/2 a)) (fma.f64 g g 0))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 0 (/.f64 -1/2 a)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/2 (+.f64 g g)) (neg.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 g g) 1/2) (neg.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 -1/2 a) (*.f64 2 (pow.f64 g 3))) (fma.f64 g g 0))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 -1/2 a) 0) 0)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (+.f64 g g) a) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (+.f64 g g) (cbrt.f64 a)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (+.f64 g g) a) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (+.f64 g g) (sqrt.f64 a)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (/.f64 (+.f64 g g) (*.f64 a a)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (+.f64 g g) a)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (+.f64 g g) a) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (+.f64 g g) (pow.f64 (/.f64 -1/2 a) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (/.f64 -1/2 a) 3) (+.f64 g g)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (+.f64 g g) a)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (+.f64 g g) a)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (+.f64 g g) a)))))))

simplify17.0ms (0.1%)

Algorithm
egg-herbie
Rules
14×fma-def_binary64
sub-neg_binary64
+-commutative_binary64
fma-neg_binary64
*-commutative_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
06144
110144
217144
323144
429144
537144
645144
755144
863144
977144
Stop Event
saturated
Counts
85 → 63
Calls
Call 1
Inputs
(*.f64 -1 (/.f64 g a))
(*.f64 -1 (/.f64 g a))
(*.f64 -1 (/.f64 g a))
(*.f64 -1 (/.f64 g a))
(*.f64 -1 (/.f64 g a))
(*.f64 -1 (/.f64 g a))
(*.f64 -1 (/.f64 g a))
(*.f64 -1 (/.f64 g a))
(*.f64 -1 (/.f64 g a))
(*.f64 -1 (/.f64 g a))
(*.f64 -1 (/.f64 g a))
(*.f64 -1 (/.f64 g a))
(*.f64 -1 (/.f64 g a))
(*.f64 -1 (/.f64 g a))
(*.f64 -1 (/.f64 g a))
(*.f64 -1 (/.f64 g a))
(*.f64 -1 (/.f64 g a))
(*.f64 -1 (/.f64 g a))
(*.f64 -1 (/.f64 g a))
(*.f64 -1 (/.f64 g a))
(*.f64 -1 (/.f64 g a))
(*.f64 -1 (/.f64 g a))
(*.f64 -1 (/.f64 g a))
(*.f64 -1 (/.f64 g a))
Outputs
(*.f64 -1 (/.f64 g a))
(neg.f64 (/.f64 g a))
(/.f64 (neg.f64 g) a)
(*.f64 -1 (/.f64 g a))
(neg.f64 (/.f64 g a))
(/.f64 (neg.f64 g) a)
(*.f64 -1 (/.f64 g a))
(neg.f64 (/.f64 g a))
(/.f64 (neg.f64 g) a)
(*.f64 -1 (/.f64 g a))
(neg.f64 (/.f64 g a))
(/.f64 (neg.f64 g) a)
(*.f64 -1 (/.f64 g a))
(neg.f64 (/.f64 g a))
(/.f64 (neg.f64 g) a)
(*.f64 -1 (/.f64 g a))
(neg.f64 (/.f64 g a))
(/.f64 (neg.f64 g) a)
(*.f64 -1 (/.f64 g a))
(neg.f64 (/.f64 g a))
(/.f64 (neg.f64 g) a)
(*.f64 -1 (/.f64 g a))
(neg.f64 (/.f64 g a))
(/.f64 (neg.f64 g) a)
(*.f64 -1 (/.f64 g a))
(neg.f64 (/.f64 g a))
(/.f64 (neg.f64 g) a)
(*.f64 -1 (/.f64 g a))
(neg.f64 (/.f64 g a))
(/.f64 (neg.f64 g) a)
(*.f64 -1 (/.f64 g a))
(neg.f64 (/.f64 g a))
(/.f64 (neg.f64 g) a)
(*.f64 -1 (/.f64 g a))
(neg.f64 (/.f64 g a))
(/.f64 (neg.f64 g) a)
(*.f64 -1 (/.f64 g a))
(neg.f64 (/.f64 g a))
(/.f64 (neg.f64 g) a)
(*.f64 -1 (/.f64 g a))
(neg.f64 (/.f64 g a))
(/.f64 (neg.f64 g) a)
(*.f64 -1 (/.f64 g a))
(neg.f64 (/.f64 g a))
(/.f64 (neg.f64 g) a)
(*.f64 -1 (/.f64 g a))
(neg.f64 (/.f64 g a))
(/.f64 (neg.f64 g) a)
(*.f64 -1 (/.f64 g a))
(neg.f64 (/.f64 g a))
(/.f64 (neg.f64 g) a)
(*.f64 -1 (/.f64 g a))
(neg.f64 (/.f64 g a))
(/.f64 (neg.f64 g) a)
(*.f64 -1 (/.f64 g a))
(neg.f64 (/.f64 g a))
(/.f64 (neg.f64 g) a)
(*.f64 -1 (/.f64 g a))
(neg.f64 (/.f64 g a))
(/.f64 (neg.f64 g) a)
(*.f64 -1 (/.f64 g a))
(neg.f64 (/.f64 g a))
(/.f64 (neg.f64 g) a)
(*.f64 -1 (/.f64 g a))
(neg.f64 (/.f64 g a))
(/.f64 (neg.f64 g) a)
(*.f64 -1 (/.f64 g a))
(neg.f64 (/.f64 g a))
(/.f64 (neg.f64 g) a)
(*.f64 -1 (/.f64 g a))
(neg.f64 (/.f64 g a))
(/.f64 (neg.f64 g) a)

localize33.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(*.f64 (cbrt.f64 2) (cbrt.f64 (/.f64 g a)))
0.5b
(*.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 2) (cbrt.f64 (/.f64 g a))))
1.0b
(cbrt.f64 2)
16.8b
(cbrt.f64 (/.f64 g a))
Compiler

Compiled 76 to 42 computations (44.7% saved)

series11.0ms (0.1%)

Counts
4 → 0
Calls

18 calls:

TimeVariablePointExpression
1.0ms
g
@0
(*.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 2) (cbrt.f64 (/.f64 g a))))
1.0ms
g
@-inf
(*.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 2) (cbrt.f64 (/.f64 g a))))
1.0ms
a
@-inf
(*.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 2) (cbrt.f64 (/.f64 g a))))
1.0ms
a
@inf
(*.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 2) (cbrt.f64 (/.f64 g a))))
1.0ms
g
@inf
(*.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 2) (cbrt.f64 (/.f64 g a))))

rewrite88.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
516×log-prod_binary64
477×prod-exp_binary64
392×exp-prod_binary64
346×pow-prod-down_binary64
264×pow2_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01124
122324
2260924
Stop Event
node limit
Counts
4 → 211
Calls
Call 1
Inputs
(cbrt.f64 (/.f64 g a))
(cbrt.f64 2)
(*.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 2) (cbrt.f64 (/.f64 g a))))
(*.f64 (cbrt.f64 2) (cbrt.f64 (/.f64 g a)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (cbrt.f64 (/.f64 g a)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (cbrt.f64 (/.f64 g a)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (cbrt.f64 (/.f64 g a))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (cbrt.f64 (/.f64 g a))))) (log.f64 (sqrt.f64 (exp.f64 (cbrt.f64 (/.f64 g a))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (cbrt.f64 (/.f64 g a)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 g a)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 g a)) (cbrt.f64 -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 2) (*.f64 (cbrt.f64 (/.f64 g a)) (cbrt.f64 -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 -1/2) (cbrt.f64 (*.f64 (/.f64 g a) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2)) (cbrt.f64 -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (cbrt.f64 (/.f64 g a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (/.f64 g a))) (cbrt.f64 (cbrt.f64 (pow.f64 (/.f64 g a) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (pow.f64 (/.f64 g a) 2))) (cbrt.f64 (cbrt.f64 (/.f64 g a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 g) (/.f64 1 (cbrt.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 1/4)) (*.f64 (cbrt.f64 (cbrt.f64 -1/2)) (cbrt.f64 (*.f64 (/.f64 g a) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2))) 2) (*.f64 (cbrt.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2))) (cbrt.f64 -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 g a) 1/6) (pow.f64 (/.f64 g a) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 -1/2 1/6) (*.f64 (pow.f64 -1/2 1/6) (cbrt.f64 (*.f64 (/.f64 g a) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (/.f64 g a) 2) 1/6) (*.f64 (pow.f64 (*.f64 (/.f64 g a) 2) 1/6) (cbrt.f64 -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 -1) (cbrt.f64 (/.f64 g a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 -1/2) (cbrt.f64 (/.f64 g a))) (cbrt.f64 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2))) 2)) (cbrt.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 (*.f64 (/.f64 g a) 2) 1/6)) (pow.f64 (*.f64 (/.f64 g a) 2) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2)) (cbrt.f64 (cbrt.f64 1/4))) (cbrt.f64 (cbrt.f64 -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2)) (pow.f64 -1/2 1/6)) (pow.f64 -1/2 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 -1) 1) (cbrt.f64 (/.f64 g a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 -1) (cbrt.f64 (cbrt.f64 (pow.f64 (/.f64 g a) 2)))) (cbrt.f64 (cbrt.f64 (/.f64 g a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 -1) (pow.f64 (/.f64 g a) 1/6)) (pow.f64 (/.f64 g a) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (cbrt.f64 (/.f64 a g)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (cbrt.f64 a) (cbrt.f64 g)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 g) (cbrt.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (neg.f64 g)) (cbrt.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (neg.f64 g)) (cbrt.f64 (neg.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (cbrt.f64 g)) (neg.f64 (cbrt.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 g a) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 g a)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (pow.f64 (/.f64 g a) 2)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 g a) 2) 1/6)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 g a) 3) 1/9)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 g a))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 g a) 1/6) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 g a)) 2/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 a g) -1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (cbrt.f64 (/.f64 g a))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1/3) (log.f64 (/.f64 g a)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 a g)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 -1/2 (*.f64 (/.f64 g a) 2)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (*.f64 (/.f64 g a) 2) -1/2) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (cbrt.f64 a) (cbrt.f64 g)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 g a) -1) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 -1 (/.f64 g a)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (cbrt.f64 (/.f64 g a)))) 2)) (cbrt.f64 (log.f64 (cbrt.f64 (/.f64 g a)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (cbrt.f64 (/.f64 g a))))) (sqrt.f64 (log.f64 (cbrt.f64 (/.f64 g a)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (cbrt.f64 (pow.f64 (/.f64 g a) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (cbrt.f64 (/.f64 g a))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (cbrt.f64 (/.f64 g a)))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (cbrt.f64 (/.f64 g a))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (cbrt.f64 (/.f64 g a))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (cbrt.f64 (/.f64 g a))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 g a)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 g a))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (cbrt.f64 (/.f64 g a)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 1/6 (log.f64 (/.f64 g a))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 g a)) 1) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 g a)) 1/3) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 g a))) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 (/.f64 g a)) 1/3) (log.f64 (cbrt.f64 -1))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 g a))) 1) (log.f64 (cbrt.f64 -1))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log1p.f64 -3/2) 1/3) (log.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 (cbrt.f64 -1/2)) 1) (log.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (log.f64 (cbrt.f64 -1/2)) (*.f64 (log.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2))) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log1p.f64 -3/2) 1/3) (*.f64 (log.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2))) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 (cbrt.f64 -1/2)) 1) (*.f64 (log.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2))) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2))) 1) (log.f64 (cbrt.f64 -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (log.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2))) (*.f64 (log1p.f64 -3/2) 1/3)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2))) 1) (*.f64 (log1p.f64 -3/2) 1/3)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (log.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2))) (*.f64 (log.f64 (cbrt.f64 -1/2)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2))) 1) (*.f64 (log.f64 (cbrt.f64 -1/2)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (log.f64 (cbrt.f64 -1)) (*.f64 (log.f64 (/.f64 g a)) 1/3)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (log.f64 (cbrt.f64 -1)) (*.f64 (log.f64 (cbrt.f64 (/.f64 g a))) 1)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (cbrt.f64 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (cbrt.f64 2))) 2)) (log.f64 (cbrt.f64 (exp.f64 (cbrt.f64 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (cbrt.f64 2)))) (log.f64 (sqrt.f64 (exp.f64 (cbrt.f64 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (cbrt.f64 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (cbrt.f64 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 2)) (cbrt.f64 (cbrt.f64 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 4)) (cbrt.f64 (cbrt.f64 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 2 1/6) (pow.f64 2 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 2 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 4 1/6)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 4) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (cbrt.f64 2)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 2 1/6) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (cbrt.f64 2)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1/3) (log.f64 2))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (cbrt.f64 2))) 2)) (cbrt.f64 (log.f64 (cbrt.f64 2))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (cbrt.f64 2)))) (sqrt.f64 (log.f64 (cbrt.f64 2))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (cbrt.f64 4))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (cbrt.f64 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (cbrt.f64 2))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (cbrt.f64 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (cbrt.f64 2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (cbrt.f64 2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 2) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 2)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (cbrt.f64 2))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 1/6 (log.f64 2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 2) 1/3) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (cbrt.f64 2)) 1) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (cbrt.f64 (/.f64 g a)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (cbrt.f64 (/.f64 g a)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (cbrt.f64 (/.f64 g a))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (cbrt.f64 (/.f64 g a))))) (log.f64 (sqrt.f64 (exp.f64 (cbrt.f64 (/.f64 g a))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (cbrt.f64 (/.f64 g a)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (cbrt.f64 (/.f64 a g)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (cbrt.f64 a) (cbrt.f64 g)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 g) (cbrt.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (neg.f64 g)) (cbrt.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (neg.f64 g)) (cbrt.f64 (neg.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (cbrt.f64 g)) (neg.f64 (cbrt.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 g a) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 g a)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (pow.f64 (/.f64 g a) 2)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 g a) 2) 1/6)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 g a) 3) 1/9)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 g a))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 g a) 1/6) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 g a)) 2/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 a g) -1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (cbrt.f64 (/.f64 g a))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1/3) (log.f64 (/.f64 g a)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 a g)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 -1/2 (*.f64 (/.f64 g a) 2)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (*.f64 (/.f64 g a) 2) -1/2) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (cbrt.f64 a) (cbrt.f64 g)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 g a) -1) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 -1 (/.f64 g a)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (cbrt.f64 (/.f64 g a)))) 2)) (cbrt.f64 (log.f64 (cbrt.f64 (/.f64 g a)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (cbrt.f64 (/.f64 g a))))) (sqrt.f64 (log.f64 (cbrt.f64 (/.f64 g a)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (cbrt.f64 (pow.f64 (/.f64 g a) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (cbrt.f64 (/.f64 g a))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (cbrt.f64 (/.f64 g a)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 g a))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 -1/2 (*.f64 (/.f64 g a) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (*.f64 (/.f64 g a) 2) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (cbrt.f64 (/.f64 g a))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (cbrt.f64 (/.f64 g a))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (cbrt.f64 (/.f64 g a))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 g a)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 g a))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (cbrt.f64 (/.f64 g a)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 1/6 (log.f64 (/.f64 g a))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 g a)) 1) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 g a)) 1/3) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 g a))) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 (/.f64 g a)) 1/3) (log.f64 (cbrt.f64 -1))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 g a))) 1) (log.f64 (cbrt.f64 -1))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log1p.f64 -3/2) 1/3) (log.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 (cbrt.f64 -1/2)) 1) (log.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (log.f64 (cbrt.f64 -1/2)) (*.f64 (log.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2))) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log1p.f64 -3/2) 1/3) (*.f64 (log.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2))) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 (cbrt.f64 -1/2)) 1) (*.f64 (log.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2))) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2))) 1) (log.f64 (cbrt.f64 -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (log.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2))) (*.f64 (log1p.f64 -3/2) 1/3)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2))) 1) (*.f64 (log1p.f64 -3/2) 1/3)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (log.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2))) (*.f64 (log.f64 (cbrt.f64 -1/2)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2))) 1) (*.f64 (log.f64 (cbrt.f64 -1/2)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (log.f64 (cbrt.f64 -1)) (*.f64 (log.f64 (/.f64 g a)) 1/3)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (log.f64 (cbrt.f64 -1)) (*.f64 (log.f64 (cbrt.f64 (/.f64 g a))) 1)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (cbrt.f64 (*.f64 (/.f64 g a) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2))))) (log.f64 (sqrt.f64 (exp.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cbrt.f64 g) (cbrt.f64 2)) (cbrt.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cbrt.f64 2) (cbrt.f64 g)) (cbrt.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (/.f64 g a) 2) 1/6) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 g a) 2) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2)))) 2)) (cbrt.f64 (log.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2))))) (sqrt.f64 (log.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (/.f64 g a) 2))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (/.f64 g a) 2) 1/6)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (/.f64 g a) 2)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2))) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 (/.f64 g a)) 1/3) (log.f64 (cbrt.f64 2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 g a))) 1) (log.f64 (cbrt.f64 2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (log.f64 (cbrt.f64 (/.f64 g a))) (*.f64 (log.f64 2) 1/3)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 (/.f64 g a)) 1/3) (*.f64 (log.f64 2) 1/3)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 g a))) 1) (*.f64 (log.f64 2) 1/3)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (log.f64 (cbrt.f64 (/.f64 g a))) (*.f64 (log.f64 (cbrt.f64 2)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 (/.f64 g a)) 1/3) (*.f64 (log.f64 (cbrt.f64 2)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 g a))) 1) (*.f64 (log.f64 (cbrt.f64 2)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 2) 1/3) (log.f64 (cbrt.f64 (/.f64 g a)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 (cbrt.f64 2)) 1) (log.f64 (cbrt.f64 (/.f64 g a)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (log.f64 (cbrt.f64 2)) (*.f64 (log.f64 (/.f64 g a)) 1/3)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 2) 1/3) (*.f64 (log.f64 (/.f64 g a)) 1/3)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 (cbrt.f64 2)) 1) (*.f64 (log.f64 (/.f64 g a)) 1/3)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (log.f64 (cbrt.f64 2)) (*.f64 (log.f64 (cbrt.f64 (/.f64 g a))) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 2) 1/3) (*.f64 (log.f64 (cbrt.f64 (/.f64 g a))) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 (cbrt.f64 2)) 1) (*.f64 (log.f64 (cbrt.f64 (/.f64 g a))) 1)))))))

simplify15.0ms (0.1%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
000
Stop Event
saturated
Counts
211 → 155
Calls
Call 1
Inputs
Outputs

localize55.0ms (0.5%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(/.f64 1/8 (pow.f64 g 3))
5.9b
(*.f64 (fma.f64 1/2 (*.f64 (/.f64 h g) h) (*.f64 (/.f64 1/8 (pow.f64 g 3)) (pow.f64 h 4))) (/.f64 -1/2 a))
20.0b
(*.f64 (/.f64 1/8 (pow.f64 g 3)) (pow.f64 h 4))
32.0b
(cbrt.f64 (*.f64 (fma.f64 1/2 (*.f64 (/.f64 h g) h) (*.f64 (/.f64 1/8 (pow.f64 g 3)) (pow.f64 h 4))) (/.f64 -1/2 a)))
Compiler

Compiled 150 to 89 computations (40.7% saved)

series26.0ms (0.2%)

Counts
4 → 64
Calls

27 calls:

TimeVariablePointExpression
3.0ms
h
@inf
(*.f64 (/.f64 1/8 (pow.f64 g 3)) (pow.f64 h 4))
2.0ms
g
@0
(cbrt.f64 (*.f64 (fma.f64 1/2 (*.f64 (/.f64 h g) h) (*.f64 (/.f64 1/8 (pow.f64 g 3)) (pow.f64 h 4))) (/.f64 -1/2 a)))
2.0ms
a
@0
(*.f64 (fma.f64 1/2 (*.f64 (/.f64 h g) h) (*.f64 (/.f64 1/8 (pow.f64 g 3)) (pow.f64 h 4))) (/.f64 -1/2 a))
1.0ms
h
@0
(cbrt.f64 (*.f64 (fma.f64 1/2 (*.f64 (/.f64 h g) h) (*.f64 (/.f64 1/8 (pow.f64 g 3)) (pow.f64 h 4))) (/.f64 -1/2 a)))
1.0ms
h
@inf
(cbrt.f64 (*.f64 (fma.f64 1/2 (*.f64 (/.f64 h g) h) (*.f64 (/.f64 1/8 (pow.f64 g 3)) (pow.f64 h 4))) (/.f64 -1/2 a)))

rewrite105.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
893×log-prod_binary64
329×expm1-udef_binary64
329×log1p-udef_binary64
277×log-pow_binary64
257×prod-diff_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01980
141280
2483180
Stop Event
node limit
Counts
4 → 112
Calls
Call 1
Inputs
(cbrt.f64 (*.f64 (fma.f64 1/2 (*.f64 (/.f64 h g) h) (*.f64 (/.f64 1/8 (pow.f64 g 3)) (pow.f64 h 4))) (/.f64 -1/2 a)))
(*.f64 (/.f64 1/8 (pow.f64 g 3)) (pow.f64 h 4))
(*.f64 (fma.f64 1/2 (*.f64 (/.f64 h g) h) (*.f64 (/.f64 1/8 (pow.f64 g 3)) (pow.f64 h 4))) (/.f64 -1/2 a))
(/.f64 1/8 (pow.f64 g 3))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (cbrt.f64 (*.f64 (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 1/2 (/.f64 h (/.f64 g h)))) (/.f64 -1/2 a))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (cbrt.f64 (*.f64 (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 1/2 (/.f64 h (/.f64 g h)))) (/.f64 -1/2 a))))) (cbrt.f64 (exp.f64 (cbrt.f64 (*.f64 (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 1/2 (/.f64 h (/.f64 g h)))) (/.f64 -1/2 a))))))) (log.f64 (cbrt.f64 (exp.f64 (cbrt.f64 (*.f64 (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 1/2 (/.f64 h (/.f64 g h)))) (/.f64 -1/2 a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (cbrt.f64 (*.f64 (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 1/2 (/.f64 h (/.f64 g h)))) (/.f64 -1/2 a)))))) (log.f64 (sqrt.f64 (exp.f64 (cbrt.f64 (*.f64 (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 1/2 (/.f64 h (/.f64 g h)))) (/.f64 -1/2 a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (cbrt.f64 (*.f64 (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 1/2 (/.f64 h (/.f64 g h)))) (/.f64 -1/2 a))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 1/2 (/.f64 h (/.f64 g h)))) (/.f64 -1/2 a))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (cbrt.f64 (*.f64 (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 1/2 (/.f64 h (/.f64 g h)))) (/.f64 -1/2 a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 -1/2 a)) (cbrt.f64 (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 1/2 (/.f64 h (/.f64 g h))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 1/2 (/.f64 h (/.f64 g h))))) (cbrt.f64 (/.f64 -1/2 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (*.f64 (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 1/2 (/.f64 h (/.f64 g h)))) (/.f64 -1/2 a)))) (cbrt.f64 (cbrt.f64 (pow.f64 (*.f64 (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 1/2 (/.f64 h (/.f64 g h)))) (/.f64 -1/2 a)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (pow.f64 (*.f64 (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 1/2 (/.f64 h (/.f64 g h)))) (/.f64 -1/2 a)) 2))) (cbrt.f64 (cbrt.f64 (*.f64 (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 1/2 (/.f64 h (/.f64 g h)))) (/.f64 -1/2 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 1/2 (/.f64 h (/.f64 g h)))) (/.f64 -1/2 a)) 1/6) (pow.f64 (*.f64 (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 1/2 (/.f64 h (/.f64 g h)))) (/.f64 -1/2 a)) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/3) (cbrt.f64 (*.f64 (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 1/2 (/.f64 h (/.f64 g h)))) (/.f64 -1/2 a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (pow.f64 (*.f64 (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 1/2 (/.f64 h (/.f64 g h)))) (/.f64 -1/2 a)) 2)) 1/3) (cbrt.f64 (cbrt.f64 (*.f64 (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 1/2 (/.f64 h (/.f64 g h)))) (/.f64 -1/2 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (*.f64 (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 1/2 (/.f64 h (/.f64 g h)))) (/.f64 -1/2 a))) 1/3) (pow.f64 (sqrt.f64 (*.f64 (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 1/2 (/.f64 h (/.f64 g h)))) (/.f64 -1/2 a))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (*.f64 (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 1/2 (/.f64 h (/.f64 g h)))) -1/2)) (cbrt.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 1/2 (/.f64 h (/.f64 g h)))) (/.f64 -1/2 a)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 1/2 (/.f64 h (/.f64 g h)))) (/.f64 -1/2 a))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 1/2 (/.f64 h (/.f64 g h)))) (/.f64 -1/2 a)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 1/2 (/.f64 h (/.f64 g h)))) (/.f64 -1/2 a)) 1/6) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (cbrt.f64 (pow.f64 (*.f64 (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 1/2 (/.f64 h (/.f64 g h)))) (/.f64 -1/2 a)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (cbrt.f64 (*.f64 (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 1/2 (/.f64 h (/.f64 g h)))) (/.f64 -1/2 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (cbrt.f64 (*.f64 (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 1/2 (/.f64 h (/.f64 g h)))) (/.f64 -1/2 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (cbrt.f64 (*.f64 (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 1/2 (/.f64 h (/.f64 g h)))) (/.f64 -1/2 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (cbrt.f64 (*.f64 (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 1/2 (/.f64 h (/.f64 g h)))) (/.f64 -1/2 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (cbrt.f64 (*.f64 (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 1/2 (/.f64 h (/.f64 g h)))) (/.f64 -1/2 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 1/2 (/.f64 h (/.f64 g h)))) (/.f64 -1/2 a))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 1/2 (/.f64 h (/.f64 g h)))) (/.f64 -1/2 a)))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (pow.f64 h 4)) (*.f64 1/8 (pow.f64 g -3)))) (cbrt.f64 (pow.f64 (exp.f64 (pow.f64 h 4)) (*.f64 1/8 (pow.f64 g -3)))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (pow.f64 h 4)) (*.f64 1/8 (pow.f64 g -3))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (pow.f64 h 4)) (*.f64 1/8 (pow.f64 g -3))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (pow.f64 h 4)) (*.f64 1/8 (pow.f64 g -3))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1/8 (/.f64 (pow.f64 g 3) (pow.f64 h 4)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 h 4) (*.f64 (pow.f64 g 3) 8))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (pow.f64 g 3) (*.f64 1/8 (pow.f64 h 4))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/8 (pow.f64 h 4)) (pow.f64 g 3))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 1/8 (pow.f64 h 4))) (neg.f64 (pow.f64 g 3)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 1/8 (pow.f64 h 4)) g) (*.f64 g g))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 1/8 (pow.f64 h 4)) 1) (pow.f64 g 3))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 1/8 (pow.f64 h 4)) (*.f64 g g)) g)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 1/8 (pow.f64 h 4)) (pow.f64 g 3/2)) (pow.f64 g 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -1/8 (pow.f64 h 4)) (neg.f64 (pow.f64 g 3)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 h 4) -1/8) (neg.f64 (pow.f64 g 3)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (cbrt.f64 (pow.f64 h 4)) (/.f64 1/2 g)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (*.f64 h h) (/.f64 (sqrt.f64 1/8) (pow.f64 g 3/2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (pow.f64 h 8) (/.f64 1/64 (pow.f64 g 6))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (pow.f64 h 4)) (*.f64 1/8 (pow.f64 g -3))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (*.f64 1/8 (pow.f64 g -3)) 3) (pow.f64 (pow.f64 h 4) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (pow.f64 h 4) 3) (pow.f64 (*.f64 1/8 (pow.f64 g -3)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 1/2 (/.f64 h (/.f64 g h)))) (/.f64 -1/2 a)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 1/2 (/.f64 h (/.f64 g h))) (/.f64 -1/2 a)) (*.f64 (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))) (/.f64 -1/2 a)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (/.f64 -1/2 a) (*.f64 1/2 (/.f64 h (/.f64 g h)))) (*.f64 (/.f64 -1/2 a) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (/.f64 -1/2 a)) (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 1/2 (/.f64 h (/.f64 g h)))))) (cbrt.f64 (pow.f64 (exp.f64 (/.f64 -1/2 a)) (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 1/2 (/.f64 h (/.f64 g h)))))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (/.f64 -1/2 a)) (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 1/2 (/.f64 h (/.f64 g h))))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (/.f64 -1/2 a)) (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 1/2 (/.f64 h (/.f64 g h))))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (/.f64 -1/2 a)) (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 1/2 (/.f64 h (/.f64 g h))))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 1/2 (/.f64 h (/.f64 g h)))) (/.f64 -1/2 a)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 1/2 (/.f64 h (/.f64 g h)))) (*.f64 a -2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 a (*.f64 (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 1/2 (/.f64 h (/.f64 g h)))) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 1/2 (/.f64 h (/.f64 g h)))) -1/2) a)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 1/2 (/.f64 h (/.f64 g h)))) -1/2)) (neg.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 1/2 (/.f64 h (/.f64 g h)))) -1/2) 1) a)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 1/2 (/.f64 h (/.f64 g h)))) -1/2) (pow.f64 (cbrt.f64 a) 2)) (cbrt.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 1/2 (/.f64 h (/.f64 g h)))) -1/2) (sqrt.f64 a)) (sqrt.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/2 (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 1/2 (/.f64 h (/.f64 g h))))) (neg.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 1/2 (/.f64 h (/.f64 g h)))) 1/2) (neg.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 1/2 (/.f64 h (/.f64 g h)))) (/.f64 -1/2 a)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 1/2 (/.f64 h (/.f64 g h)))) (/.f64 -1/2 a))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 1/2 (/.f64 h (/.f64 g h)))) (/.f64 -1/2 a)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 1/2 (/.f64 h (/.f64 g h)))) (/.f64 -1/2 a))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 1/2 (/.f64 h (/.f64 g h)))) (/.f64 -1/2 a)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (/.f64 -1/2 a)) (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 1/2 (/.f64 h (/.f64 g h))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 1/2 (/.f64 h (/.f64 g h)))) (/.f64 -1/2 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 1/2 (/.f64 h (/.f64 g h)))) (/.f64 -1/2 a)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 1/2 (/.f64 h (/.f64 g h)))) 3) (pow.f64 (/.f64 -1/2 a) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (/.f64 -1/2 a) 3) (pow.f64 (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 1/2 (/.f64 h (/.f64 g h)))) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 1/2 (/.f64 h (/.f64 g h)))) (/.f64 -1/2 a))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 1/2 (/.f64 h (/.f64 g h)))) (/.f64 -1/2 a))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 1/2 (/.f64 h (/.f64 g h)))) (/.f64 -1/2 a))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 1/2 (/.f64 h (/.f64 g h)))) (/.f64 -1/2 a))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 -1/2 a) (*.f64 1/2 (/.f64 h (/.f64 g h))) (*.f64 (/.f64 -1/2 a) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 1/2 (/.f64 h (/.f64 g h))) (/.f64 -1/2 a) (*.f64 (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))) (/.f64 -1/2 a)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 1/8 (pow.f64 g -3)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 1/8) (pow.f64 g -3))) (cbrt.f64 (pow.f64 (exp.f64 1/8) (pow.f64 g -3))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 1/8) (pow.f64 g -3)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 1/8) (pow.f64 g -3)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 1/8) (pow.f64 g -3)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 1/8 (pow.f64 g -3)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/8 (pow.f64 g -3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/8 (pow.f64 g -3)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 1/8 (pow.f64 g -3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1/8 (/.f64 1 (neg.f64 (pow.f64 g 3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/2 g) (pow.f64 (/.f64 1/2 g) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 1/2 g) 2) (/.f64 1/2 g))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 1/8) (pow.f64 g 3/2)) (/.f64 (sqrt.f64 1/8) (pow.f64 g 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 g -3) 1/8)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 1/8 (pow.f64 g -3)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 1/8 (pow.f64 g -3)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1/2 g) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sqrt.f64 1/8) (pow.f64 g 3/2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 g 3) 8) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (/.f64 1/64 (pow.f64 g 6)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 1/8) (pow.f64 g -3)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 1/8 (pow.f64 g -3)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 1/8 (pow.f64 g -3)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 1/8 (pow.f64 g -3))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 1/8 (pow.f64 g -3))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 3 (log.f64 (/.f64 1/2 g))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (/.f64 1/2 g))) 1))))))

simplify155.0ms (1.4%)

Algorithm
egg-herbie
Rules
991×fma-def_binary64
383×associate-/l/_binary64
378×associate-/r/_binary64
366×associate-+l+_binary64
299×unswap-sqr_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0711496
11891496
26021478
328221429
450241429
558661429
665081429
776141429
879331429
Stop Event
node limit
Counts
176 → 130
Calls
Call 1
Inputs
(*.f64 1/2 (*.f64 (/.f64 (cbrt.f64 -1/2) g) (pow.f64 (/.f64 (*.f64 1 (pow.f64 h 4)) a) 1/3)))
(+.f64 (*.f64 1/2 (*.f64 (/.f64 (cbrt.f64 -1/2) g) (pow.f64 (/.f64 (*.f64 1 (pow.f64 h 4)) a) 1/3))) (*.f64 2/3 (*.f64 (*.f64 (cbrt.f64 -1/2) g) (pow.f64 (/.f64 1 (*.f64 a (pow.f64 h 2))) 1/3))))
(+.f64 (*.f64 1/2 (*.f64 (/.f64 (cbrt.f64 -1/2) g) (pow.f64 (/.f64 (*.f64 1 (pow.f64 h 4)) a) 1/3))) (+.f64 (*.f64 -8/9 (*.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 g 3)) (pow.f64 (/.f64 1 (*.f64 a (pow.f64 h 8))) 1/3))) (*.f64 2/3 (*.f64 (*.f64 (cbrt.f64 -1/2) g) (pow.f64 (/.f64 1 (*.f64 a (pow.f64 h 2))) 1/3)))))
(+.f64 (*.f64 1/2 (*.f64 (/.f64 (cbrt.f64 -1/2) g) (pow.f64 (/.f64 (*.f64 1 (pow.f64 h 4)) a) 1/3))) (+.f64 (*.f64 -8/9 (*.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 g 3)) (pow.f64 (/.f64 1 (*.f64 a (pow.f64 h 8))) 1/3))) (+.f64 (*.f64 2/3 (*.f64 (*.f64 (cbrt.f64 -1/2) g) (pow.f64 (/.f64 1 (*.f64 a (pow.f64 h 2))) 1/3))) (*.f64 160/81 (*.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 g 5)) (pow.f64 (/.f64 1 (*.f64 a (pow.f64 h 14))) 1/3))))))
(*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))
(*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))
(*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))
(*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))
(*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))
(*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))
(*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))
(*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))
(*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))
(*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))
(*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))
(*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))
(*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))
(*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))
(*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))
(*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))
(*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))
(*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))
(*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))
(*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))
(*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))
(*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))
(*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))
(*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))
(*.f64 -1/4 (/.f64 (pow.f64 h 2) (*.f64 a g)))
(+.f64 (*.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3)))) (*.f64 -1/4 (/.f64 (pow.f64 h 2) (*.f64 a g))))
(+.f64 (*.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3)))) (*.f64 -1/4 (/.f64 (pow.f64 h 2) (*.f64 a g))))
(+.f64 (*.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3)))) (*.f64 -1/4 (/.f64 (pow.f64 h 2) (*.f64 a g))))
(*.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3))))
(+.f64 (*.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3)))) (*.f64 -1/4 (/.f64 (pow.f64 h 2) (*.f64 a g))))
(+.f64 (*.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3)))) (*.f64 -1/4 (/.f64 (pow.f64 h 2) (*.f64 a g))))
(+.f64 (*.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3)))) (*.f64 -1/4 (/.f64 (pow.f64 h 2) (*.f64 a g))))
(*.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3))))
(+.f64 (*.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3)))) (*.f64 -1/4 (/.f64 (pow.f64 h 2) (*.f64 a g))))
(+.f64 (*.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3)))) (*.f64 -1/4 (/.f64 (pow.f64 h 2) (*.f64 a g))))
(+.f64 (*.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3)))) (*.f64 -1/4 (/.f64 (pow.f64 h 2) (*.f64 a g))))
(*.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3))))
(+.f64 (*.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3)))) (*.f64 -1/4 (/.f64 (pow.f64 h 2) (*.f64 a g))))
(+.f64 (*.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3)))) (*.f64 -1/4 (/.f64 (pow.f64 h 2) (*.f64 a g))))
(+.f64 (*.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3)))) (*.f64 -1/4 (/.f64 (pow.f64 h 2) (*.f64 a g))))
(*.f64 -1/4 (/.f64 (pow.f64 h 2) (*.f64 a g)))
(+.f64 (*.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3)))) (*.f64 -1/4 (/.f64 (pow.f64 h 2) (*.f64 a g))))
(+.f64 (*.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3)))) (*.f64 -1/4 (/.f64 (pow.f64 h 2) (*.f64 a g))))
(+.f64 (*.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3)))) (*.f64 -1/4 (/.f64 (pow.f64 h 2) (*.f64 a g))))
(*.f64 -1/4 (/.f64 (pow.f64 h 2) (*.f64 a g)))
(+.f64 (*.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3)))) (*.f64 -1/4 (/.f64 (pow.f64 h 2) (*.f64 a g))))
(+.f64 (*.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3)))) (*.f64 -1/4 (/.f64 (pow.f64 h 2) (*.f64 a g))))
(+.f64 (*.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3)))) (*.f64 -1/4 (/.f64 (pow.f64 h 2) (*.f64 a g))))
(*.f64 -1/2 (/.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))) a))
(*.f64 -1/2 (/.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))) a))
(*.f64 -1/2 (/.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))) a))
(*.f64 -1/2 (/.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))) a))
(*.f64 -1/2 (/.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))) a))
(*.f64 -1/2 (/.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))) a))
(*.f64 -1/2 (/.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))) a))
(*.f64 -1/2 (/.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))) a))
(*.f64 -1/2 (/.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))) a))
(*.f64 -1/2 (/.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))) a))
(*.f64 -1/2 (/.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))) a))
(*.f64 -1/2 (/.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))) a))
Outputs
(*.f64 1/2 (*.f64 (/.f64 (cbrt.f64 -1/2) g) (pow.f64 (/.f64 (*.f64 1 (pow.f64 h 4)) a) 1/3)))
(*.f64 (*.f64 1/2 (/.f64 (cbrt.f64 -1/2) g)) (cbrt.f64 (/.f64 (pow.f64 h 4) a)))
(*.f64 1/2 (*.f64 (/.f64 (cbrt.f64 -1/2) g) (cbrt.f64 (/.f64 (pow.f64 h 4) a))))
(*.f64 (cbrt.f64 (/.f64 (pow.f64 h 4) a)) (*.f64 (/.f64 1/2 g) (cbrt.f64 -1/2)))
(+.f64 (*.f64 1/2 (*.f64 (/.f64 (cbrt.f64 -1/2) g) (pow.f64 (/.f64 (*.f64 1 (pow.f64 h 4)) a) 1/3))) (*.f64 2/3 (*.f64 (*.f64 (cbrt.f64 -1/2) g) (pow.f64 (/.f64 1 (*.f64 a (pow.f64 h 2))) 1/3))))
(fma.f64 1/2 (*.f64 (/.f64 (cbrt.f64 -1/2) g) (cbrt.f64 (/.f64 (pow.f64 h 4) a))) (*.f64 2/3 (*.f64 (cbrt.f64 -1/2) (*.f64 g (cbrt.f64 (/.f64 (/.f64 1 a) (*.f64 h h)))))))
(fma.f64 1/2 (*.f64 (/.f64 (cbrt.f64 -1/2) g) (cbrt.f64 (/.f64 (pow.f64 h 4) a))) (*.f64 (cbrt.f64 -1/2) (*.f64 (*.f64 g (cbrt.f64 (/.f64 1 (*.f64 h (*.f64 h a))))) 2/3)))
(fma.f64 1/2 (*.f64 (/.f64 (cbrt.f64 -1/2) g) (cbrt.f64 (/.f64 (pow.f64 h 4) a))) (*.f64 2/3 (*.f64 (cbrt.f64 -1/2) (*.f64 g (cbrt.f64 (/.f64 1 (*.f64 a (*.f64 h h))))))))
(fma.f64 1/2 (*.f64 (/.f64 (cbrt.f64 -1/2) g) (cbrt.f64 (/.f64 (pow.f64 h 4) a))) (*.f64 (*.f64 (cbrt.f64 -1/2) g) (*.f64 2/3 (cbrt.f64 (/.f64 (/.f64 1 (*.f64 h h)) a)))))
(+.f64 (*.f64 1/2 (*.f64 (/.f64 (cbrt.f64 -1/2) g) (pow.f64 (/.f64 (*.f64 1 (pow.f64 h 4)) a) 1/3))) (+.f64 (*.f64 -8/9 (*.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 g 3)) (pow.f64 (/.f64 1 (*.f64 a (pow.f64 h 8))) 1/3))) (*.f64 2/3 (*.f64 (*.f64 (cbrt.f64 -1/2) g) (pow.f64 (/.f64 1 (*.f64 a (pow.f64 h 2))) 1/3)))))
(fma.f64 1/2 (*.f64 (/.f64 (cbrt.f64 -1/2) g) (cbrt.f64 (/.f64 (pow.f64 h 4) a))) (fma.f64 -8/9 (*.f64 (cbrt.f64 -1/2) (*.f64 (pow.f64 g 3) (cbrt.f64 (/.f64 (/.f64 1 a) (pow.f64 h 8))))) (*.f64 2/3 (*.f64 (cbrt.f64 -1/2) (*.f64 g (cbrt.f64 (/.f64 (/.f64 1 a) (*.f64 h h))))))))
(fma.f64 (*.f64 1/2 (/.f64 (cbrt.f64 -1/2) g)) (cbrt.f64 (/.f64 (pow.f64 h 4) a)) (fma.f64 2/3 (*.f64 (cbrt.f64 -1/2) (*.f64 g (cbrt.f64 (/.f64 1 (*.f64 h (*.f64 h a)))))) (*.f64 -8/9 (*.f64 (cbrt.f64 -1/2) (*.f64 (pow.f64 g 3) (cbrt.f64 (/.f64 1 (*.f64 a (pow.f64 h 8)))))))))
(fma.f64 1/2 (*.f64 (/.f64 (cbrt.f64 -1/2) g) (cbrt.f64 (/.f64 (pow.f64 h 4) a))) (*.f64 (cbrt.f64 -1/2) (+.f64 (*.f64 g (*.f64 2/3 (cbrt.f64 (/.f64 1 (*.f64 a (*.f64 h h)))))) (*.f64 (pow.f64 g 3) (*.f64 -8/9 (cbrt.f64 (/.f64 1 (*.f64 a (pow.f64 h 8)))))))))
(fma.f64 (cbrt.f64 (/.f64 (pow.f64 h 4) a)) (*.f64 (/.f64 1/2 g) (cbrt.f64 -1/2)) (*.f64 (cbrt.f64 -1/2) (fma.f64 2/3 (*.f64 g (cbrt.f64 (/.f64 1 (*.f64 a (*.f64 h h))))) (*.f64 (pow.f64 g 3) (*.f64 -8/9 (cbrt.f64 (/.f64 1 (*.f64 a (pow.f64 h 8)))))))))
(fma.f64 (cbrt.f64 -1/2) (fma.f64 (pow.f64 g 3) (*.f64 -8/9 (cbrt.f64 (/.f64 1 (*.f64 a (pow.f64 h 8))))) (*.f64 g (*.f64 2/3 (cbrt.f64 (/.f64 (/.f64 1 (*.f64 h h)) a))))) (*.f64 (cbrt.f64 (/.f64 (pow.f64 h 4) a)) (*.f64 (/.f64 1/2 g) (cbrt.f64 -1/2))))
(+.f64 (*.f64 1/2 (*.f64 (/.f64 (cbrt.f64 -1/2) g) (pow.f64 (/.f64 (*.f64 1 (pow.f64 h 4)) a) 1/3))) (+.f64 (*.f64 -8/9 (*.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 g 3)) (pow.f64 (/.f64 1 (*.f64 a (pow.f64 h 8))) 1/3))) (+.f64 (*.f64 2/3 (*.f64 (*.f64 (cbrt.f64 -1/2) g) (pow.f64 (/.f64 1 (*.f64 a (pow.f64 h 2))) 1/3))) (*.f64 160/81 (*.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 g 5)) (pow.f64 (/.f64 1 (*.f64 a (pow.f64 h 14))) 1/3))))))
(fma.f64 1/2 (*.f64 (/.f64 (cbrt.f64 -1/2) g) (cbrt.f64 (/.f64 (pow.f64 h 4) a))) (fma.f64 -8/9 (*.f64 (cbrt.f64 -1/2) (*.f64 (pow.f64 g 3) (cbrt.f64 (/.f64 (/.f64 1 a) (pow.f64 h 8))))) (fma.f64 2/3 (*.f64 (cbrt.f64 -1/2) (*.f64 g (cbrt.f64 (/.f64 (/.f64 1 a) (*.f64 h h))))) (*.f64 160/81 (*.f64 (cbrt.f64 -1/2) (*.f64 (pow.f64 g 5) (cbrt.f64 (/.f64 (/.f64 1 a) (pow.f64 h 14)))))))))
(fma.f64 1/2 (*.f64 (/.f64 (cbrt.f64 -1/2) g) (cbrt.f64 (/.f64 (pow.f64 h 4) a))) (fma.f64 -8/9 (*.f64 (cbrt.f64 -1/2) (*.f64 (pow.f64 g 3) (cbrt.f64 (/.f64 1 (*.f64 a (pow.f64 h 8)))))) (fma.f64 2/3 (*.f64 (cbrt.f64 -1/2) (*.f64 g (cbrt.f64 (/.f64 1 (*.f64 h (*.f64 h a)))))) (*.f64 160/81 (*.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 g 5)) (cbrt.f64 (/.f64 1 (*.f64 a (pow.f64 h 14)))))))))
(fma.f64 1/2 (*.f64 (/.f64 (cbrt.f64 -1/2) g) (cbrt.f64 (/.f64 (pow.f64 h 4) a))) (fma.f64 (cbrt.f64 -1/2) (*.f64 (pow.f64 g 3) (*.f64 -8/9 (cbrt.f64 (/.f64 1 (*.f64 a (pow.f64 h 8)))))) (*.f64 (cbrt.f64 -1/2) (+.f64 (*.f64 g (*.f64 2/3 (cbrt.f64 (/.f64 1 (*.f64 a (*.f64 h h)))))) (*.f64 (pow.f64 g 5) (*.f64 160/81 (cbrt.f64 (/.f64 1 (*.f64 a (pow.f64 h 14))))))))))
(fma.f64 1/2 (*.f64 (/.f64 (cbrt.f64 -1/2) g) (cbrt.f64 (/.f64 (pow.f64 h 4) a))) (*.f64 (cbrt.f64 -1/2) (+.f64 (*.f64 g (*.f64 2/3 (cbrt.f64 (/.f64 1 (*.f64 a (*.f64 h h)))))) (fma.f64 (pow.f64 g 5) (*.f64 160/81 (cbrt.f64 (/.f64 1 (*.f64 a (pow.f64 h 14))))) (*.f64 (pow.f64 g 3) (*.f64 -8/9 (cbrt.f64 (/.f64 1 (*.f64 a (pow.f64 h 8))))))))))
(fma.f64 1/2 (*.f64 (/.f64 (cbrt.f64 -1/2) g) (cbrt.f64 (/.f64 (pow.f64 h 4) a))) (*.f64 (cbrt.f64 -1/2) (+.f64 (*.f64 (pow.f64 g 3) (*.f64 -8/9 (cbrt.f64 (/.f64 1 (*.f64 a (pow.f64 h 8)))))) (fma.f64 g (*.f64 2/3 (cbrt.f64 (/.f64 1 (*.f64 a (*.f64 h h))))) (*.f64 (pow.f64 g 5) (*.f64 160/81 (cbrt.f64 (/.f64 1 (*.f64 a (pow.f64 h 14))))))))))
(fma.f64 1/2 (*.f64 (/.f64 (cbrt.f64 -1/2) g) (cbrt.f64 (/.f64 (pow.f64 h 4) a))) (*.f64 (cbrt.f64 -1/2) (+.f64 (*.f64 (pow.f64 g 3) (*.f64 -8/9 (cbrt.f64 (/.f64 1 (*.f64 a (pow.f64 h 8)))))) (fma.f64 g (*.f64 2/3 (cbrt.f64 (/.f64 (/.f64 1 (*.f64 h h)) a))) (*.f64 (cbrt.f64 (/.f64 1 (*.f64 a (pow.f64 h 14)))) (*.f64 160/81 (pow.f64 g 5)))))))
(*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))
(*.f64 (/.f64 1/8 (pow.f64 g 3)) (pow.f64 h 4))
(*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))
(*.f64 (/.f64 1/8 (pow.f64 g 3)) (pow.f64 h 4))
(*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))
(*.f64 (/.f64 1/8 (pow.f64 g 3)) (pow.f64 h 4))
(*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))
(*.f64 (/.f64 1/8 (pow.f64 g 3)) (pow.f64 h 4))
(*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))
(*.f64 (/.f64 1/8 (pow.f64 g 3)) (pow.f64 h 4))
(*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))
(*.f64 (/.f64 1/8 (pow.f64 g 3)) (pow.f64 h 4))
(*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))
(*.f64 (/.f64 1/8 (pow.f64 g 3)) (pow.f64 h 4))
(*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))
(*.f64 (/.f64 1/8 (pow.f64 g 3)) (pow.f64 h 4))
(*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))
(*.f64 (/.f64 1/8 (pow.f64 g 3)) (pow.f64 h 4))
(*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))
(*.f64 (/.f64 1/8 (pow.f64 g 3)) (pow.f64 h 4))
(*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))
(*.f64 (/.f64 1/8 (pow.f64 g 3)) (pow.f64 h 4))
(*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))
(*.f64 (/.f64 1/8 (pow.f64 g 3)) (pow.f64 h 4))
(*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))
(*.f64 (/.f64 1/8 (pow.f64 g 3)) (pow.f64 h 4))
(*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))
(*.f64 (/.f64 1/8 (pow.f64 g 3)) (pow.f64 h 4))
(*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))
(*.f64 (/.f64 1/8 (pow.f64 g 3)) (pow.f64 h 4))
(*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))
(*.f64 (/.f64 1/8 (pow.f64 g 3)) (pow.f64 h 4))
(*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))
(*.f64 (/.f64 1/8 (pow.f64 g 3)) (pow.f64 h 4))
(*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))
(*.f64 (/.f64 1/8 (pow.f64 g 3)) (pow.f64 h 4))
(*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))
(*.f64 (/.f64 1/8 (pow.f64 g 3)) (pow.f64 h 4))
(*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))
(*.f64 (/.f64 1/8 (pow.f64 g 3)) (pow.f64 h 4))
(*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))
(*.f64 (/.f64 1/8 (pow.f64 g 3)) (pow.f64 h 4))
(*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))
(*.f64 (/.f64 1/8 (pow.f64 g 3)) (pow.f64 h 4))
(*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))
(*.f64 (/.f64 1/8 (pow.f64 g 3)) (pow.f64 h 4))
(*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))
(*.f64 (/.f64 1/8 (pow.f64 g 3)) (pow.f64 h 4))
(*.f64 -1/4 (/.f64 (pow.f64 h 2) (*.f64 a g)))
(*.f64 -1/4 (/.f64 (*.f64 h h) (*.f64 g a)))
(*.f64 -1/4 (*.f64 (/.f64 h g) (/.f64 h a)))
(*.f64 -1/4 (/.f64 (*.f64 h (/.f64 h a)) g))
(+.f64 (*.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3)))) (*.f64 -1/4 (/.f64 (pow.f64 h 2) (*.f64 a g))))
(fma.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3))) (*.f64 -1/4 (/.f64 (*.f64 h h) (*.f64 g a))))
(fma.f64 -1/4 (*.f64 (/.f64 h g) (/.f64 h a)) (*.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3)))))
(fma.f64 -1/4 (/.f64 (*.f64 h h) (*.f64 g a)) (*.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3)))))
(*.f64 (/.f64 (*.f64 h h) a) (+.f64 (/.f64 -1/4 g) (/.f64 (*.f64 (*.f64 h h) -1/16) (pow.f64 g 3))))
(*.f64 (/.f64 (*.f64 h h) a) (+.f64 (/.f64 -1/4 g) (*.f64 -1/16 (*.f64 (/.f64 h (pow.f64 g 3)) h))))
(*.f64 (/.f64 (*.f64 h (/.f64 h a)) g) (+.f64 -1/4 (/.f64 (*.f64 (*.f64 h h) -1/16) (*.f64 g g))))
(+.f64 (*.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3)))) (*.f64 -1/4 (/.f64 (pow.f64 h 2) (*.f64 a g))))
(fma.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3))) (*.f64 -1/4 (/.f64 (*.f64 h h) (*.f64 g a))))
(fma.f64 -1/4 (*.f64 (/.f64 h g) (/.f64 h a)) (*.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3)))))
(fma.f64 -1/4 (/.f64 (*.f64 h h) (*.f64 g a)) (*.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3)))))
(*.f64 (/.f64 (*.f64 h h) a) (+.f64 (/.f64 -1/4 g) (/.f64 (*.f64 (*.f64 h h) -1/16) (pow.f64 g 3))))
(*.f64 (/.f64 (*.f64 h h) a) (+.f64 (/.f64 -1/4 g) (*.f64 -1/16 (*.f64 (/.f64 h (pow.f64 g 3)) h))))
(*.f64 (/.f64 (*.f64 h (/.f64 h a)) g) (+.f64 -1/4 (/.f64 (*.f64 (*.f64 h h) -1/16) (*.f64 g g))))
(+.f64 (*.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3)))) (*.f64 -1/4 (/.f64 (pow.f64 h 2) (*.f64 a g))))
(fma.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3))) (*.f64 -1/4 (/.f64 (*.f64 h h) (*.f64 g a))))
(fma.f64 -1/4 (*.f64 (/.f64 h g) (/.f64 h a)) (*.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3)))))
(fma.f64 -1/4 (/.f64 (*.f64 h h) (*.f64 g a)) (*.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3)))))
(*.f64 (/.f64 (*.f64 h h) a) (+.f64 (/.f64 -1/4 g) (/.f64 (*.f64 (*.f64 h h) -1/16) (pow.f64 g 3))))
(*.f64 (/.f64 (*.f64 h h) a) (+.f64 (/.f64 -1/4 g) (*.f64 -1/16 (*.f64 (/.f64 h (pow.f64 g 3)) h))))
(*.f64 (/.f64 (*.f64 h (/.f64 h a)) g) (+.f64 -1/4 (/.f64 (*.f64 (*.f64 h h) -1/16) (*.f64 g g))))
(*.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3))))
(*.f64 (/.f64 (/.f64 -1/16 a) (pow.f64 g 3)) (pow.f64 h 4))
(+.f64 (*.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3)))) (*.f64 -1/4 (/.f64 (pow.f64 h 2) (*.f64 a g))))
(fma.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3))) (*.f64 -1/4 (/.f64 (*.f64 h h) (*.f64 g a))))
(fma.f64 -1/4 (*.f64 (/.f64 h g) (/.f64 h a)) (*.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3)))))
(fma.f64 -1/4 (/.f64 (*.f64 h h) (*.f64 g a)) (*.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3)))))
(*.f64 (/.f64 (*.f64 h h) a) (+.f64 (/.f64 -1/4 g) (/.f64 (*.f64 (*.f64 h h) -1/16) (pow.f64 g 3))))
(*.f64 (/.f64 (*.f64 h h) a) (+.f64 (/.f64 -1/4 g) (*.f64 -1/16 (*.f64 (/.f64 h (pow.f64 g 3)) h))))
(*.f64 (/.f64 (*.f64 h (/.f64 h a)) g) (+.f64 -1/4 (/.f64 (*.f64 (*.f64 h h) -1/16) (*.f64 g g))))
(+.f64 (*.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3)))) (*.f64 -1/4 (/.f64 (pow.f64 h 2) (*.f64 a g))))
(fma.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3))) (*.f64 -1/4 (/.f64 (*.f64 h h) (*.f64 g a))))
(fma.f64 -1/4 (*.f64 (/.f64 h g) (/.f64 h a)) (*.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3)))))
(fma.f64 -1/4 (/.f64 (*.f64 h h) (*.f64 g a)) (*.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3)))))
(*.f64 (/.f64 (*.f64 h h) a) (+.f64 (/.f64 -1/4 g) (/.f64 (*.f64 (*.f64 h h) -1/16) (pow.f64 g 3))))
(*.f64 (/.f64 (*.f64 h h) a) (+.f64 (/.f64 -1/4 g) (*.f64 -1/16 (*.f64 (/.f64 h (pow.f64 g 3)) h))))
(*.f64 (/.f64 (*.f64 h (/.f64 h a)) g) (+.f64 -1/4 (/.f64 (*.f64 (*.f64 h h) -1/16) (*.f64 g g))))
(+.f64 (*.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3)))) (*.f64 -1/4 (/.f64 (pow.f64 h 2) (*.f64 a g))))
(fma.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3))) (*.f64 -1/4 (/.f64 (*.f64 h h) (*.f64 g a))))
(fma.f64 -1/4 (*.f64 (/.f64 h g) (/.f64 h a)) (*.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3)))))
(fma.f64 -1/4 (/.f64 (*.f64 h h) (*.f64 g a)) (*.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3)))))
(*.f64 (/.f64 (*.f64 h h) a) (+.f64 (/.f64 -1/4 g) (/.f64 (*.f64 (*.f64 h h) -1/16) (pow.f64 g 3))))
(*.f64 (/.f64 (*.f64 h h) a) (+.f64 (/.f64 -1/4 g) (*.f64 -1/16 (*.f64 (/.f64 h (pow.f64 g 3)) h))))
(*.f64 (/.f64 (*.f64 h (/.f64 h a)) g) (+.f64 -1/4 (/.f64 (*.f64 (*.f64 h h) -1/16) (*.f64 g g))))
(*.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3))))
(*.f64 (/.f64 (/.f64 -1/16 a) (pow.f64 g 3)) (pow.f64 h 4))
(+.f64 (*.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3)))) (*.f64 -1/4 (/.f64 (pow.f64 h 2) (*.f64 a g))))
(fma.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3))) (*.f64 -1/4 (/.f64 (*.f64 h h) (*.f64 g a))))
(fma.f64 -1/4 (*.f64 (/.f64 h g) (/.f64 h a)) (*.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3)))))
(fma.f64 -1/4 (/.f64 (*.f64 h h) (*.f64 g a)) (*.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3)))))
(*.f64 (/.f64 (*.f64 h h) a) (+.f64 (/.f64 -1/4 g) (/.f64 (*.f64 (*.f64 h h) -1/16) (pow.f64 g 3))))
(*.f64 (/.f64 (*.f64 h h) a) (+.f64 (/.f64 -1/4 g) (*.f64 -1/16 (*.f64 (/.f64 h (pow.f64 g 3)) h))))
(*.f64 (/.f64 (*.f64 h (/.f64 h a)) g) (+.f64 -1/4 (/.f64 (*.f64 (*.f64 h h) -1/16) (*.f64 g g))))
(+.f64 (*.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3)))) (*.f64 -1/4 (/.f64 (pow.f64 h 2) (*.f64 a g))))
(fma.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3))) (*.f64 -1/4 (/.f64 (*.f64 h h) (*.f64 g a))))
(fma.f64 -1/4 (*.f64 (/.f64 h g) (/.f64 h a)) (*.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3)))))
(fma.f64 -1/4 (/.f64 (*.f64 h h) (*.f64 g a)) (*.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3)))))
(*.f64 (/.f64 (*.f64 h h) a) (+.f64 (/.f64 -1/4 g) (/.f64 (*.f64 (*.f64 h h) -1/16) (pow.f64 g 3))))
(*.f64 (/.f64 (*.f64 h h) a) (+.f64 (/.f64 -1/4 g) (*.f64 -1/16 (*.f64 (/.f64 h (pow.f64 g 3)) h))))
(*.f64 (/.f64 (*.f64 h (/.f64 h a)) g) (+.f64 -1/4 (/.f64 (*.f64 (*.f64 h h) -1/16) (*.f64 g g))))
(+.f64 (*.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3)))) (*.f64 -1/4 (/.f64 (pow.f64 h 2) (*.f64 a g))))
(fma.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3))) (*.f64 -1/4 (/.f64 (*.f64 h h) (*.f64 g a))))
(fma.f64 -1/4 (*.f64 (/.f64 h g) (/.f64 h a)) (*.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3)))))
(fma.f64 -1/4 (/.f64 (*.f64 h h) (*.f64 g a)) (*.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3)))))
(*.f64 (/.f64 (*.f64 h h) a) (+.f64 (/.f64 -1/4 g) (/.f64 (*.f64 (*.f64 h h) -1/16) (pow.f64 g 3))))
(*.f64 (/.f64 (*.f64 h h) a) (+.f64 (/.f64 -1/4 g) (*.f64 -1/16 (*.f64 (/.f64 h (pow.f64 g 3)) h))))
(*.f64 (/.f64 (*.f64 h (/.f64 h a)) g) (+.f64 -1/4 (/.f64 (*.f64 (*.f64 h h) -1/16) (*.f64 g g))))
(*.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3))))
(*.f64 (/.f64 (/.f64 -1/16 a) (pow.f64 g 3)) (pow.f64 h 4))
(+.f64 (*.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3)))) (*.f64 -1/4 (/.f64 (pow.f64 h 2) (*.f64 a g))))
(fma.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3))) (*.f64 -1/4 (/.f64 (*.f64 h h) (*.f64 g a))))
(fma.f64 -1/4 (*.f64 (/.f64 h g) (/.f64 h a)) (*.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3)))))
(fma.f64 -1/4 (/.f64 (*.f64 h h) (*.f64 g a)) (*.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3)))))
(*.f64 (/.f64 (*.f64 h h) a) (+.f64 (/.f64 -1/4 g) (/.f64 (*.f64 (*.f64 h h) -1/16) (pow.f64 g 3))))
(*.f64 (/.f64 (*.f64 h h) a) (+.f64 (/.f64 -1/4 g) (*.f64 -1/16 (*.f64 (/.f64 h (pow.f64 g 3)) h))))
(*.f64 (/.f64 (*.f64 h (/.f64 h a)) g) (+.f64 -1/4 (/.f64 (*.f64 (*.f64 h h) -1/16) (*.f64 g g))))
(+.f64 (*.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3)))) (*.f64 -1/4 (/.f64 (pow.f64 h 2) (*.f64 a g))))
(fma.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3))) (*.f64 -1/4 (/.f64 (*.f64 h h) (*.f64 g a))))
(fma.f64 -1/4 (*.f64 (/.f64 h g) (/.f64 h a)) (*.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3)))))
(fma.f64 -1/4 (/.f64 (*.f64 h h) (*.f64 g a)) (*.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3)))))
(*.f64 (/.f64 (*.f64 h h) a) (+.f64 (/.f64 -1/4 g) (/.f64 (*.f64 (*.f64 h h) -1/16) (pow.f64 g 3))))
(*.f64 (/.f64 (*.f64 h h) a) (+.f64 (/.f64 -1/4 g) (*.f64 -1/16 (*.f64 (/.f64 h (pow.f64 g 3)) h))))
(*.f64 (/.f64 (*.f64 h (/.f64 h a)) g) (+.f64 -1/4 (/.f64 (*.f64 (*.f64 h h) -1/16) (*.f64 g g))))
(+.f64 (*.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3)))) (*.f64 -1/4 (/.f64 (pow.f64 h 2) (*.f64 a g))))
(fma.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3))) (*.f64 -1/4 (/.f64 (*.f64 h h) (*.f64 g a))))
(fma.f64 -1/4 (*.f64 (/.f64 h g) (/.f64 h a)) (*.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3)))))
(fma.f64 -1/4 (/.f64 (*.f64 h h) (*.f64 g a)) (*.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3)))))
(*.f64 (/.f64 (*.f64 h h) a) (+.f64 (/.f64 -1/4 g) (/.f64 (*.f64 (*.f64 h h) -1/16) (pow.f64 g 3))))
(*.f64 (/.f64 (*.f64 h h) a) (+.f64 (/.f64 -1/4 g) (*.f64 -1/16 (*.f64 (/.f64 h (pow.f64 g 3)) h))))
(*.f64 (/.f64 (*.f64 h (/.f64 h a)) g) (+.f64 -1/4 (/.f64 (*.f64 (*.f64 h h) -1/16) (*.f64 g g))))
(*.f64 -1/4 (/.f64 (pow.f64 h 2) (*.f64 a g)))
(*.f64 -1/4 (/.f64 (*.f64 h h) (*.f64 g a)))
(*.f64 -1/4 (*.f64 (/.f64 h g) (/.f64 h a)))
(*.f64 -1/4 (/.f64 (*.f64 h (/.f64 h a)) g))
(+.f64 (*.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3)))) (*.f64 -1/4 (/.f64 (pow.f64 h 2) (*.f64 a g))))
(fma.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3))) (*.f64 -1/4 (/.f64 (*.f64 h h) (*.f64 g a))))
(fma.f64 -1/4 (*.f64 (/.f64 h g) (/.f64 h a)) (*.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3)))))
(fma.f64 -1/4 (/.f64 (*.f64 h h) (*.f64 g a)) (*.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3)))))
(*.f64 (/.f64 (*.f64 h h) a) (+.f64 (/.f64 -1/4 g) (/.f64 (*.f64 (*.f64 h h) -1/16) (pow.f64 g 3))))
(*.f64 (/.f64 (*.f64 h h) a) (+.f64 (/.f64 -1/4 g) (*.f64 -1/16 (*.f64 (/.f64 h (pow.f64 g 3)) h))))
(*.f64 (/.f64 (*.f64 h (/.f64 h a)) g) (+.f64 -1/4 (/.f64 (*.f64 (*.f64 h h) -1/16) (*.f64 g g))))
(+.f64 (*.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3)))) (*.f64 -1/4 (/.f64 (pow.f64 h 2) (*.f64 a g))))
(fma.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3))) (*.f64 -1/4 (/.f64 (*.f64 h h) (*.f64 g a))))
(fma.f64 -1/4 (*.f64 (/.f64 h g) (/.f64 h a)) (*.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3)))))
(fma.f64 -1/4 (/.f64 (*.f64 h h) (*.f64 g a)) (*.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3)))))
(*.f64 (/.f64 (*.f64 h h) a) (+.f64 (/.f64 -1/4 g) (/.f64 (*.f64 (*.f64 h h) -1/16) (pow.f64 g 3))))
(*.f64 (/.f64 (*.f64 h h) a) (+.f64 (/.f64 -1/4 g) (*.f64 -1/16 (*.f64 (/.f64 h (pow.f64 g 3)) h))))
(*.f64 (/.f64 (*.f64 h (/.f64 h a)) g) (+.f64 -1/4 (/.f64 (*.f64 (*.f64 h h) -1/16) (*.f64 g g))))
(+.f64 (*.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3)))) (*.f64 -1/4 (/.f64 (pow.f64 h 2) (*.f64 a g))))
(fma.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3))) (*.f64 -1/4 (/.f64 (*.f64 h h) (*.f64 g a))))
(fma.f64 -1/4 (*.f64 (/.f64 h g) (/.f64 h a)) (*.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3)))))
(fma.f64 -1/4 (/.f64 (*.f64 h h) (*.f64 g a)) (*.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3)))))
(*.f64 (/.f64 (*.f64 h h) a) (+.f64 (/.f64 -1/4 g) (/.f64 (*.f64 (*.f64 h h) -1/16) (pow.f64 g 3))))
(*.f64 (/.f64 (*.f64 h h) a) (+.f64 (/.f64 -1/4 g) (*.f64 -1/16 (*.f64 (/.f64 h (pow.f64 g 3)) h))))
(*.f64 (/.f64 (*.f64 h (/.f64 h a)) g) (+.f64 -1/4 (/.f64 (*.f64 (*.f64 h h) -1/16) (*.f64 g g))))
(*.f64 -1/4 (/.f64 (pow.f64 h 2) (*.f64 a g)))
(*.f64 -1/4 (/.f64 (*.f64 h h) (*.f64 g a)))
(*.f64 -1/4 (*.f64 (/.f64 h g) (/.f64 h a)))
(*.f64 -1/4 (/.f64 (*.f64 h (/.f64 h a)) g))
(+.f64 (*.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3)))) (*.f64 -1/4 (/.f64 (pow.f64 h 2) (*.f64 a g))))
(fma.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3))) (*.f64 -1/4 (/.f64 (*.f64 h h) (*.f64 g a))))
(fma.f64 -1/4 (*.f64 (/.f64 h g) (/.f64 h a)) (*.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3)))))
(fma.f64 -1/4 (/.f64 (*.f64 h h) (*.f64 g a)) (*.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3)))))
(*.f64 (/.f64 (*.f64 h h) a) (+.f64 (/.f64 -1/4 g) (/.f64 (*.f64 (*.f64 h h) -1/16) (pow.f64 g 3))))
(*.f64 (/.f64 (*.f64 h h) a) (+.f64 (/.f64 -1/4 g) (*.f64 -1/16 (*.f64 (/.f64 h (pow.f64 g 3)) h))))
(*.f64 (/.f64 (*.f64 h (/.f64 h a)) g) (+.f64 -1/4 (/.f64 (*.f64 (*.f64 h h) -1/16) (*.f64 g g))))
(+.f64 (*.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3)))) (*.f64 -1/4 (/.f64 (pow.f64 h 2) (*.f64 a g))))
(fma.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3))) (*.f64 -1/4 (/.f64 (*.f64 h h) (*.f64 g a))))
(fma.f64 -1/4 (*.f64 (/.f64 h g) (/.f64 h a)) (*.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3)))))
(fma.f64 -1/4 (/.f64 (*.f64 h h) (*.f64 g a)) (*.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3)))))
(*.f64 (/.f64 (*.f64 h h) a) (+.f64 (/.f64 -1/4 g) (/.f64 (*.f64 (*.f64 h h) -1/16) (pow.f64 g 3))))
(*.f64 (/.f64 (*.f64 h h) a) (+.f64 (/.f64 -1/4 g) (*.f64 -1/16 (*.f64 (/.f64 h (pow.f64 g 3)) h))))
(*.f64 (/.f64 (*.f64 h (/.f64 h a)) g) (+.f64 -1/4 (/.f64 (*.f64 (*.f64 h h) -1/16) (*.f64 g g))))
(+.f64 (*.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3)))) (*.f64 -1/4 (/.f64 (pow.f64 h 2) (*.f64 a g))))
(fma.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3))) (*.f64 -1/4 (/.f64 (*.f64 h h) (*.f64 g a))))
(fma.f64 -1/4 (*.f64 (/.f64 h g) (/.f64 h a)) (*.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3)))))
(fma.f64 -1/4 (/.f64 (*.f64 h h) (*.f64 g a)) (*.f64 -1/16 (/.f64 (pow.f64 h 4) (*.f64 a (pow.f64 g 3)))))
(*.f64 (/.f64 (*.f64 h h) a) (+.f64 (/.f64 -1/4 g) (/.f64 (*.f64 (*.f64 h h) -1/16) (pow.f64 g 3))))
(*.f64 (/.f64 (*.f64 h h) a) (+.f64 (/.f64 -1/4 g) (*.f64 -1/16 (*.f64 (/.f64 h (pow.f64 g 3)) h))))
(*.f64 (/.f64 (*.f64 h (/.f64 h a)) g) (+.f64 -1/4 (/.f64 (*.f64 (*.f64 h h) -1/16) (*.f64 g g))))
(*.f64 -1/2 (/.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))) a))
(*.f64 -1/2 (/.f64 (fma.f64 1/2 (/.f64 (*.f64 h h) g) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))) a))
(*.f64 -1/2 (/.f64 (fma.f64 1/2 (/.f64 h (/.f64 g h)) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))) a))
(/.f64 (+.f64 (/.f64 (*.f64 (pow.f64 h 4) -1/16) (pow.f64 g 3)) (*.f64 -1/4 (*.f64 (/.f64 h g) h))) a)
(/.f64 (fma.f64 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) -1/16 (*.f64 -1/4 (*.f64 (/.f64 h g) h))) a)
(*.f64 -1/2 (/.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))) a))
(*.f64 -1/2 (/.f64 (fma.f64 1/2 (/.f64 (*.f64 h h) g) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))) a))
(*.f64 -1/2 (/.f64 (fma.f64 1/2 (/.f64 h (/.f64 g h)) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))) a))
(/.f64 (+.f64 (/.f64 (*.f64 (pow.f64 h 4) -1/16) (pow.f64 g 3)) (*.f64 -1/4 (*.f64 (/.f64 h g) h))) a)
(/.f64 (fma.f64 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) -1/16 (*.f64 -1/4 (*.f64 (/.f64 h g) h))) a)
(*.f64 -1/2 (/.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))) a))
(*.f64 -1/2 (/.f64 (fma.f64 1/2 (/.f64 (*.f64 h h) g) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))) a))
(*.f64 -1/2 (/.f64 (fma.f64 1/2 (/.f64 h (/.f64 g h)) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))) a))
(/.f64 (+.f64 (/.f64 (*.f64 (pow.f64 h 4) -1/16) (pow.f64 g 3)) (*.f64 -1/4 (*.f64 (/.f64 h g) h))) a)
(/.f64 (fma.f64 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) -1/16 (*.f64 -1/4 (*.f64 (/.f64 h g) h))) a)
(*.f64 -1/2 (/.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))) a))
(*.f64 -1/2 (/.f64 (fma.f64 1/2 (/.f64 (*.f64 h h) g) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))) a))
(*.f64 -1/2 (/.f64 (fma.f64 1/2 (/.f64 h (/.f64 g h)) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))) a))
(/.f64 (+.f64 (/.f64 (*.f64 (pow.f64 h 4) -1/16) (pow.f64 g 3)) (*.f64 -1/4 (*.f64 (/.f64 h g) h))) a)
(/.f64 (fma.f64 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) -1/16 (*.f64 -1/4 (*.f64 (/.f64 h g) h))) a)
(*.f64 -1/2 (/.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))) a))
(*.f64 -1/2 (/.f64 (fma.f64 1/2 (/.f64 (*.f64 h h) g) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))) a))
(*.f64 -1/2 (/.f64 (fma.f64 1/2 (/.f64 h (/.f64 g h)) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))) a))
(/.f64 (+.f64 (/.f64 (*.f64 (pow.f64 h 4) -1/16) (pow.f64 g 3)) (*.f64 -1/4 (*.f64 (/.f64 h g) h))) a)
(/.f64 (fma.f64 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) -1/16 (*.f64 -1/4 (*.f64 (/.f64 h g) h))) a)
(*.f64 -1/2 (/.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))) a))
(*.f64 -1/2 (/.f64 (fma.f64 1/2 (/.f64 (*.f64 h h) g) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))) a))
(*.f64 -1/2 (/.f64 (fma.f64 1/2 (/.f64 h (/.f64 g h)) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))) a))
(/.f64 (+.f64 (/.f64 (*.f64 (pow.f64 h 4) -1/16) (pow.f64 g 3)) (*.f64 -1/4 (*.f64 (/.f64 h g) h))) a)
(/.f64 (fma.f64 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) -1/16 (*.f64 -1/4 (*.f64 (/.f64 h g) h))) a)
(*.f64 -1/2 (/.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))) a))
(*.f64 -1/2 (/.f64 (fma.f64 1/2 (/.f64 (*.f64 h h) g) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))) a))
(*.f64 -1/2 (/.f64 (fma.f64 1/2 (/.f64 h (/.f64 g h)) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))) a))
(/.f64 (+.f64 (/.f64 (*.f64 (pow.f64 h 4) -1/16) (pow.f64 g 3)) (*.f64 -1/4 (*.f64 (/.f64 h g) h))) a)
(/.f64 (fma.f64 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) -1/16 (*.f64 -1/4 (*.f64 (/.f64 h g) h))) a)
(*.f64 -1/2 (/.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))) a))
(*.f64 -1/2 (/.f64 (fma.f64 1/2 (/.f64 (*.f64 h h) g) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))) a))
(*.f64 -1/2 (/.f64 (fma.f64 1/2 (/.f64 h (/.f64 g h)) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))) a))
(/.f64 (+.f64 (/.f64 (*.f64 (pow.f64 h 4) -1/16) (pow.f64 g 3)) (*.f64 -1/4 (*.f64 (/.f64 h g) h))) a)
(/.f64 (fma.f64 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) -1/16 (*.f64 -1/4 (*.f64 (/.f64 h g) h))) a)
(*.f64 -1/2 (/.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))) a))
(*.f64 -1/2 (/.f64 (fma.f64 1/2 (/.f64 (*.f64 h h) g) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))) a))
(*.f64 -1/2 (/.f64 (fma.f64 1/2 (/.f64 h (/.f64 g h)) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))) a))
(/.f64 (+.f64 (/.f64 (*.f64 (pow.f64 h 4) -1/16) (pow.f64 g 3)) (*.f64 -1/4 (*.f64 (/.f64 h g) h))) a)
(/.f64 (fma.f64 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) -1/16 (*.f64 -1/4 (*.f64 (/.f64 h g) h))) a)
(*.f64 -1/2 (/.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))) a))
(*.f64 -1/2 (/.f64 (fma.f64 1/2 (/.f64 (*.f64 h h) g) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))) a))
(*.f64 -1/2 (/.f64 (fma.f64 1/2 (/.f64 h (/.f64 g h)) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))) a))
(/.f64 (+.f64 (/.f64 (*.f64 (pow.f64 h 4) -1/16) (pow.f64 g 3)) (*.f64 -1/4 (*.f64 (/.f64 h g) h))) a)
(/.f64 (fma.f64 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) -1/16 (*.f64 -1/4 (*.f64 (/.f64 h g) h))) a)
(*.f64 -1/2 (/.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))) a))
(*.f64 -1/2 (/.f64 (fma.f64 1/2 (/.f64 (*.f64 h h) g) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))) a))
(*.f64 -1/2 (/.f64 (fma.f64 1/2 (/.f64 h (/.f64 g h)) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))) a))
(/.f64 (+.f64 (/.f64 (*.f64 (pow.f64 h 4) -1/16) (pow.f64 g 3)) (*.f64 -1/4 (*.f64 (/.f64 h g) h))) a)
(/.f64 (fma.f64 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) -1/16 (*.f64 -1/4 (*.f64 (/.f64 h g) h))) a)
(*.f64 -1/2 (/.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))) a))
(*.f64 -1/2 (/.f64 (fma.f64 1/2 (/.f64 (*.f64 h h) g) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))) a))
(*.f64 -1/2 (/.f64 (fma.f64 1/2 (/.f64 h (/.f64 g h)) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))) a))
(/.f64 (+.f64 (/.f64 (*.f64 (pow.f64 h 4) -1/16) (pow.f64 g 3)) (*.f64 -1/4 (*.f64 (/.f64 h g) h))) a)
(/.f64 (fma.f64 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) -1/16 (*.f64 -1/4 (*.f64 (/.f64 h g) h))) a)

localize66.0ms (0.6%)

Local error

Found 4 expressions with local error:

NewErrorProgram
3.8b
(-.f64 (*.f64 g g) (*.f64 h h))
8.3b
(cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g)))
16.8b
(cbrt.f64 (*.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g)) (/.f64 -1/2 a)))
32.1b
(sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))
Compiler

Compiled 190 to 65 computations (65.8% saved)

series11.0ms (0.1%)

Counts
1 → 4
Calls

9 calls:

TimeVariablePointExpression
6.0ms
g
@-inf
(cbrt.f64 (*.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g)) (/.f64 -1/2 a)))
2.0ms
h
@0
(cbrt.f64 (*.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g)) (/.f64 -1/2 a)))
1.0ms
g
@inf
(cbrt.f64 (*.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g)) (/.f64 -1/2 a)))
1.0ms
h
@inf
(cbrt.f64 (*.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g)) (/.f64 -1/2 a)))
0.0ms
g
@0
(cbrt.f64 (*.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g)) (/.f64 -1/2 a)))

rewrite69.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
636×log-prod_binary64
404×prod-diff_binary64
324×pow2_binary64
255×pow-unpow_binary64
228×pow1/3_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01222
126322
2356022
Stop Event
node limit
Counts
1 → 26
Calls
Call 1
Inputs
(cbrt.f64 (*.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g)) (/.f64 -1/2 a)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (cbrt.f64 (*.f64 (+.f64 (fma.f64 -1/2 (/.f64 (*.f64 h h) g) g) g) (/.f64 -1/2 a))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (cbrt.f64 (*.f64 (+.f64 (fma.f64 -1/2 (/.f64 (*.f64 h h) g) g) g) (/.f64 -1/2 a))))) 2)) (log.f64 (cbrt.f64 (exp.f64 (cbrt.f64 (*.f64 (+.f64 (fma.f64 -1/2 (/.f64 (*.f64 h h) g) g) g) (/.f64 -1/2 a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (cbrt.f64 (*.f64 (+.f64 (fma.f64 -1/2 (/.f64 (*.f64 h h) g) g) g) (/.f64 -1/2 a)))))) (log.f64 (sqrt.f64 (exp.f64 (cbrt.f64 (*.f64 (+.f64 (fma.f64 -1/2 (/.f64 (*.f64 h h) g) g) g) (/.f64 -1/2 a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (cbrt.f64 (*.f64 (+.f64 (fma.f64 -1/2 (/.f64 (*.f64 h h) g) g) g) (/.f64 -1/2 a))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (+.f64 (fma.f64 -1/2 (/.f64 (*.f64 h h) g) g) g) (/.f64 -1/2 a))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (cbrt.f64 (*.f64 (+.f64 (fma.f64 -1/2 (/.f64 (*.f64 h h) g) g) g) (/.f64 -1/2 a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (+.f64 (fma.f64 -1/2 (/.f64 (*.f64 h h) g) g) g)) (cbrt.f64 (/.f64 -1/2 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (*.f64 (+.f64 (fma.f64 -1/2 (/.f64 (*.f64 h h) g) g) g) (/.f64 -1/2 a)))) (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 (+.f64 (fma.f64 -1/2 (/.f64 (*.f64 h h) g) g) g) (/.f64 -1/2 a)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 (+.f64 (fma.f64 -1/2 (/.f64 (*.f64 h h) g) g) g) (/.f64 -1/2 a)))) 2) (cbrt.f64 (cbrt.f64 (*.f64 (+.f64 (fma.f64 -1/2 (/.f64 (*.f64 h h) g) g) g) (/.f64 -1/2 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 -1/2 a)) (cbrt.f64 (+.f64 (fma.f64 -1/2 (/.f64 (*.f64 h h) g) g) g)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (+.f64 (fma.f64 -1/2 (/.f64 (*.f64 h h) g) g) g) (/.f64 -1/2 a)) 1/6) (pow.f64 (*.f64 (+.f64 (fma.f64 -1/2 (/.f64 (*.f64 h h) g) g) g) (/.f64 -1/2 a)) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/3) (cbrt.f64 (*.f64 (+.f64 (fma.f64 -1/2 (/.f64 (*.f64 h h) g) g) g) (/.f64 -1/2 a))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (*.f64 -1/2 (+.f64 (fma.f64 -1/2 (/.f64 (*.f64 h h) g) g) g))) (cbrt.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (+.f64 (fma.f64 -1/2 (/.f64 (*.f64 h h) g) g) g) (/.f64 -1/2 a)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (+.f64 (fma.f64 -1/2 (/.f64 (*.f64 h h) g) g) g) (/.f64 -1/2 a))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cbrt.f64 (*.f64 (+.f64 (fma.f64 -1/2 (/.f64 (*.f64 h h) g) g) g) (/.f64 -1/2 a))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 (+.f64 (fma.f64 -1/2 (/.f64 (*.f64 h h) g) g) g) (/.f64 -1/2 a)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (+.f64 (fma.f64 -1/2 (/.f64 (*.f64 h h) g) g) g) (/.f64 -1/2 a)) 1/6) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 (+.f64 (fma.f64 -1/2 (/.f64 (*.f64 h h) g) g) g) (/.f64 -1/2 a))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (cbrt.f64 (*.f64 (+.f64 (fma.f64 -1/2 (/.f64 (*.f64 h h) g) g) g) (/.f64 -1/2 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (cbrt.f64 (*.f64 (+.f64 (fma.f64 -1/2 (/.f64 (*.f64 h h) g) g) g) (/.f64 -1/2 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (cbrt.f64 (*.f64 (+.f64 (fma.f64 -1/2 (/.f64 (*.f64 h h) g) g) g) (/.f64 -1/2 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (cbrt.f64 (*.f64 (+.f64 (fma.f64 -1/2 (/.f64 (*.f64 h h) g) g) g) (/.f64 -1/2 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (cbrt.f64 (*.f64 (+.f64 (fma.f64 -1/2 (/.f64 (*.f64 h h) g) g) g) (/.f64 -1/2 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (+.f64 (fma.f64 -1/2 (/.f64 (*.f64 h h) g) g) g) (/.f64 -1/2 a))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (+.f64 (fma.f64 -1/2 (/.f64 (*.f64 h h) g) g) g) (/.f64 -1/2 a)))) 1))))))

simplify83.0ms (0.7%)

Algorithm
egg-herbie
Rules
778×associate-*r/_binary64
676×associate-/l/_binary64
585×associate-/r/_binary64
553×fma-def_binary64
510×*-commutative_binary64
Iterations

Useful iterations: 5 (0.0ms)

IterNodesCost
059268
1162268
2467268
32116268
45597258
57312250
67830250
Stop Event
node limit
Counts
30 → 34
Calls
Call 1
Inputs
(*.f64 (pow.f64 (/.f64 (*.f64 1 g) a) 1/3) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)))
(+.f64 (*.f64 -1/6 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 h 2)) (pow.f64 (cbrt.f64 2) 2)) (pow.f64 (/.f64 1 (*.f64 a (pow.f64 g 5))) 1/3))) (*.f64 (pow.f64 (/.f64 (*.f64 1 g) a) 1/3) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2))))
(+.f64 (*.f64 -1/36 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 h 4)) (pow.f64 (cbrt.f64 2) 5)) (pow.f64 (/.f64 1 (*.f64 a (pow.f64 g 11))) 1/3))) (+.f64 (*.f64 -1/6 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 h 2)) (pow.f64 (cbrt.f64 2) 2)) (pow.f64 (/.f64 1 (*.f64 a (pow.f64 g 5))) 1/3))) (*.f64 (pow.f64 (/.f64 (*.f64 1 g) a) 1/3) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)))))
(+.f64 (*.f64 -1/36 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 h 4)) (pow.f64 (cbrt.f64 2) 5)) (pow.f64 (/.f64 1 (*.f64 a (pow.f64 g 11))) 1/3))) (+.f64 (*.f64 -1/6 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 h 2)) (pow.f64 (cbrt.f64 2) 2)) (pow.f64 (/.f64 1 (*.f64 a (pow.f64 g 5))) 1/3))) (+.f64 (*.f64 -5/648 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 h 6)) (pow.f64 (cbrt.f64 2) 8)) (pow.f64 (/.f64 1 (*.f64 a (pow.f64 g 17))) 1/3))) (*.f64 (pow.f64 (/.f64 (*.f64 1 g) a) 1/3) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2))))))
Outputs
(*.f64 (pow.f64 (/.f64 (*.f64 1 g) a) 1/3) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)))
(*.f64 (cbrt.f64 (/.f64 g a)) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)))
(+.f64 (*.f64 -1/6 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 h 2)) (pow.f64 (cbrt.f64 2) 2)) (pow.f64 (/.f64 1 (*.f64 a (pow.f64 g 5))) 1/3))) (*.f64 (pow.f64 (/.f64 (*.f64 1 g) a) 1/3) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2))))
(fma.f64 -1/6 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 h h)) (pow.f64 (cbrt.f64 2) 2)) (cbrt.f64 (/.f64 (/.f64 1 a) (pow.f64 g 5)))) (*.f64 (cbrt.f64 (/.f64 g a)) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2))))
(fma.f64 -1/6 (*.f64 (*.f64 (/.f64 (cbrt.f64 -1/2) (pow.f64 (cbrt.f64 2) 2)) (*.f64 h h)) (cbrt.f64 (/.f64 (/.f64 1 a) (pow.f64 g 5)))) (*.f64 (cbrt.f64 (/.f64 g a)) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2))))
(fma.f64 (cbrt.f64 (/.f64 g a)) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)) (*.f64 (cbrt.f64 (/.f64 (/.f64 1 a) (pow.f64 g 5))) (/.f64 (*.f64 (*.f64 h h) -1/6) (/.f64 (pow.f64 (cbrt.f64 2) 2) (cbrt.f64 -1/2)))))
(fma.f64 (cbrt.f64 (/.f64 g a)) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)) (*.f64 -1/6 (*.f64 (/.f64 (cbrt.f64 (/.f64 1 (*.f64 a (pow.f64 g 5)))) (pow.f64 (cbrt.f64 2) 2)) (*.f64 (cbrt.f64 -1/2) (*.f64 h h)))))
(*.f64 (cbrt.f64 -1/2) (+.f64 (*.f64 (cbrt.f64 (/.f64 g a)) (cbrt.f64 2)) (/.f64 (*.f64 (*.f64 h h) (*.f64 -1/6 (cbrt.f64 (/.f64 (/.f64 1 (pow.f64 g 5)) a)))) (pow.f64 (cbrt.f64 2) 2))))
(+.f64 (*.f64 -1/36 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 h 4)) (pow.f64 (cbrt.f64 2) 5)) (pow.f64 (/.f64 1 (*.f64 a (pow.f64 g 11))) 1/3))) (+.f64 (*.f64 -1/6 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 h 2)) (pow.f64 (cbrt.f64 2) 2)) (pow.f64 (/.f64 1 (*.f64 a (pow.f64 g 5))) 1/3))) (*.f64 (pow.f64 (/.f64 (*.f64 1 g) a) 1/3) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)))))
(fma.f64 -1/36 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 h 4)) (pow.f64 (cbrt.f64 2) 5)) (cbrt.f64 (/.f64 1 (*.f64 a (pow.f64 g 11))))) (fma.f64 -1/6 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 h h)) (pow.f64 (cbrt.f64 2) 2)) (cbrt.f64 (/.f64 (/.f64 1 a) (pow.f64 g 5)))) (*.f64 (cbrt.f64 (/.f64 g a)) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)))))
(fma.f64 -1/36 (*.f64 (*.f64 (/.f64 (cbrt.f64 -1/2) (pow.f64 (cbrt.f64 2) 5)) (pow.f64 h 4)) (cbrt.f64 (/.f64 (/.f64 1 a) (pow.f64 g 11)))) (fma.f64 -1/6 (*.f64 (*.f64 (/.f64 (cbrt.f64 -1/2) (pow.f64 (cbrt.f64 2) 2)) (*.f64 h h)) (cbrt.f64 (/.f64 (/.f64 1 a) (pow.f64 g 5)))) (*.f64 (cbrt.f64 (/.f64 g a)) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)))))
(fma.f64 (cbrt.f64 (/.f64 g a)) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)) (fma.f64 (*.f64 (*.f64 h h) (/.f64 (cbrt.f64 -1/2) (pow.f64 (cbrt.f64 2) 2))) (*.f64 -1/6 (cbrt.f64 (/.f64 (/.f64 1 a) (pow.f64 g 5)))) (*.f64 (cbrt.f64 (/.f64 (/.f64 1 a) (pow.f64 g 11))) (*.f64 -1/36 (*.f64 (pow.f64 h 4) (/.f64 (cbrt.f64 -1/2) (pow.f64 (cbrt.f64 2) 5)))))))
(fma.f64 (cbrt.f64 (/.f64 g a)) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)) (fma.f64 (cbrt.f64 (/.f64 1 (*.f64 a (pow.f64 g 11)))) (*.f64 (pow.f64 h 4) (/.f64 (*.f64 (cbrt.f64 -1/2) -1/36) (pow.f64 (cbrt.f64 2) 5))) (*.f64 -1/6 (*.f64 (/.f64 (cbrt.f64 (/.f64 1 (*.f64 a (pow.f64 g 5)))) (pow.f64 (cbrt.f64 2) 2)) (*.f64 (cbrt.f64 -1/2) (*.f64 h h))))))
(fma.f64 -1/36 (*.f64 (pow.f64 h 4) (/.f64 (*.f64 (cbrt.f64 -1/2) (cbrt.f64 (/.f64 (/.f64 1 a) (pow.f64 g 11)))) (pow.f64 (cbrt.f64 2) 5))) (*.f64 (cbrt.f64 -1/2) (+.f64 (*.f64 (cbrt.f64 (/.f64 g a)) (cbrt.f64 2)) (/.f64 (*.f64 (*.f64 h h) (*.f64 -1/6 (cbrt.f64 (/.f64 (/.f64 1 (pow.f64 g 5)) a)))) (pow.f64 (cbrt.f64 2) 2)))))
(*.f64 (cbrt.f64 -1/2) (+.f64 (*.f64 (cbrt.f64 (/.f64 g a)) (cbrt.f64 2)) (+.f64 (/.f64 (*.f64 (*.f64 h h) (*.f64 -1/6 (cbrt.f64 (/.f64 (/.f64 1 (pow.f64 g 5)) a)))) (pow.f64 (cbrt.f64 2) 2)) (/.f64 (*.f64 (pow.f64 h 4) (*.f64 -1/36 (cbrt.f64 (/.f64 (/.f64 1 a) (pow.f64 g 11))))) (pow.f64 (cbrt.f64 2) 5)))))
(+.f64 (*.f64 -1/36 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 h 4)) (pow.f64 (cbrt.f64 2) 5)) (pow.f64 (/.f64 1 (*.f64 a (pow.f64 g 11))) 1/3))) (+.f64 (*.f64 -1/6 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 h 2)) (pow.f64 (cbrt.f64 2) 2)) (pow.f64 (/.f64 1 (*.f64 a (pow.f64 g 5))) 1/3))) (+.f64 (*.f64 -5/648 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 h 6)) (pow.f64 (cbrt.f64 2) 8)) (pow.f64 (/.f64 1 (*.f64 a (pow.f64 g 17))) 1/3))) (*.f64 (pow.f64 (/.f64 (*.f64 1 g) a) 1/3) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2))))))
(fma.f64 -1/36 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 h 4)) (pow.f64 (cbrt.f64 2) 5)) (cbrt.f64 (/.f64 1 (*.f64 a (pow.f64 g 11))))) (fma.f64 -1/6 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 h h)) (pow.f64 (cbrt.f64 2) 2)) (cbrt.f64 (/.f64 (/.f64 1 a) (pow.f64 g 5)))) (fma.f64 -5/648 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 h 6)) (pow.f64 (cbrt.f64 2) 8)) (cbrt.f64 (/.f64 1 (*.f64 a (pow.f64 g 17))))) (*.f64 (cbrt.f64 (/.f64 g a)) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2))))))
(fma.f64 -1/36 (*.f64 (*.f64 (/.f64 (cbrt.f64 -1/2) (pow.f64 (cbrt.f64 2) 5)) (pow.f64 h 4)) (cbrt.f64 (/.f64 (/.f64 1 a) (pow.f64 g 11)))) (fma.f64 -1/6 (*.f64 (*.f64 (/.f64 (cbrt.f64 -1/2) (pow.f64 (cbrt.f64 2) 2)) (*.f64 h h)) (cbrt.f64 (/.f64 (/.f64 1 a) (pow.f64 g 5)))) (fma.f64 -5/648 (/.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (pow.f64 h 6) (cbrt.f64 (/.f64 (/.f64 1 a) (pow.f64 g 17))))) (pow.f64 (cbrt.f64 2) 8)) (*.f64 (cbrt.f64 (/.f64 g a)) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2))))))
(fma.f64 -1/6 (*.f64 (*.f64 (*.f64 h h) (/.f64 (cbrt.f64 -1/2) (pow.f64 (cbrt.f64 2) 2))) (cbrt.f64 (/.f64 (/.f64 1 a) (pow.f64 g 5)))) (fma.f64 -1/36 (*.f64 (*.f64 (pow.f64 h 4) (/.f64 (cbrt.f64 -1/2) (pow.f64 (cbrt.f64 2) 5))) (cbrt.f64 (/.f64 (/.f64 1 a) (pow.f64 g 11)))) (fma.f64 (cbrt.f64 (/.f64 g a)) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)) (*.f64 (*.f64 (pow.f64 h 6) (/.f64 (cbrt.f64 -1/2) (pow.f64 (cbrt.f64 2) 8))) (*.f64 -5/648 (cbrt.f64 (/.f64 (/.f64 1 a) (pow.f64 g 17))))))))
(fma.f64 (cbrt.f64 (/.f64 g a)) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)) (fma.f64 -5/648 (*.f64 (*.f64 (pow.f64 h 6) (/.f64 (cbrt.f64 -1/2) (pow.f64 (cbrt.f64 2) 8))) (cbrt.f64 (/.f64 1 (*.f64 a (pow.f64 g 17))))) (fma.f64 (cbrt.f64 (/.f64 1 (*.f64 a (pow.f64 g 11)))) (*.f64 (pow.f64 h 4) (/.f64 (*.f64 (cbrt.f64 -1/2) -1/36) (pow.f64 (cbrt.f64 2) 5))) (*.f64 -1/6 (*.f64 (/.f64 (cbrt.f64 (/.f64 1 (*.f64 a (pow.f64 g 5)))) (pow.f64 (cbrt.f64 2) 2)) (*.f64 (cbrt.f64 -1/2) (*.f64 h h)))))))
(+.f64 (*.f64 (cbrt.f64 -1/2) (+.f64 (*.f64 (cbrt.f64 (/.f64 g a)) (cbrt.f64 2)) (/.f64 (*.f64 (*.f64 h h) (*.f64 -1/6 (cbrt.f64 (/.f64 (/.f64 1 (pow.f64 g 5)) a)))) (pow.f64 (cbrt.f64 2) 2)))) (*.f64 (cbrt.f64 -1/2) (+.f64 (/.f64 (*.f64 (pow.f64 h 4) (*.f64 -1/36 (cbrt.f64 (/.f64 (/.f64 1 a) (pow.f64 g 11))))) (pow.f64 (cbrt.f64 2) 5)) (/.f64 (*.f64 (pow.f64 h 6) (*.f64 -5/648 (cbrt.f64 (/.f64 (/.f64 1 a) (pow.f64 g 17))))) (pow.f64 (cbrt.f64 2) 8)))))
(*.f64 (cbrt.f64 -1/2) (+.f64 (+.f64 (*.f64 (cbrt.f64 (/.f64 g a)) (cbrt.f64 2)) (/.f64 (*.f64 (*.f64 h h) (*.f64 -1/6 (cbrt.f64 (/.f64 (/.f64 1 (pow.f64 g 5)) a)))) (pow.f64 (cbrt.f64 2) 2))) (+.f64 (/.f64 (*.f64 (pow.f64 h 6) (*.f64 -5/648 (cbrt.f64 (/.f64 (/.f64 1 a) (pow.f64 g 17))))) (pow.f64 (cbrt.f64 2) 8)) (/.f64 (*.f64 (pow.f64 h 4) (*.f64 -1/36 (cbrt.f64 (/.f64 (/.f64 1 a) (pow.f64 g 11))))) (pow.f64 (cbrt.f64 2) 5)))))

eval425.0ms (3.7%)

Compiler

Compiled 25739 to 14445 computations (43.9% saved)

prune185.0ms (1.6%)

Pruning

43 alts after pruning (38 fresh and 5 done)

PrunedKeptTotal
New70327730
Fresh221133
Picked011
Done246
Total72743770
Error
1.1b
Counts
770 → 43
Alt Table
Click to see full alt table
StatusErrorProgram
40.3b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 2) (pow.f64 (/.f64 a g) -1/3))))
2.7b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g) g))) (/.f64 (cbrt.f64 (*.f64 -1/2 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g)))) (cbrt.f64 a)))
62.1b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (+.f64 g (neg.f64 g)) (/.f64 -1/2 a))))
61.3b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 -1/4 (/.f64 (*.f64 h (/.f64 h a)) g))))
19.6b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 2) (cbrt.f64 (/.f64 g a)))))
18.8b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g) g))) (cbrt.f64 (/.f64 1 (/.f64 a (*.f64 -1/2 (+.f64 g (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g)))))))
61.6b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 -1/4 (/.f64 (pow.f64 h 2) (*.f64 a g)))))
19.1b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g) g))) (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g)) (/.f64 -1/2 a)))) 3))
34.6b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (expm1.f64 (log1p.f64 (cbrt.f64 (*.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g)) (/.f64 -1/2 a))))))
3.8b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 -1/2) (/.f64 (*.f64 (cbrt.f64 g) (cbrt.f64 2)) (cbrt.f64 a))))
53.5b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (expm1.f64 (log1p.f64 (cbrt.f64 (*.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g)) (/.f64 -1/2 a))))))
17.9b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (*.f64 -1/2 (*.f64 h (/.f64 h g))))) (cbrt.f64 (*.f64 (+.f64 g (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g)) (/.f64 -1/2 a))))
59.0b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (pow.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (/.f64 -1/2 a)) 1/3))
53.6b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (+.f64 0 (fma.f64 1/3 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (cbrt.f64 (*.f64 (/.f64 a g) (/.f64 a g)))) (pow.f64 (cbrt.f64 2) 2)) (+.f64 (*.f64 (/.f64 -1/2 (*.f64 g a)) (*.f64 h h)) 0)) (*.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 2) (cbrt.f64 (/.f64 g a)))))))
61.4b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (*.f64 (/.f64 1/2 g) (*.f64 h h)) (/.f64 -1/2 a))))
60.2b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (+.f64 g g) (cbrt.f64 (/.f64 -1/2 a))))
19.2b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 (*.f64 (/.f64 g a) 2))))
51.0b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/6) (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (/.f64 -1/2 a))))
62.5b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (sqrt.f64 (pow.f64 (/.f64 (+.f64 g g) (cbrt.f64 a)) 2)))
40.4b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (*.f64 (-.f64 g h) (+.f64 g h)))) (/.f64 -1/2 a))))
61.4b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (/.f64 -1/2 a))))
50.8b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (/.f64 (*.f64 (/.f64 -1/2 a) (*.f64 2 (pow.f64 g 3))) (fma.f64 g g 0))))
19.2b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (/.f64 (neg.f64 g) a)))
2.7b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g) g))) (*.f64 (cbrt.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g))) (cbrt.f64 (/.f64 -1/2 a))))
19.1b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (+.f64 g g) (/.f64 -1/2 a))))
19.3b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 -1/2) (*.f64 (+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (cbrt.f64 2))) 2)) (log.f64 (cbrt.f64 (exp.f64 (cbrt.f64 2))))) (cbrt.f64 (/.f64 g a)))))
50.0b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (-.f64 (*.f64 1/2 (/.f64 h (/.f64 g h))) g) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
63.2b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (/.f64 g a)))
44.8b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (/.f64 (cbrt.f64 (*.f64 -1/2 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g)))) (cbrt.f64 a)))
49.4b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.f64 g (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g)) (/.f64 -1/2 a))))
57.5b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (fma.f64 (+.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/4) (sqrt.f64 g)) (-.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/4) (sqrt.f64 g)) (fma.f64 (neg.f64 (cbrt.f64 g)) (pow.f64 (cbrt.f64 g) 2) g)))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
19.0b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g) g))) (*.f64 (cbrt.f64 (/.f64 g a)) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2))))
3.8b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 2) (/.f64 (cbrt.f64 g) (cbrt.f64 a)))))
63.2b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (/.f64 (+.f64 g g) (cbrt.f64 a)))
51.5b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 (/.f64 -1/2 a)) (cbrt.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))))
3.7b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 2) (/.f64 1 (/.f64 (cbrt.f64 a) (cbrt.f64 g))))))
3.7b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 2) (*.f64 (cbrt.f64 g) (/.f64 1 (cbrt.f64 a))))))
18.6b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g) g))) (cbrt.f64 (/.f64 (neg.f64 g) a)))
40.7b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 -1/2) (pow.f64 (*.f64 (/.f64 g a) 2) 1/3)))
19.4b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 2) (/.f64 1 (cbrt.f64 (/.f64 a g))))))
19.3b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 -1/2) (*.f64 (pow.f64 4 1/6) (cbrt.f64 (/.f64 g a)))))
51.5b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (/.f64 (cbrt.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) -1/2)) (cbrt.f64 a)))
19.7b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 -1/2) (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2))) 3)))
Compiler

Compiled 2266 to 1589 computations (29.9% saved)

localize51.0ms (0.4%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.6b
(cbrt.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g)))
0.6b
(cbrt.f64 (/.f64 -1/2 a))
1.2b
(cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g) g)))
2.5b
(-.f64 (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g) g)
Compiler

Compiled 153 to 62 computations (59.5% saved)

series6.0ms (0.1%)

Counts
2 → 4
Calls

9 calls:

TimeVariablePointExpression
2.0ms
h
@0
(cbrt.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g)))
1.0ms
g
@inf
(cbrt.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g)))
1.0ms
a
@0
(cbrt.f64 (/.f64 -1/2 a))
1.0ms
g
@-inf
(cbrt.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g)))
0.0ms
a
@inf
(cbrt.f64 (/.f64 -1/2 a))

rewrite65.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
587×log-prod_binary64
404×prod-diff_binary64
311×pow2_binary64
224×pow-unpow_binary64
217×expm1-udef_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01222
125822
2341022
Stop Event
node limit
Counts
2 → 59
Calls
Call 1
Inputs
(cbrt.f64 (/.f64 -1/2 a))
(cbrt.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (cbrt.f64 (/.f64 -1/2 a)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (cbrt.f64 (/.f64 -1/2 a)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (cbrt.f64 (/.f64 -1/2 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (cbrt.f64 (/.f64 -1/2 a))))) (log.f64 (sqrt.f64 (exp.f64 (cbrt.f64 (/.f64 -1/2 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (cbrt.f64 (/.f64 -1/2 a)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 -1/2 a)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (cbrt.f64 (/.f64 -1/2 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (/.f64 -1/2 a))) (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 -1/2 a))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 -1/2 a))) 2) (cbrt.f64 (cbrt.f64 (/.f64 -1/2 a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 -1/2) (/.f64 1 (cbrt.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 -1/2 a) 1/6) (pow.f64 (/.f64 -1/2 a) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/3) (cbrt.f64 (/.f64 -1/2 a)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (cbrt.f64 (*.f64 a -2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (cbrt.f64 a) (cbrt.f64 -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 -1/2) (cbrt.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 1/2) (cbrt.f64 (neg.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (cbrt.f64 -1/2)) (neg.f64 (cbrt.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 -1/2 a) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 -1/2 a)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cbrt.f64 (/.f64 -1/2 a)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 -1/2 a) 3) 1/9)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 -1/2 a))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 -1/2 a) 1/6) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 -1/2 a)) 2/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 a -2) -1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 a -2)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (cbrt.f64 a) (cbrt.f64 -1/2)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (cbrt.f64 (/.f64 -1/2 a)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (cbrt.f64 (/.f64 -1/2 a))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (cbrt.f64 (/.f64 -1/2 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (cbrt.f64 (/.f64 -1/2 a))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (cbrt.f64 (/.f64 -1/2 a))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (cbrt.f64 (/.f64 -1/2 a))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 -1/2 a)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 -1/2 a))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (cbrt.f64 (+.f64 (fma.f64 -1/2 (/.f64 (*.f64 h h) g) g) g)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (cbrt.f64 (+.f64 (fma.f64 -1/2 (/.f64 (*.f64 h h) g) g) g)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (cbrt.f64 (+.f64 (fma.f64 -1/2 (/.f64 (*.f64 h h) g) g) g))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (cbrt.f64 (+.f64 (fma.f64 -1/2 (/.f64 (*.f64 h h) g) g) g))))) (log.f64 (sqrt.f64 (exp.f64 (cbrt.f64 (+.f64 (fma.f64 -1/2 (/.f64 (*.f64 h h) g) g) g))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (cbrt.f64 (+.f64 (fma.f64 -1/2 (/.f64 (*.f64 h h) g) g) g)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (+.f64 (fma.f64 -1/2 (/.f64 (*.f64 h h) g) g) g)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (cbrt.f64 (+.f64 (fma.f64 -1/2 (/.f64 (*.f64 h h) g) g) g)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (+.f64 (fma.f64 -1/2 (/.f64 (*.f64 h h) g) g) g))) (pow.f64 (cbrt.f64 (cbrt.f64 (+.f64 (fma.f64 -1/2 (/.f64 (*.f64 h h) g) g) g))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (+.f64 (fma.f64 -1/2 (/.f64 (*.f64 h h) g) g) g))) 2) (cbrt.f64 (cbrt.f64 (+.f64 (fma.f64 -1/2 (/.f64 (*.f64 h h) g) g) g))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (+.f64 (fma.f64 -1/2 (/.f64 (*.f64 h h) g) g) g) 1/6) (pow.f64 (+.f64 (fma.f64 -1/2 (/.f64 (*.f64 h h) g) g) g) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/3) (cbrt.f64 (+.f64 (fma.f64 -1/2 (/.f64 (*.f64 h h) g) g) g)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 (fma.f64 -1/2 (/.f64 (*.f64 h h) g) g) g) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (+.f64 (fma.f64 -1/2 (/.f64 (*.f64 h h) g) g) g)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (+.f64 (fma.f64 -1/2 (/.f64 (*.f64 h h) g) g) g) 3) 1/9)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cbrt.f64 (+.f64 (fma.f64 -1/2 (/.f64 (*.f64 h h) g) g) g)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (cbrt.f64 (+.f64 (fma.f64 -1/2 (/.f64 (*.f64 h h) g) g) g))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (+.f64 (fma.f64 -1/2 (/.f64 (*.f64 h h) g) g) g)) 2/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (+.f64 (fma.f64 -1/2 (/.f64 (*.f64 h h) g) g) g) 1/6) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (cbrt.f64 (+.f64 (fma.f64 -1/2 (/.f64 (*.f64 h h) g) g) g)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (cbrt.f64 (+.f64 (fma.f64 -1/2 (/.f64 (*.f64 h h) g) g) g))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (cbrt.f64 (+.f64 (fma.f64 -1/2 (/.f64 (*.f64 h h) g) g) g)))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (cbrt.f64 (+.f64 (fma.f64 -1/2 (/.f64 (*.f64 h h) g) g) g))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (cbrt.f64 (+.f64 (fma.f64 -1/2 (/.f64 (*.f64 h h) g) g) g))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (cbrt.f64 (+.f64 (fma.f64 -1/2 (/.f64 (*.f64 h h) g) g) g))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (+.f64 (fma.f64 -1/2 (/.f64 (*.f64 h h) g) g) g)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (+.f64 (fma.f64 -1/2 (/.f64 (*.f64 h h) g) g) g))) 1))))))

simplify82.0ms (0.7%)

Algorithm
egg-herbie
Rules
920×associate-/l*_binary64
828×fma-def_binary64
598×associate-/r*_binary64
495×associate-*l/_binary64
374×associate-*r/_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
049188
1133188
2351188
31409188
46524188
56946188
67282188
77856188
Stop Event
node limit
Counts
63 → 67
Calls
Call 1
Inputs
(*.f64 (pow.f64 (*.f64 1 g) 1/3) (cbrt.f64 2))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 (/.f64 1 (pow.f64 g 5)) 1/3) (/.f64 (pow.f64 h 2) (pow.f64 (cbrt.f64 2) 2)))) (*.f64 (pow.f64 (*.f64 1 g) 1/3) (cbrt.f64 2)))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 (/.f64 1 (pow.f64 g 5)) 1/3) (/.f64 (pow.f64 h 2) (pow.f64 (cbrt.f64 2) 2)))) (+.f64 (*.f64 (pow.f64 (*.f64 1 g) 1/3) (cbrt.f64 2)) (*.f64 -1/36 (*.f64 (pow.f64 (/.f64 1 (pow.f64 g 11)) 1/3) (/.f64 (pow.f64 h 4) (pow.f64 (cbrt.f64 2) 5))))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 (/.f64 1 (pow.f64 g 5)) 1/3) (/.f64 (pow.f64 h 2) (pow.f64 (cbrt.f64 2) 2)))) (+.f64 (*.f64 (pow.f64 (*.f64 1 g) 1/3) (cbrt.f64 2)) (+.f64 (*.f64 -5/648 (*.f64 (pow.f64 (/.f64 1 (pow.f64 g 17)) 1/3) (/.f64 (pow.f64 h 6) (pow.f64 (cbrt.f64 2) 8)))) (*.f64 -1/36 (*.f64 (pow.f64 (/.f64 1 (pow.f64 g 11)) 1/3) (/.f64 (pow.f64 h 4) (pow.f64 (cbrt.f64 2) 5)))))))
Outputs
(*.f64 (pow.f64 (*.f64 1 g) 1/3) (cbrt.f64 2))
(*.f64 (cbrt.f64 g) (cbrt.f64 2))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 (/.f64 1 (pow.f64 g 5)) 1/3) (/.f64 (pow.f64 h 2) (pow.f64 (cbrt.f64 2) 2)))) (*.f64 (pow.f64 (*.f64 1 g) 1/3) (cbrt.f64 2)))
(fma.f64 -1/6 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 g 5))) (/.f64 (*.f64 h h) (pow.f64 (cbrt.f64 2) 2))) (*.f64 (cbrt.f64 g) (cbrt.f64 2)))
(fma.f64 (cbrt.f64 g) (cbrt.f64 2) (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 g 5))) (*.f64 (/.f64 (*.f64 h h) (pow.f64 (cbrt.f64 2) 2)) -1/6)))
(fma.f64 -1/6 (/.f64 (cbrt.f64 (/.f64 1 (pow.f64 g 5))) (/.f64 (pow.f64 (cbrt.f64 2) 2) (*.f64 h h))) (*.f64 (cbrt.f64 g) (cbrt.f64 2)))
(fma.f64 (cbrt.f64 (/.f64 1 (pow.f64 g 5))) (/.f64 (*.f64 -1/6 (*.f64 h h)) (pow.f64 (cbrt.f64 2) 2)) (*.f64 (cbrt.f64 g) (cbrt.f64 2)))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 (/.f64 1 (pow.f64 g 5)) 1/3) (/.f64 (pow.f64 h 2) (pow.f64 (cbrt.f64 2) 2)))) (+.f64 (*.f64 (pow.f64 (*.f64 1 g) 1/3) (cbrt.f64 2)) (*.f64 -1/36 (*.f64 (pow.f64 (/.f64 1 (pow.f64 g 11)) 1/3) (/.f64 (pow.f64 h 4) (pow.f64 (cbrt.f64 2) 5))))))
(fma.f64 -1/6 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 g 5))) (/.f64 (*.f64 h h) (pow.f64 (cbrt.f64 2) 2))) (fma.f64 (cbrt.f64 g) (cbrt.f64 2) (*.f64 -1/36 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 g 11))) (/.f64 (pow.f64 h 4) (pow.f64 (cbrt.f64 2) 5))))))
(fma.f64 (*.f64 -1/6 (cbrt.f64 (/.f64 1 (pow.f64 g 5)))) (/.f64 (*.f64 h h) (pow.f64 (cbrt.f64 2) 2)) (fma.f64 (*.f64 -1/36 (cbrt.f64 (/.f64 1 (pow.f64 g 11)))) (/.f64 (pow.f64 h 4) (pow.f64 (cbrt.f64 2) 5)) (*.f64 (cbrt.f64 g) (cbrt.f64 2))))
(fma.f64 (cbrt.f64 g) (cbrt.f64 2) (fma.f64 -1/6 (/.f64 (cbrt.f64 (/.f64 1 (pow.f64 g 5))) (/.f64 (pow.f64 (cbrt.f64 2) 2) (*.f64 h h))) (*.f64 -1/36 (/.f64 (cbrt.f64 (/.f64 1 (pow.f64 g 11))) (/.f64 (pow.f64 (cbrt.f64 2) 5) (pow.f64 h 4))))))
(fma.f64 (cbrt.f64 (/.f64 1 (pow.f64 g 5))) (/.f64 (*.f64 -1/6 (*.f64 h h)) (pow.f64 (cbrt.f64 2) 2)) (fma.f64 -1/36 (/.f64 (cbrt.f64 (/.f64 1 (pow.f64 g 11))) (/.f64 (pow.f64 (cbrt.f64 2) 5) (pow.f64 h 4))) (*.f64 (cbrt.f64 g) (cbrt.f64 2))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 (/.f64 1 (pow.f64 g 5)) 1/3) (/.f64 (pow.f64 h 2) (pow.f64 (cbrt.f64 2) 2)))) (+.f64 (*.f64 (pow.f64 (*.f64 1 g) 1/3) (cbrt.f64 2)) (+.f64 (*.f64 -5/648 (*.f64 (pow.f64 (/.f64 1 (pow.f64 g 17)) 1/3) (/.f64 (pow.f64 h 6) (pow.f64 (cbrt.f64 2) 8)))) (*.f64 -1/36 (*.f64 (pow.f64 (/.f64 1 (pow.f64 g 11)) 1/3) (/.f64 (pow.f64 h 4) (pow.f64 (cbrt.f64 2) 5)))))))
(fma.f64 -1/6 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 g 5))) (/.f64 (*.f64 h h) (pow.f64 (cbrt.f64 2) 2))) (fma.f64 (cbrt.f64 g) (cbrt.f64 2) (fma.f64 -5/648 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 g 17))) (/.f64 (pow.f64 h 6) (pow.f64 (cbrt.f64 2) 8))) (*.f64 -1/36 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 g 11))) (/.f64 (pow.f64 h 4) (pow.f64 (cbrt.f64 2) 5)))))))
(fma.f64 -1/6 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 g 5))) (/.f64 (*.f64 h h) (pow.f64 (cbrt.f64 2) 2))) (fma.f64 (cbrt.f64 g) (cbrt.f64 2) (fma.f64 -1/36 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 g 11))) (/.f64 (pow.f64 h 4) (pow.f64 (cbrt.f64 2) 5))) (*.f64 -5/648 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 g 17))) (/.f64 (pow.f64 h 6) (pow.f64 (cbrt.f64 2) 8)))))))
(fma.f64 -1/6 (/.f64 (cbrt.f64 (/.f64 1 (pow.f64 g 5))) (/.f64 (pow.f64 (cbrt.f64 2) 2) (*.f64 h h))) (fma.f64 (cbrt.f64 (/.f64 1 (pow.f64 g 17))) (*.f64 -5/648 (/.f64 (pow.f64 h 6) (pow.f64 (cbrt.f64 2) 8))) (fma.f64 -1/36 (/.f64 (cbrt.f64 (/.f64 1 (pow.f64 g 11))) (/.f64 (pow.f64 (cbrt.f64 2) 5) (pow.f64 h 4))) (*.f64 (cbrt.f64 g) (cbrt.f64 2)))))
(fma.f64 (cbrt.f64 g) (cbrt.f64 2) (fma.f64 -1/36 (/.f64 (cbrt.f64 (/.f64 1 (pow.f64 g 11))) (/.f64 (pow.f64 (cbrt.f64 2) 5) (pow.f64 h 4))) (fma.f64 (cbrt.f64 (/.f64 1 (pow.f64 g 5))) (/.f64 (*.f64 -1/6 (*.f64 h h)) (pow.f64 (cbrt.f64 2) 2)) (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 g 17))) (*.f64 -5/648 (/.f64 (pow.f64 h 6) (pow.f64 (cbrt.f64 2) 8)))))))

localize19.0ms (0.2%)

Local error

Found 1 expressions with local error:

NewErrorProgram
16.8b
(cbrt.f64 (/.f64 g a))
Compiler

Compiled 47 to 21 computations (55.3% saved)

localize32.0ms (0.3%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(*.f64 (/.f64 g a) 2)
0.2b
(*.f64 (cbrt.f64 -1/2) (pow.f64 (*.f64 (/.f64 g a) 2) 1/3))
17.3b
(pow.f64 (*.f64 (/.f64 g a) 2) 1/3)
Compiler

Compiled 76 to 45 computations (40.8% saved)

series8.0ms (0.1%)

Counts
3 → 24
Calls

18 calls:

TimeVariablePointExpression
1.0ms
g
@0
(*.f64 (cbrt.f64 -1/2) (pow.f64 (*.f64 (/.f64 g a) 2) 1/3))
1.0ms
g
@0
(pow.f64 (*.f64 (/.f64 g a) 2) 1/3)
0.0ms
g
@inf
(*.f64 (cbrt.f64 -1/2) (pow.f64 (*.f64 (/.f64 g a) 2) 1/3))
0.0ms
g
@-inf
(*.f64 (cbrt.f64 -1/2) (pow.f64 (*.f64 (/.f64 g a) 2) 1/3))
0.0ms
a
@inf
(*.f64 (cbrt.f64 -1/2) (pow.f64 (*.f64 (/.f64 g a) 2) 1/3))

rewrite73.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
508×log-prod_binary64
385×exp-prod_binary64
366×prod-exp_binary64
306×pow-prod-down_binary64
270×pow2_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01130
123528
2269928
Stop Event
node limit
Counts
3 → 117
Calls
Call 1
Inputs
(pow.f64 (*.f64 (/.f64 g a) 2) 1/3)
(*.f64 (cbrt.f64 -1/2) (pow.f64 (*.f64 (/.f64 g a) 2) 1/3))
(*.f64 (/.f64 g a) 2)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (cbrt.f64 (*.f64 (/.f64 g a) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2))))) (log.f64 (sqrt.f64 (exp.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (cbrt.f64 (*.f64 (/.f64 g a) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2))) (cbrt.f64 (cbrt.f64 (*.f64 4 (pow.f64 (/.f64 g a) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (*.f64 4 (pow.f64 (/.f64 g a) 2)))) (cbrt.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 g a)) (cbrt.f64 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 2) (cbrt.f64 (/.f64 g a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (/.f64 g a) 2) 1/6) (pow.f64 (*.f64 (/.f64 g a) 2) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (*.f64 g 2)) (cbrt.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (cbrt.f64 (*.f64 4 (pow.f64 (/.f64 g a) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (/.f64 g a) 2))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 2 (log.f64 (*.f64 (/.f64 g a) 2))) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 1/6 (log.f64 (*.f64 (/.f64 g a) 2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (/.f64 g a) 2)) 1) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2))) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (/.f64 g a) 2)) 1/6) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 (/.f64 g a)) 1/3) (log.f64 (cbrt.f64 2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (log.f64 (cbrt.f64 (/.f64 g a))) (*.f64 (log.f64 2) 1/3)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 (/.f64 g a)) 1/3) (*.f64 (log.f64 2) 1/3)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 2) 1/3) (log.f64 (cbrt.f64 (/.f64 g a)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (log.f64 (cbrt.f64 2)) (*.f64 (log.f64 (/.f64 g a)) 1/3)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 2) 1/3) (*.f64 (log.f64 (/.f64 g a)) 1/3)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 (*.f64 (/.f64 g a) 2)) 1/6) (*.f64 1/6 (log.f64 (*.f64 (/.f64 g a) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 1/6 (log.f64 (*.f64 (/.f64 g a) 2))) (*.f64 (log.f64 (*.f64 (/.f64 g a) 2)) 1/6)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 (*.f64 (/.f64 g a) 2)) 1/6) (*.f64 (log.f64 (*.f64 (/.f64 g a) 2)) 1/6)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (cbrt.f64 (*.f64 (*.f64 (/.f64 g a) 2) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (cbrt.f64 (*.f64 (*.f64 (/.f64 g a) 2) -1/2)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (cbrt.f64 (*.f64 (*.f64 (/.f64 g a) 2) -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (cbrt.f64 (*.f64 (*.f64 (/.f64 g a) 2) -1/2))))) (log.f64 (sqrt.f64 (exp.f64 (cbrt.f64 (*.f64 (*.f64 (/.f64 g a) 2) -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (cbrt.f64 (*.f64 (*.f64 (/.f64 g a) 2) -1/2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (*.f64 (/.f64 g a) 2) -1/2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cbrt.f64 (*.f64 (*.f64 (/.f64 g a) 2) -1/2)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (*.f64 (/.f64 g a) 2) -1/2) 1) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 (*.f64 (/.f64 g a) 2) -1/2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (*.f64 (/.f64 g a) 2) -1/2) 1/6) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (cbrt.f64 (*.f64 (*.f64 (/.f64 g a) 2) -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (*.f64 (/.f64 g a) 2) -1/2) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 -1/2 (*.f64 (/.f64 g a) 2)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (cbrt.f64 (*.f64 (*.f64 (/.f64 g a) 2) -1/2)))) 2)) (cbrt.f64 (log.f64 (cbrt.f64 (*.f64 (*.f64 (/.f64 g a) 2) -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (cbrt.f64 (*.f64 (*.f64 (/.f64 g a) 2) -1/2))))) (sqrt.f64 (log.f64 (cbrt.f64 (*.f64 (*.f64 (/.f64 g a) 2) -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 (*.f64 (/.f64 g a) 2) -1/2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (cbrt.f64 (*.f64 (*.f64 (/.f64 g a) 2) -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (cbrt.f64 (*.f64 (*.f64 (/.f64 g a) 2) -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (*.f64 (/.f64 g a) 2) -1/2) 1))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (*.f64 (/.f64 g a) 2) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 -1/2 (*.f64 (/.f64 g a) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (cbrt.f64 (*.f64 (*.f64 (/.f64 g a) 2) -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (cbrt.f64 (*.f64 (*.f64 (/.f64 g a) 2) -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (cbrt.f64 (*.f64 (*.f64 (/.f64 g a) 2) -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (*.f64 (/.f64 g a) 2) -1/2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (*.f64 (/.f64 g a) 2) -1/2) 1)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (cbrt.f64 (*.f64 (*.f64 (/.f64 g a) 2) -1/2)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (*.f64 (/.f64 g a) 2) -1/2) 1/6)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (*.f64 (/.f64 g a) 2) -1/2)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 -1/2 (*.f64 (/.f64 g a) 2))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (*.f64 (/.f64 g a) 2) -1/2))) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2))) 1) (log.f64 (cbrt.f64 -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (log.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2))) (*.f64 (log.f64 -1/2) 1/3)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2))) 1) (*.f64 (log.f64 -1/2) 1/3)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (log.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2))) (*.f64 (log.f64 (cbrt.f64 -1/2)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2))) 1) (*.f64 (log.f64 (cbrt.f64 -1/2)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 -1/2) 1/3) (log.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 (cbrt.f64 -1/2)) 1) (log.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (log.f64 (cbrt.f64 -1/2)) (*.f64 (log.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2))) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 -1/2) 1/3) (*.f64 (log.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2))) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 (cbrt.f64 -1/2)) 1) (*.f64 (log.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2))) 1)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 g a) (/.f64 g a))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (/.f64 g a) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 2) (/.f64 g a))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 2) (/.f64 g a)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 2) (/.f64 g a)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 2) (/.f64 g a)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (/.f64 g a) 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 g (/.f64 a 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 2 (/.f64 a g))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 a (*.f64 g 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 g 2) a)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 g 2)) (neg.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 g 2) 1) a)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 g 2) (pow.f64 (cbrt.f64 a) 2)) (cbrt.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 g 2) (sqrt.f64 a)) (sqrt.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 g) 2) (neg.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (neg.f64 g)) (neg.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 g a) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 4 (pow.f64 (/.f64 g a) 2)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (/.f64 g a) 2) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2))) 9)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (/.f64 g a) 2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (/.f64 g a) 2) 1/6) 6)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (*.f64 (/.f64 g a) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 a (*.f64 g 2)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (/.f64 g a) 2))) 2)) (cbrt.f64 (log.f64 (*.f64 (/.f64 g a) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 (/.f64 g a) 2)))) (sqrt.f64 (log.f64 (*.f64 (/.f64 g a) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 4 (pow.f64 (/.f64 g a) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 2) (/.f64 g a)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (/.f64 g a) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (/.f64 g a) 2) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (/.f64 g a) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (/.f64 g a) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (/.f64 g a) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (/.f64 g a) 2)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 (/.f64 g a) 2))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (/.f64 g a) 2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (/.f64 g a) 2)) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2))) 1) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (log.f64 (*.f64 g 2)) (*.f64 (log.f64 a) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2))) 1) (*.f64 2/3 (log.f64 (*.f64 (/.f64 g a) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 2/3 (log.f64 (*.f64 (/.f64 g a) 2))) (*.f64 (log.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2))) 1)))))))

simplify13.0ms (0.1%)

Algorithm
egg-herbie
Rules
*-commutative_binary64
associate-/l*_binary64
associate-*r/_binary64
associate-*l/_binary64
associate-/r/_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
06168
19168
213168
317168
418168
Stop Event
saturated
Counts
141 → 118
Calls
Call 1
Inputs
(*.f64 2 (/.f64 g a))
(*.f64 2 (/.f64 g a))
(*.f64 2 (/.f64 g a))
(*.f64 2 (/.f64 g a))
(*.f64 2 (/.f64 g a))
(*.f64 2 (/.f64 g a))
(*.f64 2 (/.f64 g a))
(*.f64 2 (/.f64 g a))
(*.f64 2 (/.f64 g a))
(*.f64 2 (/.f64 g a))
(*.f64 2 (/.f64 g a))
(*.f64 2 (/.f64 g a))
(*.f64 2 (/.f64 g a))
(*.f64 2 (/.f64 g a))
(*.f64 2 (/.f64 g a))
(*.f64 2 (/.f64 g a))
(*.f64 2 (/.f64 g a))
(*.f64 2 (/.f64 g a))
(*.f64 2 (/.f64 g a))
(*.f64 2 (/.f64 g a))
(*.f64 2 (/.f64 g a))
(*.f64 2 (/.f64 g a))
(*.f64 2 (/.f64 g a))
(*.f64 2 (/.f64 g a))
Outputs
(*.f64 2 (/.f64 g a))
(*.f64 2 (/.f64 g a))
(*.f64 2 (/.f64 g a))
(*.f64 2 (/.f64 g a))
(*.f64 2 (/.f64 g a))
(*.f64 2 (/.f64 g a))
(*.f64 2 (/.f64 g a))
(*.f64 2 (/.f64 g a))
(*.f64 2 (/.f64 g a))
(*.f64 2 (/.f64 g a))
(*.f64 2 (/.f64 g a))
(*.f64 2 (/.f64 g a))
(*.f64 2 (/.f64 g a))
(*.f64 2 (/.f64 g a))
(*.f64 2 (/.f64 g a))
(*.f64 2 (/.f64 g a))
(*.f64 2 (/.f64 g a))
(*.f64 2 (/.f64 g a))
(*.f64 2 (/.f64 g a))
(*.f64 2 (/.f64 g a))
(*.f64 2 (/.f64 g a))
(*.f64 2 (/.f64 g a))
(*.f64 2 (/.f64 g a))
(*.f64 2 (/.f64 g a))

localize57.0ms (0.5%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(*.f64 2 (pow.f64 g 3))
4.9b
(*.f64 (/.f64 -1/2 a) (*.f64 2 (pow.f64 g 3)))
16.8b
(cbrt.f64 (/.f64 (*.f64 (/.f64 -1/2 a) (*.f64 2 (pow.f64 g 3))) (fma.f64 g g 0)))
39.2b
(/.f64 (*.f64 (/.f64 -1/2 a) (*.f64 2 (pow.f64 g 3))) (fma.f64 g g 0))
Compiler

Compiled 108 to 72 computations (33.3% saved)

series46.0ms (0.4%)

Counts
4 → 48
Calls

21 calls:

TimeVariablePointExpression
21.0ms
g
@-inf
(/.f64 (*.f64 (/.f64 -1/2 a) (*.f64 2 (pow.f64 g 3))) (fma.f64 g g 0))
4.0ms
a
@0
(/.f64 (*.f64 (/.f64 -1/2 a) (*.f64 2 (pow.f64 g 3))) (fma.f64 g g 0))
3.0ms
a
@inf
(cbrt.f64 (/.f64 (*.f64 (/.f64 -1/2 a) (*.f64 2 (pow.f64 g 3))) (fma.f64 g g 0)))
2.0ms
g
@0
(/.f64 (*.f64 (/.f64 -1/2 a) (*.f64 2 (pow.f64 g 3))) (fma.f64 g g 0))
2.0ms
a
@inf
(/.f64 (*.f64 (/.f64 -1/2 a) (*.f64 2 (pow.f64 g 3))) (fma.f64 g g 0))

rewrite121.0ms (1.1%)

Algorithm
batch-egg-rewrite
Rules
669×log-prod_binary64
328×pow2_binary64
256×pow-unpow_binary64
230×expm1-udef_binary64
230×log1p-udef_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01462
130150
2372539
Stop Event
node limit
Counts
4 → 143
Calls
Call 1
Inputs
(/.f64 (*.f64 (/.f64 -1/2 a) (*.f64 2 (pow.f64 g 3))) (fma.f64 g g 0))
(cbrt.f64 (/.f64 (*.f64 (/.f64 -1/2 a) (*.f64 2 (pow.f64 g 3))) (fma.f64 g g 0)))
(*.f64 (/.f64 -1/2 a) (*.f64 2 (pow.f64 g 3)))
(*.f64 2 (pow.f64 g 3))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (/.f64 (/.f64 -1 a) 1) g))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g))) 2)) (log.f64 (cbrt.f64 (exp.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g)))) (log.f64 (sqrt.f64 (exp.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -1/2 a) (/.f64 1 (*.f64 1/2 (/.f64 1 g))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -1/2 a) (*.f64 (*.f64 2 (pow.f64 g 3)) (pow.f64 g -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (pow.f64 g 3)) (*.f64 (/.f64 -1/2 a) (pow.f64 g -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 g 3) (/.f64 -1 a)) (pow.f64 g -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g)) (cbrt.f64 (pow.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (/.f64 (/.f64 -1 a) 1) g))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g) 2)) (cbrt.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (cbrt.f64 (/.f64 -1 a)) g) 2) (*.f64 (*.f64 (cbrt.f64 (/.f64 -1 a)) g) (pow.f64 g -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g)) (sqrt.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (/.f64 -1 a)) (pow.f64 g 3/2)) (*.f64 (*.f64 (sqrt.f64 (/.f64 -1 a)) (pow.f64 g 3/2)) (pow.f64 g -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 -1 a) (neg.f64 (pow.f64 g 3))) (/.f64 1 (*.f64 g (neg.f64 g))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 g -2) (*.f64 (pow.f64 g 3) (/.f64 -1 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -1 a) (*.f64 (pow.f64 g 3) (pow.f64 g -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 g) (/.f64 (*.f64 (pow.f64 g 3) (/.f64 -1 a)) g))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 -1/2 a) 1) (/.f64 (*.f64 2 (pow.f64 g 3)) (*.f64 g g)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 2 (pow.f64 g 3)) 1) (/.f64 (/.f64 -1/2 a) (*.f64 g g)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 -1/2 a) (*.f64 g g)) (*.f64 2 (pow.f64 g 3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (*.f64 (cbrt.f64 (/.f64 -1 a)) g) 2) 1) (/.f64 (*.f64 (cbrt.f64 (/.f64 -1 a)) g) (*.f64 g g)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 -1 a)) (pow.f64 g 3/2)) 1) (/.f64 (*.f64 (sqrt.f64 (/.f64 -1 a)) (pow.f64 g 3/2)) (*.f64 g g)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 -1 a) 1) g)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 -1/2 a) (pow.f64 (cbrt.f64 g) 4)) (/.f64 (*.f64 2 (pow.f64 g 3)) (pow.f64 (cbrt.f64 g) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 2 (pow.f64 g 3)) (pow.f64 (cbrt.f64 g) 4)) (/.f64 (/.f64 -1/2 a) (pow.f64 (cbrt.f64 g) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 g) 4)) (/.f64 (*.f64 (pow.f64 g 3) (/.f64 -1 a)) (pow.f64 (cbrt.f64 g) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 -1 a)) (pow.f64 g 3/2)) (pow.f64 (cbrt.f64 g) 4)) (/.f64 (*.f64 (sqrt.f64 (/.f64 -1 a)) (pow.f64 g 3/2)) (pow.f64 (cbrt.f64 g) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 -1 a) (pow.f64 (cbrt.f64 g) 4)) (pow.f64 (*.f64 g g) 7/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 -1/2 a) g) (/.f64 (*.f64 2 (pow.f64 g 3)) g))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 2 (pow.f64 g 3)) g) (/.f64 (/.f64 -1/2 a) g))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (*.f64 (cbrt.f64 (/.f64 -1 a)) g) 2) g) (/.f64 (*.f64 (cbrt.f64 (/.f64 -1 a)) g) g))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 -1 a) g) (*.f64 g g))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (pow.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g) 2)) 1) (cbrt.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (pow.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g) 2)) (cbrt.f64 (cbrt.f64 (pow.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g) 2)))) (cbrt.f64 (cbrt.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (pow.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g) 2)) (pow.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g) 1/6)) (pow.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g))) 9)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g) 1/6) 6)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (*.f64 a -2) (*.f64 1/2 (/.f64 1 g))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (*.f64 (cbrt.f64 (/.f64 -1 a)) g) 9) (pow.f64 g 6)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (*.f64 (*.f64 a -2) (*.f64 1/2 (/.f64 1 g))) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (*.f64 1/2 (/.f64 1 g)) (*.f64 a -2)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (*.f64 (pow.f64 g 3) (/.f64 -1 a)) (*.f64 g (neg.f64 g))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (*.f64 (cbrt.f64 (/.f64 -1 a)) g) 9) (pow.f64 g 6)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g)) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (cbrt.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (cbrt.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (cbrt.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (cbrt.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g))))) (log.f64 (sqrt.f64 (exp.f64 (cbrt.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (cbrt.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (cbrt.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g))) (cbrt.f64 (cbrt.f64 (pow.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (pow.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g) 2))) (cbrt.f64 (cbrt.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (/.f64 -1 a)) g) (pow.f64 (cbrt.f64 g) -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g) 1/6) (pow.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/3) (cbrt.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (cbrt.f64 (*.f64 (*.f64 a -2) (*.f64 1/2 (/.f64 1 g)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (pow.f64 (cbrt.f64 g) 2) (*.f64 (cbrt.f64 (/.f64 -1 a)) g)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cbrt.f64 (/.f64 -1 a)) g) (pow.f64 (cbrt.f64 g) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (/.f64 -1/2 a)) (cbrt.f64 (*.f64 1/2 (/.f64 1 g))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (*.f64 (/.f64 -1 a) (neg.f64 (pow.f64 g 3)))) (cbrt.f64 (*.f64 g (neg.f64 g))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 (cbrt.f64 (/.f64 -1 a)) g)) (neg.f64 (pow.f64 (cbrt.f64 g) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (pow.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g) 2)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g) 3) 1/9)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g) 1/6) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g)) 2/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (*.f64 a -2) (*.f64 1/2 (/.f64 1 g))) -1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (*.f64 a -2) (*.f64 1/2 (/.f64 1 g)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (cbrt.f64 g) 2) (*.f64 (cbrt.f64 (/.f64 -1 a)) g)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (cbrt.f64 (pow.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (cbrt.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (cbrt.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g)))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (cbrt.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (cbrt.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (cbrt.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (pow.f64 g 3) (/.f64 -1 a)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (/.f64 -1 a)) (pow.f64 g 3))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (/.f64 -1 a)) (pow.f64 g 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (/.f64 -1 a)) (pow.f64 g 3)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (/.f64 -1 a)) (pow.f64 g 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (pow.f64 g 3) (/.f64 -1 a)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1/2 (/.f64 a (*.f64 2 (pow.f64 g 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (pow.f64 g 3)) (*.f64 a -2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 a (*.f64 -1 (pow.f64 g 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -1 (pow.f64 g 3)) a)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 -1 (pow.f64 g 3))) (neg.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 -1 (pow.f64 g 3)) 1) a)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 -1 (pow.f64 g 3)) (pow.f64 (cbrt.f64 a) 2)) (cbrt.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 -1 (pow.f64 g 3)) (sqrt.f64 a)) (sqrt.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/2 (*.f64 2 (pow.f64 g 3))) (neg.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 2 (pow.f64 g 3)) 1/2) (neg.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 g 3) (/.f64 -1 a)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (cbrt.f64 (/.f64 -1 a)) g) 6) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (cbrt.f64 (/.f64 -1 a)) g) 9) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (cbrt.f64 (/.f64 -1 a)) g) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sqrt.f64 (/.f64 -1 a)) (pow.f64 g 3/2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (/.f64 -1/2 a) 3) (pow.f64 (*.f64 g (cbrt.f64 2)) 9)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (*.f64 g (cbrt.f64 2)) 9) (pow.f64 (/.f64 -1/2 a) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 a (*.f64 -1 (pow.f64 g 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (cbrt.f64 (/.f64 -1 a)) g) 6))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (/.f64 -1 a)) (pow.f64 g 3)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (pow.f64 g 3) (/.f64 -1 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (cbrt.f64 (/.f64 -1 a)) g) 9))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (/.f64 -1/2 a) 3) (pow.f64 (*.f64 g (cbrt.f64 2)) 9)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (*.f64 g (cbrt.f64 2)) 9) (pow.f64 (/.f64 -1/2 a) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (pow.f64 g 3) (/.f64 -1 a))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (pow.f64 g 3) (/.f64 -1 a))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (pow.f64 g 3) (/.f64 -1 a))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (pow.f64 g 3) (/.f64 -1 a))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (pow.f64 g 3) (pow.f64 g 3))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 2 (pow.f64 g 3)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (pow.f64 g 3)) 2)) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (pow.f64 g 3)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (pow.f64 g 3)) 2))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (pow.f64 g 3)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 2 (pow.f64 g 3)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 2 (pow.f64 g 3)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 g 6) 4) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 g (cbrt.f64 2)) 9) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 g (cbrt.f64 2)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sqrt.f64 2) (pow.f64 g 3/2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (pow.f64 g 6) 4))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (pow.f64 g 3)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 2 (pow.f64 g 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 g (cbrt.f64 2)) 9))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 2 (pow.f64 g 3))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 2 (pow.f64 g 3))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (fma.f64 3 (log.f64 g) (log.f64 2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (fma.f64 3 (log.f64 g) (log.f64 2)) 1))))))

simplify97.0ms (0.8%)

Algorithm
egg-herbie
Rules
728×fma-neg_binary64
551×distribute-lft-neg-in_binary64
549×distribute-rgt-neg-in_binary64
494×associate-*l*_binary64
407×cancel-sign-sub-inv_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
010360
126360
254360
3106360
4267360
5818360
63048360
74840360
86933360
Stop Event
node limit
Counts
191 → 147
Calls
Call 1
Inputs
(*.f64 -1 (/.f64 g a))
(*.f64 -1 (/.f64 g a))
(*.f64 -1 (/.f64 g a))
(*.f64 -1 (/.f64 g a))
(*.f64 -1 (/.f64 g a))
(*.f64 -1 (/.f64 g a))
(*.f64 -1 (/.f64 g a))
(*.f64 -1 (/.f64 g a))
(*.f64 -1 (/.f64 g a))
(*.f64 -1 (/.f64 g a))
(*.f64 -1 (/.f64 g a))
(*.f64 -1 (/.f64 g a))
(*.f64 -1 (/.f64 g a))
(*.f64 -1 (/.f64 g a))
(*.f64 -1 (/.f64 g a))
(*.f64 -1 (/.f64 g a))
(*.f64 -1 (/.f64 g a))
(*.f64 -1 (/.f64 g a))
(*.f64 -1 (/.f64 g a))
(*.f64 -1 (/.f64 g a))
(*.f64 -1 (/.f64 g a))
(*.f64 -1 (/.f64 g a))
(*.f64 -1 (/.f64 g a))
(*.f64 -1 (/.f64 g a))
(*.f64 -1 (/.f64 (pow.f64 g 3) a))
(*.f64 -1 (/.f64 (pow.f64 g 3) a))
(*.f64 -1 (/.f64 (pow.f64 g 3) a))
(*.f64 -1 (/.f64 (pow.f64 g 3) a))
(*.f64 -1 (/.f64 (pow.f64 g 3) a))
(*.f64 -1 (/.f64 (pow.f64 g 3) a))
(*.f64 -1 (/.f64 (pow.f64 g 3) a))
(*.f64 -1 (/.f64 (pow.f64 g 3) a))
(*.f64 -1 (/.f64 (pow.f64 g 3) a))
(*.f64 -1 (/.f64 (pow.f64 g 3) a))
(*.f64 -1 (/.f64 (pow.f64 g 3) a))
(*.f64 -1 (/.f64 (pow.f64 g 3) a))
(*.f64 -1 (/.f64 (pow.f64 g 3) a))
(*.f64 -1 (/.f64 (pow.f64 g 3) a))
(*.f64 -1 (/.f64 (pow.f64 g 3) a))
(*.f64 -1 (/.f64 (pow.f64 g 3) a))
(*.f64 -1 (/.f64 (pow.f64 g 3) a))
(*.f64 -1 (/.f64 (pow.f64 g 3) a))
(*.f64 -1 (/.f64 (pow.f64 g 3) a))
(*.f64 -1 (/.f64 (pow.f64 g 3) a))
(*.f64 -1 (/.f64 (pow.f64 g 3) a))
(*.f64 -1 (/.f64 (pow.f64 g 3) a))
(*.f64 -1 (/.f64 (pow.f64 g 3) a))
(*.f64 -1 (/.f64 (pow.f64 g 3) a))
Outputs
(*.f64 -1 (/.f64 g a))
(neg.f64 (/.f64 g a))
(/.f64 (neg.f64 g) a)
(*.f64 -1 (/.f64 g a))
(neg.f64 (/.f64 g a))
(/.f64 (neg.f64 g) a)
(*.f64 -1 (/.f64 g a))
(neg.f64 (/.f64 g a))
(/.f64 (neg.f64 g) a)
(*.f64 -1 (/.f64 g a))
(neg.f64 (/.f64 g a))
(/.f64 (neg.f64 g) a)
(*.f64 -1 (/.f64 g a))
(neg.f64 (/.f64 g a))
(/.f64 (neg.f64 g) a)
(*.f64 -1 (/.f64 g a))
(neg.f64 (/.f64 g a))
(/.f64 (neg.f64 g) a)
(*.f64 -1 (/.f64 g a))
(neg.f64 (/.f64 g a))
(/.f64 (neg.f64 g) a)
(*.f64 -1 (/.f64 g a))
(neg.f64 (/.f64 g a))
(/.f64 (neg.f64 g) a)
(*.f64 -1 (/.f64 g a))
(neg.f64 (/.f64 g a))
(/.f64 (neg.f64 g) a)
(*.f64 -1 (/.f64 g a))
(neg.f64 (/.f64 g a))
(/.f64 (neg.f64 g) a)
(*.f64 -1 (/.f64 g a))
(neg.f64 (/.f64 g a))
(/.f64 (neg.f64 g) a)
(*.f64 -1 (/.f64 g a))
(neg.f64 (/.f64 g a))
(/.f64 (neg.f64 g) a)
(*.f64 -1 (/.f64 g a))
(neg.f64 (/.f64 g a))
(/.f64 (neg.f64 g) a)
(*.f64 -1 (/.f64 g a))
(neg.f64 (/.f64 g a))
(/.f64 (neg.f64 g) a)
(*.f64 -1 (/.f64 g a))
(neg.f64 (/.f64 g a))
(/.f64 (neg.f64 g) a)
(*.f64 -1 (/.f64 g a))
(neg.f64 (/.f64 g a))
(/.f64 (neg.f64 g) a)
(*.f64 -1 (/.f64 g a))
(neg.f64 (/.f64 g a))
(/.f64 (neg.f64 g) a)
(*.f64 -1 (/.f64 g a))
(neg.f64 (/.f64 g a))
(/.f64 (neg.f64 g) a)
(*.f64 -1 (/.f64 g a))
(neg.f64 (/.f64 g a))
(/.f64 (neg.f64 g) a)
(*.f64 -1 (/.f64 g a))
(neg.f64 (/.f64 g a))
(/.f64 (neg.f64 g) a)
(*.f64 -1 (/.f64 g a))
(neg.f64 (/.f64 g a))
(/.f64 (neg.f64 g) a)
(*.f64 -1 (/.f64 g a))
(neg.f64 (/.f64 g a))
(/.f64 (neg.f64 g) a)
(*.f64 -1 (/.f64 g a))
(neg.f64 (/.f64 g a))
(/.f64 (neg.f64 g) a)
(*.f64 -1 (/.f64 g a))
(neg.f64 (/.f64 g a))
(/.f64 (neg.f64 g) a)
(*.f64 -1 (/.f64 (pow.f64 g 3) a))
(neg.f64 (/.f64 (pow.f64 g 3) a))
(/.f64 (neg.f64 (pow.f64 g 3)) a)
(*.f64 -1 (/.f64 (pow.f64 g 3) a))
(neg.f64 (/.f64 (pow.f64 g 3) a))
(/.f64 (neg.f64 (pow.f64 g 3)) a)
(*.f64 -1 (/.f64 (pow.f64 g 3) a))
(neg.f64 (/.f64 (pow.f64 g 3) a))
(/.f64 (neg.f64 (pow.f64 g 3)) a)
(*.f64 -1 (/.f64 (pow.f64 g 3) a))
(neg.f64 (/.f64 (pow.f64 g 3) a))
(/.f64 (neg.f64 (pow.f64 g 3)) a)
(*.f64 -1 (/.f64 (pow.f64 g 3) a))
(neg.f64 (/.f64 (pow.f64 g 3) a))
(/.f64 (neg.f64 (pow.f64 g 3)) a)
(*.f64 -1 (/.f64 (pow.f64 g 3) a))
(neg.f64 (/.f64 (pow.f64 g 3) a))
(/.f64 (neg.f64 (pow.f64 g 3)) a)
(*.f64 -1 (/.f64 (pow.f64 g 3) a))
(neg.f64 (/.f64 (pow.f64 g 3) a))
(/.f64 (neg.f64 (pow.f64 g 3)) a)
(*.f64 -1 (/.f64 (pow.f64 g 3) a))
(neg.f64 (/.f64 (pow.f64 g 3) a))
(/.f64 (neg.f64 (pow.f64 g 3)) a)
(*.f64 -1 (/.f64 (pow.f64 g 3) a))
(neg.f64 (/.f64 (pow.f64 g 3) a))
(/.f64 (neg.f64 (pow.f64 g 3)) a)
(*.f64 -1 (/.f64 (pow.f64 g 3) a))
(neg.f64 (/.f64 (pow.f64 g 3) a))
(/.f64 (neg.f64 (pow.f64 g 3)) a)
(*.f64 -1 (/.f64 (pow.f64 g 3) a))
(neg.f64 (/.f64 (pow.f64 g 3) a))
(/.f64 (neg.f64 (pow.f64 g 3)) a)
(*.f64 -1 (/.f64 (pow.f64 g 3) a))
(neg.f64 (/.f64 (pow.f64 g 3) a))
(/.f64 (neg.f64 (pow.f64 g 3)) a)
(*.f64 -1 (/.f64 (pow.f64 g 3) a))
(neg.f64 (/.f64 (pow.f64 g 3) a))
(/.f64 (neg.f64 (pow.f64 g 3)) a)
(*.f64 -1 (/.f64 (pow.f64 g 3) a))
(neg.f64 (/.f64 (pow.f64 g 3) a))
(/.f64 (neg.f64 (pow.f64 g 3)) a)
(*.f64 -1 (/.f64 (pow.f64 g 3) a))
(neg.f64 (/.f64 (pow.f64 g 3) a))
(/.f64 (neg.f64 (pow.f64 g 3)) a)
(*.f64 -1 (/.f64 (pow.f64 g 3) a))
(neg.f64 (/.f64 (pow.f64 g 3) a))
(/.f64 (neg.f64 (pow.f64 g 3)) a)
(*.f64 -1 (/.f64 (pow.f64 g 3) a))
(neg.f64 (/.f64 (pow.f64 g 3) a))
(/.f64 (neg.f64 (pow.f64 g 3)) a)
(*.f64 -1 (/.f64 (pow.f64 g 3) a))
(neg.f64 (/.f64 (pow.f64 g 3) a))
(/.f64 (neg.f64 (pow.f64 g 3)) a)
(*.f64 -1 (/.f64 (pow.f64 g 3) a))
(neg.f64 (/.f64 (pow.f64 g 3) a))
(/.f64 (neg.f64 (pow.f64 g 3)) a)
(*.f64 -1 (/.f64 (pow.f64 g 3) a))
(neg.f64 (/.f64 (pow.f64 g 3) a))
(/.f64 (neg.f64 (pow.f64 g 3)) a)
(*.f64 -1 (/.f64 (pow.f64 g 3) a))
(neg.f64 (/.f64 (pow.f64 g 3) a))
(/.f64 (neg.f64 (pow.f64 g 3)) a)
(*.f64 -1 (/.f64 (pow.f64 g 3) a))
(neg.f64 (/.f64 (pow.f64 g 3) a))
(/.f64 (neg.f64 (pow.f64 g 3)) a)
(*.f64 -1 (/.f64 (pow.f64 g 3) a))
(neg.f64 (/.f64 (pow.f64 g 3) a))
(/.f64 (neg.f64 (pow.f64 g 3)) a)
(*.f64 -1 (/.f64 (pow.f64 g 3) a))
(neg.f64 (/.f64 (pow.f64 g 3) a))
(/.f64 (neg.f64 (pow.f64 g 3)) a)

localize63.0ms (0.6%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.6b
(cbrt.f64 a)
27.3b
(sqrt.f64 (*.f64 h (neg.f64 h)))
Compiler

Compiled 120 to 39 computations (67.5% saved)

series5.0ms (0%)

Counts
2 → 12
Calls

6 calls:

TimeVariablePointExpression
1.0ms
h
@0
(sqrt.f64 (*.f64 h (neg.f64 h)))
1.0ms
h
@inf
(sqrt.f64 (*.f64 h (neg.f64 h)))
1.0ms
a
@-inf
(cbrt.f64 a)
1.0ms
a
@inf
(cbrt.f64 a)
1.0ms
a
@0
(cbrt.f64 a)

rewrite62.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
446×pow1_binary64
432×add-sqr-sqrt_binary64
421×*-un-lft-identity_binary64
415×add-log-exp_binary64
414×log1p-expm1-u_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0711
11414
217394
Stop Event
node limit
Counts
2 → 51
Calls
Call 1
Inputs
(sqrt.f64 (*.f64 h (neg.f64 h)))
(cbrt.f64 a)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 h)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 h)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 h) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 h 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 h -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 h)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 h) (pow.f64 (cbrt.f64 h) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 h) 2) (cbrt.f64 h))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 h) 2) (neg.f64 (cbrt.f64 h)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 h) (sqrt.f64 h))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 h) (neg.f64 (sqrt.f64 h)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 h)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (pow.f64 (pow.f64 (cbrt.f64 h) 2) 2)) (sqrt.f64 (pow.f64 (cbrt.f64 h) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/2) h)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (pow.f64 (cbrt.f64 h) 2) 2) 1/2) (pow.f64 (pow.f64 (cbrt.f64 h) 2) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (pow.f64 (cbrt.f64 h) 2)) (cbrt.f64 h))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (sqrt.f64 h)) (sqrt.f64 h))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 -1 (pow.f64 (cbrt.f64 h) 2)) (cbrt.f64 h))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 -1 (sqrt.f64 h)) (sqrt.f64 h))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 h h) h)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 0 (pow.f64 h 3)) (+.f64 0 (+.f64 (*.f64 h h) (*.f64 0 h))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 h 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 h h) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 h 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 h) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 h) 2)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 h)))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 h)))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 h))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 h 3))))) (#(struct:change #<rule egg-rr> (2) ((x . h)))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 h))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 h))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 h))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (cbrt.f64 a)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 a) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (cbrt.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 a)) (pow.f64 (cbrt.f64 (cbrt.f64 a)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cbrt.f64 a)) 2) (cbrt.f64 (cbrt.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 a 1/6) (pow.f64 a 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/3) (cbrt.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 a) 2) 1/3) (cbrt.f64 (cbrt.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 a) 1/3) (pow.f64 (sqrt.f64 a) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 a 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 a) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (cbrt.f64 a)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 a 1/6) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (cbrt.f64 a) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (cbrt.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (cbrt.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (cbrt.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (cbrt.f64 a)))))))

simplify22.0ms (0.2%)

Algorithm
egg-herbie
Rules
38×fma-def_binary64
sub-neg_binary64
+-commutative_binary64
*-commutative_binary64
distribute-lft-in_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0680
11180
22480
32880
43280
55080
67280
78380
89580
912080
Stop Event
saturated
Counts
63 → 54
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 -1) h)
(*.f64 (sqrt.f64 -1) h)
(*.f64 (sqrt.f64 -1) h)
(*.f64 (sqrt.f64 -1) h)
(*.f64 (sqrt.f64 -1) h)
(*.f64 (sqrt.f64 -1) h)
(*.f64 (sqrt.f64 -1) h)
(*.f64 (sqrt.f64 -1) h)
(*.f64 -1 (*.f64 (sqrt.f64 -1) h))
(*.f64 -1 (*.f64 (sqrt.f64 -1) h))
(*.f64 -1 (*.f64 (sqrt.f64 -1) h))
(*.f64 -1 (*.f64 (sqrt.f64 -1) h))
Outputs
(*.f64 (sqrt.f64 -1) h)
(*.f64 (sqrt.f64 -1) h)
(*.f64 (sqrt.f64 -1) h)
(*.f64 (sqrt.f64 -1) h)
(*.f64 (sqrt.f64 -1) h)
(*.f64 (sqrt.f64 -1) h)
(*.f64 (sqrt.f64 -1) h)
(*.f64 (sqrt.f64 -1) h)
(*.f64 -1 (*.f64 (sqrt.f64 -1) h))
(neg.f64 (*.f64 (sqrt.f64 -1) h))
(*.f64 (sqrt.f64 -1) (neg.f64 h))
(*.f64 -1 (*.f64 (sqrt.f64 -1) h))
(neg.f64 (*.f64 (sqrt.f64 -1) h))
(*.f64 (sqrt.f64 -1) (neg.f64 h))
(*.f64 -1 (*.f64 (sqrt.f64 -1) h))
(neg.f64 (*.f64 (sqrt.f64 -1) h))
(*.f64 (sqrt.f64 -1) (neg.f64 h))
(*.f64 -1 (*.f64 (sqrt.f64 -1) h))
(neg.f64 (*.f64 (sqrt.f64 -1) h))
(*.f64 (sqrt.f64 -1) (neg.f64 h))

eval258.0ms (2.2%)

Compiler

Compiled 15219 to 8980 computations (41% saved)

prune134.0ms (1.2%)

Pruning

46 alts after pruning (40 fresh and 6 done)

PrunedKeptTotal
New52126547
Fresh191433
Picked101
Done369
Total54446590
Error
0.8b
Counts
590 → 46
Alt Table
Click to see full alt table
StatusErrorProgram
62.1b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (+.f64 g (neg.f64 g)) (/.f64 -1/2 a))))
63.5b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (pow.f64 (/.f64 a g) -1/3))
50.7b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (/.f64 1 g) (/.f64 (*.f64 (pow.f64 g 3) (/.f64 -1 a)) g))))
32.5b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g) g))) (*.f64 (cbrt.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g))) (pow.f64 (/.f64 -1/2 a) 1/3)))
45.2b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (pow.f64 (*.f64 (*.f64 a -2) (*.f64 1/2 (/.f64 1 g))) -1/3))
61.3b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 -1/4 (/.f64 (*.f64 h (/.f64 h a)) g))))
63.2b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (/.f64 1 (cbrt.f64 (/.f64 a g))))
53.5b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (expm1.f64 (log1p.f64 (cbrt.f64 (*.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g)) (/.f64 -1/2 a))))))
17.9b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (*.f64 -1/2 (*.f64 h (/.f64 h g))))) (cbrt.f64 (*.f64 (+.f64 g (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g)) (/.f64 -1/2 a))))
44.1b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (/.f64 (/.f64 -1 a) g) (*.f64 g g))))
19.7b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g))) 3))
2.7b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g) g))) (*.f64 (cbrt.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g))) (/.f64 (cbrt.f64 -1/2) (cbrt.f64 a))))
3.2b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (/.f64 (cbrt.f64 (neg.f64 g)) (cbrt.f64 a)))
53.6b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (+.f64 0 (fma.f64 1/3 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (cbrt.f64 (*.f64 (/.f64 a g) (/.f64 a g)))) (pow.f64 (cbrt.f64 2) 2)) (+.f64 (*.f64 (/.f64 -1/2 (*.f64 g a)) (*.f64 h h)) 0)) (*.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 2) (cbrt.f64 (/.f64 g a)))))))
61.4b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (*.f64 (/.f64 1/2 g) (*.f64 h h)) (/.f64 -1/2 a))))
3.3b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 -1/2) (/.f64 (cbrt.f64 (*.f64 g 2)) (cbrt.f64 a))))
60.2b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (+.f64 g g) (cbrt.f64 (/.f64 -1/2 a))))
40.4b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (*.f64 (-.f64 g h) (+.f64 g h)))) (/.f64 -1/2 a))))
19.2b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (/.f64 (neg.f64 g) a)))
45.1b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (pow.f64 (*.f64 (/.f64 g a) -1) 1/3))
31.3b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (/.f64 (cbrt.f64 (*.f64 (+.f64 g (hypot.f64 g (neg.f64 h))) -1/2)) (cbrt.f64 a)))
19.3b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 -1/2) (*.f64 (+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (cbrt.f64 2))) 2)) (log.f64 (cbrt.f64 (exp.f64 (cbrt.f64 2))))) (cbrt.f64 (/.f64 g a)))))
19.1b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (+.f64 g g) (/.f64 -1/2 a))))
45.1b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (exp.f64 (*.f64 (log.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g)) 1/3)))
7.2b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g) g))) (*.f64 (*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (+.f64 (fma.f64 -1/2 (/.f64 (*.f64 h h) g) g) g))) 2) (cbrt.f64 (cbrt.f64 (+.f64 (fma.f64 -1/2 (/.f64 (*.f64 h h) g) g) g)))) (cbrt.f64 (/.f64 -1/2 a))))
3.0b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g) g))) (*.f64 (*.f64 (cbrt.f64 g) (cbrt.f64 2)) (cbrt.f64 (/.f64 -1/2 a))))
50.0b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (-.f64 (*.f64 1/2 (/.f64 h (/.f64 g h))) g) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
34.0b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g) g))) (*.f64 (*.f64 (pow.f64 (*.f64 1 g) 1/3) (cbrt.f64 2)) (cbrt.f64 (/.f64 -1/2 a))))
63.2b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (/.f64 g a)))
19.8b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g))) 9)))
57.5b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (fma.f64 (+.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/4) (sqrt.f64 g)) (-.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/4) (sqrt.f64 g)) (fma.f64 (neg.f64 (cbrt.f64 g)) (pow.f64 (cbrt.f64 g) 2) g)))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
44.8b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (/.f64 (cbrt.f64 (*.f64 -1/2 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g)))) (cbrt.f64 a)))
49.4b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.f64 g (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g)) (/.f64 -1/2 a))))
51.4b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (sqrt.f64 (cbrt.f64 (pow.f64 (/.f64 g a) 2))))
3.8b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 2) (/.f64 (cbrt.f64 g) (cbrt.f64 a)))))
3.2b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (/.f64 (cbrt.f64 (/.f64 -1/2 a)) (cbrt.f64 (*.f64 1/2 (/.f64 1 g)))))
63.2b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (/.f64 (+.f64 g g) (cbrt.f64 a)))
8.1b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (/.f64 (*.f64 (cbrt.f64 (/.f64 -1 a)) g) (pow.f64 (cbrt.f64 g) 2)))
18.6b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g) g))) (cbrt.f64 (/.f64 (neg.f64 g) a)))
3.7b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 2) (*.f64 (cbrt.f64 g) (/.f64 1 (cbrt.f64 a))))))
40.7b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 -1/2) (pow.f64 (*.f64 (/.f64 g a) 2) 1/3)))
3.6b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (*.f64 -1/2 (*.f64 h (/.f64 h g))))) (*.f64 (cbrt.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g))) (cbrt.f64 (/.f64 -1/2 a))))
18.8b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (/.f64 1 (cbrt.f64 (*.f64 (*.f64 a -2) (*.f64 1/2 (/.f64 1 g))))))
19.2b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2)) (cbrt.f64 -1/2)))
2.4b
(+.f64 (/.f64 (cbrt.f64 (*.f64 (-.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) g) 1/2)) (cbrt.f64 a)) (*.f64 (cbrt.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g))) (cbrt.f64 (/.f64 -1/2 a))))
3.3b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g) g))) (*.f64 (cbrt.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g))) (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 -1/2 a))) 3)))
Compiler

Compiled 1268 to 887 computations (30% saved)

regimes587.0ms (5.1%)

Counts
112 → 1
Calls
Call 1
Inputs
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (/.f64 g a)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (pow.f64 (/.f64 a g) -1/3))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (/.f64 (neg.f64 g) a)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (/.f64 (neg.f64 g) a)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (/.f64 1 (cbrt.f64 (/.f64 a g))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (/.f64 (+.f64 g g) (cbrt.f64 a)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (pow.f64 (*.f64 (/.f64 g a) -1) 1/3))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (+.f64 g g) (cbrt.f64 (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (+.f64 g g) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (+.f64 g (neg.f64 g)) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (/.f64 (/.f64 -1 a) g) (*.f64 g g))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 -1/4 (/.f64 (*.f64 h (/.f64 h a)) g))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (pow.f64 (*.f64 (*.f64 a -2) (*.f64 1/2 (/.f64 1 g))) -1/3))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (/.f64 1 (cbrt.f64 (*.f64 (*.f64 a -2) (*.f64 1/2 (/.f64 1 g))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (*.f64 (/.f64 1/2 g) (*.f64 h h)) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (/.f64 (cbrt.f64 (neg.f64 g)) (cbrt.f64 a)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2)) (cbrt.f64 -1/2)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 (*.f64 (/.f64 g a) 2))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 -1/4 (/.f64 (pow.f64 h 2) (*.f64 a g)))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 -1/2) (pow.f64 (*.f64 (/.f64 g a) 2) 1/3)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (exp.f64 (*.f64 (log.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g)) 1/3)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (/.f64 (cbrt.f64 (/.f64 -1/2 a)) (cbrt.f64 (*.f64 1/2 (/.f64 1 g)))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g) g))) (cbrt.f64 (/.f64 (neg.f64 g) a)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (/.f64 1 g) (/.f64 (*.f64 (pow.f64 g 3) (/.f64 -1 a)) g))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (*.f64 g -2))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.f64 g g) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (neg.f64 g) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.f64 g (neg.f64 g)) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (*.f64 -1/2 (*.f64 h (/.f64 h g))))) (cbrt.f64 (*.f64 (+.f64 g (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g)) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (*.f64 (/.f64 -1/2 g) (*.f64 h h)))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.f64 g (-.f64 (*.f64 1/2 (/.f64 h (/.f64 g h))) g)) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (-.f64 (*.f64 1/2 (/.f64 h (/.f64 g h))) g) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (sqrt.f64 (cbrt.f64 (pow.f64 (/.f64 g a) 2))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (sqrt.f64 (pow.f64 (/.f64 (+.f64 g g) (cbrt.f64 a)) 2)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 -1/2) (/.f64 (cbrt.f64 (*.f64 g 2)) (cbrt.f64 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 2) (cbrt.f64 (/.f64 g a)))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g))) 3))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (/.f64 (*.f64 (cbrt.f64 (/.f64 -1 a)) g) (pow.f64 (cbrt.f64 g) 2)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 2) (pow.f64 (/.f64 a g) -1/3))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 -1/2) (*.f64 (pow.f64 4 1/6) (cbrt.f64 (/.f64 g a)))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (/.f64 (cbrt.f64 (*.f64 (+.f64 g (hypot.f64 g (neg.f64 h))) -1/2)) (cbrt.f64 a)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 2) (/.f64 1 (cbrt.f64 (/.f64 a g))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (/.f64 (*.f64 (/.f64 -1/2 a) (*.f64 2 (pow.f64 g 3))) (fma.f64 g g 0))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (pow.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (/.f64 -1/2 a)) 1/3))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (+.f64 g (*.f64 (sqrt.f64 (+.f64 g h)) (sqrt.f64 (-.f64 g h)))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (+.f64 g (cbrt.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 3/2))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (+.f64 g (exp.f64 (*.f64 (log.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 1/2))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (*.f64 -1/2 (*.f64 h (/.f64 h g))))) (*.f64 (cbrt.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g))) (cbrt.f64 (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (fma.f64 g -2 (*.f64 (/.f64 1/2 g) (*.f64 h h))))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g) g))) (cbrt.f64 (*.f64 (+.f64 g (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g)) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.f64 g (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g)) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (*.f64 (-.f64 g h) (+.f64 g h)))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g) g))) (cbrt.f64 (/.f64 1 (/.f64 a (*.f64 -1/2 (+.f64 g (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g)))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (+.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 -1/2) (/.f64 (*.f64 (cbrt.f64 g) (cbrt.f64 2)) (cbrt.f64 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 2) (/.f64 (cbrt.f64 g) (cbrt.f64 a)))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g))) 9)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 -1/2) (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2))) 3)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 2) (/.f64 1 (/.f64 (cbrt.f64 a) (cbrt.f64 g))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 2) (*.f64 (cbrt.f64 g) (/.f64 1 (cbrt.f64 a))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (/.f64 (cbrt.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) -1/2)) (cbrt.f64 a)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 (/.f64 -1/2 a)) (cbrt.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g) g))) (*.f64 (*.f64 (cbrt.f64 g) (cbrt.f64 2)) (cbrt.f64 (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (expm1.f64 (log1p.f64 (cbrt.f64 (*.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g)) (/.f64 -1/2 a))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g) g))) (*.f64 (cbrt.f64 (/.f64 g a)) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (*.f64 (cbrt.f64 (/.f64 g a)) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (*.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 2) (cbrt.f64 (/.f64 g a)))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g) g))) (*.f64 (*.f64 (pow.f64 (*.f64 1 g) 1/3) (cbrt.f64 2)) (cbrt.f64 (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (fma.f64 1/2 (*.f64 (/.f64 h g) h) (*.f64 (/.f64 1/8 (pow.f64 g 3)) (pow.f64 h 4))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (pow.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (/.f64 -1/2 a)) 1/3))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g) g))) (/.f64 (cbrt.f64 (*.f64 -1/2 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g)))) (cbrt.f64 a)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g) g))) (*.f64 (cbrt.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g))) (cbrt.f64 (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (*.f64 (cbrt.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g))) (cbrt.f64 (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (/.f64 (cbrt.f64 (*.f64 -1/2 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g)))) (cbrt.f64 a)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.f64 g (*.f64 (sqrt.f64 (+.f64 g h)) (sqrt.f64 (-.f64 g h)))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g) g))) (*.f64 (cbrt.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g))) (pow.f64 (/.f64 -1/2 a) 1/3)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/6) (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (cbrt.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 3/2)) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.f64 g (cbrt.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 3/2))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (exp.f64 (*.f64 (log.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 1/2)) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.f64 g (exp.f64 (*.f64 (log.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 1/2))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (pow.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/4) 2) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (expm1.f64 (log1p.f64 (cbrt.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (/.f64 -1/2 a))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (pow.f64 (cbrt.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))) 3) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (/.f64 -1/2 a)))) 3))
(+.f64 (*.f64 (cbrt.f64 (/.f64 1/2 a)) (cbrt.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (/.f64 (cbrt.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) -1/2)) (cbrt.f64 a)))
(+.f64 (/.f64 (cbrt.f64 (*.f64 1/2 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g))) (cbrt.f64 a)) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (*.f64 (cbrt.f64 (/.f64 -1/2 a)) (cbrt.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g) g))) (*.f64 (cbrt.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g))) (/.f64 (cbrt.f64 -1/2) (cbrt.f64 a))))
(+.f64 (/.f64 (cbrt.f64 (*.f64 (-.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) g) 1/2)) (cbrt.f64 a)) (*.f64 (cbrt.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g))) (cbrt.f64 (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (expm1.f64 (log1p.f64 (cbrt.f64 (*.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g)) (/.f64 -1/2 a))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g) g))) (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g)) (/.f64 -1/2 a)))) 3))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g)) (/.f64 -1/2 a)))) 3))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 3)) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 3))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (exp.f64 (log.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g)) 3))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.f64 g (pow.f64 (cbrt.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) 3)) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g) g))) (*.f64 (cbrt.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g))) (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 -1/2 a))) 3)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (exp.f64 (*.f64 (exp.f64 (log.f64 (log.f64 (-.f64 (*.f64 g g) (*.f64 h h))))) 1/2)) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (exp.f64 (*.f64 (cbrt.f64 (pow.f64 (log.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 3)) 1/2)) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (fma.f64 (pow.f64 (cbrt.f64 g) 2) (cbrt.f64 g) (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (fma.f64 (pow.f64 (cbrt.f64 g) 2) (*.f64 (cbrt.f64 g) g) (*.f64 h (neg.f64 h))))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 2)) (sqrt.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g) g))) (*.f64 (*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (+.f64 (fma.f64 -1/2 (/.f64 (*.f64 h h) g) g) g))) 2) (cbrt.f64 (cbrt.f64 (+.f64 (fma.f64 -1/2 (/.f64 (*.f64 h h) g) g) g)))) (cbrt.f64 (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (+.f64 0 (fma.f64 1/3 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (cbrt.f64 (*.f64 (/.f64 a g) (/.f64 a g)))) (pow.f64 (cbrt.f64 2) 2)) (+.f64 (*.f64 (/.f64 -1/2 (*.f64 g a)) (*.f64 h h)) 0)) (*.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 2) (cbrt.f64 (/.f64 g a)))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 -1/2) (*.f64 (+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (cbrt.f64 2))) 2)) (log.f64 (cbrt.f64 (exp.f64 (cbrt.f64 2))))) (cbrt.f64 (/.f64 g a)))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (fma.f64 (+.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/4) (sqrt.f64 g)) (-.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/4) (sqrt.f64 g)) (fma.f64 (neg.f64 (cbrt.f64 g)) (pow.f64 (cbrt.f64 g) 2) g)))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
Outputs
(+.f64 (/.f64 (cbrt.f64 (*.f64 (-.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) g) 1/2)) (cbrt.f64 a)) (*.f64 (cbrt.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g))) (cbrt.f64 (/.f64 -1/2 a))))
Calls

8 calls:

82.0ms
(*.f64 2 a)
81.0ms
a
81.0ms
h
80.0ms
g
72.0ms
(/.f64 1 (*.f64 2 a))
Results
ErrorSegmentsBranch
2.4b1g
2.4b1h
2.4b1a
2.4b1(+.f64 (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (+.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))
2.4b1(/.f64 1 (*.f64 2 a))
2.4b1(*.f64 2 a)
2.4b1(*.f64 h h)
2.4b1(*.f64 h h)
Compiler

Compiled 3074 to 1492 computations (51.5% saved)

regimes487.0ms (4.2%)

Counts
93 → 1
Calls
Call 1
Inputs
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (/.f64 g a)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (pow.f64 (/.f64 a g) -1/3))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (/.f64 (neg.f64 g) a)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (/.f64 (neg.f64 g) a)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (/.f64 1 (cbrt.f64 (/.f64 a g))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (/.f64 (+.f64 g g) (cbrt.f64 a)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (pow.f64 (*.f64 (/.f64 g a) -1) 1/3))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (+.f64 g g) (cbrt.f64 (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (+.f64 g g) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (+.f64 g (neg.f64 g)) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (/.f64 (/.f64 -1 a) g) (*.f64 g g))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 -1/4 (/.f64 (*.f64 h (/.f64 h a)) g))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (pow.f64 (*.f64 (*.f64 a -2) (*.f64 1/2 (/.f64 1 g))) -1/3))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (/.f64 1 (cbrt.f64 (*.f64 (*.f64 a -2) (*.f64 1/2 (/.f64 1 g))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (*.f64 (/.f64 1/2 g) (*.f64 h h)) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (/.f64 (cbrt.f64 (neg.f64 g)) (cbrt.f64 a)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2)) (cbrt.f64 -1/2)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 (*.f64 (/.f64 g a) 2))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 -1/4 (/.f64 (pow.f64 h 2) (*.f64 a g)))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 -1/2) (pow.f64 (*.f64 (/.f64 g a) 2) 1/3)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (exp.f64 (*.f64 (log.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g)) 1/3)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (/.f64 (cbrt.f64 (/.f64 -1/2 a)) (cbrt.f64 (*.f64 1/2 (/.f64 1 g)))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g) g))) (cbrt.f64 (/.f64 (neg.f64 g) a)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (/.f64 1 g) (/.f64 (*.f64 (pow.f64 g 3) (/.f64 -1 a)) g))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (*.f64 g -2))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.f64 g g) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (neg.f64 g) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.f64 g (neg.f64 g)) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (*.f64 -1/2 (*.f64 h (/.f64 h g))))) (cbrt.f64 (*.f64 (+.f64 g (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g)) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (*.f64 (/.f64 -1/2 g) (*.f64 h h)))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.f64 g (-.f64 (*.f64 1/2 (/.f64 h (/.f64 g h))) g)) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (-.f64 (*.f64 1/2 (/.f64 h (/.f64 g h))) g) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (sqrt.f64 (cbrt.f64 (pow.f64 (/.f64 g a) 2))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (sqrt.f64 (pow.f64 (/.f64 (+.f64 g g) (cbrt.f64 a)) 2)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 -1/2) (/.f64 (cbrt.f64 (*.f64 g 2)) (cbrt.f64 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 2) (cbrt.f64 (/.f64 g a)))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g))) 3))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (/.f64 (*.f64 (cbrt.f64 (/.f64 -1 a)) g) (pow.f64 (cbrt.f64 g) 2)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 2) (pow.f64 (/.f64 a g) -1/3))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 -1/2) (*.f64 (pow.f64 4 1/6) (cbrt.f64 (/.f64 g a)))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (/.f64 (cbrt.f64 (*.f64 (+.f64 g (hypot.f64 g (neg.f64 h))) -1/2)) (cbrt.f64 a)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 2) (/.f64 1 (cbrt.f64 (/.f64 a g))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (/.f64 (*.f64 (/.f64 -1/2 a) (*.f64 2 (pow.f64 g 3))) (fma.f64 g g 0))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (pow.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (/.f64 -1/2 a)) 1/3))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (+.f64 g (*.f64 (sqrt.f64 (+.f64 g h)) (sqrt.f64 (-.f64 g h)))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (+.f64 g (cbrt.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 3/2))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (+.f64 g (exp.f64 (*.f64 (log.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 1/2))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (*.f64 -1/2 (*.f64 h (/.f64 h g))))) (*.f64 (cbrt.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g))) (cbrt.f64 (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (fma.f64 g -2 (*.f64 (/.f64 1/2 g) (*.f64 h h))))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g) g))) (cbrt.f64 (*.f64 (+.f64 g (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g)) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.f64 g (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g)) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (*.f64 (-.f64 g h) (+.f64 g h)))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g) g))) (cbrt.f64 (/.f64 1 (/.f64 a (*.f64 -1/2 (+.f64 g (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g)))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (+.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 -1/2) (/.f64 (*.f64 (cbrt.f64 g) (cbrt.f64 2)) (cbrt.f64 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 2) (/.f64 (cbrt.f64 g) (cbrt.f64 a)))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g))) 9)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 -1/2) (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2))) 3)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 2) (/.f64 1 (/.f64 (cbrt.f64 a) (cbrt.f64 g))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 2) (*.f64 (cbrt.f64 g) (/.f64 1 (cbrt.f64 a))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (/.f64 (cbrt.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) -1/2)) (cbrt.f64 a)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 (/.f64 -1/2 a)) (cbrt.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g) g))) (*.f64 (*.f64 (cbrt.f64 g) (cbrt.f64 2)) (cbrt.f64 (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (expm1.f64 (log1p.f64 (cbrt.f64 (*.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g)) (/.f64 -1/2 a))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g) g))) (*.f64 (cbrt.f64 (/.f64 g a)) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (*.f64 (cbrt.f64 (/.f64 g a)) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (*.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 2) (cbrt.f64 (/.f64 g a)))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g) g))) (*.f64 (*.f64 (pow.f64 (*.f64 1 g) 1/3) (cbrt.f64 2)) (cbrt.f64 (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (fma.f64 1/2 (*.f64 (/.f64 h g) h) (*.f64 (/.f64 1/8 (pow.f64 g 3)) (pow.f64 h 4))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (pow.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (/.f64 -1/2 a)) 1/3))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g) g))) (/.f64 (cbrt.f64 (*.f64 -1/2 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g)))) (cbrt.f64 a)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g) g))) (*.f64 (cbrt.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g))) (cbrt.f64 (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (*.f64 (cbrt.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g))) (cbrt.f64 (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (/.f64 (cbrt.f64 (*.f64 -1/2 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g)))) (cbrt.f64 a)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.f64 g (*.f64 (sqrt.f64 (+.f64 g h)) (sqrt.f64 (-.f64 g h)))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g) g))) (*.f64 (cbrt.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g))) (pow.f64 (/.f64 -1/2 a) 1/3)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/6) (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (cbrt.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 3/2)) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.f64 g (cbrt.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 3/2))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (exp.f64 (*.f64 (log.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 1/2)) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.f64 g (exp.f64 (*.f64 (log.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 1/2))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (pow.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/4) 2) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (expm1.f64 (log1p.f64 (cbrt.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (/.f64 -1/2 a))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (pow.f64 (cbrt.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))) 3) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (/.f64 -1/2 a)))) 3))
(+.f64 (*.f64 (cbrt.f64 (/.f64 1/2 a)) (cbrt.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (/.f64 (cbrt.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) -1/2)) (cbrt.f64 a)))
(+.f64 (/.f64 (cbrt.f64 (*.f64 1/2 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g))) (cbrt.f64 a)) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (*.f64 (cbrt.f64 (/.f64 -1/2 a)) (cbrt.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g) g))) (*.f64 (cbrt.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g))) (/.f64 (cbrt.f64 -1/2) (cbrt.f64 a))))
Outputs
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g) g))) (*.f64 (cbrt.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g))) (cbrt.f64 (/.f64 -1/2 a))))
Calls

8 calls:

72.0ms
h
67.0ms
g
64.0ms
a
63.0ms
(*.f64 2 a)
63.0ms
(/.f64 1 (*.f64 2 a))
Results
ErrorSegmentsBranch
2.7b1g
2.7b1h
2.7b1a
2.7b1(+.f64 (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (+.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))
2.7b1(/.f64 1 (*.f64 2 a))
2.7b1(*.f64 2 a)
2.7b1(*.f64 h h)
2.7b1(*.f64 h h)
Compiler

Compiled 2366 to 1179 computations (50.2% saved)

regimes556.0ms (4.8%)

Counts
74 → 1
Calls
Call 1
Inputs
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (/.f64 g a)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (pow.f64 (/.f64 a g) -1/3))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (/.f64 (neg.f64 g) a)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (/.f64 (neg.f64 g) a)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (/.f64 1 (cbrt.f64 (/.f64 a g))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (/.f64 (+.f64 g g) (cbrt.f64 a)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (pow.f64 (*.f64 (/.f64 g a) -1) 1/3))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (+.f64 g g) (cbrt.f64 (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (+.f64 g g) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (+.f64 g (neg.f64 g)) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (/.f64 (/.f64 -1 a) g) (*.f64 g g))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 -1/4 (/.f64 (*.f64 h (/.f64 h a)) g))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (pow.f64 (*.f64 (*.f64 a -2) (*.f64 1/2 (/.f64 1 g))) -1/3))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (/.f64 1 (cbrt.f64 (*.f64 (*.f64 a -2) (*.f64 1/2 (/.f64 1 g))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (*.f64 (/.f64 1/2 g) (*.f64 h h)) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (/.f64 (cbrt.f64 (neg.f64 g)) (cbrt.f64 a)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2)) (cbrt.f64 -1/2)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 (*.f64 (/.f64 g a) 2))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 -1/4 (/.f64 (pow.f64 h 2) (*.f64 a g)))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 -1/2) (pow.f64 (*.f64 (/.f64 g a) 2) 1/3)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (exp.f64 (*.f64 (log.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g)) 1/3)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (/.f64 (cbrt.f64 (/.f64 -1/2 a)) (cbrt.f64 (*.f64 1/2 (/.f64 1 g)))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g) g))) (cbrt.f64 (/.f64 (neg.f64 g) a)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (/.f64 1 g) (/.f64 (*.f64 (pow.f64 g 3) (/.f64 -1 a)) g))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (*.f64 g -2))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.f64 g g) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (neg.f64 g) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.f64 g (neg.f64 g)) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (*.f64 -1/2 (*.f64 h (/.f64 h g))))) (cbrt.f64 (*.f64 (+.f64 g (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g)) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (*.f64 (/.f64 -1/2 g) (*.f64 h h)))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.f64 g (-.f64 (*.f64 1/2 (/.f64 h (/.f64 g h))) g)) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (-.f64 (*.f64 1/2 (/.f64 h (/.f64 g h))) g) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (sqrt.f64 (cbrt.f64 (pow.f64 (/.f64 g a) 2))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (sqrt.f64 (pow.f64 (/.f64 (+.f64 g g) (cbrt.f64 a)) 2)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 -1/2) (/.f64 (cbrt.f64 (*.f64 g 2)) (cbrt.f64 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 2) (cbrt.f64 (/.f64 g a)))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g))) 3))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (/.f64 (*.f64 (cbrt.f64 (/.f64 -1 a)) g) (pow.f64 (cbrt.f64 g) 2)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 2) (pow.f64 (/.f64 a g) -1/3))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 -1/2) (*.f64 (pow.f64 4 1/6) (cbrt.f64 (/.f64 g a)))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (/.f64 (cbrt.f64 (*.f64 (+.f64 g (hypot.f64 g (neg.f64 h))) -1/2)) (cbrt.f64 a)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 2) (/.f64 1 (cbrt.f64 (/.f64 a g))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (/.f64 (*.f64 (/.f64 -1/2 a) (*.f64 2 (pow.f64 g 3))) (fma.f64 g g 0))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (pow.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (/.f64 -1/2 a)) 1/3))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (+.f64 g (*.f64 (sqrt.f64 (+.f64 g h)) (sqrt.f64 (-.f64 g h)))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (+.f64 g (cbrt.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 3/2))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (+.f64 g (exp.f64 (*.f64 (log.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 1/2))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (*.f64 -1/2 (*.f64 h (/.f64 h g))))) (*.f64 (cbrt.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g))) (cbrt.f64 (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (fma.f64 g -2 (*.f64 (/.f64 1/2 g) (*.f64 h h))))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g) g))) (cbrt.f64 (*.f64 (+.f64 g (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g)) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.f64 g (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g)) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (*.f64 (-.f64 g h) (+.f64 g h)))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g) g))) (cbrt.f64 (/.f64 1 (/.f64 a (*.f64 -1/2 (+.f64 g (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g)))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (+.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 -1/2) (/.f64 (*.f64 (cbrt.f64 g) (cbrt.f64 2)) (cbrt.f64 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 2) (/.f64 (cbrt.f64 g) (cbrt.f64 a)))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g))) 9)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 -1/2) (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2))) 3)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 2) (/.f64 1 (/.f64 (cbrt.f64 a) (cbrt.f64 g))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 2) (*.f64 (cbrt.f64 g) (/.f64 1 (cbrt.f64 a))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (/.f64 (cbrt.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) -1/2)) (cbrt.f64 a)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 (/.f64 -1/2 a)) (cbrt.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g) g))) (*.f64 (*.f64 (cbrt.f64 g) (cbrt.f64 2)) (cbrt.f64 (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (expm1.f64 (log1p.f64 (cbrt.f64 (*.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g)) (/.f64 -1/2 a))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g) g))) (*.f64 (cbrt.f64 (/.f64 g a)) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (*.f64 (cbrt.f64 (/.f64 g a)) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (*.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 2) (cbrt.f64 (/.f64 g a)))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g) g))) (*.f64 (*.f64 (pow.f64 (*.f64 1 g) 1/3) (cbrt.f64 2)) (cbrt.f64 (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (fma.f64 1/2 (*.f64 (/.f64 h g) h) (*.f64 (/.f64 1/8 (pow.f64 g 3)) (pow.f64 h 4))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (pow.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (/.f64 -1/2 a)) 1/3))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g) g))) (/.f64 (cbrt.f64 (*.f64 -1/2 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g)))) (cbrt.f64 a)))
Outputs
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g) g))) (/.f64 (cbrt.f64 (*.f64 -1/2 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g)))) (cbrt.f64 a)))
Calls

8 calls:

109.0ms
a
104.0ms
h
103.0ms
g
55.0ms
(*.f64 2 a)
49.0ms
(/.f64 1 (*.f64 2 a))
Results
ErrorSegmentsBranch
2.7b1g
2.7b1h
2.7b1a
2.7b1(+.f64 (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (+.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))
2.7b1(/.f64 1 (*.f64 2 a))
2.7b1(*.f64 2 a)
2.7b1(*.f64 h h)
2.7b1(*.f64 h h)
Compiler

Compiled 1770 to 950 computations (46.3% saved)

regimes568.0ms (5%)

Counts
73 → 1
Calls
Call 1
Inputs
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (/.f64 g a)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (pow.f64 (/.f64 a g) -1/3))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (/.f64 (neg.f64 g) a)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (/.f64 (neg.f64 g) a)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (/.f64 1 (cbrt.f64 (/.f64 a g))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (/.f64 (+.f64 g g) (cbrt.f64 a)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (pow.f64 (*.f64 (/.f64 g a) -1) 1/3))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (+.f64 g g) (cbrt.f64 (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (+.f64 g g) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (+.f64 g (neg.f64 g)) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (/.f64 (/.f64 -1 a) g) (*.f64 g g))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 -1/4 (/.f64 (*.f64 h (/.f64 h a)) g))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (pow.f64 (*.f64 (*.f64 a -2) (*.f64 1/2 (/.f64 1 g))) -1/3))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (/.f64 1 (cbrt.f64 (*.f64 (*.f64 a -2) (*.f64 1/2 (/.f64 1 g))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (*.f64 (/.f64 1/2 g) (*.f64 h h)) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (/.f64 (cbrt.f64 (neg.f64 g)) (cbrt.f64 a)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2)) (cbrt.f64 -1/2)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 (*.f64 (/.f64 g a) 2))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 -1/4 (/.f64 (pow.f64 h 2) (*.f64 a g)))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 -1/2) (pow.f64 (*.f64 (/.f64 g a) 2) 1/3)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (exp.f64 (*.f64 (log.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g)) 1/3)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (/.f64 (cbrt.f64 (/.f64 -1/2 a)) (cbrt.f64 (*.f64 1/2 (/.f64 1 g)))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g) g))) (cbrt.f64 (/.f64 (neg.f64 g) a)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (/.f64 1 g) (/.f64 (*.f64 (pow.f64 g 3) (/.f64 -1 a)) g))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (*.f64 g -2))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.f64 g g) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (neg.f64 g) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.f64 g (neg.f64 g)) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (*.f64 -1/2 (*.f64 h (/.f64 h g))))) (cbrt.f64 (*.f64 (+.f64 g (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g)) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (*.f64 (/.f64 -1/2 g) (*.f64 h h)))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.f64 g (-.f64 (*.f64 1/2 (/.f64 h (/.f64 g h))) g)) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (-.f64 (*.f64 1/2 (/.f64 h (/.f64 g h))) g) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (sqrt.f64 (cbrt.f64 (pow.f64 (/.f64 g a) 2))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (sqrt.f64 (pow.f64 (/.f64 (+.f64 g g) (cbrt.f64 a)) 2)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 -1/2) (/.f64 (cbrt.f64 (*.f64 g 2)) (cbrt.f64 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 2) (cbrt.f64 (/.f64 g a)))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g))) 3))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (/.f64 (*.f64 (cbrt.f64 (/.f64 -1 a)) g) (pow.f64 (cbrt.f64 g) 2)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 2) (pow.f64 (/.f64 a g) -1/3))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 -1/2) (*.f64 (pow.f64 4 1/6) (cbrt.f64 (/.f64 g a)))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (/.f64 (cbrt.f64 (*.f64 (+.f64 g (hypot.f64 g (neg.f64 h))) -1/2)) (cbrt.f64 a)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 2) (/.f64 1 (cbrt.f64 (/.f64 a g))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (/.f64 (*.f64 (/.f64 -1/2 a) (*.f64 2 (pow.f64 g 3))) (fma.f64 g g 0))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (pow.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (/.f64 -1/2 a)) 1/3))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (+.f64 g (*.f64 (sqrt.f64 (+.f64 g h)) (sqrt.f64 (-.f64 g h)))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (+.f64 g (cbrt.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 3/2))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (+.f64 g (exp.f64 (*.f64 (log.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 1/2))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (*.f64 -1/2 (*.f64 h (/.f64 h g))))) (*.f64 (cbrt.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g))) (cbrt.f64 (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (fma.f64 g -2 (*.f64 (/.f64 1/2 g) (*.f64 h h))))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g) g))) (cbrt.f64 (*.f64 (+.f64 g (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g)) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.f64 g (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g)) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (*.f64 (-.f64 g h) (+.f64 g h)))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g) g))) (cbrt.f64 (/.f64 1 (/.f64 a (*.f64 -1/2 (+.f64 g (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g)))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (+.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 -1/2) (/.f64 (*.f64 (cbrt.f64 g) (cbrt.f64 2)) (cbrt.f64 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 2) (/.f64 (cbrt.f64 g) (cbrt.f64 a)))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g))) 9)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 -1/2) (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2))) 3)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 2) (/.f64 1 (/.f64 (cbrt.f64 a) (cbrt.f64 g))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 2) (*.f64 (cbrt.f64 g) (/.f64 1 (cbrt.f64 a))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (/.f64 (cbrt.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) -1/2)) (cbrt.f64 a)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 (/.f64 -1/2 a)) (cbrt.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g) g))) (*.f64 (*.f64 (cbrt.f64 g) (cbrt.f64 2)) (cbrt.f64 (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (expm1.f64 (log1p.f64 (cbrt.f64 (*.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g)) (/.f64 -1/2 a))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g) g))) (*.f64 (cbrt.f64 (/.f64 g a)) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (*.f64 (cbrt.f64 (/.f64 g a)) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (*.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 2) (cbrt.f64 (/.f64 g a)))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g) g))) (*.f64 (*.f64 (pow.f64 (*.f64 1 g) 1/3) (cbrt.f64 2)) (cbrt.f64 (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (fma.f64 1/2 (*.f64 (/.f64 h g) h) (*.f64 (/.f64 1/8 (pow.f64 g 3)) (pow.f64 h 4))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (pow.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (/.f64 -1/2 a)) 1/3))
Outputs
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g) g))) (*.f64 (*.f64 (cbrt.f64 g) (cbrt.f64 2)) (cbrt.f64 (/.f64 -1/2 a))))
Calls

8 calls:

96.0ms
(/.f64 1 (*.f64 2 a))
90.0ms
(*.f64 2 a)
61.0ms
(+.f64 (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (+.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))
55.0ms
g
54.0ms
h
Results
ErrorSegmentsBranch
3.0b1g
3.0b1h
3.0b1a
3.0b1(+.f64 (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (+.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))
3.0b1(/.f64 1 (*.f64 2 a))
3.0b1(*.f64 2 a)
3.0b1(*.f64 h h)
3.0b1(*.f64 h h)
Compiler

Compiled 1738 to 936 computations (46.1% saved)

regimes316.0ms (2.8%)

Counts
65 → 1
Calls
Call 1
Inputs
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (/.f64 g a)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (pow.f64 (/.f64 a g) -1/3))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (/.f64 (neg.f64 g) a)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (/.f64 (neg.f64 g) a)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (/.f64 1 (cbrt.f64 (/.f64 a g))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (/.f64 (+.f64 g g) (cbrt.f64 a)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (pow.f64 (*.f64 (/.f64 g a) -1) 1/3))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (+.f64 g g) (cbrt.f64 (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (+.f64 g g) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (+.f64 g (neg.f64 g)) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (/.f64 (/.f64 -1 a) g) (*.f64 g g))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 -1/4 (/.f64 (*.f64 h (/.f64 h a)) g))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (pow.f64 (*.f64 (*.f64 a -2) (*.f64 1/2 (/.f64 1 g))) -1/3))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (/.f64 1 (cbrt.f64 (*.f64 (*.f64 a -2) (*.f64 1/2 (/.f64 1 g))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (*.f64 (/.f64 1/2 g) (*.f64 h h)) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (/.f64 (cbrt.f64 (neg.f64 g)) (cbrt.f64 a)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2)) (cbrt.f64 -1/2)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 (*.f64 (/.f64 g a) 2))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 -1/4 (/.f64 (pow.f64 h 2) (*.f64 a g)))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 -1/2) (pow.f64 (*.f64 (/.f64 g a) 2) 1/3)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (exp.f64 (*.f64 (log.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g)) 1/3)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (/.f64 (cbrt.f64 (/.f64 -1/2 a)) (cbrt.f64 (*.f64 1/2 (/.f64 1 g)))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g) g))) (cbrt.f64 (/.f64 (neg.f64 g) a)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (/.f64 1 g) (/.f64 (*.f64 (pow.f64 g 3) (/.f64 -1 a)) g))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (*.f64 g -2))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.f64 g g) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (neg.f64 g) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.f64 g (neg.f64 g)) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (*.f64 -1/2 (*.f64 h (/.f64 h g))))) (cbrt.f64 (*.f64 (+.f64 g (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g)) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (*.f64 (/.f64 -1/2 g) (*.f64 h h)))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.f64 g (-.f64 (*.f64 1/2 (/.f64 h (/.f64 g h))) g)) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (-.f64 (*.f64 1/2 (/.f64 h (/.f64 g h))) g) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (sqrt.f64 (cbrt.f64 (pow.f64 (/.f64 g a) 2))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (sqrt.f64 (pow.f64 (/.f64 (+.f64 g g) (cbrt.f64 a)) 2)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 -1/2) (/.f64 (cbrt.f64 (*.f64 g 2)) (cbrt.f64 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 2) (cbrt.f64 (/.f64 g a)))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g))) 3))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (/.f64 (*.f64 (cbrt.f64 (/.f64 -1 a)) g) (pow.f64 (cbrt.f64 g) 2)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 2) (pow.f64 (/.f64 a g) -1/3))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 -1/2) (*.f64 (pow.f64 4 1/6) (cbrt.f64 (/.f64 g a)))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (/.f64 (cbrt.f64 (*.f64 (+.f64 g (hypot.f64 g (neg.f64 h))) -1/2)) (cbrt.f64 a)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 2) (/.f64 1 (cbrt.f64 (/.f64 a g))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (/.f64 (*.f64 (/.f64 -1/2 a) (*.f64 2 (pow.f64 g 3))) (fma.f64 g g 0))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (pow.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (/.f64 -1/2 a)) 1/3))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (+.f64 g (*.f64 (sqrt.f64 (+.f64 g h)) (sqrt.f64 (-.f64 g h)))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (+.f64 g (cbrt.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 3/2))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (+.f64 g (exp.f64 (*.f64 (log.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 1/2))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (*.f64 -1/2 (*.f64 h (/.f64 h g))))) (*.f64 (cbrt.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g))) (cbrt.f64 (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (fma.f64 g -2 (*.f64 (/.f64 1/2 g) (*.f64 h h))))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g) g))) (cbrt.f64 (*.f64 (+.f64 g (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g)) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.f64 g (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g)) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (*.f64 (-.f64 g h) (+.f64 g h)))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g) g))) (cbrt.f64 (/.f64 1 (/.f64 a (*.f64 -1/2 (+.f64 g (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g)))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (+.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 -1/2) (/.f64 (*.f64 (cbrt.f64 g) (cbrt.f64 2)) (cbrt.f64 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 2) (/.f64 (cbrt.f64 g) (cbrt.f64 a)))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g))) 9)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 -1/2) (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2))) 3)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 2) (/.f64 1 (/.f64 (cbrt.f64 a) (cbrt.f64 g))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 2) (*.f64 (cbrt.f64 g) (/.f64 1 (cbrt.f64 a))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (/.f64 (cbrt.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) -1/2)) (cbrt.f64 a)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 (/.f64 -1/2 a)) (cbrt.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))))
Outputs
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (/.f64 (cbrt.f64 (/.f64 -1/2 a)) (cbrt.f64 (*.f64 1/2 (/.f64 1 g)))))
Calls

7 calls:

51.0ms
g
45.0ms
(*.f64 2 a)
43.0ms
(/.f64 1 (*.f64 2 a))
43.0ms
a
42.0ms
h
Results
ErrorSegmentsBranch
3.2b1g
3.2b1h
3.2b1a
3.2b1(+.f64 (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (+.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))
3.2b1(/.f64 1 (*.f64 2 a))
3.2b1(*.f64 2 a)
3.2b1(*.f64 h h)
Compiler

Compiled 1512 to 820 computations (45.8% saved)

regimes53.0ms (0.5%)

Counts
21 → 1
Calls
Call 1
Inputs
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (/.f64 g a)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (pow.f64 (/.f64 a g) -1/3))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (/.f64 (neg.f64 g) a)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (/.f64 (neg.f64 g) a)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (/.f64 1 (cbrt.f64 (/.f64 a g))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (/.f64 (+.f64 g g) (cbrt.f64 a)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (pow.f64 (*.f64 (/.f64 g a) -1) 1/3))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (+.f64 g g) (cbrt.f64 (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (+.f64 g g) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (+.f64 g (neg.f64 g)) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (/.f64 (/.f64 -1 a) g) (*.f64 g g))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 -1/4 (/.f64 (*.f64 h (/.f64 h a)) g))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (pow.f64 (*.f64 (*.f64 a -2) (*.f64 1/2 (/.f64 1 g))) -1/3))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (/.f64 1 (cbrt.f64 (*.f64 (*.f64 a -2) (*.f64 1/2 (/.f64 1 g))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (*.f64 (/.f64 1/2 g) (*.f64 h h)) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (/.f64 (cbrt.f64 (neg.f64 g)) (cbrt.f64 a)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 (*.f64 (/.f64 g a) 2)) (cbrt.f64 -1/2)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 (*.f64 (/.f64 g a) 2))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 -1/4 (/.f64 (pow.f64 h 2) (*.f64 a g)))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 -1/2) (pow.f64 (*.f64 (/.f64 g a) 2) 1/3)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (exp.f64 (*.f64 (log.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g)) 1/3)))
Outputs
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (/.f64 (cbrt.f64 (neg.f64 g)) (cbrt.f64 a)))
Calls

4 calls:

12.0ms
a
12.0ms
h
12.0ms
g
6.0ms
(*.f64 h h)
Results
ErrorSegmentsBranch
3.2b1g
3.2b1h
3.2b1a
3.2b1(*.f64 h h)
Compiler

Compiled 383 to 229 computations (40.2% saved)

regimes43.0ms (0.4%)

Counts
15 → 1
Calls
Call 1
Inputs
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (/.f64 g a)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (pow.f64 (/.f64 a g) -1/3))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (/.f64 (neg.f64 g) a)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (/.f64 (neg.f64 g) a)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (/.f64 1 (cbrt.f64 (/.f64 a g))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (/.f64 (+.f64 g g) (cbrt.f64 a)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (pow.f64 (*.f64 (/.f64 g a) -1) 1/3))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (+.f64 g g) (cbrt.f64 (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (+.f64 g g) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (+.f64 g (neg.f64 g)) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (/.f64 (/.f64 -1 a) g) (*.f64 g g))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 -1/4 (/.f64 (*.f64 h (/.f64 h a)) g))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (pow.f64 (*.f64 (*.f64 a -2) (*.f64 1/2 (/.f64 1 g))) -1/3))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (/.f64 1 (cbrt.f64 (*.f64 (*.f64 a -2) (*.f64 1/2 (/.f64 1 g))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (*.f64 (/.f64 1/2 g) (*.f64 h h)) (/.f64 -1/2 a))))
Outputs
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (/.f64 1 (cbrt.f64 (*.f64 (*.f64 a -2) (*.f64 1/2 (/.f64 1 g))))))
Calls

4 calls:

10.0ms
a
10.0ms
g
9.0ms
h
6.0ms
(*.f64 h h)
Results
ErrorSegmentsBranch
18.8b1g
18.8b1h
18.8b1a
18.8b1(*.f64 h h)
Compiler

Compiled 274 to 162 computations (40.9% saved)

regimes33.0ms (0.3%)

Counts
13 → 1
Calls
Call 1
Inputs
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (/.f64 g a)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (pow.f64 (/.f64 a g) -1/3))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (/.f64 (neg.f64 g) a)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (/.f64 (neg.f64 g) a)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (/.f64 1 (cbrt.f64 (/.f64 a g))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (/.f64 (+.f64 g g) (cbrt.f64 a)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (pow.f64 (*.f64 (/.f64 g a) -1) 1/3))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (+.f64 g g) (cbrt.f64 (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (+.f64 g g) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (+.f64 g (neg.f64 g)) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (/.f64 (/.f64 -1 a) g) (*.f64 g g))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 -1/4 (/.f64 (*.f64 h (/.f64 h a)) g))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (pow.f64 (*.f64 (*.f64 a -2) (*.f64 1/2 (/.f64 1 g))) -1/3))
Outputs
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (+.f64 g g) (/.f64 -1/2 a))))
Calls

3 calls:

10.0ms
g
9.0ms
a
8.0ms
h
Results
ErrorSegmentsBranch
19.1b1g
19.1b1h
19.1b1a
Compiler

Compiled 226 to 130 computations (42.5% saved)

regimes22.0ms (0.2%)

Counts
8 → 1
Calls
Call 1
Inputs
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (/.f64 g a)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (pow.f64 (/.f64 a g) -1/3))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (/.f64 (neg.f64 g) a)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (/.f64 (neg.f64 g) a)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (/.f64 1 (cbrt.f64 (/.f64 a g))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (/.f64 (+.f64 g g) (cbrt.f64 a)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (pow.f64 (*.f64 (/.f64 g a) -1) 1/3))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (+.f64 g g) (cbrt.f64 (/.f64 -1/2 a))))
Outputs
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (/.f64 (neg.f64 g) a)))
Calls

3 calls:

7.0ms
a
6.0ms
h
6.0ms
g
Results
ErrorSegmentsBranch
19.2b1g
19.2b1h
19.2b1a
Compiler

Compiled 133 to 75 computations (43.6% saved)

regimes12.0ms (0.1%)

Accuracy

Total -0.3b remaining (-0.5%)

Threshold costs -0.3b (-0.5%)

Counts
2 → 1
Calls
Call 1
Inputs
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (/.f64 g a)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (pow.f64 (/.f64 a g) -1/3))
Outputs
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (/.f64 g a)))
Calls

3 calls:

4.0ms
a
3.0ms
h
3.0ms
g
Results
ErrorSegmentsBranch
63.2b1g
63.2b1h
63.2b1a
Compiler

Compiled 42 to 28 computations (33.3% saved)

simplify16.0ms (0.1%)

Algorithm
egg-herbie
Rules
15×+-commutative_binary64
14×*-commutative_binary64
sub-neg_binary64
neg-sub0_binary64
neg-mul-1_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
067341
198341
2105341
3108341
4109341
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(+.f64 (/.f64 (cbrt.f64 (*.f64 (-.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) g) 1/2)) (cbrt.f64 a)) (*.f64 (cbrt.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g))) (cbrt.f64 (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g) g))) (*.f64 (cbrt.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g))) (cbrt.f64 (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g) g))) (/.f64 (cbrt.f64 (*.f64 -1/2 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g)))) (cbrt.f64 a)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g) g))) (*.f64 (*.f64 (cbrt.f64 g) (cbrt.f64 2)) (cbrt.f64 (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (/.f64 (cbrt.f64 (/.f64 -1/2 a)) (cbrt.f64 (*.f64 1/2 (/.f64 1 g)))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (/.f64 (cbrt.f64 (neg.f64 g)) (cbrt.f64 a)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (/.f64 1 (cbrt.f64 (*.f64 (*.f64 a -2) (*.f64 1/2 (/.f64 1 g))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (+.f64 g g) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (/.f64 (neg.f64 g) a)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (/.f64 g a)))
Outputs
(+.f64 (/.f64 (cbrt.f64 (*.f64 (-.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) g) 1/2)) (cbrt.f64 a)) (*.f64 (cbrt.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g))) (cbrt.f64 (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g) g))) (*.f64 (cbrt.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g))) (cbrt.f64 (/.f64 -1/2 a))))
(+.f64 (*.f64 (cbrt.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g))) (cbrt.f64 (/.f64 -1/2 a))) (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g) g))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g) g))) (/.f64 (cbrt.f64 (*.f64 -1/2 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) (+.f64 g g)))) (cbrt.f64 a)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g) g))) (*.f64 (*.f64 (cbrt.f64 g) (cbrt.f64 2)) (cbrt.f64 (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g) g))) (*.f64 (cbrt.f64 (/.f64 -1/2 a)) (*.f64 (cbrt.f64 g) (cbrt.f64 2))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (/.f64 (cbrt.f64 (/.f64 -1/2 a)) (cbrt.f64 (*.f64 1/2 (/.f64 1 g)))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (/.f64 (cbrt.f64 (neg.f64 g)) (cbrt.f64 a)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (/.f64 1 (cbrt.f64 (*.f64 (*.f64 a -2) (*.f64 1/2 (/.f64 1 g))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (/.f64 1 (cbrt.f64 (*.f64 (*.f64 1/2 (/.f64 1 g)) (*.f64 a -2)))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (+.f64 g g) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (/.f64 (neg.f64 g) a)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (/.f64 g a)))
Compiler

Compiled 253 to 176 computations (30.4% saved)

soundness456.0ms (4%)

Algorithm
egg-herbie
Rules
944×fma-def_binary64
944×fma-def_binary64
729×fma-neg_binary64
622×associate-/l*_binary64
622×associate-/l*_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02052
15450
215450
347948
4128848
5264548
6391948
7530148
8612148
9671548
10778948
02042389
16352172
223722125
366812125
02042389
16352172
223722125
366812125
Stop Event
node limit
node limit
node limit
Compiler

Compiled 635 to 381 computations (40% saved)

end111.0ms (1%)

Compiler

Compiled 226 to 130 computations (42.5% saved)

Profiling

Loading profile data...