Details

Time bar (total: 8.8s)

analyze328.0ms (3.7%)

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.1s (23.6%)

Results
1.8s8256×body256valid
256.0ms1453×body256invalid
Bogosity

preprocess83.0ms (0.9%)

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)

simplify137.0ms (1.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
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
39.1b
Counts
3 → 1
Alt Table
Click to see full alt table
StatusErrorProgram
39.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 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
Compiler

Compiled 34 to 18 computations (47.1% saved)

localize89.0ms (1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
4.2b
(-.f64 (*.f64 g g) (*.f64 h h))
8.3b
(cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a)))
8.7b
(cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g)))
34.0b
(sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))
Compiler

Compiled 144 to 38 computations (73.6% saved)

series46.0ms (0.5%)

Counts
4 → 60
Calls

30 calls:

TimeVariablePointExpression
12.0ms
g
@0
(cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g)))
4.0ms
h
@0
(cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a)))
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
(-.f64 (*.f64 g g) (*.f64 h h))
2.0ms
g
@0
(cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a)))

rewrite109.0ms (1.2%)

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

simplify109.0ms (1.2%)

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

eval215.0ms (2.4%)

Compiler

Compiled 15405 to 6917 computations (55.1% saved)

prune104.0ms (1.2%)

Pruning

24 alts after pruning (24 fresh and 0 done)

PrunedKeptTotal
New34424368
Fresh000
Picked101
Done000
Total34524369
Error
37.2b
Counts
369 → 24
Alt Table
Click to see full alt table
StatusErrorProgram
52.0b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.f64 g (pow.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 3/2) 1/3)) (/.f64 -1/2 a))))
51.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 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
54.4b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (pow.f64 (cbrt.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) 3) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
51.1b
(+.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))))
52.2b
(+.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))))
55.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))))
52.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 (*.f64 (sqrt.f64 (+.f64 g h)) (sqrt.f64 (-.f64 g h)))) (/.f64 -1/2 a))))
50.2b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.f64 g (neg.f64 g)) (/.f64 -1/2 a))))
49.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))))
57.8b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (*.f64 (pow.f64 (/.f64 (*.f64 1 g) a) 1/3) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2))))
52.3b
(+.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))))
46.3b
(+.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))))
50.0b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.f64 g (cbrt.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 3/2))) (/.f64 -1/2 a))))
43.1b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 3)) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
51.5b
(+.f64 (/.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))))
55.2b
(+.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))))
43.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 (pow.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 3))) (/.f64 -1/2 a))))
55.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 (exp.f64 (log.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))) (/.f64 -1/2 a))))
51.2b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (pow.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 3/2) 1/3) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
51.3b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (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)))
43.0b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (fma.f64 (pow.f64 (cbrt.f64 g) 2) (*.f64 (cbrt.f64 g) 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))))
49.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)))))
45.8b
(+.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))))
54.9b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (sqrt.f64 (cbrt.f64 (pow.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (/.f64 1/2 a)) 2))))
Compiler

Compiled 1654 to 1086 computations (34.3% saved)

localize74.0ms (0.8%)

Local error

Found 4 expressions with local error:

NewErrorProgram
10.3b
(cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (fma.f64 (pow.f64 (cbrt.f64 g) 2) (*.f64 (cbrt.f64 g) g) (*.f64 h (neg.f64 h)))) g)))
12.4b
(-.f64 (sqrt.f64 (fma.f64 (pow.f64 (cbrt.f64 g) 2) (*.f64 (cbrt.f64 g) g) (*.f64 h (neg.f64 h)))) g)
34.0b
(sqrt.f64 (fma.f64 (pow.f64 (cbrt.f64 g) 2) (*.f64 (cbrt.f64 g) g) (*.f64 h (neg.f64 h))))
34.0b
(sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))
Compiler

Compiled 212 to 71 computations (66.5% saved)

series27.0ms (0.3%)

Counts
3 → 42
Calls

21 calls:

TimeVariablePointExpression
5.0ms
h
@0
(cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (fma.f64 (pow.f64 (cbrt.f64 g) 2) (*.f64 (cbrt.f64 g) g) (*.f64 h (neg.f64 h)))) g)))
4.0ms
h
@0
(sqrt.f64 (fma.f64 (pow.f64 (cbrt.f64 g) 2) (*.f64 (cbrt.f64 g) g) (*.f64 h (neg.f64 h))))
2.0ms
g
@inf
(cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (fma.f64 (pow.f64 (cbrt.f64 g) 2) (*.f64 (cbrt.f64 g) g) (*.f64 h (neg.f64 h)))) g)))
2.0ms
h
@inf
(cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (fma.f64 (pow.f64 (cbrt.f64 g) 2) (*.f64 (cbrt.f64 g) g) (*.f64 h (neg.f64 h)))) g)))
2.0ms
g
@0
(cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (fma.f64 (pow.f64 (cbrt.f64 g) 2) (*.f64 (cbrt.f64 g) g) (*.f64 h (neg.f64 h)))) g)))

rewrite150.0ms (1.7%)

Algorithm
batch-egg-rewrite
Rules
968×prod-diff_binary64
366×fma-def_binary64
274×expm1-udef_binary64
274×log1p-udef_binary64
236×log-pow_binary64
Iterations

Useful iterations: 2 (0.0ms)

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

simplify102.0ms (1.2%)

Algorithm
egg-herbie
Rules
845×fma-def_binary64
479×associate-/l*_binary64
460×*-commutative_binary64
398×unswap-sqr_binary64
316×fma-neg_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01921638
16361418
223051243
371111072
Stop Event
node limit
Counts
209 → 227
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 (pow.f64 1 1/6) g)
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 1 1/6) (/.f64 (pow.f64 h 2) g))) (*.f64 (pow.f64 1 1/6) g))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 1 1/6) (/.f64 (pow.f64 h 2) g))) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 1 1/6) (/.f64 (pow.f64 h 4) (pow.f64 g 3)))) (*.f64 (pow.f64 1 1/6) g)))
(+.f64 (*.f64 -1/16 (*.f64 (pow.f64 1 1/6) (/.f64 (pow.f64 h 6) (pow.f64 g 5)))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 1 1/6) (/.f64 (pow.f64 h 2) g))) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 1 1/6) (/.f64 (pow.f64 h 4) (pow.f64 g 3)))) (*.f64 (pow.f64 1 1/6) g))))
(*.f64 (sqrt.f64 -1) h)
(+.f64 (*.f64 (sqrt.f64 -1) h) (*.f64 1/2 (*.f64 (pow.f64 1 1/3) (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h)))))
(+.f64 (*.f64 (sqrt.f64 -1) h) (+.f64 (*.f64 -1/8 (*.f64 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3))) (pow.f64 1 1/3))) (*.f64 1/2 (*.f64 (pow.f64 1 1/3) (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))))))
(+.f64 (*.f64 1/16 (*.f64 (/.f64 (pow.f64 g 6) (*.f64 (pow.f64 (sqrt.f64 -1) 5) (pow.f64 h 5))) (pow.f64 1 1/3))) (+.f64 (*.f64 (sqrt.f64 -1) h) (+.f64 (*.f64 -1/8 (*.f64 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3))) (pow.f64 1 1/3))) (*.f64 1/2 (*.f64 (pow.f64 1 1/3) (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h)))))))
(*.f64 -1 (*.f64 (sqrt.f64 -1) h))
(+.f64 (*.f64 -1 (*.f64 (sqrt.f64 -1) h)) (*.f64 -1/2 (*.f64 (pow.f64 1 1/3) (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h)))))
(+.f64 (*.f64 -1 (*.f64 (sqrt.f64 -1) h)) (+.f64 (*.f64 1/8 (*.f64 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3))) (pow.f64 1 1/3))) (*.f64 -1/2 (*.f64 (pow.f64 1 1/3) (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))))))
(+.f64 (*.f64 -1 (*.f64 (sqrt.f64 -1) h)) (+.f64 (*.f64 -1/16 (*.f64 (/.f64 (pow.f64 g 6) (*.f64 (pow.f64 (sqrt.f64 -1) 5) (pow.f64 h 5))) (pow.f64 1 1/3))) (+.f64 (*.f64 1/8 (*.f64 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3))) (pow.f64 1 1/3))) (*.f64 -1/2 (*.f64 (pow.f64 1 1/3) (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h)))))))
(*.f64 (sqrt.f64 -1) h)
(+.f64 (*.f64 (sqrt.f64 -1) h) (*.f64 -1 g))
(*.f64 -1 g)
(+.f64 (*.f64 (sqrt.f64 -1) h) (*.f64 -1 g))
(*.f64 -1 g)
(+.f64 (*.f64 (sqrt.f64 -1) h) (*.f64 -1 g))
(-.f64 (*.f64 (pow.f64 1 1/6) g) g)
(-.f64 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 1 1/6) (/.f64 (pow.f64 h 2) g))) (*.f64 (pow.f64 1 1/6) g)) g)
(-.f64 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 1 1/6) (/.f64 (pow.f64 h 2) g))) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 1 1/6) (/.f64 (pow.f64 h 4) (pow.f64 g 3)))) (*.f64 (pow.f64 1 1/6) g))) g)
(-.f64 (+.f64 (*.f64 -1/16 (*.f64 (pow.f64 1 1/6) (/.f64 (pow.f64 h 6) (pow.f64 g 5)))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 1 1/6) (/.f64 (pow.f64 h 2) g))) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 1 1/6) (/.f64 (pow.f64 h 4) (pow.f64 g 3)))) (*.f64 (pow.f64 1 1/6) g)))) g)
(*.f64 (sqrt.f64 -1) h)
(+.f64 (*.f64 (sqrt.f64 -1) h) (*.f64 -1 g))
(+.f64 (*.f64 (sqrt.f64 -1) h) (+.f64 (*.f64 -1 g) (*.f64 1/2 (*.f64 (pow.f64 1 1/3) (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))))))
(+.f64 (*.f64 (sqrt.f64 -1) h) (+.f64 (*.f64 -1 g) (+.f64 (*.f64 -1/8 (*.f64 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3))) (pow.f64 1 1/3))) (*.f64 1/2 (*.f64 (pow.f64 1 1/3) (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h)))))))
(*.f64 -1 (*.f64 (sqrt.f64 -1) h))
(+.f64 (*.f64 -1 (*.f64 (sqrt.f64 -1) h)) (*.f64 -1 g))
(+.f64 (*.f64 -1 (*.f64 (sqrt.f64 -1) h)) (+.f64 (*.f64 -1 g) (*.f64 -1/2 (*.f64 (pow.f64 1 1/3) (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))))))
(+.f64 (*.f64 -1 (*.f64 (sqrt.f64 -1) h)) (+.f64 (*.f64 1/8 (*.f64 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3))) (pow.f64 1 1/3))) (+.f64 (*.f64 -1 g) (*.f64 -1/2 (*.f64 (pow.f64 1 1/3) (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h)))))))
(*.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 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 (*.f64 -1/9 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 7) (*.f64 (pow.f64 a 11) (pow.f64 h 7)))) 1/9) (*.f64 (cbrt.f64 1/2) (pow.f64 g 2)))) (*.f64 (pow.f64 (/.f64 (*.f64 (sqrt.f64 -1) (*.f64 1 h)) a) 1/3) (cbrt.f64 1/2))))
(+.f64 (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (pow.f64 h 2))) 1/3) (*.f64 (cbrt.f64 1/2) (*.f64 (pow.f64 g 3) (+.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/9 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (pow.f64 a 7) (pow.f64 h 2)))) 1/3) (pow.f64 (pow.f64 1 4) 1/9)))))))) (+.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 (*.f64 -1/9 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 7) (*.f64 (pow.f64 a 11) (pow.f64 h 7)))) 1/9) (*.f64 (cbrt.f64 1/2) (pow.f64 g 2)))) (*.f64 (pow.f64 (/.f64 (*.f64 (sqrt.f64 -1) (*.f64 1 h)) a) 1/3) (cbrt.f64 1/2)))))
(*.f64 (pow.f64 (/.f64 (*.f64 1 (-.f64 (*.f64 (pow.f64 1 1/6) g) g)) a) 1/3) (cbrt.f64 1/2))
(+.f64 (*.f64 (pow.f64 (/.f64 (*.f64 1 (-.f64 (*.f64 (pow.f64 1 1/6) g) g)) a) 1/3) (cbrt.f64 1/2)) (*.f64 -1/6 (*.f64 (pow.f64 (/.f64 1 (*.f64 a (pow.f64 (-.f64 (*.f64 (pow.f64 1 1/6) g) g) 2))) 1/3) (/.f64 (*.f64 (cbrt.f64 1/2) (pow.f64 h 2)) g))))
(+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (pow.f64 (-.f64 (*.f64 (pow.f64 1 1/6) g) g) 2)) 1/3) (*.f64 (-.f64 (*.f64 -1/8 (*.f64 (pow.f64 1 1/6) (/.f64 1 (*.f64 a (pow.f64 g 3))))) (*.f64 1/12 (/.f64 1 (*.f64 a (*.f64 (pow.f64 g 2) (-.f64 (*.f64 (pow.f64 1 1/6) g) g)))))) (*.f64 (cbrt.f64 1/2) (pow.f64 h 4))))) (+.f64 (*.f64 (pow.f64 (/.f64 (*.f64 1 (-.f64 (*.f64 (pow.f64 1 1/6) g) g)) a) 1/3) (cbrt.f64 1/2)) (*.f64 -1/6 (*.f64 (pow.f64 (/.f64 1 (*.f64 a (pow.f64 (-.f64 (*.f64 (pow.f64 1 1/6) g) g) 2))) 1/3) (/.f64 (*.f64 (cbrt.f64 1/2) (pow.f64 h 2)) g)))))
(+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (pow.f64 (-.f64 (*.f64 (pow.f64 1 1/6) g) g) 2)) 1/3) (*.f64 (-.f64 (*.f64 -1/8 (*.f64 (pow.f64 1 1/6) (/.f64 1 (*.f64 a (pow.f64 g 3))))) (*.f64 1/12 (/.f64 1 (*.f64 a (*.f64 (pow.f64 g 2) (-.f64 (*.f64 (pow.f64 1 1/6) g) g)))))) (*.f64 (cbrt.f64 1/2) (pow.f64 h 4))))) (+.f64 (*.f64 (pow.f64 (/.f64 (*.f64 1 (-.f64 (*.f64 (pow.f64 1 1/6) g) g)) a) 1/3) (cbrt.f64 1/2)) (+.f64 (*.f64 1/3 (*.f64 (*.f64 (-.f64 (+.f64 (*.f64 1/216 (/.f64 1 (*.f64 a (*.f64 (pow.f64 g 3) (pow.f64 (-.f64 (*.f64 (pow.f64 1 1/6) g) g) 2))))) (*.f64 -1/16 (*.f64 (pow.f64 1 1/6) (/.f64 1 (*.f64 a (pow.f64 g 5)))))) (*.f64 -1/3 (/.f64 (-.f64 (*.f64 -1/8 (*.f64 (pow.f64 1 1/6) (/.f64 1 (*.f64 a (pow.f64 g 3))))) (*.f64 1/12 (/.f64 1 (*.f64 a (*.f64 (pow.f64 g 2) (-.f64 (*.f64 (pow.f64 1 1/6) g) g)))))) (*.f64 g (-.f64 (*.f64 (pow.f64 1 1/6) g) g))))) (*.f64 (cbrt.f64 1/2) (pow.f64 h 6))) (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (pow.f64 (-.f64 (*.f64 (pow.f64 1 1/6) g) g) 2)) 1/3))) (*.f64 -1/6 (*.f64 (pow.f64 (/.f64 1 (*.f64 a (pow.f64 (-.f64 (*.f64 (pow.f64 1 1/6) g) g) 2))) 1/3) (/.f64 (*.f64 (cbrt.f64 1/2) (pow.f64 h 2)) g))))))
Outputs
(*.f64 (sqrt.f64 -1) h)
(*.f64 (sqrt.f64 -1) h)
(*.f64 (sqrt.f64 -1) h)
(*.f64 (sqrt.f64 -1) h)
(*.f64 (pow.f64 1 1/6) g)
(*.f64 1 g)
g
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 1 1/6) (/.f64 (pow.f64 h 2) g))) (*.f64 (pow.f64 1 1/6) g))
(+.f64 (*.f64 1 g) (*.f64 -1/2 (/.f64 (*.f64 h h) 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 1 1/6) (/.f64 (pow.f64 h 2) g))) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 1 1/6) (/.f64 (pow.f64 h 4) (pow.f64 g 3)))) (*.f64 (pow.f64 1 1/6) g)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 h h) g)) (+.f64 (*.f64 1 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 (/.f64 h g) h) (fma.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) g))
(+.f64 (*.f64 -1/16 (*.f64 (pow.f64 1 1/6) (/.f64 (pow.f64 h 6) (pow.f64 g 5)))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 1 1/6) (/.f64 (pow.f64 h 2) g))) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 1 1/6) (/.f64 (pow.f64 h 4) (pow.f64 g 3)))) (*.f64 (pow.f64 1 1/6) g))))
(+.f64 (+.f64 (*.f64 -1/2 (/.f64 (*.f64 h h) g)) (+.f64 (*.f64 1 g) (*.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))))) (*.f64 -1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5))))
(fma.f64 -1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5)) (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 (/.f64 h 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)))
(*.f64 (sqrt.f64 -1) h)
(+.f64 (*.f64 (sqrt.f64 -1) h) (*.f64 1/2 (*.f64 (pow.f64 1 1/3) (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h)))))
(fma.f64 (sqrt.f64 -1) h (*.f64 1/2 (/.f64 (*.f64 g g) (*.f64 (sqrt.f64 -1) h))))
(fma.f64 1/2 (/.f64 (/.f64 g (/.f64 (sqrt.f64 -1) g)) h) (*.f64 (sqrt.f64 -1) h))
(fma.f64 (sqrt.f64 -1) h (/.f64 1/2 (/.f64 h (/.f64 g (/.f64 (sqrt.f64 -1) g)))))
(+.f64 (*.f64 (sqrt.f64 -1) h) (+.f64 (*.f64 -1/8 (*.f64 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3))) (pow.f64 1 1/3))) (*.f64 1/2 (*.f64 (pow.f64 1 1/3) (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))))))
(fma.f64 (sqrt.f64 -1) h (fma.f64 -1/8 (*.f64 1 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3)))) (*.f64 1/2 (/.f64 (*.f64 g g) (*.f64 (sqrt.f64 -1) h)))))
(fma.f64 (sqrt.f64 -1) h (fma.f64 -1/8 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 h 3) (neg.f64 (sqrt.f64 -1)))) (*.f64 1/2 (/.f64 (/.f64 g (/.f64 (sqrt.f64 -1) g)) h))))
(fma.f64 1/2 (/.f64 g (/.f64 (*.f64 (sqrt.f64 -1) h) g)) (fma.f64 (sqrt.f64 -1) h (/.f64 (*.f64 -1/8 (/.f64 (pow.f64 g 4) (pow.f64 h 3))) (neg.f64 (sqrt.f64 -1)))))
(+.f64 (*.f64 1/16 (*.f64 (/.f64 (pow.f64 g 6) (*.f64 (pow.f64 (sqrt.f64 -1) 5) (pow.f64 h 5))) (pow.f64 1 1/3))) (+.f64 (*.f64 (sqrt.f64 -1) h) (+.f64 (*.f64 -1/8 (*.f64 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3))) (pow.f64 1 1/3))) (*.f64 1/2 (*.f64 (pow.f64 1 1/3) (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h)))))))
(fma.f64 1/16 (*.f64 1 (/.f64 (pow.f64 g 6) (*.f64 (pow.f64 (sqrt.f64 -1) 5) (pow.f64 h 5)))) (fma.f64 (sqrt.f64 -1) h (fma.f64 -1/8 (*.f64 1 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3)))) (*.f64 1/2 (/.f64 (*.f64 g g) (*.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))) (fma.f64 (sqrt.f64 -1) h (fma.f64 -1/8 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 h 3) (neg.f64 (sqrt.f64 -1)))) (*.f64 1/2 (/.f64 (/.f64 g (/.f64 (sqrt.f64 -1) g)) h)))))
(fma.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 (sqrt.f64 -1) h (/.f64 (*.f64 -1/8 (/.f64 (pow.f64 g 4) (pow.f64 h 3))) (neg.f64 (sqrt.f64 -1))))))
(*.f64 -1 (*.f64 (sqrt.f64 -1) h))
(neg.f64 (*.f64 (sqrt.f64 -1) h))
(*.f64 (sqrt.f64 -1) (neg.f64 h))
(+.f64 (*.f64 -1 (*.f64 (sqrt.f64 -1) h)) (*.f64 -1/2 (*.f64 (pow.f64 1 1/3) (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h)))))
(fma.f64 -1 (*.f64 (sqrt.f64 -1) h) (*.f64 -1/2 (/.f64 (*.f64 g g) (*.f64 (sqrt.f64 -1) h))))
(-.f64 (*.f64 -1/2 (/.f64 (/.f64 g (/.f64 (sqrt.f64 -1) g)) h)) (*.f64 (sqrt.f64 -1) h))
(-.f64 (/.f64 -1/2 (/.f64 h (/.f64 g (/.f64 (sqrt.f64 -1) g)))) (*.f64 (sqrt.f64 -1) h))
(+.f64 (*.f64 -1 (*.f64 (sqrt.f64 -1) h)) (+.f64 (*.f64 1/8 (*.f64 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3))) (pow.f64 1 1/3))) (*.f64 -1/2 (*.f64 (pow.f64 1 1/3) (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))))))
(fma.f64 -1 (*.f64 (sqrt.f64 -1) h) (fma.f64 1/8 (*.f64 1 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3)))) (*.f64 -1/2 (/.f64 (*.f64 g g) (*.f64 (sqrt.f64 -1) h)))))
(-.f64 (fma.f64 -1/2 (/.f64 (/.f64 g (/.f64 (sqrt.f64 -1) g)) h) (/.f64 (*.f64 (pow.f64 g 4) 1/8) (*.f64 (pow.f64 h 3) (neg.f64 (sqrt.f64 -1))))) (*.f64 (sqrt.f64 -1) h))
(fma.f64 -1/2 (/.f64 g (/.f64 (*.f64 (sqrt.f64 -1) h) g)) (-.f64 (*.f64 (/.f64 (pow.f64 g 4) (*.f64 (sqrt.f64 -1) (neg.f64 (pow.f64 h 3)))) 1/8) (*.f64 (sqrt.f64 -1) h)))
(+.f64 (*.f64 -1 (*.f64 (sqrt.f64 -1) h)) (+.f64 (*.f64 -1/16 (*.f64 (/.f64 (pow.f64 g 6) (*.f64 (pow.f64 (sqrt.f64 -1) 5) (pow.f64 h 5))) (pow.f64 1 1/3))) (+.f64 (*.f64 1/8 (*.f64 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3))) (pow.f64 1 1/3))) (*.f64 -1/2 (*.f64 (pow.f64 1 1/3) (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h)))))))
(fma.f64 -1 (*.f64 (sqrt.f64 -1) h) (fma.f64 -1/16 (*.f64 1 (/.f64 (pow.f64 g 6) (*.f64 (pow.f64 (sqrt.f64 -1) 5) (pow.f64 h 5)))) (fma.f64 1/8 (*.f64 1 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3)))) (*.f64 -1/2 (/.f64 (*.f64 g g) (*.f64 (sqrt.f64 -1) h))))))
(-.f64 (fma.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 (/.f64 (sqrt.f64 -1) g)) h) (/.f64 (*.f64 (pow.f64 g 4) 1/8) (*.f64 (pow.f64 h 3) (neg.f64 (sqrt.f64 -1)))))) (*.f64 (sqrt.f64 -1) h))
(-.f64 (fma.f64 -1/2 (/.f64 g (/.f64 (*.f64 (sqrt.f64 -1) h) g)) (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 (sqrt.f64 -1) (neg.f64 (pow.f64 h 3)))) 1/8))) (*.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))) (fma.f64 -1/2 (/.f64 g (/.f64 (*.f64 (sqrt.f64 -1) h) g)) (-.f64 (*.f64 (/.f64 (pow.f64 g 4) (*.f64 (sqrt.f64 -1) (neg.f64 (pow.f64 h 3)))) 1/8) (*.f64 (sqrt.f64 -1) h))))
(*.f64 (sqrt.f64 -1) h)
(+.f64 (*.f64 (sqrt.f64 -1) h) (*.f64 -1 g))
(fma.f64 (sqrt.f64 -1) h (neg.f64 g))
(-.f64 (*.f64 (sqrt.f64 -1) h) g)
(*.f64 -1 g)
(neg.f64 g)
(+.f64 (*.f64 (sqrt.f64 -1) h) (*.f64 -1 g))
(fma.f64 (sqrt.f64 -1) h (neg.f64 g))
(-.f64 (*.f64 (sqrt.f64 -1) h) g)
(*.f64 -1 g)
(neg.f64 g)
(+.f64 (*.f64 (sqrt.f64 -1) h) (*.f64 -1 g))
(fma.f64 (sqrt.f64 -1) h (neg.f64 g))
(-.f64 (*.f64 (sqrt.f64 -1) h) g)
(-.f64 (*.f64 (pow.f64 1 1/6) g) g)
(-.f64 (*.f64 1 g) g)
(-.f64 g g)
0
(-.f64 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 1 1/6) (/.f64 (pow.f64 h 2) g))) (*.f64 (pow.f64 1 1/6) g)) g)
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 h h) g)) (-.f64 (*.f64 1 g) g))
(-.f64 (fma.f64 -1/2 (/.f64 h (/.f64 g h)) g) g)
(fma.f64 -1/2 (*.f64 (/.f64 h g) h) 0)
(/.f64 (*.f64 h -1/2) (/.f64 g h))
(-.f64 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 1 1/6) (/.f64 (pow.f64 h 2) g))) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 1 1/6) (/.f64 (pow.f64 h 4) (pow.f64 g 3)))) (*.f64 (pow.f64 1 1/6) g))) g)
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 h h) g)) (-.f64 (+.f64 (*.f64 1 g) (*.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))) g))
(-.f64 (fma.f64 -1/2 (/.f64 h (/.f64 g h)) (fma.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) g)) g)
(fma.f64 -1/2 (*.f64 (/.f64 h g) h) (fma.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) 0))
(fma.f64 -1/2 (*.f64 (/.f64 h g) h) (/.f64 -1/8 (/.f64 (pow.f64 g 3) (pow.f64 h 4))))
(-.f64 (+.f64 (*.f64 -1/16 (*.f64 (pow.f64 1 1/6) (/.f64 (pow.f64 h 6) (pow.f64 g 5)))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 1 1/6) (/.f64 (pow.f64 h 2) g))) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 1 1/6) (/.f64 (pow.f64 h 4) (pow.f64 g 3)))) (*.f64 (pow.f64 1 1/6) g)))) g)
(+.f64 (*.f64 -1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 h h) g)) (-.f64 (+.f64 (*.f64 1 g) (*.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))) g)))
(-.f64 (fma.f64 -1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5)) (fma.f64 -1/2 (/.f64 h (/.f64 g h)) (fma.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) g))) g)
(fma.f64 -1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5)) (fma.f64 -1/2 (*.f64 (/.f64 h g) h) (fma.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) 0)))
(fma.f64 -1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5)) (fma.f64 -1/2 (*.f64 (/.f64 h g) h) (/.f64 -1/8 (/.f64 (pow.f64 g 3) (pow.f64 h 4)))))
(*.f64 (sqrt.f64 -1) h)
(+.f64 (*.f64 (sqrt.f64 -1) h) (*.f64 -1 g))
(fma.f64 (sqrt.f64 -1) h (neg.f64 g))
(-.f64 (*.f64 (sqrt.f64 -1) h) g)
(+.f64 (*.f64 (sqrt.f64 -1) h) (+.f64 (*.f64 -1 g) (*.f64 1/2 (*.f64 (pow.f64 1 1/3) (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))))))
(fma.f64 (sqrt.f64 -1) h (fma.f64 -1 g (*.f64 1/2 (/.f64 (*.f64 g g) (*.f64 (sqrt.f64 -1) h)))))
(fma.f64 (sqrt.f64 -1) h (-.f64 (*.f64 1/2 (/.f64 (/.f64 g (/.f64 (sqrt.f64 -1) g)) h)) g))
(-.f64 (fma.f64 (sqrt.f64 -1) h (/.f64 1/2 (/.f64 h (/.f64 g (/.f64 (sqrt.f64 -1) g))))) g)
(+.f64 (*.f64 (sqrt.f64 -1) h) (+.f64 (*.f64 -1 g) (+.f64 (*.f64 -1/8 (*.f64 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3))) (pow.f64 1 1/3))) (*.f64 1/2 (*.f64 (pow.f64 1 1/3) (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h)))))))
(fma.f64 (sqrt.f64 -1) h (fma.f64 -1 g (fma.f64 -1/8 (*.f64 1 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3)))) (*.f64 1/2 (/.f64 (*.f64 g g) (*.f64 (sqrt.f64 -1) h))))))
(fma.f64 (sqrt.f64 -1) h (-.f64 (fma.f64 -1/8 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 h 3) (neg.f64 (sqrt.f64 -1)))) (*.f64 1/2 (/.f64 (/.f64 g (/.f64 (sqrt.f64 -1) g)) h))) g))
(-.f64 (fma.f64 1/2 (/.f64 g (/.f64 (*.f64 (sqrt.f64 -1) h) g)) (fma.f64 (sqrt.f64 -1) h (/.f64 (*.f64 -1/8 (/.f64 (pow.f64 g 4) (pow.f64 h 3))) (neg.f64 (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)) (*.f64 -1 g))
(*.f64 -1 (+.f64 (*.f64 (sqrt.f64 -1) h) g))
(neg.f64 (fma.f64 (sqrt.f64 -1) h g))
(+.f64 (*.f64 -1 (*.f64 (sqrt.f64 -1) h)) (+.f64 (*.f64 -1 g) (*.f64 -1/2 (*.f64 (pow.f64 1 1/3) (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))))))
(fma.f64 -1 (*.f64 (sqrt.f64 -1) h) (fma.f64 -1 g (*.f64 -1/2 (/.f64 (*.f64 g g) (*.f64 (sqrt.f64 -1) h)))))
(fma.f64 -1 (fma.f64 (sqrt.f64 -1) h g) (*.f64 -1/2 (/.f64 (/.f64 g (/.f64 (sqrt.f64 -1) g)) h)))
(-.f64 (/.f64 -1/2 (/.f64 h (/.f64 g (/.f64 (sqrt.f64 -1) g)))) (fma.f64 (sqrt.f64 -1) h g))
(+.f64 (*.f64 -1 (*.f64 (sqrt.f64 -1) h)) (+.f64 (*.f64 1/8 (*.f64 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3))) (pow.f64 1 1/3))) (+.f64 (*.f64 -1 g) (*.f64 -1/2 (*.f64 (pow.f64 1 1/3) (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h)))))))
(fma.f64 -1 (*.f64 (sqrt.f64 -1) h) (fma.f64 1/8 (*.f64 1 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3)))) (fma.f64 -1 g (*.f64 -1/2 (/.f64 (*.f64 g g) (*.f64 (sqrt.f64 -1) h))))))
(-.f64 (fma.f64 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 h 3) (neg.f64 (sqrt.f64 -1)))) 1/8 (fma.f64 -1/2 (/.f64 (/.f64 g (/.f64 (sqrt.f64 -1) g)) h) (neg.f64 g))) (*.f64 (sqrt.f64 -1) h))
(fma.f64 (/.f64 (pow.f64 g 4) (*.f64 (sqrt.f64 -1) (neg.f64 (pow.f64 h 3)))) 1/8 (-.f64 (/.f64 -1/2 (/.f64 h (/.f64 g (/.f64 (sqrt.f64 -1) g)))) (fma.f64 (sqrt.f64 -1) h g)))
(*.f64 (pow.f64 (/.f64 (*.f64 (sqrt.f64 -1) (*.f64 1 h)) a) 1/3) (cbrt.f64 1/2))
(*.f64 (cbrt.f64 (/.f64 (*.f64 (sqrt.f64 -1) h) a)) (cbrt.f64 1/2))
(*.f64 (cbrt.f64 (/.f64 (sqrt.f64 -1) (/.f64 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 (*.f64 (sqrt.f64 -1) h) a)) (cbrt.f64 1/2)))
(fma.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 (/.f64 (sqrt.f64 -1) (/.f64 a h))) (cbrt.f64 1/2)))
(*.f64 (cbrt.f64 1/2) (+.f64 (cbrt.f64 (/.f64 (sqrt.f64 -1) (/.f64 a h))) (*.f64 g (*.f64 -1/3 (*.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 -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 (*.f64 -1/9 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 7) (*.f64 (pow.f64 a 11) (pow.f64 h 7)))) 1/9) (*.f64 (cbrt.f64 1/2) (pow.f64 g 2)))) (*.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))) (fma.f64 -1/9 (*.f64 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 7) (*.f64 (pow.f64 a 11) (pow.f64 h 7)))) 1/18) (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 7) (*.f64 (pow.f64 a 11) (pow.f64 h 7)))) 1/18)) (*.f64 (*.f64 g g) (cbrt.f64 1/2))) (*.f64 (cbrt.f64 (/.f64 (*.f64 (sqrt.f64 -1) h) a)) (cbrt.f64 1/2))))
(fma.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 (cbrt.f64 (/.f64 (sqrt.f64 -1) (/.f64 a h))) (cbrt.f64 1/2) (*.f64 (*.f64 (pow.f64 (/.f64 1 (*.f64 (*.f64 (pow.f64 (sqrt.f64 -1) 7) (pow.f64 h 7)) (pow.f64 a 11))) 1/18) (*.f64 (pow.f64 (/.f64 1 (*.f64 (*.f64 (pow.f64 (sqrt.f64 -1) 7) (pow.f64 h 7)) (pow.f64 a 11))) 1/18) (cbrt.f64 1/2))) (*.f64 (*.f64 g g) -1/9))))
(fma.f64 -1/9 (*.f64 (cbrt.f64 1/2) (*.f64 (*.f64 g g) (*.f64 (pow.f64 (/.f64 (/.f64 1 (pow.f64 (sqrt.f64 -1) 7)) (*.f64 (pow.f64 a 11) (pow.f64 h 7))) 1/18) (pow.f64 (/.f64 (/.f64 1 (pow.f64 (sqrt.f64 -1) 7)) (*.f64 (pow.f64 a 11) (pow.f64 h 7))) 1/18)))) (*.f64 (cbrt.f64 1/2) (+.f64 (cbrt.f64 (/.f64 (sqrt.f64 -1) (/.f64 a h))) (*.f64 g (*.f64 -1/3 (*.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 -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 (cbrt.f64 1/2) (*.f64 (pow.f64 g 3) (+.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/9 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (pow.f64 a 7) (pow.f64 h 2)))) 1/3) (pow.f64 (pow.f64 1 4) 1/9)))))))) (+.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 (*.f64 -1/9 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 7) (*.f64 (pow.f64 a 11) (pow.f64 h 7)))) 1/9) (*.f64 (cbrt.f64 1/2) (pow.f64 g 2)))) (*.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 (cbrt.f64 1/2) (*.f64 (pow.f64 g 3) (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/9 (*.f64 1 (cbrt.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (*.f64 h h) (pow.f64 a 7))))))))))) (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))) (fma.f64 -1/9 (*.f64 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 7) (*.f64 (pow.f64 a 11) (pow.f64 h 7)))) 1/18) (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 7) (*.f64 (pow.f64 a 11) (pow.f64 h 7)))) 1/18)) (*.f64 (*.f64 g g) (cbrt.f64 1/2))) (*.f64 (cbrt.f64 (/.f64 (*.f64 (sqrt.f64 -1) h) a)) (cbrt.f64 1/2)))))
(fma.f64 -1/3 (*.f64 (cbrt.f64 (*.f64 -1 (*.f64 (/.f64 a h) (/.f64 a h)))) (*.f64 (fma.f64 -1/27 (cbrt.f64 (/.f64 -1 (*.f64 h (*.f64 h (pow.f64 a 7))))) (*.f64 (cbrt.f64 (/.f64 -1 (*.f64 h (*.f64 h (pow.f64 a 7))))) 2/9)) (*.f64 (pow.f64 g 3) (cbrt.f64 1/2)))) (fma.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 (cbrt.f64 (/.f64 (sqrt.f64 -1) (/.f64 a h))) (cbrt.f64 1/2) (*.f64 (*.f64 (pow.f64 (/.f64 1 (*.f64 (*.f64 (pow.f64 (sqrt.f64 -1) 7) (pow.f64 h 7)) (pow.f64 a 11))) 1/18) (*.f64 (pow.f64 (/.f64 1 (*.f64 (*.f64 (pow.f64 (sqrt.f64 -1) 7) (pow.f64 h 7)) (pow.f64 a 11))) 1/18) (cbrt.f64 1/2))) (*.f64 (*.f64 g g) -1/9)))))
(fma.f64 -1/3 (*.f64 (cbrt.f64 1/2) (+.f64 (*.f64 (cbrt.f64 (/.f64 (*.f64 a a) (*.f64 h (neg.f64 h)))) (*.f64 (pow.f64 g 3) (*.f64 (cbrt.f64 (/.f64 (/.f64 -1 (pow.f64 a 7)) (*.f64 h h))) 5/27))) (*.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 (cbrt.f64 1/2) (+.f64 (cbrt.f64 (/.f64 (sqrt.f64 -1) (/.f64 a h))) (*.f64 (*.f64 g g) (*.f64 -1/9 (*.f64 (pow.f64 (/.f64 (/.f64 1 (pow.f64 (sqrt.f64 -1) 7)) (*.f64 (pow.f64 a 11) (pow.f64 h 7))) 1/18) (pow.f64 (/.f64 (/.f64 1 (pow.f64 (sqrt.f64 -1) 7)) (*.f64 (pow.f64 a 11) (pow.f64 h 7))) 1/18)))))))
(*.f64 (pow.f64 (/.f64 (*.f64 1 (-.f64 (*.f64 (pow.f64 1 1/6) g) g)) a) 1/3) (cbrt.f64 1/2))
(-.f64 (*.f64 1 g) g)
(-.f64 g g)
0
(+.f64 (*.f64 (pow.f64 (/.f64 (*.f64 1 (-.f64 (*.f64 (pow.f64 1 1/6) g) g)) a) 1/3) (cbrt.f64 1/2)) (*.f64 -1/6 (*.f64 (pow.f64 (/.f64 1 (*.f64 a (pow.f64 (-.f64 (*.f64 (pow.f64 1 1/6) g) g) 2))) 1/3) (/.f64 (*.f64 (cbrt.f64 1/2) (pow.f64 h 2)) g))))
(fma.f64 (cbrt.f64 (/.f64 (-.f64 (*.f64 1 g) g) a)) (cbrt.f64 1/2) (*.f64 -1/6 (*.f64 (cbrt.f64 (/.f64 1 (*.f64 a (pow.f64 (-.f64 (*.f64 1 g) g) 2)))) (/.f64 (cbrt.f64 1/2) (/.f64 g (*.f64 h h))))))
(fma.f64 (*.f64 -1/6 (cbrt.f64 (/.f64 (/.f64 1 a) (pow.f64 (-.f64 g g) 2)))) (*.f64 (/.f64 (cbrt.f64 1/2) g) (*.f64 h h)) (*.f64 (cbrt.f64 1/2) (cbrt.f64 (/.f64 (-.f64 g g) a))))
(fma.f64 0 (cbrt.f64 1/2) (*.f64 (*.f64 (*.f64 h h) (/.f64 (cbrt.f64 1/2) g)) (*.f64 -1/6 (cbrt.f64 (/.f64 1 (*.f64 0 a))))))
(+.f64 0 (*.f64 (*.f64 h h) 0))
(+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (pow.f64 (-.f64 (*.f64 (pow.f64 1 1/6) g) g) 2)) 1/3) (*.f64 (-.f64 (*.f64 -1/8 (*.f64 (pow.f64 1 1/6) (/.f64 1 (*.f64 a (pow.f64 g 3))))) (*.f64 1/12 (/.f64 1 (*.f64 a (*.f64 (pow.f64 g 2) (-.f64 (*.f64 (pow.f64 1 1/6) g) g)))))) (*.f64 (cbrt.f64 1/2) (pow.f64 h 4))))) (+.f64 (*.f64 (pow.f64 (/.f64 (*.f64 1 (-.f64 (*.f64 (pow.f64 1 1/6) g) g)) a) 1/3) (cbrt.f64 1/2)) (*.f64 -1/6 (*.f64 (pow.f64 (/.f64 1 (*.f64 a (pow.f64 (-.f64 (*.f64 (pow.f64 1 1/6) g) g) 2))) 1/3) (/.f64 (*.f64 (cbrt.f64 1/2) (pow.f64 h 2)) g)))))
(fma.f64 1/3 (*.f64 (cbrt.f64 (/.f64 (*.f64 a a) (pow.f64 (-.f64 (*.f64 1 g) g) 2))) (*.f64 (-.f64 (*.f64 -1/8 (/.f64 1 (*.f64 (pow.f64 g 3) a))) (/.f64 1/12 (*.f64 a (*.f64 (*.f64 g g) (-.f64 (*.f64 1 g) g))))) (*.f64 (pow.f64 h 4) (cbrt.f64 1/2)))) (fma.f64 (cbrt.f64 (/.f64 (-.f64 (*.f64 1 g) g) a)) (cbrt.f64 1/2) (*.f64 -1/6 (*.f64 (cbrt.f64 (/.f64 1 (*.f64 a (pow.f64 (-.f64 (*.f64 1 g) g) 2)))) (/.f64 (cbrt.f64 1/2) (/.f64 g (*.f64 h h)))))))
(fma.f64 1/3 (*.f64 (cbrt.f64 (/.f64 a (/.f64 (pow.f64 (-.f64 g g) 2) a))) (*.f64 (pow.f64 h 4) (*.f64 (cbrt.f64 1/2) (+.f64 (/.f64 -1/8 (*.f64 (pow.f64 g 3) a)) (/.f64 -1/12 (*.f64 (*.f64 g g) (*.f64 (-.f64 g g) a))))))) (fma.f64 (*.f64 -1/6 (cbrt.f64 (/.f64 (/.f64 1 a) (pow.f64 (-.f64 g g) 2)))) (*.f64 (/.f64 (cbrt.f64 1/2) g) (*.f64 h h)) (*.f64 (cbrt.f64 1/2) (cbrt.f64 (/.f64 (-.f64 g g) a)))))
(fma.f64 1/3 (*.f64 (cbrt.f64 (/.f64 1 0)) (*.f64 (cbrt.f64 1/2) (*.f64 (pow.f64 h 4) (+.f64 (/.f64 -1/8 (*.f64 (pow.f64 g 3) a)) (/.f64 -1 (*.f64 0 a)))))) (fma.f64 0 (cbrt.f64 1/2) (*.f64 (*.f64 (*.f64 h h) (/.f64 (cbrt.f64 1/2) g)) (*.f64 -1/6 (cbrt.f64 (/.f64 1 (*.f64 0 a)))))))
(+.f64 0 (+.f64 (*.f64 (*.f64 h h) 0) (*.f64 (pow.f64 h 4) 0)))
(+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (pow.f64 (-.f64 (*.f64 (pow.f64 1 1/6) g) g) 2)) 1/3) (*.f64 (-.f64 (*.f64 -1/8 (*.f64 (pow.f64 1 1/6) (/.f64 1 (*.f64 a (pow.f64 g 3))))) (*.f64 1/12 (/.f64 1 (*.f64 a (*.f64 (pow.f64 g 2) (-.f64 (*.f64 (pow.f64 1 1/6) g) g)))))) (*.f64 (cbrt.f64 1/2) (pow.f64 h 4))))) (+.f64 (*.f64 (pow.f64 (/.f64 (*.f64 1 (-.f64 (*.f64 (pow.f64 1 1/6) g) g)) a) 1/3) (cbrt.f64 1/2)) (+.f64 (*.f64 1/3 (*.f64 (*.f64 (-.f64 (+.f64 (*.f64 1/216 (/.f64 1 (*.f64 a (*.f64 (pow.f64 g 3) (pow.f64 (-.f64 (*.f64 (pow.f64 1 1/6) g) g) 2))))) (*.f64 -1/16 (*.f64 (pow.f64 1 1/6) (/.f64 1 (*.f64 a (pow.f64 g 5)))))) (*.f64 -1/3 (/.f64 (-.f64 (*.f64 -1/8 (*.f64 (pow.f64 1 1/6) (/.f64 1 (*.f64 a (pow.f64 g 3))))) (*.f64 1/12 (/.f64 1 (*.f64 a (*.f64 (pow.f64 g 2) (-.f64 (*.f64 (pow.f64 1 1/6) g) g)))))) (*.f64 g (-.f64 (*.f64 (pow.f64 1 1/6) g) g))))) (*.f64 (cbrt.f64 1/2) (pow.f64 h 6))) (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (pow.f64 (-.f64 (*.f64 (pow.f64 1 1/6) g) g) 2)) 1/3))) (*.f64 -1/6 (*.f64 (pow.f64 (/.f64 1 (*.f64 a (pow.f64 (-.f64 (*.f64 (pow.f64 1 1/6) g) g) 2))) 1/3) (/.f64 (*.f64 (cbrt.f64 1/2) (pow.f64 h 2)) g))))))
(fma.f64 1/3 (*.f64 (cbrt.f64 (/.f64 (*.f64 a a) (pow.f64 (-.f64 (*.f64 1 g) g) 2))) (*.f64 (-.f64 (*.f64 -1/8 (/.f64 1 (*.f64 (pow.f64 g 3) a))) (/.f64 1/12 (*.f64 a (*.f64 (*.f64 g g) (-.f64 (*.f64 1 g) g))))) (*.f64 (pow.f64 h 4) (cbrt.f64 1/2)))) (fma.f64 (cbrt.f64 (/.f64 (-.f64 (*.f64 1 g) g) a)) (cbrt.f64 1/2) (fma.f64 1/3 (*.f64 (cbrt.f64 (/.f64 (*.f64 a a) (pow.f64 (-.f64 (*.f64 1 g) g) 2))) (*.f64 (+.f64 (/.f64 1/216 (*.f64 (*.f64 (pow.f64 g 3) a) (pow.f64 (-.f64 (*.f64 1 g) g) 2))) (-.f64 (*.f64 -1/16 (/.f64 1 (*.f64 (pow.f64 g 5) a))) (/.f64 (*.f64 -1/3 (-.f64 (*.f64 -1/8 (/.f64 1 (*.f64 (pow.f64 g 3) a))) (/.f64 1/12 (*.f64 a (*.f64 (*.f64 g g) (-.f64 (*.f64 1 g) g)))))) (*.f64 g (-.f64 (*.f64 1 g) g))))) (*.f64 (pow.f64 h 6) (cbrt.f64 1/2)))) (*.f64 -1/6 (*.f64 (cbrt.f64 (/.f64 1 (*.f64 a (pow.f64 (-.f64 (*.f64 1 g) g) 2)))) (/.f64 (cbrt.f64 1/2) (/.f64 g (*.f64 h h))))))))
(fma.f64 1/3 (*.f64 (cbrt.f64 (/.f64 a (/.f64 (pow.f64 (-.f64 g g) 2) a))) (*.f64 (pow.f64 h 4) (*.f64 (cbrt.f64 1/2) (+.f64 (/.f64 -1/8 (*.f64 (pow.f64 g 3) a)) (/.f64 -1/12 (*.f64 (*.f64 g g) (*.f64 (-.f64 g g) a))))))) (fma.f64 (cbrt.f64 1/2) (cbrt.f64 (/.f64 (-.f64 g g) a)) (fma.f64 1/3 (*.f64 (cbrt.f64 (/.f64 a (/.f64 (pow.f64 (-.f64 g g) 2) a))) (*.f64 (pow.f64 h 6) (*.f64 (cbrt.f64 1/2) (+.f64 (/.f64 1/216 (*.f64 (pow.f64 g 3) (*.f64 a (pow.f64 (-.f64 g g) 2)))) (+.f64 (/.f64 -1/16 (*.f64 (pow.f64 g 5) a)) (/.f64 (*.f64 1/3 (+.f64 (/.f64 -1/8 (*.f64 (pow.f64 g 3) a)) (/.f64 -1/12 (*.f64 (*.f64 g g) (*.f64 (-.f64 g g) a))))) (*.f64 g (-.f64 g g)))))))) (*.f64 (cbrt.f64 (/.f64 (/.f64 1 a) (pow.f64 (-.f64 g g) 2))) (*.f64 (*.f64 (/.f64 (cbrt.f64 1/2) g) (*.f64 h h)) -1/6)))))
(fma.f64 1/3 (*.f64 (cbrt.f64 (/.f64 1 0)) (*.f64 (cbrt.f64 1/2) (*.f64 (pow.f64 h 4) (+.f64 (/.f64 -1/8 (*.f64 (pow.f64 g 3) a)) (/.f64 -1 (*.f64 0 a)))))) (fma.f64 0 (cbrt.f64 1/2) (fma.f64 (*.f64 1/3 (+.f64 (/.f64 (/.f64 -1/16 a) (pow.f64 g 5)) (-.f64 (/.f64 1 (*.f64 0 a)) (+.f64 (/.f64 1 (*.f64 0 a)) (/.f64 -1 (*.f64 0 a)))))) (*.f64 (pow.f64 h 6) (*.f64 (cbrt.f64 1/2) (cbrt.f64 (/.f64 1 0)))) (*.f64 (*.f64 (*.f64 h h) (/.f64 (cbrt.f64 1/2) g)) (*.f64 -1/6 (cbrt.f64 (/.f64 1 (*.f64 0 a))))))))
(+.f64 0 (+.f64 (*.f64 (*.f64 h h) 0) (+.f64 (*.f64 (/.f64 (/.f64 -1/16 a) (pow.f64 g 5)) (*.f64 (pow.f64 h 6) 0)) (*.f64 (pow.f64 h 4) 0))))

