Details

Time bar (total: 11.8s)

analyze337.0ms (2.8%)

Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%99.9%0.1%0%0%0%0
0%0%99.9%0.1%0%0%0%1
0%0%99.9%0.1%0%0%0%2
0%0%99.9%0.1%0%0%0%3
0%0%99.9%0.1%0%0%0%4
0%0%99.9%0.1%0%0%0%5
0%0%81.1%0.1%0%18.7%0%6
0%0%81.1%0.1%0%18.7%0%7
12%9.4%68.6%0.1%0%21.8%0%8
20.9%14%53%0.1%0%32.8%0%9
24.4%16.4%50.7%0.1%0%32.8%0%10
38%24.6%40.2%0.1%0%35.1%0%11
48.7%28.7%30.2%0.1%0%41%0%12
Compiler

Compiled 41 to 24 computations (41.5% saved)

sample2.2s (18.4%)

Results
1.9s8256×body256valid
308.0ms1488×body256invalid
Bogosity

preprocess71.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)

simplify125.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
33.8b
Counts
3 → 1
Alt Table
Click to see full alt table
StatusErrorProgram
33.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 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
Compiler

Compiled 34 to 18 computations (47.1% saved)

localize45.0ms (0.4%)

Local error

Found 4 expressions with local error:

NewErrorProgram
2.2b
(-.f64 (*.f64 g g) (*.f64 h h))
8.4b
(cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a)))
8.9b
(cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g)))
26.5b
(sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))
Compiler

Compiled 144 to 38 computations (73.6% saved)

series37.0ms (0.3%)

Counts
4 → 60
Calls

30 calls:

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

rewrite107.0ms (0.9%)

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 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 (*.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 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 (-.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 (cbrt.f64 (cbrt.f64 (*.f64 1/2 (/.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g) a)))) (pow.f64 (cbrt.f64 (cbrt.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 (pow.f64 (cbrt.f64 (cbrt.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 (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 (pow.f64 (cbrt.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 (pow.f64 (cbrt.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))))))
((#(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 (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 (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 (/.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 (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))))))
((#(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 (pow.f64 g 4) (+.f64 (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 (pow.f64 g 4) (+.f64 (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 (pow.f64 g 4) (+.f64 (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 (pow.f64 g 4) (+.f64 (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.8%)

Algorithm
egg-herbie
Rules
944×fma-def_binary64
625×associate-/l*_binary64
365×unswap-sqr_binary64
290×associate-*l/_binary64
257×associate-*r/_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02042389
16352172
223722125
366692125
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 -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 (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 -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 g (/.f64 (*.f64 (sqrt.f64 -1) h) g))))
(fma.f64 1/2 (/.f64 g (/.f64 (*.f64 (sqrt.f64 -1) h) g)) (*.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)))
(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 g (/.f64 (*.f64 (sqrt.f64 -1) h) g)) (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 (sqrt.f64 -1) h (fma.f64 1/2 (/.f64 g (/.f64 (*.f64 (sqrt.f64 -1) h) g)) (*.f64 (/.f64 -1/8 (neg.f64 (sqrt.f64 -1))) (/.f64 (pow.f64 g 4) (pow.f64 h 3)))))
(+.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 g (/.f64 (*.f64 (sqrt.f64 -1) h) g)) (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 g (/.f64 (*.f64 (sqrt.f64 -1) h) g)) (fma.f64 -1/8 (/.f64 (pow.f64 g 4) (*.f64 (neg.f64 (sqrt.f64 -1)) (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))))
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/2 (*.f64 h (/.f64 h g)) (fma.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) 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/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5)) (fma.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) 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)
(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 1/8 (/.f64 (pow.f64 g 3) (pow.f64 h 4))) g))
(-.f64 (fma.f64 (/.f64 1/2 g) (*.f64 h h) (*.f64 (/.f64 1/8 (pow.f64 g 3)) (pow.f64 h 4))) 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 h g)) (fma.f64 1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5)) (-.f64 (*.f64 (/.f64 1/8 (pow.f64 g 3)) (pow.f64 h 4)) 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/2 (*.f64 h (/.f64 h g)) (fma.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) 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/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5)) (fma.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) 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 g (/.f64 (*.f64 (sqrt.f64 -1) h) g))))
(fma.f64 1/2 (/.f64 g (/.f64 (*.f64 (sqrt.f64 -1) h) g)) (*.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)))
(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 g (/.f64 (*.f64 (sqrt.f64 -1) h) g)) (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 (sqrt.f64 -1) h (fma.f64 1/2 (/.f64 g (/.f64 (*.f64 (sqrt.f64 -1) h) g)) (*.f64 (/.f64 -1/8 (neg.f64 (sqrt.f64 -1))) (/.f64 (pow.f64 g 4) (pow.f64 h 3)))))
(+.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 g (/.f64 (*.f64 (sqrt.f64 -1) h) g)) (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 g (/.f64 (*.f64 (sqrt.f64 -1) h) g)) (fma.f64 -1/8 (/.f64 (pow.f64 g 4) (*.f64 (neg.f64 (sqrt.f64 -1)) (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 -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 g (/.f64 (*.f64 (sqrt.f64 -1) h) g)) -1/2) (*.f64 (sqrt.f64 -1) h))
(fma.f64 (/.f64 g (/.f64 (*.f64 (sqrt.f64 -1) h) g)) -1/2 (*.f64 (sqrt.f64 -1) (neg.f64 h)))
(neg.f64 (fma.f64 1/2 (/.f64 g (/.f64 (*.f64 (sqrt.f64 -1) h) 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 g (/.f64 (*.f64 (sqrt.f64 -1) h) g)) -1/2 (fma.f64 (/.f64 (pow.f64 g 4) (*.f64 (neg.f64 (sqrt.f64 -1)) (pow.f64 h 3))) 1/8 (*.f64 (sqrt.f64 -1) (neg.f64 h))))
(-.f64 (fma.f64 (/.f64 g (/.f64 (*.f64 (sqrt.f64 -1) h) g)) -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 1/2 (/.f64 g (/.f64 (*.f64 (sqrt.f64 -1) h) 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 (*.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 g (/.f64 (*.f64 (sqrt.f64 -1) h) g)) -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 g (/.f64 (*.f64 (sqrt.f64 -1) h) g)) -1/2 (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) (pow.f64 (sqrt.f64 -1) 5)) (/.f64 (pow.f64 h 5) -1/16)))) (*.f64 (sqrt.f64 -1) h))
(-.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) (pow.f64 (sqrt.f64 -1) 5)) (/.f64 (pow.f64 h 5) -1/16))) (fma.f64 1/2 (/.f64 g (/.f64 (*.f64 (sqrt.f64 -1) h) g)) (*.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 -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 -1/3 (*.f64 (cbrt.f64 1/2) (*.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 (cbrt.f64 1/2) (+.f64 (*.f64 (*.f64 -1/3 (*.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))) g) (cbrt.f64 (*.f64 (/.f64 (sqrt.f64 -1) a) h))))
(+.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 (cbrt.f64 (/.f64 (*.f64 a a) (*.f64 h (neg.f64 h)))) (*.f64 (*.f64 g g) (*.f64 (+.f64 (/.f64 1/2 (*.f64 h (*.f64 (sqrt.f64 -1) a))) (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 (/.f64 (/.f64 1 (sqrt.f64 -1)) (pow.f64 a 17)) h) 1/18) (pow.f64 (/.f64 (/.f64 (/.f64 1 (sqrt.f64 -1)) (pow.f64 a 17)) h) 1/18)))) (cbrt.f64 1/2)))) (fma.f64 (cbrt.f64 (*.f64 (/.f64 (sqrt.f64 -1) a) h)) (cbrt.f64 1/2) (*.f64 -1/3 (*.f64 (cbrt.f64 1/2) (*.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)))))))
(fma.f64 1/3 (*.f64 (cbrt.f64 (*.f64 (/.f64 a (*.f64 h (neg.f64 h))) a)) (*.f64 (*.f64 g g) (*.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 (sqrt.f64 -1) (*.f64 h a)))) (cbrt.f64 1/2)))) (*.f64 (cbrt.f64 1/2) (+.f64 (*.f64 (*.f64 -1/3 (*.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))) g) (cbrt.f64 (*.f64 (/.f64 (sqrt.f64 -1) a) h)))))
(+.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 -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 (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 (cbrt.f64 (/.f64 (*.f64 a a) (*.f64 h (neg.f64 h)))) (*.f64 (*.f64 g g) (*.f64 (+.f64 (/.f64 1/2 (*.f64 h (*.f64 (sqrt.f64 -1) a))) (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 (/.f64 (/.f64 1 (sqrt.f64 -1)) (pow.f64 a 17)) h) 1/18) (pow.f64 (/.f64 (/.f64 (/.f64 1 (sqrt.f64 -1)) (pow.f64 a 17)) h) 1/18)))) (cbrt.f64 1/2)))) (fma.f64 -1/3 (*.f64 (cbrt.f64 (/.f64 (*.f64 a a) (*.f64 h (neg.f64 h)))) (*.f64 (cbrt.f64 1/2) (*.f64 (pow.f64 g 3) (fma.f64 -1/27 (cbrt.f64 (/.f64 -1 (*.f64 h (*.f64 h (pow.f64 a 7))))) (*.f64 (+.f64 (/.f64 1/2 (*.f64 h (*.f64 (sqrt.f64 -1) a))) (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 (/.f64 (/.f64 1 (sqrt.f64 -1)) (pow.f64 a 17)) h) 1/18) (pow.f64 (/.f64 (/.f64 (/.f64 1 (sqrt.f64 -1)) (pow.f64 a 17)) h) 1/18)))) (*.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))))))) (fma.f64 (cbrt.f64 (*.f64 (/.f64 (sqrt.f64 -1) a) h)) (cbrt.f64 1/2) (*.f64 -1/3 (*.f64 (cbrt.f64 1/2) (*.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 (cbrt.f64 1/2) (+.f64 (*.f64 (*.f64 -1/3 (*.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))) g) (cbrt.f64 (*.f64 (/.f64 (sqrt.f64 -1) a) h)))) (*.f64 (cbrt.f64 (*.f64 (/.f64 a (*.f64 h (neg.f64 h))) a)) (+.f64 (*.f64 1/3 (*.f64 (*.f64 g g) (*.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 (sqrt.f64 -1) (*.f64 h a)))) (cbrt.f64 1/2)))) (*.f64 -1/3 (*.f64 (cbrt.f64 1/2) (*.f64 (pow.f64 g 3) (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 (sqrt.f64 -1) (*.f64 h a)))) (*.f64 (*.f64 -2/3 (pow.f64 (/.f64 (/.f64 1 (pow.f64 (sqrt.f64 -1) 5)) (*.f64 (pow.f64 h 5) (pow.f64 a 4))) 1/18)) (pow.f64 (/.f64 (/.f64 1 (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 (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 (*.f64 1/3 (*.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 (*.f64 (*.f64 1/3 (cbrt.f64 -1/2)) 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 (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 (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 (*.f64 a a) (*.f64 (*.f64 h h) (pow.f64 (sqrt.f64 -1) 2)))) (*.f64 (cbrt.f64 -1/2) (*.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))))))))))
(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 (cbrt.f64 (/.f64 (*.f64 a a) (*.f64 h (neg.f64 h)))) (+.f64 (/.f64 1/2 (*.f64 h (*.f64 (sqrt.f64 -1) a))) (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 (/.f64 (/.f64 1 (sqrt.f64 -1)) (pow.f64 a 17)) h) 1/18) (pow.f64 (/.f64 (/.f64 (/.f64 1 (sqrt.f64 -1)) (pow.f64 a 17)) h) 1/18)))))))) (*.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 (*.f64 g g) (*.f64 (cbrt.f64 (*.f64 (/.f64 a (*.f64 h (neg.f64 h))) a)) (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 (sqrt.f64 -1) (*.f64 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 (cbrt.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (*.f64 h h) (pow.f64 a 7))))) 1/27)) (*.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 (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 (*.f64 a a) (*.f64 (*.f64 h h) (pow.f64 (sqrt.f64 -1) 2)))) (*.f64 (cbrt.f64 -1/2) (*.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)))))))))))
(fma.f64 -1/3 (*.f64 (cbrt.f64 (/.f64 (*.f64 a a) (*.f64 h (neg.f64 h)))) (*.f64 (cbrt.f64 -1/2) (*.f64 (pow.f64 g 3) (fma.f64 (*.f64 (+.f64 (/.f64 1/2 (*.f64 h (*.f64 (sqrt.f64 -1) a))) (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 (/.f64 (/.f64 1 (sqrt.f64 -1)) (pow.f64 a 17)) h) 1/18) (pow.f64 (/.f64 (/.f64 (/.f64 1 (sqrt.f64 -1)) (pow.f64 a 17)) h) 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))) 2/3 (*.f64 (cbrt.f64 (/.f64 -1 (*.f64 h (*.f64 h (pow.f64 a 7))))) 1/27))))) (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 (cbrt.f64 (/.f64 (*.f64 a a) (*.f64 h (neg.f64 h)))) (+.f64 (/.f64 1/2 (*.f64 h (*.f64 (sqrt.f64 -1) a))) (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 (/.f64 (/.f64 1 (sqrt.f64 -1)) (pow.f64 a 17)) h) 1/18) (pow.f64 (/.f64 (/.f64 (/.f64 1 (sqrt.f64 -1)) (pow.f64 a 17)) h) 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 (/.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 (*.f64 h (neg.f64 h))) a)) (+.f64 (*.f64 1/3 (*.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 (sqrt.f64 -1) (*.f64 h a)))) (*.f64 (*.f64 g g) (cbrt.f64 -1/2)))) (*.f64 -1/3 (*.f64 (fma.f64 (*.f64 2/3 (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 (sqrt.f64 -1) (*.f64 h a))))) (*.f64 (pow.f64 (/.f64 (/.f64 1 (pow.f64 (sqrt.f64 -1) 5)) (*.f64 (pow.f64 h 5) (pow.f64 a 4))) 1/18) (pow.f64 (/.f64 (/.f64 1 (pow.f64 (sqrt.f64 -1) 5)) (*.f64 (pow.f64 h 5) (pow.f64 a 4))) 1/18)) (*.f64 (cbrt.f64 (/.f64 -1 (*.f64 h (*.f64 h (pow.f64 a 7))))) 1/27)) (*.f64 (pow.f64 g 3) (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 (*.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 (cbrt.f64 -1/2) (pow.f64 (cbrt.f64 2) 2)) (*.f64 h h)) (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 1 (*.f64 (pow.f64 g 5) a))) (*.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 (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 (cbrt.f64 -1/2) (pow.f64 (cbrt.f64 2) 2)) (*.f64 h h)) (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 (cbrt.f64 -1/2) (pow.f64 (cbrt.f64 2) 2)) (pow.f64 h 4)) (cbrt.f64 (/.f64 1 (*.f64 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 1 (*.f64 (pow.f64 g 5) a)))) (fma.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 2) (cbrt.f64 (/.f64 g a))) (*.f64 (*.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 11))) -1/18))))
(+.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 (*.f64 (cbrt.f64 -1/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))))) (pow.f64 (cbrt.f64 2) 2)) (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 (cbrt.f64 -1/2) (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 (pow.f64 h 6) (*.f64 (cbrt.f64 -1/2) (+.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 a g) (/.f64 a g))))) (fma.f64 (cbrt.f64 (/.f64 g a)) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)) (*.f64 -1/18 (*.f64 (*.f64 (/.f64 (cbrt.f64 -1/2) (pow.f64 (cbrt.f64 2) 2)) (pow.f64 h 4)) (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 (*.f64 g g)) a))) (pow.f64 (cbrt.f64 2) 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))))) (fma.f64 -1/6 (*.f64 (*.f64 (/.f64 (cbrt.f64 -1/2) (pow.f64 (cbrt.f64 2) 2)) (*.f64 h h)) (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 (*.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 11))) -1/18)))))
(*.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))

eval221.0ms (1.9%)

Compiler

Compiled 15405 to 6917 computations (55.1% saved)

prune195.0ms (1.6%)

Pruning

27 alts after pruning (26 fresh and 1 done)

PrunedKeptTotal
New34226368
Fresh000
Picked011
Done000
Total34227369
Error
30.5b
Counts
369 → 27
Alt Table
Click to see full alt table
StatusErrorProgram
47.9b
(+.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))))
52.4b
(+.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))))
39.0b
(+.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))))
33.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 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
60.5b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (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))))
47.9b
(+.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))))
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 (pow.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 3/2) 1/3)) (/.f64 -1/2 a))))
49.0b
(+.f64 (*.f64 (cbrt.f64 (*.f64 1/2 (/.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g) a))) 1) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
54.0b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (*.f64 (sqrt.f64 (+.f64 g h)) (sqrt.f64 (-.f64 g 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 (neg.f64 g) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
49.5b
(+.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))))
53.1b
(+.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))))
50.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 (*.f64 (sqrt.f64 (+.f64 g h)) (sqrt.f64 (-.f64 g h)))) (/.f64 -1/2 a))))
46.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))))
47.1b
(+.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))))
37.9b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (fma.f64 (*.f64 g (pow.f64 (cbrt.f64 g) 2)) (cbrt.f64 g) (*.f64 h (neg.f64 h)))) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
38.7b
(+.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))))
47.2b
(+.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)))))
41.6b
(+.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))))
44.4b
(+.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))))
43.1b
(+.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))))
39.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 (sqrt.f64 (fma.f64 (pow.f64 (cbrt.f64 g) 2) (*.f64 (cbrt.f64 g) g) (*.f64 h (neg.f64 h))))) (/.f64 -1/2 a))))
33.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 g g (*.f64 h (neg.f64 h))))) (/.f64 -1/2 a))))
49.5b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
47.2b
(+.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)))
37.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 (pow.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/4) 2)) (/.f64 -1/2 a))))
49.1b
(+.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 1/2 (/.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g) a)))) 3) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
Compiler

Compiled 1834 to 1178 computations (35.8% saved)

localize94.0ms (0.8%)

Local error

Found 4 expressions with local error:

NewErrorProgram
8.4b
(cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (fma.f64 g g (*.f64 h (neg.f64 h))))) (/.f64 -1/2 a)))
8.9b
(cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g)))
26.5b
(sqrt.f64 (fma.f64 g g (*.f64 h (neg.f64 h))))
26.5b
(sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))
Compiler

Compiled 165 to 42 computations (74.5% saved)

series16.0ms (0.1%)

Counts
2 → 32
Calls

15 calls:

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

rewrite69.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
784×prod-diff_binary64
590×log-prod_binary64
267×fma-def_binary64
223×expm1-udef_binary64
223×log1p-udef_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify83.0ms (0.7%)

Algorithm
egg-herbie
Rules
704×fma-def_binary64
623×associate-/l*_binary64
453×*-commutative_binary64
422×unswap-sqr_binary64
380×distribute-rgt-in_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01801542
15611438
220481415
360301412
Stop Event
node limit
Counts
87 → 101
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))))))
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 1/2 (*.f64 (/.f64 g (sqrt.f64 -1)) (/.f64 g 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)))
(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 (/.f64 -1/8 (pow.f64 h 3)) (/.f64 (pow.f64 g 4) (neg.f64 (sqrt.f64 -1))))))
(fma.f64 (/.f64 -1/8 (neg.f64 (sqrt.f64 -1))) (/.f64 (pow.f64 g 4) (pow.f64 h 3)) (fma.f64 1/2 (*.f64 (/.f64 g (sqrt.f64 -1)) (/.f64 g 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 (*.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 (/.f64 1/16 (pow.f64 (sqrt.f64 -1) 5)) (/.f64 (pow.f64 g 6) (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 (pow.f64 g 6) (pow.f64 (sqrt.f64 -1) 5)) (/.f64 1/16 (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)
(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/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5)) (fma.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) 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))
(fma.f64 1/2 (/.f64 h (/.f64 g h)) (neg.f64 g))
(-.f64 (*.f64 1/2 (*.f64 h (/.f64 h g))) 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)) (fma.f64 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) 1/8 (neg.f64 g)))
(-.f64 (fma.f64 1/2 (*.f64 h (/.f64 h g)) (*.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 h g)) 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)) (fma.f64 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) 1/8 (neg.f64 g))))
(fma.f64 1/2 (*.f64 h (/.f64 h g)) (fma.f64 1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5)) (-.f64 (*.f64 (/.f64 1/8 (pow.f64 g 3)) (pow.f64 h 4)) 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/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5)) (fma.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) 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 1/2 (*.f64 (/.f64 g (sqrt.f64 -1)) (/.f64 g 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)))
(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 (/.f64 -1/8 (pow.f64 h 3)) (/.f64 (pow.f64 g 4) (neg.f64 (sqrt.f64 -1))))))
(fma.f64 (/.f64 -1/8 (neg.f64 (sqrt.f64 -1))) (/.f64 (pow.f64 g 4) (pow.f64 h 3)) (fma.f64 1/2 (*.f64 (/.f64 g (sqrt.f64 -1)) (/.f64 g 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 (*.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 (/.f64 1/16 (pow.f64 (sqrt.f64 -1) 5)) (/.f64 (pow.f64 g 6) (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 (pow.f64 g 6) (pow.f64 (sqrt.f64 -1) 5)) (/.f64 1/16 (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 (*.f64 g g) -1/2) (*.f64 (sqrt.f64 -1) h)) (*.f64 (sqrt.f64 -1) h))
(-.f64 (/.f64 (*.f64 g (*.f64 g -1/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 (*.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 (pow.f64 h 3)) (/.f64 (pow.f64 g 4) (neg.f64 (sqrt.f64 -1)))) (*.f64 (sqrt.f64 -1) h)))
(-.f64 (fma.f64 (*.f64 (/.f64 g (sqrt.f64 -1)) (/.f64 g h)) -1/2 (/.f64 1/8 (/.f64 (*.f64 (sqrt.f64 -1) (neg.f64 (pow.f64 h 3))) (pow.f64 g 4)))) (*.f64 (sqrt.f64 -1) h))
(-.f64 (/.f64 1/8 (/.f64 (*.f64 (sqrt.f64 -1) (neg.f64 (pow.f64 h 3))) (pow.f64 g 4))) (fma.f64 1/2 (*.f64 (/.f64 g (sqrt.f64 -1)) (/.f64 g h)) (*.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 (*.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 -1/16 (pow.f64 h 5)) (/.f64 (pow.f64 g 6) (pow.f64 (sqrt.f64 -1) 5)))) (*.f64 (sqrt.f64 -1) h)))
(-.f64 (fma.f64 (*.f64 (/.f64 g (sqrt.f64 -1)) (/.f64 g h)) -1/2 (fma.f64 (/.f64 -1/16 (pow.f64 (sqrt.f64 -1) 5)) (/.f64 (pow.f64 g 6) (pow.f64 h 5)) (/.f64 1/8 (/.f64 (*.f64 (sqrt.f64 -1) (neg.f64 (pow.f64 h 3))) (pow.f64 g 4))))) (*.f64 (sqrt.f64 -1) h))
(-.f64 (fma.f64 (/.f64 -1/16 (pow.f64 (sqrt.f64 -1) 5)) (/.f64 (pow.f64 g 6) (pow.f64 h 5)) (/.f64 1/8 (/.f64 (*.f64 (sqrt.f64 -1) (neg.f64 (pow.f64 h 3))) (pow.f64 g 4)))) (fma.f64 1/2 (*.f64 (/.f64 g (sqrt.f64 -1)) (/.f64 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 h (/.f64 (sqrt.f64 -1) a))) (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 (cbrt.f64 -1/2) (*.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 (cbrt.f64 (/.f64 (sqrt.f64 -1) (/.f64 a h))) (cbrt.f64 -1/2)))
(*.f64 (cbrt.f64 -1/2) (+.f64 (cbrt.f64 (*.f64 h (/.f64 (sqrt.f64 -1) a))) (*.f64 1/3 (*.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 (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 (*.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 (/.f64 1/2 (*.f64 (sqrt.f64 -1) (*.f64 h a))) (*.f64 (*.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)) -1/3)) (*.f64 (*.f64 g g) (cbrt.f64 (*.f64 -1 (*.f64 (/.f64 a h) (/.f64 a h)))))))) (*.f64 (cbrt.f64 (/.f64 (sqrt.f64 -1) (/.f64 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 (*.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 h (/.f64 (sqrt.f64 -1) a))) (cbrt.f64 -1/2)))
(*.f64 (cbrt.f64 -1/2) (+.f64 (cbrt.f64 (*.f64 h (/.f64 (sqrt.f64 -1) a))) (*.f64 1/3 (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 (*.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 h) (neg.f64 (/.f64 a h))))))))))
(+.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 h) (/.f64 a h)))) (*.f64 (fma.f64 2/3 (*.f64 (+.f64 (/.f64 1/2 (*.f64 (sqrt.f64 -1) (*.f64 h a))) (*.f64 (*.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)) -1/3)) (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 h 5) (*.f64 (pow.f64 (sqrt.f64 -1) 5) (pow.f64 a 4)))) 1/18) (pow.f64 (/.f64 1 (*.f64 (pow.f64 h 5) (*.f64 (pow.f64 (sqrt.f64 -1) 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 g 3) (cbrt.f64 -1/2)))) (fma.f64 1/3 (*.f64 (cbrt.f64 -1/2) (+.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))) (*.f64 (+.f64 (/.f64 1/2 (*.f64 (sqrt.f64 -1) (*.f64 h a))) (*.f64 (*.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)) -1/3)) (*.f64 (*.f64 g g) (cbrt.f64 (*.f64 -1 (*.f64 (/.f64 a h) (/.f64 a h)))))))) (*.f64 (cbrt.f64 (/.f64 (sqrt.f64 -1) (/.f64 a h))) (cbrt.f64 -1/2))))
(+.f64 (*.f64 (cbrt.f64 -1/2) (+.f64 (cbrt.f64 (*.f64 h (/.f64 (sqrt.f64 -1) a))) (*.f64 1/3 (*.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 (cbrt.f64 (/.f64 (*.f64 a a) (*.f64 h (neg.f64 h)))) (+.f64 (*.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 g) (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 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 5) (*.f64 (pow.f64 h 5) (pow.f64 a 4)))) 1/18) (*.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))) (*.f64 1/27 (cbrt.f64 (/.f64 -1 (*.f64 h (*.f64 h (pow.f64 a 7))))))) (*.f64 (pow.f64 g 3) (cbrt.f64 -1/2)))))))
(+.f64 (*.f64 (cbrt.f64 -1/2) (+.f64 (cbrt.f64 (*.f64 h (/.f64 (sqrt.f64 -1) a))) (*.f64 1/3 (*.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 (cbrt.f64 (*.f64 (/.f64 a h) (neg.f64 (/.f64 a h)))) (+.f64 (*.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 g) (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 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 5) (*.f64 (pow.f64 h 5) (pow.f64 a 4)))) 1/18) (*.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))) (*.f64 1/27 (cbrt.f64 (/.f64 -1 (*.f64 h (*.f64 h (pow.f64 a 7))))))) (*.f64 (pow.f64 g 3) (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 (*.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 (/.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 (*.f64 (/.f64 (cbrt.f64 -1/2) (pow.f64 (cbrt.f64 2) 2)) (*.f64 h h)) (*.f64 (cbrt.f64 (/.f64 (/.f64 1 a) (pow.f64 g 5))) -1/6)))
(fma.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 (/.f64 g a)) (cbrt.f64 2)) (*.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 (*.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 (/.f64 1 a) (pow.f64 g 5)))) (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 (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 (cbrt.f64 (/.f64 g a)) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)) (*.f64 (*.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 11))) -1/18))))
(fma.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 (/.f64 g a)) (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)))) (/.f64 (*.f64 (cbrt.f64 (/.f64 (/.f64 1 a) (pow.f64 g 11))) (*.f64 (cbrt.f64 -1/2) -1/18)) (/.f64 (pow.f64 (cbrt.f64 2) 2) (pow.f64 h 4)))))
(+.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 (/.f64 1 a) (pow.f64 g 5)))) (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 (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 1/3 (/.f64 (*.f64 (pow.f64 h 6) (*.f64 (cbrt.f64 -1/2) (+.f64 (/.f64 1/216 (*.f64 (pow.f64 g 5) (*.f64 4 a))) (/.f64 -13/144 (*.f64 (pow.f64 g 5) a))))) (/.f64 (pow.f64 (cbrt.f64 2) 2) (cbrt.f64 (/.f64 (*.f64 a a) (*.f64 g g))))) (fma.f64 (cbrt.f64 (/.f64 g a)) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)) (*.f64 (*.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 11))) -1/18)))))
(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/18 (*.f64 (*.f64 (pow.f64 h 4) (/.f64 (cbrt.f64 -1/2) (pow.f64 (cbrt.f64 2) 2))) (cbrt.f64 (/.f64 (/.f64 1 a) (pow.f64 g 11)))) (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)))) (*.f64 (cbrt.f64 (/.f64 g a)) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2))))))