localize63.0ms (0.7%)

Local error

Found 4 expressions with local error:

NewErrorProgram
1.9b
(+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))
4.2b
(-.f64 (*.f64 g g) (*.f64 h h))
8.3b
(cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a)))
34.0b
(sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))
Compiler

Compiled 116 to 38 computations (67.2% saved)

series7.0ms (0.1%)

Counts
1 → 24
Calls

6 calls:

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

rewrite100.0ms (1.1%)

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

simplify89.0ms (1%)

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

localize87.0ms (1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
4.2b
(-.f64 (*.f64 g g) (*.f64 h h))
8.3b
(cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a)))
24.9b
(sqrt.f64 (*.f64 h (neg.f64 h)))
34.0b
(sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))
Compiler

Compiled 185 to 46 computations (75.1% saved)

series3.0ms (0%)

Counts
1 → 12
Calls

3 calls:

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

rewrite66.0ms (0.7%)

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

simplify27.0ms (0.3%)

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

localize75.0ms (0.8%)

Local error

Found 4 expressions with local error:

NewErrorProgram
4.2b
(-.f64 (*.f64 g g) (*.f64 h h))
8.7b
(cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g)))
24.9b
(sqrt.f64 (*.f64 h (neg.f64 h)))
34.0b
(sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))
Compiler

Compiled 169 to 43 computations (74.6% saved)

localize48.0ms (0.5%)

Local error

Found 4 expressions with local error:

NewErrorProgram
4.2b
(-.f64 (*.f64 g g) (*.f64 h h))
8.7b
(cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g)))
24.9b
(sqrt.f64 (*.f64 h (neg.f64 h)))
34.0b
(sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))
Compiler

Compiled 183 to 44 computations (76% saved)

eval803.0ms (9.1%)

Compiler

Compiled 45335 to 21469 computations (52.6% saved)

prune258.0ms (2.9%)

Pruning

26 alts after pruning (26 fresh and 0 done)

PrunedKeptTotal
New1095261121
Fresh19019
Picked101
Done404
Total1119261145
Error
9.9b
Counts
1145 → 26
Alt Table
Click to see full alt table
StatusErrorProgram
54.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 (neg.f64 g)) (/.f64 -1/2 a))))
54.3b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (exp.f64 (log.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))) (/.f64 -1/2 a))))
52.5b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (/.f64 (cbrt.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) -1/2)) (cbrt.f64 a)))
62.2b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (+.f64 g (neg.f64 g)) (/.f64 -1/2 a))))
54.9b
(+.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))))
39.3b
(+.f64 (*.f64 (cbrt.f64 (/.f64 1/2 a)) (cbrt.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g))) (/.f64 (cbrt.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) -1/2)) (cbrt.f64 a)))
61.6b
(+.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.4b
(+.f64 (exp.f64 (log.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 g h) g) (/.f64 1/2 a))))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
17.8b
(+.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)))))
54.8b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (+.f64 g (cbrt.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 3/2))) (/.f64 -1/2 a))))
50.8b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (/.f64 (*.f64 h -1/2) (/.f64 g h)))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
37.5b
(+.f64 (*.f64 (cbrt.f64 (/.f64 1/2 a)) (cbrt.f64 (-.f64 (hypot.f64 g h) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
39.3b
(+.f64 (/.f64 (cbrt.f64 (*.f64 1/2 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g))) (cbrt.f64 a)) (/.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))) (/.f64 (cbrt.f64 (*.f64 (+.f64 g (hypot.f64 g 0)) -1/2)) (cbrt.f64 a)))
39.2b
(+.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 g h) g) (/.f64 1/2 a)))) 3) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
59.6b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (sqrt.f64 (cbrt.f64 (pow.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (/.f64 1/2 a)) 2))))
39.5b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (expm1.f64 (log1p.f64 (-.f64 (hypot.f64 g h) g))))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
39.1b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 g h) g)) 3))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
50.9b
(+.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))))
37.5b
(+.f64 (/.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 g h) g) 1/2)) (cbrt.f64 a)) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
53.4b
(+.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))))
43.5b
(+.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))))
61.6b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (/.f64 -1/2 a))))
41.5b
(+.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))))
17.3b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (+.f64 g g) (/.f64 -1/2 a))))
50.7b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 3))) (/.f64 -1/2 a))))
Compiler

Compiled 1480 to 1024 computations (30.8% saved)

localize26.0ms (0.3%)

Local error

Found 2 expressions with local error:

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

Compiled 66 to 34 computations (48.5% saved)

series9.0ms (0.1%)

Counts
2 → 24
Calls

12 calls:

TimeVariablePointExpression
3.0ms
a
@0
(cbrt.f64 (*.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
@inf
(cbrt.f64 (*.f64 (+.f64 g g) (/.f64 -1/2 a)))
1.0ms
g
@0
(*.f64 (+.f64 g g) (/.f64 -1/2 a))
1.0ms
g
@inf
(*.f64 (+.f64 g g) (/.f64 -1/2 a))

rewrite69.0ms (0.8%)

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

Useful iterations: 1 (0.0ms)

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

simplify17.0ms (0.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)

localize25.0ms (0.3%)

Compiler

Compiled 72 to 35 computations (51.4% saved)

localize39.0ms (0.4%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(sqrt.f64 (-.f64 g h))
0.1b
(*.f64 (+.f64 g (*.f64 (sqrt.f64 (+.f64 g h)) (sqrt.f64 (-.f64 g h)))) (/.f64 -1/2 a))
0.2b
(*.f64 (sqrt.f64 (+.f64 g h)) (sqrt.f64 (-.f64 g h)))
7.8b
(cbrt.f64 (*.f64 (+.f64 g (*.f64 (sqrt.f64 (+.f64 g h)) (sqrt.f64 (-.f64 g h)))) (/.f64 -1/2 a)))
Compiler

Compiled 122 to 39 computations (68% saved)

series59.0ms (0.7%)

Counts
4 → 76
Calls

30 calls:

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

rewrite99.0ms (1.1%)

Algorithm
batch-egg-rewrite
Rules
746×log-prod_binary64
502×fma-def_binary64
271×expm1-udef_binary64
271×log1p-udef_binary64
238×fma-neg_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify109.0ms (1.2%)

Algorithm
egg-herbie
Rules
497×times-frac_binary64
437×associate-*r*_binary64
409×associate-/r*_binary64
388×fma-def_binary64
323×*-commutative_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
04394291
116303423
278943415
Stop Event
node limit
Counts
201 → 238
Calls
Call 1
Inputs
(*.f64 (pow.f64 (/.f64 (*.f64 (sqrt.f64 -1) (*.f64 1 h)) a) 1/3) (cbrt.f64 -1/2))
(+.f64 (*.f64 1/3 (*.f64 (*.f64 (+.f64 (*.f64 1/2 (/.f64 (+.f64 h (*.f64 -1 h)) (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (/.f64 1 a)) (*.f64 (cbrt.f64 -1/2) g)) (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (pow.f64 h 2))) 1/9))) (*.f64 (pow.f64 (/.f64 (*.f64 (sqrt.f64 -1) (*.f64 1 h)) a) 1/3) (cbrt.f64 -1/2)))
(+.f64 (*.f64 1/3 (*.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (pow.f64 g 2) (-.f64 (*.f64 1/2 (/.f64 (-.f64 1 (pow.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 h) h) (*.f64 (sqrt.f64 -1) h))) 2)) (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 (*.f64 1 a) (*.f64 (sqrt.f64 -1) h)) 1/9) (pow.f64 (+.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 h) h) (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (/.f64 1 a)) 2)))))) (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (pow.f64 h 2))) 1/3))) (+.f64 (*.f64 1/3 (*.f64 (*.f64 (+.f64 (*.f64 1/2 (/.f64 (+.f64 h (*.f64 -1 h)) (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (/.f64 1 a)) (*.f64 (cbrt.f64 -1/2) g)) (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (pow.f64 h 2))) 1/9))) (*.f64 (pow.f64 (/.f64 (*.f64 (sqrt.f64 -1) (*.f64 1 h)) a) 1/3) (cbrt.f64 -1/2))))
(+.f64 (*.f64 1/3 (*.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (pow.f64 g 2) (-.f64 (*.f64 1/2 (/.f64 (-.f64 1 (pow.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 h) h) (*.f64 (sqrt.f64 -1) h))) 2)) (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 (*.f64 1 a) (*.f64 (sqrt.f64 -1) h)) 1/9) (pow.f64 (+.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 h) h) (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (/.f64 1 a)) 2)))))) (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (pow.f64 h 2))) 1/3))) (+.f64 (*.f64 1/3 (*.f64 (*.f64 (+.f64 (*.f64 1/2 (/.f64 (+.f64 h (*.f64 -1 h)) (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (/.f64 1 a)) (*.f64 (cbrt.f64 -1/2) g)) (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (pow.f64 h 2))) 1/9))) (+.f64 (*.f64 (pow.f64 (/.f64 (*.f64 (sqrt.f64 -1) (*.f64 1 h)) a) 1/3) (cbrt.f64 -1/2)) (*.f64 1/3 (*.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (pow.f64 g 3) (-.f64 (*.f64 -1/4 (/.f64 (*.f64 (-.f64 1 (pow.f64 (*.f64 1/2 (/.f64 (+.f64 h (*.f64 -1 h)) (*.f64 (sqrt.f64 -1) h))) 2)) (+.f64 (*.f64 -1 h) h)) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (*.f64 a (pow.f64 h 3))))) (+.f64 (*.f64 2/3 (*.f64 (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 5)) (*.f64 (pow.f64 (sqrt.f64 -1) 5) (pow.f64 h 5))) 1/9) (*.f64 (-.f64 (*.f64 1/2 (/.f64 (-.f64 1 (pow.f64 (*.f64 1/2 (/.f64 (+.f64 h (*.f64 -1 h)) (*.f64 (sqrt.f64 -1) h))) 2)) (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (*.f64 1/3 (*.f64 (pow.f64 (+.f64 (*.f64 1/2 (/.f64 (+.f64 h (*.f64 -1 h)) (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (/.f64 1 a)) 2) (pow.f64 (/.f64 (*.f64 1 a) (*.f64 (sqrt.f64 -1) h)) 1/9)))) (+.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 h) h) (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (/.f64 1 a))))) (*.f64 1/27 (*.f64 (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (pow.f64 h 2))) 1/3) (pow.f64 (+.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 h) h) (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (/.f64 1 a)) 3))))))) (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (pow.f64 h 2))) 1/3))))))
(*.f64 (pow.f64 (/.f64 (*.f64 1 g) a) 1/3) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)))
(+.f64 (*.f64 1/6 (*.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (+.f64 (*.f64 -1 g) g) h)) (*.f64 (pow.f64 (/.f64 (pow.f64 1 4) (*.f64 (pow.f64 a 7) (pow.f64 g 11))) 1/9) (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 2) 2)) 1/3)))) (*.f64 (pow.f64 (/.f64 (*.f64 1 g) a) 1/3) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2))))
(+.f64 (*.f64 1/6 (*.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (+.f64 (*.f64 -1 g) g) h)) (*.f64 (pow.f64 (/.f64 (pow.f64 1 4) (*.f64 (pow.f64 a 7) (pow.f64 g 11))) 1/9) (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 2) 2)) 1/3)))) (+.f64 (*.f64 1/3 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (-.f64 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (*.f64 1/2 (/.f64 (+.f64 g (*.f64 -1 g)) g)) 2) 1) (*.f64 a g))) (*.f64 1/12 (*.f64 (pow.f64 (/.f64 (pow.f64 1 4) (*.f64 (pow.f64 a 17) (pow.f64 g 19))) 1/9) (*.f64 (pow.f64 (/.f64 1 (cbrt.f64 2)) 1/3) (pow.f64 (+.f64 g (*.f64 -1 g)) 2))))) (pow.f64 h 2))) (pow.f64 (cbrt.f64 2) 2)) (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (pow.f64 g 2)) 1/3))) (*.f64 (pow.f64 (/.f64 (*.f64 1 g) a) 1/3) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)))))
(+.f64 (*.f64 1/6 (*.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (+.f64 (*.f64 -1 g) g) h)) (*.f64 (pow.f64 (/.f64 (pow.f64 1 4) (*.f64 (pow.f64 a 7) (pow.f64 g 11))) 1/9) (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 2) 2)) 1/3)))) (+.f64 (*.f64 1/3 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (-.f64 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (*.f64 1/2 (/.f64 (+.f64 g (*.f64 -1 g)) g)) 2) 1) (*.f64 a g))) (*.f64 1/12 (*.f64 (pow.f64 (/.f64 (pow.f64 1 4) (*.f64 (pow.f64 a 17) (pow.f64 g 19))) 1/9) (*.f64 (pow.f64 (/.f64 1 (cbrt.f64 2)) 1/3) (pow.f64 (+.f64 g (*.f64 -1 g)) 2))))) (pow.f64 h 2))) (pow.f64 (cbrt.f64 2) 2)) (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (pow.f64 g 2)) 1/3))) (+.f64 (*.f64 1/3 (*.f64 (/.f64 (*.f64 (-.f64 (*.f64 1/4 (/.f64 (*.f64 (+.f64 1 (pow.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 g) g) g)) 2)) (+.f64 g (*.f64 -1 g))) (*.f64 a (pow.f64 g 3)))) (+.f64 (*.f64 1/216 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 a 7) (pow.f64 g 11))) 1/3) (/.f64 (pow.f64 (+.f64 g (*.f64 -1 g)) 3) (pow.f64 (cbrt.f64 2) 2)))) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 (pow.f64 1 4) (*.f64 (pow.f64 a 4) (pow.f64 g 14))) 1/9) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 2) 5)) 1/3) (*.f64 (+.f64 g (*.f64 -1 g)) (-.f64 (*.f64 -1/2 (/.f64 (+.f64 1 (pow.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 g) g) g)) 2)) (*.f64 a g))) (*.f64 1/12 (*.f64 (pow.f64 (/.f64 (pow.f64 1 4) (*.f64 (pow.f64 a 17) (pow.f64 g 19))) 1/9) (*.f64 (pow.f64 (/.f64 1 (cbrt.f64 2)) 1/3) (pow.f64 (+.f64 (*.f64 -1 g) g) 2))))))))))) (*.f64 (cbrt.f64 -1/2) (pow.f64 h 3))) (pow.f64 (cbrt.f64 2) 2)) (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (pow.f64 g 2)) 1/3))) (*.f64 (pow.f64 (/.f64 (*.f64 1 g) a) 1/3) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2))))))
(*.f64 (sqrt.f64 -1) h)
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (+.f64 h (*.f64 -1 h)) g) (*.f64 (sqrt.f64 -1) h))) (*.f64 (sqrt.f64 -1) h))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (+.f64 h (*.f64 -1 h)) g) (*.f64 (sqrt.f64 -1) h))) (+.f64 (*.f64 (sqrt.f64 -1) h) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 g 2) (-.f64 1 (pow.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 h) h) (*.f64 (sqrt.f64 -1) h))) 2))) (*.f64 (sqrt.f64 -1) h)))))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (+.f64 h (*.f64 -1 h)) g) (*.f64 (sqrt.f64 -1) h))) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (-.f64 1 (pow.f64 (*.f64 1/2 (/.f64 (+.f64 h (*.f64 -1 h)) (*.f64 (sqrt.f64 -1) h))) 2)) (*.f64 (pow.f64 g 3) (+.f64 (*.f64 -1 h) h))) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3)))) (+.f64 (*.f64 (sqrt.f64 -1) h) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 g 2) (-.f64 1 (pow.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 h) h) (*.f64 (sqrt.f64 -1) h))) 2))) (*.f64 (sqrt.f64 -1) h))))))
g
(+.f64 (*.f64 1/2 (+.f64 (*.f64 -1 h) h)) g)
(+.f64 (*.f64 1/2 (+.f64 (*.f64 -1 h) h)) (+.f64 g (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1 (pow.f64 h 2)) (pow.f64 (*.f64 1/2 (+.f64 h (*.f64 -1 h))) 2)) g))))
(+.f64 (*.f64 1/2 (+.f64 (*.f64 -1 h) h)) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (-.f64 (*.f64 -1 (pow.f64 h 2)) (pow.f64 (*.f64 1/2 (+.f64 (*.f64 -1 h) h)) 2)) (+.f64 h (*.f64 -1 h))) (pow.f64 g 2))) (+.f64 g (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1 (pow.f64 h 2)) (pow.f64 (*.f64 1/2 (+.f64 h (*.f64 -1 h))) 2)) g)))))
(*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) g))
(+.f64 (*.f64 1/2 (+.f64 (*.f64 -1 h) h)) (*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) g)))
(+.f64 (*.f64 1/2 (+.f64 (*.f64 -1 h) h)) (+.f64 (*.f64 -1/2 (/.f64 (-.f64 (pow.f64 h 2) (pow.f64 (*.f64 1/2 (/.f64 (+.f64 h (*.f64 -1 h)) (sqrt.f64 -1))) 2)) g)) (*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) g))))
(+.f64 (*.f64 1/2 (+.f64 (*.f64 -1 h) h)) (+.f64 (*.f64 -1/2 (/.f64 (-.f64 (pow.f64 h 2) (pow.f64 (*.f64 1/2 (/.f64 (+.f64 h (*.f64 -1 h)) (sqrt.f64 -1))) 2)) g)) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (+.f64 h (*.f64 -1 h)) (-.f64 (pow.f64 h 2) (pow.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 h) h) (sqrt.f64 -1))) 2))) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (pow.f64 g 2)))) (*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) g)))))
g
(+.f64 g (*.f64 1/2 (/.f64 (*.f64 h (+.f64 (*.f64 -1 g) g)) g)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 1/2 (/.f64 (+.f64 g (*.f64 -1 g)) g)) 2) 1) (pow.f64 h 2)) g)) (+.f64 g (*.f64 1/2 (/.f64 (*.f64 h (+.f64 (*.f64 -1 g) g)) g))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 1/2 (/.f64 (+.f64 g (*.f64 -1 g)) g)) 2) 1) (pow.f64 h 2)) g)) (+.f64 (*.f64 1/4 (/.f64 (*.f64 (+.f64 1 (pow.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 g) g) g)) 2)) (*.f64 (+.f64 g (*.f64 -1 g)) (pow.f64 h 3))) (pow.f64 g 3))) (+.f64 g (*.f64 1/2 (/.f64 (*.f64 h (+.f64 (*.f64 -1 g) g)) g)))))
(*.f64 (sqrt.f64 -1) h)
(+.f64 (*.f64 (sqrt.f64 -1) h) (*.f64 1/2 (/.f64 (+.f64 g (*.f64 -1 g)) (sqrt.f64 -1))))
(+.f64 (*.f64 1/2 (/.f64 (-.f64 (pow.f64 g 2) (pow.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 g) g) (sqrt.f64 -1))) 2)) (*.f64 (sqrt.f64 -1) h))) (+.f64 (*.f64 (sqrt.f64 -1) h) (*.f64 1/2 (/.f64 (+.f64 g (*.f64 -1 g)) (sqrt.f64 -1)))))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (-.f64 (pow.f64 g 2) (pow.f64 (*.f64 1/2 (/.f64 (+.f64 g (*.f64 -1 g)) (sqrt.f64 -1))) 2)) (+.f64 (*.f64 -1 g) g)) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 2)))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (pow.f64 g 2) (pow.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 g) g) (sqrt.f64 -1))) 2)) (*.f64 (sqrt.f64 -1) h))) (+.f64 (*.f64 (sqrt.f64 -1) h) (*.f64 1/2 (/.f64 (+.f64 g (*.f64 -1 g)) (sqrt.f64 -1))))))
(*.f64 -1 (*.f64 (sqrt.f64 -1) h))
(+.f64 (*.f64 -1 (*.f64 (sqrt.f64 -1) h)) (*.f64 1/2 (/.f64 (+.f64 g (*.f64 -1 g)) (sqrt.f64 -1))))
(+.f64 (*.f64 -1 (*.f64 (sqrt.f64 -1) h)) (+.f64 (*.f64 -1/2 (/.f64 (-.f64 (pow.f64 g 2) (pow.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 g) g) (sqrt.f64 -1))) 2)) (*.f64 (sqrt.f64 -1) h))) (*.f64 1/2 (/.f64 (+.f64 g (*.f64 -1 g)) (sqrt.f64 -1)))))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (-.f64 (pow.f64 g 2) (pow.f64 (*.f64 1/2 (/.f64 (+.f64 g (*.f64 -1 g)) (sqrt.f64 -1))) 2)) (+.f64 (*.f64 -1 g) g)) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 2)))) (+.f64 (*.f64 -1 (*.f64 (sqrt.f64 -1) h)) (+.f64 (*.f64 -1/2 (/.f64 (-.f64 (pow.f64 g 2) (pow.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 g) g) (sqrt.f64 -1))) 2)) (*.f64 (sqrt.f64 -1) h))) (*.f64 1/2 (/.f64 (+.f64 g (*.f64 -1 g)) (sqrt.f64 -1))))))
(*.f64 -1/2 (/.f64 (*.f64 (sqrt.f64 -1) h) a))
(+.f64 (*.f64 -1/2 (*.f64 g (+.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 h) h) (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (/.f64 1 a)))) (*.f64 -1/2 (/.f64 (*.f64 (sqrt.f64 -1) h) a)))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (-.f64 1 (pow.f64 (*.f64 1/2 (/.f64 (+.f64 h (*.f64 -1 h)) (*.f64 (sqrt.f64 -1) h))) 2)) (pow.f64 g 2)) (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (+.f64 (*.f64 -1/2 (*.f64 g (+.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 h) h) (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (/.f64 1 a)))) (*.f64 -1/2 (/.f64 (*.f64 (sqrt.f64 -1) h) a))))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (-.f64 1 (pow.f64 (*.f64 1/2 (/.f64 (+.f64 h (*.f64 -1 h)) (*.f64 (sqrt.f64 -1) h))) 2)) (pow.f64 g 2)) (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (+.f64 (*.f64 -1/2 (*.f64 g (+.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 h) h) (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (/.f64 1 a)))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sqrt.f64 -1) h) a)) (*.f64 1/8 (/.f64 (*.f64 (pow.f64 g 3) (*.f64 (+.f64 h (*.f64 -1 h)) (-.f64 1 (pow.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 h) h) (*.f64 (sqrt.f64 -1) h))) 2)))) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (*.f64 a (pow.f64 h 3))))))))
(*.f64 -1 (/.f64 g a))
(+.f64 (*.f64 -1/4 (/.f64 (+.f64 h (*.f64 -1 h)) a)) (*.f64 -1 (/.f64 g a)))
(+.f64 (*.f64 -1/4 (/.f64 (+.f64 h (*.f64 -1 h)) a)) (+.f64 (*.f64 -1/4 (/.f64 (-.f64 (*.f64 -1 (pow.f64 h 2)) (pow.f64 (*.f64 1/2 (+.f64 (*.f64 -1 h) h)) 2)) (*.f64 a g))) (*.f64 -1 (/.f64 g a))))
(+.f64 (*.f64 -1/4 (/.f64 (+.f64 h (*.f64 -1 h)) a)) (+.f64 (*.f64 1/8 (/.f64 (*.f64 (-.f64 (*.f64 -1 (pow.f64 h 2)) (pow.f64 (*.f64 1/2 (+.f64 h (*.f64 -1 h))) 2)) (+.f64 (*.f64 -1 h) h)) (*.f64 a (pow.f64 g 2)))) (+.f64 (*.f64 -1/4 (/.f64 (-.f64 (*.f64 -1 (pow.f64 h 2)) (pow.f64 (*.f64 1/2 (+.f64 (*.f64 -1 h) h)) 2)) (*.f64 a g))) (*.f64 -1 (/.f64 g a)))))
(*.f64 1/2 (/.f64 (*.f64 (-.f64 (pow.f64 (sqrt.f64 -1) 2) 1) g) a))
(+.f64 (*.f64 -1/4 (/.f64 (+.f64 h (*.f64 -1 h)) a)) (*.f64 1/2 (/.f64 (*.f64 (-.f64 (pow.f64 (sqrt.f64 -1) 2) 1) g) a)))
(+.f64 (*.f64 -1/4 (/.f64 (+.f64 h (*.f64 -1 h)) a)) (+.f64 (*.f64 1/4 (/.f64 (-.f64 (pow.f64 h 2) (pow.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 h) h) (sqrt.f64 -1))) 2)) (*.f64 a g))) (*.f64 1/2 (/.f64 (*.f64 (-.f64 (pow.f64 (sqrt.f64 -1) 2) 1) g) a))))
(+.f64 (*.f64 -1/4 (/.f64 (+.f64 h (*.f64 -1 h)) a)) (+.f64 (*.f64 1/4 (/.f64 (-.f64 (pow.f64 h 2) (pow.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 h) h) (sqrt.f64 -1))) 2)) (*.f64 a g))) (+.f64 (*.f64 1/8 (/.f64 (*.f64 (-.f64 (pow.f64 h 2) (pow.f64 (*.f64 1/2 (/.f64 (+.f64 h (*.f64 -1 h)) (sqrt.f64 -1))) 2)) (+.f64 (*.f64 -1 h) h)) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 a (pow.f64 g 2))))) (*.f64 1/2 (/.f64 (*.f64 (-.f64 (pow.f64 (sqrt.f64 -1) 2) 1) g) a)))))
(*.f64 -1 (/.f64 g a))
(+.f64 (*.f64 -1 (/.f64 g a)) (*.f64 -1/4 (/.f64 (*.f64 (+.f64 g (*.f64 -1 g)) h) (*.f64 a g))))
(+.f64 (*.f64 1/4 (/.f64 (*.f64 (+.f64 1 (pow.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 g) g) g)) 2)) (pow.f64 h 2)) (*.f64 a g))) (+.f64 (*.f64 -1 (/.f64 g a)) (*.f64 -1/4 (/.f64 (*.f64 (+.f64 g (*.f64 -1 g)) h) (*.f64 a g)))))
(+.f64 (*.f64 1/4 (/.f64 (*.f64 (+.f64 1 (pow.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 g) g) g)) 2)) (pow.f64 h 2)) (*.f64 a g))) (+.f64 (*.f64 -1/8 (/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 1/2 (/.f64 (+.f64 g (*.f64 -1 g)) g)) 2) 1) (*.f64 (+.f64 (*.f64 -1 g) g) (pow.f64 h 3))) (*.f64 a (pow.f64 g 3)))) (+.f64 (*.f64 -1 (/.f64 g a)) (*.f64 -1/4 (/.f64 (*.f64 (+.f64 g (*.f64 -1 g)) h) (*.f64 a g))))))
(*.f64 -1/2 (/.f64 (*.f64 (sqrt.f64 -1) h) a))
(+.f64 (*.f64 -1/2 (+.f64 (/.f64 g a) (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 g) g) (*.f64 (sqrt.f64 -1) a))))) (*.f64 -1/2 (/.f64 (*.f64 (sqrt.f64 -1) h) a)))
(+.f64 (*.f64 -1/4 (/.f64 (-.f64 (pow.f64 g 2) (pow.f64 (*.f64 1/2 (/.f64 (+.f64 g (*.f64 -1 g)) (sqrt.f64 -1))) 2)) (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (+.f64 (*.f64 -1/2 (+.f64 (/.f64 g a) (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 g) g) (*.f64 (sqrt.f64 -1) a))))) (*.f64 -1/2 (/.f64 (*.f64 (sqrt.f64 -1) h) a))))
(+.f64 (*.f64 1/8 (/.f64 (*.f64 (+.f64 g (*.f64 -1 g)) (-.f64 (pow.f64 g 2) (pow.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 g) g) (sqrt.f64 -1))) 2))) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (*.f64 a (pow.f64 h 2))))) (+.f64 (*.f64 -1/4 (/.f64 (-.f64 (pow.f64 g 2) (pow.f64 (*.f64 1/2 (/.f64 (+.f64 g (*.f64 -1 g)) (sqrt.f64 -1))) 2)) (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (+.f64 (*.f64 -1/2 (+.f64 (/.f64 g a) (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 g) g) (*.f64 (sqrt.f64 -1) a))))) (*.f64 -1/2 (/.f64 (*.f64 (sqrt.f64 -1) h) a)))))
(*.f64 1/2 (/.f64 (*.f64 (sqrt.f64 -1) h) a))
(+.f64 (*.f64 -1/2 (+.f64 (/.f64 g a) (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 g) g) (*.f64 (sqrt.f64 -1) a))))) (*.f64 1/2 (/.f64 (*.f64 (sqrt.f64 -1) h) a)))
(+.f64 (*.f64 -1/2 (+.f64 (/.f64 g a) (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 g) g) (*.f64 (sqrt.f64 -1) a))))) (+.f64 (*.f64 1/4 (/.f64 (-.f64 (pow.f64 g 2) (pow.f64 (*.f64 1/2 (/.f64 (+.f64 g (*.f64 -1 g)) (sqrt.f64 -1))) 2)) (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (*.f64 1/2 (/.f64 (*.f64 (sqrt.f64 -1) h) a))))
(+.f64 (*.f64 1/8 (/.f64 (*.f64 (+.f64 g (*.f64 -1 g)) (-.f64 (pow.f64 g 2) (pow.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 g) g) (sqrt.f64 -1))) 2))) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (*.f64 a (pow.f64 h 2))))) (+.f64 (*.f64 -1/2 (+.f64 (/.f64 g a) (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 g) g) (*.f64 (sqrt.f64 -1) a))))) (+.f64 (*.f64 1/4 (/.f64 (-.f64 (pow.f64 g 2) (pow.f64 (*.f64 1/2 (/.f64 (+.f64 g (*.f64 -1 g)) (sqrt.f64 -1))) 2)) (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (*.f64 1/2 (/.f64 (*.f64 (sqrt.f64 -1) h) a)))))
(*.f64 -1/2 (/.f64 (+.f64 (sqrt.f64 (*.f64 (-.f64 g h) (+.f64 g h))) g) a))
(*.f64 -1/2 (/.f64 (+.f64 (sqrt.f64 (*.f64 (-.f64 g h) (+.f64 g h))) g) a))
(*.f64 -1/2 (/.f64 (+.f64 (sqrt.f64 (*.f64 (-.f64 g h) (+.f64 g h))) g) a))
(*.f64 -1/2 (/.f64 (+.f64 (sqrt.f64 (*.f64 (-.f64 g h) (+.f64 g h))) g) a))
(*.f64 -1/2 (/.f64 (+.f64 (sqrt.f64 (*.f64 (-.f64 g h) (+.f64 g h))) g) a))
(*.f64 -1/2 (/.f64 (+.f64 (sqrt.f64 (*.f64 (-.f64 g h) (+.f64 g h))) g) a))
(*.f64 -1/2 (/.f64 (+.f64 (sqrt.f64 (*.f64 (-.f64 g h) (+.f64 g h))) g) a))
(*.f64 -1/2 (/.f64 (+.f64 (sqrt.f64 (*.f64 (-.f64 g h) (+.f64 g h))) g) a))
(*.f64 -1/2 (/.f64 (+.f64 (sqrt.f64 (*.f64 (-.f64 g h) (+.f64 g h))) g) a))
(*.f64 -1/2 (/.f64 (+.f64 (sqrt.f64 (*.f64 (-.f64 g h) (+.f64 g h))) g) a))
(*.f64 -1/2 (/.f64 (+.f64 (sqrt.f64 (*.f64 (-.f64 g h) (+.f64 g h))) g) a))
(*.f64 -1/2 (/.f64 (+.f64 (sqrt.f64 (*.f64 (-.f64 g h) (+.f64 g h))) g) a))
(*.f64 (sqrt.f64 -1) (sqrt.f64 h))
(+.f64 (*.f64 1/2 (*.f64 (/.f64 g (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 h)))) (*.f64 (sqrt.f64 -1) (sqrt.f64 h)))
(+.f64 (*.f64 1/2 (*.f64 (/.f64 g (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 h)))) (+.f64 (*.f64 -1/8 (*.f64 (/.f64 (pow.f64 g 2) (pow.f64 (sqrt.f64 -1) 3)) (sqrt.f64 (/.f64 1 (pow.f64 h 3))))) (*.f64 (sqrt.f64 -1) (sqrt.f64 h))))
(+.f64 (*.f64 1/2 (*.f64 (/.f64 g (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 h)))) (+.f64 (*.f64 -1/8 (*.f64 (/.f64 (pow.f64 g 2) (pow.f64 (sqrt.f64 -1) 3)) (sqrt.f64 (/.f64 1 (pow.f64 h 3))))) (+.f64 (*.f64 (sqrt.f64 -1) (sqrt.f64 h)) (*.f64 1/16 (*.f64 (/.f64 (pow.f64 g 3) (pow.f64 (sqrt.f64 -1) 5)) (sqrt.f64 (/.f64 1 (pow.f64 h 5))))))))
(sqrt.f64 g)
(+.f64 (*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 g)) h)) (sqrt.f64 g))
(+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 g 3))) (pow.f64 h 2))) (+.f64 (*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 g)) h)) (sqrt.f64 g)))
(+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 g 3))) (pow.f64 h 2))) (+.f64 (*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 g)) h)) (+.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 g 5))) (pow.f64 h 3))) (sqrt.f64 g))))
Outputs
(*.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 (*.f64 1/3 (*.f64 (*.f64 (+.f64 (*.f64 1/2 (/.f64 (+.f64 h (*.f64 -1 h)) (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (/.f64 1 a)) (*.f64 (cbrt.f64 -1/2) g)) (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (pow.f64 h 2))) 1/9))) (*.f64 (pow.f64 (/.f64 (*.f64 (sqrt.f64 -1) (*.f64 1 h)) a) 1/3) (cbrt.f64 -1/2)))
(fma.f64 1/3 (*.f64 (*.f64 (*.f64 (cbrt.f64 -1/2) g) (fma.f64 1/2 (/.f64 (*.f64 0 h) (*.f64 (sqrt.f64 -1) (*.f64 h a))) (/.f64 1 a))) (*.f64 (pow.f64 (/.f64 (*.f64 a a) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 h h))) 1/18) (pow.f64 (/.f64 (*.f64 a a) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 h h))) 1/18))) (*.f64 (cbrt.f64 (/.f64 (sqrt.f64 -1) (/.f64 a h))) (cbrt.f64 -1/2)))
(fma.f64 1/3 (*.f64 (*.f64 (cbrt.f64 -1/2) (+.f64 (/.f64 (/.f64 (/.f64 0 a) (sqrt.f64 -1)) h) (/.f64 g a))) (*.f64 (pow.f64 (/.f64 a (/.f64 (*.f64 h (neg.f64 h)) a)) 1/18) (pow.f64 (/.f64 a (/.f64 (*.f64 h (neg.f64 h)) a)) 1/18))) (*.f64 (cbrt.f64 (/.f64 (sqrt.f64 -1) (/.f64 a h))) (cbrt.f64 -1/2)))
(+.f64 (*.f64 1/3 (*.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (pow.f64 g 2) (-.f64 (*.f64 1/2 (/.f64 (-.f64 1 (pow.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 h) h) (*.f64 (sqrt.f64 -1) h))) 2)) (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 (*.f64 1 a) (*.f64 (sqrt.f64 -1) h)) 1/9) (pow.f64 (+.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 h) h) (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (/.f64 1 a)) 2)))))) (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (pow.f64 h 2))) 1/3))) (+.f64 (*.f64 1/3 (*.f64 (*.f64 (+.f64 (*.f64 1/2 (/.f64 (+.f64 h (*.f64 -1 h)) (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (/.f64 1 a)) (*.f64 (cbrt.f64 -1/2) g)) (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (pow.f64 h 2))) 1/9))) (*.f64 (pow.f64 (/.f64 (*.f64 (sqrt.f64 -1) (*.f64 1 h)) a) 1/3) (cbrt.f64 -1/2))))
(fma.f64 1/3 (*.f64 (cbrt.f64 -1/2) (*.f64 (*.f64 (*.f64 g g) (fma.f64 1/2 (/.f64 (-.f64 1 (pow.f64 (/.f64 (*.f64 1/2 (*.f64 0 h)) (*.f64 (sqrt.f64 -1) h)) 2)) (*.f64 (sqrt.f64 -1) (*.f64 h a))) (neg.f64 (*.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 a (*.f64 (sqrt.f64 -1) h)) 1/18) (pow.f64 (/.f64 a (*.f64 (sqrt.f64 -1) h)) 1/18))) (pow.f64 (fma.f64 1/2 (/.f64 (*.f64 0 h) (*.f64 (sqrt.f64 -1) (*.f64 h a))) (/.f64 1 a)) 2))))) (cbrt.f64 (/.f64 (*.f64 a a) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 h h)))))) (fma.f64 1/3 (*.f64 (*.f64 (*.f64 (cbrt.f64 -1/2) g) (fma.f64 1/2 (/.f64 (*.f64 0 h) (*.f64 (sqrt.f64 -1) (*.f64 h a))) (/.f64 1 a))) (*.f64 (pow.f64 (/.f64 (*.f64 a a) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 h h))) 1/18) (pow.f64 (/.f64 (*.f64 a a) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 h h))) 1/18))) (*.f64 (cbrt.f64 (/.f64 (sqrt.f64 -1) (/.f64 a h))) (cbrt.f64 -1/2))))
(fma.f64 1/3 (*.f64 (*.f64 (fma.f64 1/2 (/.f64 (-.f64 1 (pow.f64 (/.f64 0 (*.f64 (sqrt.f64 -1) h)) 2)) (*.f64 (sqrt.f64 -1) (*.f64 h a))) (*.f64 (*.f64 -1/3 (pow.f64 (+.f64 (/.f64 1 a) (/.f64 (/.f64 (/.f64 0 a) (sqrt.f64 -1)) h)) 2)) (*.f64 (pow.f64 (/.f64 a (*.f64 (sqrt.f64 -1) h)) 1/18) (pow.f64 (/.f64 a (*.f64 (sqrt.f64 -1) h)) 1/18)))) (*.f64 (cbrt.f64 -1/2) (*.f64 g g))) (cbrt.f64 (/.f64 a (/.f64 (*.f64 h (neg.f64 h)) a)))) (fma.f64 1/3 (*.f64 (*.f64 (cbrt.f64 -1/2) (+.f64 (/.f64 (/.f64 (/.f64 0 a) (sqrt.f64 -1)) h) (/.f64 g a))) (*.f64 (pow.f64 (/.f64 a (/.f64 (*.f64 h (neg.f64 h)) a)) 1/18) (pow.f64 (/.f64 a (/.f64 (*.f64 h (neg.f64 h)) a)) 1/18))) (*.f64 (cbrt.f64 (/.f64 (sqrt.f64 -1) (/.f64 a h))) (cbrt.f64 -1/2))))
(+.f64 (*.f64 1/3 (*.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (pow.f64 g 2) (-.f64 (*.f64 1/2 (/.f64 (-.f64 1 (pow.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 h) h) (*.f64 (sqrt.f64 -1) h))) 2)) (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 (*.f64 1 a) (*.f64 (sqrt.f64 -1) h)) 1/9) (pow.f64 (+.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 h) h) (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (/.f64 1 a)) 2)))))) (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (pow.f64 h 2))) 1/3))) (+.f64 (*.f64 1/3 (*.f64 (*.f64 (+.f64 (*.f64 1/2 (/.f64 (+.f64 h (*.f64 -1 h)) (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (/.f64 1 a)) (*.f64 (cbrt.f64 -1/2) g)) (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (pow.f64 h 2))) 1/9))) (+.f64 (*.f64 (pow.f64 (/.f64 (*.f64 (sqrt.f64 -1) (*.f64 1 h)) a) 1/3) (cbrt.f64 -1/2)) (*.f64 1/3 (*.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (pow.f64 g 3) (-.f64 (*.f64 -1/4 (/.f64 (*.f64 (-.f64 1 (pow.f64 (*.f64 1/2 (/.f64 (+.f64 h (*.f64 -1 h)) (*.f64 (sqrt.f64 -1) h))) 2)) (+.f64 (*.f64 -1 h) h)) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (*.f64 a (pow.f64 h 3))))) (+.f64 (*.f64 2/3 (*.f64 (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 5)) (*.f64 (pow.f64 (sqrt.f64 -1) 5) (pow.f64 h 5))) 1/9) (*.f64 (-.f64 (*.f64 1/2 (/.f64 (-.f64 1 (pow.f64 (*.f64 1/2 (/.f64 (+.f64 h (*.f64 -1 h)) (*.f64 (sqrt.f64 -1) h))) 2)) (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (*.f64 1/3 (*.f64 (pow.f64 (+.f64 (*.f64 1/2 (/.f64 (+.f64 h (*.f64 -1 h)) (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (/.f64 1 a)) 2) (pow.f64 (/.f64 (*.f64 1 a) (*.f64 (sqrt.f64 -1) h)) 1/9)))) (+.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 h) h) (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (/.f64 1 a))))) (*.f64 1/27 (*.f64 (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (pow.f64 h 2))) 1/3) (pow.f64 (+.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 h) h) (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (/.f64 1 a)) 3))))))) (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (pow.f64 h 2))) 1/3))))))
(fma.f64 1/3 (*.f64 (cbrt.f64 -1/2) (*.f64 (*.f64 (*.f64 g g) (fma.f64 1/2 (/.f64 (-.f64 1 (pow.f64 (/.f64 (*.f64 1/2 (*.f64 0 h)) (*.f64 (sqrt.f64 -1) h)) 2)) (*.f64 (sqrt.f64 -1) (*.f64 h a))) (neg.f64 (*.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 a (*.f64 (sqrt.f64 -1) h)) 1/18) (pow.f64 (/.f64 a (*.f64 (sqrt.f64 -1) h)) 1/18))) (pow.f64 (fma.f64 1/2 (/.f64 (*.f64 0 h) (*.f64 (sqrt.f64 -1) (*.f64 h a))) (/.f64 1 a)) 2))))) (cbrt.f64 (/.f64 (*.f64 a a) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 h h)))))) (fma.f64 1/3 (*.f64 (*.f64 (*.f64 (cbrt.f64 -1/2) g) (fma.f64 1/2 (/.f64 (*.f64 0 h) (*.f64 (sqrt.f64 -1) (*.f64 h a))) (/.f64 1 a))) (*.f64 (pow.f64 (/.f64 (*.f64 a a) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 h h))) 1/18) (pow.f64 (/.f64 (*.f64 a a) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 h h))) 1/18))) (fma.f64 (cbrt.f64 (/.f64 (sqrt.f64 -1) (/.f64 a h))) (cbrt.f64 -1/2) (*.f64 (*.f64 1/3 (*.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 g 3)) (-.f64 (*.f64 -1/4 (*.f64 (/.f64 (-.f64 1 (pow.f64 (/.f64 (*.f64 1/2 (*.f64 0 h)) (*.f64 (sqrt.f64 -1) h)) 2)) (pow.f64 (sqrt.f64 -1) 3)) (/.f64 (*.f64 0 h) (*.f64 a (pow.f64 h 3))))) (fma.f64 2/3 (*.f64 (*.f64 (pow.f64 (/.f64 (pow.f64 a 5) (*.f64 (pow.f64 (sqrt.f64 -1) 5) (pow.f64 h 5))) 1/18) (pow.f64 (/.f64 (pow.f64 a 5) (*.f64 (pow.f64 (sqrt.f64 -1) 5) (pow.f64 h 5))) 1/18)) (*.f64 (fma.f64 1/2 (/.f64 (*.f64 0 h) (*.f64 (sqrt.f64 -1) (*.f64 h a))) (/.f64 1 a)) (fma.f64 1/2 (/.f64 (-.f64 1 (pow.f64 (/.f64 (*.f64 1/2 (*.f64 0 h)) (*.f64 (sqrt.f64 -1) h)) 2)) (*.f64 (sqrt.f64 -1) (*.f64 h a))) (neg.f64 (*.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 a (*.f64 (sqrt.f64 -1) h)) 1/18) (pow.f64 (/.f64 a (*.f64 (sqrt.f64 -1) h)) 1/18))) (pow.f64 (fma.f64 1/2 (/.f64 (*.f64 0 h) (*.f64 (sqrt.f64 -1) (*.f64 h a))) (/.f64 1 a)) 2)))))) (*.f64 1/27 (*.f64 (cbrt.f64 (/.f64 (*.f64 a a) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 h h)))) (pow.f64 (fma.f64 1/2 (/.f64 (*.f64 0 h) (*.f64 (sqrt.f64 -1) (*.f64 h a))) (/.f64 1 a)) 3))))))) (cbrt.f64 (/.f64 (*.f64 a a) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 h h))))))))
(fma.f64 1/3 (*.f64 (*.f64 (fma.f64 1/2 (/.f64 (-.f64 1 (pow.f64 (/.f64 0 (*.f64 (sqrt.f64 -1) h)) 2)) (*.f64 (sqrt.f64 -1) (*.f64 h a))) (*.f64 (*.f64 -1/3 (pow.f64 (+.f64 (/.f64 1 a) (/.f64 (/.f64 (/.f64 0 a) (sqrt.f64 -1)) h)) 2)) (*.f64 (pow.f64 (/.f64 a (*.f64 (sqrt.f64 -1) h)) 1/18) (pow.f64 (/.f64 a (*.f64 (sqrt.f64 -1) h)) 1/18)))) (*.f64 (cbrt.f64 -1/2) (*.f64 g g))) (cbrt.f64 (/.f64 a (/.f64 (*.f64 h (neg.f64 h)) a)))) (fma.f64 1/3 (*.f64 (*.f64 (cbrt.f64 -1/2) (+.f64 (/.f64 (/.f64 (/.f64 0 a) (sqrt.f64 -1)) h) (/.f64 g a))) (*.f64 (pow.f64 (/.f64 a (/.f64 (*.f64 h (neg.f64 h)) a)) 1/18) (pow.f64 (/.f64 a (/.f64 (*.f64 h (neg.f64 h)) a)) 1/18))) (fma.f64 1/3 (*.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 (/.f64 a (/.f64 (*.f64 h (neg.f64 h)) a))) (*.f64 (pow.f64 g 3) (-.f64 (/.f64 (-.f64 1 (pow.f64 (/.f64 0 (*.f64 (sqrt.f64 -1) h)) 2)) (/.f64 (*.f64 a (pow.f64 h 3)) (/.f64 0 (sqrt.f64 -1)))) (fma.f64 2/3 (*.f64 (+.f64 (/.f64 1 a) (/.f64 (/.f64 (/.f64 0 a) (sqrt.f64 -1)) h)) (*.f64 (*.f64 (pow.f64 (/.f64 (pow.f64 a 5) (*.f64 (pow.f64 (sqrt.f64 -1) 5) (pow.f64 h 5))) 1/18) (pow.f64 (/.f64 (pow.f64 a 5) (*.f64 (pow.f64 (sqrt.f64 -1) 5) (pow.f64 h 5))) 1/18)) (fma.f64 1/2 (/.f64 (-.f64 1 (pow.f64 (/.f64 0 (*.f64 (sqrt.f64 -1) h)) 2)) (*.f64 (sqrt.f64 -1) (*.f64 h a))) (*.f64 (*.f64 -1/3 (pow.f64 (+.f64 (/.f64 1 a) (/.f64 (/.f64 (/.f64 0 a) (sqrt.f64 -1)) h)) 2)) (*.f64 (pow.f64 (/.f64 a (*.f64 (sqrt.f64 -1) h)) 1/18) (pow.f64 (/.f64 a (*.f64 (sqrt.f64 -1) h)) 1/18)))))) (*.f64 (cbrt.f64 (/.f64 a (/.f64 (*.f64 h (neg.f64 h)) a))) (*.f64 (pow.f64 (+.f64 (/.f64 1 a) (/.f64 (/.f64 (/.f64 0 a) (sqrt.f64 -1)) h)) 3) 1/27))))))) (*.f64 (cbrt.f64 (/.f64 (sqrt.f64 -1) (/.f64 a h))) (cbrt.f64 -1/2)))))
(*.f64 (pow.f64 (/.f64 (*.f64 1 g) a) 1/3) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)))
(*.f64 (*.f64 (cbrt.f64 (/.f64 g a)) (cbrt.f64 -1/2)) (cbrt.f64 2))
(*.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 2) (cbrt.f64 (/.f64 g a))))
(+.f64 (*.f64 1/6 (*.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (+.f64 (*.f64 -1 g) g) h)) (*.f64 (pow.f64 (/.f64 (pow.f64 1 4) (*.f64 (pow.f64 a 7) (pow.f64 g 11))) 1/9) (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 2) 2)) 1/3)))) (*.f64 (pow.f64 (/.f64 (*.f64 1 g) a) 1/3) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2))))
(fma.f64 1/6 (*.f64 (*.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 h (*.f64 0 g))) (*.f64 (pow.f64 (/.f64 (/.f64 1 (pow.f64 a 7)) (pow.f64 g 11)) 1/18) (pow.f64 (/.f64 (/.f64 1 (pow.f64 a 7)) (pow.f64 g 11)) 1/18))) (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 2) 2)))) (*.f64 (*.f64 (cbrt.f64 (/.f64 g a)) (cbrt.f64 -1/2)) (cbrt.f64 2)))
(fma.f64 (cbrt.f64 (/.f64 g a)) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)) (*.f64 (cbrt.f64 -1/2) (*.f64 (*.f64 0 (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 2) 2)))) (*.f64 (pow.f64 (/.f64 (/.f64 1 (pow.f64 a 7)) (pow.f64 g 11)) 1/18) (pow.f64 (/.f64 (/.f64 1 (pow.f64 a 7)) (pow.f64 g 11)) 1/18)))))
(+.f64 (*.f64 1/6 (*.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (+.f64 (*.f64 -1 g) g) h)) (*.f64 (pow.f64 (/.f64 (pow.f64 1 4) (*.f64 (pow.f64 a 7) (pow.f64 g 11))) 1/9) (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 2) 2)) 1/3)))) (+.f64 (*.f64 1/3 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (-.f64 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (*.f64 1/2 (/.f64 (+.f64 g (*.f64 -1 g)) g)) 2) 1) (*.f64 a g))) (*.f64 1/12 (*.f64 (pow.f64 (/.f64 (pow.f64 1 4) (*.f64 (pow.f64 a 17) (pow.f64 g 19))) 1/9) (*.f64 (pow.f64 (/.f64 1 (cbrt.f64 2)) 1/3) (pow.f64 (+.f64 g (*.f64 -1 g)) 2))))) (pow.f64 h 2))) (pow.f64 (cbrt.f64 2) 2)) (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (pow.f64 g 2)) 1/3))) (*.f64 (pow.f64 (/.f64 (*.f64 1 g) a) 1/3) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)))))
(fma.f64 1/6 (*.f64 (*.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 h (*.f64 0 g))) (*.f64 (pow.f64 (/.f64 (/.f64 1 (pow.f64 a 7)) (pow.f64 g 11)) 1/18) (pow.f64 (/.f64 (/.f64 1 (pow.f64 a 7)) (pow.f64 g 11)) 1/18))) (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 2) 2)))) (fma.f64 1/3 (/.f64 (*.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (*.f64 h h) (-.f64 (*.f64 -1/2 (/.f64 (+.f64 1 (pow.f64 (*.f64 1/2 (/.f64 (*.f64 0 g) g)) 2)) (*.f64 a g))) (*.f64 1/12 (*.f64 (*.f64 (pow.f64 (/.f64 (/.f64 1 (pow.f64 a 17)) (pow.f64 g 19)) 1/18) (pow.f64 (/.f64 (/.f64 1 (pow.f64 a 17)) (pow.f64 g 19)) 1/18)) (*.f64 (cbrt.f64 (/.f64 1 (cbrt.f64 2))) (pow.f64 (*.f64 0 g) 2))))))) (cbrt.f64 (/.f64 (*.f64 a a) (*.f64 g g)))) (pow.f64 (cbrt.f64 2) 2)) (*.f64 (*.f64 (cbrt.f64 (/.f64 g a)) (cbrt.f64 -1/2)) (cbrt.f64 2))))
(fma.f64 (*.f64 (cbrt.f64 -1/2) 0) (*.f64 (*.f64 (pow.f64 (/.f64 (/.f64 1 (pow.f64 a 7)) (pow.f64 g 11)) 1/18) (pow.f64 (/.f64 (/.f64 1 (pow.f64 a 7)) (pow.f64 g 11)) 1/18)) (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 2) 2)))) (fma.f64 1/3 (/.f64 (*.f64 (-.f64 (*.f64 (/.f64 -1/2 a) (/.f64 (+.f64 1 (/.f64 0 (*.f64 g g))) g)) (*.f64 0 (*.f64 (*.f64 (pow.f64 (/.f64 (/.f64 1 (pow.f64 a 17)) (pow.f64 g 19)) 1/18) (pow.f64 (/.f64 (/.f64 1 (pow.f64 a 17)) (pow.f64 g 19)) 1/18)) (cbrt.f64 (/.f64 1 (cbrt.f64 2)))))) (*.f64 (*.f64 h h) (cbrt.f64 -1/2))) (/.f64 (pow.f64 (cbrt.f64 2) 2) (cbrt.f64 (*.f64 (/.f64 a g) (/.f64 a g))))) (*.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 2) (cbrt.f64 (/.f64 g a))))))
(+.f64 (*.f64 1/6 (*.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (+.f64 (*.f64 -1 g) g) h)) (*.f64 (pow.f64 (/.f64 (pow.f64 1 4) (*.f64 (pow.f64 a 7) (pow.f64 g 11))) 1/9) (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 2) 2)) 1/3)))) (+.f64 (*.f64 1/3 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (-.f64 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (*.f64 1/2 (/.f64 (+.f64 g (*.f64 -1 g)) g)) 2) 1) (*.f64 a g))) (*.f64 1/12 (*.f64 (pow.f64 (/.f64 (pow.f64 1 4) (*.f64 (pow.f64 a 17) (pow.f64 g 19))) 1/9) (*.f64 (pow.f64 (/.f64 1 (cbrt.f64 2)) 1/3) (pow.f64 (+.f64 g (*.f64 -1 g)) 2))))) (pow.f64 h 2))) (pow.f64 (cbrt.f64 2) 2)) (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (pow.f64 g 2)) 1/3))) (+.f64 (*.f64 1/3 (*.f64 (/.f64 (*.f64 (-.f64 (*.f64 1/4 (/.f64 (*.f64 (+.f64 1 (pow.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 g) g) g)) 2)) (+.f64 g (*.f64 -1 g))) (*.f64 a (pow.f64 g 3)))) (+.f64 (*.f64 1/216 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 a 7) (pow.f64 g 11))) 1/3) (/.f64 (pow.f64 (+.f64 g (*.f64 -1 g)) 3) (pow.f64 (cbrt.f64 2) 2)))) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 (pow.f64 1 4) (*.f64 (pow.f64 a 4) (pow.f64 g 14))) 1/9) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 2) 5)) 1/3) (*.f64 (+.f64 g (*.f64 -1 g)) (-.f64 (*.f64 -1/2 (/.f64 (+.f64 1 (pow.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 g) g) g)) 2)) (*.f64 a g))) (*.f64 1/12 (*.f64 (pow.f64 (/.f64 (pow.f64 1 4) (*.f64 (pow.f64 a 17) (pow.f64 g 19))) 1/9) (*.f64 (pow.f64 (/.f64 1 (cbrt.f64 2)) 1/3) (pow.f64 (+.f64 (*.f64 -1 g) g) 2))))))))))) (*.f64 (cbrt.f64 -1/2) (pow.f64 h 3))) (pow.f64 (cbrt.f64 2) 2)) (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (pow.f64 g 2)) 1/3))) (*.f64 (pow.f64 (/.f64 (*.f64 1 g) a) 1/3) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2))))))
(fma.f64 1/6 (*.f64 (*.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 h (*.f64 0 g))) (*.f64 (pow.f64 (/.f64 (/.f64 1 (pow.f64 a 7)) (pow.f64 g 11)) 1/18) (pow.f64 (/.f64 (/.f64 1 (pow.f64 a 7)) (pow.f64 g 11)) 1/18))) (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 2) 2)))) (fma.f64 1/3 (/.f64 (*.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (*.f64 h h) (-.f64 (*.f64 -1/2 (/.f64 (+.f64 1 (pow.f64 (*.f64 1/2 (/.f64 (*.f64 0 g) g)) 2)) (*.f64 a g))) (*.f64 1/12 (*.f64 (*.f64 (pow.f64 (/.f64 (/.f64 1 (pow.f64 a 17)) (pow.f64 g 19)) 1/18) (pow.f64 (/.f64 (/.f64 1 (pow.f64 a 17)) (pow.f64 g 19)) 1/18)) (*.f64 (cbrt.f64 (/.f64 1 (cbrt.f64 2))) (pow.f64 (*.f64 0 g) 2))))))) (cbrt.f64 (/.f64 (*.f64 a a) (*.f64 g g)))) (pow.f64 (cbrt.f64 2) 2)) (fma.f64 1/3 (*.f64 (cbrt.f64 (/.f64 (*.f64 a a) (*.f64 g g))) (/.f64 (-.f64 (*.f64 1/4 (*.f64 (/.f64 (+.f64 1 (pow.f64 (*.f64 1/2 (/.f64 (*.f64 0 g) g)) 2)) a) (/.f64 (*.f64 0 g) (pow.f64 g 3)))) (fma.f64 1/216 (/.f64 (*.f64 (cbrt.f64 (/.f64 (/.f64 1 (pow.f64 a 7)) (pow.f64 g 11))) (pow.f64 (*.f64 0 g) 3)) (pow.f64 (cbrt.f64 2) 2)) (*.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 a 4) (pow.f64 g 14))) 1/18) (pow.f64 (/.f64 1 (*.f64 (pow.f64 a 4) (pow.f64 g 14))) 1/18))) (*.f64 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 2) 5))) (*.f64 0 g)) (-.f64 (*.f64 -1/2 (/.f64 (+.f64 1 (pow.f64 (*.f64 1/2 (/.f64 (*.f64 0 g) g)) 2)) (*.f64 a g))) (*.f64 1/12 (*.f64 (*.f64 (pow.f64 (/.f64 (/.f64 1 (pow.f64 a 17)) (pow.f64 g 19)) 1/18) (pow.f64 (/.f64 (/.f64 1 (pow.f64 a 17)) (pow.f64 g 19)) 1/18)) (*.f64 (cbrt.f64 (/.f64 1 (cbrt.f64 2))) (pow.f64 (*.f64 0 g) 2))))))))) (/.f64 (pow.f64 (cbrt.f64 2) 2) (*.f64 (cbrt.f64 -1/2) (pow.f64 h 3))))) (*.f64 (*.f64 (cbrt.f64 (/.f64 g a)) (cbrt.f64 -1/2)) (cbrt.f64 2)))))
(+.f64 (*.f64 (cbrt.f64 (*.f64 (/.f64 a g) (/.f64 a g))) (+.f64 (/.f64 (*.f64 1/3 (cbrt.f64 -1/2)) (/.f64 (/.f64 (pow.f64 (cbrt.f64 2) 2) (*.f64 h h)) (-.f64 (*.f64 (/.f64 -1/2 a) (/.f64 (+.f64 1 (/.f64 0 (*.f64 g g))) g)) (*.f64 0 (*.f64 (*.f64 (pow.f64 (/.f64 (/.f64 1 (pow.f64 a 17)) (pow.f64 g 19)) 1/18) (pow.f64 (/.f64 (/.f64 1 (pow.f64 a 17)) (pow.f64 g 19)) 1/18)) (cbrt.f64 (/.f64 1 (cbrt.f64 2)))))))) (/.f64 (*.f64 1/3 (-.f64 (*.f64 (/.f64 0 a) (/.f64 (+.f64 1 (/.f64 0 (*.f64 g g))) (pow.f64 g 3))) (fma.f64 1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 a 4) (pow.f64 g 14))) 1/18) (pow.f64 (/.f64 1 (*.f64 (pow.f64 a 4) (pow.f64 g 14))) 1/18)) (*.f64 (-.f64 (*.f64 (/.f64 -1/2 a) (/.f64 (+.f64 1 (/.f64 0 (*.f64 g g))) g)) (*.f64 0 (*.f64 (*.f64 (pow.f64 (/.f64 (/.f64 1 (pow.f64 a 17)) (pow.f64 g 19)) 1/18) (pow.f64 (/.f64 (/.f64 1 (pow.f64 a 17)) (pow.f64 g 19)) 1/18)) (cbrt.f64 (/.f64 1 (cbrt.f64 2)))))) (*.f64 0 (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 2) 5)))))) (*.f64 (cbrt.f64 (/.f64 (/.f64 1 (pow.f64 a 7)) (pow.f64 g 11))) (*.f64 (/.f64 0 (pow.f64 (cbrt.f64 2) 2)) 1/216))))) (/.f64 (/.f64 (pow.f64 (cbrt.f64 2) 2) (cbrt.f64 -1/2)) (pow.f64 h 3))))) (fma.f64 (cbrt.f64 (/.f64 g a)) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)) (*.f64 (cbrt.f64 -1/2) (*.f64 (*.f64 0 (cbrt.f64 (/.f64 1 (pow.f64 (cbrt.f64 2) 2)))) (*.f64 (pow.f64 (/.f64 (/.f64 1 (pow.f64 a 7)) (pow.f64 g 11)) 1/18) (pow.f64 (/.f64 (/.f64 1 (pow.f64 a 7)) (pow.f64 g 11)) 1/18))))))
(*.f64 (sqrt.f64 -1) h)
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (+.f64 h (*.f64 -1 h)) g) (*.f64 (sqrt.f64 -1) h))) (*.f64 (sqrt.f64 -1) h))
(fma.f64 1/2 (*.f64 (/.f64 (*.f64 0 h) (sqrt.f64 -1)) (/.f64 g h)) (*.f64 (sqrt.f64 -1) h))
(fma.f64 (sqrt.f64 -1) h (/.f64 0 (*.f64 (sqrt.f64 -1) h)))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (+.f64 h (*.f64 -1 h)) g) (*.f64 (sqrt.f64 -1) h))) (+.f64 (*.f64 (sqrt.f64 -1) h) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 g 2) (-.f64 1 (pow.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 h) h) (*.f64 (sqrt.f64 -1) h))) 2))) (*.f64 (sqrt.f64 -1) h)))))
(fma.f64 1/2 (*.f64 (/.f64 (*.f64 0 h) (sqrt.f64 -1)) (/.f64 g h)) (fma.f64 (sqrt.f64 -1) h (*.f64 1/2 (*.f64 (/.f64 (*.f64 g g) (sqrt.f64 -1)) (/.f64 (-.f64 1 (pow.f64 (/.f64 (*.f64 1/2 (*.f64 0 h)) (*.f64 (sqrt.f64 -1) h)) 2)) h)))))
(+.f64 (/.f64 0 (*.f64 (sqrt.f64 -1) h)) (fma.f64 1/2 (*.f64 (/.f64 (-.f64 1 (pow.f64 (/.f64 0 (*.f64 (sqrt.f64 -1) h)) 2)) (sqrt.f64 -1)) (/.f64 (*.f64 g g) h)) (*.f64 (sqrt.f64 -1) h)))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (+.f64 h (*.f64 -1 h)) g) (*.f64 (sqrt.f64 -1) h))) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (-.f64 1 (pow.f64 (*.f64 1/2 (/.f64 (+.f64 h (*.f64 -1 h)) (*.f64 (sqrt.f64 -1) h))) 2)) (*.f64 (pow.f64 g 3) (+.f64 (*.f64 -1 h) h))) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3)))) (+.f64 (*.f64 (sqrt.f64 -1) h) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 g 2) (-.f64 1 (pow.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 h) h) (*.f64 (sqrt.f64 -1) h))) 2))) (*.f64 (sqrt.f64 -1) h))))))
(fma.f64 1/2 (*.f64 (/.f64 (*.f64 0 h) (sqrt.f64 -1)) (/.f64 g h)) (fma.f64 -1/4 (*.f64 (/.f64 (-.f64 1 (pow.f64 (/.f64 (*.f64 1/2 (*.f64 0 h)) (*.f64 (sqrt.f64 -1) h)) 2)) (pow.f64 (sqrt.f64 -1) 3)) (/.f64 (*.f64 (*.f64 0 h) (pow.f64 g 3)) (pow.f64 h 3))) (fma.f64 (sqrt.f64 -1) h (*.f64 1/2 (*.f64 (/.f64 (*.f64 g g) (sqrt.f64 -1)) (/.f64 (-.f64 1 (pow.f64 (/.f64 (*.f64 1/2 (*.f64 0 h)) (*.f64 (sqrt.f64 -1) h)) 2)) h))))))
(+.f64 (/.f64 0 (*.f64 (sqrt.f64 -1) h)) (+.f64 (fma.f64 1/2 (*.f64 (/.f64 (-.f64 1 (pow.f64 (/.f64 0 (*.f64 (sqrt.f64 -1) h)) 2)) (sqrt.f64 -1)) (/.f64 (*.f64 g g) h)) (*.f64 (sqrt.f64 -1) h)) (*.f64 (/.f64 0 (sqrt.f64 -1)) (/.f64 (-.f64 1 (pow.f64 (/.f64 0 (*.f64 (sqrt.f64 -1) h)) 2)) (pow.f64 h 3)))))
g
(+.f64 (*.f64 1/2 (+.f64 (*.f64 -1 h) h)) g)
g
(+.f64 (*.f64 1/2 (+.f64 (*.f64 -1 h) h)) (+.f64 g (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1 (pow.f64 h 2)) (pow.f64 (*.f64 1/2 (+.f64 h (*.f64 -1 h))) 2)) g))))
(+.f64 (fma.f64 1/2 (*.f64 0 h) g) (*.f64 1/2 (/.f64 (-.f64 (neg.f64 (*.f64 h h)) (pow.f64 (*.f64 1/2 (*.f64 0 h)) 2)) g)))
(fma.f64 1/2 (/.f64 (fma.f64 -1 (*.f64 h h) 0) g) g)
(fma.f64 1/2 (/.f64 (fma.f64 h (neg.f64 h) 0) g) g)
(+.f64 (*.f64 1/2 (+.f64 (*.f64 -1 h) h)) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (-.f64 (*.f64 -1 (pow.f64 h 2)) (pow.f64 (*.f64 1/2 (+.f64 (*.f64 -1 h) h)) 2)) (+.f64 h (*.f64 -1 h))) (pow.f64 g 2))) (+.f64 g (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1 (pow.f64 h 2)) (pow.f64 (*.f64 1/2 (+.f64 h (*.f64 -1 h))) 2)) g)))))
(fma.f64 1/2 (*.f64 0 h) (fma.f64 -1/4 (/.f64 (-.f64 (neg.f64 (*.f64 h h)) (pow.f64 (*.f64 1/2 (*.f64 0 h)) 2)) (/.f64 (*.f64 g g) (*.f64 0 h))) (+.f64 g (*.f64 1/2 (/.f64 (-.f64 (neg.f64 (*.f64 h h)) (pow.f64 (*.f64 1/2 (*.f64 0 h)) 2)) g)))))
(+.f64 (fma.f64 1/2 (/.f64 (fma.f64 -1 (*.f64 h h) 0) g) g) (*.f64 (/.f64 0 g) (/.f64 (fma.f64 -1 (*.f64 h h) 0) g)))
(+.f64 (fma.f64 1/2 (/.f64 (fma.f64 h (neg.f64 h) 0) g) g) (*.f64 (/.f64 0 g) (/.f64 (fma.f64 h (neg.f64 h) 0) g)))
(*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) g))
g
(+.f64 (*.f64 1/2 (+.f64 (*.f64 -1 h) h)) (*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) g)))
g
(+.f64 (*.f64 1/2 (+.f64 (*.f64 -1 h) h)) (+.f64 (*.f64 -1/2 (/.f64 (-.f64 (pow.f64 h 2) (pow.f64 (*.f64 1/2 (/.f64 (+.f64 h (*.f64 -1 h)) (sqrt.f64 -1))) 2)) g)) (*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) g))))
(fma.f64 1/2 (*.f64 0 h) (fma.f64 -1/2 (/.f64 (-.f64 (*.f64 h h) (pow.f64 (*.f64 1/2 (/.f64 (*.f64 0 h) (sqrt.f64 -1))) 2)) g) (neg.f64 (*.f64 g (pow.f64 (sqrt.f64 -1) 2)))))
(fma.f64 -1/2 (/.f64 (-.f64 (*.f64 h h) (pow.f64 (/.f64 0 (sqrt.f64 -1)) 2)) g) g)
(+.f64 (*.f64 1/2 (+.f64 (*.f64 -1 h) h)) (+.f64 (*.f64 -1/2 (/.f64 (-.f64 (pow.f64 h 2) (pow.f64 (*.f64 1/2 (/.f64 (+.f64 h (*.f64 -1 h)) (sqrt.f64 -1))) 2)) g)) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (+.f64 h (*.f64 -1 h)) (-.f64 (pow.f64 h 2) (pow.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 h) h) (sqrt.f64 -1))) 2))) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (pow.f64 g 2)))) (*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) g)))))
(fma.f64 1/2 (*.f64 0 h) (fma.f64 -1/2 (/.f64 (-.f64 (*.f64 h h) (pow.f64 (*.f64 1/2 (/.f64 (*.f64 0 h) (sqrt.f64 -1))) 2)) g) (fma.f64 -1/4 (*.f64 (/.f64 (*.f64 0 h) (pow.f64 (sqrt.f64 -1) 2)) (/.f64 (-.f64 (*.f64 h h) (pow.f64 (*.f64 1/2 (/.f64 (*.f64 0 h) (sqrt.f64 -1))) 2)) (*.f64 g g))) (neg.f64 (*.f64 g (pow.f64 (sqrt.f64 -1) 2))))))
(+.f64 g (fma.f64 -1/2 (/.f64 (-.f64 (*.f64 h h) (pow.f64 (/.f64 0 (sqrt.f64 -1)) 2)) g) (*.f64 0 (/.f64 (-.f64 (*.f64 h h) (pow.f64 (/.f64 0 (sqrt.f64 -1)) 2)) (*.f64 g g)))))
(fma.f64 -1/2 (/.f64 (-.f64 (*.f64 h h) (pow.f64 (/.f64 0 (sqrt.f64 -1)) 2)) g) (fma.f64 0 (/.f64 (-.f64 (*.f64 h h) (pow.f64 (/.f64 0 (sqrt.f64 -1)) 2)) (*.f64 g g)) g))
g
(+.f64 g (*.f64 1/2 (/.f64 (*.f64 h (+.f64 (*.f64 -1 g) g)) g)))
(+.f64 g (*.f64 1/2 (/.f64 h (/.f64 g (*.f64 0 g)))))
(+.f64 g (/.f64 0 g))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 1/2 (/.f64 (+.f64 g (*.f64 -1 g)) g)) 2) 1) (pow.f64 h 2)) g)) (+.f64 g (*.f64 1/2 (/.f64 (*.f64 h (+.f64 (*.f64 -1 g) g)) g))))
(fma.f64 -1/2 (/.f64 (+.f64 1 (pow.f64 (*.f64 1/2 (/.f64 (*.f64 0 g) g)) 2)) (/.f64 g (*.f64 h h))) (+.f64 g (*.f64 1/2 (/.f64 h (/.f64 g (*.f64 0 g))))))
(+.f64 (/.f64 0 g) (fma.f64 -1/2 (*.f64 (/.f64 (+.f64 1 (/.f64 0 (*.f64 g g))) g) (*.f64 h h)) g))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 1/2 (/.f64 (+.f64 g (*.f64 -1 g)) g)) 2) 1) (pow.f64 h 2)) g)) (+.f64 (*.f64 1/4 (/.f64 (*.f64 (+.f64 1 (pow.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 g) g) g)) 2)) (*.f64 (+.f64 g (*.f64 -1 g)) (pow.f64 h 3))) (pow.f64 g 3))) (+.f64 g (*.f64 1/2 (/.f64 (*.f64 h (+.f64 (*.f64 -1 g) g)) g)))))
(fma.f64 -1/2 (/.f64 (+.f64 1 (pow.f64 (*.f64 1/2 (/.f64 (*.f64 0 g) g)) 2)) (/.f64 g (*.f64 h h))) (fma.f64 1/4 (/.f64 (+.f64 1 (pow.f64 (*.f64 1/2 (/.f64 (*.f64 0 g) g)) 2)) (/.f64 (pow.f64 g 3) (*.f64 (pow.f64 h 3) (*.f64 0 g)))) (+.f64 g (*.f64 1/2 (/.f64 h (/.f64 g (*.f64 0 g)))))))
(+.f64 (+.f64 g (/.f64 0 g)) (fma.f64 -1/2 (*.f64 (/.f64 (+.f64 1 (/.f64 0 (*.f64 g g))) g) (*.f64 h h)) (*.f64 (/.f64 (+.f64 1 (/.f64 0 (*.f64 g g))) (pow.f64 g 3)) (*.f64 (*.f64 h h) 0))))
(*.f64 (sqrt.f64 -1) h)
(+.f64 (*.f64 (sqrt.f64 -1) h) (*.f64 1/2 (/.f64 (+.f64 g (*.f64 -1 g)) (sqrt.f64 -1))))
(fma.f64 (sqrt.f64 -1) h (*.f64 1/2 (/.f64 (*.f64 0 g) (sqrt.f64 -1))))
(fma.f64 (sqrt.f64 -1) h (/.f64 0 (sqrt.f64 -1)))
(+.f64 (*.f64 1/2 (/.f64 (-.f64 (pow.f64 g 2) (pow.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 g) g) (sqrt.f64 -1))) 2)) (*.f64 (sqrt.f64 -1) h))) (+.f64 (*.f64 (sqrt.f64 -1) h) (*.f64 1/2 (/.f64 (+.f64 g (*.f64 -1 g)) (sqrt.f64 -1)))))
(fma.f64 1/2 (/.f64 (-.f64 (*.f64 g g) (pow.f64 (*.f64 1/2 (/.f64 (*.f64 0 g) (sqrt.f64 -1))) 2)) (*.f64 (sqrt.f64 -1) h)) (fma.f64 (sqrt.f64 -1) h (*.f64 1/2 (/.f64 (*.f64 0 g) (sqrt.f64 -1)))))
(fma.f64 1/2 (/.f64 (-.f64 (*.f64 g g) (pow.f64 (/.f64 0 (sqrt.f64 -1)) 2)) (*.f64 (sqrt.f64 -1) h)) (fma.f64 (sqrt.f64 -1) h (/.f64 0 (sqrt.f64 -1))))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (-.f64 (pow.f64 g 2) (pow.f64 (*.f64 1/2 (/.f64 (+.f64 g (*.f64 -1 g)) (sqrt.f64 -1))) 2)) (+.f64 (*.f64 -1 g) g)) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 2)))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (pow.f64 g 2) (pow.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 g) g) (sqrt.f64 -1))) 2)) (*.f64 (sqrt.f64 -1) h))) (+.f64 (*.f64 (sqrt.f64 -1) h) (*.f64 1/2 (/.f64 (+.f64 g (*.f64 -1 g)) (sqrt.f64 -1))))))
(fma.f64 -1/4 (*.f64 (/.f64 (-.f64 (*.f64 g g) (pow.f64 (*.f64 1/2 (/.f64 (*.f64 0 g) (sqrt.f64 -1))) 2)) (pow.f64 (sqrt.f64 -1) 3)) (/.f64 (*.f64 0 g) (*.f64 h h))) (fma.f64 1/2 (/.f64 (-.f64 (*.f64 g g) (pow.f64 (*.f64 1/2 (/.f64 (*.f64 0 g) (sqrt.f64 -1))) 2)) (*.f64 (sqrt.f64 -1) h)) (fma.f64 (sqrt.f64 -1) h (*.f64 1/2 (/.f64 (*.f64 0 g) (sqrt.f64 -1))))))
(+.f64 (fma.f64 1/2 (/.f64 (-.f64 (*.f64 g g) (pow.f64 (/.f64 0 (sqrt.f64 -1)) 2)) (*.f64 (sqrt.f64 -1) h)) (fma.f64 (sqrt.f64 -1) h (/.f64 0 (sqrt.f64 -1)))) (*.f64 (/.f64 0 (sqrt.f64 -1)) (/.f64 (-.f64 (*.f64 g g) (pow.f64 (/.f64 0 (sqrt.f64 -1)) 2)) (*.f64 h h))))
(*.f64 -1 (*.f64 (sqrt.f64 -1) h))
(neg.f64 (*.f64 (sqrt.f64 -1) h))
(*.f64 (sqrt.f64 -1) (neg.f64 h))
(+.f64 (*.f64 -1 (*.f64 (sqrt.f64 -1) h)) (*.f64 1/2 (/.f64 (+.f64 g (*.f64 -1 g)) (sqrt.f64 -1))))
(fma.f64 -1 (*.f64 (sqrt.f64 -1) h) (*.f64 1/2 (/.f64 (*.f64 0 g) (sqrt.f64 -1))))
(-.f64 (/.f64 0 (sqrt.f64 -1)) (*.f64 (sqrt.f64 -1) h))
(+.f64 (*.f64 -1 (*.f64 (sqrt.f64 -1) h)) (+.f64 (*.f64 -1/2 (/.f64 (-.f64 (pow.f64 g 2) (pow.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 g) g) (sqrt.f64 -1))) 2)) (*.f64 (sqrt.f64 -1) h))) (*.f64 1/2 (/.f64 (+.f64 g (*.f64 -1 g)) (sqrt.f64 -1)))))
(fma.f64 -1 (*.f64 (sqrt.f64 -1) h) (fma.f64 -1/2 (/.f64 (-.f64 (*.f64 g g) (pow.f64 (*.f64 1/2 (/.f64 (*.f64 0 g) (sqrt.f64 -1))) 2)) (*.f64 (sqrt.f64 -1) h)) (*.f64 1/2 (/.f64 (*.f64 0 g) (sqrt.f64 -1)))))
(-.f64 (fma.f64 -1/2 (/.f64 (-.f64 (*.f64 g g) (pow.f64 (/.f64 0 (sqrt.f64 -1)) 2)) (*.f64 (sqrt.f64 -1) h)) (/.f64 0 (sqrt.f64 -1))) (*.f64 (sqrt.f64 -1) h))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (-.f64 (pow.f64 g 2) (pow.f64 (*.f64 1/2 (/.f64 (+.f64 g (*.f64 -1 g)) (sqrt.f64 -1))) 2)) (+.f64 (*.f64 -1 g) g)) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 2)))) (+.f64 (*.f64 -1 (*.f64 (sqrt.f64 -1) h)) (+.f64 (*.f64 -1/2 (/.f64 (-.f64 (pow.f64 g 2) (pow.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 g) g) (sqrt.f64 -1))) 2)) (*.f64 (sqrt.f64 -1) h))) (*.f64 1/2 (/.f64 (+.f64 g (*.f64 -1 g)) (sqrt.f64 -1))))))
(fma.f64 -1/4 (*.f64 (/.f64 (-.f64 (*.f64 g g) (pow.f64 (*.f64 1/2 (/.f64 (*.f64 0 g) (sqrt.f64 -1))) 2)) (pow.f64 (sqrt.f64 -1) 3)) (/.f64 (*.f64 0 g) (*.f64 h h))) (fma.f64 -1 (*.f64 (sqrt.f64 -1) h) (fma.f64 -1/2 (/.f64 (-.f64 (*.f64 g g) (pow.f64 (*.f64 1/2 (/.f64 (*.f64 0 g) (sqrt.f64 -1))) 2)) (*.f64 (sqrt.f64 -1) h)) (*.f64 1/2 (/.f64 (*.f64 0 g) (sqrt.f64 -1))))))
(+.f64 (*.f64 (/.f64 0 (sqrt.f64 -1)) (/.f64 (-.f64 (*.f64 g g) (pow.f64 (/.f64 0 (sqrt.f64 -1)) 2)) (*.f64 h h))) (-.f64 (fma.f64 -1/2 (/.f64 (-.f64 (*.f64 g g) (pow.f64 (/.f64 0 (sqrt.f64 -1)) 2)) (*.f64 (sqrt.f64 -1) h)) (/.f64 0 (sqrt.f64 -1))) (*.f64 (sqrt.f64 -1) h)))
(+.f64 (fma.f64 -1/2 (/.f64 (-.f64 (*.f64 g g) (pow.f64 (/.f64 0 (sqrt.f64 -1)) 2)) (*.f64 (sqrt.f64 -1) h)) (/.f64 0 (sqrt.f64 -1))) (fma.f64 (/.f64 0 (sqrt.f64 -1)) (/.f64 (-.f64 (*.f64 g g) (pow.f64 (/.f64 0 (sqrt.f64 -1)) 2)) (*.f64 h h)) (*.f64 (sqrt.f64 -1) (neg.f64 h))))
(*.f64 -1/2 (/.f64 (*.f64 (sqrt.f64 -1) h) a))
(*.f64 -1/2 (/.f64 (sqrt.f64 -1) (/.f64 a h)))
(+.f64 (*.f64 -1/2 (*.f64 g (+.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 h) h) (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (/.f64 1 a)))) (*.f64 -1/2 (/.f64 (*.f64 (sqrt.f64 -1) h) a)))
(*.f64 -1/2 (+.f64 (*.f64 g (fma.f64 1/2 (/.f64 (*.f64 0 h) (*.f64 (sqrt.f64 -1) (*.f64 h a))) (/.f64 1 a))) (/.f64 (sqrt.f64 -1) (/.f64 a h))))
(*.f64 -1/2 (+.f64 (/.f64 (sqrt.f64 -1) (/.f64 a h)) (+.f64 (/.f64 (/.f64 (/.f64 0 a) (sqrt.f64 -1)) h) (/.f64 g a))))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (-.f64 1 (pow.f64 (*.f64 1/2 (/.f64 (+.f64 h (*.f64 -1 h)) (*.f64 (sqrt.f64 -1) h))) 2)) (pow.f64 g 2)) (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (+.f64 (*.f64 -1/2 (*.f64 g (+.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 h) h) (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (/.f64 1 a)))) (*.f64 -1/2 (/.f64 (*.f64 (sqrt.f64 -1) h) a))))
(fma.f64 -1/4 (*.f64 (/.f64 (-.f64 1 (pow.f64 (/.f64 (*.f64 1/2 (*.f64 0 h)) (*.f64 (sqrt.f64 -1) h)) 2)) (sqrt.f64 -1)) (/.f64 (*.f64 g g) (*.f64 h a))) (*.f64 -1/2 (+.f64 (*.f64 g (fma.f64 1/2 (/.f64 (*.f64 0 h) (*.f64 (sqrt.f64 -1) (*.f64 h a))) (/.f64 1 a))) (/.f64 (sqrt.f64 -1) (/.f64 a h)))))
(fma.f64 -1/2 (+.f64 (/.f64 (sqrt.f64 -1) (/.f64 a h)) (+.f64 (/.f64 (/.f64 (/.f64 0 a) (sqrt.f64 -1)) h) (/.f64 g a))) (*.f64 -1/4 (/.f64 (-.f64 1 (pow.f64 (/.f64 0 (*.f64 (sqrt.f64 -1) h)) 2)) (*.f64 (/.f64 (sqrt.f64 -1) g) (/.f64 (*.f64 h a) g)))))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (-.f64 1 (pow.f64 (*.f64 1/2 (/.f64 (+.f64 h (*.f64 -1 h)) (*.f64 (sqrt.f64 -1) h))) 2)) (pow.f64 g 2)) (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (+.f64 (*.f64 -1/2 (*.f64 g (+.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 h) h) (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (/.f64 1 a)))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sqrt.f64 -1) h) a)) (*.f64 1/8 (/.f64 (*.f64 (pow.f64 g 3) (*.f64 (+.f64 h (*.f64 -1 h)) (-.f64 1 (pow.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 h) h) (*.f64 (sqrt.f64 -1) h))) 2)))) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (*.f64 a (pow.f64 h 3))))))))
(fma.f64 -1/4 (*.f64 (/.f64 (-.f64 1 (pow.f64 (/.f64 (*.f64 1/2 (*.f64 0 h)) (*.f64 (sqrt.f64 -1) h)) 2)) (sqrt.f64 -1)) (/.f64 (*.f64 g g) (*.f64 h a))) (fma.f64 -1/2 (*.f64 g (fma.f64 1/2 (/.f64 (*.f64 0 h) (*.f64 (sqrt.f64 -1) (*.f64 h a))) (/.f64 1 a))) (fma.f64 -1/2 (/.f64 (sqrt.f64 -1) (/.f64 a h)) (*.f64 1/8 (*.f64 (/.f64 (pow.f64 g 3) (pow.f64 (sqrt.f64 -1) 3)) (/.f64 (*.f64 (*.f64 0 h) (-.f64 1 (pow.f64 (/.f64 (*.f64 1/2 (*.f64 0 h)) (*.f64 (sqrt.f64 -1) h)) 2))) (*.f64 a (pow.f64 h 3))))))))
(fma.f64 -1/4 (/.f64 (-.f64 1 (pow.f64 (/.f64 0 (*.f64 (sqrt.f64 -1) h)) 2)) (*.f64 (/.f64 (sqrt.f64 -1) g) (/.f64 (*.f64 h a) g))) (fma.f64 -1/2 (+.f64 (/.f64 (sqrt.f64 -1) (/.f64 a h)) (+.f64 (/.f64 (/.f64 (/.f64 0 a) (sqrt.f64 -1)) h) (/.f64 g a))) (/.f64 (-.f64 1 (pow.f64 (/.f64 0 (*.f64 (sqrt.f64 -1) h)) 2)) (/.f64 (*.f64 a (pow.f64 h 3)) (/.f64 0 (sqrt.f64 -1))))))
(*.f64 -1 (/.f64 g a))
(/.f64 (neg.f64 g) a)
(+.f64 (*.f64 -1/4 (/.f64 (+.f64 h (*.f64 -1 h)) a)) (*.f64 -1 (/.f64 g a)))
(fma.f64 -1/4 (/.f64 (*.f64 0 h) a) (/.f64 (neg.f64 g) a))
(-.f64 (/.f64 0 a) (/.f64 g a))
(+.f64 (*.f64 -1/4 (/.f64 (+.f64 h (*.f64 -1 h)) a)) (+.f64 (*.f64 -1/4 (/.f64 (-.f64 (*.f64 -1 (pow.f64 h 2)) (pow.f64 (*.f64 1/2 (+.f64 (*.f64 -1 h) h)) 2)) (*.f64 a g))) (*.f64 -1 (/.f64 g a))))
(fma.f64 -1/4 (/.f64 (*.f64 0 h) a) (fma.f64 -1/4 (/.f64 (-.f64 (neg.f64 (*.f64 h h)) (pow.f64 (*.f64 1/2 (*.f64 0 h)) 2)) (*.f64 a g)) (/.f64 (neg.f64 g) a)))
(+.f64 (-.f64 (/.f64 0 a) (/.f64 g a)) (*.f64 -1/4 (/.f64 (fma.f64 -1 (*.f64 h h) 0) (*.f64 a g))))
(+.f64 (-.f64 (/.f64 0 a) (/.f64 g a)) (*.f64 -1/4 (/.f64 (fma.f64 h (neg.f64 h) 0) (*.f64 a g))))
(+.f64 (*.f64 -1/4 (/.f64 (+.f64 h (*.f64 -1 h)) a)) (+.f64 (*.f64 1/8 (/.f64 (*.f64 (-.f64 (*.f64 -1 (pow.f64 h 2)) (pow.f64 (*.f64 1/2 (+.f64 h (*.f64 -1 h))) 2)) (+.f64 (*.f64 -1 h) h)) (*.f64 a (pow.f64 g 2)))) (+.f64 (*.f64 -1/4 (/.f64 (-.f64 (*.f64 -1 (pow.f64 h 2)) (pow.f64 (*.f64 1/2 (+.f64 (*.f64 -1 h) h)) 2)) (*.f64 a g))) (*.f64 -1 (/.f64 g a)))))
(fma.f64 -1/4 (/.f64 (*.f64 0 h) a) (fma.f64 1/8 (/.f64 (-.f64 (neg.f64 (*.f64 h h)) (pow.f64 (*.f64 1/2 (*.f64 0 h)) 2)) (/.f64 (*.f64 a (*.f64 g g)) (*.f64 0 h))) (fma.f64 -1/4 (/.f64 (-.f64 (neg.f64 (*.f64 h h)) (pow.f64 (*.f64 1/2 (*.f64 0 h)) 2)) (*.f64 a g)) (/.f64 (neg.f64 g) a))))
(+.f64 (fma.f64 -1/4 (/.f64 (fma.f64 -1 (*.f64 h h) 0) (*.f64 a g)) (/.f64 (neg.f64 g) a)) (+.f64 (/.f64 (fma.f64 -1 (*.f64 h h) 0) (/.f64 a (/.f64 0 (*.f64 g g)))) (/.f64 0 a)))
(+.f64 (fma.f64 -1/4 (/.f64 (fma.f64 h (neg.f64 h) 0) (*.f64 a g)) (/.f64 (neg.f64 g) a)) (+.f64 (/.f64 (fma.f64 h (neg.f64 h) 0) (/.f64 a (/.f64 0 (*.f64 g g)))) (/.f64 0 a)))
(*.f64 1/2 (/.f64 (*.f64 (-.f64 (pow.f64 (sqrt.f64 -1) 2) 1) g) a))
(/.f64 (neg.f64 g) a)
(+.f64 (*.f64 -1/4 (/.f64 (+.f64 h (*.f64 -1 h)) a)) (*.f64 1/2 (/.f64 (*.f64 (-.f64 (pow.f64 (sqrt.f64 -1) 2) 1) g) a)))
(fma.f64 -1/4 (/.f64 (*.f64 0 h) a) (/.f64 (neg.f64 g) a))
(-.f64 (/.f64 0 a) (/.f64 g a))
(+.f64 (*.f64 -1/4 (/.f64 (+.f64 h (*.f64 -1 h)) a)) (+.f64 (*.f64 1/4 (/.f64 (-.f64 (pow.f64 h 2) (pow.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 h) h) (sqrt.f64 -1))) 2)) (*.f64 a g))) (*.f64 1/2 (/.f64 (*.f64 (-.f64 (pow.f64 (sqrt.f64 -1) 2) 1) g) a))))
(fma.f64 -1/4 (/.f64 (*.f64 0 h) a) (fma.f64 1/4 (/.f64 (-.f64 (*.f64 h h) (pow.f64 (*.f64 1/2 (/.f64 (*.f64 0 h) (sqrt.f64 -1))) 2)) (*.f64 a g)) (*.f64 1/2 (/.f64 (+.f64 (pow.f64 (sqrt.f64 -1) 2) -1) (/.f64 a g)))))
(+.f64 (-.f64 (/.f64 0 a) (/.f64 g a)) (*.f64 (/.f64 1/4 g) (/.f64 (-.f64 (*.f64 h h) (pow.f64 (/.f64 0 (sqrt.f64 -1)) 2)) a)))
(+.f64 (*.f64 -1/4 (/.f64 (+.f64 h (*.f64 -1 h)) a)) (+.f64 (*.f64 1/4 (/.f64 (-.f64 (pow.f64 h 2) (pow.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 h) h) (sqrt.f64 -1))) 2)) (*.f64 a g))) (+.f64 (*.f64 1/8 (/.f64 (*.f64 (-.f64 (pow.f64 h 2) (pow.f64 (*.f64 1/2 (/.f64 (+.f64 h (*.f64 -1 h)) (sqrt.f64 -1))) 2)) (+.f64 (*.f64 -1 h) h)) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 a (pow.f64 g 2))))) (*.f64 1/2 (/.f64 (*.f64 (-.f64 (pow.f64 (sqrt.f64 -1) 2) 1) g) a)))))
(fma.f64 -1/4 (/.f64 (*.f64 0 h) a) (fma.f64 1/4 (/.f64 (-.f64 (*.f64 h h) (pow.f64 (*.f64 1/2 (/.f64 (*.f64 0 h) (sqrt.f64 -1))) 2)) (*.f64 a g)) (fma.f64 1/8 (*.f64 (/.f64 (-.f64 (*.f64 h h) (pow.f64 (*.f64 1/2 (/.f64 (*.f64 0 h) (sqrt.f64 -1))) 2)) (pow.f64 (sqrt.f64 -1) 2)) (/.f64 (*.f64 0 h) (*.f64 a (*.f64 g g)))) (*.f64 1/2 (/.f64 (+.f64 (pow.f64 (sqrt.f64 -1) 2) -1) (/.f64 a g))))))
(+.f64 (fma.f64 1/4 (/.f64 (-.f64 (*.f64 h h) (pow.f64 (/.f64 0 (sqrt.f64 -1)) 2)) (*.f64 a g)) (/.f64 (-.f64 (*.f64 h h) (pow.f64 (/.f64 0 (sqrt.f64 -1)) 2)) (/.f64 a (/.f64 0 (*.f64 g g))))) (-.f64 (/.f64 0 a) (/.f64 g a)))
(*.f64 -1 (/.f64 g a))
(/.f64 (neg.f64 g) a)
(+.f64 (*.f64 -1 (/.f64 g a)) (*.f64 -1/4 (/.f64 (*.f64 (+.f64 g (*.f64 -1 g)) h) (*.f64 a g))))
(fma.f64 -1 (/.f64 g a) (/.f64 (*.f64 -1/4 (*.f64 h (*.f64 0 g))) (*.f64 a g)))
(-.f64 (/.f64 (/.f64 0 g) a) (/.f64 g a))
(+.f64 (*.f64 1/4 (/.f64 (*.f64 (+.f64 1 (pow.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 g) g) g)) 2)) (pow.f64 h 2)) (*.f64 a g))) (+.f64 (*.f64 -1 (/.f64 g a)) (*.f64 -1/4 (/.f64 (*.f64 (+.f64 g (*.f64 -1 g)) h) (*.f64 a g)))))
(fma.f64 1/4 (*.f64 (/.f64 (+.f64 1 (pow.f64 (*.f64 1/2 (/.f64 (*.f64 0 g) g)) 2)) a) (/.f64 (*.f64 h h) g)) (fma.f64 -1 (/.f64 g a) (/.f64 (*.f64 -1/4 (*.f64 h (*.f64 0 g))) (*.f64 a g))))
(fma.f64 1/4 (*.f64 (/.f64 (+.f64 1 (/.f64 0 (*.f64 g g))) a) (/.f64 h (/.f64 g h))) (-.f64 (/.f64 (/.f64 0 g) a) (/.f64 g a)))
(+.f64 (*.f64 1/4 (/.f64 (*.f64 (+.f64 1 (pow.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 g) g) g)) 2)) (pow.f64 h 2)) (*.f64 a g))) (+.f64 (*.f64 -1/8 (/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 1/2 (/.f64 (+.f64 g (*.f64 -1 g)) g)) 2) 1) (*.f64 (+.f64 (*.f64 -1 g) g) (pow.f64 h 3))) (*.f64 a (pow.f64 g 3)))) (+.f64 (*.f64 -1 (/.f64 g a)) (*.f64 -1/4 (/.f64 (*.f64 (+.f64 g (*.f64 -1 g)) h) (*.f64 a g))))))
(fma.f64 1/4 (*.f64 (/.f64 (+.f64 1 (pow.f64 (*.f64 1/2 (/.f64 (*.f64 0 g) g)) 2)) a) (/.f64 (*.f64 h h) g)) (fma.f64 -1/8 (*.f64 (/.f64 (+.f64 1 (pow.f64 (*.f64 1/2 (/.f64 (*.f64 0 g) g)) 2)) a) (/.f64 (*.f64 (pow.f64 h 3) (*.f64 0 g)) (pow.f64 g 3))) (fma.f64 -1 (/.f64 g a) (/.f64 (*.f64 -1/4 (*.f64 h (*.f64 0 g))) (*.f64 a g)))))
(fma.f64 1/4 (*.f64 (/.f64 (+.f64 1 (/.f64 0 (*.f64 g g))) a) (/.f64 h (/.f64 g h))) (fma.f64 -1/8 (*.f64 (/.f64 (+.f64 1 (/.f64 0 (*.f64 g g))) a) (/.f64 (pow.f64 h 3) (/.f64 (pow.f64 g 3) 0))) (-.f64 (/.f64 (/.f64 0 g) a) (/.f64 g a))))
(*.f64 -1/2 (/.f64 (*.f64 (sqrt.f64 -1) h) a))
(*.f64 -1/2 (/.f64 (sqrt.f64 -1) (/.f64 a h)))
(+.f64 (*.f64 -1/2 (+.f64 (/.f64 g a) (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 g) g) (*.f64 (sqrt.f64 -1) a))))) (*.f64 -1/2 (/.f64 (*.f64 (sqrt.f64 -1) h) a)))
(*.f64 -1/2 (+.f64 (+.f64 (/.f64 g a) (*.f64 1/2 (/.f64 (*.f64 0 g) (*.f64 (sqrt.f64 -1) a)))) (/.f64 (sqrt.f64 -1) (/.f64 a h))))
(fma.f64 -1/2 (/.f64 (sqrt.f64 -1) (/.f64 a h)) (fma.f64 -1/2 (/.f64 g a) (/.f64 (/.f64 0 a) (sqrt.f64 -1))))
(+.f64 (*.f64 -1/4 (/.f64 (-.f64 (pow.f64 g 2) (pow.f64 (*.f64 1/2 (/.f64 (+.f64 g (*.f64 -1 g)) (sqrt.f64 -1))) 2)) (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (+.f64 (*.f64 -1/2 (+.f64 (/.f64 g a) (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 g) g) (*.f64 (sqrt.f64 -1) a))))) (*.f64 -1/2 (/.f64 (*.f64 (sqrt.f64 -1) h) a))))
(fma.f64 -1/4 (/.f64 (-.f64 (*.f64 g g) (pow.f64 (*.f64 1/2 (/.f64 (*.f64 0 g) (sqrt.f64 -1))) 2)) (*.f64 (sqrt.f64 -1) (*.f64 h a))) (*.f64 -1/2 (+.f64 (+.f64 (/.f64 g a) (*.f64 1/2 (/.f64 (*.f64 0 g) (*.f64 (sqrt.f64 -1) a)))) (/.f64 (sqrt.f64 -1) (/.f64 a h)))))
(fma.f64 -1/4 (/.f64 (/.f64 (-.f64 (*.f64 g g) (pow.f64 (/.f64 0 (sqrt.f64 -1)) 2)) (*.f64 (sqrt.f64 -1) h)) a) (fma.f64 -1/2 (/.f64 (sqrt.f64 -1) (/.f64 a h)) (fma.f64 -1/2 (/.f64 g a) (/.f64 (/.f64 0 a) (sqrt.f64 -1)))))
(+.f64 (*.f64 1/8 (/.f64 (*.f64 (+.f64 g (*.f64 -1 g)) (-.f64 (pow.f64 g 2) (pow.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 g) g) (sqrt.f64 -1))) 2))) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (*.f64 a (pow.f64 h 2))))) (+.f64 (*.f64 -1/4 (/.f64 (-.f64 (pow.f64 g 2) (pow.f64 (*.f64 1/2 (/.f64 (+.f64 g (*.f64 -1 g)) (sqrt.f64 -1))) 2)) (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (+.f64 (*.f64 -1/2 (+.f64 (/.f64 g a) (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 g) g) (*.f64 (sqrt.f64 -1) a))))) (*.f64 -1/2 (/.f64 (*.f64 (sqrt.f64 -1) h) a)))))
(fma.f64 1/8 (*.f64 (/.f64 (*.f64 0 g) (pow.f64 (sqrt.f64 -1) 3)) (/.f64 (-.f64 (*.f64 g g) (pow.f64 (*.f64 1/2 (/.f64 (*.f64 0 g) (sqrt.f64 -1))) 2)) (*.f64 a (*.f64 h h)))) (fma.f64 -1/4 (/.f64 (-.f64 (*.f64 g g) (pow.f64 (*.f64 1/2 (/.f64 (*.f64 0 g) (sqrt.f64 -1))) 2)) (*.f64 (sqrt.f64 -1) (*.f64 h a))) (*.f64 -1/2 (+.f64 (+.f64 (/.f64 g a) (*.f64 1/2 (/.f64 (*.f64 0 g) (*.f64 (sqrt.f64 -1) a)))) (/.f64 (sqrt.f64 -1) (/.f64 a h))))))
(+.f64 (fma.f64 -1/4 (/.f64 (/.f64 (-.f64 (*.f64 g g) (pow.f64 (/.f64 0 (sqrt.f64 -1)) 2)) (*.f64 (sqrt.f64 -1) h)) a) (fma.f64 -1/2 (/.f64 (sqrt.f64 -1) (/.f64 a h)) (fma.f64 -1/2 (/.f64 g a) (/.f64 (/.f64 0 a) (sqrt.f64 -1))))) (*.f64 (/.f64 0 (sqrt.f64 -1)) (/.f64 (-.f64 (*.f64 g g) (pow.f64 (/.f64 0 (sqrt.f64 -1)) 2)) (*.f64 a (*.f64 h h)))))
(*.f64 1/2 (/.f64 (*.f64 (sqrt.f64 -1) h) a))
(*.f64 1/2 (/.f64 (sqrt.f64 -1) (/.f64 a h)))
(+.f64 (*.f64 -1/2 (+.f64 (/.f64 g a) (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 g) g) (*.f64 (sqrt.f64 -1) a))))) (*.f64 1/2 (/.f64 (*.f64 (sqrt.f64 -1) h) a)))
(fma.f64 -1/2 (+.f64 (/.f64 g a) (*.f64 1/2 (/.f64 (*.f64 0 g) (*.f64 (sqrt.f64 -1) a)))) (*.f64 1/2 (/.f64 (sqrt.f64 -1) (/.f64 a h))))
(fma.f64 1/2 (/.f64 (sqrt.f64 -1) (/.f64 a h)) (fma.f64 -1/2 (/.f64 g a) (/.f64 (/.f64 0 a) (sqrt.f64 -1))))
(+.f64 (*.f64 -1/2 (+.f64 (/.f64 g a) (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 g) g) (*.f64 (sqrt.f64 -1) a))))) (+.f64 (*.f64 1/4 (/.f64 (-.f64 (pow.f64 g 2) (pow.f64 (*.f64 1/2 (/.f64 (+.f64 g (*.f64 -1 g)) (sqrt.f64 -1))) 2)) (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (*.f64 1/2 (/.f64 (*.f64 (sqrt.f64 -1) h) a))))
(fma.f64 -1/2 (+.f64 (/.f64 g a) (*.f64 1/2 (/.f64 (*.f64 0 g) (*.f64 (sqrt.f64 -1) a)))) (fma.f64 1/4 (/.f64 (-.f64 (*.f64 g g) (pow.f64 (*.f64 1/2 (/.f64 (*.f64 0 g) (sqrt.f64 -1))) 2)) (*.f64 (sqrt.f64 -1) (*.f64 h a))) (*.f64 1/2 (/.f64 (sqrt.f64 -1) (/.f64 a h)))))
(+.f64 (fma.f64 1/2 (/.f64 (sqrt.f64 -1) (/.f64 a h)) (fma.f64 -1/2 (/.f64 g a) (/.f64 (/.f64 0 a) (sqrt.f64 -1)))) (*.f64 1/4 (/.f64 (/.f64 (-.f64 (*.f64 g g) (pow.f64 (/.f64 0 (sqrt.f64 -1)) 2)) (*.f64 (sqrt.f64 -1) h)) a)))
(+.f64 (*.f64 1/8 (/.f64 (*.f64 (+.f64 g (*.f64 -1 g)) (-.f64 (pow.f64 g 2) (pow.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 g) g) (sqrt.f64 -1))) 2))) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (*.f64 a (pow.f64 h 2))))) (+.f64 (*.f64 -1/2 (+.f64 (/.f64 g a) (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 g) g) (*.f64 (sqrt.f64 -1) a))))) (+.f64 (*.f64 1/4 (/.f64 (-.f64 (pow.f64 g 2) (pow.f64 (*.f64 1/2 (/.f64 (+.f64 g (*.f64 -1 g)) (sqrt.f64 -1))) 2)) (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (*.f64 1/2 (/.f64 (*.f64 (sqrt.f64 -1) h) a)))))
(fma.f64 1/8 (*.f64 (/.f64 (*.f64 0 g) (pow.f64 (sqrt.f64 -1) 3)) (/.f64 (-.f64 (*.f64 g g) (pow.f64 (*.f64 1/2 (/.f64 (*.f64 0 g) (sqrt.f64 -1))) 2)) (*.f64 a (*.f64 h h)))) (fma.f64 -1/2 (+.f64 (/.f64 g a) (*.f64 1/2 (/.f64 (*.f64 0 g) (*.f64 (sqrt.f64 -1) a)))) (fma.f64 1/4 (/.f64 (-.f64 (*.f64 g g) (pow.f64 (*.f64 1/2 (/.f64 (*.f64 0 g) (sqrt.f64 -1))) 2)) (*.f64 (sqrt.f64 -1) (*.f64 h a))) (*.f64 1/2 (/.f64 (sqrt.f64 -1) (/.f64 a h))))))
(+.f64 (*.f64 (/.f64 0 (sqrt.f64 -1)) (/.f64 (-.f64 (*.f64 g g) (pow.f64 (/.f64 0 (sqrt.f64 -1)) 2)) (*.f64 a (*.f64 h h)))) (+.f64 (fma.f64 1/2 (/.f64 (sqrt.f64 -1) (/.f64 a h)) (fma.f64 -1/2 (/.f64 g a) (/.f64 (/.f64 0 a) (sqrt.f64 -1)))) (*.f64 1/4 (/.f64 (/.f64 (-.f64 (*.f64 g g) (pow.f64 (/.f64 0 (sqrt.f64 -1)) 2)) (*.f64 (sqrt.f64 -1) h)) a))))
(*.f64 -1/2 (/.f64 (+.f64 (sqrt.f64 (*.f64 (-.f64 g h) (+.f64 g h))) g) a))
(*.f64 -1/2 (/.f64 (+.f64 g (sqrt.f64 (*.f64 (-.f64 g h) (+.f64 h g)))) a))
(/.f64 -1/2 (/.f64 a (+.f64 g (sqrt.f64 (*.f64 (-.f64 g h) (+.f64 h g))))))
(*.f64 -1/2 (/.f64 (+.f64 (sqrt.f64 (*.f64 (-.f64 g h) (+.f64 g h))) g) a))
(*.f64 -1/2 (/.f64 (+.f64 g (sqrt.f64 (*.f64 (-.f64 g h) (+.f64 h g)))) a))
(/.f64 -1/2 (/.f64 a (+.f64 g (sqrt.f64 (*.f64 (-.f64 g h) (+.f64 h g))))))
(*.f64 -1/2 (/.f64 (+.f64 (sqrt.f64 (*.f64 (-.f64 g h) (+.f64 g h))) g) a))
(*.f64 -1/2 (/.f64 (+.f64 g (sqrt.f64 (*.f64 (-.f64 g h) (+.f64 h g)))) a))
(/.f64 -1/2 (/.f64 a (+.f64 g (sqrt.f64 (*.f64 (-.f64 g h) (+.f64 h g))))))
(*.f64 -1/2 (/.f64 (+.f64 (sqrt.f64 (*.f64 (-.f64 g h) (+.f64 g h))) g) a))
(*.f64 -1/2 (/.f64 (+.f64 g (sqrt.f64 (*.f64 (-.f64 g h) (+.f64 h g)))) a))
(/.f64 -1/2 (/.f64 a (+.f64 g (sqrt.f64 (*.f64 (-.f64 g h) (+.f64 h g))))))
(*.f64 -1/2 (/.f64 (+.f64 (sqrt.f64 (*.f64 (-.f64 g h) (+.f64 g h))) g) a))
(*.f64 -1/2 (/.f64 (+.f64 g (sqrt.f64 (*.f64 (-.f64 g h) (+.f64 h g)))) a))
(/.f64 -1/2 (/.f64 a (+.f64 g (sqrt.f64 (*.f64 (-.f64 g h) (+.f64 h g))))))
(*.f64 -1/2 (/.f64 (+.f64 (sqrt.f64 (*.f64 (-.f64 g h) (+.f64 g h))) g) a))
(*.f64 -1/2 (/.f64 (+.f64 g (sqrt.f64 (*.f64 (-.f64 g h) (+.f64 h g)))) a))
(/.f64 -1/2 (/.f64 a (+.f64 g (sqrt.f64 (*.f64 (-.f64 g h) (+.f64 h g))))))
(*.f64 -1/2 (/.f64 (+.f64 (sqrt.f64 (*.f64 (-.f64 g h) (+.f64 g h))) g) a))
(*.f64 -1/2 (/.f64 (+.f64 g (sqrt.f64 (*.f64 (-.f64 g h) (+.f64 h g)))) a))
(/.f64 -1/2 (/.f64 a (+.f64 g (sqrt.f64 (*.f64 (-.f64 g h) (+.f64 h g))))))
(*.f64 -1/2 (/.f64 (+.f64 (sqrt.f64 (*.f64 (-.f64 g h) (+.f64 g h))) g) a))
(*.f64 -1/2 (/.f64 (+.f64 g (sqrt.f64 (*.f64 (-.f64 g h) (+.f64 h g)))) a))
(/.f64 -1/2 (/.f64 a (+.f64 g (sqrt.f64 (*.f64 (-.f64 g h) (+.f64 h g))))))
(*.f64 -1/2 (/.f64 (+.f64 (sqrt.f64 (*.f64 (-.f64 g h) (+.f64 g h))) g) a))
(*.f64 -1/2 (/.f64 (+.f64 g (sqrt.f64 (*.f64 (-.f64 g h) (+.f64 h g)))) a))
(/.f64 -1/2 (/.f64 a (+.f64 g (sqrt.f64 (*.f64 (-.f64 g h) (+.f64 h g))))))
(*.f64 -1/2 (/.f64 (+.f64 (sqrt.f64 (*.f64 (-.f64 g h) (+.f64 g h))) g) a))
(*.f64 -1/2 (/.f64 (+.f64 g (sqrt.f64 (*.f64 (-.f64 g h) (+.f64 h g)))) a))
(/.f64 -1/2 (/.f64 a (+.f64 g (sqrt.f64 (*.f64 (-.f64 g h) (+.f64 h g))))))
(*.f64 -1/2 (/.f64 (+.f64 (sqrt.f64 (*.f64 (-.f64 g h) (+.f64 g h))) g) a))
(*.f64 -1/2 (/.f64 (+.f64 g (sqrt.f64 (*.f64 (-.f64 g h) (+.f64 h g)))) a))
(/.f64 -1/2 (/.f64 a (+.f64 g (sqrt.f64 (*.f64 (-.f64 g h) (+.f64 h g))))))
(*.f64 -1/2 (/.f64 (+.f64 (sqrt.f64 (*.f64 (-.f64 g h) (+.f64 g h))) g) a))
(*.f64 -1/2 (/.f64 (+.f64 g (sqrt.f64 (*.f64 (-.f64 g h) (+.f64 h g)))) a))
(/.f64 -1/2 (/.f64 a (+.f64 g (sqrt.f64 (*.f64 (-.f64 g h) (+.f64 h g))))))
(*.f64 (sqrt.f64 -1) (sqrt.f64 h))
(+.f64 (*.f64 1/2 (*.f64 (/.f64 g (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 h)))) (*.f64 (sqrt.f64 -1) (sqrt.f64 h)))
(fma.f64 1/2 (*.f64 (/.f64 g (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 h))) (*.f64 (sqrt.f64 -1) (sqrt.f64 h)))
(fma.f64 (sqrt.f64 -1) (sqrt.f64 h) (*.f64 (sqrt.f64 (/.f64 1 h)) (/.f64 (*.f64 1/2 g) (sqrt.f64 -1))))
(+.f64 (*.f64 1/2 (*.f64 (/.f64 g (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 h)))) (+.f64 (*.f64 -1/8 (*.f64 (/.f64 (pow.f64 g 2) (pow.f64 (sqrt.f64 -1) 3)) (sqrt.f64 (/.f64 1 (pow.f64 h 3))))) (*.f64 (sqrt.f64 -1) (sqrt.f64 h))))
(fma.f64 1/2 (*.f64 (/.f64 g (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 h))) (fma.f64 -1/8 (*.f64 (/.f64 (*.f64 g g) (pow.f64 (sqrt.f64 -1) 3)) (sqrt.f64 (/.f64 1 (pow.f64 h 3)))) (*.f64 (sqrt.f64 -1) (sqrt.f64 h))))
(fma.f64 1/2 (*.f64 (/.f64 g (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 h))) (fma.f64 (sqrt.f64 -1) (sqrt.f64 h) (*.f64 (*.f64 -1/8 (sqrt.f64 (/.f64 1 (pow.f64 h 3)))) (/.f64 (*.f64 g g) (neg.f64 (sqrt.f64 -1))))))
(+.f64 (*.f64 1/2 (*.f64 (/.f64 g (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 h)))) (+.f64 (*.f64 -1/8 (*.f64 (/.f64 (pow.f64 g 2) (pow.f64 (sqrt.f64 -1) 3)) (sqrt.f64 (/.f64 1 (pow.f64 h 3))))) (+.f64 (*.f64 (sqrt.f64 -1) (sqrt.f64 h)) (*.f64 1/16 (*.f64 (/.f64 (pow.f64 g 3) (pow.f64 (sqrt.f64 -1) 5)) (sqrt.f64 (/.f64 1 (pow.f64 h 5))))))))
(fma.f64 1/2 (*.f64 (/.f64 g (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 h))) (fma.f64 -1/8 (*.f64 (/.f64 (*.f64 g g) (pow.f64 (sqrt.f64 -1) 3)) (sqrt.f64 (/.f64 1 (pow.f64 h 3)))) (fma.f64 (sqrt.f64 -1) (sqrt.f64 h) (*.f64 1/16 (/.f64 (*.f64 (pow.f64 g 3) (sqrt.f64 (/.f64 1 (pow.f64 h 5)))) (pow.f64 (sqrt.f64 -1) 5))))))
(fma.f64 1/2 (*.f64 (/.f64 g (sqrt.f64 -1)) (sqrt.f64 (/.f64 1 h))) (fma.f64 -1/8 (*.f64 (/.f64 (*.f64 g g) (neg.f64 (sqrt.f64 -1))) (sqrt.f64 (/.f64 1 (pow.f64 h 3)))) (fma.f64 (sqrt.f64 -1) (sqrt.f64 h) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 h 5))) (/.f64 (*.f64 1/16 (pow.f64 g 3)) (pow.f64 (sqrt.f64 -1) 5))))))
(sqrt.f64 g)
(+.f64 (*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 g)) h)) (sqrt.f64 g))
(fma.f64 -1/2 (*.f64 h (sqrt.f64 (/.f64 1 g))) (sqrt.f64 g))
(+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 g 3))) (pow.f64 h 2))) (+.f64 (*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 g)) h)) (sqrt.f64 g)))
(fma.f64 -1/8 (*.f64 (*.f64 h h) (sqrt.f64 (/.f64 1 (pow.f64 g 3)))) (fma.f64 -1/2 (*.f64 h (sqrt.f64 (/.f64 1 g))) (sqrt.f64 g)))
(fma.f64 -1/8 (*.f64 h (*.f64 h (sqrt.f64 (/.f64 1 (pow.f64 g 3))))) (fma.f64 -1/2 (*.f64 h (sqrt.f64 (/.f64 1 g))) (sqrt.f64 g)))
(+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 g 3))) (pow.f64 h 2))) (+.f64 (*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 g)) h)) (+.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 g 5))) (pow.f64 h 3))) (sqrt.f64 g))))
(fma.f64 -1/8 (*.f64 (*.f64 h h) (sqrt.f64 (/.f64 1 (pow.f64 g 3)))) (fma.f64 -1/2 (*.f64 h (sqrt.f64 (/.f64 1 g))) (fma.f64 -1/16 (*.f64 (pow.f64 h 3) (sqrt.f64 (/.f64 1 (pow.f64 g 5)))) (sqrt.f64 g))))
(fma.f64 -1/8 (*.f64 h (*.f64 h (sqrt.f64 (/.f64 1 (pow.f64 g 3))))) (fma.f64 -1/2 (*.f64 h (sqrt.f64 (/.f64 1 g))) (fma.f64 -1/16 (*.f64 (pow.f64 h 3) (sqrt.f64 (/.f64 1 (pow.f64 g 5)))) (sqrt.f64 g))))