localize39.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
1.3b
(+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))
2.2b
(-.f64 (*.f64 g g) (*.f64 h h))
8.4b
(cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a)))
26.5b
(sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))
Compiler

Compiled 116 to 38 computations (67.2% saved)

series2.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
h
@-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
g
@inf
(+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))

rewrite77.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)))))

simplify84.0ms (0.7%)

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)))

localize93.0ms (0.8%)

Local error

Found 4 expressions with local error:

NewErrorProgram
2.2b
(-.f64 (*.f64 g g) (*.f64 h h))
8.9b
(cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g)))
16.2b
(cbrt.f64 (/.f64 g a))
26.5b
(sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))
Compiler

Compiled 126 to 46 computations (63.5% saved)

series11.0ms (0.1%)

Counts
1 → 0
Calls

6 calls:

TimeVariablePointExpression
8.0ms
g
@-inf
(cbrt.f64 (/.f64 g a))
1.0ms
a
@0
(cbrt.f64 (/.f64 g a))
1.0ms
a
@inf
(cbrt.f64 (/.f64 g a))
1.0ms
a
@-inf
(cbrt.f64 (/.f64 g a))
1.0ms
g
@0
(cbrt.f64 (/.f64 g a))

rewrite52.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
534×pow1_binary64
512×add-sqr-sqrt_binary64
497×add-log-exp_binary64
497×log1p-expm1-u_binary64
497×expm1-log1p-u_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
056
11036
213336
Stop Event
node limit
Counts
1 → 26
Calls
Call 1
Inputs
(cbrt.f64 (/.f64 g a))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (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 1 (cbrt.f64 (/.f64 g a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (/.f64 g a))) (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 g a))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 g a))) 2) (cbrt.f64 (cbrt.f64 (/.f64 g a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 g) (cbrt.f64 (/.f64 1 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 g) (pow.f64 (/.f64 1 a) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 g) (/.f64 1 (cbrt.f64 a)))))) (#(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 1/3) (cbrt.f64 (/.f64 g a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (/.f64 g a)) 2) 1/3) (cbrt.f64 (cbrt.f64 (/.f64 g a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (/.f64 g a)) 1/3) (pow.f64 (sqrt.f64 (/.f64 g a)) 1/3))))) (#(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 (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 (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 sqrt.f64 (pow.f64 (cbrt.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 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))))))))

simplify37.0ms (0.3%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

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

localize60.0ms (0.5%)

Local error

Found 4 expressions with local error:

NewErrorProgram
13.9b
(cbrt.f64 (*.f64 (+.f64 g (exp.f64 (*.f64 (log.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 1/2))) (/.f64 -1/2 a)))
26.5b
(sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))
27.5b
(log.f64 (-.f64 (*.f64 g g) (*.f64 h h)))
31.7b
(+.f64 g (exp.f64 (*.f64 (log.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 1/2)))
Compiler

Compiled 185 to 59 computations (68.1% saved)

series43.0ms (0.4%)

Counts
3 → 56
Calls

21 calls:

TimeVariablePointExpression
31.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 g (exp.f64 (*.f64 (log.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 1/2))) (/.f64 -1/2 a)))

rewrite111.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
788×log-prod_binary64
665×fma-def_binary64
347×fma-neg_binary64
291×expm1-udef_binary64
291×log1p-udef_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01652
135050
2473848
Stop Event
node limit
Counts
3 → 134
Calls
Call 1
Inputs
(+.f64 g (exp.f64 (*.f64 (log.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 1/2)))
(log.f64 (-.f64 (*.f64 g g) (*.f64 h h)))
(cbrt.f64 (*.f64 (+.f64 g (exp.f64 (*.f64 (log.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 1/2))) (/.f64 -1/2 a)))
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)))))) (cbrt.f64 (pow.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.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 (-.f64 (fma.f64 g g (-.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 (*.f64 g g) (-.f64 (*.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 (-.f64 (fma.f64 g g (-.f64 (*.f64 g g) (*.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 g g) (-.f64 (*.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)) (-.f64 (fma.f64 g g (-.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 (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 g g) (-.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 (neg.f64 (+.f64 (pow.f64 g 3) (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 3/2))) (neg.f64 (-.f64 (fma.f64 g g (-.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 (neg.f64 (-.f64 (*.f64 g g) (-.f64 (*.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 (-.f64 (-.f64 (*.f64 g g) (*.f64 h h)) (*.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))))) 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 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 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 (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 (cbrt.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 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))))) 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 (cbrt.f64 (pow.f64 g 4))) (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)))) (#(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)))) 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)))) 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) g)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (+.f64 g h) 1/2) (pow.f64 (-.f64 g h) 1/2) g)))))
((#(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 (-.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 (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 (log.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/4)) (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 0 (log.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)))) (*.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 (*.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))) (log.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/4)))))) (#(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 4) (pow.f64 h 4))) (log.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 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 (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 (log.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 3)))))) (#(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 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)))) (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))))))

simplify152.0ms (1.3%)

Algorithm
egg-herbie
Rules
663×associate-/l*_binary64
479×*-commutative_binary64
425×unswap-sqr_binary64
359×associate-+l+_binary64
295×associate-*l/_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02452135
17592015
226081974
367221974
Stop Event
node limit
Counts
190 → 220
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)))))))
(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 (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 (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 (*.f64 g g) (sqrt.f64 -1)) h) (fma.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)))
(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 (*.f64 g g) (sqrt.f64 -1)) 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)))
(*.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 (*.f64 h h) (/.f64 -1/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)))))
(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 -1/2 (*.f64 h (/.f64 h g)) (fma.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 g 2)))
(+.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 h (/.f64 h g)) (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)) (*.f64 g 2))))
(*.f64 1/2 (/.f64 (pow.f64 h 2) g))
(*.f64 1/2 (/.f64 (*.f64 h h) g))
(/.f64 (*.f64 1/2 (*.f64 h h)) g)
(*.f64 (*.f64 h h) (/.f64 1/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/2 (/.f64 (*.f64 h h) g) (*.f64 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) 1/8))
(fma.f64 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) 1/8 (/.f64 (*.f64 1/2 (*.f64 h h)) g))
(fma.f64 1/2 (*.f64 h (/.f64 h g)) (*.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 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) 1/8 (/.f64 (*.f64 1/2 (*.f64 h h)) g)))
(fma.f64 (/.f64 (pow.f64 h 6) (pow.f64 g 5)) 1/16 (fma.f64 1/2 (*.f64 h (/.f64 h g)) (*.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 (*.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 (/.f64 (pow.f64 h 6) (pow.f64 g 5)) 1/16 (fma.f64 1/2 (*.f64 h (/.f64 h g)) (fma.f64 1/2 (/.f64 (*.f64 (pow.f64 h 8) 5/64) (pow.f64 g 7)) (*.f64 (/.f64 1/8 (pow.f64 g 3)) (pow.f64 h 4)))))
(*.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 (*.f64 h h) (/.f64 -1/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)))))
(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 -1/2 (*.f64 h (/.f64 h g)) (fma.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 g 2)))
(+.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 h (/.f64 h g)) (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)) (*.f64 g 2))))
(*.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 (*.f64 g g) (sqrt.f64 -1)) h) (fma.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)))
(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 (*.f64 g g) (sqrt.f64 -1)) 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)))
(*.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 (*.f64 g g) (sqrt.f64 -1)) h) -1/2 (-.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)) (+.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 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3))) 1/8)))
(fma.f64 (/.f64 (/.f64 (*.f64 g g) (sqrt.f64 -1)) 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)))
(log.f64 (neg.f64 (pow.f64 h 2)))
(log.f64 (neg.f64 (*.f64 h 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 (neg.f64 (*.f64 h 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 (neg.f64 (*.f64 h 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 (neg.f64 (*.f64 h h))) (*.f64 (/.f64 g h) (/.f64 g h)))))
(*.f64 -2 (log.f64 (/.f64 1 g)))
(*.f64 -2 (neg.f64 (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))))
(fma.f64 -2 (neg.f64 (log.f64 g)) (/.f64 (neg.f64 (*.f64 h h)) (*.f64 g g)))
(fma.f64 2 (log.f64 g) (/.f64 (neg.f64 (*.f64 h h)) (*.f64 g 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)) (*.f64 -2 (neg.f64 (log.f64 g)))) (*.f64 (/.f64 h g) (/.f64 h g)))
(-.f64 (fma.f64 2 (log.f64 g) (*.f64 (/.f64 -1/2 (pow.f64 g 4)) (pow.f64 h 4))) (*.f64 (/.f64 h g) (/.f64 h g)))
(-.f64 (fma.f64 (/.f64 -1/2 (pow.f64 g 4)) (pow.f64 h 4) (*.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 (*.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 -1/3 (/.f64 (pow.f64 h 6) (pow.f64 g 6))))) (*.f64 (/.f64 h g) (/.f64 h g)))
(-.f64 (fma.f64 -1/3 (/.f64 (pow.f64 h 6) (pow.f64 g 6)) (fma.f64 2 (log.f64 g) (*.f64 (/.f64 -1/2 (pow.f64 g 4)) (pow.f64 h 4)))) (*.f64 (/.f64 h g) (/.f64 h g)))
(-.f64 (fma.f64 -1/3 (/.f64 (pow.f64 h 6) (pow.f64 g 6)) (fma.f64 (/.f64 -1/2 (pow.f64 g 4)) (pow.f64 h 4) (*.f64 2 (log.f64 g)))) (*.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))))
(-.f64 (*.f64 -2 (log.f64 (/.f64 -1 g))) (*.f64 (/.f64 h g) (/.f64 h g)))
(fma.f64 -2 (log.f64 (/.f64 -1 g)) (/.f64 (neg.f64 (*.f64 h h)) (*.f64 g 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 -2 (log.f64 (/.f64 -1 g)) (fma.f64 (/.f64 -1/2 (pow.f64 g 4)) (pow.f64 h 4) (/.f64 (neg.f64 (*.f64 h h)) (*.f64 g 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)))
(log.f64 (pow.f64 g 2))
(*.f64 -2 (neg.f64 (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))))
(fma.f64 -2 (neg.f64 (log.f64 g)) (/.f64 (neg.f64 (*.f64 h h)) (*.f64 g g)))
(fma.f64 2 (log.f64 g) (/.f64 (neg.f64 (*.f64 h h)) (*.f64 g 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)) (*.f64 -2 (neg.f64 (log.f64 g)))) (*.f64 (/.f64 h g) (/.f64 h g)))
(-.f64 (fma.f64 2 (log.f64 g) (*.f64 (/.f64 -1/2 (pow.f64 g 4)) (pow.f64 h 4))) (*.f64 (/.f64 h g) (/.f64 h g)))
(-.f64 (fma.f64 (/.f64 -1/2 (pow.f64 g 4)) (pow.f64 h 4) (*.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/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 -1/3 (/.f64 (pow.f64 h 6) (pow.f64 g 6))))) (*.f64 (/.f64 h g) (/.f64 h g)))
(-.f64 (fma.f64 -1/3 (/.f64 (pow.f64 h 6) (pow.f64 g 6)) (fma.f64 2 (log.f64 g) (*.f64 (/.f64 -1/2 (pow.f64 g 4)) (pow.f64 h 4)))) (*.f64 (/.f64 h g) (/.f64 h g)))
(-.f64 (fma.f64 -1/3 (/.f64 (pow.f64 h 6) (pow.f64 g 6)) (fma.f64 (/.f64 -1/2 (pow.f64 g 4)) (pow.f64 h 4) (*.f64 2 (log.f64 g)))) (*.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)))
(+.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 (neg.f64 (*.f64 h 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 (neg.f64 (*.f64 h 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 (neg.f64 (*.f64 h 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 (neg.f64 (*.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 (fma.f64 -1/3 (/.f64 (pow.f64 g 6) (pow.f64 h 6)) (-.f64 (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 (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 (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 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (pow.f64 a 7)) (*.f64 h h))) 1/18) (pow.f64 (/.f64 1 (*.f64 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (pow.f64 a 7)) (*.f64 h h))) 1/18)))))
(fma.f64 1/3 (*.f64 (*.f64 g (cbrt.f64 -1/2)) (*.f64 (pow.f64 (/.f64 (/.f64 -1 (pow.f64 a 7)) (*.f64 h h)) 1/18) (pow.f64 (/.f64 (/.f64 -1 (pow.f64 a 7)) (*.f64 h h)) 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 1/3 (*.f64 (pow.f64 (/.f64 -1 (*.f64 (*.f64 h h) (pow.f64 a 7))) 1/18) (*.f64 g (pow.f64 (/.f64 -1 (*.f64 (*.f64 h h) (pow.f64 a 7))) 1/18))))))
(+.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 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (pow.f64 a 7)) (*.f64 h h))) 1/18) (pow.f64 (/.f64 1 (*.f64 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (pow.f64 a 7)) (*.f64 h h))) 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 (/.f64 -1 (pow.f64 a 7)) (*.f64 h h)) 1/18) (pow.f64 (/.f64 (/.f64 -1 (pow.f64 a 7)) (*.f64 h h)) 1/18))) (*.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))) (*.f64 (*.f64 g g) (cbrt.f64 (/.f64 a (/.f64 (neg.f64 (*.f64 h h)) a))))))) (*.f64 (cbrt.f64 (*.f64 (/.f64 (sqrt.f64 -1) a) h)) (cbrt.f64 -1/2)))
(fma.f64 1/3 (*.f64 (cbrt.f64 -1/2) (+.f64 (*.f64 (pow.f64 (/.f64 -1 (*.f64 (*.f64 h h) (pow.f64 a 7))) 1/18) (*.f64 g (pow.f64 (/.f64 -1 (*.f64 (*.f64 h h) (pow.f64 a 7))) 1/18))) (*.f64 (+.f64 (/.f64 1/2 (*.f64 (sqrt.f64 -1) (*.f64 h a))) (*.f64 (pow.f64 (/.f64 1 (*.f64 h (*.f64 (sqrt.f64 -1) (pow.f64 a 17)))) 1/18) (*.f64 -1/3 (pow.f64 (/.f64 1 (*.f64 h (*.f64 (sqrt.f64 -1) (pow.f64 a 17)))) 1/18)))) (*.f64 (*.f64 g g) (cbrt.f64 (*.f64 (/.f64 a (neg.f64 (*.f64 h h))) a)))))) (*.f64 (cbrt.f64 (*.f64 h (/.f64 (sqrt.f64 -1) a))) (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 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 1/27 (cbrt.f64 (/.f64 1 (*.f64 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (pow.f64 a 7)) (*.f64 h h)))))) (*.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 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (pow.f64 a 7)) (*.f64 h h))) 1/18) (pow.f64 (/.f64 1 (*.f64 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (pow.f64 a 7)) (*.f64 h h))) 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 a (/.f64 (neg.f64 (*.f64 h h)) a))) (*.f64 (fma.f64 2/3 (*.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))) (*.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 1/27 (cbrt.f64 (/.f64 (/.f64 -1 (pow.f64 a 7)) (*.f64 h h))))) (*.f64 (pow.f64 g 3) (cbrt.f64 -1/2)))) (fma.f64 1/3 (*.f64 (cbrt.f64 -1/2) (+.f64 (*.f64 g (*.f64 (pow.f64 (/.f64 (/.f64 -1 (pow.f64 a 7)) (*.f64 h h)) 1/18) (pow.f64 (/.f64 (/.f64 -1 (pow.f64 a 7)) (*.f64 h h)) 1/18))) (*.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))) (*.f64 (*.f64 g g) (cbrt.f64 (/.f64 a (/.f64 (neg.f64 (*.f64 h h)) a))))))) (*.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 1/3 (*.f64 (pow.f64 (/.f64 -1 (*.f64 (*.f64 h h) (pow.f64 a 7))) 1/18) (*.f64 g (pow.f64 (/.f64 -1 (*.f64 (*.f64 h h) (pow.f64 a 7))) 1/18)))))) (*.f64 (cbrt.f64 (*.f64 (/.f64 a (neg.f64 (*.f64 h h))) a)) (+.f64 (*.f64 1/3 (*.f64 (+.f64 (/.f64 1/2 (*.f64 (sqrt.f64 -1) (*.f64 h a))) (*.f64 (pow.f64 (/.f64 1 (*.f64 h (*.f64 (sqrt.f64 -1) (pow.f64 a 17)))) 1/18) (*.f64 -1/3 (pow.f64 (/.f64 1 (*.f64 h (*.f64 (sqrt.f64 -1) (pow.f64 a 17)))) 1/18)))) (*.f64 (*.f64 g g) (cbrt.f64 -1/2)))) (*.f64 -1/3 (*.f64 (fma.f64 2/3 (*.f64 (+.f64 (/.f64 1/2 (*.f64 (sqrt.f64 -1) (*.f64 h a))) (*.f64 (pow.f64 (/.f64 1 (*.f64 h (*.f64 (sqrt.f64 -1) (pow.f64 a 17)))) 1/18) (*.f64 -1/3 (pow.f64 (/.f64 1 (*.f64 h (*.f64 (sqrt.f64 -1) (pow.f64 a 17)))) 1/18)))) (*.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)))))))
(*.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 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 (/.f64 g a)) (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 (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 h) (/.f64 (pow.f64 (cbrt.f64 2) 2) (cbrt.f64 -1/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 (cbrt.f64 (/.f64 (/.f64 1 a) (pow.f64 g 5))) (*.f64 -1/6 (*.f64 (*.f64 h h) (/.f64 (cbrt.f64 -1/2) (pow.f64 (cbrt.f64 2) 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)))))
(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 h) (/.f64 (pow.f64 (cbrt.f64 2) 2) (cbrt.f64 -1/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 (/.f64 (*.f64 (pow.f64 h 4) (cbrt.f64 -1/2)) (pow.f64 (cbrt.f64 2) 2)) (*.f64 (cbrt.f64 (/.f64 1 (*.f64 a (pow.f64 g 11)))) -1/18))))
(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 (cbrt.f64 (/.f64 g a)) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)) (*.f64 (cbrt.f64 (/.f64 (/.f64 1 a) (pow.f64 g 11))) (/.f64 (*.f64 -1/18 (*.f64 (pow.f64 h 4) (cbrt.f64 -1/2))) (pow.f64 (cbrt.f64 2) 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 (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 (*.f64 (cbrt.f64 -1/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))))) (pow.f64 (cbrt.f64 2) 2)) (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 h) (/.f64 (pow.f64 (cbrt.f64 2) 2) (cbrt.f64 -1/2))) (cbrt.f64 (/.f64 1 (*.f64 (pow.f64 g 5) a)))) (fma.f64 1/3 (/.f64 (*.f64 (pow.f64 h 6) (*.f64 (cbrt.f64 -1/2) (+.f64 (/.f64 1/216 (*.f64 (pow.f64 g 5) (*.f64 4 a))) (/.f64 -13/144 (*.f64 (pow.f64 g 5) a))))) (/.f64 (pow.f64 (cbrt.f64 2) 2) (cbrt.f64 (/.f64 (*.f64 a a) (*.f64 g g))))) (fma.f64 (cbrt.f64 (/.f64 g a)) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)) (*.f64 (/.f64 (*.f64 (pow.f64 h 4) (cbrt.f64 -1/2)) (pow.f64 (cbrt.f64 2) 2)) (*.f64 (cbrt.f64 (/.f64 1 (*.f64 a (pow.f64 g 11)))) -1/18)))))
(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 (*.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)))) (cbrt.f64 (/.f64 (*.f64 a a) (*.f64 g g))) (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 11))) (/.f64 (*.f64 -1/18 (*.f64 (pow.f64 h 4) (cbrt.f64 -1/2))) (pow.f64 (cbrt.f64 2) 2))))))

localize62.0ms (0.5%)

Local error

Found 4 expressions with local error:

NewErrorProgram
13.9b
(-.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 3)) g)
26.5b
(sqrt.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 3))
26.5b
(sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))
27.4b
(cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))
Compiler

Compiled 186 to 60 computations (67.7% saved)

series17.0ms (0.1%)

Counts
3 → 56
Calls

18 calls:

TimeVariablePointExpression
6.0ms
g
@-inf
(sqrt.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 3))
2.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
@0
(-.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 3)) g)
1.0ms
h
@inf
(sqrt.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 3))

rewrite90.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
863×fma-def_binary64
506×log-prod_binary64
368×fma-neg_binary64
285×pow2_binary64
192×expm1-udef_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01139
125639
2335737
Stop Event
node limit
Counts
3 → 164
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))
(-.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 3)) g)
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 (pow.f64 (cbrt.f64 (exp.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))) 2)) (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)))) (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cbrt.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 (cbrt.f64 (-.f64 (pow.f64 g 4) (pow.f64 h 4))) (cbrt.f64 (pow.f64 (hypot.f64 g h) 2)))))) (#(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) (pow.f64 (hypot.f64 g h) 2) (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 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) 2/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 2) 1/6)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 3) 1/9)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 2) 1/2)))) (#(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 (cbrt.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) 2) 3/2)))) (#(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 (pow.f64 (cbrt.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 (pow.f64 (cbrt.f64 (exp.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))) 2)) (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 (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 1 3/2) (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))) (#(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)) 2) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 3) 1/6)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 2) 3/4)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) 9/2)))) (#(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 (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 (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 (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 (pow.f64 (cbrt.f64 (exp.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g))) 2)) (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)) (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.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 (-.f64 (*.f64 g g) (pow.f64 (hypot.f64 g h) 2)) (/.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))))) (-.f64 (*.f64 g g) (pow.f64 (hypot.f64 g h) 2))))))) (#(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 (-.f64 (*.f64 g g) (pow.f64 (hypot.f64 g h) 2)) (+.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 (-.f64 (*.f64 g g) (pow.f64 (hypot.f64 g h) 2))) (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 (pow.f64 (neg.f64 g) 2) (*.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)) (pow.f64 (neg.f64 g) 2)) (-.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) 2) 1/2)))) (#(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 pow.f64 (/.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))) -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 g g) (pow.f64 (hypot.f64 g h) 2))) -1)))) (#(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 (+.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 (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 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/6) (neg.f64 g))))) (#(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) (*.f64 (neg.f64 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 (cbrt.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g)) (pow.f64 (cbrt.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)) (pow.f64 (cbrt.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)) (pow.f64 (cbrt.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 (pow.f64 (cbrt.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 (pow.f64 (cbrt.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 (pow.f64 (cbrt.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 (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 (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 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/6) (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) (neg.f64 g))))) (#(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))) (*.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 (-.f64 (*.f64 g g) (pow.f64 (hypot.f64 g h) 2)) (/.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 (-.f64 (*.f64 g g) (pow.f64 (hypot.f64 g h) 2)) (/.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 (-.f64 (*.f64 g g) (pow.f64 (hypot.f64 g h) 2)) (/.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 (pow.f64 (cbrt.f64 (neg.f64 g)) 2) (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 (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 (+.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 (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 (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 (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 1 3/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 3/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 -1 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))) (#(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))))))

simplify93.0ms (0.8%)

Algorithm
egg-herbie
Rules
944×times-frac_binary64
828×fma-def_binary64
650×associate-*r*_binary64
586×associate-*l*_binary64
450×associate-/r*_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01721597
15131562
216221534
Stop Event
node limit
Counts
220 → 241
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 (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)))))))
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 1/3 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 h 4))) (/.f64 g (/.f64 (pow.f64 (cbrt.f64 -1) 2) g))) (*.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 (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 g 4) (pow.f64 (cbrt.f64 -1) 5))) (fma.f64 1/3 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 h 4))) (/.f64 g (/.f64 (pow.f64 (cbrt.f64 -1) 2) g))) (*.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 (pow.f64 (cbrt.f64 -1) 2)) g)) (fma.f64 -1/9 (/.f64 (cbrt.f64 (/.f64 1 (pow.f64 h 10))) (/.f64 (pow.f64 (cbrt.f64 -1) 5) (pow.f64 g 4))) (*.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 (*.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 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 g (/.f64 (pow.f64 (cbrt.f64 -1) 2) g))) (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 h 16))) (*.f64 (/.f64 (pow.f64 g 6) (pow.f64 (cbrt.f64 -1) 8)) 5/81)))))
(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 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 (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 h (*.f64 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 (cbrt.f64 (/.f64 1 (pow.f64 g 4))) (*.f64 (*.f64 h h) -1/3))))
(fma.f64 (*.f64 h h) (*.f64 -1/3 (cbrt.f64 (/.f64 1 (pow.f64 g 4)))) (fma.f64 (cbrt.f64 (/.f64 1 (pow.f64 g 10))) (*.f64 (pow.f64 h 4) -1/9) (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 -1/9 (*.f64 (pow.f64 h 4) (cbrt.f64 (/.f64 1 (pow.f64 g 10)))) (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 4))) (*.f64 (*.f64 h h) -1/3)))))
(+.f64 (cbrt.f64 (*.f64 g g)) (fma.f64 (cbrt.f64 (/.f64 1 (pow.f64 g 4))) (*.f64 h (*.f64 h -1/3)) (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 (/.f64 (*.f64 (*.f64 1/2 g) g) h) (sqrt.f64 -1)))
(fma.f64 h (sqrt.f64 -1) (*.f64 (/.f64 g (sqrt.f64 -1)) (*.f64 (/.f64 g 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 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 -1/8 (neg.f64 (sqrt.f64 -1))) (/.f64 (pow.f64 g 4) (pow.f64 h 3)))))
(fma.f64 h (sqrt.f64 -1) (fma.f64 (/.f64 1/8 (sqrt.f64 -1)) (/.f64 (pow.f64 g 4) (pow.f64 h 3)) (*.f64 (/.f64 g (sqrt.f64 -1)) (*.f64 (/.f64 g 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 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 h (sqrt.f64 -1) (fma.f64 (/.f64 1/8 (sqrt.f64 -1)) (/.f64 (pow.f64 g 4) (pow.f64 h 3)) (*.f64 (/.f64 (pow.f64 g 6) (pow.f64 (sqrt.f64 -1) 5)) (/.f64 1/16 (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)
(fma.f64 -1/2 (*.f64 (/.f64 h 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 (/.f64 h 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 (/.f64 h 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))
(fma.f64 1/2 (/.f64 h (/.f64 g h)) (neg.f64 g))
(-.f64 (*.f64 (/.f64 1/2 g) (*.f64 h 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 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) 1/8) g))
(fma.f64 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) 1/8 (-.f64 (*.f64 (/.f64 1/2 g) (*.f64 h 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 (/.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)) (fma.f64 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) 1/8 (-.f64 (*.f64 (/.f64 1/2 g) (*.f64 h h)) 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 (/.f64 h 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 (/.f64 h 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 (/.f64 h 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 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 (/.f64 (*.f64 (*.f64 1/2 g) g) h) (sqrt.f64 -1)))
(fma.f64 h (sqrt.f64 -1) (*.f64 (/.f64 g (sqrt.f64 -1)) (*.f64 (/.f64 g 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 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 -1/8 (neg.f64 (sqrt.f64 -1))) (/.f64 (pow.f64 g 4) (pow.f64 h 3)))))
(fma.f64 h (sqrt.f64 -1) (fma.f64 (/.f64 1/8 (sqrt.f64 -1)) (/.f64 (pow.f64 g 4) (pow.f64 h 3)) (*.f64 (/.f64 g (sqrt.f64 -1)) (*.f64 (/.f64 g 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 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 h (sqrt.f64 -1) (fma.f64 (/.f64 1/8 (sqrt.f64 -1)) (/.f64 (pow.f64 g 4) (pow.f64 h 3)) (*.f64 (/.f64 (pow.f64 g 6) (pow.f64 (sqrt.f64 -1) 5)) (/.f64 1/16 (pow.f64 h 5))))))
(*.f64 -1 (*.f64 (sqrt.f64 -1) h))
(neg.f64 (*.f64 h (sqrt.f64 -1)))
(*.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 (*.f64 (*.f64 -1/2 g) g) h) (sqrt.f64 -1)) (*.f64 h (sqrt.f64 -1)))
(-.f64 (*.f64 (/.f64 (*.f64 -1/2 g) (sqrt.f64 -1)) (/.f64 g h)) (*.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 (sqrt.f64 -1)) (/.f64 (pow.f64 g 4) (pow.f64 h 3)) (*.f64 (/.f64 (*.f64 -1/2 g) (sqrt.f64 -1)) (/.f64 g h))) (*.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 -1/8 (sqrt.f64 -1)) (/.f64 (pow.f64 g 4) (pow.f64 h 3)) (*.f64 (/.f64 (pow.f64 g 6) (pow.f64 (sqrt.f64 -1) 5)) (/.f64 -1/16 (pow.f64 h 5))))) (*.f64 h (sqrt.f64 -1)))
(*.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))
(fma.f64 h (sqrt.f64 -1) (neg.f64 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)))
(fma.f64 1/2 (*.f64 (/.f64 g h) (/.f64 g (sqrt.f64 -1))) (fma.f64 h (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 g h) (/.f64 g (sqrt.f64 -1))) (-.f64 (fma.f64 h (sqrt.f64 -1) (*.f64 (/.f64 -1/8 (neg.f64 (sqrt.f64 -1))) (/.f64 (pow.f64 g 4) (pow.f64 h 3)))) g))
(fma.f64 (/.f64 1/8 (sqrt.f64 -1)) (/.f64 (pow.f64 g 4) (pow.f64 h 3)) (fma.f64 1/2 (*.f64 (/.f64 g h) (/.f64 g (sqrt.f64 -1))) (fma.f64 h (sqrt.f64 -1) (neg.f64 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/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 -1/2 (/.f64 h (/.f64 g h))))
(fma.f64 -1/2 (*.f64 (/.f64 h g) h) (/.f64 (pow.f64 h 4) (/.f64 (pow.f64 g 3) -1/8)))
(+.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/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5)) (/.f64 (pow.f64 h 4) (/.f64 (pow.f64 g 3) -1/8))))
(fma.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (fma.f64 -1/2 (*.f64 (/.f64 h g) h) (*.f64 (/.f64 -1/16 (pow.f64 g 5)) (pow.f64 h 6))))
(+.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/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (/.f64 -1/2 (/.f64 (pow.f64 g 7) (fma.f64 1/16 (pow.f64 h 8) (*.f64 (pow.f64 h 8) 1/64)))))))
(fma.f64 -1/2 (*.f64 (/.f64 h g) h) (fma.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (fma.f64 -1/2 (/.f64 (*.f64 (pow.f64 h 8) 5/64) (pow.f64 g 7)) (*.f64 (/.f64 -1/16 (pow.f64 g 5)) (pow.f64 h 6)))))
(*.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 1/2 (*.f64 (/.f64 h g) h) (fma.f64 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) 1/8 (*.f64 g -2)))
(+.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 1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5)) (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 1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5)) (fma.f64 1/2 (*.f64 (/.f64 h g) h) (fma.f64 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) 1/8 (*.f64 g -2))))
(*.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/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 -1/2 (/.f64 h (/.f64 g h))))
(fma.f64 -1/2 (*.f64 (/.f64 h g) h) (/.f64 (pow.f64 h 4) (/.f64 (pow.f64 g 3) -1/8)))
(+.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/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5)) (/.f64 (pow.f64 h 4) (/.f64 (pow.f64 g 3) -1/8))))
(fma.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (fma.f64 -1/2 (*.f64 (/.f64 h g) h) (*.f64 (/.f64 -1/16 (pow.f64 g 5)) (pow.f64 h 6))))
(+.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 1/16 (pow.f64 g 6)) (pow.f64 (/.f64 -1/8 (pow.f64 g 3)) 2)) (/.f64 g (pow.f64 h 8))) (/.f64 (pow.f64 h 4) (/.f64 (pow.f64 g 3) -1/8)))))
(fma.f64 -1/2 (*.f64 (/.f64 h g) h) (fma.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (fma.f64 -1/2 (*.f64 (/.f64 (pow.f64 h 8) g) (+.f64 (/.f64 1/16 (pow.f64 g 6)) (pow.f64 (/.f64 -1/8 (pow.f64 g 3)) 2))) (*.f64 (/.f64 -1/16 (pow.f64 g 5)) (pow.f64 h 6)))))
(*.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))
(fma.f64 h (sqrt.f64 -1) (neg.f64 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)))
(fma.f64 1/2 (*.f64 (/.f64 g h) (/.f64 g (sqrt.f64 -1))) (fma.f64 h (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 g h) (/.f64 g (sqrt.f64 -1))) (-.f64 (fma.f64 h (sqrt.f64 -1) (*.f64 (/.f64 -1/8 (neg.f64 (sqrt.f64 -1))) (/.f64 (pow.f64 g 4) (pow.f64 h 3)))) g))
(fma.f64 (/.f64 1/8 (sqrt.f64 -1)) (/.f64 (pow.f64 g 4) (pow.f64 h 3)) (fma.f64 1/2 (*.f64 (/.f64 g h) (/.f64 g (sqrt.f64 -1))) (fma.f64 h (sqrt.f64 -1) (neg.f64 g))))
(*.f64 -1 (*.f64 (sqrt.f64 -1) h))
(neg.f64 (*.f64 h (sqrt.f64 -1)))
(*.f64 h (neg.f64 (sqrt.f64 -1)))
(+.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 (*.f64 (/.f64 g h) (/.f64 g (sqrt.f64 -1))) -1/2 (neg.f64 (fma.f64 h (sqrt.f64 -1) g)))
(-.f64 (*.f64 (/.f64 (*.f64 -1/2 g) (sqrt.f64 -1)) (/.f64 g h)) (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 (*.f64 (/.f64 g h) (/.f64 g (sqrt.f64 -1))) -1/2 (fma.f64 -1 (fma.f64 h (sqrt.f64 -1) g) (*.f64 (/.f64 1/8 (neg.f64 (sqrt.f64 -1))) (/.f64 (pow.f64 g 4) (pow.f64 h 3)))))
(fma.f64 (*.f64 (/.f64 g h) (/.f64 g (sqrt.f64 -1))) -1/2 (-.f64 (*.f64 -1/8 (/.f64 (pow.f64 g 4) (*.f64 (sqrt.f64 -1) (pow.f64 h 3)))) (fma.f64 h (sqrt.f64 -1) g)))

eval1.6s (13.5%)

Compiler

Compiled 49772 to 25028 computations (49.7% saved)

prune314.0ms (2.7%)

Pruning

45 alts after pruning (43 fresh and 2 done)

PrunedKeptTotal
New1219371256
Fresh15621
Picked101
Done325
Total1238451283
Error
10.3b
Counts
1283 → 45
Alt Table
Click to see full alt table
StatusErrorProgram
47.9b
(+.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))))
31.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 a)) (cbrt.f64 (+.f64 g (hypot.f64 g h)))))
41.3b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (*.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/6) (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))))
33.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 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
44.6b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (-.f64 (*.f64 (/.f64 1/2 g) (*.f64 h h)) g) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
18.2b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (+.f64 g g) (/.f64 -1/2 a))))
33.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 g g (*.f64 h (neg.f64 h))))) (/.f64 -1/2 a))))
34.3b
(+.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 (+.f64 g (hypot.f64 g h)) (/.f64 -1/2 a)))) 3))
46.5b
(+.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 (neg.f64 g)) (/.f64 -1/2 a))))
53.4b
(+.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) (*.f64 (cbrt.f64 g) (pow.f64 (/.f64 1 a) 1/3)))))
40.5b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) 9/2) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
41.7b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (exp.f64 (*.f64 (log.f64 (cbrt.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))))
44.7b
(+.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))))
47.9b
(+.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))))
43.9b
(+.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) (*.f64 (cbrt.f64 g) (cbrt.f64 (/.f64 1 a))))))
48.9b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (fma.f64 (/.f64 (pow.f64 h 6) (pow.f64 g 5)) 1/16 (fma.f64 1/2 (*.f64 h (/.f64 h g)) (fma.f64 1/2 (/.f64 (*.f64 (pow.f64 h 8) 5/64) (pow.f64 g 7)) (*.f64 (/.f64 1/8 (pow.f64 g 3)) (pow.f64 h 4))))) (/.f64 -1/2 a))))
31.8b
(+.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 h)) -1/2)) (cbrt.f64 a)))
54.3b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g 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))))
47.2b
(+.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))))
42.1b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (fma.f64 (sqrt.f64 (+.f64 g h)) (sqrt.f64 (-.f64 g h)) g) (/.f64 -1/2 a))))
47.3b
(+.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) (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 g a))) 3))))
41.3b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (fma.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/6) (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) (neg.f64 g)))) (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 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))))
49.0b
(+.f64 (*.f64 (cbrt.f64 (*.f64 1/2 (/.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g) a))) 1) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
54.0b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (+.f64 g (pow.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 3/2) 1/3)) (/.f64 -1/2 a))))
48.9b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.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 -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))))
41.7b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (pow.f64 (exp.f64 (*.f64 (log.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 1/3)) 3)) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
37.9b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (fma.f64 (*.f64 g (pow.f64 (cbrt.f64 g) 2)) (cbrt.f64 g) (*.f64 h (neg.f64 h)))) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
40.0b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (pow.f64 (/.f64 (*.f64 1 g) a) 1/3) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2))))
48.7b
(+.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))))
49.1b
(+.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 1/2 (/.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g) a)))) 3) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
49.4b
(+.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))))
18.7b
(+.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)))))
34.3b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 (+.f64 g (hypot.f64 g h)) (/.f64 -1/2 a)))) 2) (cbrt.f64 (cbrt.f64 (*.f64 (+.f64 g (hypot.f64 g h)) (/.f64 -1/2 a))))))
59.4b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) (/.f64 -1/2 a))))
61.2b
(+.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))))
53.9b
(+.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))))
41.6b
(+.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))))
43.9b
(+.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) (/.f64 (cbrt.f64 g) (cbrt.f64 a)))))
46.2b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (*.f64 (*.f64 h h) (/.f64 1/2 g)) (/.f64 -1/2 a))))
18.4b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) g))) (*.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 2) (cbrt.f64 (/.f64 g a)))))
49.0b
(+.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))))
50.4b
(+.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)))
42.1b
(+.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))))
Compiler

Compiled 2886 to 1940 computations (32.8% saved)

localize29.0ms (0.2%)

Local error

Found 2 expressions with local error:

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

Compiled 66 to 34 computations (48.5% saved)

series7.0ms (0.1%)

Counts
2 → 24
Calls

12 calls:

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

rewrite69.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)))))))

simplify19.0ms (0.2%)

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)

localize29.0ms (0.2%)

Compiler

Compiled 72 to 35 computations (51.4% saved)

localize99.0ms (0.8%)

Local error

Found 4 expressions with local error:

NewErrorProgram
5.7b
(exp.f64 (*.f64 (log.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 1/2))
13.9b
(cbrt.f64 (*.f64 (+.f64 g (exp.f64 (*.f64 (log.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 1/2))) (/.f64 -1/2 a)))
27.5b
(log.f64 (-.f64 (*.f64 g g) (*.f64 h h)))
31.7b
(+.f64 g (exp.f64 (*.f64 (log.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 1/2)))
Compiler

Compiled 149 to 58 computations (61.1% saved)

series4.0ms (0%)

Counts
1 → 24
Calls

6 calls:

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

rewrite89.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
642×prod-diff_binary64
468×log-prod_binary64
411×fma-def_binary64
303×pow-prod-down_binary64
258×pow2_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01013
121412
2279311
Stop Event
node limit
Counts
1 → 73
Calls
Call 1
Inputs
(exp.f64 (*.f64 (log.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 1/2))
Outputs
((#(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 (pow.f64 (cbrt.f64 (exp.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))) 2)) (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 (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))) (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/6))))) (#(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/4) (pow.f64 (-.f64 (*.f64 g g) (*.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 (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 (exp.f64 1/2) (log.f64 (+.f64 g h))) (pow.f64 (exp.f64 1/2) (log.f64 (-.f64 g h))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (exp.f64 1/2) (*.f64 2 (log.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) (pow.f64 (exp.f64 1/2) (log.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (exp.f64 1) (*.f64 1/4 (log.f64 (-.f64 (*.f64 g g) (*.f64 h h))))) (pow.f64 (exp.f64 1) (*.f64 1/4 (log.f64 (-.f64 (*.f64 g g) (*.f64 h h))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (exp.f64 1) (log.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))) (pow.f64 (exp.f64 1) (log.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/6))))))) (#(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 /.f64 (pow.f64 (exp.f64 1/2) (exp.f64 (log1p.f64 (log.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) (exp.f64 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (exp.f64 1/2) (log.f64 (-.f64 (pow.f64 g 4) (pow.f64 h 4)))) (pow.f64 (exp.f64 1/2) (log.f64 (pow.f64 (hypot.f64 g h) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (exp.f64 1/2) (log.f64 (-.f64 (pow.f64 g 6) (pow.f64 h 6)))) (pow.f64 (exp.f64 1/2) (log.f64 (fma.f64 (*.f64 h h) (pow.f64 (hypot.f64 g h) 2) (pow.f64 g 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (exp.f64 1) (exp.f64 (log1p.f64 (log.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))) (pow.f64 (exp.f64 1) 1))))) (#(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 (exp.f64 1/2) (log.f64 (-.f64 (*.f64 g g) (*.f64 h h))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 2) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 3) 1/6)))) (#(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 pow.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 3/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)) 1/4) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.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))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.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)))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))) 2)) (*.f64 (cbrt.f64 (log.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.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))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.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)))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))) (*.f64 (sqrt.f64 (log.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 1) 1) (log.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 1/2) (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 pow.f64 (pow.f64 (exp.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)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.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)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))) 2)) 1) (cbrt.f64 (log.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))) 2)) (cbrt.f64 1/2)) (cbrt.f64 (log.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))) 2)) (cbrt.f64 (log.f64 (-.f64 (*.f64 g g) (*.f64 h h))))) (cbrt.f64 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))) 2)) (cbrt.f64 (pow.f64 (cbrt.f64 (log.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))) 2))) (cbrt.f64 (cbrt.f64 (log.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))) 2)) (pow.f64 (cbrt.f64 (cbrt.f64 (log.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))) 2)) (cbrt.f64 (cbrt.f64 (log.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))) 2)) (cbrt.f64 (sqrt.f64 (log.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))) (cbrt.f64 (sqrt.f64 (log.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))) 2)) (sqrt.f64 (cbrt.f64 (log.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))) (sqrt.f64 (cbrt.f64 (log.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 1) 1/2) (log.f64 (-.f64 (*.f64 g g) (*.f64 h h))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 1) (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))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 1) (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)))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 1) (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))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 1) (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)))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 1) (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))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 1) (*.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)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 1) (*.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)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 (sqrt.f64 (log.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))) 1) (sqrt.f64 (log.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 (sqrt.f64 (log.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))) (cbrt.f64 (log.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))) (cbrt.f64 (sqrt.f64 (log.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 (sqrt.f64 (log.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))) (sqrt.f64 1/2)) (sqrt.f64 (log.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 (sqrt.f64 (log.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))) (sqrt.f64 (log.f64 (-.f64 (*.f64 g g) (*.f64 h h))))) (sqrt.f64 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 (sqrt.f64 (log.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))) (sqrt.f64 (pow.f64 (cbrt.f64 (log.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))) 2))) (sqrt.f64 (cbrt.f64 (log.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 (sqrt.f64 (log.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))) (sqrt.f64 (sqrt.f64 (log.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))) (sqrt.f64 (sqrt.f64 (log.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) (#(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))))))))))

simplify103.0ms (0.9%)

Algorithm
egg-herbie
Rules
840×fma-neg_binary64
685×times-frac_binary64
525×associate-/r/_binary64
296×associate-/l*_binary64
293×fma-def_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
072643
1219625
2730613
34261609
46777609
Stop Event
node limit
Counts
97 → 103
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)))))))
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 1/2 g) h) (/.f64 g (sqrt.f64 -1))))
(fma.f64 (sqrt.f64 -1) h (/.f64 (/.f64 g (/.f64 (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 1/2 (*.f64 (/.f64 g (sqrt.f64 -1)) (/.f64 g h)) (fma.f64 (/.f64 1/8 (sqrt.f64 -1)) (/.f64 (pow.f64 g 4) (pow.f64 h 3)) (*.f64 (sqrt.f64 -1) h)))
(fma.f64 (sqrt.f64 -1) h (*.f64 (/.f64 g (/.f64 (sqrt.f64 -1) g)) (+.f64 (/.f64 1/2 h) (/.f64 (*.f64 (*.f64 g g) -1/8) (neg.f64 (pow.f64 h 3))))))
(+.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 (/.f64 1/8 (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))))
(fma.f64 1/2 (/.f64 g (*.f64 (/.f64 (sqrt.f64 -1) g) h)) (fma.f64 (/.f64 1/16 (pow.f64 (sqrt.f64 -1) 5)) (/.f64 (pow.f64 g 6) (pow.f64 h 5)) (fma.f64 (/.f64 1/8 (sqrt.f64 -1)) (/.f64 (pow.f64 g 4) (pow.f64 h 3)) (*.f64 (sqrt.f64 -1) h))))
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 (/.f64 h 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 (/.f64 h 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 (/.f64 h 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 g (*.f64 h h))) g)
(-.f64 (/.f64 (*.f64 h (*.f64 h 1/2)) g) g)
(-.f64 (*.f64 1/2 (*.f64 (/.f64 h 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 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) 1/8) g))
(fma.f64 1/2 (*.f64 (/.f64 h g) h) (-.f64 (*.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 (/.f64 h 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 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) 1/8) g)))
(fma.f64 1/2 (*.f64 (/.f64 h 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))
(-.f64 (fma.f64 1/2 (*.f64 (/.f64 h g) h) (*.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))
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 (/.f64 h 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 (/.f64 h 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 (/.f64 h 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 1/2 g) h) (/.f64 g (sqrt.f64 -1))))
(fma.f64 (sqrt.f64 -1) h (/.f64 (/.f64 g (/.f64 (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 1/2 (*.f64 (/.f64 g (sqrt.f64 -1)) (/.f64 g h)) (fma.f64 (/.f64 1/8 (sqrt.f64 -1)) (/.f64 (pow.f64 g 4) (pow.f64 h 3)) (*.f64 (sqrt.f64 -1) h)))
(fma.f64 (sqrt.f64 -1) h (*.f64 (/.f64 g (/.f64 (sqrt.f64 -1) g)) (+.f64 (/.f64 1/2 h) (/.f64 (*.f64 (*.f64 g g) -1/8) (neg.f64 (pow.f64 h 3))))))
(+.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 (/.f64 1/8 (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))))
(fma.f64 1/2 (/.f64 g (*.f64 (/.f64 (sqrt.f64 -1) g) h)) (fma.f64 (/.f64 1/16 (pow.f64 (sqrt.f64 -1) 5)) (/.f64 (pow.f64 g 6) (pow.f64 h 5)) (fma.f64 (/.f64 1/8 (sqrt.f64 -1)) (/.f64 (pow.f64 g 4) (pow.f64 h 3)) (*.f64 (sqrt.f64 -1) h))))
(*.f64 -1 (*.f64 (sqrt.f64 -1) h))
(neg.f64 (*.f64 (sqrt.f64 -1) h))
(*.f64 h (neg.f64 (sqrt.f64 -1)))
(*.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)))
(fma.f64 (*.f64 (/.f64 g (sqrt.f64 -1)) (/.f64 g h)) -1/2 (*.f64 h (neg.f64 (sqrt.f64 -1))))
(-.f64 (*.f64 (*.f64 (/.f64 g (sqrt.f64 -1)) g) (/.f64 -1/2 h)) (*.f64 (sqrt.f64 -1) h))
(-.f64 (*.f64 (/.f64 g (/.f64 (sqrt.f64 -1) g)) (/.f64 -1/2 h)) (*.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 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 (*.f64 (/.f64 (pow.f64 g 4) (*.f64 (neg.f64 (sqrt.f64 -1)) (pow.f64 h 3))) 1/8) (*.f64 (sqrt.f64 -1) h)))
(-.f64 (fma.f64 (*.f64 (/.f64 g (sqrt.f64 -1)) (/.f64 g h)) -1/2 (*.f64 (/.f64 (pow.f64 g 4) (pow.f64 h 3)) (/.f64 -1/8 (sqrt.f64 -1)))) (*.f64 (sqrt.f64 -1) h))
(-.f64 (*.f64 (/.f64 g (/.f64 (sqrt.f64 -1) g)) (+.f64 (/.f64 -1/2 h) (/.f64 (*.f64 (*.f64 g g) 1/8) (neg.f64 (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 (*.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 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 (*.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 6) (*.f64 (pow.f64 (sqrt.f64 -1) 5) (pow.f64 h 5))) -1/16 (*.f64 (/.f64 (pow.f64 g 4) (pow.f64 h 3)) (/.f64 -1/8 (sqrt.f64 -1))))) (*.f64 (sqrt.f64 -1) h))
(-.f64 (*.f64 (/.f64 g (/.f64 (sqrt.f64 -1) g)) (+.f64 (/.f64 -1/2 h) (/.f64 (*.f64 (*.f64 g g) 1/8) (neg.f64 (pow.f64 h 3))))) (fma.f64 (sqrt.f64 -1) h (*.f64 (/.f64 (pow.f64 g 6) (pow.f64 (sqrt.f64 -1) 5)) (/.f64 1/16 (pow.f64 h 5)))))
(fma.f64 (/.f64 g (/.f64 (sqrt.f64 -1) g)) (+.f64 (/.f64 -1/2 h) (/.f64 (*.f64 (*.f64 g g) 1/8) (neg.f64 (pow.f64 h 3)))) (-.f64 (/.f64 (/.f64 (*.f64 (pow.f64 g 6) -1/16) (pow.f64 (sqrt.f64 -1) 5)) (pow.f64 h 5)) (*.f64 (sqrt.f64 -1) h)))

localize151.0ms (1.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
13.9b
(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)))
27.4b
(cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))
29.7b
(pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/6)
31.2b
(fma.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/6) (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g)
Compiler

Compiled 162 to 52 computations (67.9% saved)

series50.0ms (0.4%)

Counts
3 → 46
Calls

21 calls:

TimeVariablePointExpression
9.0ms
g
@0
(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)))
7.0ms
h
@-inf
(pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/6)
6.0ms
h
@0
(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)))
6.0ms
h
@inf
(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)))
4.0ms
g
@0
(fma.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/6) (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g)