localize47.0ms (0.5%)

Local error

Found 4 expressions with local error:

NewErrorProgram
11.0b
(cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 3))) (/.f64 -1/2 a)))
17.2b
(+.f64 g (sqrt.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 3)))
34.0b
(sqrt.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 3))
35.1b
(cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))
Compiler

Compiled 150 to 59 computations (60.7% saved)

series17.0ms (0.2%)

Counts
4 → 64
Calls

27 calls:

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

rewrite114.0ms (1.3%)

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

Useful iterations: 2 (0.0ms)

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

simplify108.0ms (1.2%)

Algorithm
egg-herbie
Rules
785×associate-/l*_binary64
549×unswap-sqr_binary64
337×associate-*l/_binary64
297×associate-*r/_binary64
267×associate-+l+_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02642428
18092311
228412289
366412289
Stop Event
node limit
Counts
212 → 238
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) 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)))))))
(*.f64 (pow.f64 (/.f64 (*.f64 (sqrt.f64 -1) (*.f64 1 h)) a) 1/3) (cbrt.f64 -1/2))
(+.f64 (*.f64 (pow.f64 (/.f64 (*.f64 (sqrt.f64 -1) (*.f64 1 h)) a) 1/3) (cbrt.f64 -1/2)) (*.f64 1/3 (*.f64 (*.f64 (cbrt.f64 -1/2) g) (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (pow.f64 a 7) (pow.f64 h 2)))) 1/9))))
(+.f64 (*.f64 (pow.f64 (/.f64 (*.f64 (sqrt.f64 -1) (*.f64 1 h)) a) 1/3) (cbrt.f64 -1/2)) (+.f64 (*.f64 1/3 (*.f64 (*.f64 (cbrt.f64 -1/2) g) (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (pow.f64 a 7) (pow.f64 h 2)))) 1/9))) (*.f64 1/3 (*.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (*.f64 1/3 (pow.f64 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 (pow.f64 a 17) h))) 1/9))) (pow.f64 g 2))) (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (pow.f64 h 2))) 1/3)))))
(+.f64 (*.f64 -1/3 (*.f64 (*.f64 (+.f64 (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 5) (*.f64 (pow.f64 a 4) (pow.f64 h 5)))) 1/9) (-.f64 (*.f64 1/2 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (*.f64 1/3 (pow.f64 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 (pow.f64 a 17) h))) 1/9))))) (*.f64 1/27 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (pow.f64 a 7) (pow.f64 h 2)))) 1/3))) (*.f64 (cbrt.f64 -1/2) (pow.f64 g 3))) (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (pow.f64 h 2))) 1/3))) (+.f64 (*.f64 (pow.f64 (/.f64 (*.f64 (sqrt.f64 -1) (*.f64 1 h)) a) 1/3) (cbrt.f64 -1/2)) (+.f64 (*.f64 1/3 (*.f64 (*.f64 (cbrt.f64 -1/2) g) (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (pow.f64 a 7) (pow.f64 h 2)))) 1/9))) (*.f64 1/3 (*.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (*.f64 1/3 (pow.f64 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 (pow.f64 a 17) h))) 1/9))) (pow.f64 g 2))) (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (pow.f64 h 2))) 1/3))))))
(*.f64 (pow.f64 (/.f64 (*.f64 1 g) a) 1/3) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)))
(+.f64 (*.f64 -1/6 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 h 2)) (pow.f64 (cbrt.f64 2) 2)) (pow.f64 (/.f64 1 (*.f64 a (pow.f64 g 5))) 1/3))) (*.f64 (pow.f64 (/.f64 (*.f64 1 g) a) 1/3) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2))))
(+.f64 (*.f64 -1/6 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 h 2)) (pow.f64 (cbrt.f64 2) 2)) (pow.f64 (/.f64 1 (*.f64 a (pow.f64 g 5))) 1/3))) (+.f64 (*.f64 -1/18 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 h 4)) (pow.f64 (cbrt.f64 2) 2)) (pow.f64 (/.f64 1 (*.f64 a (pow.f64 g 11))) 1/3))) (*.f64 (pow.f64 (/.f64 (*.f64 1 g) a) 1/3) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)))))
(+.f64 (*.f64 -1/6 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 h 2)) (pow.f64 (cbrt.f64 2) 2)) (pow.f64 (/.f64 1 (*.f64 a (pow.f64 g 5))) 1/3))) (+.f64 (*.f64 1/3 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (-.f64 (*.f64 1/216 (/.f64 1 (*.f64 a (*.f64 (pow.f64 (cbrt.f64 2) 6) (pow.f64 g 5))))) (*.f64 13/144 (/.f64 1 (*.f64 a (pow.f64 g 5))))) (pow.f64 h 6))) (pow.f64 (cbrt.f64 2) 2)) (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (pow.f64 g 2)) 1/3))) (+.f64 (*.f64 -1/18 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 h 4)) (pow.f64 (cbrt.f64 2) 2)) (pow.f64 (/.f64 1 (*.f64 a (pow.f64 g 11))) 1/3))) (*.f64 (pow.f64 (/.f64 (*.f64 1 g) a) 1/3) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2))))))
Outputs
(*.f64 (pow.f64 (*.f64 1 (pow.f64 h 2)) 1/3) (cbrt.f64 -1))
(*.f64 (cbrt.f64 (*.f64 h h)) (cbrt.f64 -1))
(+.f64 (*.f64 (pow.f64 (*.f64 1 (pow.f64 h 2)) 1/3) (cbrt.f64 -1)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 h 4)) 1/3) (/.f64 (pow.f64 g 2) (pow.f64 (cbrt.f64 -1) 2)))))
(fma.f64 (cbrt.f64 (*.f64 h h)) (cbrt.f64 -1) (*.f64 1/3 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 h 4))) (/.f64 (*.f64 g g) (pow.f64 (cbrt.f64 -1) 2)))))
(fma.f64 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 (/.f64 (cbrt.f64 (/.f64 1 (pow.f64 h 10))) (pow.f64 (cbrt.f64 -1) 5)) (pow.f64 g 4)) (fma.f64 1/3 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 h 4))) (*.f64 (/.f64 g (pow.f64 (cbrt.f64 -1) 2)) g)) (*.f64 (cbrt.f64 (*.f64 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 (*.f64 g g) (pow.f64 (cbrt.f64 -1) 2))) (*.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 (/.f64 (cbrt.f64 (/.f64 1 (pow.f64 h 10))) (pow.f64 (cbrt.f64 -1) 5)) (pow.f64 g 4)) (fma.f64 (cbrt.f64 (*.f64 h h)) (cbrt.f64 -1) (fma.f64 1/3 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 h 4))) (*.f64 (/.f64 g (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)))))
(pow.f64 (pow.f64 g 2) 1/3)
(cbrt.f64 (*.f64 g g))
(+.f64 (pow.f64 (pow.f64 g 2) 1/3) (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 g 4)) 1/3) (pow.f64 h 2))))
(+.f64 (cbrt.f64 (*.f64 g g)) (*.f64 -1/3 (*.f64 (*.f64 h h) (cbrt.f64 (/.f64 1 (pow.f64 g 4))))))
(fma.f64 -1/3 (*.f64 (*.f64 h h) (cbrt.f64 (/.f64 1 (pow.f64 g 4)))) (cbrt.f64 (*.f64 g g)))
(+.f64 (pow.f64 (pow.f64 g 2) 1/3) (+.f64 (*.f64 -1/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 g 10)) 1/3) (pow.f64 h 4))) (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 g 4)) 1/3) (pow.f64 h 2)))))
(+.f64 (cbrt.f64 (*.f64 g g)) (fma.f64 -1/9 (*.f64 (pow.f64 h 4) (cbrt.f64 (/.f64 1 (pow.f64 g 10)))) (*.f64 -1/3 (*.f64 (*.f64 h h) (cbrt.f64 (/.f64 1 (pow.f64 g 4)))))))
(+.f64 (cbrt.f64 (*.f64 g g)) (fma.f64 -1/9 (*.f64 (pow.f64 h 4) (cbrt.f64 (/.f64 1 (pow.f64 g 10)))) (*.f64 (*.f64 h h) (*.f64 -1/3 (cbrt.f64 (/.f64 1 (pow.f64 g 4)))))))
(+.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 (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 1/2 h) (/.f64 g (/.f64 (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 (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 (pow.f64 h 3)) (/.f64 (pow.f64 g 4) (neg.f64 (sqrt.f64 -1))))))
(fma.f64 1/2 (*.f64 (/.f64 g h) (/.f64 g (sqrt.f64 -1))) (fma.f64 -1/8 (/.f64 (pow.f64 g 4) (*.f64 (neg.f64 (sqrt.f64 -1)) (pow.f64 h 3))) (*.f64 h (sqrt.f64 -1))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3)))) (+.f64 (*.f64 (sqrt.f64 -1) h) (*.f64 1/16 (/.f64 (pow.f64 g 6) (*.f64 (pow.f64 (sqrt.f64 -1) 5) (pow.f64 h 5)))))))
(fma.f64 1/2 (/.f64 (*.f64 g g) (*.f64 h (sqrt.f64 -1))) (fma.f64 -1/8 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3))) (fma.f64 (sqrt.f64 -1) h (*.f64 1/16 (/.f64 (pow.f64 g 6) (*.f64 (pow.f64 (sqrt.f64 -1) 5) (pow.f64 h 5)))))))
(fma.f64 1/2 (*.f64 (/.f64 g h) (/.f64 g (sqrt.f64 -1))) (fma.f64 -1/8 (/.f64 (pow.f64 g 4) (*.f64 (neg.f64 (sqrt.f64 -1)) (pow.f64 h 3))) (fma.f64 h (sqrt.f64 -1) (*.f64 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))))))
g
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) g)
(fma.f64 -1/2 (/.f64 (*.f64 h h) g) g)
(fma.f64 -1/2 (/.f64 h (/.f64 g h)) g)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 g (*.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))))
(+.f64 (fma.f64 -1/2 (/.f64 (*.f64 h h) g) g) (*.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))))
(fma.f64 -1/2 (/.f64 h (/.f64 g h)) (fma.f64 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) g))
(+.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)))
(*.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))
(-.f64 (fma.f64 1/2 (/.f64 h (/.f64 g h)) (*.f64 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) 1/8)) g)
(fma.f64 1/2 (/.f64 h (/.f64 g h)) (fma.f64 (/.f64 1/8 (pow.f64 g 3)) (pow.f64 h 4) (neg.f64 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)))
(-.f64 (fma.f64 1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5)) (fma.f64 1/2 (/.f64 h (/.f64 g h)) (*.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 1/2 (/.f64 h (/.f64 g h)) (fma.f64 (/.f64 1/8 (pow.f64 g 3)) (pow.f64 h 4) (neg.f64 g))))
g
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) g)
(fma.f64 -1/2 (/.f64 (*.f64 h h) g) g)
(fma.f64 -1/2 (/.f64 h (/.f64 g h)) g)
(+.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))
(+.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)))
(*.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 1/2 h) (/.f64 g (/.f64 (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 (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 (pow.f64 h 3)) (/.f64 (pow.f64 g 4) (neg.f64 (sqrt.f64 -1))))))
(fma.f64 1/2 (*.f64 (/.f64 g h) (/.f64 g (sqrt.f64 -1))) (fma.f64 -1/8 (/.f64 (pow.f64 g 4) (*.f64 (neg.f64 (sqrt.f64 -1)) (pow.f64 h 3))) (*.f64 h (sqrt.f64 -1))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3)))) (+.f64 (*.f64 (sqrt.f64 -1) h) (*.f64 1/16 (/.f64 (pow.f64 g 6) (*.f64 (pow.f64 (sqrt.f64 -1) 5) (pow.f64 h 5)))))))
(fma.f64 1/2 (/.f64 (*.f64 g g) (*.f64 h (sqrt.f64 -1))) (fma.f64 -1/8 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3))) (fma.f64 (sqrt.f64 -1) h (*.f64 1/16 (/.f64 (pow.f64 g 6) (*.f64 (pow.f64 (sqrt.f64 -1) 5) (pow.f64 h 5)))))))
(fma.f64 1/2 (*.f64 (/.f64 g h) (/.f64 g (sqrt.f64 -1))) (fma.f64 -1/8 (/.f64 (pow.f64 g 4) (*.f64 (neg.f64 (sqrt.f64 -1)) (pow.f64 h 3))) (fma.f64 h (sqrt.f64 -1) (*.f64 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))))))
(*.f64 -1 (*.f64 (sqrt.f64 -1) h))
(neg.f64 (*.f64 h (sqrt.f64 -1)))
(*.f64 (sqrt.f64 -1) (neg.f64 h))
(*.f64 h (neg.f64 (sqrt.f64 -1)))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (*.f64 -1 (*.f64 (sqrt.f64 -1) h)))
(fma.f64 -1/2 (/.f64 (*.f64 g g) (*.f64 h (sqrt.f64 -1))) (neg.f64 (*.f64 h (sqrt.f64 -1))))
(-.f64 (*.f64 (/.f64 -1/2 h) (/.f64 g (/.f64 (sqrt.f64 -1) g))) (*.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))))
(fma.f64 (*.f64 (/.f64 g h) (/.f64 g (sqrt.f64 -1))) -1/2 (-.f64 (/.f64 (pow.f64 g 4) (/.f64 (*.f64 (neg.f64 (sqrt.f64 -1)) (pow.f64 h 3)) 1/8)) (*.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 (*.f64 (pow.f64 g 6) -1/16) (pow.f64 (sqrt.f64 -1) 5)) (pow.f64 h 5))) (*.f64 h (sqrt.f64 -1))))
(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 (pow.f64 g 6) (*.f64 (pow.f64 (sqrt.f64 -1) 5) (pow.f64 h 5))) -1/16)) (*.f64 h (sqrt.f64 -1))))
(fma.f64 (*.f64 (/.f64 g h) (/.f64 g (sqrt.f64 -1))) -1/2 (fma.f64 (/.f64 (pow.f64 g 4) (*.f64 (neg.f64 (sqrt.f64 -1)) (pow.f64 h 3))) 1/8 (-.f64 (*.f64 (/.f64 (pow.f64 g 6) (*.f64 (pow.f64 (sqrt.f64 -1) 5) (pow.f64 h 5))) -1/16) (*.f64 h (sqrt.f64 -1)))))
(*.f64 (sqrt.f64 -1) h)
(*.f64 h (sqrt.f64 -1))
(+.f64 (*.f64 (sqrt.f64 -1) h) g)
(fma.f64 (sqrt.f64 -1) h g)
(fma.f64 h (sqrt.f64 -1) g)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (+.f64 (*.f64 (sqrt.f64 -1) h) g))
(fma.f64 1/2 (/.f64 (*.f64 g g) (*.f64 h (sqrt.f64 -1))) (fma.f64 (sqrt.f64 -1) h g))
(fma.f64 1/2 (*.f64 (/.f64 g h) (/.f64 g (sqrt.f64 -1))) (fma.f64 h (sqrt.f64 -1) g))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (+.f64 (*.f64 -1/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 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 g)))
(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) g)))
(*.f64 2 g)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 2 g))
(fma.f64 -1/2 (/.f64 (*.f64 h h) g) (*.f64 2 g))
(fma.f64 -1/2 (/.f64 h (/.f64 g h)) (*.f64 2 g))
(fma.f64 2 g (*.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 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 2 g)))
(fma.f64 -1/2 (/.f64 h (/.f64 g h)) (fma.f64 2 g (/.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 (*.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 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 2 g))))
(fma.f64 -1/2 (/.f64 h (/.f64 g h)) (fma.f64 -1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5)) (fma.f64 2 g (/.f64 (pow.f64 h 4) (/.f64 (pow.f64 g 3) -1/8)))))
(*.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))
(+.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 1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5)) (fma.f64 1/2 (/.f64 h (/.f64 g h)) (*.f64 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) 1/8)))
(+.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 (pow.f64 h 4) -1/8) 2)) (pow.f64 g 7)) (*.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 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/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 (*.f64 (/.f64 1/2 (pow.f64 g 7)) (*.f64 (pow.f64 h 8) 5/64)))))
(*.f64 2 g)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 2 g))
(fma.f64 -1/2 (/.f64 (*.f64 h h) g) (*.f64 2 g))
(fma.f64 -1/2 (/.f64 h (/.f64 g h)) (*.f64 2 g))
(fma.f64 2 g (*.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 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 2 g)))
(fma.f64 -1/2 (/.f64 h (/.f64 g h)) (fma.f64 2 g (/.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 (*.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 -1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 2 g))))
(fma.f64 -1/2 (/.f64 h (/.f64 g h)) (fma.f64 -1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5)) (fma.f64 2 g (/.f64 (pow.f64 h 4) (/.f64 (pow.f64 g 3) -1/8)))))
(*.f64 (sqrt.f64 -1) h)
(*.f64 h (sqrt.f64 -1))
(+.f64 (*.f64 (sqrt.f64 -1) h) g)
(fma.f64 (sqrt.f64 -1) h g)
(fma.f64 h (sqrt.f64 -1) g)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (+.f64 (*.f64 (sqrt.f64 -1) h) g))
(fma.f64 1/2 (/.f64 (*.f64 g g) (*.f64 h (sqrt.f64 -1))) (fma.f64 (sqrt.f64 -1) h g))
(fma.f64 1/2 (*.f64 (/.f64 g h) (/.f64 g (sqrt.f64 -1))) (fma.f64 h (sqrt.f64 -1) g))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (+.f64 (*.f64 -1/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 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 g)))
(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) g)))
(*.f64 -1 (*.f64 (sqrt.f64 -1) h))
(neg.f64 (*.f64 h (sqrt.f64 -1)))
(*.f64 (sqrt.f64 -1) (neg.f64 h))
(*.f64 h (neg.f64 (sqrt.f64 -1)))
(+.f64 (*.f64 -1 (*.f64 (sqrt.f64 -1) h)) g)
(fma.f64 -1 (*.f64 h (sqrt.f64 -1)) g)
(-.f64 g (*.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)) g))
(fma.f64 -1/2 (/.f64 (*.f64 g g) (*.f64 h (sqrt.f64 -1))) (fma.f64 -1 (*.f64 h (sqrt.f64 -1)) g))
(fma.f64 (*.f64 (/.f64 g h) (/.f64 g (sqrt.f64 -1))) -1/2 (-.f64 g (*.f64 h (sqrt.f64 -1))))
(fma.f64 (/.f64 -1/2 h) (/.f64 g (/.f64 (sqrt.f64 -1) g)) (-.f64 g (*.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 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))) (+.f64 (fma.f64 -1 (*.f64 h (sqrt.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 (-.f64 (fma.f64 (/.f64 (pow.f64 g 4) (*.f64 (neg.f64 (sqrt.f64 -1)) (pow.f64 h 3))) 1/8 g) (*.f64 h (sqrt.f64 -1))))
(*.f64 (pow.f64 (/.f64 (*.f64 (sqrt.f64 -1) (*.f64 1 h)) a) 1/3) (cbrt.f64 -1/2))
(*.f64 (cbrt.f64 (/.f64 (sqrt.f64 -1) (/.f64 a h))) (cbrt.f64 -1/2))
(*.f64 (cbrt.f64 (*.f64 (/.f64 h a) (sqrt.f64 -1))) (cbrt.f64 -1/2))
(+.f64 (*.f64 (pow.f64 (/.f64 (*.f64 (sqrt.f64 -1) (*.f64 1 h)) a) 1/3) (cbrt.f64 -1/2)) (*.f64 1/3 (*.f64 (*.f64 (cbrt.f64 -1/2) g) (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (pow.f64 a 7) (pow.f64 h 2)))) 1/9))))
(fma.f64 (cbrt.f64 (/.f64 (sqrt.f64 -1) (/.f64 a h))) (cbrt.f64 -1/2) (*.f64 1/3 (*.f64 (*.f64 g (cbrt.f64 -1/2)) (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (*.f64 h h) (pow.f64 a 7)))) 1/18) (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (*.f64 h h) (pow.f64 a 7)))) 1/18)))))
(fma.f64 1/3 (*.f64 (*.f64 g (cbrt.f64 -1/2)) (*.f64 (pow.f64 (/.f64 -1 (*.f64 (*.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 (/.f64 h a) (sqrt.f64 -1))) (*.f64 (*.f64 g (*.f64 (pow.f64 (/.f64 -1 (*.f64 h (*.f64 h (pow.f64 a 7)))) 1/18) (pow.f64 (/.f64 -1 (*.f64 h (*.f64 h (pow.f64 a 7)))) 1/18))) 1/3)))
(+.f64 (*.f64 (pow.f64 (/.f64 (*.f64 (sqrt.f64 -1) (*.f64 1 h)) a) 1/3) (cbrt.f64 -1/2)) (+.f64 (*.f64 1/3 (*.f64 (*.f64 (cbrt.f64 -1/2) g) (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (pow.f64 a 7) (pow.f64 h 2)))) 1/9))) (*.f64 1/3 (*.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (*.f64 1/3 (pow.f64 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 (pow.f64 a 17) h))) 1/9))) (pow.f64 g 2))) (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (pow.f64 h 2))) 1/3)))))
(fma.f64 (cbrt.f64 (/.f64 (sqrt.f64 -1) (/.f64 a h))) (cbrt.f64 -1/2) (*.f64 1/3 (+.f64 (*.f64 (*.f64 g (cbrt.f64 -1/2)) (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (*.f64 h h) (pow.f64 a 7)))) 1/18) (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (*.f64 h h) (pow.f64 a 7)))) 1/18))) (*.f64 (cbrt.f64 -1/2) (*.f64 (*.f64 (*.f64 g g) (+.f64 (/.f64 1/2 (*.f64 (sqrt.f64 -1) (*.f64 h a))) (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 h (pow.f64 a 17)))) 1/18) (pow.f64 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 h (pow.f64 a 17)))) 1/18))))) (cbrt.f64 (/.f64 (*.f64 a a) (*.f64 (*.f64 h h) (pow.f64 (sqrt.f64 -1) 2)))))))))
(fma.f64 1/3 (*.f64 (cbrt.f64 -1/2) (+.f64 (*.f64 g (*.f64 (pow.f64 (/.f64 -1 (*.f64 (*.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 g g) (*.f64 (-.f64 (/.f64 1/2 (*.f64 h (*.f64 (sqrt.f64 -1) 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 -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) (+.f64 (*.f64 (*.f64 g g) (*.f64 (+.f64 (/.f64 1/2 (*.f64 (sqrt.f64 -1) (*.f64 h a))) (*.f64 (*.f64 -1/3 (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))) (cbrt.f64 (neg.f64 (*.f64 (/.f64 a h) (/.f64 a h)))))) (*.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 h a) (sqrt.f64 -1))) (cbrt.f64 -1/2)))
(fma.f64 1/3 (*.f64 (cbrt.f64 -1/2) (+.f64 (*.f64 (*.f64 g g) (*.f64 (+.f64 (/.f64 1/2 (*.f64 (sqrt.f64 -1) (*.f64 h a))) (*.f64 (*.f64 -1/3 (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))) (cbrt.f64 (/.f64 (neg.f64 a) (/.f64 h (/.f64 a h)))))) (*.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 h a) (sqrt.f64 -1))) (cbrt.f64 -1/2)))
(+.f64 (*.f64 -1/3 (*.f64 (*.f64 (+.f64 (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 5) (*.f64 (pow.f64 a 4) (pow.f64 h 5)))) 1/9) (-.f64 (*.f64 1/2 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (*.f64 1/3 (pow.f64 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 (pow.f64 a 17) h))) 1/9))))) (*.f64 1/27 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (pow.f64 a 7) (pow.f64 h 2)))) 1/3))) (*.f64 (cbrt.f64 -1/2) (pow.f64 g 3))) (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (pow.f64 h 2))) 1/3))) (+.f64 (*.f64 (pow.f64 (/.f64 (*.f64 (sqrt.f64 -1) (*.f64 1 h)) a) 1/3) (cbrt.f64 -1/2)) (+.f64 (*.f64 1/3 (*.f64 (*.f64 (cbrt.f64 -1/2) g) (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (pow.f64 a 7) (pow.f64 h 2)))) 1/9))) (*.f64 1/3 (*.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 a h)))) (*.f64 1/3 (pow.f64 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 (pow.f64 a 17) h))) 1/9))) (pow.f64 g 2))) (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (*.f64 (pow.f64 (sqrt.f64 -1) 2) (pow.f64 h 2))) 1/3))))))
(fma.f64 -1/3 (*.f64 (cbrt.f64 (/.f64 (*.f64 a a) (*.f64 (*.f64 h h) (pow.f64 (sqrt.f64 -1) 2)))) (*.f64 (fma.f64 2/3 (*.f64 (+.f64 (/.f64 1/2 (*.f64 (sqrt.f64 -1) (*.f64 h a))) (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 h (pow.f64 a 17)))) 1/18) (pow.f64 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 h (pow.f64 a 17)))) 1/18)))) (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 5) (*.f64 (pow.f64 h 5) (pow.f64 a 4)))) 1/18) (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 5) (*.f64 (pow.f64 h 5) (pow.f64 a 4)))) 1/18))) (*.f64 1/27 (cbrt.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (*.f64 h h) (pow.f64 a 7))))))) (*.f64 (pow.f64 g 3) (cbrt.f64 -1/2)))) (fma.f64 (cbrt.f64 (/.f64 (sqrt.f64 -1) (/.f64 a h))) (cbrt.f64 -1/2) (*.f64 1/3 (+.f64 (*.f64 (*.f64 g (cbrt.f64 -1/2)) (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (*.f64 h h) (pow.f64 a 7)))) 1/18) (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (*.f64 h h) (pow.f64 a 7)))) 1/18))) (*.f64 (cbrt.f64 -1/2) (*.f64 (*.f64 (*.f64 g g) (+.f64 (/.f64 1/2 (*.f64 (sqrt.f64 -1) (*.f64 h a))) (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 h (pow.f64 a 17)))) 1/18) (pow.f64 (/.f64 1 (*.f64 (sqrt.f64 -1) (*.f64 h (pow.f64 a 17)))) 1/18))))) (cbrt.f64 (/.f64 (*.f64 a a) (*.f64 (*.f64 h h) (pow.f64 (sqrt.f64 -1) 2))))))))))
(fma.f64 -1/3 (*.f64 (cbrt.f64 (*.f64 -1 (*.f64 (/.f64 a h) (/.f64 a h)))) (*.f64 (fma.f64 1/27 (cbrt.f64 (/.f64 -1 (*.f64 (*.f64 h h) (pow.f64 a 7)))) (*.f64 (-.f64 (/.f64 1/2 (*.f64 h (*.f64 (sqrt.f64 -1) 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 2/3 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 5) (*.f64 (pow.f64 h 5) (pow.f64 a 4)))) 1/18) (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 5) (*.f64 (pow.f64 h 5) (pow.f64 a 4)))) 1/18))))) (*.f64 (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 g g) (*.f64 (-.f64 (/.f64 1/2 (*.f64 h (*.f64 (sqrt.f64 -1) 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 -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 (/.f64 h a) (sqrt.f64 -1))) (*.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 (neg.f64 (*.f64 (/.f64 a h) (/.f64 a h)))) (+.f64 (*.f64 1/3 (*.f64 (*.f64 g g) (*.f64 (cbrt.f64 -1/2) (+.f64 (/.f64 1/2 (*.f64 (sqrt.f64 -1) (*.f64 h a))) (*.f64 (*.f64 -1/3 (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/3 (*.f64 (fma.f64 2/3 (*.f64 (+.f64 (/.f64 1/2 (*.f64 (sqrt.f64 -1) (*.f64 h a))) (*.f64 (*.f64 -1/3 (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 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 5) (*.f64 (pow.f64 h 5) (pow.f64 a 4)))) 1/18) (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 5) (*.f64 (pow.f64 h 5) (pow.f64 a 4)))) 1/18))) (*.f64 1/27 (cbrt.f64 (/.f64 -1 (*.f64 h (*.f64 h (pow.f64 a 7))))))) (*.f64 (pow.f64 g 3) (cbrt.f64 -1/2)))))))
(+.f64 (*.f64 (cbrt.f64 -1/2) (+.f64 (cbrt.f64 (*.f64 (/.f64 h a) (sqrt.f64 -1))) (*.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 (neg.f64 a) (/.f64 h (/.f64 a h)))) (+.f64 (*.f64 1/3 (*.f64 (*.f64 g g) (*.f64 (cbrt.f64 -1/2) (+.f64 (/.f64 1/2 (*.f64 (sqrt.f64 -1) (*.f64 h a))) (*.f64 (*.f64 -1/3 (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/3 (*.f64 (fma.f64 2/3 (*.f64 (+.f64 (/.f64 1/2 (*.f64 (sqrt.f64 -1) (*.f64 h a))) (*.f64 (*.f64 -1/3 (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 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 5) (*.f64 (pow.f64 h 5) (pow.f64 a 4)))) 1/18) (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 -1) 5) (*.f64 (pow.f64 h 5) (pow.f64 a 4)))) 1/18))) (*.f64 1/27 (cbrt.f64 (/.f64 -1 (*.f64 h (*.f64 h (pow.f64 a 7))))))) (*.f64 (pow.f64 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 (*.f64 (*.f64 h h) (cbrt.f64 -1/2)) (pow.f64 (cbrt.f64 2) 2)) (cbrt.f64 (/.f64 1 (*.f64 (pow.f64 g 5) a)))) (*.f64 (cbrt.f64 (/.f64 g a)) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2))))
(fma.f64 (cbrt.f64 (/.f64 g a)) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)) (*.f64 -1/6 (*.f64 (/.f64 (*.f64 (*.f64 h h) (cbrt.f64 -1/2)) (pow.f64 (cbrt.f64 2) 2)) (cbrt.f64 (/.f64 1 (*.f64 (pow.f64 g 5) a))))))
(fma.f64 (cbrt.f64 (/.f64 g a)) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)) (*.f64 (*.f64 (/.f64 (*.f64 h h) (pow.f64 (cbrt.f64 2) 2)) (cbrt.f64 -1/2)) (*.f64 (cbrt.f64 (/.f64 1 (*.f64 (pow.f64 g 5) a))) -1/6)))
(+.f64 (*.f64 -1/6 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 h 2)) (pow.f64 (cbrt.f64 2) 2)) (pow.f64 (/.f64 1 (*.f64 a (pow.f64 g 5))) 1/3))) (+.f64 (*.f64 -1/18 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 h 4)) (pow.f64 (cbrt.f64 2) 2)) (pow.f64 (/.f64 1 (*.f64 a (pow.f64 g 11))) 1/3))) (*.f64 (pow.f64 (/.f64 (*.f64 1 g) a) 1/3) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)))))
(fma.f64 -1/6 (*.f64 (/.f64 (*.f64 (*.f64 h h) (cbrt.f64 -1/2)) (pow.f64 (cbrt.f64 2) 2)) (cbrt.f64 (/.f64 1 (*.f64 (pow.f64 g 5) a)))) (fma.f64 -1/18 (*.f64 (/.f64 (cbrt.f64 -1/2) (/.f64 (pow.f64 (cbrt.f64 2) 2) (pow.f64 h 4))) (cbrt.f64 (/.f64 1 (*.f64 a (pow.f64 g 11))))) (*.f64 (cbrt.f64 (/.f64 g a)) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)))))
(fma.f64 -1/6 (*.f64 (/.f64 (*.f64 (*.f64 h h) (cbrt.f64 -1/2)) (pow.f64 (cbrt.f64 2) 2)) (cbrt.f64 (/.f64 1 (*.f64 (pow.f64 g 5) a)))) (fma.f64 (cbrt.f64 (/.f64 g a)) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)) (*.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))))))))
(fma.f64 -1/6 (*.f64 (*.f64 (/.f64 (*.f64 h h) (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 11))) (/.f64 -1/18 (/.f64 (pow.f64 (cbrt.f64 2) 2) (*.f64 (pow.f64 h 4) (cbrt.f64 -1/2)))))))
(+.f64 (*.f64 -1/6 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 h 2)) (pow.f64 (cbrt.f64 2) 2)) (pow.f64 (/.f64 1 (*.f64 a (pow.f64 g 5))) 1/3))) (+.f64 (*.f64 1/3 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (-.f64 (*.f64 1/216 (/.f64 1 (*.f64 a (*.f64 (pow.f64 (cbrt.f64 2) 6) (pow.f64 g 5))))) (*.f64 13/144 (/.f64 1 (*.f64 a (pow.f64 g 5))))) (pow.f64 h 6))) (pow.f64 (cbrt.f64 2) 2)) (pow.f64 (/.f64 (*.f64 1 (pow.f64 a 2)) (pow.f64 g 2)) 1/3))) (+.f64 (*.f64 -1/18 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 h 4)) (pow.f64 (cbrt.f64 2) 2)) (pow.f64 (/.f64 1 (*.f64 a (pow.f64 g 11))) 1/3))) (*.f64 (pow.f64 (/.f64 (*.f64 1 g) a) 1/3) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2))))))
(fma.f64 -1/6 (*.f64 (/.f64 (*.f64 (*.f64 h h) (cbrt.f64 -1/2)) (pow.f64 (cbrt.f64 2) 2)) (cbrt.f64 (/.f64 1 (*.f64 (pow.f64 g 5) a)))) (fma.f64 1/3 (*.f64 (/.f64 (*.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 (*.f64 h h) (cbrt.f64 -1/2)) (pow.f64 (cbrt.f64 2) 2)) (cbrt.f64 (/.f64 1 (*.f64 (pow.f64 g 5) a)))) (fma.f64 1/3 (/.f64 (*.f64 (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 (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)))))))))
(fma.f64 -1/6 (*.f64 (*.f64 (/.f64 (*.f64 h h) (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 (*.f64 (cbrt.f64 -1/2) (cbrt.f64 (*.f64 (/.f64 a g) (/.f64 a g)))) (pow.f64 (cbrt.f64 2) 2)) (*.f64 (pow.f64 h 6) (+.f64 (/.f64 (/.f64 1/216 (*.f64 4 a)) (pow.f64 g 5)) (/.f64 -13/144 (*.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 11))) (/.f64 -1/18 (/.f64 (pow.f64 (cbrt.f64 2) 2) (*.f64 (pow.f64 h 4) (cbrt.f64 -1/2))))))))

localize41.0ms (0.5%)

Local error

Found 1 expressions with local error:

NewErrorProgram
24.9b
(sqrt.f64 (*.f64 h (neg.f64 h)))
Compiler

Compiled 143 to 53 computations (62.9% saved)

eval330.0ms (3.7%)

Compiler

Compiled 20303 to 11926 computations (41.3% saved)

prune148.0ms (1.7%)

Pruning

38 alts after pruning (36 fresh and 2 done)

PrunedKeptTotal
New52122543
Fresh71421
Picked101
Done224
Total53138569
Error
9.8b
Counts
569 → 38
Alt Table
Click to see full alt table
StatusErrorProgram
52.5b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (/.f64 (cbrt.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) -1/2)) (cbrt.f64 a)))
53.8b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (pow.f64 (sqrt.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))) 2) (/.f64 -1/2 a))))
56.7b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (pow.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a)) 1/3))
17.3b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (/.f64 (neg.f64 g) a)))
39.3b
(+.f64 (*.f64 (cbrt.f64 (/.f64 1/2 a)) (cbrt.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g))) (/.f64 (cbrt.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) -1/2)) (cbrt.f64 a)))
63.3b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (/.f64 (+.f64 g g) (cbrt.f64 a)))
62.2b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (fma.f64 1/2 (/.f64 h (/.f64 g h)) (*.f64 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) 1/8)) (/.f64 -1/2 a))))
62.2b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (+.f64 g (neg.f64 g)) (/.f64 -1/2 a))))
54.9b
(+.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))))
54.4b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (sqrt.f64 (cbrt.f64 (pow.f64 (*.f64 (+.f64 g (hypot.f64 g 0)) (/.f64 1/2 a)) 2))))
43.5b
(+.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))))
61.6b
(+.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.4b
(+.f64 (exp.f64 (log.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 g h) g) (/.f64 1/2 a))))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
57.7b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.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))))))
61.6b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (/.f64 -1/2 a))))
54.8b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (+.f64 g (cbrt.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 3/2))) (/.f64 -1/2 a))))
50.8b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (/.f64 (*.f64 h -1/2) (/.f64 g h)))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
41.5b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (+.f64 g (*.f64 (sqrt.f64 (+.f64 g h)) (sqrt.f64 g))) (/.f64 -1/2 a))))
37.5b
(+.f64 (*.f64 (cbrt.f64 (/.f64 1/2 a)) (cbrt.f64 (-.f64 (hypot.f64 g h) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
50.7b
(+.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))))
49.9b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 (/.f64 -1/2 a)) (cbrt.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))
39.3b
(+.f64 (/.f64 (cbrt.f64 (*.f64 1/2 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g))) (cbrt.f64 a)) (/.f64 (cbrt.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) -1/2)) (cbrt.f64 a)))
51.1b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (/.f64 (/.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) -1/2) (pow.f64 (cbrt.f64 a) 2)) (cbrt.f64 a))))
58.2b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (pow.f64 (pow.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (/.f64 -1/2 a)) 1/6) 2))
60.5b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (+.f64 g g) (cbrt.f64 (/.f64 -1/2 a))))
30.1b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (fma.f64 (cbrt.f64 (/.f64 g a)) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)) (*.f64 (*.f64 (/.f64 (*.f64 h h) (pow.f64 (cbrt.f64 2) 2)) (cbrt.f64 -1/2)) (*.f64 (cbrt.f64 (/.f64 1 (*.f64 (pow.f64 g 5) a))) -1/6))))
39.5b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (expm1.f64 (log1p.f64 (-.f64 (hypot.f64 g h) g))))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
39.1b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 g h) g)) 3))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
53.9b
(+.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))
51.2b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a)))) 3))
51.4b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (/.f64 -1/2 (/.f64 a (+.f64 g (sqrt.f64 (*.f64 (-.f64 g h) (+.f64 h g))))))))
37.5b
(+.f64 (/.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 g h) g) 1/2)) (cbrt.f64 a)) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
17.8b
(+.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)))))
49.9b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (/.f64 (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) -1/2)) (cbrt.f64 a)))
52.5b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 (/.f64 -1/2 a)) (cbrt.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))))
17.3b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (+.f64 g g) (/.f64 -1/2 a))))
39.2b
(+.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 g h) g) (/.f64 1/2 a)))) 3) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
58.2b
(+.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))
Compiler