rewrite86.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
837×prod-diff_binary64
708×log-prod_binary64
456×fma-def_binary64
268×expm1-udef_binary64
268×log1p-udef_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01577
133151
2424049
Stop Event
node limit
Counts
3 → 79
Calls
Call 1
Inputs
(fma.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/6) (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g)
(pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/6)
(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)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 g (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)))) g)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) 1) g)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))) (cbrt.f64 (exp.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))))) (log.f64 (cbrt.f64 (exp.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))) (log.f64 (sqrt.f64 (exp.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))))))) (#(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 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 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) 3) (pow.f64 g 3)) (fma.f64 (+.f64 g h) (-.f64 g h) (-.f64 (*.f64 g g) (*.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g))))))) (#(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))))) 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 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 (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 (+.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 (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 +.f64 0 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/6))) (cbrt.f64 (exp.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/6))))) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/6)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/6)))) (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/6)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/6))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/6) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (cbrt.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/6)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/6)) (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/12) (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/12))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cbrt.f64 (cbrt.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 2)))) (sqrt.f64 (cbrt.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/6) (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 2)) 1/6) (pow.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) 1/6) (pow.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (+.f64 g h) 1/6) (pow.f64 (-.f64 g h) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/6)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/6))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/6)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/6)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 1/6 (log.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 1/6 (log.f64 (-.f64 (*.f64 g g) (*.f64 h 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 (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 (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 (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))))))

simplify132.0ms (1.1%)

Algorithm
egg-herbie
Rules
631×distribute-rgt-in_binary64
621×distribute-lft-in_binary64
435×associate-*r*_binary64
344×associate-*l*_binary64
336×fma-def_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03793013
112832705
248652522
Stop Event
node limit
Counts
125 → 158
Calls
Call 1
Inputs
(*.f64 (pow.f64 -1 1/6) (*.f64 (pow.f64 1 1/3) (*.f64 (cbrt.f64 -1) h)))
(+.f64 g (*.f64 (pow.f64 -1 1/6) (*.f64 (pow.f64 1 1/3) (*.f64 (cbrt.f64 -1) h))))
(+.f64 (*.f64 (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 -1 1/6) (*.f64 (pow.f64 1 1/3) (/.f64 (cbrt.f64 -1) h)))) (*.f64 1/3 (*.f64 (pow.f64 -1 1/6) (*.f64 (pow.f64 1 1/3) (/.f64 1 (*.f64 (pow.f64 (cbrt.f64 -1) 2) h)))))) (pow.f64 g 2)) (+.f64 g (*.f64 (pow.f64 -1 1/6) (*.f64 (pow.f64 1 1/3) (*.f64 (cbrt.f64 -1) h)))))
(+.f64 (*.f64 (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 -1 1/6) (*.f64 (pow.f64 1 1/3) (/.f64 (cbrt.f64 -1) h)))) (*.f64 1/3 (*.f64 (pow.f64 -1 1/6) (*.f64 (pow.f64 1 1/3) (/.f64 1 (*.f64 (pow.f64 (cbrt.f64 -1) 2) h)))))) (pow.f64 g 2)) (+.f64 g (+.f64 (*.f64 (pow.f64 g 4) (+.f64 (*.f64 -1/9 (*.f64 (pow.f64 -1 1/6) (*.f64 (pow.f64 1 1/3) (/.f64 1 (*.f64 (pow.f64 (cbrt.f64 -1) 5) (pow.f64 h 3)))))) (+.f64 (*.f64 -5/72 (*.f64 (pow.f64 -1 1/6) (*.f64 (pow.f64 1 1/3) (/.f64 (cbrt.f64 -1) (pow.f64 h 3))))) (*.f64 -1/18 (*.f64 (pow.f64 -1 1/6) (*.f64 (pow.f64 1 1/3) (/.f64 1 (*.f64 (pow.f64 (cbrt.f64 -1) 2) (pow.f64 h 3))))))))) (*.f64 (pow.f64 -1 1/6) (*.f64 (pow.f64 1 1/3) (*.f64 (cbrt.f64 -1) h))))))
g
g
(*.f64 2 g)
(+.f64 (*.f64 2 g) (*.f64 (-.f64 (*.f64 -1/6 (*.f64 (pow.f64 1 1/3) (/.f64 1 g))) (*.f64 1/3 (/.f64 1 g))) (pow.f64 h 2)))
(+.f64 (*.f64 (-.f64 (+.f64 (*.f64 1/18 (*.f64 (pow.f64 1 1/3) (/.f64 1 (pow.f64 g 3)))) (*.f64 -5/72 (*.f64 (pow.f64 1 1/3) (/.f64 1 (pow.f64 g 3))))) (*.f64 1/9 (/.f64 1 (pow.f64 g 3)))) (pow.f64 h 4)) (+.f64 (*.f64 2 g) (*.f64 (-.f64 (*.f64 -1/6 (*.f64 (pow.f64 1 1/3) (/.f64 1 g))) (*.f64 1/3 (/.f64 1 g))) (pow.f64 h 2))))
(+.f64 (*.f64 (-.f64 (+.f64 (*.f64 1/18 (*.f64 (pow.f64 1 1/3) (/.f64 1 (pow.f64 g 3)))) (*.f64 -5/72 (*.f64 (pow.f64 1 1/3) (/.f64 1 (pow.f64 g 3))))) (*.f64 1/9 (/.f64 1 (pow.f64 g 3)))) (pow.f64 h 4)) (+.f64 (*.f64 (-.f64 (+.f64 (*.f64 -55/1296 (*.f64 (pow.f64 1 1/3) (/.f64 1 (pow.f64 g 5)))) (+.f64 (*.f64 1/54 (*.f64 (pow.f64 1 1/3) (/.f64 1 (pow.f64 g 5)))) (*.f64 5/216 (*.f64 (pow.f64 1 1/3) (/.f64 1 (pow.f64 g 5)))))) (*.f64 5/81 (/.f64 1 (pow.f64 g 5)))) (pow.f64 h 6)) (+.f64 (*.f64 2 g) (*.f64 (-.f64 (*.f64 -1/6 (*.f64 (pow.f64 1 1/3) (/.f64 1 g))) (*.f64 1/3 (/.f64 1 g))) (pow.f64 h 2)))))
g
g
(*.f64 (pow.f64 -1 1/6) (pow.f64 (*.f64 1 h) 1/3))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 -1 1/6) (*.f64 (pow.f64 (/.f64 1 (pow.f64 h 5)) 1/3) (pow.f64 g 2)))) (*.f64 (pow.f64 -1 1/6) (pow.f64 (*.f64 1 h) 1/3)))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 -1 1/6) (*.f64 (pow.f64 (/.f64 1 (pow.f64 h 5)) 1/3) (pow.f64 g 2)))) (+.f64 (*.f64 -5/72 (*.f64 (pow.f64 -1 1/6) (*.f64 (pow.f64 (/.f64 1 (pow.f64 h 11)) 1/3) (pow.f64 g 4)))) (*.f64 (pow.f64 -1 1/6) (pow.f64 (*.f64 1 h) 1/3))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 -1 1/6) (*.f64 (pow.f64 (/.f64 1 (pow.f64 h 5)) 1/3) (pow.f64 g 2)))) (+.f64 (*.f64 -55/1296 (*.f64 (pow.f64 -1 1/6) (*.f64 (pow.f64 (/.f64 1 (pow.f64 h 17)) 1/3) (pow.f64 g 6)))) (+.f64 (*.f64 -5/72 (*.f64 (pow.f64 -1 1/6) (*.f64 (pow.f64 (/.f64 1 (pow.f64 h 11)) 1/3) (pow.f64 g 4)))) (*.f64 (pow.f64 -1 1/6) (pow.f64 (*.f64 1 h) 1/3)))))
(pow.f64 g 1/3)
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 (/.f64 1 (pow.f64 g 5)) 1/3) (pow.f64 h 2))) (pow.f64 g 1/3))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 (/.f64 1 (pow.f64 g 5)) 1/3) (pow.f64 h 2))) (+.f64 (*.f64 (pow.f64 (/.f64 1 (pow.f64 g 11)) 1/3) (+.f64 (*.f64 -1/12 (pow.f64 h 4)) (*.f64 1/72 (pow.f64 h 4)))) (pow.f64 g 1/3)))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 (/.f64 1 (pow.f64 g 5)) 1/3) (pow.f64 h 2))) (+.f64 (*.f64 (pow.f64 (/.f64 1 (pow.f64 g 17)) 1/3) (+.f64 (*.f64 1/72 (pow.f64 h 6)) (+.f64 (*.f64 -1/1296 (pow.f64 h 6)) (*.f64 -1/18 (pow.f64 h 6))))) (+.f64 (*.f64 (pow.f64 (/.f64 1 (pow.f64 g 11)) 1/3) (+.f64 (*.f64 -1/12 (pow.f64 h 4)) (*.f64 1/72 (pow.f64 h 4)))) (pow.f64 g 1/3))))
(pow.f64 (*.f64 -1 g) 1/3)
(+.f64 (pow.f64 (*.f64 -1 g) 1/3) (*.f64 -1/6 (*.f64 (pow.f64 (/.f64 -1 (pow.f64 g 5)) 1/3) (pow.f64 h 2))))
(+.f64 (*.f64 (pow.f64 (/.f64 -1 (pow.f64 g 11)) 1/3) (+.f64 (*.f64 -1/12 (pow.f64 h 4)) (*.f64 1/72 (pow.f64 h 4)))) (+.f64 (pow.f64 (*.f64 -1 g) 1/3) (*.f64 -1/6 (*.f64 (pow.f64 (/.f64 -1 (pow.f64 g 5)) 1/3) (pow.f64 h 2)))))
(+.f64 (*.f64 (pow.f64 (/.f64 -1 (pow.f64 g 11)) 1/3) (+.f64 (*.f64 -1/12 (pow.f64 h 4)) (*.f64 1/72 (pow.f64 h 4)))) (+.f64 (*.f64 (pow.f64 (/.f64 -1 (pow.f64 g 17)) 1/3) (+.f64 (*.f64 1/72 (pow.f64 h 6)) (+.f64 (*.f64 -1/1296 (pow.f64 h 6)) (*.f64 -1/18 (pow.f64 h 6))))) (+.f64 (pow.f64 (*.f64 -1 g) 1/3) (*.f64 -1/6 (*.f64 (pow.f64 (/.f64 -1 (pow.f64 g 5)) 1/3) (pow.f64 h 2))))))
(*.f64 (sqrt.f64 1) (pow.f64 g 1/3))
(+.f64 (*.f64 (sqrt.f64 1) (pow.f64 g 1/3)) (*.f64 -1/6 (*.f64 (pow.f64 (/.f64 1 (pow.f64 g 5)) 1/3) (pow.f64 h 2))))
(+.f64 (*.f64 (sqrt.f64 1) (pow.f64 g 1/3)) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 (/.f64 1 (pow.f64 g 5)) 1/3) (pow.f64 h 2))) (*.f64 -5/72 (*.f64 (pow.f64 (/.f64 1 (pow.f64 g 11)) 1/3) (pow.f64 h 4)))))
(+.f64 (*.f64 (sqrt.f64 1) (pow.f64 g 1/3)) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 (/.f64 1 (pow.f64 g 5)) 1/3) (pow.f64 h 2))) (+.f64 (*.f64 -55/1296 (*.f64 (pow.f64 (/.f64 1 (pow.f64 g 17)) 1/3) (pow.f64 h 6))) (*.f64 -5/72 (*.f64 (pow.f64 (/.f64 1 (pow.f64 g 11)) 1/3) (pow.f64 h 4))))))
(exp.f64 (*.f64 1/6 (+.f64 (*.f64 -2 (log.f64 (/.f64 1 h))) (log.f64 -1))))
(+.f64 (*.f64 -1/6 (/.f64 (*.f64 (pow.f64 g 2) (exp.f64 (*.f64 1/6 (+.f64 (*.f64 -2 (log.f64 (/.f64 1 h))) (log.f64 -1))))) (pow.f64 h 2))) (exp.f64 (*.f64 1/6 (+.f64 (*.f64 -2 (log.f64 (/.f64 1 h))) (log.f64 -1)))))
(+.f64 (/.f64 (*.f64 (+.f64 (*.f64 1/72 (pow.f64 g 4)) (*.f64 -1/12 (pow.f64 g 4))) (exp.f64 (*.f64 1/6 (+.f64 (*.f64 -2 (log.f64 (/.f64 1 h))) (log.f64 -1))))) (pow.f64 h 4)) (+.f64 (*.f64 -1/6 (/.f64 (*.f64 (pow.f64 g 2) (exp.f64 (*.f64 1/6 (+.f64 (*.f64 -2 (log.f64 (/.f64 1 h))) (log.f64 -1))))) (pow.f64 h 2))) (exp.f64 (*.f64 1/6 (+.f64 (*.f64 -2 (log.f64 (/.f64 1 h))) (log.f64 -1))))))
(+.f64 (/.f64 (*.f64 (+.f64 (*.f64 1/72 (pow.f64 g 4)) (*.f64 -1/12 (pow.f64 g 4))) (exp.f64 (*.f64 1/6 (+.f64 (*.f64 -2 (log.f64 (/.f64 1 h))) (log.f64 -1))))) (pow.f64 h 4)) (+.f64 (*.f64 -1/6 (/.f64 (*.f64 (pow.f64 g 2) (exp.f64 (*.f64 1/6 (+.f64 (*.f64 -2 (log.f64 (/.f64 1 h))) (log.f64 -1))))) (pow.f64 h 2))) (+.f64 (/.f64 (*.f64 (exp.f64 (*.f64 1/6 (+.f64 (*.f64 -2 (log.f64 (/.f64 1 h))) (log.f64 -1)))) (+.f64 (*.f64 -1/1296 (pow.f64 g 6)) (+.f64 (*.f64 1/72 (pow.f64 g 6)) (*.f64 -1/18 (pow.f64 g 6))))) (pow.f64 h 6)) (exp.f64 (*.f64 1/6 (+.f64 (*.f64 -2 (log.f64 (/.f64 1 h))) (log.f64 -1)))))))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1) (*.f64 -2 (log.f64 (/.f64 -1 h))))))
(+.f64 (*.f64 -1/6 (/.f64 (*.f64 (pow.f64 g 2) (exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1) (*.f64 -2 (log.f64 (/.f64 -1 h))))))) (pow.f64 h 2))) (exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1) (*.f64 -2 (log.f64 (/.f64 -1 h)))))))
(+.f64 (*.f64 -1/6 (/.f64 (*.f64 (pow.f64 g 2) (exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1) (*.f64 -2 (log.f64 (/.f64 -1 h))))))) (pow.f64 h 2))) (+.f64 (/.f64 (*.f64 (+.f64 (*.f64 1/72 (pow.f64 g 4)) (*.f64 -1/12 (pow.f64 g 4))) (exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1) (*.f64 -2 (log.f64 (/.f64 -1 h))))))) (pow.f64 h 4)) (exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1) (*.f64 -2 (log.f64 (/.f64 -1 h))))))))
(+.f64 (*.f64 -1/6 (/.f64 (*.f64 (pow.f64 g 2) (exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1) (*.f64 -2 (log.f64 (/.f64 -1 h))))))) (pow.f64 h 2))) (+.f64 (/.f64 (*.f64 (+.f64 (*.f64 -1/1296 (pow.f64 g 6)) (+.f64 (*.f64 1/72 (pow.f64 g 6)) (*.f64 -1/18 (pow.f64 g 6)))) (exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1) (*.f64 -2 (log.f64 (/.f64 -1 h))))))) (pow.f64 h 6)) (+.f64 (/.f64 (*.f64 (+.f64 (*.f64 1/72 (pow.f64 g 4)) (*.f64 -1/12 (pow.f64 g 4))) (exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1) (*.f64 -2 (log.f64 (/.f64 -1 h))))))) (pow.f64 h 4)) (exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1) (*.f64 -2 (log.f64 (/.f64 -1 h)))))))))
(*.f64 (pow.f64 -1 1/18) (*.f64 (pow.f64 (pow.f64 1 4) 1/9) (*.f64 (cbrt.f64 -1/2) (pow.f64 (/.f64 (*.f64 (cbrt.f64 -1) h) a) 1/3))))
(+.f64 (*.f64 1/3 (*.f64 (pow.f64 -1 1/27) (*.f64 (*.f64 (cbrt.f64 -1/2) g) (pow.f64 (/.f64 1 (*.f64 (pow.f64 a 7) (*.f64 (pow.f64 (cbrt.f64 -1) 2) (pow.f64 h 2)))) 1/9)))) (*.f64 (pow.f64 -1 1/18) (*.f64 (pow.f64 (pow.f64 1 4) 1/9) (*.f64 (cbrt.f64 -1/2) (pow.f64 (/.f64 (*.f64 (cbrt.f64 -1) h) a) 1/3)))))
(+.f64 (*.f64 1/3 (*.f64 (pow.f64 -1 1/27) (*.f64 (*.f64 (cbrt.f64 -1/2) g) (pow.f64 (/.f64 1 (*.f64 (pow.f64 a 7) (*.f64 (pow.f64 (cbrt.f64 -1) 2) (pow.f64 h 2)))) 1/9)))) (+.f64 (*.f64 (pow.f64 -1 1/18) (*.f64 (pow.f64 (pow.f64 1 4) 1/9) (*.f64 (cbrt.f64 -1/2) (pow.f64 (/.f64 (*.f64 (cbrt.f64 -1) h) a) 1/3)))) (*.f64 1/3 (*.f64 (pow.f64 -1 1/9) (*.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (-.f64 (+.f64 (*.f64 1/3 (*.f64 (pow.f64 -1 1/6) (*.f64 (pow.f64 1 1/3) (/.f64 1 (*.f64 a (*.f64 (pow.f64 (cbrt.f64 -1) 2) h)))))) (*.f64 -1/6 (*.f64 (pow.f64 -1 1/6) (*.f64 (pow.f64 1 1/3) (/.f64 (cbrt.f64 -1) (*.f64 a h)))))) (*.f64 1/3 (*.f64 (pow.f64 -1 1/54) (pow.f64 (/.f64 1 (*.f64 (pow.f64 a 17) (*.f64 (cbrt.f64 -1) h))) 1/9)))) (pow.f64 g 2))) (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (*.f64 (pow.f64 (cbrt.f64 -1) 2) (pow.f64 h 2))) 1/3))))))
(+.f64 (*.f64 1/3 (*.f64 (pow.f64 -1 1/27) (*.f64 (*.f64 (cbrt.f64 -1/2) g) (pow.f64 (/.f64 1 (*.f64 (pow.f64 a 7) (*.f64 (pow.f64 (cbrt.f64 -1) 2) (pow.f64 h 2)))) 1/9)))) (+.f64 (*.f64 (pow.f64 -1 1/18) (*.f64 (pow.f64 (pow.f64 1 4) 1/9) (*.f64 (cbrt.f64 -1/2) (pow.f64 (/.f64 (*.f64 (cbrt.f64 -1) h) a) 1/3)))) (+.f64 (*.f64 1/3 (*.f64 (pow.f64 -1 1/9) (*.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (-.f64 (+.f64 (*.f64 1/3 (*.f64 (pow.f64 -1 1/6) (*.f64 (pow.f64 1 1/3) (/.f64 1 (*.f64 a (*.f64 (pow.f64 (cbrt.f64 -1) 2) h)))))) (*.f64 -1/6 (*.f64 (pow.f64 -1 1/6) (*.f64 (pow.f64 1 1/3) (/.f64 (cbrt.f64 -1) (*.f64 a h)))))) (*.f64 1/3 (*.f64 (pow.f64 -1 1/54) (pow.f64 (/.f64 1 (*.f64 (pow.f64 a 17) (*.f64 (cbrt.f64 -1) h))) 1/9)))) (pow.f64 g 2))) (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (*.f64 (pow.f64 (cbrt.f64 -1) 2) (pow.f64 h 2))) 1/3)))) (*.f64 -1/3 (*.f64 (pow.f64 -1 1/9) (*.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (pow.f64 g 3) (+.f64 (*.f64 2/3 (*.f64 (pow.f64 -1 1/54) (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 a 4) (*.f64 (pow.f64 (cbrt.f64 -1) 5) (pow.f64 h 5)))) 1/9) (-.f64 (+.f64 (*.f64 1/3 (*.f64 (pow.f64 -1 1/6) (*.f64 (pow.f64 1 1/3) (/.f64 1 (*.f64 a (*.f64 (pow.f64 (cbrt.f64 -1) 2) h)))))) (*.f64 -1/6 (*.f64 (pow.f64 -1 1/6) (*.f64 (pow.f64 1 1/3) (/.f64 (cbrt.f64 -1) (*.f64 a h)))))) (*.f64 1/3 (*.f64 (pow.f64 -1 1/54) (pow.f64 (/.f64 1 (*.f64 (pow.f64 a 17) (*.f64 (cbrt.f64 -1) h))) 1/9))))))) (*.f64 1/27 (*.f64 (pow.f64 -1 1/9) (pow.f64 (/.f64 1 (*.f64 (pow.f64 a 7) (*.f64 (pow.f64 (cbrt.f64 -1) 2) (pow.f64 h 2)))) 1/3)))))) (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (*.f64 (pow.f64 (cbrt.f64 -1) 2) (pow.f64 h 2))) 1/3)))))))
(*.f64 (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)) (pow.f64 (/.f64 (*.f64 1 g) a) 1/3))
(+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (pow.f64 g 2)) 1/3) (/.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (-.f64 (*.f64 -1/6 (*.f64 (pow.f64 1 1/3) (/.f64 1 (*.f64 a g)))) (*.f64 1/3 (/.f64 1 (*.f64 a g)))) (pow.f64 h 2))) (pow.f64 (cbrt.f64 2) 2)))) (*.f64 (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)) (pow.f64 (/.f64 (*.f64 1 g) a) 1/3)))
(+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (pow.f64 g 2)) 1/3) (/.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (-.f64 (*.f64 -1/6 (*.f64 (pow.f64 1 1/3) (/.f64 1 (*.f64 a g)))) (*.f64 1/3 (/.f64 1 (*.f64 a g)))) (pow.f64 h 2))) (pow.f64 (cbrt.f64 2) 2)))) (+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (pow.f64 g 2)) 1/3) (/.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (-.f64 (+.f64 (*.f64 1/18 (*.f64 (pow.f64 1 1/3) (/.f64 1 (*.f64 a (pow.f64 g 3))))) (*.f64 -5/72 (*.f64 (pow.f64 1 1/3) (/.f64 1 (*.f64 a (pow.f64 g 3)))))) (+.f64 (*.f64 1/6 (/.f64 (*.f64 a (pow.f64 (-.f64 (*.f64 -1/6 (*.f64 (pow.f64 1 1/3) (/.f64 1 (*.f64 a g)))) (*.f64 1/3 (/.f64 1 (*.f64 a g)))) 2)) g)) (*.f64 1/9 (/.f64 1 (*.f64 a (pow.f64 g 3)))))) (pow.f64 h 4))) (pow.f64 (cbrt.f64 2) 2)))) (*.f64 (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)) (pow.f64 (/.f64 (*.f64 1 g) a) 1/3))))
(+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (pow.f64 g 2)) 1/3) (/.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (-.f64 (*.f64 -1/6 (*.f64 (pow.f64 1 1/3) (/.f64 1 (*.f64 a g)))) (*.f64 1/3 (/.f64 1 (*.f64 a g)))) (pow.f64 h 2))) (pow.f64 (cbrt.f64 2) 2)))) (+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (pow.f64 g 2)) 1/3) (/.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (-.f64 (+.f64 (*.f64 -55/1296 (*.f64 (pow.f64 1 1/3) (/.f64 1 (*.f64 a (pow.f64 g 5))))) (+.f64 (*.f64 5/216 (*.f64 (pow.f64 1 1/3) (/.f64 1 (*.f64 a (pow.f64 g 5))))) (*.f64 1/54 (*.f64 (pow.f64 1 1/3) (/.f64 1 (*.f64 a (pow.f64 g 5))))))) (+.f64 (*.f64 5/81 (/.f64 1 (*.f64 a (pow.f64 g 5)))) (+.f64 (*.f64 1/3 (/.f64 (*.f64 (-.f64 (+.f64 (*.f64 1/18 (*.f64 (pow.f64 1 1/3) (/.f64 1 (*.f64 a (pow.f64 g 3))))) (*.f64 -5/72 (*.f64 (pow.f64 1 1/3) (/.f64 1 (*.f64 a (pow.f64 g 3)))))) (+.f64 (*.f64 1/6 (/.f64 (*.f64 a (pow.f64 (-.f64 (*.f64 -1/6 (*.f64 (pow.f64 1 1/3) (/.f64 1 (*.f64 a g)))) (*.f64 1/3 (/.f64 1 (*.f64 a g)))) 2)) g)) (*.f64 1/9 (/.f64 1 (*.f64 a (pow.f64 g 3)))))) (*.f64 a (-.f64 (*.f64 -1/6 (*.f64 (pow.f64 1 1/3) (/.f64 1 (*.f64 a g)))) (*.f64 1/3 (/.f64 1 (*.f64 a g)))))) g)) (*.f64 1/27 (/.f64 (*.f64 (pow.f64 a 2) (pow.f64 (-.f64 (*.f64 -1/6 (*.f64 (pow.f64 1 1/3) (/.f64 1 (*.f64 a g)))) (*.f64 1/3 (/.f64 1 (*.f64 a g)))) 3)) (*.f64 (pow.f64 (cbrt.f64 2) 6) (pow.f64 g 2))))))) (pow.f64 h 6))) (pow.f64 (cbrt.f64 2) 2)))) (+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (pow.f64 g 2)) 1/3) (/.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (-.f64 (+.f64 (*.f64 1/18 (*.f64 (pow.f64 1 1/3) (/.f64 1 (*.f64 a (pow.f64 g 3))))) (*.f64 -5/72 (*.f64 (pow.f64 1 1/3) (/.f64 1 (*.f64 a (pow.f64 g 3)))))) (+.f64 (*.f64 1/6 (/.f64 (*.f64 a (pow.f64 (-.f64 (*.f64 -1/6 (*.f64 (pow.f64 1 1/3) (/.f64 1 (*.f64 a g)))) (*.f64 1/3 (/.f64 1 (*.f64 a g)))) 2)) g)) (*.f64 1/9 (/.f64 1 (*.f64 a (pow.f64 g 3)))))) (pow.f64 h 4))) (pow.f64 (cbrt.f64 2) 2)))) (*.f64 (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)) (pow.f64 (/.f64 (*.f64 1 g) a) 1/3)))))
(*.f64 (pow.f64 (/.f64 (*.f64 1 g) a) 1/3) (cbrt.f64 -1/2))
(*.f64 (pow.f64 (/.f64 (*.f64 1 g) a) 1/3) (cbrt.f64 -1/2))
Outputs
(*.f64 (pow.f64 -1 1/6) (*.f64 (pow.f64 1 1/3) (*.f64 (cbrt.f64 -1) h)))
(*.f64 (*.f64 (pow.f64 -1 1/6) 1) (*.f64 (cbrt.f64 -1) h))
(*.f64 (pow.f64 -1 1/6) (*.f64 (cbrt.f64 -1) h))
(*.f64 (cbrt.f64 -1) (*.f64 h (pow.f64 -1 1/6)))
(+.f64 g (*.f64 (pow.f64 -1 1/6) (*.f64 (pow.f64 1 1/3) (*.f64 (cbrt.f64 -1) h))))
(+.f64 (*.f64 (*.f64 (pow.f64 -1 1/6) 1) (*.f64 (cbrt.f64 -1) h)) g)
(fma.f64 (pow.f64 -1 1/6) (*.f64 (cbrt.f64 -1) h) g)
(+.f64 (*.f64 (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 -1 1/6) (*.f64 (pow.f64 1 1/3) (/.f64 (cbrt.f64 -1) h)))) (*.f64 1/3 (*.f64 (pow.f64 -1 1/6) (*.f64 (pow.f64 1 1/3) (/.f64 1 (*.f64 (pow.f64 (cbrt.f64 -1) 2) h)))))) (pow.f64 g 2)) (+.f64 g (*.f64 (pow.f64 -1 1/6) (*.f64 (pow.f64 1 1/3) (*.f64 (cbrt.f64 -1) h)))))
(fma.f64 (fma.f64 -1/6 (*.f64 (*.f64 (pow.f64 -1 1/6) 1) (/.f64 (cbrt.f64 -1) h)) (*.f64 1/3 (*.f64 (pow.f64 -1 1/6) (/.f64 1 (*.f64 h (pow.f64 (cbrt.f64 -1) 2)))))) (*.f64 g g) (+.f64 (*.f64 (*.f64 (pow.f64 -1 1/6) 1) (*.f64 (cbrt.f64 -1) h)) g))
(fma.f64 (fma.f64 1/3 (/.f64 (pow.f64 -1 1/6) (*.f64 h (pow.f64 (cbrt.f64 -1) 2))) (*.f64 (pow.f64 -1 1/6) (*.f64 (/.f64 (cbrt.f64 -1) h) -1/6))) (*.f64 g g) (fma.f64 (pow.f64 -1 1/6) (*.f64 (cbrt.f64 -1) h) g))
(fma.f64 (*.f64 (pow.f64 -1 1/6) (+.f64 (*.f64 -1/6 (/.f64 (cbrt.f64 -1) h)) (*.f64 1/3 (/.f64 1 (*.f64 h (pow.f64 (cbrt.f64 -1) 2)))))) (*.f64 g g) (fma.f64 (pow.f64 -1 1/6) (*.f64 (cbrt.f64 -1) h) g))
(+.f64 (*.f64 (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 -1 1/6) (*.f64 (pow.f64 1 1/3) (/.f64 (cbrt.f64 -1) h)))) (*.f64 1/3 (*.f64 (pow.f64 -1 1/6) (*.f64 (pow.f64 1 1/3) (/.f64 1 (*.f64 (pow.f64 (cbrt.f64 -1) 2) h)))))) (pow.f64 g 2)) (+.f64 g (+.f64 (*.f64 (pow.f64 g 4) (+.f64 (*.f64 -1/9 (*.f64 (pow.f64 -1 1/6) (*.f64 (pow.f64 1 1/3) (/.f64 1 (*.f64 (pow.f64 (cbrt.f64 -1) 5) (pow.f64 h 3)))))) (+.f64 (*.f64 -5/72 (*.f64 (pow.f64 -1 1/6) (*.f64 (pow.f64 1 1/3) (/.f64 (cbrt.f64 -1) (pow.f64 h 3))))) (*.f64 -1/18 (*.f64 (pow.f64 -1 1/6) (*.f64 (pow.f64 1 1/3) (/.f64 1 (*.f64 (pow.f64 (cbrt.f64 -1) 2) (pow.f64 h 3))))))))) (*.f64 (pow.f64 -1 1/6) (*.f64 (pow.f64 1 1/3) (*.f64 (cbrt.f64 -1) h))))))
(fma.f64 (fma.f64 -1/6 (*.f64 (*.f64 (pow.f64 -1 1/6) 1) (/.f64 (cbrt.f64 -1) h)) (*.f64 1/3 (*.f64 (pow.f64 -1 1/6) (/.f64 1 (*.f64 h (pow.f64 (cbrt.f64 -1) 2)))))) (*.f64 g g) (+.f64 g (fma.f64 (pow.f64 g 4) (fma.f64 -1/9 (*.f64 (pow.f64 -1 1/6) (/.f64 (/.f64 1 (pow.f64 (cbrt.f64 -1) 5)) (pow.f64 h 3))) (fma.f64 -5/72 (*.f64 (*.f64 (pow.f64 -1 1/6) 1) (/.f64 (cbrt.f64 -1) (pow.f64 h 3))) (*.f64 -1/18 (*.f64 (pow.f64 -1 1/6) (/.f64 1 (*.f64 (pow.f64 (cbrt.f64 -1) 2) (pow.f64 h 3))))))) (*.f64 (*.f64 (pow.f64 -1 1/6) 1) (*.f64 (cbrt.f64 -1) h)))))
(+.f64 (fma.f64 (pow.f64 g 4) (fma.f64 -1/9 (/.f64 (pow.f64 -1 1/6) (*.f64 (pow.f64 (cbrt.f64 -1) 5) (pow.f64 h 3))) (fma.f64 -1/18 (/.f64 (pow.f64 -1 1/6) (*.f64 (pow.f64 (cbrt.f64 -1) 2) (pow.f64 h 3))) (*.f64 (/.f64 (cbrt.f64 -1) (pow.f64 h 3)) (*.f64 (pow.f64 -1 1/6) -5/72)))) (*.f64 (pow.f64 -1 1/6) (*.f64 (cbrt.f64 -1) h))) (fma.f64 (fma.f64 1/3 (/.f64 (pow.f64 -1 1/6) (*.f64 h (pow.f64 (cbrt.f64 -1) 2))) (*.f64 (pow.f64 -1 1/6) (*.f64 (/.f64 (cbrt.f64 -1) h) -1/6))) (*.f64 g g) g))
(+.f64 (fma.f64 (*.f64 (pow.f64 -1 1/6) (+.f64 (*.f64 -1/6 (/.f64 (cbrt.f64 -1) h)) (*.f64 1/3 (/.f64 1 (*.f64 h (pow.f64 (cbrt.f64 -1) 2)))))) (*.f64 g g) (fma.f64 (pow.f64 -1 1/6) (*.f64 (cbrt.f64 -1) h) g)) (*.f64 (pow.f64 g 4) (fma.f64 -1/9 (/.f64 (pow.f64 -1 1/6) (*.f64 (pow.f64 (cbrt.f64 -1) 5) (pow.f64 h 3))) (*.f64 (pow.f64 -1 1/6) (+.f64 (*.f64 -5/72 (/.f64 (cbrt.f64 -1) (pow.f64 h 3))) (*.f64 -1/18 (/.f64 1 (*.f64 (pow.f64 (cbrt.f64 -1) 2) (pow.f64 h 3)))))))))
g
g
(*.f64 2 g)
(*.f64 g 2)
(+.f64 (*.f64 2 g) (*.f64 (-.f64 (*.f64 -1/6 (*.f64 (pow.f64 1 1/3) (/.f64 1 g))) (*.f64 1/3 (/.f64 1 g))) (pow.f64 h 2)))
(fma.f64 2 g (*.f64 (-.f64 (*.f64 -1/6 (/.f64 1 g)) (/.f64 1/3 g)) (*.f64 h h)))
(fma.f64 g 2 (*.f64 (*.f64 (/.f64 1 g) -1/2) (*.f64 h h)))
(+.f64 (*.f64 (-.f64 (+.f64 (*.f64 1/18 (*.f64 (pow.f64 1 1/3) (/.f64 1 (pow.f64 g 3)))) (*.f64 -5/72 (*.f64 (pow.f64 1 1/3) (/.f64 1 (pow.f64 g 3))))) (*.f64 1/9 (/.f64 1 (pow.f64 g 3)))) (pow.f64 h 4)) (+.f64 (*.f64 2 g) (*.f64 (-.f64 (*.f64 -1/6 (*.f64 (pow.f64 1 1/3) (/.f64 1 g))) (*.f64 1/3 (/.f64 1 g))) (pow.f64 h 2))))
(fma.f64 (-.f64 (*.f64 (/.f64 1 (pow.f64 g 3)) -1/72) (/.f64 1/9 (pow.f64 g 3))) (pow.f64 h 4) (fma.f64 2 g (*.f64 (-.f64 (*.f64 -1/6 (/.f64 1 g)) (/.f64 1/3 g)) (*.f64 h h))))
(fma.f64 (*.f64 (/.f64 1 (pow.f64 g 3)) -1/8) (pow.f64 h 4) (fma.f64 g 2 (*.f64 (*.f64 (/.f64 1 g) -1/2) (*.f64 h h))))
(+.f64 (*.f64 (-.f64 (+.f64 (*.f64 1/18 (*.f64 (pow.f64 1 1/3) (/.f64 1 (pow.f64 g 3)))) (*.f64 -5/72 (*.f64 (pow.f64 1 1/3) (/.f64 1 (pow.f64 g 3))))) (*.f64 1/9 (/.f64 1 (pow.f64 g 3)))) (pow.f64 h 4)) (+.f64 (*.f64 (-.f64 (+.f64 (*.f64 -55/1296 (*.f64 (pow.f64 1 1/3) (/.f64 1 (pow.f64 g 5)))) (+.f64 (*.f64 1/54 (*.f64 (pow.f64 1 1/3) (/.f64 1 (pow.f64 g 5)))) (*.f64 5/216 (*.f64 (pow.f64 1 1/3) (/.f64 1 (pow.f64 g 5)))))) (*.f64 5/81 (/.f64 1 (pow.f64 g 5)))) (pow.f64 h 6)) (+.f64 (*.f64 2 g) (*.f64 (-.f64 (*.f64 -1/6 (*.f64 (pow.f64 1 1/3) (/.f64 1 g))) (*.f64 1/3 (/.f64 1 g))) (pow.f64 h 2)))))
(fma.f64 (-.f64 (*.f64 (/.f64 1 (pow.f64 g 3)) -1/72) (/.f64 1/9 (pow.f64 g 3))) (pow.f64 h 4) (fma.f64 (-.f64 (fma.f64 -55/1296 (/.f64 1 (pow.f64 g 5)) (*.f64 (/.f64 1 (pow.f64 g 5)) 1/24)) (/.f64 5/81 (pow.f64 g 5))) (pow.f64 h 6) (fma.f64 2 g (*.f64 (-.f64 (*.f64 -1/6 (/.f64 1 g)) (/.f64 1/3 g)) (*.f64 h h)))))
(fma.f64 (*.f64 (/.f64 1 (pow.f64 g 3)) -1/8) (pow.f64 h 4) (fma.f64 (+.f64 (/.f64 -55/1296 (pow.f64 g 5)) (*.f64 (/.f64 1 (pow.f64 g 5)) -13/648)) (pow.f64 h 6) (fma.f64 g 2 (*.f64 (*.f64 (/.f64 1 g) -1/2) (*.f64 h h)))))
(fma.f64 (*.f64 (/.f64 1 (pow.f64 g 3)) -1/8) (pow.f64 h 4) (fma.f64 (*.f64 (/.f64 1 (pow.f64 g 5)) -1/16) (pow.f64 h 6) (fma.f64 g 2 (*.f64 (*.f64 (/.f64 1 g) -1/2) (*.f64 h h)))))
g
g
(*.f64 (pow.f64 -1 1/6) (pow.f64 (*.f64 1 h) 1/3))
(*.f64 (pow.f64 -1 1/6) (cbrt.f64 h))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 -1 1/6) (*.f64 (pow.f64 (/.f64 1 (pow.f64 h 5)) 1/3) (pow.f64 g 2)))) (*.f64 (pow.f64 -1 1/6) (pow.f64 (*.f64 1 h) 1/3)))
(fma.f64 -1/6 (*.f64 (*.f64 (pow.f64 -1 1/6) (cbrt.f64 (/.f64 1 (pow.f64 h 5)))) (*.f64 g g)) (*.f64 (pow.f64 -1 1/6) (cbrt.f64 h)))
(fma.f64 -1/6 (*.f64 (*.f64 g g) (*.f64 (pow.f64 -1 1/6) (cbrt.f64 (/.f64 1 (pow.f64 h 5))))) (*.f64 (pow.f64 -1 1/6) (cbrt.f64 h)))
(*.f64 (pow.f64 -1 1/6) (+.f64 (cbrt.f64 h) (*.f64 -1/6 (*.f64 g (*.f64 g (cbrt.f64 (/.f64 1 (pow.f64 h 5))))))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 -1 1/6) (*.f64 (pow.f64 (/.f64 1 (pow.f64 h 5)) 1/3) (pow.f64 g 2)))) (+.f64 (*.f64 -5/72 (*.f64 (pow.f64 -1 1/6) (*.f64 (pow.f64 (/.f64 1 (pow.f64 h 11)) 1/3) (pow.f64 g 4)))) (*.f64 (pow.f64 -1 1/6) (pow.f64 (*.f64 1 h) 1/3))))
(fma.f64 -1/6 (*.f64 (*.f64 (pow.f64 -1 1/6) (cbrt.f64 (/.f64 1 (pow.f64 h 5)))) (*.f64 g g)) (fma.f64 -5/72 (*.f64 (pow.f64 -1 1/6) (*.f64 (pow.f64 g 4) (cbrt.f64 (/.f64 1 (pow.f64 h 11))))) (*.f64 (pow.f64 -1 1/6) (cbrt.f64 h))))
(fma.f64 -1/6 (*.f64 (*.f64 g g) (*.f64 (pow.f64 -1 1/6) (cbrt.f64 (/.f64 1 (pow.f64 h 5))))) (fma.f64 -5/72 (*.f64 (pow.f64 g 4) (*.f64 (pow.f64 -1 1/6) (cbrt.f64 (/.f64 1 (pow.f64 h 11))))) (*.f64 (pow.f64 -1 1/6) (cbrt.f64 h))))
(fma.f64 -1/6 (*.f64 (pow.f64 -1 1/6) (*.f64 g (*.f64 g (cbrt.f64 (/.f64 1 (pow.f64 h 5)))))) (*.f64 (pow.f64 -1 1/6) (+.f64 (cbrt.f64 h) (*.f64 -5/72 (*.f64 (pow.f64 g 4) (cbrt.f64 (/.f64 1 (pow.f64 h 11))))))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 -1 1/6) (*.f64 (pow.f64 (/.f64 1 (pow.f64 h 5)) 1/3) (pow.f64 g 2)))) (+.f64 (*.f64 -55/1296 (*.f64 (pow.f64 -1 1/6) (*.f64 (pow.f64 (/.f64 1 (pow.f64 h 17)) 1/3) (pow.f64 g 6)))) (+.f64 (*.f64 -5/72 (*.f64 (pow.f64 -1 1/6) (*.f64 (pow.f64 (/.f64 1 (pow.f64 h 11)) 1/3) (pow.f64 g 4)))) (*.f64 (pow.f64 -1 1/6) (pow.f64 (*.f64 1 h) 1/3)))))
(fma.f64 -1/6 (*.f64 (*.f64 (pow.f64 -1 1/6) (cbrt.f64 (/.f64 1 (pow.f64 h 5)))) (*.f64 g g)) (fma.f64 -55/1296 (*.f64 (pow.f64 -1 1/6) (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 h 17))) (pow.f64 g 6))) (fma.f64 -5/72 (*.f64 (pow.f64 -1 1/6) (*.f64 (pow.f64 g 4) (cbrt.f64 (/.f64 1 (pow.f64 h 11))))) (*.f64 (pow.f64 -1 1/6) (cbrt.f64 h)))))
(fma.f64 -1/6 (*.f64 (*.f64 g g) (*.f64 (pow.f64 -1 1/6) (cbrt.f64 (/.f64 1 (pow.f64 h 5))))) (fma.f64 -55/1296 (*.f64 (pow.f64 -1 1/6) (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 h 17))) (pow.f64 g 6))) (fma.f64 -5/72 (*.f64 (pow.f64 g 4) (*.f64 (pow.f64 -1 1/6) (cbrt.f64 (/.f64 1 (pow.f64 h 11))))) (*.f64 (pow.f64 -1 1/6) (cbrt.f64 h)))))
(+.f64 (*.f64 (pow.f64 -1 1/6) (+.f64 (cbrt.f64 h) (*.f64 -5/72 (*.f64 (pow.f64 g 4) (cbrt.f64 (/.f64 1 (pow.f64 h 11))))))) (*.f64 (pow.f64 -1 1/6) (+.f64 (*.f64 -1/6 (*.f64 g (*.f64 g (cbrt.f64 (/.f64 1 (pow.f64 h 5)))))) (*.f64 -55/1296 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 h 17))) (pow.f64 g 6))))))
(pow.f64 g 1/3)
(cbrt.f64 g)
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 (/.f64 1 (pow.f64 g 5)) 1/3) (pow.f64 h 2))) (pow.f64 g 1/3))
(fma.f64 -1/6 (*.f64 (*.f64 h h) (cbrt.f64 (/.f64 1 (pow.f64 g 5)))) (cbrt.f64 g))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 (/.f64 1 (pow.f64 g 5)) 1/3) (pow.f64 h 2))) (+.f64 (*.f64 (pow.f64 (/.f64 1 (pow.f64 g 11)) 1/3) (+.f64 (*.f64 -1/12 (pow.f64 h 4)) (*.f64 1/72 (pow.f64 h 4)))) (pow.f64 g 1/3)))
(fma.f64 -1/6 (*.f64 (*.f64 h h) (cbrt.f64 (/.f64 1 (pow.f64 g 5)))) (fma.f64 (cbrt.f64 (/.f64 1 (pow.f64 g 11))) (*.f64 (pow.f64 h 4) -5/72) (cbrt.f64 g)))
(fma.f64 -1/6 (*.f64 (*.f64 h h) (cbrt.f64 (/.f64 1 (pow.f64 g 5)))) (fma.f64 (cbrt.f64 (/.f64 1 (pow.f64 g 11))) (*.f64 -5/72 (pow.f64 h 4)) (cbrt.f64 g)))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 (/.f64 1 (pow.f64 g 5)) 1/3) (pow.f64 h 2))) (+.f64 (*.f64 (pow.f64 (/.f64 1 (pow.f64 g 17)) 1/3) (+.f64 (*.f64 1/72 (pow.f64 h 6)) (+.f64 (*.f64 -1/1296 (pow.f64 h 6)) (*.f64 -1/18 (pow.f64 h 6))))) (+.f64 (*.f64 (pow.f64 (/.f64 1 (pow.f64 g 11)) 1/3) (+.f64 (*.f64 -1/12 (pow.f64 h 4)) (*.f64 1/72 (pow.f64 h 4)))) (pow.f64 g 1/3))))
(fma.f64 -1/6 (*.f64 (*.f64 h h) (cbrt.f64 (/.f64 1 (pow.f64 g 5)))) (fma.f64 (cbrt.f64 (/.f64 1 (pow.f64 g 17))) (fma.f64 1/72 (pow.f64 h 6) (*.f64 (pow.f64 h 6) -73/1296)) (fma.f64 (cbrt.f64 (/.f64 1 (pow.f64 g 11))) (*.f64 (pow.f64 h 4) -5/72) (cbrt.f64 g))))
(fma.f64 -1/6 (*.f64 (*.f64 h h) (cbrt.f64 (/.f64 1 (pow.f64 g 5)))) (fma.f64 (cbrt.f64 (/.f64 1 (pow.f64 g 17))) (*.f64 (pow.f64 h 6) -55/1296) (fma.f64 (cbrt.f64 (/.f64 1 (pow.f64 g 11))) (*.f64 -5/72 (pow.f64 h 4)) (cbrt.f64 g))))
(pow.f64 (*.f64 -1 g) 1/3)
(cbrt.f64 (neg.f64 g))
(+.f64 (pow.f64 (*.f64 -1 g) 1/3) (*.f64 -1/6 (*.f64 (pow.f64 (/.f64 -1 (pow.f64 g 5)) 1/3) (pow.f64 h 2))))
(+.f64 (cbrt.f64 (neg.f64 g)) (*.f64 -1/6 (*.f64 (*.f64 h h) (cbrt.f64 (/.f64 -1 (pow.f64 g 5))))))
(fma.f64 -1/6 (*.f64 h (*.f64 h (cbrt.f64 (/.f64 -1 (pow.f64 g 5))))) (cbrt.f64 (neg.f64 g)))
(fma.f64 -1/6 (*.f64 (*.f64 h h) (cbrt.f64 (/.f64 -1 (pow.f64 g 5)))) (cbrt.f64 (neg.f64 g)))
(+.f64 (*.f64 (pow.f64 (/.f64 -1 (pow.f64 g 11)) 1/3) (+.f64 (*.f64 -1/12 (pow.f64 h 4)) (*.f64 1/72 (pow.f64 h 4)))) (+.f64 (pow.f64 (*.f64 -1 g) 1/3) (*.f64 -1/6 (*.f64 (pow.f64 (/.f64 -1 (pow.f64 g 5)) 1/3) (pow.f64 h 2)))))
(fma.f64 (cbrt.f64 (/.f64 -1 (pow.f64 g 11))) (*.f64 (pow.f64 h 4) -5/72) (+.f64 (cbrt.f64 (neg.f64 g)) (*.f64 -1/6 (*.f64 (*.f64 h h) (cbrt.f64 (/.f64 -1 (pow.f64 g 5)))))))
(fma.f64 (*.f64 -5/72 (pow.f64 h 4)) (cbrt.f64 (/.f64 -1 (pow.f64 g 11))) (fma.f64 -1/6 (*.f64 h (*.f64 h (cbrt.f64 (/.f64 -1 (pow.f64 g 5))))) (cbrt.f64 (neg.f64 g))))
(fma.f64 (*.f64 -5/72 (pow.f64 h 4)) (cbrt.f64 (/.f64 -1 (pow.f64 g 11))) (fma.f64 -1/6 (*.f64 (*.f64 h h) (cbrt.f64 (/.f64 -1 (pow.f64 g 5)))) (cbrt.f64 (neg.f64 g))))
(+.f64 (*.f64 (pow.f64 (/.f64 -1 (pow.f64 g 11)) 1/3) (+.f64 (*.f64 -1/12 (pow.f64 h 4)) (*.f64 1/72 (pow.f64 h 4)))) (+.f64 (*.f64 (pow.f64 (/.f64 -1 (pow.f64 g 17)) 1/3) (+.f64 (*.f64 1/72 (pow.f64 h 6)) (+.f64 (*.f64 -1/1296 (pow.f64 h 6)) (*.f64 -1/18 (pow.f64 h 6))))) (+.f64 (pow.f64 (*.f64 -1 g) 1/3) (*.f64 -1/6 (*.f64 (pow.f64 (/.f64 -1 (pow.f64 g 5)) 1/3) (pow.f64 h 2))))))
(fma.f64 (cbrt.f64 (/.f64 -1 (pow.f64 g 11))) (*.f64 (pow.f64 h 4) -5/72) (fma.f64 (cbrt.f64 (/.f64 -1 (pow.f64 g 17))) (fma.f64 1/72 (pow.f64 h 6) (*.f64 (pow.f64 h 6) -73/1296)) (+.f64 (cbrt.f64 (neg.f64 g)) (*.f64 -1/6 (*.f64 (*.f64 h h) (cbrt.f64 (/.f64 -1 (pow.f64 g 5))))))))
(fma.f64 (*.f64 -5/72 (pow.f64 h 4)) (cbrt.f64 (/.f64 -1 (pow.f64 g 11))) (fma.f64 (*.f64 (pow.f64 h 6) -55/1296) (cbrt.f64 (/.f64 -1 (pow.f64 g 17))) (fma.f64 -1/6 (*.f64 h (*.f64 h (cbrt.f64 (/.f64 -1 (pow.f64 g 5))))) (cbrt.f64 (neg.f64 g)))))
(fma.f64 (*.f64 -5/72 (pow.f64 h 4)) (cbrt.f64 (/.f64 -1 (pow.f64 g 11))) (fma.f64 (*.f64 (pow.f64 h 6) -55/1296) (cbrt.f64 (/.f64 -1 (pow.f64 g 17))) (fma.f64 -1/6 (*.f64 (*.f64 h h) (cbrt.f64 (/.f64 -1 (pow.f64 g 5)))) (cbrt.f64 (neg.f64 g)))))
(*.f64 (sqrt.f64 1) (pow.f64 g 1/3))
(cbrt.f64 g)
(+.f64 (*.f64 (sqrt.f64 1) (pow.f64 g 1/3)) (*.f64 -1/6 (*.f64 (pow.f64 (/.f64 1 (pow.f64 g 5)) 1/3) (pow.f64 h 2))))
(fma.f64 -1/6 (*.f64 (*.f64 h h) (cbrt.f64 (/.f64 1 (pow.f64 g 5)))) (cbrt.f64 g))
(+.f64 (*.f64 (sqrt.f64 1) (pow.f64 g 1/3)) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 (/.f64 1 (pow.f64 g 5)) 1/3) (pow.f64 h 2))) (*.f64 -5/72 (*.f64 (pow.f64 (/.f64 1 (pow.f64 g 11)) 1/3) (pow.f64 h 4)))))
(fma.f64 -1/6 (*.f64 (*.f64 h h) (cbrt.f64 (/.f64 1 (pow.f64 g 5)))) (fma.f64 (cbrt.f64 (/.f64 1 (pow.f64 g 11))) (*.f64 (pow.f64 h 4) -5/72) (cbrt.f64 g)))
(fma.f64 -1/6 (*.f64 (*.f64 h h) (cbrt.f64 (/.f64 1 (pow.f64 g 5)))) (fma.f64 (cbrt.f64 (/.f64 1 (pow.f64 g 11))) (*.f64 -5/72 (pow.f64 h 4)) (cbrt.f64 g)))
(+.f64 (*.f64 (sqrt.f64 1) (pow.f64 g 1/3)) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 (/.f64 1 (pow.f64 g 5)) 1/3) (pow.f64 h 2))) (+.f64 (*.f64 -55/1296 (*.f64 (pow.f64 (/.f64 1 (pow.f64 g 17)) 1/3) (pow.f64 h 6))) (*.f64 -5/72 (*.f64 (pow.f64 (/.f64 1 (pow.f64 g 11)) 1/3) (pow.f64 h 4))))))
(fma.f64 -1/6 (*.f64 (*.f64 h h) (cbrt.f64 (/.f64 1 (pow.f64 g 5)))) (fma.f64 (cbrt.f64 (/.f64 1 (pow.f64 g 17))) (fma.f64 1/72 (pow.f64 h 6) (*.f64 (pow.f64 h 6) -73/1296)) (fma.f64 (cbrt.f64 (/.f64 1 (pow.f64 g 11))) (*.f64 (pow.f64 h 4) -5/72) (cbrt.f64 g))))
(fma.f64 -1/6 (*.f64 (*.f64 h h) (cbrt.f64 (/.f64 1 (pow.f64 g 5)))) (fma.f64 (cbrt.f64 (/.f64 1 (pow.f64 g 17))) (*.f64 (pow.f64 h 6) -55/1296) (fma.f64 (cbrt.f64 (/.f64 1 (pow.f64 g 11))) (*.f64 -5/72 (pow.f64 h 4)) (cbrt.f64 g))))
(exp.f64 (*.f64 1/6 (+.f64 (*.f64 -2 (log.f64 (/.f64 1 h))) (log.f64 -1))))
(pow.f64 (exp.f64 1/6) (fma.f64 -2 (neg.f64 (log.f64 h)) (log.f64 -1)))
(*.f64 (pow.f64 -1 1/6) (exp.f64 (*.f64 (neg.f64 (log.f64 h)) -1/3)))
(+.f64 (*.f64 -1/6 (/.f64 (*.f64 (pow.f64 g 2) (exp.f64 (*.f64 1/6 (+.f64 (*.f64 -2 (log.f64 (/.f64 1 h))) (log.f64 -1))))) (pow.f64 h 2))) (exp.f64 (*.f64 1/6 (+.f64 (*.f64 -2 (log.f64 (/.f64 1 h))) (log.f64 -1)))))
(fma.f64 -1/6 (/.f64 (*.f64 g g) (/.f64 (*.f64 h h) (pow.f64 (exp.f64 1/6) (fma.f64 -2 (neg.f64 (log.f64 h)) (log.f64 -1))))) (pow.f64 (exp.f64 1/6) (fma.f64 -2 (neg.f64 (log.f64 h)) (log.f64 -1))))
(fma.f64 -1/6 (/.f64 (pow.f64 (exp.f64 1/6) (fma.f64 -2 (neg.f64 (log.f64 h)) (log.f64 -1))) (/.f64 (*.f64 h h) (*.f64 g g))) (pow.f64 (exp.f64 1/6) (fma.f64 -2 (neg.f64 (log.f64 h)) (log.f64 -1))))
(fma.f64 -1/6 (/.f64 (*.f64 (pow.f64 -1 1/6) (exp.f64 (*.f64 (neg.f64 (log.f64 h)) -1/3))) (/.f64 (*.f64 h h) (*.f64 g g))) (*.f64 (pow.f64 -1 1/6) (exp.f64 (*.f64 (neg.f64 (log.f64 h)) -1/3))))
(+.f64 (/.f64 (*.f64 (+.f64 (*.f64 1/72 (pow.f64 g 4)) (*.f64 -1/12 (pow.f64 g 4))) (exp.f64 (*.f64 1/6 (+.f64 (*.f64 -2 (log.f64 (/.f64 1 h))) (log.f64 -1))))) (pow.f64 h 4)) (+.f64 (*.f64 -1/6 (/.f64 (*.f64 (pow.f64 g 2) (exp.f64 (*.f64 1/6 (+.f64 (*.f64 -2 (log.f64 (/.f64 1 h))) (log.f64 -1))))) (pow.f64 h 2))) (exp.f64 (*.f64 1/6 (+.f64 (*.f64 -2 (log.f64 (/.f64 1 h))) (log.f64 -1))))))
(+.f64 (fma.f64 -1/6 (/.f64 (*.f64 g g) (/.f64 (*.f64 h h) (pow.f64 (exp.f64 1/6) (fma.f64 -2 (neg.f64 (log.f64 h)) (log.f64 -1))))) (pow.f64 (exp.f64 1/6) (fma.f64 -2 (neg.f64 (log.f64 h)) (log.f64 -1)))) (/.f64 (*.f64 (pow.f64 g 4) -5/72) (/.f64 (pow.f64 h 4) (pow.f64 (exp.f64 1/6) (fma.f64 -2 (neg.f64 (log.f64 h)) (log.f64 -1))))))
(+.f64 (fma.f64 -1/6 (/.f64 (pow.f64 (exp.f64 1/6) (fma.f64 -2 (neg.f64 (log.f64 h)) (log.f64 -1))) (/.f64 (*.f64 h h) (*.f64 g g))) (pow.f64 (exp.f64 1/6) (fma.f64 -2 (neg.f64 (log.f64 h)) (log.f64 -1)))) (*.f64 (/.f64 (*.f64 (pow.f64 g 4) -5/72) (pow.f64 h 4)) (pow.f64 (exp.f64 1/6) (fma.f64 -2 (neg.f64 (log.f64 h)) (log.f64 -1)))))
(+.f64 (*.f64 -1/6 (/.f64 (*.f64 (pow.f64 -1 1/6) (exp.f64 (*.f64 (neg.f64 (log.f64 h)) -1/3))) (/.f64 (*.f64 h h) (*.f64 g g)))) (*.f64 (+.f64 (/.f64 (*.f64 (pow.f64 g 4) -5/72) (pow.f64 h 4)) 1) (*.f64 (pow.f64 -1 1/6) (exp.f64 (*.f64 (neg.f64 (log.f64 h)) -1/3)))))
(+.f64 (/.f64 (*.f64 (+.f64 (*.f64 1/72 (pow.f64 g 4)) (*.f64 -1/12 (pow.f64 g 4))) (exp.f64 (*.f64 1/6 (+.f64 (*.f64 -2 (log.f64 (/.f64 1 h))) (log.f64 -1))))) (pow.f64 h 4)) (+.f64 (*.f64 -1/6 (/.f64 (*.f64 (pow.f64 g 2) (exp.f64 (*.f64 1/6 (+.f64 (*.f64 -2 (log.f64 (/.f64 1 h))) (log.f64 -1))))) (pow.f64 h 2))) (+.f64 (/.f64 (*.f64 (exp.f64 (*.f64 1/6 (+.f64 (*.f64 -2 (log.f64 (/.f64 1 h))) (log.f64 -1)))) (+.f64 (*.f64 -1/1296 (pow.f64 g 6)) (+.f64 (*.f64 1/72 (pow.f64 g 6)) (*.f64 -1/18 (pow.f64 g 6))))) (pow.f64 h 6)) (exp.f64 (*.f64 1/6 (+.f64 (*.f64 -2 (log.f64 (/.f64 1 h))) (log.f64 -1)))))))
(+.f64 (/.f64 (*.f64 (pow.f64 g 4) -5/72) (/.f64 (pow.f64 h 4) (pow.f64 (exp.f64 1/6) (fma.f64 -2 (neg.f64 (log.f64 h)) (log.f64 -1))))) (fma.f64 -1/6 (/.f64 (*.f64 g g) (/.f64 (*.f64 h h) (pow.f64 (exp.f64 1/6) (fma.f64 -2 (neg.f64 (log.f64 h)) (log.f64 -1))))) (+.f64 (pow.f64 (exp.f64 1/6) (fma.f64 -2 (neg.f64 (log.f64 h)) (log.f64 -1))) (/.f64 (pow.f64 (exp.f64 1/6) (fma.f64 -2 (neg.f64 (log.f64 h)) (log.f64 -1))) (/.f64 (pow.f64 h 6) (fma.f64 -1/1296 (pow.f64 g 6) (*.f64 (pow.f64 g 6) -1/24)))))))
(+.f64 (*.f64 (/.f64 (*.f64 (pow.f64 g 4) -5/72) (pow.f64 h 4)) (pow.f64 (exp.f64 1/6) (fma.f64 -2 (neg.f64 (log.f64 h)) (log.f64 -1)))) (+.f64 (pow.f64 (exp.f64 1/6) (fma.f64 -2 (neg.f64 (log.f64 h)) (log.f64 -1))) (fma.f64 -1/6 (/.f64 (pow.f64 (exp.f64 1/6) (fma.f64 -2 (neg.f64 (log.f64 h)) (log.f64 -1))) (/.f64 (*.f64 h h) (*.f64 g g))) (/.f64 (pow.f64 (exp.f64 1/6) (fma.f64 -2 (neg.f64 (log.f64 h)) (log.f64 -1))) (/.f64 (pow.f64 h 6) (*.f64 (pow.f64 g 6) -55/1296))))))
(+.f64 (fma.f64 -1/6 (/.f64 (*.f64 (pow.f64 -1 1/6) (exp.f64 (*.f64 (neg.f64 (log.f64 h)) -1/3))) (/.f64 (*.f64 h h) (*.f64 g g))) (*.f64 (/.f64 (*.f64 (pow.f64 -1 1/6) (exp.f64 (*.f64 (neg.f64 (log.f64 h)) -1/3))) (pow.f64 h 6)) (*.f64 (pow.f64 g 6) -55/1296))) (*.f64 (+.f64 (/.f64 (*.f64 (pow.f64 g 4) -5/72) (pow.f64 h 4)) 1) (*.f64 (pow.f64 -1 1/6) (exp.f64 (*.f64 (neg.f64 (log.f64 h)) -1/3)))))
(exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1) (*.f64 -2 (log.f64 (/.f64 -1 h))))))
(pow.f64 (exp.f64 1/6) (+.f64 (log.f64 -1) (*.f64 -2 (log.f64 (/.f64 -1 h)))))
(pow.f64 (exp.f64 1/6) (fma.f64 -2 (log.f64 (/.f64 -1 h)) (log.f64 -1)))
(*.f64 (pow.f64 -1 1/6) (pow.f64 (exp.f64 -1/3) (log.f64 (/.f64 -1 h))))
(+.f64 (*.f64 -1/6 (/.f64 (*.f64 (pow.f64 g 2) (exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1) (*.f64 -2 (log.f64 (/.f64 -1 h))))))) (pow.f64 h 2))) (exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1) (*.f64 -2 (log.f64 (/.f64 -1 h)))))))
(fma.f64 -1/6 (/.f64 (*.f64 g g) (/.f64 (*.f64 h h) (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 -1) (*.f64 -2 (log.f64 (/.f64 -1 h))))))) (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 -1) (*.f64 -2 (log.f64 (/.f64 -1 h))))))
(fma.f64 -1/6 (*.f64 (/.f64 (*.f64 g g) (*.f64 h h)) (pow.f64 (exp.f64 1/6) (fma.f64 -2 (log.f64 (/.f64 -1 h)) (log.f64 -1)))) (pow.f64 (exp.f64 1/6) (fma.f64 -2 (log.f64 (/.f64 -1 h)) (log.f64 -1))))
(fma.f64 -1/6 (*.f64 (/.f64 (*.f64 g g) h) (/.f64 (*.f64 (pow.f64 -1 1/6) (pow.f64 (exp.f64 -1/3) (log.f64 (/.f64 -1 h)))) h)) (*.f64 (pow.f64 -1 1/6) (pow.f64 (exp.f64 -1/3) (log.f64 (/.f64 -1 h)))))
(+.f64 (*.f64 -1/6 (/.f64 (*.f64 (pow.f64 g 2) (exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1) (*.f64 -2 (log.f64 (/.f64 -1 h))))))) (pow.f64 h 2))) (+.f64 (/.f64 (*.f64 (+.f64 (*.f64 1/72 (pow.f64 g 4)) (*.f64 -1/12 (pow.f64 g 4))) (exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1) (*.f64 -2 (log.f64 (/.f64 -1 h))))))) (pow.f64 h 4)) (exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1) (*.f64 -2 (log.f64 (/.f64 -1 h))))))))
(fma.f64 -1/6 (/.f64 (*.f64 g g) (/.f64 (*.f64 h h) (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 -1) (*.f64 -2 (log.f64 (/.f64 -1 h))))))) (+.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 -1) (*.f64 -2 (log.f64 (/.f64 -1 h))))) (/.f64 (*.f64 (pow.f64 g 4) -5/72) (/.f64 (pow.f64 h 4) (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 -1) (*.f64 -2 (log.f64 (/.f64 -1 h)))))))))
(+.f64 (fma.f64 -1/6 (*.f64 (/.f64 (*.f64 g g) (*.f64 h h)) (pow.f64 (exp.f64 1/6) (fma.f64 -2 (log.f64 (/.f64 -1 h)) (log.f64 -1)))) (pow.f64 (exp.f64 1/6) (fma.f64 -2 (log.f64 (/.f64 -1 h)) (log.f64 -1)))) (*.f64 (/.f64 (*.f64 (pow.f64 g 4) -5/72) (pow.f64 h 4)) (pow.f64 (exp.f64 1/6) (fma.f64 -2 (log.f64 (/.f64 -1 h)) (log.f64 -1)))))
(fma.f64 -1/6 (*.f64 (/.f64 (*.f64 g g) h) (/.f64 (*.f64 (pow.f64 -1 1/6) (pow.f64 (exp.f64 -1/3) (log.f64 (/.f64 -1 h)))) h)) (*.f64 (+.f64 (/.f64 (*.f64 (pow.f64 g 4) -5/72) (pow.f64 h 4)) 1) (*.f64 (pow.f64 -1 1/6) (pow.f64 (exp.f64 -1/3) (log.f64 (/.f64 -1 h))))))
(+.f64 (*.f64 -1/6 (/.f64 (*.f64 (pow.f64 g 2) (exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1) (*.f64 -2 (log.f64 (/.f64 -1 h))))))) (pow.f64 h 2))) (+.f64 (/.f64 (*.f64 (+.f64 (*.f64 -1/1296 (pow.f64 g 6)) (+.f64 (*.f64 1/72 (pow.f64 g 6)) (*.f64 -1/18 (pow.f64 g 6)))) (exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1) (*.f64 -2 (log.f64 (/.f64 -1 h))))))) (pow.f64 h 6)) (+.f64 (/.f64 (*.f64 (+.f64 (*.f64 1/72 (pow.f64 g 4)) (*.f64 -1/12 (pow.f64 g 4))) (exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1) (*.f64 -2 (log.f64 (/.f64 -1 h))))))) (pow.f64 h 4)) (exp.f64 (*.f64 1/6 (+.f64 (log.f64 -1) (*.f64 -2 (log.f64 (/.f64 -1 h)))))))))
(fma.f64 -1/6 (/.f64 (*.f64 g g) (/.f64 (*.f64 h h) (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 -1) (*.f64 -2 (log.f64 (/.f64 -1 h))))))) (+.f64 (+.f64 (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 -1) (*.f64 -2 (log.f64 (/.f64 -1 h))))) (/.f64 (*.f64 (pow.f64 g 4) -5/72) (/.f64 (pow.f64 h 4) (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 -1) (*.f64 -2 (log.f64 (/.f64 -1 h)))))))) (/.f64 (fma.f64 -1/1296 (pow.f64 g 6) (*.f64 (pow.f64 g 6) -1/24)) (/.f64 (pow.f64 h 6) (pow.f64 (exp.f64 1/6) (+.f64 (log.f64 -1) (*.f64 -2 (log.f64 (/.f64 -1 h)))))))))
(+.f64 (+.f64 (pow.f64 (exp.f64 1/6) (fma.f64 -2 (log.f64 (/.f64 -1 h)) (log.f64 -1))) (*.f64 (/.f64 (*.f64 (pow.f64 g 4) -5/72) (pow.f64 h 4)) (pow.f64 (exp.f64 1/6) (fma.f64 -2 (log.f64 (/.f64 -1 h)) (log.f64 -1))))) (fma.f64 -1/6 (*.f64 (/.f64 (*.f64 g g) (*.f64 h h)) (pow.f64 (exp.f64 1/6) (fma.f64 -2 (log.f64 (/.f64 -1 h)) (log.f64 -1)))) (*.f64 (/.f64 (*.f64 (pow.f64 g 6) -55/1296) (pow.f64 h 6)) (pow.f64 (exp.f64 1/6) (fma.f64 -2 (log.f64 (/.f64 -1 h)) (log.f64 -1))))))
(fma.f64 -1/6 (*.f64 (/.f64 (*.f64 g g) h) (/.f64 (*.f64 (pow.f64 -1 1/6) (pow.f64 (exp.f64 -1/3) (log.f64 (/.f64 -1 h)))) h)) (+.f64 (*.f64 (pow.f64 -1 1/6) (pow.f64 (exp.f64 -1/3) (log.f64 (/.f64 -1 h)))) (*.f64 (*.f64 (pow.f64 -1 1/6) (pow.f64 (exp.f64 -1/3) (log.f64 (/.f64 -1 h)))) (+.f64 (/.f64 (*.f64 (pow.f64 g 4) -5/72) (pow.f64 h 4)) (/.f64 (*.f64 (pow.f64 g 6) -55/1296) (pow.f64 h 6))))))
(*.f64 (pow.f64 -1 1/18) (*.f64 (pow.f64 (pow.f64 1 4) 1/9) (*.f64 (cbrt.f64 -1/2) (pow.f64 (/.f64 (*.f64 (cbrt.f64 -1) h) a) 1/3))))
(*.f64 (pow.f64 -1 1/18) (*.f64 (*.f64 1 (cbrt.f64 -1/2)) (cbrt.f64 (/.f64 (cbrt.f64 -1) (/.f64 a h)))))
(*.f64 (pow.f64 -1 1/18) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 (/.f64 (cbrt.f64 -1) (/.f64 a h)))))
(+.f64 (*.f64 1/3 (*.f64 (pow.f64 -1 1/27) (*.f64 (*.f64 (cbrt.f64 -1/2) g) (pow.f64 (/.f64 1 (*.f64 (pow.f64 a 7) (*.f64 (pow.f64 (cbrt.f64 -1) 2) (pow.f64 h 2)))) 1/9)))) (*.f64 (pow.f64 -1 1/18) (*.f64 (pow.f64 (pow.f64 1 4) 1/9) (*.f64 (cbrt.f64 -1/2) (pow.f64 (/.f64 (*.f64 (cbrt.f64 -1) h) a) 1/3)))))
(fma.f64 1/3 (*.f64 (*.f64 (*.f64 (pow.f64 -1 1/54) (pow.f64 -1 1/54)) (*.f64 g (cbrt.f64 -1/2))) (*.f64 (pow.f64 (/.f64 (/.f64 1 (pow.f64 a 7)) (*.f64 (pow.f64 (cbrt.f64 -1) 2) (*.f64 h h))) 1/18) (pow.f64 (/.f64 (/.f64 1 (pow.f64 a 7)) (*.f64 (pow.f64 (cbrt.f64 -1) 2) (*.f64 h h))) 1/18))) (*.f64 (pow.f64 -1 1/18) (*.f64 (*.f64 1 (cbrt.f64 -1/2)) (cbrt.f64 (/.f64 (cbrt.f64 -1) (/.f64 a h))))))
(fma.f64 1/3 (*.f64 (*.f64 (pow.f64 (/.f64 (/.f64 1 (pow.f64 a 7)) (*.f64 (pow.f64 (cbrt.f64 -1) 2) (*.f64 h h))) 1/18) (pow.f64 (/.f64 (/.f64 1 (pow.f64 a 7)) (*.f64 (pow.f64 (cbrt.f64 -1) 2) (*.f64 h h))) 1/18)) (*.f64 (*.f64 (pow.f64 -1 1/54) (pow.f64 -1 1/54)) (*.f64 g (cbrt.f64 -1/2)))) (*.f64 (pow.f64 -1 1/18) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 (/.f64 (cbrt.f64 -1) (/.f64 a h))))))
(fma.f64 1/3 (*.f64 (*.f64 (pow.f64 -1 1/54) (pow.f64 -1 1/54)) (*.f64 (*.f64 g (cbrt.f64 -1/2)) (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (cbrt.f64 -1) 2) (*.f64 (*.f64 h h) (pow.f64 a 7)))) 1/18) (pow.f64 (/.f64 1 (*.f64 (pow.f64 (cbrt.f64 -1) 2) (*.f64 (*.f64 h h) (pow.f64 a 7)))) 1/18)))) (*.f64 (pow.f64 -1 1/18) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 (/.f64 (cbrt.f64 -1) (/.f64 a h))))))
(+.f64 (*.f64 1/3 (*.f64 (pow.f64 -1 1/27) (*.f64 (*.f64 (cbrt.f64 -1/2) g) (pow.f64 (/.f64 1 (*.f64 (pow.f64 a 7) (*.f64 (pow.f64 (cbrt.f64 -1) 2) (pow.f64 h 2)))) 1/9)))) (+.f64 (*.f64 (pow.f64 -1 1/18) (*.f64 (pow.f64 (pow.f64 1 4) 1/9) (*.f64 (cbrt.f64 -1/2) (pow.f64 (/.f64 (*.f64 (cbrt.f64 -1) h) a) 1/3)))) (*.f64 1/3 (*.f64 (pow.f64 -1 1/9) (*.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (-.f64 (+.f64 (*.f64 1/3 (*.f64 (pow.f64 -1 1/6) (*.f64 (pow.f64 1 1/3) (/.f64 1 (*.f64 a (*.f64 (pow.f64 (cbrt.f64 -1) 2) h)))))) (*.f64 -1/6 (*.f64 (pow.f64 -1 1/6) (*.f64 (pow.f64 1 1/3) (/.f64 (cbrt.f64 -1) (*.f64 a h)))))) (*.f64 1/3 (*.f64 (pow.f64 -1 1/54) (pow.f64 (/.f64 1 (*.f64 (pow.f64 a 17) (*.f64 (cbrt.f64 -1) h))) 1/9)))) (pow.f64 g 2))) (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (*.f64 (pow.f64 (cbrt.f64 -1) 2) (pow.f64 h 2))) 1/3))))))
(fma.f64 1/3 (*.f64 (*.f64 (*.f64 (pow.f64 -1 1/54) (pow.f64 -1 1/54)) (*.f64 g (cbrt.f64 -1/2))) (*.f64 (pow.f64 (/.f64 (/.f64 1 (pow.f64 a 7)) (*.f64 (pow.f64 (cbrt.f64 -1) 2) (*.f64 h h))) 1/18) (pow.f64 (/.f64 (/.f64 1 (pow.f64 a 7)) (*.f64 (pow.f64 (cbrt.f64 -1) 2) (*.f64 h h))) 1/18))) (fma.f64 (pow.f64 -1 1/18) (*.f64 (*.f64 1 (cbrt.f64 -1/2)) (cbrt.f64 (/.f64 (cbrt.f64 -1) (/.f64 a h)))) (*.f64 (*.f64 1/3 (*.f64 (pow.f64 -1 1/18) (pow.f64 -1 1/18))) (*.f64 (*.f64 (*.f64 (cbrt.f64 -1/2) (+.f64 (fma.f64 1/3 (*.f64 (pow.f64 -1 1/6) (/.f64 1 (*.f64 (*.f64 a (pow.f64 (cbrt.f64 -1) 2)) h))) (*.f64 -1/6 (*.f64 (*.f64 (pow.f64 -1 1/6) 1) (/.f64 (cbrt.f64 -1) (*.f64 h a))))) (*.f64 -1/3 (*.f64 (pow.f64 -1 1/54) (*.f64 (pow.f64 (/.f64 (/.f64 1 (pow.f64 a 17)) (*.f64 (cbrt.f64 -1) h)) 1/18) (pow.f64 (/.f64 (/.f64 1 (pow.f64 a 17)) (*.f64 (cbrt.f64 -1) h)) 1/18)))))) (*.f64 g g)) (cbrt.f64 (/.f64 (*.f64 a a) (*.f64 (pow.f64 (cbrt.f64 -1) 2) (*.f64 h h))))))))
(fma.f64 1/3 (*.f64 (*.f64 (pow.f64 (/.f64 (/.f64 1 (pow.f64 a 7)) (*.f64 (pow.f64 (cbrt.f64 -1) 2) (*.f64 h h))) 1/18) (pow.f64 (/.f64 (/.f64 1 (pow.f64 a 7)) (*.f64 (pow.f64 (cbrt.f64 -1) 2) (*.f64 h h))) 1/18)) (*.f64 (*.f64 (pow.f64 -1 1/54) (pow.f64 -1 1/54)) (*.f64 g (cbrt.f64 -1/2)))) (fma.f64 1/3 (*.f64 (pow.f64 -1 1/18) (*.f64 (pow.f64 -1 1/18) (*.f64 (cbrt.f64 -1/2) (*.f64 (fma.f64 1/3 (/.f64 (pow.f64 -1 1/6) (*.f64 h (*.f64 (pow.f64 (cbrt.f64 -1) 2) a))) (fma.f64 -1/6 (*.f64 (pow.f64 -1 1/6) (/.f64 (cbrt.f64 -1) (*.f64 h a))) (*.f64 (*.f64 (*.f64 (pow.f64 -1 1/54) (pow.f64 (/.f64 1 (*.f64 (cbrt.f64 -1) (*.f64 h (pow.f64 a 17)))) 1/18)) (pow.f64 (/.f64 1 (*.f64 (cbrt.f64 -1) (*.f64 h (pow.f64 a 17)))) 1/18)) -1/3))) (*.f64 (*.f64 g g) (cbrt.f64 (/.f64 (*.f64 a a) (*.f64 (pow.f64 (cbrt.f64 -1) 2) (*.f64 h h))))))))) (*.f64 (pow.f64 -1 1/18) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 (/.f64 (cbrt.f64 -1) (/.f64 a h)))))))
(fma.f64 1/3 (*.f64 (*.f64 (pow.f64 -1 1/54) (pow.f64 -1 1/54)) (*.f64 (*.f64 g (cbrt.f64 -1/2)) (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (cbrt.f64 -1) 2) (*.f64 (*.f64 h h) (pow.f64 a 7)))) 1/18) (pow.f64 (/.f64 1 (*.f64 (pow.f64 (cbrt.f64 -1) 2) (*.f64 (*.f64 h h) (pow.f64 a 7)))) 1/18)))) (fma.f64 1/3 (*.f64 (pow.f64 -1 1/18) (*.f64 (pow.f64 -1 1/18) (*.f64 (cbrt.f64 -1/2) (*.f64 (fma.f64 1/3 (/.f64 (pow.f64 -1 1/6) (*.f64 (pow.f64 (cbrt.f64 -1) 2) (*.f64 h a))) (fma.f64 (pow.f64 -1 1/6) (*.f64 (/.f64 (cbrt.f64 -1) (*.f64 h a)) -1/6) (*.f64 (*.f64 (pow.f64 (/.f64 1 (*.f64 (cbrt.f64 -1) (*.f64 h (pow.f64 a 17)))) 1/18) (pow.f64 (/.f64 1 (*.f64 (cbrt.f64 -1) (*.f64 h (pow.f64 a 17)))) 1/18)) (*.f64 (pow.f64 -1 1/54) -1/3)))) (*.f64 (*.f64 g g) (cbrt.f64 (/.f64 (*.f64 a a) (*.f64 (pow.f64 (cbrt.f64 -1) 2) (*.f64 h h))))))))) (*.f64 (pow.f64 -1 1/18) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 (/.f64 (cbrt.f64 -1) (/.f64 a h)))))))
(+.f64 (*.f64 1/3 (*.f64 (pow.f64 -1 1/27) (*.f64 (*.f64 (cbrt.f64 -1/2) g) (pow.f64 (/.f64 1 (*.f64 (pow.f64 a 7) (*.f64 (pow.f64 (cbrt.f64 -1) 2) (pow.f64 h 2)))) 1/9)))) (+.f64 (*.f64 (pow.f64 -1 1/18) (*.f64 (pow.f64 (pow.f64 1 4) 1/9) (*.f64 (cbrt.f64 -1/2) (pow.f64 (/.f64 (*.f64 (cbrt.f64 -1) h) a) 1/3)))) (+.f64 (*.f64 1/3 (*.f64 (pow.f64 -1 1/9) (*.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (-.f64 (+.f64 (*.f64 1/3 (*.f64 (pow.f64 -1 1/6) (*.f64 (pow.f64 1 1/3) (/.f64 1 (*.f64 a (*.f64 (pow.f64 (cbrt.f64 -1) 2) h)))))) (*.f64 -1/6 (*.f64 (pow.f64 -1 1/6) (*.f64 (pow.f64 1 1/3) (/.f64 (cbrt.f64 -1) (*.f64 a h)))))) (*.f64 1/3 (*.f64 (pow.f64 -1 1/54) (pow.f64 (/.f64 1 (*.f64 (pow.f64 a 17) (*.f64 (cbrt.f64 -1) h))) 1/9)))) (pow.f64 g 2))) (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (*.f64 (pow.f64 (cbrt.f64 -1) 2) (pow.f64 h 2))) 1/3)))) (*.f64 -1/3 (*.f64 (pow.f64 -1 1/9) (*.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (pow.f64 g 3) (+.f64 (*.f64 2/3 (*.f64 (pow.f64 -1 1/54) (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 a 4) (*.f64 (pow.f64 (cbrt.f64 -1) 5) (pow.f64 h 5)))) 1/9) (-.f64 (+.f64 (*.f64 1/3 (*.f64 (pow.f64 -1 1/6) (*.f64 (pow.f64 1 1/3) (/.f64 1 (*.f64 a (*.f64 (pow.f64 (cbrt.f64 -1) 2) h)))))) (*.f64 -1/6 (*.f64 (pow.f64 -1 1/6) (*.f64 (pow.f64 1 1/3) (/.f64 (cbrt.f64 -1) (*.f64 a h)))))) (*.f64 1/3 (*.f64 (pow.f64 -1 1/54) (pow.f64 (/.f64 1 (*.f64 (pow.f64 a 17) (*.f64 (cbrt.f64 -1) h))) 1/9))))))) (*.f64 1/27 (*.f64 (pow.f64 -1 1/9) (pow.f64 (/.f64 1 (*.f64 (pow.f64 a 7) (*.f64 (pow.f64 (cbrt.f64 -1) 2) (pow.f64 h 2)))) 1/3)))))) (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (*.f64 (pow.f64 (cbrt.f64 -1) 2) (pow.f64 h 2))) 1/3)))))))
(fma.f64 1/3 (*.f64 (*.f64 (*.f64 (pow.f64 -1 1/54) (pow.f64 -1 1/54)) (*.f64 g (cbrt.f64 -1/2))) (*.f64 (pow.f64 (/.f64 (/.f64 1 (pow.f64 a 7)) (*.f64 (pow.f64 (cbrt.f64 -1) 2) (*.f64 h h))) 1/18) (pow.f64 (/.f64 (/.f64 1 (pow.f64 a 7)) (*.f64 (pow.f64 (cbrt.f64 -1) 2) (*.f64 h h))) 1/18))) (fma.f64 (pow.f64 -1 1/18) (*.f64 (*.f64 1 (cbrt.f64 -1/2)) (cbrt.f64 (/.f64 (cbrt.f64 -1) (/.f64 a h)))) (fma.f64 1/3 (*.f64 (*.f64 (pow.f64 -1 1/18) (pow.f64 -1 1/18)) (*.f64 (*.f64 (*.f64 (cbrt.f64 -1/2) (+.f64 (fma.f64 1/3 (*.f64 (pow.f64 -1 1/6) (/.f64 1 (*.f64 (*.f64 a (pow.f64 (cbrt.f64 -1) 2)) h))) (*.f64 -1/6 (*.f64 (*.f64 (pow.f64 -1 1/6) 1) (/.f64 (cbrt.f64 -1) (*.f64 h a))))) (*.f64 -1/3 (*.f64 (pow.f64 -1 1/54) (*.f64 (pow.f64 (/.f64 (/.f64 1 (pow.f64 a 17)) (*.f64 (cbrt.f64 -1) h)) 1/18) (pow.f64 (/.f64 (/.f64 1 (pow.f64 a 17)) (*.f64 (cbrt.f64 -1) h)) 1/18)))))) (*.f64 g g)) (cbrt.f64 (/.f64 (*.f64 a a) (*.f64 (pow.f64 (cbrt.f64 -1) 2) (*.f64 h h)))))) (*.f64 (*.f64 -1/3 (*.f64 (pow.f64 -1 1/18) (pow.f64 -1 1/18))) (*.f64 (cbrt.f64 (/.f64 (*.f64 a a) (*.f64 (pow.f64 (cbrt.f64 -1) 2) (*.f64 h h)))) (*.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 g 3)) (fma.f64 2/3 (*.f64 (pow.f64 -1 1/54) (*.f64 (+.f64 (fma.f64 1/3 (*.f64 (pow.f64 -1 1/6) (/.f64 1 (*.f64 (*.f64 a (pow.f64 (cbrt.f64 -1) 2)) h))) (*.f64 -1/6 (*.f64 (*.f64 (pow.f64 -1 1/6) 1) (/.f64 (cbrt.f64 -1) (*.f64 h a))))) (*.f64 -1/3 (*.f64 (pow.f64 -1 1/54) (*.f64 (pow.f64 (/.f64 (/.f64 1 (pow.f64 a 17)) (*.f64 (cbrt.f64 -1) h)) 1/18) (pow.f64 (/.f64 (/.f64 1 (pow.f64 a 17)) (*.f64 (cbrt.f64 -1) h)) 1/18))))) (*.f64 (pow.f64 (/.f64 (/.f64 1 (pow.f64 a 4)) (*.f64 (pow.f64 (cbrt.f64 -1) 5) (pow.f64 h 5))) 1/18) (pow.f64 (/.f64 (/.f64 1 (pow.f64 a 4)) (*.f64 (pow.f64 (cbrt.f64 -1) 5) (pow.f64 h 5))) 1/18)))) (*.f64 (*.f64 1/27 (*.f64 (pow.f64 -1 1/18) (pow.f64 -1 1/18))) (cbrt.f64 (/.f64 (/.f64 1 (pow.f64 a 7)) (*.f64 (pow.f64 (cbrt.f64 -1) 2) (*.f64 h h))))))))))))
(fma.f64 1/3 (*.f64 (*.f64 (pow.f64 (/.f64 (/.f64 1 (pow.f64 a 7)) (*.f64 (pow.f64 (cbrt.f64 -1) 2) (*.f64 h h))) 1/18) (pow.f64 (/.f64 (/.f64 1 (pow.f64 a 7)) (*.f64 (pow.f64 (cbrt.f64 -1) 2) (*.f64 h h))) 1/18)) (*.f64 (*.f64 (pow.f64 -1 1/54) (pow.f64 -1 1/54)) (*.f64 g (cbrt.f64 -1/2)))) (fma.f64 (pow.f64 -1 1/18) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 (/.f64 (cbrt.f64 -1) (/.f64 a h)))) (fma.f64 1/3 (*.f64 (pow.f64 -1 1/18) (*.f64 (pow.f64 -1 1/18) (*.f64 (cbrt.f64 -1/2) (*.f64 (fma.f64 1/3 (/.f64 (pow.f64 -1 1/6) (*.f64 h (*.f64 (pow.f64 (cbrt.f64 -1) 2) a))) (fma.f64 -1/6 (*.f64 (pow.f64 -1 1/6) (/.f64 (cbrt.f64 -1) (*.f64 h a))) (*.f64 (*.f64 (*.f64 (pow.f64 -1 1/54) (pow.f64 (/.f64 1 (*.f64 (cbrt.f64 -1) (*.f64 h (pow.f64 a 17)))) 1/18)) (pow.f64 (/.f64 1 (*.f64 (cbrt.f64 -1) (*.f64 h (pow.f64 a 17)))) 1/18)) -1/3))) (*.f64 (*.f64 g g) (cbrt.f64 (/.f64 (*.f64 a a) (*.f64 (pow.f64 (cbrt.f64 -1) 2) (*.f64 h h))))))))) (*.f64 (*.f64 (*.f64 (*.f64 (pow.f64 -1 1/18) (pow.f64 -1 1/18)) (*.f64 (pow.f64 g 3) (cbrt.f64 -1/2))) (fma.f64 2/3 (*.f64 (fma.f64 1/3 (/.f64 (pow.f64 -1 1/6) (*.f64 h (*.f64 (pow.f64 (cbrt.f64 -1) 2) a))) (fma.f64 -1/6 (*.f64 (pow.f64 -1 1/6) (/.f64 (cbrt.f64 -1) (*.f64 h a))) (*.f64 (*.f64 (*.f64 (pow.f64 -1 1/54) (pow.f64 (/.f64 1 (*.f64 (cbrt.f64 -1) (*.f64 h (pow.f64 a 17)))) 1/18)) (pow.f64 (/.f64 1 (*.f64 (cbrt.f64 -1) (*.f64 h (pow.f64 a 17)))) 1/18)) -1/3))) (*.f64 (*.f64 (pow.f64 -1 1/54) (pow.f64 (/.f64 1 (*.f64 (pow.f64 (cbrt.f64 -1) 5) (*.f64 (pow.f64 h 5) (pow.f64 a 4)))) 1/18)) (pow.f64 (/.f64 1 (*.f64 (pow.f64 (cbrt.f64 -1) 5) (*.f64 (pow.f64 h 5) (pow.f64 a 4)))) 1/18))) (*.f64 (cbrt.f64 (/.f64 (/.f64 1 (pow.f64 a 7)) (*.f64 (pow.f64 (cbrt.f64 -1) 2) (*.f64 h h)))) (*.f64 (*.f64 1/27 (pow.f64 -1 1/18)) (pow.f64 -1 1/18))))) (*.f64 (cbrt.f64 (/.f64 (*.f64 a a) (*.f64 (pow.f64 (cbrt.f64 -1) 2) (*.f64 h h)))) -1/3)))))
(fma.f64 1/3 (*.f64 (*.f64 (pow.f64 -1 1/54) (pow.f64 -1 1/54)) (*.f64 (*.f64 g (cbrt.f64 -1/2)) (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (cbrt.f64 -1) 2) (*.f64 (*.f64 h h) (pow.f64 a 7)))) 1/18) (pow.f64 (/.f64 1 (*.f64 (pow.f64 (cbrt.f64 -1) 2) (*.f64 (*.f64 h h) (pow.f64 a 7)))) 1/18)))) (fma.f64 (pow.f64 -1 1/18) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 (/.f64 (cbrt.f64 -1) (/.f64 a h)))) (*.f64 (cbrt.f64 (/.f64 (*.f64 a a) (*.f64 (pow.f64 (cbrt.f64 -1) 2) (*.f64 h h)))) (+.f64 (*.f64 1/3 (*.f64 (*.f64 (*.f64 (pow.f64 -1 1/18) (pow.f64 -1 1/18)) (cbrt.f64 -1/2)) (*.f64 (*.f64 g g) (fma.f64 1/3 (/.f64 (pow.f64 -1 1/6) (*.f64 (pow.f64 (cbrt.f64 -1) 2) (*.f64 h a))) (fma.f64 (pow.f64 -1 1/6) (*.f64 (/.f64 (cbrt.f64 -1) (*.f64 h a)) -1/6) (*.f64 (*.f64 (pow.f64 (/.f64 1 (*.f64 (cbrt.f64 -1) (*.f64 h (pow.f64 a 17)))) 1/18) (pow.f64 (/.f64 1 (*.f64 (cbrt.f64 -1) (*.f64 h (pow.f64 a 17)))) 1/18)) (*.f64 (pow.f64 -1 1/54) -1/3))))))) (*.f64 -1/3 (*.f64 (*.f64 (*.f64 (pow.f64 -1 1/18) (pow.f64 -1 1/18)) (*.f64 (pow.f64 g 3) (cbrt.f64 -1/2))) (fma.f64 1/27 (*.f64 (*.f64 (pow.f64 -1 1/18) (pow.f64 -1 1/18)) (cbrt.f64 (/.f64 1 (*.f64 (pow.f64 (cbrt.f64 -1) 2) (*.f64 (*.f64 h h) (pow.f64 a 7)))))) (*.f64 2/3 (*.f64 (pow.f64 -1 1/54) (*.f64 (fma.f64 1/3 (/.f64 (pow.f64 -1 1/6) (*.f64 (pow.f64 (cbrt.f64 -1) 2) (*.f64 h a))) (fma.f64 (pow.f64 -1 1/6) (*.f64 (/.f64 (cbrt.f64 -1) (*.f64 h a)) -1/6) (*.f64 (*.f64 (pow.f64 (/.f64 1 (*.f64 (cbrt.f64 -1) (*.f64 h (pow.f64 a 17)))) 1/18) (pow.f64 (/.f64 1 (*.f64 (cbrt.f64 -1) (*.f64 h (pow.f64 a 17)))) 1/18)) (*.f64 (pow.f64 -1 1/54) -1/3)))) (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (cbrt.f64 -1) 5) (*.f64 (pow.f64 h 5) (pow.f64 a 4)))) 1/18) (pow.f64 (/.f64 1 (*.f64 (pow.f64 (cbrt.f64 -1) 5) (*.f64 (pow.f64 h 5) (pow.f64 a 4)))) 1/18))))))))))))
(*.f64 (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)) (pow.f64 (/.f64 (*.f64 1 g) a) 1/3))
(*.f64 (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)) (cbrt.f64 (/.f64 g a)))
(*.f64 (cbrt.f64 2) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 (/.f64 g a))))
(+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (pow.f64 g 2)) 1/3) (/.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (-.f64 (*.f64 -1/6 (*.f64 (pow.f64 1 1/3) (/.f64 1 (*.f64 a g)))) (*.f64 1/3 (/.f64 1 (*.f64 a g)))) (pow.f64 h 2))) (pow.f64 (cbrt.f64 2) 2)))) (*.f64 (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)) (pow.f64 (/.f64 (*.f64 1 g) a) 1/3)))
(fma.f64 1/3 (*.f64 (cbrt.f64 (/.f64 (*.f64 a a) (*.f64 g g))) (/.f64 (cbrt.f64 -1/2) (/.f64 (pow.f64 (cbrt.f64 2) 2) (*.f64 (*.f64 h h) (-.f64 (*.f64 -1/6 (/.f64 1 (*.f64 g a))) (/.f64 1/3 (*.f64 g a))))))) (*.f64 (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)) (cbrt.f64 (/.f64 g a))))
(fma.f64 1/3 (*.f64 (cbrt.f64 (*.f64 (/.f64 a g) (/.f64 a g))) (/.f64 (cbrt.f64 -1/2) (/.f64 (/.f64 (pow.f64 (cbrt.f64 2) 2) (*.f64 h h)) (*.f64 (/.f64 1 (*.f64 g a)) -1/2)))) (*.f64 (cbrt.f64 2) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 (/.f64 g a)))))
(fma.f64 1/3 (/.f64 (*.f64 (cbrt.f64 -1/2) (cbrt.f64 (*.f64 (/.f64 a g) (/.f64 a g)))) (/.f64 (pow.f64 (cbrt.f64 2) 2) (*.f64 (*.f64 h h) (*.f64 (/.f64 1 (*.f64 g a)) -1/2)))) (*.f64 (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)) (cbrt.f64 (/.f64 g a))))
(+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (pow.f64 g 2)) 1/3) (/.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (-.f64 (*.f64 -1/6 (*.f64 (pow.f64 1 1/3) (/.f64 1 (*.f64 a g)))) (*.f64 1/3 (/.f64 1 (*.f64 a g)))) (pow.f64 h 2))) (pow.f64 (cbrt.f64 2) 2)))) (+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (pow.f64 g 2)) 1/3) (/.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (-.f64 (+.f64 (*.f64 1/18 (*.f64 (pow.f64 1 1/3) (/.f64 1 (*.f64 a (pow.f64 g 3))))) (*.f64 -5/72 (*.f64 (pow.f64 1 1/3) (/.f64 1 (*.f64 a (pow.f64 g 3)))))) (+.f64 (*.f64 1/6 (/.f64 (*.f64 a (pow.f64 (-.f64 (*.f64 -1/6 (*.f64 (pow.f64 1 1/3) (/.f64 1 (*.f64 a g)))) (*.f64 1/3 (/.f64 1 (*.f64 a g)))) 2)) g)) (*.f64 1/9 (/.f64 1 (*.f64 a (pow.f64 g 3)))))) (pow.f64 h 4))) (pow.f64 (cbrt.f64 2) 2)))) (*.f64 (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)) (pow.f64 (/.f64 (*.f64 1 g) a) 1/3))))
(fma.f64 1/3 (*.f64 (cbrt.f64 (/.f64 (*.f64 a a) (*.f64 g g))) (/.f64 (cbrt.f64 -1/2) (/.f64 (pow.f64 (cbrt.f64 2) 2) (*.f64 (*.f64 h h) (-.f64 (*.f64 -1/6 (/.f64 1 (*.f64 g a))) (/.f64 1/3 (*.f64 g a))))))) (fma.f64 1/3 (*.f64 (cbrt.f64 (/.f64 (*.f64 a a) (*.f64 g g))) (/.f64 (cbrt.f64 -1/2) (/.f64 (pow.f64 (cbrt.f64 2) 2) (*.f64 (pow.f64 h 4) (-.f64 (*.f64 (/.f64 (/.f64 1 a) (pow.f64 g 3)) -1/72) (fma.f64 1/6 (/.f64 a (/.f64 g (pow.f64 (-.f64 (*.f64 -1/6 (/.f64 1 (*.f64 g a))) (/.f64 1/3 (*.f64 g a))) 2))) (/.f64 1/9 (*.f64 (pow.f64 g 3) a)))))))) (*.f64 (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)) (cbrt.f64 (/.f64 g a)))))
(+.f64 (*.f64 (cbrt.f64 2) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 (/.f64 g a)))) (*.f64 (*.f64 1/3 (cbrt.f64 (*.f64 (/.f64 a g) (/.f64 a g)))) (+.f64 (/.f64 (cbrt.f64 -1/2) (/.f64 (/.f64 (pow.f64 (cbrt.f64 2) 2) (*.f64 h h)) (*.f64 (/.f64 1 (*.f64 g a)) -1/2))) (*.f64 (/.f64 (cbrt.f64 -1/2) (pow.f64 (cbrt.f64 2) 2)) (*.f64 (pow.f64 h 4) (-.f64 (/.f64 -1/72 (*.f64 (pow.f64 g 3) a)) (fma.f64 1/6 (*.f64 (/.f64 a g) (pow.f64 (*.f64 (/.f64 1 (*.f64 g a)) -1/2) 2)) (/.f64 (/.f64 1/9 a) (pow.f64 g 3)))))))))
(+.f64 (*.f64 (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)) (cbrt.f64 (/.f64 g a))) (*.f64 1/3 (*.f64 (cbrt.f64 (*.f64 (/.f64 a g) (/.f64 a g))) (*.f64 (/.f64 (cbrt.f64 -1/2) (pow.f64 (cbrt.f64 2) 2)) (+.f64 (*.f64 (*.f64 h h) (*.f64 (/.f64 1 (*.f64 g a)) -1/2)) (*.f64 (pow.f64 h 4) (+.f64 (*.f64 (/.f64 (/.f64 1 a) (pow.f64 g 3)) -1/8) (*.f64 -1/6 (*.f64 (pow.f64 (*.f64 (/.f64 1 (*.f64 g a)) -1/2) 2) (/.f64 a g))))))))))
(+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (pow.f64 g 2)) 1/3) (/.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (-.f64 (*.f64 -1/6 (*.f64 (pow.f64 1 1/3) (/.f64 1 (*.f64 a g)))) (*.f64 1/3 (/.f64 1 (*.f64 a g)))) (pow.f64 h 2))) (pow.f64 (cbrt.f64 2) 2)))) (+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (pow.f64 g 2)) 1/3) (/.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (-.f64 (+.f64 (*.f64 -55/1296 (*.f64 (pow.f64 1 1/3) (/.f64 1 (*.f64 a (pow.f64 g 5))))) (+.f64 (*.f64 5/216 (*.f64 (pow.f64 1 1/3) (/.f64 1 (*.f64 a (pow.f64 g 5))))) (*.f64 1/54 (*.f64 (pow.f64 1 1/3) (/.f64 1 (*.f64 a (pow.f64 g 5))))))) (+.f64 (*.f64 5/81 (/.f64 1 (*.f64 a (pow.f64 g 5)))) (+.f64 (*.f64 1/3 (/.f64 (*.f64 (-.f64 (+.f64 (*.f64 1/18 (*.f64 (pow.f64 1 1/3) (/.f64 1 (*.f64 a (pow.f64 g 3))))) (*.f64 -5/72 (*.f64 (pow.f64 1 1/3) (/.f64 1 (*.f64 a (pow.f64 g 3)))))) (+.f64 (*.f64 1/6 (/.f64 (*.f64 a (pow.f64 (-.f64 (*.f64 -1/6 (*.f64 (pow.f64 1 1/3) (/.f64 1 (*.f64 a g)))) (*.f64 1/3 (/.f64 1 (*.f64 a g)))) 2)) g)) (*.f64 1/9 (/.f64 1 (*.f64 a (pow.f64 g 3)))))) (*.f64 a (-.f64 (*.f64 -1/6 (*.f64 (pow.f64 1 1/3) (/.f64 1 (*.f64 a g)))) (*.f64 1/3 (/.f64 1 (*.f64 a g)))))) g)) (*.f64 1/27 (/.f64 (*.f64 (pow.f64 a 2) (pow.f64 (-.f64 (*.f64 -1/6 (*.f64 (pow.f64 1 1/3) (/.f64 1 (*.f64 a g)))) (*.f64 1/3 (/.f64 1 (*.f64 a g)))) 3)) (*.f64 (pow.f64 (cbrt.f64 2) 6) (pow.f64 g 2))))))) (pow.f64 h 6))) (pow.f64 (cbrt.f64 2) 2)))) (+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (pow.f64 g 2)) 1/3) (/.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (-.f64 (+.f64 (*.f64 1/18 (*.f64 (pow.f64 1 1/3) (/.f64 1 (*.f64 a (pow.f64 g 3))))) (*.f64 -5/72 (*.f64 (pow.f64 1 1/3) (/.f64 1 (*.f64 a (pow.f64 g 3)))))) (+.f64 (*.f64 1/6 (/.f64 (*.f64 a (pow.f64 (-.f64 (*.f64 -1/6 (*.f64 (pow.f64 1 1/3) (/.f64 1 (*.f64 a g)))) (*.f64 1/3 (/.f64 1 (*.f64 a g)))) 2)) g)) (*.f64 1/9 (/.f64 1 (*.f64 a (pow.f64 g 3)))))) (pow.f64 h 4))) (pow.f64 (cbrt.f64 2) 2)))) (*.f64 (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)) (pow.f64 (/.f64 (*.f64 1 g) a) 1/3)))))
(fma.f64 1/3 (*.f64 (cbrt.f64 (/.f64 (*.f64 a a) (*.f64 g g))) (/.f64 (cbrt.f64 -1/2) (/.f64 (pow.f64 (cbrt.f64 2) 2) (*.f64 (*.f64 h h) (-.f64 (*.f64 -1/6 (/.f64 1 (*.f64 g a))) (/.f64 1/3 (*.f64 g a))))))) (fma.f64 1/3 (*.f64 (cbrt.f64 (/.f64 (*.f64 a a) (*.f64 g g))) (/.f64 (cbrt.f64 -1/2) (/.f64 (pow.f64 (cbrt.f64 2) 2) (*.f64 (pow.f64 h 6) (-.f64 (-.f64 (fma.f64 -55/1296 (/.f64 1 (*.f64 (pow.f64 g 5) a)) (*.f64 (/.f64 1 (*.f64 (pow.f64 g 5) a)) 1/24)) (/.f64 5/81 (*.f64 (pow.f64 g 5) a))) (fma.f64 1/3 (/.f64 (-.f64 (*.f64 (/.f64 (/.f64 1 a) (pow.f64 g 3)) -1/72) (fma.f64 1/6 (/.f64 a (/.f64 g (pow.f64 (-.f64 (*.f64 -1/6 (/.f64 1 (*.f64 g a))) (/.f64 1/3 (*.f64 g a))) 2))) (/.f64 1/9 (*.f64 (pow.f64 g 3) a)))) (/.f64 g (*.f64 a (-.f64 (*.f64 -1/6 (/.f64 1 (*.f64 g a))) (/.f64 1/3 (*.f64 g a)))))) (/.f64 (*.f64 1/27 (*.f64 (*.f64 a a) (pow.f64 (-.f64 (*.f64 -1/6 (/.f64 1 (*.f64 g a))) (/.f64 1/3 (*.f64 g a))) 3))) (*.f64 (*.f64 g g) (pow.f64 (cbrt.f64 2) 6))))))))) (fma.f64 1/3 (*.f64 (cbrt.f64 (/.f64 (*.f64 a a) (*.f64 g g))) (/.f64 (cbrt.f64 -1/2) (/.f64 (pow.f64 (cbrt.f64 2) 2) (*.f64 (pow.f64 h 4) (-.f64 (*.f64 (/.f64 (/.f64 1 a) (pow.f64 g 3)) -1/72) (fma.f64 1/6 (/.f64 a (/.f64 g (pow.f64 (-.f64 (*.f64 -1/6 (/.f64 1 (*.f64 g a))) (/.f64 1/3 (*.f64 g a))) 2))) (/.f64 1/9 (*.f64 (pow.f64 g 3) a)))))))) (*.f64 (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)) (cbrt.f64 (/.f64 g a))))))
(+.f64 (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) (pow.f64 h 4)) (-.f64 (/.f64 -1/72 (*.f64 (pow.f64 g 3) a)) (fma.f64 1/6 (*.f64 (/.f64 a g) (pow.f64 (*.f64 (/.f64 1 (*.f64 g a)) -1/2) 2)) (/.f64 (/.f64 1/9 a) (pow.f64 g 3)))))) (*.f64 (cbrt.f64 2) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 (/.f64 g a))))) (*.f64 (*.f64 1/3 (cbrt.f64 (*.f64 (/.f64 a g) (/.f64 a g)))) (+.f64 (/.f64 (cbrt.f64 -1/2) (/.f64 (/.f64 (pow.f64 (cbrt.f64 2) 2) (*.f64 h h)) (*.f64 (/.f64 1 (*.f64 g a)) -1/2))) (*.f64 (/.f64 (cbrt.f64 -1/2) (pow.f64 (cbrt.f64 2) 2)) (*.f64 (pow.f64 h 6) (-.f64 (-.f64 (*.f64 (/.f64 (/.f64 1 a) (pow.f64 g 5)) -1/1296) (/.f64 5/81 (*.f64 (pow.f64 g 5) a))) (fma.f64 1/3 (/.f64 (-.f64 (/.f64 -1/72 (*.f64 (pow.f64 g 3) a)) (fma.f64 1/6 (*.f64 (/.f64 a g) (pow.f64 (*.f64 (/.f64 1 (*.f64 g a)) -1/2) 2)) (/.f64 (/.f64 1/9 a) (pow.f64 g 3)))) (/.f64 (/.f64 g a) (*.f64 (/.f64 1 (*.f64 g a)) -1/2))) (*.f64 1/108 (/.f64 (*.f64 (*.f64 a a) (pow.f64 (*.f64 (/.f64 1 (*.f64 g a)) -1/2) 3)) (*.f64 g g))))))))))
(+.f64 (*.f64 (*.f64 1/3 (cbrt.f64 (*.f64 (/.f64 a g) (/.f64 a g)))) (+.f64 (*.f64 (/.f64 (cbrt.f64 -1/2) (pow.f64 (cbrt.f64 2) 2)) (+.f64 (*.f64 (*.f64 h h) (*.f64 (/.f64 1 (*.f64 g a)) -1/2)) (*.f64 (pow.f64 h 6) (-.f64 (*.f64 (/.f64 1 (*.f64 (pow.f64 g 5) a)) -1/16) (fma.f64 1/3 (*.f64 (+.f64 (*.f64 (/.f64 (/.f64 1 a) (pow.f64 g 3)) -1/8) (*.f64 -1/6 (*.f64 (pow.f64 (*.f64 (/.f64 1 (*.f64 g a)) -1/2) 2) (/.f64 a g)))) (/.f64 (*.f64 a (*.f64 (/.f64 1 (*.f64 g a)) -1/2)) g)) (*.f64 1/108 (/.f64 (*.f64 (*.f64 a a) (*.f64 (pow.f64 (/.f64 1 (*.f64 g a)) 3) -1/8)) (*.f64 g g)))))))) (*.f64 (/.f64 (cbrt.f64 -1/2) (pow.f64 (cbrt.f64 2) 2)) (*.f64 (pow.f64 h 4) (+.f64 (*.f64 (/.f64 (/.f64 1 a) (pow.f64 g 3)) -1/8) (*.f64 -1/6 (*.f64 (pow.f64 (*.f64 (/.f64 1 (*.f64 g a)) -1/2) 2) (/.f64 a g)))))))) (*.f64 (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)) (cbrt.f64 (/.f64 g a))))
(*.f64 (pow.f64 (/.f64 (*.f64 1 g) a) 1/3) (cbrt.f64 -1/2))
(*.f64 (cbrt.f64 -1/2) (cbrt.f64 (/.f64 g a)))
(*.f64 (pow.f64 (/.f64 (*.f64 1 g) a) 1/3) (cbrt.f64 -1/2))
(*.f64 (cbrt.f64 -1/2) (cbrt.f64 (/.f64 g a)))