Compiled 2117 to 1465 computations (30.8% saved)

localize19.0ms (0.2%)

Local error

Found 1 expressions with local error:

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

Compiled 52 to 22 computations (57.7% saved)

series2.0ms (0%)

Counts
1 → 0
Calls

6 calls:

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

rewrite59.0ms (0.7%)

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

simplify7.0ms (0.1%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

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

localize19.0ms (0.2%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.2b
(/.f64 (+.f64 g g) (cbrt.f64 a))
0.6b
(cbrt.f64 a)
Compiler

Compiled 53 to 22 computations (58.5% saved)

series8.0ms (0.1%)

Counts
2 → 12
Calls

9 calls:

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

rewrite60.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
650×pow1_binary64
612×add-log-exp_binary64
611×log1p-expm1-u_binary64
611×expm1-log1p-u_binary64
597×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify127.0ms (1.4%)

Algorithm
egg-herbie
Rules
836×cube-prod_binary64
818×unswap-sqr_binary64
629×sqr-pow_binary64
498×unpow3_binary64
492×cube-mult_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
010144
121144
239144
382144
4216144
5709144
6940144
71266144
82551144
92655144
102817144
113027144
123339144
133770144
144335144
155018144
165879144
176544144
187103144
197663144
Stop Event
node limit
Counts
61 → 51
Calls
Call 1
Inputs
(*.f64 2 (*.f64 (pow.f64 (/.f64 1 a) 1/3) g))
(*.f64 2 (*.f64 (pow.f64 (/.f64 1 a) 1/3) g))
(*.f64 2 (*.f64 (pow.f64 (/.f64 1 a) 1/3) g))
(*.f64 2 (*.f64 (pow.f64 (/.f64 1 a) 1/3) g))
(*.f64 2 (*.f64 (pow.f64 (/.f64 1 a) 1/3) g))
(*.f64 2 (*.f64 (pow.f64 (/.f64 1 a) 1/3) g))
(*.f64 2 (*.f64 (pow.f64 (/.f64 1 a) 1/3) g))
(*.f64 2 (*.f64 (pow.f64 (/.f64 1 a) 1/3) g))
(*.f64 2 (*.f64 (pow.f64 (/.f64 1 a) 1/3) g))
(*.f64 2 (*.f64 (pow.f64 (/.f64 1 a) 1/3) g))
(*.f64 2 (*.f64 (pow.f64 (/.f64 1 a) 1/3) g))
(*.f64 2 (*.f64 (pow.f64 (/.f64 1 a) 1/3) g))
Outputs
(*.f64 2 (*.f64 (pow.f64 (/.f64 1 a) 1/3) g))
(*.f64 2 (*.f64 (cbrt.f64 (/.f64 1 a)) g))
(*.f64 (cbrt.f64 (/.f64 1 a)) (*.f64 2 g))
(*.f64 2 (*.f64 (pow.f64 (/.f64 1 a) 1/3) g))
(*.f64 2 (*.f64 (cbrt.f64 (/.f64 1 a)) g))
(*.f64 (cbrt.f64 (/.f64 1 a)) (*.f64 2 g))
(*.f64 2 (*.f64 (pow.f64 (/.f64 1 a) 1/3) g))
(*.f64 2 (*.f64 (cbrt.f64 (/.f64 1 a)) g))
(*.f64 (cbrt.f64 (/.f64 1 a)) (*.f64 2 g))
(*.f64 2 (*.f64 (pow.f64 (/.f64 1 a) 1/3) g))
(*.f64 2 (*.f64 (cbrt.f64 (/.f64 1 a)) g))
(*.f64 (cbrt.f64 (/.f64 1 a)) (*.f64 2 g))
(*.f64 2 (*.f64 (pow.f64 (/.f64 1 a) 1/3) g))
(*.f64 2 (*.f64 (cbrt.f64 (/.f64 1 a)) g))
(*.f64 (cbrt.f64 (/.f64 1 a)) (*.f64 2 g))
(*.f64 2 (*.f64 (pow.f64 (/.f64 1 a) 1/3) g))
(*.f64 2 (*.f64 (cbrt.f64 (/.f64 1 a)) g))
(*.f64 (cbrt.f64 (/.f64 1 a)) (*.f64 2 g))
(*.f64 2 (*.f64 (pow.f64 (/.f64 1 a) 1/3) g))
(*.f64 2 (*.f64 (cbrt.f64 (/.f64 1 a)) g))
(*.f64 (cbrt.f64 (/.f64 1 a)) (*.f64 2 g))
(*.f64 2 (*.f64 (pow.f64 (/.f64 1 a) 1/3) g))
(*.f64 2 (*.f64 (cbrt.f64 (/.f64 1 a)) g))
(*.f64 (cbrt.f64 (/.f64 1 a)) (*.f64 2 g))
(*.f64 2 (*.f64 (pow.f64 (/.f64 1 a) 1/3) g))
(*.f64 2 (*.f64 (cbrt.f64 (/.f64 1 a)) g))
(*.f64 (cbrt.f64 (/.f64 1 a)) (*.f64 2 g))
(*.f64 2 (*.f64 (pow.f64 (/.f64 1 a) 1/3) g))
(*.f64 2 (*.f64 (cbrt.f64 (/.f64 1 a)) g))
(*.f64 (cbrt.f64 (/.f64 1 a)) (*.f64 2 g))
(*.f64 2 (*.f64 (pow.f64 (/.f64 1 a) 1/3) g))
(*.f64 2 (*.f64 (cbrt.f64 (/.f64 1 a)) g))
(*.f64 (cbrt.f64 (/.f64 1 a)) (*.f64 2 g))
(*.f64 2 (*.f64 (pow.f64 (/.f64 1 a) 1/3) g))
(*.f64 2 (*.f64 (cbrt.f64 (/.f64 1 a)) g))
(*.f64 (cbrt.f64 (/.f64 1 a)) (*.f64 2 g))

localize42.0ms (0.5%)

Local error

Found 2 expressions with local error:

NewErrorProgram
1.0b
(cbrt.f64 2)
15.9b
(pow.f64 (/.f64 (*.f64 1 g) a) 1/3)
Compiler

Compiled 90 to 64 computations (28.9% saved)

series8.0ms (0.1%)

Counts
2 → 0
Calls

6 calls:

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

rewrite61.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
761×pow1_binary64
710×add-log-exp_binary64
710×log1p-expm1-u_binary64
710×expm1-log1p-u_binary64
693×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify7.0ms (0.1%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

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

localize39.0ms (0.4%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(*.f64 (+.f64 g (hypot.f64 g 0)) (/.f64 1/2 a))
0.1b
(pow.f64 (*.f64 (+.f64 g (hypot.f64 g 0)) (/.f64 1/2 a)) 2)
1.3b
(sqrt.f64 (cbrt.f64 (pow.f64 (*.f64 (+.f64 g (hypot.f64 g 0)) (/.f64 1/2 a)) 2)))
15.4b
(cbrt.f64 (pow.f64 (*.f64 (+.f64 g (hypot.f64 g 0)) (/.f64 1/2 a)) 2))
Compiler

Compiled 104 to 69 computations (33.7% saved)

series230.0ms (2.6%)

Counts
4 → 48
Calls

24 calls:

TimeVariablePointExpression
103.0ms
g
@-inf
(cbrt.f64 (pow.f64 (*.f64 (+.f64 g (hypot.f64 g 0)) (/.f64 1/2 a)) 2))
81.0ms
g
@0
(sqrt.f64 (cbrt.f64 (pow.f64 (*.f64 (+.f64 g (hypot.f64 g 0)) (/.f64 1/2 a)) 2)))
17.0ms
a
@0
(sqrt.f64 (cbrt.f64 (pow.f64 (*.f64 (+.f64 g (hypot.f64 g 0)) (/.f64 1/2 a)) 2)))
13.0ms
g
@-inf
(pow.f64 (*.f64 (+.f64 g (hypot.f64 g 0)) (/.f64 1/2 a)) 2)
2.0ms
a
@0
(pow.f64 (*.f64 (+.f64 g (hypot.f64 g 0)) (/.f64 1/2 a)) 2)

rewrite92.0ms (1%)

Algorithm
batch-egg-rewrite
Rules
492×log-prod_binary64
333×pow-prod-down_binary64
278×pow2_binary64
256×prod-diff_binary64
210×pow-unpow_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify112.0ms (1.3%)

Algorithm
egg-herbie
Rules
1191×associate-/r/_binary64
601×sqr-pow_binary64
570×unswap-sqr_binary64
555×times-frac_binary64
256×associate-/l*_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
09288
117288
230288
373288
4305288
52537288
63794288
73978288
84195288
94439288
104770288
116748288
127406288
Stop Event
node limit
Counts
200 → 156
Calls
Call 1
Inputs
(/.f64 (pow.f64 g 2) (pow.f64 a 2))
(/.f64 (pow.f64 g 2) (pow.f64 a 2))
(/.f64 (pow.f64 g 2) (pow.f64 a 2))
(/.f64 (pow.f64 g 2) (pow.f64 a 2))
(/.f64 (pow.f64 g 2) (pow.f64 a 2))
(/.f64 (pow.f64 g 2) (pow.f64 a 2))
(/.f64 (pow.f64 g 2) (pow.f64 a 2))
(/.f64 (pow.f64 g 2) (pow.f64 a 2))
0
0
0
0
(/.f64 (pow.f64 g 2) (pow.f64 a 2))
(/.f64 (pow.f64 g 2) (pow.f64 a 2))
(/.f64 (pow.f64 g 2) (pow.f64 a 2))
(/.f64 (pow.f64 g 2) (pow.f64 a 2))
(/.f64 (pow.f64 g 2) (pow.f64 a 2))
(/.f64 (pow.f64 g 2) (pow.f64 a 2))
(/.f64 (pow.f64 g 2) (pow.f64 a 2))
(/.f64 (pow.f64 g 2) (pow.f64 a 2))
(/.f64 (pow.f64 g 2) (pow.f64 a 2))
(/.f64 (pow.f64 g 2) (pow.f64 a 2))
(/.f64 (pow.f64 g 2) (pow.f64 a 2))
(/.f64 (pow.f64 g 2) (pow.f64 a 2))
(/.f64 g a)
(/.f64 g a)
(/.f64 g a)
(/.f64 g a)
(/.f64 g a)
(/.f64 g a)
(/.f64 g a)
(/.f64 g a)
0
0
0
0
(/.f64 g a)
(/.f64 g a)
(/.f64 g a)
(/.f64 g a)
(/.f64 g a)
(/.f64 g a)
(/.f64 g a)
(/.f64 g a)
(/.f64 g a)
(/.f64 g a)
(/.f64 g a)
(/.f64 g a)
Outputs
(/.f64 (pow.f64 g 2) (pow.f64 a 2))
(/.f64 (*.f64 g g) (*.f64 a a))
(*.f64 (/.f64 g a) (/.f64 g a))
(*.f64 g (/.f64 g (*.f64 a a)))
(/.f64 (pow.f64 g 2) (pow.f64 a 2))
(/.f64 (*.f64 g g) (*.f64 a a))
(*.f64 (/.f64 g a) (/.f64 g a))
(*.f64 g (/.f64 g (*.f64 a a)))
(/.f64 (pow.f64 g 2) (pow.f64 a 2))
(/.f64 (*.f64 g g) (*.f64 a a))
(*.f64 (/.f64 g a) (/.f64 g a))
(*.f64 g (/.f64 g (*.f64 a a)))
(/.f64 (pow.f64 g 2) (pow.f64 a 2))
(/.f64 (*.f64 g g) (*.f64 a a))
(*.f64 (/.f64 g a) (/.f64 g a))
(*.f64 g (/.f64 g (*.f64 a a)))
(/.f64 (pow.f64 g 2) (pow.f64 a 2))
(/.f64 (*.f64 g g) (*.f64 a a))
(*.f64 (/.f64 g a) (/.f64 g a))
(*.f64 g (/.f64 g (*.f64 a a)))
(/.f64 (pow.f64 g 2) (pow.f64 a 2))
(/.f64 (*.f64 g g) (*.f64 a a))
(*.f64 (/.f64 g a) (/.f64 g a))
(*.f64 g (/.f64 g (*.f64 a a)))
(/.f64 (pow.f64 g 2) (pow.f64 a 2))
(/.f64 (*.f64 g g) (*.f64 a a))
(*.f64 (/.f64 g a) (/.f64 g a))
(*.f64 g (/.f64 g (*.f64 a a)))
(/.f64 (pow.f64 g 2) (pow.f64 a 2))
(/.f64 (*.f64 g g) (*.f64 a a))
(*.f64 (/.f64 g a) (/.f64 g a))
(*.f64 g (/.f64 g (*.f64 a a)))
0
0
0
0
(/.f64 (pow.f64 g 2) (pow.f64 a 2))
(/.f64 (*.f64 g g) (*.f64 a a))
(*.f64 (/.f64 g a) (/.f64 g a))
(*.f64 g (/.f64 g (*.f64 a a)))
(/.f64 (pow.f64 g 2) (pow.f64 a 2))
(/.f64 (*.f64 g g) (*.f64 a a))
(*.f64 (/.f64 g a) (/.f64 g a))
(*.f64 g (/.f64 g (*.f64 a a)))
(/.f64 (pow.f64 g 2) (pow.f64 a 2))
(/.f64 (*.f64 g g) (*.f64 a a))
(*.f64 (/.f64 g a) (/.f64 g a))
(*.f64 g (/.f64 g (*.f64 a a)))
(/.f64 (pow.f64 g 2) (pow.f64 a 2))
(/.f64 (*.f64 g g) (*.f64 a a))
(*.f64 (/.f64 g a) (/.f64 g a))
(*.f64 g (/.f64 g (*.f64 a a)))
(/.f64 (pow.f64 g 2) (pow.f64 a 2))
(/.f64 (*.f64 g g) (*.f64 a a))
(*.f64 (/.f64 g a) (/.f64 g a))
(*.f64 g (/.f64 g (*.f64 a a)))
(/.f64 (pow.f64 g 2) (pow.f64 a 2))
(/.f64 (*.f64 g g) (*.f64 a a))
(*.f64 (/.f64 g a) (/.f64 g a))
(*.f64 g (/.f64 g (*.f64 a a)))
(/.f64 (pow.f64 g 2) (pow.f64 a 2))
(/.f64 (*.f64 g g) (*.f64 a a))
(*.f64 (/.f64 g a) (/.f64 g a))
(*.f64 g (/.f64 g (*.f64 a a)))
(/.f64 (pow.f64 g 2) (pow.f64 a 2))
(/.f64 (*.f64 g g) (*.f64 a a))
(*.f64 (/.f64 g a) (/.f64 g a))
(*.f64 g (/.f64 g (*.f64 a a)))
(/.f64 (pow.f64 g 2) (pow.f64 a 2))
(/.f64 (*.f64 g g) (*.f64 a a))
(*.f64 (/.f64 g a) (/.f64 g a))
(*.f64 g (/.f64 g (*.f64 a a)))
(/.f64 (pow.f64 g 2) (pow.f64 a 2))
(/.f64 (*.f64 g g) (*.f64 a a))
(*.f64 (/.f64 g a) (/.f64 g a))
(*.f64 g (/.f64 g (*.f64 a a)))
(/.f64 (pow.f64 g 2) (pow.f64 a 2))
(/.f64 (*.f64 g g) (*.f64 a a))
(*.f64 (/.f64 g a) (/.f64 g a))
(*.f64 g (/.f64 g (*.f64 a a)))
(/.f64 (pow.f64 g 2) (pow.f64 a 2))
(/.f64 (*.f64 g g) (*.f64 a a))
(*.f64 (/.f64 g a) (/.f64 g a))
(*.f64 g (/.f64 g (*.f64 a a)))
(/.f64 g a)
(/.f64 g a)
(/.f64 g a)
(/.f64 g a)
(/.f64 g a)
(/.f64 g a)
(/.f64 g a)
(/.f64 g a)
0
0
0
0
(/.f64 g a)
(/.f64 g a)
(/.f64 g a)
(/.f64 g a)
(/.f64 g a)
(/.f64 g a)
(/.f64 g a)
(/.f64 g a)
(/.f64 g a)
(/.f64 g a)
(/.f64 g a)
(/.f64 g a)

localize78.0ms (0.9%)

Local error

Found 1 expressions with local error:

NewErrorProgram
24.9b
(sqrt.f64 (*.f64 h (neg.f64 h)))
Compiler

Compiled 141 to 48 computations (66% saved)

eval130.0ms (1.5%)

Compiler

Compiled 6063 to 3660 computations (39.6% saved)

prune127.0ms (1.4%)

Pruning

40 alts after pruning (35 fresh and 5 done)

PrunedKeptTotal
New25022272
Fresh181331
Picked101
Done156
Total27040310
Error
1.4b
Counts
310 → 40
Alt Table
Click to see full alt table
StatusErrorProgram
39.3b
(+.f64 (*.f64 (cbrt.f64 (/.f64 1/2 a)) (cbrt.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g))) (/.f64 (cbrt.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) -1/2)) (cbrt.f64 a)))
63.3b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (/.f64 (+.f64 g g) (cbrt.f64 a)))
62.2b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (+.f64 g (neg.f64 g)) (/.f64 -1/2 a))))
49.4b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (sqrt.f64 (cbrt.f64 (/.f64 (*.f64 (*.f64 (+.f64 g g) (/.f64 1/2 a)) (*.f64 (+.f64 g g) 1/2)) a))))
47.0b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (sqrt.f64 (cbrt.f64 (*.f64 (*.f64 (+.f64 g g) (/.f64 1/2 a)) (*.f64 (+.f64 g g) (/.f64 1/2 a))))))
17.7b
(+.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))))
43.5b
(+.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))))
63.2b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (/.f64 1 (cbrt.f64 (/.f64 a g))))
49.4b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (sqrt.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (*.f64 (+.f64 g g) (*.f64 (+.f64 g g) (/.f64 1/2 a)))))))
61.6b
(+.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))))
39.2b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (sqrt.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 (+.f64 g g) (/.f64 1/2 a)))) 6)))
45.8b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (sqrt.f64 (*.f64 (pow.f64 (cbrt.f64 (+.f64 g g)) 2) (cbrt.f64 (/.f64 1/4 (*.f64 a a))))))
50.8b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (/.f64 (*.f64 h -1/2) (/.f64 g h)))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
41.5b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (+.f64 g (*.f64 (sqrt.f64 (+.f64 g h)) (sqrt.f64 g))) (/.f64 -1/2 a))))
37.5b
(+.f64 (*.f64 (cbrt.f64 (/.f64 1/2 a)) (cbrt.f64 (-.f64 (hypot.f64 g h) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
2.6b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (/.f64 (cbrt.f64 g) (cbrt.f64 a)) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2))))
50.7b
(+.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))))
49.9b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 (/.f64 -1/2 a)) (cbrt.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))
43.5b
(+.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) (pow.f64 (cbrt.f64 (cbrt.f64 2)) 3))))
17.3b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (+.f64 g g) (/.f64 -1/2 a))))
19.8b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (*.f64 (pow.f64 (pow.f64 (cbrt.f64 (/.f64 g a)) 2) 1/3) (cbrt.f64 (cbrt.f64 (/.f64 g a)))) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2))))
58.2b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (pow.f64 (pow.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (/.f64 -1/2 a)) 1/6) 2))
60.5b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (+.f64 g g) (cbrt.f64 (/.f64 -1/2 a))))
43.5b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (*.f64 (pow.f64 (/.f64 g a) 1/6) (pow.f64 (/.f64 g a) 1/6)) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2))))
39.5b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (expm1.f64 (log1p.f64 (-.f64 (hypot.f64 g h) g))))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
39.1b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 g h) g)) 3))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
47.0b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (sqrt.f64 (cbrt.f64 (pow.f64 (/.f64 g a) 2))))
35.6b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (*.f64 (cbrt.f64 g) (pow.f64 (/.f64 1 a) 1/3)) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2))))
2.4b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (*.f64 (cbrt.f64 g) (cbrt.f64 (/.f64 1 a))) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2))))
17.8b
(+.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)))))
58.2b
(+.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))
39.7b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (sqrt.f64 (expm1.f64 (log1p.f64 (pow.f64 (cbrt.f64 (*.f64 (+.f64 g g) (/.f64 1/2 a))) 2)))))
53.6b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (sqrt.f64 (cbrt.f64 (*.f64 g (/.f64 g (*.f64 a a))))))
18.1b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 g a))) 2) (cbrt.f64 (cbrt.f64 (/.f64 g a)))) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2))))
60.5b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (+.f64 g g) (/.f64 1 (neg.f64 (cbrt.f64 a)))))
17.3b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (/.f64 (neg.f64 g) a)))
2.1b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (/.f64 (cbrt.f64 g) (cbrt.f64 (neg.f64 a))))
17.2b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (/.f64 1 (cbrt.f64 (/.f64 a g))) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2))))
58.0b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (pow.f64 (pow.f64 (*.f64 (+.f64 g g) (/.f64 1/2 a)) 6) 1/18))
60.5b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (neg.f64 (*.f64 2 (/.f64 g (cbrt.f64 a)))))
Compiler