localize48.0ms (0.4%)

Local error

Found 4 expressions with local error:

NewErrorProgram
2.2b
(-.f64 (*.f64 g g) (*.f64 h h))
8.4b
(cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a)))
26.5b
(sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))
27.6b
(sqrt.f64 (*.f64 h (neg.f64 h)))
Compiler

Compiled 169 to 43 computations (74.6% saved)

series2.0ms (0%)

Counts
1 → 12
Calls

3 calls:

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

rewrite46.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
289×pow1_binary64
282×add-sqr-sqrt_binary64
274×*-un-lft-identity_binary64
270×add-log-exp_binary64
269×log1p-expm1-u_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
058
11041
213331
Stop Event
node limit
Counts
1 → 1
Calls
Call 1
Inputs
(sqrt.f64 (*.f64 h (neg.f64 h)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x . 0)))) (#(struct:change #<rule egg-rr> (2) ((x . h)))))

simplify50.0ms (0.4%)

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
13 → 4
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))

eval613.0ms (5.2%)

Compiler

Compiled 31182 to 16850 computations (46% saved)

prune514.0ms (4.3%)

Pruning

56 alts after pruning (52 fresh and 4 done)

PrunedKeptTotal
New75824782
Fresh102838
Picked101
Done246
Total77156827
Error
7.8b
Counts
827 → 56
Alt Table
Click to see full alt table
StatusErrorProgram
48.6b
(+.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))))
62.4b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (sqrt.f64 (pow.f64 (/.f64 (+.f64 g g) (cbrt.f64 a)) 2)))
18.3b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (/.f64 (neg.f64 g) a)))
18.6b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 2) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 (/.f64 g a)))))
54.8b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (+.f64 g (pow.f64 (exp.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)))))))) (/.f64 -1/2 a))))
33.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 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
50.4b
(+.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))))))))
41.3b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (*.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/6) (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))))
54.6b
(+.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))
44.6b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (-.f64 (*.f64 (/.f64 1/2 g) (*.f64 h 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 g g))) (cbrt.f64 (*.f64 (fma.f64 (cbrt.f64 g) (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (/.f64 -1/2 a))))
54.8b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (+.f64 g (pow.f64 (pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))) 2)) (cbrt.f64 (pow.f64 (cbrt.f64 (log.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))) 2))) (cbrt.f64 (cbrt.f64 (log.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))))) (/.f64 -1/2 a))))
18.2b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (+.f64 g g) (/.f64 -1/2 a))))
34.3b
(+.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 (+.f64 g (hypot.f64 g h)) (/.f64 -1/2 a)))) 3))
49.5b
(+.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 (neg.f64 g)) (/.f64 -1/2 a))))
63.2b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (/.f64 (+.f64 g g) (cbrt.f64 a)))
33.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 g g (*.f64 h (neg.f64 h))))) (/.f64 -1/2 a))))
49.1b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (+.f64 g (pow.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 3/2)) (/.f64 -1/2 a))))
46.5b
(+.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 (neg.f64 g)) (/.f64 -1/2 a))))
53.4b
(+.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) (*.f64 (cbrt.f64 g) (pow.f64 (/.f64 1 a) 1/3)))))
40.5b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) 9/2) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
53.8b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 g (/.f64 -1/2 a))))
41.7b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (exp.f64 (*.f64 (log.f64 (cbrt.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))))
44.7b
(+.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))))
47.9b
(+.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))))
43.9b
(+.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) (*.f64 (cbrt.f64 g) (cbrt.f64 (/.f64 1 a))))))
49.0b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (fma.f64 (exp.f64 (*.f64 1/6 (log.f64 (-.f64 (*.f64 g g) (*.f64 h h))))) (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (/.f64 -1/2 a))))
48.9b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (fma.f64 (/.f64 (pow.f64 h 6) (pow.f64 g 5)) 1/16 (fma.f64 1/2 (*.f64 h (/.f64 h g)) (fma.f64 1/2 (/.f64 (*.f64 (pow.f64 h 8) 5/64) (pow.f64 g 7)) (*.f64 (/.f64 1/8 (pow.f64 g 3)) (pow.f64 h 4))))) (/.f64 -1/2 a))))
18.7b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 (/.f64 g a)) (cbrt.f64 2))))
42.1b
(+.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))))
31.8b
(+.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 h)) -1/2)) (cbrt.f64 a)))
54.3b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g 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))))
47.2b
(+.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))))
42.1b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (fma.f64 (sqrt.f64 (+.f64 g h)) (sqrt.f64 (-.f64 g h)) g) (/.f64 -1/2 a))))
47.3b
(+.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) (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 g a))) 3))))
41.3b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (fma.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/6) (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) (neg.f64 g)))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
27.0b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (fma.f64 1/3 (/.f64 (*.f64 (cbrt.f64 -1/2) (cbrt.f64 (*.f64 (/.f64 a g) (/.f64 a g)))) (/.f64 (pow.f64 (cbrt.f64 2) 2) (*.f64 (*.f64 h h) (*.f64 (/.f64 1 (*.f64 g a)) -1/2)))) (*.f64 (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)) (cbrt.f64 (/.f64 g a)))))
48.9b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.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 -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))))
37.9b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (fma.f64 (*.f64 g (pow.f64 (cbrt.f64 g) 2)) (cbrt.f64 g) (*.f64 h (neg.f64 h)))) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
40.0b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (pow.f64 (/.f64 (*.f64 1 g) a) 1/3) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2))))
62.3b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (+.f64 g (exp.f64 (*.f64 (*.f64 -2 (log.f64 (/.f64 -1 g))) 1/2))) (/.f64 -1/2 a))))
52.2b
(+.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 g) (/.f64 -1/2 a))))
49.1b
(+.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 1/2 (/.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g) a)))) 3) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
54.8b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (+.f64 g (pow.f64 (pow.f64 (exp.f64 1) (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)))))))) (/.f64 -1/2 a))))
34.3b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 (+.f64 g (hypot.f64 g h)) (/.f64 -1/2 a)))) 2) (cbrt.f64 (cbrt.f64 (*.f64 (+.f64 g (hypot.f64 g h)) (/.f64 -1/2 a))))))
43.9b
(+.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) (/.f64 (cbrt.f64 g) (cbrt.f64 a)))))
61.2b
(+.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))))
46.2b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (*.f64 (*.f64 h h) (/.f64 1/2 g)) (/.f64 -1/2 a))))
18.4b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) g))) (*.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 2) (cbrt.f64 (/.f64 g a)))))
60.1b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (+.f64 g g) (cbrt.f64 (/.f64 -1/2 a))))
49.0b
(+.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))))
31.2b
(+.f64 (/.f64 (cbrt.f64 (*.f64 1/2 (-.f64 (hypot.f64 g 0) g))) (cbrt.f64 a)) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
59.8b
(+.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))
50.4b
(+.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)))
49.0b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (+.f64 g (pow.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/6) 3)) (/.f64 -1/2 a))))
Compiler