Compiled 1005 to 718 computations (28.6% saved)

regimes579.0ms (6.6%)

Counts
96 → 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))) (neg.f64 (*.f64 2 (/.f64 g (cbrt.f64 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))) (*.f64 (+.f64 g g) (/.f64 1 (neg.f64 (cbrt.f64 a)))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (+.f64 g (neg.f64 g)) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (*.f64 (/.f64 1/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))) (sqrt.f64 (cbrt.f64 (*.f64 g (/.f64 g (*.f64 a a))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (pow.f64 (pow.f64 (*.f64 (+.f64 g g) (/.f64 1/2 a)) 6) 1/18))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (/.f64 -1/2 (/.f64 a (+.f64 g (sqrt.f64 (*.f64 (-.f64 g h) (+.f64 h g))))))))
(+.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 g g))) (pow.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a)) 1/3))
(+.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 g g))) (sqrt.f64 (cbrt.f64 (/.f64 (*.f64 (*.f64 (+.f64 g g) (/.f64 1/2 a)) (*.f64 (+.f64 g g) 1/2)) a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (sqrt.f64 (cbrt.f64 (*.f64 (*.f64 (+.f64 g g) (/.f64 1/2 a)) (*.f64 (+.f64 g g) (/.f64 1/2 a))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (sqrt.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (*.f64 (+.f64 g g) (*.f64 (+.f64 g g) (/.f64 1/2 a)))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (/.f64 (*.f64 h -1/2) (/.f64 g 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 g g))) (sqrt.f64 (cbrt.f64 (pow.f64 (/.f64 g 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 -1/2) (*.f64 (cbrt.f64 2) (cbrt.f64 (/.f64 g a)))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 2) (cbrt.f64 (/.f64 g a)))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (/.f64 1 (cbrt.f64 (/.f64 a g))) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2))))
(+.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 g (*.f64 (sqrt.f64 (+.f64 g h)) (sqrt.f64 g))) (/.f64 -1/2 a))))
(+.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))) (*.f64 (cbrt.f64 (/.f64 -1/2 a)) (cbrt.f64 (+.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 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) -1/2)) (cbrt.f64 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 (*.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 (neg.f64 g)) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (+.f64 g (cbrt.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 3/2))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (+.f64 g (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 (*.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 (/.f64 (cbrt.f64 g) (cbrt.f64 a)) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (sqrt.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 (+.f64 g g) (/.f64 1/2 a)))) 6)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (*.f64 (cbrt.f64 g) (cbrt.f64 (/.f64 1 a))) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (sqrt.f64 (cbrt.f64 (pow.f64 (*.f64 (+.f64 g (hypot.f64 g 0)) (/.f64 1/2 a)) 2))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (sqrt.f64 (*.f64 (pow.f64 (cbrt.f64 (+.f64 g g)) 2) (cbrt.f64 (/.f64 1/4 (*.f64 a a))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g 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 g g))) (/.f64 (cbrt.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) -1/2)) (cbrt.f64 a)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (cbrt.f64 (/.f64 -1/2 a)) (cbrt.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (/.f64 (cbrt.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) -1/2)) (cbrt.f64 a)))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (*.f64 (pow.f64 (/.f64 g a) 1/6) (pow.f64 (/.f64 g a) 1/6)) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (pow.f64 (pow.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (/.f64 -1/2 a)) 1/6) 2))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (*.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 2) (cbrt.f64 (/.f64 g a)))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a)))) 3))
(+.f64 (*.f64 (cbrt.f64 (/.f64 1/2 a)) (cbrt.f64 (-.f64 (hypot.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))) (/.f64 (cbrt.f64 (*.f64 (+.f64 g (hypot.f64 g 0)) -1/2)) (cbrt.f64 a)))
(+.f64 (/.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 g h) g) 1/2)) (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 g g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 3))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 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 (fma.f64 1/2 (/.f64 h (/.f64 g h)) (*.f64 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) 1/8)) (/.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 (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 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.f64 g (cbrt.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 3/2))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (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 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.f64 g (exp.f64 (*.f64 (log.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 1/2))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (pow.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 3/2) 1/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 (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 g g))) (sqrt.f64 (expm1.f64 (log1p.f64 (pow.f64 (cbrt.f64 (*.f64 (+.f64 g g) (/.f64 1/2 a))) 2)))))
(+.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) (pow.f64 (cbrt.f64 (cbrt.f64 2)) 3))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (exp.f64 (log.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (pow.f64 (sqrt.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))) 2) (/.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))) (sqrt.f64 (cbrt.f64 (pow.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (/.f64 1/2 a)) 2))))
(+.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 (exp.f64 (log.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 g h) g) (/.f64 1/2 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) (expm1.f64 (log1p.f64 (-.f64 (hypot.f64 g h) g))))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
(+.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 g h) g) (/.f64 1/2 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) (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 g h) g)) 3))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (/.f64 (/.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) -1/2) (pow.f64 (cbrt.f64 a) 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 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.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 (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 (sqrt.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 3)) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 3))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (exp.f64 (log.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.f64 g (exp.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 (pow.f64 (cbrt.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) 3) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.f64 g (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 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (sqrt.f64 (cbrt.f64 (pow.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (/.f64 1/2 a)) 2))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.f64 (*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 g a))) 2) (cbrt.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 (*.f64 (pow.f64 (pow.f64 (cbrt.f64 (/.f64 g a)) 2) 1/3) (cbrt.f64 (cbrt.f64 (/.f64 g a)))) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2))))
(+.f64 (*.f64 (cbrt.f64 (/.f64 1/2 a)) (cbrt.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g))) (/.f64 (cbrt.f64 (*.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) -1/2)) (cbrt.f64 a)))
(+.f64 (/.f64 (cbrt.f64 (*.f64 1/2 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g))) (cbrt.f64 a)) (/.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 (sqrt.f64 (fma.f64 (pow.f64 (cbrt.f64 g) 2) (*.f64 (cbrt.f64 g) 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 g g))) (fma.f64 (cbrt.f64 (/.f64 g a)) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)) (*.f64 (*.f64 (/.f64 (*.f64 h h) (pow.f64 (cbrt.f64 2) 2)) (cbrt.f64 -1/2)) (*.f64 (cbrt.f64 (/.f64 1 (*.f64 (pow.f64 g 5) a))) -1/6))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (*.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))))))
Outputs
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (/.f64 (cbrt.f64 g) (cbrt.f64 (neg.f64 a))))
Calls