Compiled 3445 to 2327 computations (32.5% saved)

localize141.0ms (1.2%)

Local error

Found 1 expressions with local error:

NewErrorProgram
16.2b
(cbrt.f64 (/.f64 (neg.f64 g) a))
Compiler

Compiled 52 to 22 computations (57.7% saved)

series4.0ms (0%)

Counts
1 → 0
Calls

6 calls:

TimeVariablePointExpression
1.0ms
g
@0
(cbrt.f64 (/.f64 (neg.f64 g) a))
1.0ms
g
@-inf
(cbrt.f64 (/.f64 (neg.f64 g) a))
1.0ms
g
@inf
(cbrt.f64 (/.f64 (neg.f64 g) a))
1.0ms
a
@inf
(cbrt.f64 (/.f64 (neg.f64 g) a))
1.0ms
a
@0
(cbrt.f64 (/.f64 (neg.f64 g) a))

rewrite71.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
550×pow1_binary64
512×add-log-exp_binary64
511×log1p-expm1-u_binary64
511×expm1-log1p-u_binary64
499×add-exp-log_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
068
11286
217986
Stop Event
node limit
Counts
1 → 26
Calls
Call 1
Inputs
(cbrt.f64 (/.f64 (neg.f64 g) a))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (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 1 (cbrt.f64 (/.f64 g a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (/.f64 g a))) (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 g a))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 g a))) 2) (cbrt.f64 (cbrt.f64 (/.f64 g a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 g) (cbrt.f64 (/.f64 1 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 g) (pow.f64 (/.f64 1 a) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 g) (/.f64 1 (cbrt.f64 a)))))) (#(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 1/3) (cbrt.f64 (/.f64 g a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (/.f64 g a)) 2) 1/3) (cbrt.f64 (cbrt.f64 (/.f64 g a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (/.f64 g a)) 1/3) (pow.f64 (sqrt.f64 (/.f64 g a)) 1/3))))) (#(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 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 (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 sqrt.f64 (pow.f64 (cbrt.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 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))))))))

simplify19.0ms (0.2%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

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

localize36.0ms (0.3%)

Local error

Found 2 expressions with local error:

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

Compiled 57 to 33 computations (42.1% saved)

series6.0ms (0.1%)

Counts
2 → 24
Calls

12 calls:

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

rewrite61.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
687×pow1_binary64
641×add-log-exp_binary64
640×log1p-expm1-u_binary64
640×expm1-log1p-u_binary64
627×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0716
114716
2175916
Stop Event
node limit
Counts
2 → 43
Calls
Call 1
Inputs
(cbrt.f64 (*.f64 g (/.f64 -1/2 a)))
(*.f64 g (/.f64 -1/2 a))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (cbrt.f64 (*.f64 g (/.f64 -1/2 a)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 g (/.f64 -1/2 a))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (cbrt.f64 (*.f64 g (/.f64 -1/2 a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 -1/2 a)) (cbrt.f64 g))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 g) (cbrt.f64 (/.f64 -1/2 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (*.f64 g (/.f64 -1/2 a)))) (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 g (/.f64 -1/2 a)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 g (/.f64 -1/2 a)))) 2) (cbrt.f64 (cbrt.f64 (*.f64 g (/.f64 -1/2 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 g (/.f64 -1/2 a)) 1/6) (pow.f64 (*.f64 g (/.f64 -1/2 a)) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/3) (cbrt.f64 (*.f64 g (/.f64 -1/2 a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 g (/.f64 -1/2 a))) 2) 1/3) (cbrt.f64 (cbrt.f64 (*.f64 g (/.f64 -1/2 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (*.f64 g (/.f64 -1/2 a))) 1/3) (pow.f64 (sqrt.f64 (*.f64 g (/.f64 -1/2 a))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (*.f64 g -1/2)) (cbrt.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 g (/.f64 -1/2 a)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 g (/.f64 -1/2 a))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 g (/.f64 -1/2 a)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 g (/.f64 -1/2 a)) 1/6) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 g (/.f64 -1/2 a))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (cbrt.f64 (*.f64 g (/.f64 -1/2 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (cbrt.f64 (*.f64 g (/.f64 -1/2 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (cbrt.f64 (*.f64 g (/.f64 -1/2 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (cbrt.f64 (*.f64 g (/.f64 -1/2 a)))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 g (/.f64 -1/2 a))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 g (*.f64 a -2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 a (*.f64 g -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 g -1/2) a)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 g -1/2)) (neg.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 g -1/2) 1) a)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 g -1/2) (pow.f64 (cbrt.f64 a) 2)) (cbrt.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 g -1/2) (sqrt.f64 a)) (sqrt.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/2 g) (neg.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 g 1/2) (neg.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 g (/.f64 -1/2 a)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 g (/.f64 -1/2 a))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 g (/.f64 -1/2 a)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 g (/.f64 -1/2 a))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 g (/.f64 -1/2 a)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 g) (/.f64 -1/2 a)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 g (/.f64 -1/2 a)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 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 g 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 g (/.f64 -1/2 a))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 g (/.f64 -1/2 a))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 g (/.f64 -1/2 a))))))))

simplify14.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
67 → 44
Calls
Call 1
Inputs
(*.f64 -1/2 (/.f64 g a))
(*.f64 -1/2 (/.f64 g a))
(*.f64 -1/2 (/.f64 g a))
(*.f64 -1/2 (/.f64 g a))
(*.f64 -1/2 (/.f64 g a))
(*.f64 -1/2 (/.f64 g a))
(*.f64 -1/2 (/.f64 g a))
(*.f64 -1/2 (/.f64 g a))
(*.f64 -1/2 (/.f64 g a))
(*.f64 -1/2 (/.f64 g a))
(*.f64 -1/2 (/.f64 g a))
(*.f64 -1/2 (/.f64 g a))
(*.f64 -1/2 (/.f64 g a))
(*.f64 -1/2 (/.f64 g a))
(*.f64 -1/2 (/.f64 g a))
(*.f64 -1/2 (/.f64 g a))
(*.f64 -1/2 (/.f64 g a))
(*.f64 -1/2 (/.f64 g a))
(*.f64 -1/2 (/.f64 g a))
(*.f64 -1/2 (/.f64 g a))
(*.f64 -1/2 (/.f64 g a))
(*.f64 -1/2 (/.f64 g a))
(*.f64 -1/2 (/.f64 g a))
(*.f64 -1/2 (/.f64 g a))
Outputs
(*.f64 -1/2 (/.f64 g a))
(*.f64 -1/2 (/.f64 g a))
(*.f64 -1/2 (/.f64 g a))
(*.f64 -1/2 (/.f64 g a))
(*.f64 -1/2 (/.f64 g a))
(*.f64 -1/2 (/.f64 g a))
(*.f64 -1/2 (/.f64 g a))
(*.f64 -1/2 (/.f64 g a))
(*.f64 -1/2 (/.f64 g a))
(*.f64 -1/2 (/.f64 g a))
(*.f64 -1/2 (/.f64 g a))
(*.f64 -1/2 (/.f64 g a))
(*.f64 -1/2 (/.f64 g a))
(*.f64 -1/2 (/.f64 g a))
(*.f64 -1/2 (/.f64 g a))
(*.f64 -1/2 (/.f64 g a))
(*.f64 -1/2 (/.f64 g a))
(*.f64 -1/2 (/.f64 g a))
(*.f64 -1/2 (/.f64 g a))
(*.f64 -1/2 (/.f64 g a))
(*.f64 -1/2 (/.f64 g a))
(*.f64 -1/2 (/.f64 g a))
(*.f64 -1/2 (/.f64 g a))
(*.f64 -1/2 (/.f64 g a))