7 calls:

113.0ms
a
97.0ms
(/.f64 1 (*.f64 2 a))
66.0ms
h
60.0ms
(*.f64 2 a)
50.0ms
g
Results
ErrorSegmentsBranch
2.1b1g
2.1b1h
2.1b1a
2.1b1(+.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.1b1(/.f64 1 (*.f64 2 a))
2.1b1(*.f64 2 a)
2.1b1(*.f64 h h)
Compiler

Compiled 2590 to 1228 computations (52.6% saved)

regimes30.0ms (0.3%)

Counts
9 → 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))) (neg.f64 (*.f64 2 (/.f64 g (cbrt.f64 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))) (*.f64 (+.f64 g g) (/.f64 1 (neg.f64 (cbrt.f64 a)))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (+.f64 g (neg.f64 g)) (/.f64 -1/2 a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (*.f64 (/.f64 1/2 g) (*.f64 h h)) (/.f64 -1/2 a))))
Outputs
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (cbrt.f64 (*.f64 (+.f64 g g) (/.f64 -1/2 a))))
Calls

4 calls:

8.0ms
a
6.0ms
g
6.0ms
h
4.0ms
(*.f64 h h)
Results
ErrorSegmentsBranch
17.3b1g
17.3b1h
17.3b1a
17.3b1(*.f64 h h)
Compiler

Compiled 172 to 101 computations (41.3% saved)

regimes18.0ms (0.2%)

Accuracy

Total -46.0b remaining (-265.5%)

Threshold costs -46.0b (-265.5%)

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))) (neg.f64 (*.f64 2 (/.f64 g (cbrt.f64 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:

7.0ms
g
4.0ms
a
4.0ms
h
Results
ErrorSegmentsBranch
17.3b1g
17.3b1h
17.3b1a
Compiler

Compiled 92 to 56 computations (39.1% saved)

simplify6.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
02372
13772
24472
34872
44972
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))) (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))) (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 55 to 39 computations (29.1% saved)

soundness388.0ms (4.4%)

Algorithm
egg-herbie
Rules
729×fma-neg_binary64
529×unsub-neg_binary64
497×times-frac_binary64
480×div-sub_binary64
437×associate-*r*_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02052
15450
215450
347948
4128848
5264548
6391948
7530148
8612148
9671548
10778948
04394291
116303423
278943415
Stop Event
node limit
node limit
Compiler

Compiled 568 to 336 computations (40.8% saved)

end38.0ms (0.4%)

Compiler

Compiled 49 to 31 computations (36.7% saved)

Profiling

Loading profile data...