localize123.0ms (1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(*.f64 2 (pow.f64 g 3))
5.3b
(*.f64 (/.f64 -1/2 a) (*.f64 2 (pow.f64 g 3)))
16.2b
(cbrt.f64 (/.f64 (*.f64 (/.f64 -1/2 a) (*.f64 2 (pow.f64 g 3))) (fma.f64 g g 0)))
36.9b
(/.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)

series19.0ms (0.2%)

Counts
4 → 48
Calls

21 calls:

TimeVariablePointExpression
4.0ms
g
@inf
(/.f64 (*.f64 (/.f64 -1/2 a) (*.f64 2 (pow.f64 g 3))) (fma.f64 g g 0))
2.0ms
a
@0
(/.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))
1.0ms
g
@-inf
(/.f64 (*.f64 (/.f64 -1/2 a) (*.f64 2 (pow.f64 g 3))) (fma.f64 g g 0))
1.0ms
a
@inf
(/.f64 (*.f64 (/.f64 -1/2 a) (*.f64 2 (pow.f64 g 3))) (fma.f64 g g 0))

rewrite105.0ms (0.9%)

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))))))

simplify82.0ms (0.7%)

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)

localize49.0ms (0.4%)

Local error

Found 4 expressions with local error:

NewErrorProgram
2.2b
(-.f64 (*.f64 g g) (*.f64 h h))
8.9b
(cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g)))
16.2b
(cbrt.f64 (/.f64 g a))
26.5b
(sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))
Compiler

Compiled 124 to 48 computations (61.3% saved)

localize58.0ms (0.5%)

Local error

Found 4 expressions with local error:

NewErrorProgram
2.2b
(-.f64 (*.f64 g g) (*.f64 h h))
8.4b
(cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a)))
26.5b
(sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))
27.6b
(sqrt.f64 (*.f64 h (neg.f64 h)))
Compiler

Compiled 161 to 43 computations (73.3% saved)

eval1.0s (8.7%)

Compiler

Compiled 20205 to 10860 computations (46.3% saved)

prune154.0ms (1.3%)

Pruning

49 alts after pruning (43 fresh and 6 done)

PrunedKeptTotal
New59124615
Fresh281947
Picked101
Done268
Total62249671
Error
0.9b
Counts
671 → 49
Alt Table
Click to see full alt table
StatusErrorProgram
18.3b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (/.f64 (neg.f64 g) a)))
18.6b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 2) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 (/.f64 g a)))))
2.7b
(+.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)))))
54.8b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (+.f64 g (pow.f64 (exp.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)))))))) (/.f64 -1/2 a))))
43.8b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (*.f64 (/.f64 1 (/.f64 (cbrt.f64 a) (cbrt.f64 g))) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2))))
33.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 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
50.4b
(+.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))))))))
8.0b
(+.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)))
43.8b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (*.f64 (/.f64 (cbrt.f64 g) (cbrt.f64 a)) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2))))
34.0b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (fma.f64 (cbrt.f64 g) (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (/.f64 -1/2 a))))
8.0b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (/.f64 1 (/.f64 (pow.f64 (cbrt.f64 g) 2) (*.f64 (cbrt.f64 (/.f64 -1 a)) g))))
54.8b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (+.f64 g (pow.f64 (pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))) 2)) (cbrt.f64 (pow.f64 (cbrt.f64 (log.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))) 2))) (cbrt.f64 (cbrt.f64 (log.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))))) (/.f64 -1/2 a))))
18.3b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (pow.f64 (cbrt.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g)) 3)))
44.6b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (-.f64 (*.f64 (/.f64 1/2 g) (*.f64 h h)) g) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
18.2b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (+.f64 g g) (/.f64 -1/2 a))))
2.6b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (/.f64 (cbrt.f64 g) (cbrt.f64 (neg.f64 a))))
51.0b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (sqrt.f64 (cbrt.f64 (pow.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g) 2))))
16.4b
(+.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))))))
18.5b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 (/.f64 g a)) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2))))
63.2b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (/.f64 (+.f64 g g) (cbrt.f64 a)))
33.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 g g (*.f64 h (neg.f64 h))))) (/.f64 -1/2 a))))
18.2b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (/.f64 -1/2 a) (/.f64 1 (*.f64 1/2 (/.f64 1 g))))))
40.5b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) 9/2) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
53.8b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 g (/.f64 -1/2 a))))
41.7b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (exp.f64 (*.f64 (log.f64 (cbrt.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))))
18.3b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) g) g))) (*.f64 (cbrt.f64 (/.f64 g a)) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2))))
63.2b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (/.f64 1 (cbrt.f64 (/.f64 a g))))
44.7b
(+.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))))
44.6b
(+.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))
8.0b
(+.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)))
45.1b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (pow.f64 (sqrt.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g)) 2/3))
48.9b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (fma.f64 (/.f64 (pow.f64 h 6) (pow.f64 g 5)) 1/16 (fma.f64 1/2 (*.f64 h (/.f64 h g)) (fma.f64 1/2 (/.f64 (*.f64 (pow.f64 h 8) 5/64) (pow.f64 g 7)) (*.f64 (/.f64 1/8 (pow.f64 g 3)) (pow.f64 h 4))))) (/.f64 -1/2 a))))
38.4b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (/.f64 (/.f64 -1 a) g) (*.f64 g g))))
18.8b
(+.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))
53.4b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (*.f64 (*.f64 (cbrt.f64 g) (pow.f64 (/.f64 1 a) 1/3)) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2))))
49.5b
(+.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 (neg.f64 g)) (/.f64 -1/2 a))))
48.9b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.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 -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))))
31.2b
(+.f64 (*.f64 (cbrt.f64 (/.f64 1/2 a)) (cbrt.f64 (-.f64 (hypot.f64 g 0) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
40.0b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (pow.f64 (/.f64 (*.f64 1 g) a) 1/3) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2))))
54.8b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (+.f64 g (pow.f64 (pow.f64 (exp.f64 1) (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)))))))) (/.f64 -1/2 a))))
18.3b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (pow.f64 (*.f64 (*.f64 a -2) (*.f64 1/2 (/.f64 1 g))) -1)))
61.2b
(+.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))))
45.0b
(+.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)))
43.9b
(+.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) (/.f64 (cbrt.f64 g) (cbrt.f64 a)))))
45.1b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (pow.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g) 1/3))
46.2b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (*.f64 (*.f64 h h) (/.f64 1/2 g)) (/.f64 -1/2 a))))
60.1b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (+.f64 g g) (cbrt.f64 (/.f64 -1/2 a))))
49.0b
(+.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))))
Compiler

Compiled 1374 to 963 computations (29.9% saved)

regimes666.0ms (5.6%)

Counts
113 → 1
Calls
Call 1
Inputs
(+.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))) (cbrt.f64 (*.f64 g (/.f64 -1/2 a))))
(+.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))) (pow.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g) 1/3))
(+.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))) (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 -1/2 a) (/.f64 1 (*.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 g) (cbrt.f64 (neg.f64 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (pow.f64 (sqrt.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g)) 2/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 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))) (cbrt.f64 (pow.f64 (*.f64 (*.f64 a -2) (*.f64 1/2 (/.f64 1 g))) -1)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) (/.f64 -1/2 a))))
(+.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 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (*.f64 (*.f64 h h) (/.f64 1/2 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 (-.f64 (*.f64 (/.f64 1/2 g) (*.f64 h 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 (pow.f64 (/.f64 (+.f64 g g) (cbrt.f64 a)) 2)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 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 g g))) (*.f64 (cbrt.f64 2) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 (/.f64 g a)))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 (/.f64 g a)) (cbrt.f64 2))))
(+.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))) (/.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))) (cbrt.f64 (pow.f64 (cbrt.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g)) 3)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (sqrt.f64 (cbrt.f64 (pow.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g) 2))))
(+.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))) (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 1 (/.f64 (pow.f64 (cbrt.f64 g) 2) (*.f64 (cbrt.f64 (/.f64 -1 a)) g))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (pow.f64 (/.f64 (*.f64 1 g) a) 1/3) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2))))
(+.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 (exp.f64 (*.f64 (*.f64 -2 (log.f64 (/.f64 -1 g))) 1/2))) (/.f64 -1/2 a))))
(+.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 (pow.f64 (cbrt.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 (pow.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/6) 3)) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (+.f64 g (pow.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 3/2) 1/3)) (/.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 (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 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) 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 (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 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 (/.f64 -1/2 a)) (cbrt.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))))
(+.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 g) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (fma.f64 (sqrt.f64 (+.f64 g h)) (sqrt.f64 (-.f64 g h)) g) (/.f64 -1/2 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 (*.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 (neg.f64 g)) (/.f64 -1/2 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 (neg.f64 g)) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) 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 g g))) (cbrt.f64 (*.f64 (fma.f64 (cbrt.f64 g) (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h 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))) (*.f64 (cbrt.f64 (/.f64 g a)) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (fma.f64 -1/2 (*.f64 h (/.f64 h g)) 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 (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 (*.f64 (cbrt.f64 (/.f64 1/2 a)) (cbrt.f64 (-.f64 (hypot.f64 g 0) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
(+.f64 (/.f64 (cbrt.f64 (*.f64 1/2 (-.f64 (hypot.f64 g 0) 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 h)))))
(+.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 h)) -1/2)) (cbrt.f64 a)))
(+.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 (neg.f64 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 (fma.f64 g g (*.f64 h (neg.f64 h))))) (/.f64 -1/2 a))))
(+.f64 (*.f64 (cbrt.f64 (*.f64 1/2 (/.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g) a))) 1) (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 (*.f64 (sqrt.f64 (+.f64 g h)) (sqrt.f64 (-.f64 g 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))) (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 (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 (pow.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 3/2) 1/3)) (/.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 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.f64 g (pow.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/4) 2)) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (*.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/6) (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 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 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g 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 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 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (*.f64 (/.f64 (cbrt.f64 g) (cbrt.f64 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) (/.f64 (cbrt.f64 g) (cbrt.f64 a)))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (*.f64 (/.f64 1 (/.f64 (cbrt.f64 a) (cbrt.f64 g))) (*.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))) (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 (+.f64 g (hypot.f64 g h)) (/.f64 -1/2 a)))) 3))
(+.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) (*.f64 (cbrt.f64 g) (cbrt.f64 (/.f64 1 a))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (*.f64 (*.f64 (cbrt.f64 g) (pow.f64 (/.f64 1 a) 1/3)) (*.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) (*.f64 (cbrt.f64 g) (pow.f64 (/.f64 1 a) 1/3)))))
(+.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 (*.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 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) 9/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 (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 g g))) (cbrt.f64 (*.f64 (fma.f64 (exp.f64 (*.f64 1/6 (log.f64 (-.f64 (*.f64 g g) (*.f64 h h))))) (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (exp.f64 (*.f64 (log.f64 (cbrt.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) (fma.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/6) (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) (neg.f64 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 -1/2) (*.f64 (cbrt.f64 2) (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 g a))) 3))))
(+.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) (-.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 (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 1/2 (/.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g) a)))) 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 (pow.f64 (exp.f64 (*.f64 (log.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 1/3)) 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 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 (fma.f64 (*.f64 g (pow.f64 (cbrt.f64 g) 2)) (cbrt.f64 g) (*.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))) (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 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.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 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 (+.f64 g (hypot.f64 g h)) (/.f64 -1/2 a)))) 2) (cbrt.f64 (cbrt.f64 (*.f64 (+.f64 g (hypot.f64 g h)) (/.f64 -1/2 a))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (fma.f64 1/3 (/.f64 (*.f64 (cbrt.f64 -1/2) (cbrt.f64 (*.f64 (/.f64 a g) (/.f64 a g)))) (/.f64 (pow.f64 (cbrt.f64 2) 2) (*.f64 (*.f64 h h) (*.f64 (/.f64 1 (*.f64 g a)) -1/2)))) (*.f64 (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)) (cbrt.f64 (/.f64 g a)))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (fma.f64 (/.f64 (pow.f64 h 6) (pow.f64 g 5)) 1/16 (fma.f64 1/2 (*.f64 h (/.f64 h g)) (fma.f64 1/2 (/.f64 (*.f64 (pow.f64 h 8) 5/64) (pow.f64 g 7)) (*.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 g g))) (cbrt.f64 (*.f64 (+.f64 g (pow.f64 (exp.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)))))))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (+.f64 g (pow.f64 (pow.f64 (exp.f64 1) (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)))))))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (+.f64 g (pow.f64 (pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))) 2)) (cbrt.f64 (pow.f64 (cbrt.f64 (log.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))) 2))) (cbrt.f64 (cbrt.f64 (log.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))))) (/.f64 -1/2 a))))
Outputs
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (/.f64 (cbrt.f64 g) (cbrt.f64 (neg.f64 a))))
Calls

7 calls:

110.0ms
(*.f64 2 a)
82.0ms
a
80.0ms
g
80.0ms
h
71.0ms
(/.f64 1 (*.f64 2 a))
Results
ErrorSegmentsBranch
2.6b1g
2.6b1h
2.6b1a
2.6b1(+.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.6b1(/.f64 1 (*.f64 2 a))
2.6b1(*.f64 2 a)
2.6b1(*.f64 h h)
Compiler

Compiled 3195 to 1504 computations (52.9% saved)

regimes39.0ms (0.3%)

Counts
13 → 1
Calls
Call 1
Inputs
(+.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))) (cbrt.f64 (*.f64 g (/.f64 -1/2 a))))
(+.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))) (pow.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g) 1/3))
(+.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))) (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 -1/2 a) (/.f64 1 (*.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:

12.0ms
g
8.0ms
h
8.0ms
a
5.0ms
(*.f64 h h)
Results
ErrorSegmentsBranch
16.4b1g
16.4b1h
16.4b1a
16.4b1(*.f64 h h)
Compiler

Compiled 252 to 159 computations (36.9% saved)

regimes26.0ms (0.2%)

Counts
10 → 1
Calls
Call 1
Inputs
(+.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))) (cbrt.f64 (*.f64 g (/.f64 -1/2 a))))
(+.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))) (pow.f64 (*.f64 (/.f64 (/.f64 -1 a) 1) g) 1/3))
(+.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))) (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:

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

Compiled 183 to 112 computations (38.8% saved)

regimes17.0ms (0.1%)

Accuracy

Total -45.1b remaining (-246.8%)

Threshold costs -45.1b (-246.8%)

Counts
5 → 1
Calls
Call 1
Inputs
(+.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))) (cbrt.f64 (*.f64 g (/.f64 -1/2 a))))
(+.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:

5.0ms
h
4.0ms
a
4.0ms
g
Results
ErrorSegmentsBranch
18.3b1g
18.3b1h
18.3b1a
Compiler

Compiled 91 to 56 computations (38.5% saved)

simplify9.0ms (0.1%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
032104
151104
258104
362104
463104
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (/.f64 (cbrt.f64 g) (cbrt.f64 (neg.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)))
Outputs
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (/.f64 (cbrt.f64 g) (cbrt.f64 (neg.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)))
Compiler

Compiled 79 to 58 computations (26.6% saved)

soundness307.0ms (2.6%)

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
06144
110144
217144
323144
429144
537144
645144
755144
863144
977144
Stop Event
saturated
node limit
Compiler

Compiled 568 to 336 computations (40.8% saved)

end45.0ms (0.4%)

Compiler

Compiled 70 to 46 computations (34.3% saved)

Profiling

Loading profile data...