Details

Time bar (total: 48.8s)

analyze291.0ms (0.6%)

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)

sample1.7s (3.6%)

Results
1.5s8256×body256valid
232.0ms1419×body256invalid
Bogosity

preprocess4.0s (8.2%)

Algorithm
egglog
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 1/2 a)) (+.f64 (cbrt.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) (cbrt.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))))
(+.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 1/2 a)) (+.f64 (cbrt.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 h 2) (pow.f64 g 2)))) h)) (cbrt.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 h 2) (pow.f64 g 2))) h))))
(+.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 1/2 g)) (+.f64 (cbrt.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 a 2) (pow.f64 h 2)))) a)) (cbrt.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 a 2) (pow.f64 h 2))) a))))
(+.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 1/2 h)) (+.f64 (cbrt.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 a 2))) g)) (cbrt.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 a 2)))) g))))
Compiler

Compiled 43 to 26 computations (39.5% saved)

simplify2.1s (4.3%)

Algorithm
egglog
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 1/2 a)) (+.f64 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (cbrt.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))))

eval2.0ms (0%)

Compiler

Compiled 69 to 44 computations (36.2% saved)

prune3.0ms (0%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
28.9b
Counts
3 → 2
Alt Table
Click to see full alt table
StatusErrorProgram
32.9b
(+.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)))))))
29.0b
(*.f64 (cbrt.f64 (/.f64 1/2 a)) (+.f64 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (cbrt.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))))
Compiler

Compiled 72 to 48 computations (33.3% saved)

localize75.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
1.0b
(-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
1.5b
(-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)
4.0b
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
26.5b
(sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
Compiler

Compiled 135 to 94 computations (30.4% saved)

series113.0ms (0.2%)

Counts
4 → 65
Calls

24 calls:

TimeVariablePointExpression
1.0ms
h
@0
(sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
1.0ms
g
@0
(sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
1.0ms
h
@inf
(sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
1.0ms
g
@0
(-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)
1.0ms
g
@inf
(sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
Compiler

Compiled 10480 to 8680 computations (17.2% saved)

rewrite1.9s (3.8%)

Algorithm
batch-egg-rewrite
Rules
67×egg-rr
62×egg-rr
58×egg-rr
53×egg-rr
Counts
4 → 240
Calls
Call 1
Inputs
(sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)
(-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) -1) (*.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (neg.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fabs.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3)) (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (fabs.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (neg.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) 0) (-.f64 (neg.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) 0))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) -1) 0) (-.f64 (*.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) -1) 0))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (+.f64 0 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 3 (-.f64 3 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) 3)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 1 (-.f64 1 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 1 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (/.f64 4 2))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (neg.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) -1) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0) (pow.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) -1) -1) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0) (/.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2)) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0) (/.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0) (*.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (+.f64 1 (/.f64 0 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) 0) (/.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2)) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 0 0) (/.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2)) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) 3)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 1) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 (cbrt.f64 g) g) (+.f64 (*.f64 h (cbrt.f64 h)) (cbrt.f64 (pow.f64 (*.f64 h g) 2)))) (-.f64 (cbrt.f64 (pow.f64 g 2)) (cbrt.f64 (pow.f64 h 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (cbrt.f64 (pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 (pow.f64 h 2) (pow.f64 g 2))) (neg.f64 (cbrt.f64 (pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 2)) (cbrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (#(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 (neg.f64 g) h) (-.f64 h g))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 h g) (-.f64 (neg.f64 g) h))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 0 (+.f64 (cbrt.f64 (pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 2)) (*.f64 0 (cbrt.f64 (-.f64 (pow.f64 h 2) (pow.f64 g 2)))))) (cbrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 h (cbrt.f64 h)) (-.f64 (*.f64 (cbrt.f64 g) g) (*.f64 (neg.f64 (cbrt.f64 (pow.f64 h 2))) (cbrt.f64 (pow.f64 g 2))))) (+.f64 (neg.f64 (cbrt.f64 (pow.f64 h 2))) (cbrt.f64 (pow.f64 g 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 (cbrt.f64 g) g) (-.f64 (*.f64 h (cbrt.f64 h)) (*.f64 (cbrt.f64 (pow.f64 g 2)) (neg.f64 (cbrt.f64 (pow.f64 h 2)))))) (-.f64 (cbrt.f64 (pow.f64 g 2)) (cbrt.f64 (pow.f64 h 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 0 (-.f64 (cbrt.f64 (pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 2)) (*.f64 0 (cbrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (+.f64 0 (cbrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (-.f64 (pow.f64 h 2) (pow.f64 g 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 h 2) (pow.f64 g 2)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (neg.f64 (pow.f64 h 2)) (neg.f64 (pow.f64 g 2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (neg.f64 (pow.f64 h 2)) 0) (neg.f64 (pow.f64 g 2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (pow.f64 g 2) (pow.f64 h 2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 3 (+.f64 3 (-.f64 (pow.f64 h 2) (pow.f64 g 2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 3 (-.f64 3 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (-.f64 (pow.f64 h 2) (pow.f64 g 2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 1 (-.f64 1 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (neg.f64 (pow.f64 h 2)) 0) (neg.f64 (pow.f64 g 2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 1 (+.f64 1 (-.f64 (pow.f64 h 2) (pow.f64 g 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 h 2) (pow.f64 g 2)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 g g (neg.f64 (pow.f64 h 2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (cbrt.f64 g)) (*.f64 (cbrt.f64 (pow.f64 g 2)) (neg.f64 g)) (neg.f64 (pow.f64 h 2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 g) (*.f64 (cbrt.f64 (pow.f64 g 2)) g) (neg.f64 (pow.f64 h 2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 g) (neg.f64 g) (neg.f64 (pow.f64 h 2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (neg.f64 (pow.f64 g 2)) (neg.f64 (pow.f64 h 2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (neg.f64 g) (neg.f64 (cbrt.f64 g))) (cbrt.f64 (pow.f64 g 2)) (neg.f64 (pow.f64 h 2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 g 2) 1 (neg.f64 (pow.f64 h 2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (pow.f64 g 2) (neg.f64 (pow.f64 h 2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 0 0 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 0 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 g 2)) (*.f64 (cbrt.f64 g) g) (neg.f64 (pow.f64 h 2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 g) g) (cbrt.f64 (pow.f64 g 2)) (neg.f64 (pow.f64 h 2)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (-.f64 (pow.f64 h 2) (pow.f64 g 2)))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (pow.f64 (neg.f64 (cbrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (+.f64 (*.f64 h (pow.f64 h 3)) (*.f64 (pow.f64 g 2) (fma.f64 g g (pow.f64 h 2)))) 0) (/.f64 (-.f64 (pow.f64 (pow.f64 g 3) 2) (pow.f64 (pow.f64 h 3) 2)) (+.f64 (*.f64 h (pow.f64 h 3)) (*.f64 (pow.f64 g 2) (fma.f64 g g (pow.f64 h 2))))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (neg.f64 (pow.f64 h 2)) 0) (/.f64 (-.f64 (pow.f64 (pow.f64 g 3) 2) (pow.f64 (pow.f64 h 3) 2)) (+.f64 (*.f64 h (pow.f64 h 3)) (*.f64 (pow.f64 g 2) (fma.f64 g g (pow.f64 h 2))))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (fma.f64 g g (pow.f64 h 2)) 0) (/.f64 (-.f64 (pow.f64 (pow.f64 g 2) 2) (*.f64 h (pow.f64 h 3))) (fma.f64 g g (pow.f64 h 2))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 0) (/.f64 1 (/.f64 1 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (-.f64 (pow.f64 h 2) (pow.f64 g 2)) 0) (/.f64 (neg.f64 (pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 2)) (-.f64 (pow.f64 h 2) (pow.f64 g 2))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (neg.f64 (pow.f64 h 2)) 0) (*.f64 (neg.f64 (pow.f64 h 2)) (+.f64 1 (/.f64 (pow.f64 g 2) (neg.f64 (pow.f64 h 2))))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 2) 0) (/.f64 (pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 3) (pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 2)) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 0 0) (/.f64 (pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 3) (pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 2)) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (pow.f64 h 2) 0) (/.f64 (-.f64 (pow.f64 (pow.f64 g 3) 2) (pow.f64 (pow.f64 h 3) 2)) (+.f64 (*.f64 h (pow.f64 h 3)) (*.f64 (pow.f64 g 2) (fma.f64 g g (pow.f64 h 2))))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (neg.f64 (fma.f64 g g (pow.f64 h 2))) 0) (/.f64 (-.f64 (pow.f64 (pow.f64 g 2) 2) (*.f64 h (pow.f64 h 3))) (fma.f64 g g (pow.f64 h 2))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (-.f64 (pow.f64 h 2) (pow.f64 g 2)) 0) (/.f64 (pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 3) (pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 2)) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (pow.f64 g 2) 0) (/.f64 (-.f64 (pow.f64 (pow.f64 g 3) 2) (pow.f64 (pow.f64 h 3) 2)) (+.f64 (*.f64 h (pow.f64 h 3)) (*.f64 (pow.f64 g 2) (fma.f64 g g (pow.f64 h 2))))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (pow.f64 g 2) 0) (*.f64 (pow.f64 g 2) (-.f64 1 (/.f64 (pow.f64 h 2) (pow.f64 g 2)))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (neg.f64 (pow.f64 g 2)) 0) (/.f64 (-.f64 (pow.f64 (pow.f64 g 3) 2) (pow.f64 (pow.f64 h 3) 2)) (+.f64 (*.f64 h (pow.f64 h 3)) (+.f64 (pow.f64 (pow.f64 g 2) 2) (*.f64 (neg.f64 (pow.f64 h 2)) (neg.f64 (pow.f64 g 2)))))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (+.f64 (*.f64 h (pow.f64 h 3)) (+.f64 (pow.f64 (pow.f64 g 2) 2) (*.f64 (neg.f64 (pow.f64 h 2)) (neg.f64 (pow.f64 g 2))))) 0) (/.f64 (-.f64 (pow.f64 (pow.f64 g 3) 2) (pow.f64 (pow.f64 h 3) 2)) (+.f64 (*.f64 h (pow.f64 h 3)) (+.f64 (pow.f64 (pow.f64 g 2) 2) (*.f64 (neg.f64 (pow.f64 h 2)) (neg.f64 (pow.f64 g 2)))))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (neg.f64 (pow.f64 h 2)) 0) (/.f64 (-.f64 (pow.f64 (pow.f64 g 3) 2) (pow.f64 (pow.f64 h 3) 2)) (+.f64 (*.f64 h (pow.f64 h 3)) (+.f64 (pow.f64 (pow.f64 g 2) 2) (*.f64 (neg.f64 (pow.f64 h 2)) (neg.f64 (pow.f64 g 2)))))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (pow.f64 g 2) (neg.f64 (pow.f64 h 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (pow.f64 h 2)) (pow.f64 g 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (neg.f64 (pow.f64 h 2)) 0) (pow.f64 g 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (neg.f64 (pow.f64 h 2)) 0) (pow.f64 g 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 0)))))
((#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (*.f64 (cbrt.f64 g) (+.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (cbrt.f64 g)))) (-.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (cbrt.f64 g)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) (cbrt.f64 (pow.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (neg.f64 (cbrt.f64 (pow.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 2)) (cbrt.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (*.f64 (neg.f64 (cbrt.f64 g)) (-.f64 (neg.f64 (cbrt.f64 g)) (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (-.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (cbrt.f64 g)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 0 (+.f64 (cbrt.f64 (pow.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 2)) (*.f64 0 (cbrt.f64 (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (cbrt.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 0 (-.f64 (cbrt.f64 (pow.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 2)) (*.f64 0 (cbrt.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))))) (+.f64 0 (cbrt.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (cbrt.f64 (pow.f64 g 2)) (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (*.f64 (neg.f64 (cbrt.f64 g)) (neg.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (-.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (cbrt.f64 g)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (cbrt.f64 (pow.f64 g 2)) (*.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (+.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (cbrt.f64 g)))) (-.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (cbrt.f64 g)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (neg.f64 g) (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 3 (+.f64 3 (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 3 (-.f64 3 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 1 (-.f64 1 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 1 (+.f64 1 (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (neg.f64 g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 g) (neg.f64 (cbrt.f64 (pow.f64 g 2))) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 g -1 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (neg.f64 g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (cbrt.f64 g)) (cbrt.f64 (pow.f64 g 2)) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (neg.f64 g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 g 2)) (neg.f64 (cbrt.f64 g)) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (neg.f64 g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 1 (neg.f64 g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 g) 1 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 0 0 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 0 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 1)))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 3))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (pow.f64 (neg.f64 (cbrt.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g) 0) (/.f64 (-.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) (pow.f64 g 2)) (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0) (*.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (-.f64 1 (/.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (neg.f64 g) 0) (*.f64 (neg.f64 g) (/.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (neg.f64 g))) (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0) (/.f64 (-.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) (pow.f64 g 2)) (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 0) (/.f64 1 (/.f64 -1 (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0) (/.f64 (pow.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 3) (pow.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 2)) (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0) (/.f64 (-.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) (pow.f64 g 3)) (+.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (pow.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 2) 0) (/.f64 (pow.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 3) (pow.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 2)) (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 0 0) (/.f64 (pow.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 3) (pow.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 2)) (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (neg.f64 g) 0) (/.f64 (-.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) (pow.f64 g 3)) (+.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (+.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) 0) (/.f64 (-.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) (pow.f64 g 3)) (+.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 g 0) (/.f64 (-.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) (pow.f64 g 3)) (+.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0) (/.f64 (-.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) (pow.f64 g 3)) (+.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0) (/.f64 (neg.f64 (pow.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 2)) (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 g) (*.f64 (neg.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (neg.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (neg.f64 g))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 0)))))
((#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (cbrt.f64 (pow.f64 g 2)) (*.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (-.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (cbrt.f64 g)))) (-.f64 (neg.f64 (cbrt.f64 g)) (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g)) (cbrt.f64 (pow.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (neg.f64 (cbrt.f64 (pow.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 2)) (cbrt.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (+.f64 (cbrt.f64 (pow.f64 g 2)) (*.f64 (neg.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (cbrt.f64 g)))) (-.f64 (neg.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (cbrt.f64 g)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 0 (+.f64 (cbrt.f64 (pow.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 2)) (*.f64 0 (cbrt.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (cbrt.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (cbrt.f64 (pow.f64 g 2)) (-.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (*.f64 (neg.f64 (cbrt.f64 g)) (neg.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (-.f64 (neg.f64 (cbrt.f64 g)) (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (-.f64 (cbrt.f64 (pow.f64 g 2)) (*.f64 (neg.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (neg.f64 (cbrt.f64 g))))) (+.f64 (neg.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (neg.f64 (cbrt.f64 g))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 0 (-.f64 (cbrt.f64 (pow.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 2)) (*.f64 0 (cbrt.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))))) (+.f64 0 (cbrt.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (neg.f64 g) (*.f64 (neg.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (neg.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 3 (+.f64 3 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 3 (-.f64 3 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 1 (-.f64 1 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 1 (+.f64 1 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 g) (neg.f64 (cbrt.f64 (pow.f64 g 2))) (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 g (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 g -1 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (cbrt.f64 g)) (cbrt.f64 (pow.f64 g 2)) (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 g 2)) (neg.f64 (cbrt.f64 g)) (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (neg.f64 g) (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 g) 1 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 0 0 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 0 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g) 1)))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g) 3))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (pow.f64 (neg.f64 (cbrt.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 0) (/.f64 (-.f64 (pow.f64 g 2) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2)) (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (neg.f64 g) 0) (*.f64 (neg.f64 g) (+.f64 1 (/.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g) 0) (/.f64 1 (/.f64 1 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0) (*.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (+.f64 1 (/.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0) (/.f64 (pow.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g) 3) (pow.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 2)) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 0 0) (/.f64 (pow.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g) 3) (pow.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 2)) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (pow.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 2) 0) (/.f64 (pow.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g) 3) (pow.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 2)) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0) (/.f64 (neg.f64 (pow.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 2)) (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0) (/.f64 (-.f64 (pow.f64 g 2) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2)) (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 g 0) (/.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) (pow.f64 g 3)) (-.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (pow.f64 g 2))) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (-.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) 0) (/.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) (pow.f64 g 3)) (-.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (pow.f64 g 2))) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0) (/.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) (pow.f64 g 3)) (-.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (pow.f64 g 2))) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0) (/.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) (pow.f64 g 3)) (-.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (pow.f64 g 2))) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (neg.f64 g) 0) (/.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) (pow.f64 g 3)) (-.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (pow.f64 g 2))) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 g) (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (neg.f64 g))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 g) (neg.f64 (*.f64 (neg.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (neg.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g) 0)))))

simplify6.8s (13.9%)

Algorithm
egglog
Counts
305 → 376
Calls
Call 1
Inputs
(sqrt.f64 (neg.f64 (pow.f64 h 2)))
g
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) g)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2) (pow.f64 (/.f64 1 g) 3))) g))
(+.f64 (*.f64 -1/4 (*.f64 (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2) (*.f64 (pow.f64 (/.f64 1 g) 5) (pow.f64 h 2)))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2) (pow.f64 (/.f64 1 g) 3))) g)))
(*.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/2 (*.f64 (pow.f64 (/.f64 -1 g) 3) (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2))) (*.f64 -1 g)))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 (*.f64 -1/4 (*.f64 (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2) (*.f64 (pow.f64 (/.f64 -1 g) 5) (pow.f64 h 2)))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 (/.f64 -1 g) 3) (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2))) (*.f64 -1 g))))
(sqrt.f64 (pow.f64 g 2))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) (sqrt.f64 (pow.f64 g 2)))) (sqrt.f64 (pow.f64 g 2)))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) (sqrt.f64 (pow.f64 g 2)))) (+.f64 (sqrt.f64 (pow.f64 g 2)) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 h 4) (pow.f64 (/.f64 -1/2 (sqrt.f64 (pow.f64 g 2))) 2)) (sqrt.f64 (pow.f64 g 2))))))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) (sqrt.f64 (pow.f64 g 2)))) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 h 6) (pow.f64 (/.f64 -1/2 (sqrt.f64 (pow.f64 g 2))) 2)) (*.f64 (sqrt.f64 (pow.f64 g 2)) (pow.f64 (sqrt.f64 (pow.f64 g 2)) 2)))) (+.f64 (sqrt.f64 (pow.f64 g 2)) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 h 4) (pow.f64 (/.f64 -1/2 (sqrt.f64 (pow.f64 g 2))) 2)) (sqrt.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 (pow.f64 g 2) (*.f64 -1 (pow.f64 h 2)))
(pow.f64 (/.f64 1 g) -2)
(+.f64 (pow.f64 (/.f64 1 g) -2) (*.f64 -1 (pow.f64 h 2)))
(+.f64 (pow.f64 (/.f64 1 g) -2) (*.f64 -1 (pow.f64 h 2)))
(+.f64 (pow.f64 (/.f64 1 g) -2) (*.f64 -1 (pow.f64 h 2)))
(pow.f64 (/.f64 -1 g) -2)
(+.f64 (pow.f64 (/.f64 -1 g) -2) (*.f64 -1 (pow.f64 h 2)))
(+.f64 (pow.f64 (/.f64 -1 g) -2) (*.f64 -1 (pow.f64 h 2)))
(+.f64 (pow.f64 (/.f64 -1 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 (/.f64 1 h) -2))
(+.f64 (pow.f64 g 2) (*.f64 -1 (pow.f64 (/.f64 1 h) -2)))
(+.f64 (pow.f64 g 2) (*.f64 -1 (pow.f64 (/.f64 1 h) -2)))
(+.f64 (pow.f64 g 2) (*.f64 -1 (pow.f64 (/.f64 1 h) -2)))
(*.f64 -1 (pow.f64 (/.f64 -1 h) -2))
(+.f64 (*.f64 -1 (pow.f64 (/.f64 -1 h) -2)) (pow.f64 g 2))
(+.f64 (*.f64 -1 (pow.f64 (/.f64 -1 h) -2)) (pow.f64 g 2))
(+.f64 (*.f64 -1 (pow.f64 (/.f64 -1 h) -2)) (pow.f64 g 2))
(sqrt.f64 (neg.f64 (pow.f64 h 2)))
(+.f64 (sqrt.f64 (neg.f64 (pow.f64 h 2))) (*.f64 -1 g))
(*.f64 -1/2 (/.f64 (pow.f64 h 2) g))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 -1/2 (*.f64 (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2) (pow.f64 (/.f64 1 g) 3))))
(+.f64 (*.f64 -1/4 (*.f64 (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2) (*.f64 (pow.f64 (/.f64 1 g) 5) (pow.f64 h 2)))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 -1/2 (*.f64 (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2) (pow.f64 (/.f64 1 g) 3)))))
(+.f64 (*.f64 -1/4 (*.f64 (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2) (*.f64 (pow.f64 (/.f64 1 g) 5) (pow.f64 h 2)))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2) (pow.f64 (/.f64 1 g) 3))) (*.f64 -1/2 (*.f64 (pow.f64 (/.f64 1 g) 7) (+.f64 (pow.f64 (*.f64 -1/2 (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2)) 2) (*.f64 1/4 (*.f64 (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2) (pow.f64 (pow.f64 h 2) 2)))))))))
(*.f64 -2 g)
(+.f64 (*.f64 -2 g) (*.f64 1/2 (/.f64 (pow.f64 h 2) g)))
(+.f64 (*.f64 -2 g) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 -1/2 (*.f64 (pow.f64 (/.f64 -1 g) 3) (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2)))))
(+.f64 (*.f64 -2 g) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 (*.f64 -1/4 (*.f64 (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2) (*.f64 (pow.f64 (/.f64 -1 g) 5) (pow.f64 h 2)))) (*.f64 -1/2 (*.f64 (pow.f64 (/.f64 -1 g) 3) (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2))))))
(-.f64 (sqrt.f64 (pow.f64 g 2)) g)
(-.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) (sqrt.f64 (pow.f64 g 2)))) (sqrt.f64 (pow.f64 g 2))) g)
(-.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) (sqrt.f64 (pow.f64 g 2)))) (+.f64 (sqrt.f64 (pow.f64 g 2)) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 h 4) (pow.f64 (/.f64 -1/2 (sqrt.f64 (pow.f64 g 2))) 2)) (sqrt.f64 (pow.f64 g 2)))))) g)
(-.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) (sqrt.f64 (pow.f64 g 2)))) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 h 6) (pow.f64 (/.f64 -1/2 (sqrt.f64 (pow.f64 g 2))) 2)) (*.f64 (sqrt.f64 (pow.f64 g 2)) (pow.f64 (sqrt.f64 (pow.f64 g 2)) 2)))) (+.f64 (sqrt.f64 (pow.f64 g 2)) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 h 4) (pow.f64 (/.f64 -1/2 (sqrt.f64 (pow.f64 g 2))) 2)) (sqrt.f64 (pow.f64 g 2))))))) g)
(*.f64 -1 (sqrt.f64 (neg.f64 (pow.f64 h 2))))
(+.f64 (*.f64 -1 (sqrt.f64 (neg.f64 (pow.f64 h 2)))) (*.f64 -1 g))
(*.f64 -2 g)
(+.f64 (*.f64 -2 g) (*.f64 1/2 (/.f64 (pow.f64 h 2) g)))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2) (pow.f64 (/.f64 1 g) 3))) (+.f64 (*.f64 -2 g) (*.f64 1/2 (/.f64 (pow.f64 h 2) g))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2) (pow.f64 (/.f64 1 g) 3))) (+.f64 (*.f64 -2 g) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 1/4 (*.f64 (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2) (*.f64 (pow.f64 (/.f64 1 g) 5) (pow.f64 h 2)))))))
(*.f64 -1/2 (/.f64 (pow.f64 h 2) g))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 (/.f64 -1 g) 3) (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2))) (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 (/.f64 -1 g) 3) (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 1/4 (*.f64 (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2) (*.f64 (pow.f64 (/.f64 -1 g) 5) (pow.f64 h 2))))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 (/.f64 -1 g) 3) (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 (/.f64 -1 g) 7) (+.f64 (pow.f64 (*.f64 -1/2 (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2)) 2) (*.f64 1/4 (*.f64 (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2) (pow.f64 (pow.f64 h 2) 2)))))) (*.f64 1/4 (*.f64 (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2) (*.f64 (pow.f64 (/.f64 -1 g) 5) (pow.f64 h 2)))))))
(*.f64 -1 (+.f64 g (sqrt.f64 (pow.f64 g 2))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) (sqrt.f64 (pow.f64 g 2)))) (*.f64 -1 (+.f64 g (sqrt.f64 (pow.f64 g 2)))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) (sqrt.f64 (pow.f64 g 2)))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 h 4) (pow.f64 (/.f64 -1/2 (sqrt.f64 (pow.f64 g 2))) 2)) (sqrt.f64 (pow.f64 g 2)))) (*.f64 -1 (+.f64 g (sqrt.f64 (pow.f64 g 2))))))
(+.f64 (*.f64 1/4 (/.f64 (*.f64 (pow.f64 h 6) (pow.f64 (/.f64 -1/2 (sqrt.f64 (pow.f64 g 2))) 2)) (*.f64 (sqrt.f64 (pow.f64 g 2)) (pow.f64 (sqrt.f64 (pow.f64 g 2)) 2)))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) (sqrt.f64 (pow.f64 g 2)))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 h 4) (pow.f64 (/.f64 -1/2 (sqrt.f64 (pow.f64 g 2))) 2)) (sqrt.f64 (pow.f64 g 2)))) (*.f64 -1 (+.f64 g (sqrt.f64 (pow.f64 g 2)))))))
(fabs.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(fabs.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(*.f64 -1 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(*.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) -1)
(*.f64 (*.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) -1) (*.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) -1))
(*.f64 (neg.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (neg.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))
(*.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(*.f64 (fabs.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3)) (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(*.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (fabs.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3)))
(*.f64 (+.f64 (neg.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) 0) (-.f64 (neg.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) 0))
(*.f64 (+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) -1) 0) (-.f64 (*.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) -1) 0))
(*.f64 1 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(*.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(*.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (+.f64 0 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 1)
(*.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3))
(-.f64 3 (-.f64 3 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(-.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) 3)
(-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0)
(-.f64 0 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(-.f64 1 (-.f64 1 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(-.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 1) 1)
(/.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) -1)
(/.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 1)
(sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(sqrt.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2))
(fma.f64 1 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0)
(fma.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 1 0)
(fma.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0)
(fma.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) 0)
(fma.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0)
(pow.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 3)
(pow.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) 1/3)
(pow.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 2)
(pow.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) 4)
(pow.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (/.f64 4 2))
(pow.f64 (neg.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) 2)
(pow.f64 (*.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) -1) 2)
(pow.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) 1/2)
(pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 1)
(pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 1/2)
(cbrt.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3))
(neg.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(if (!=.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0) (pow.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) -1) -1) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(if (!=.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0) (/.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2)) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(if (!=.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0) (/.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(if (!=.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0) (*.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (+.f64 1 (/.f64 0 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(if (!=.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) 0) (/.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2)) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(if (!=.f64 0 0) (/.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2)) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(+.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) 3)
(+.f64 0 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0)
(+.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 1) 1)
(*.f64 (+.f64 (*.f64 (cbrt.f64 g) g) (+.f64 (*.f64 h (cbrt.f64 h)) (cbrt.f64 (pow.f64 (*.f64 h g) 2)))) (-.f64 (cbrt.f64 (pow.f64 g 2)) (cbrt.f64 (pow.f64 h 2))))
(*.f64 (cbrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (cbrt.f64 (pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 2)))
(*.f64 (cbrt.f64 (-.f64 (pow.f64 h 2) (pow.f64 g 2))) (neg.f64 (cbrt.f64 (pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 2))))
(*.f64 (cbrt.f64 (pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 2)) (cbrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(*.f64 (+.f64 g h) (-.f64 g h))
(*.f64 (-.f64 g h) (+.f64 g h))
(*.f64 (-.f64 (neg.f64 g) h) (-.f64 h g))
(*.f64 (-.f64 h g) (-.f64 (neg.f64 g) h))
(*.f64 (+.f64 0 (+.f64 (cbrt.f64 (pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 2)) (*.f64 0 (cbrt.f64 (-.f64 (pow.f64 h 2) (pow.f64 g 2)))))) (cbrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(*.f64 (+.f64 (*.f64 h (cbrt.f64 h)) (-.f64 (*.f64 (cbrt.f64 g) g) (*.f64 (neg.f64 (cbrt.f64 (pow.f64 h 2))) (cbrt.f64 (pow.f64 g 2))))) (+.f64 (neg.f64 (cbrt.f64 (pow.f64 h 2))) (cbrt.f64 (pow.f64 g 2))))
(*.f64 (+.f64 (*.f64 (cbrt.f64 g) g) (-.f64 (*.f64 h (cbrt.f64 h)) (*.f64 (cbrt.f64 (pow.f64 g 2)) (neg.f64 (cbrt.f64 (pow.f64 h 2)))))) (-.f64 (cbrt.f64 (pow.f64 g 2)) (cbrt.f64 (pow.f64 h 2))))
(*.f64 (+.f64 0 (-.f64 (cbrt.f64 (pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 2)) (*.f64 0 (cbrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (+.f64 0 (cbrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(*.f64 -1 (-.f64 (pow.f64 h 2) (pow.f64 g 2)))
(*.f64 (-.f64 (pow.f64 h 2) (pow.f64 g 2)) -1)
(*.f64 1 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(*.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 1)
(-.f64 (neg.f64 (pow.f64 h 2)) (neg.f64 (pow.f64 g 2)))
(-.f64 (-.f64 (neg.f64 (pow.f64 h 2)) 0) (neg.f64 (pow.f64 g 2)))
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(-.f64 3 (+.f64 3 (-.f64 (pow.f64 h 2) (pow.f64 g 2))))
(-.f64 3 (-.f64 3 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(-.f64 0 (-.f64 (pow.f64 h 2) (pow.f64 g 2)))
(-.f64 1 (-.f64 1 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(-.f64 (+.f64 (neg.f64 (pow.f64 h 2)) 0) (neg.f64 (pow.f64 g 2)))
(-.f64 1 (+.f64 1 (-.f64 (pow.f64 h 2) (pow.f64 g 2))))
(/.f64 (-.f64 (pow.f64 h 2) (pow.f64 g 2)) -1)
(/.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 1)
(fma.f64 g g (neg.f64 (pow.f64 h 2)))
(fma.f64 (neg.f64 (cbrt.f64 g)) (*.f64 (cbrt.f64 (pow.f64 g 2)) (neg.f64 g)) (neg.f64 (pow.f64 h 2)))
(fma.f64 (cbrt.f64 g) (*.f64 (cbrt.f64 (pow.f64 g 2)) g) (neg.f64 (pow.f64 h 2)))
(fma.f64 (neg.f64 g) (neg.f64 g) (neg.f64 (pow.f64 h 2)))
(fma.f64 -1 (neg.f64 (pow.f64 g 2)) (neg.f64 (pow.f64 h 2)))
(fma.f64 (*.f64 (neg.f64 g) (neg.f64 (cbrt.f64 g))) (cbrt.f64 (pow.f64 g 2)) (neg.f64 (pow.f64 h 2)))
(fma.f64 (pow.f64 g 2) 1 (neg.f64 (pow.f64 h 2)))
(fma.f64 1 (pow.f64 g 2) (neg.f64 (pow.f64 h 2)))
(fma.f64 0 0 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(fma.f64 1 0 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(fma.f64 (cbrt.f64 (pow.f64 g 2)) (*.f64 (cbrt.f64 g) g) (neg.f64 (pow.f64 h 2)))
(fma.f64 (*.f64 (cbrt.f64 g) g) (cbrt.f64 (pow.f64 g 2)) (neg.f64 (pow.f64 h 2)))
(pow.f64 (pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 3) 1/3)
(pow.f64 (cbrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3)
(pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 1)
(cbrt.f64 (pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 3))
(neg.f64 (-.f64 (pow.f64 h 2) (pow.f64 g 2)))
(neg.f64 (pow.f64 (neg.f64 (cbrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 3))
(if (!=.f64 (+.f64 (*.f64 h (pow.f64 h 3)) (*.f64 (pow.f64 g 2) (fma.f64 g g (pow.f64 h 2)))) 0) (/.f64 (-.f64 (pow.f64 (pow.f64 g 3) 2) (pow.f64 (pow.f64 h 3) 2)) (+.f64 (*.f64 h (pow.f64 h 3)) (*.f64 (pow.f64 g 2) (fma.f64 g g (pow.f64 h 2))))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 (neg.f64 (pow.f64 h 2)) 0) (/.f64 (-.f64 (pow.f64 (pow.f64 g 3) 2) (pow.f64 (pow.f64 h 3) 2)) (+.f64 (*.f64 h (pow.f64 h 3)) (*.f64 (pow.f64 g 2) (fma.f64 g g (pow.f64 h 2))))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 (fma.f64 g g (pow.f64 h 2)) 0) (/.f64 (-.f64 (pow.f64 (pow.f64 g 2) 2) (*.f64 h (pow.f64 h 3))) (fma.f64 g g (pow.f64 h 2))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 0) (/.f64 1 (/.f64 1 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 (-.f64 (pow.f64 h 2) (pow.f64 g 2)) 0) (/.f64 (neg.f64 (pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 2)) (-.f64 (pow.f64 h 2) (pow.f64 g 2))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 (neg.f64 (pow.f64 h 2)) 0) (*.f64 (neg.f64 (pow.f64 h 2)) (+.f64 1 (/.f64 (pow.f64 g 2) (neg.f64 (pow.f64 h 2))))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 (pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 2) 0) (/.f64 (pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 3) (pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 2)) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 0 0) (/.f64 (pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 3) (pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 2)) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 (pow.f64 h 2) 0) (/.f64 (-.f64 (pow.f64 (pow.f64 g 3) 2) (pow.f64 (pow.f64 h 3) 2)) (+.f64 (*.f64 h (pow.f64 h 3)) (*.f64 (pow.f64 g 2) (fma.f64 g g (pow.f64 h 2))))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 (neg.f64 (fma.f64 g g (pow.f64 h 2))) 0) (/.f64 (-.f64 (pow.f64 (pow.f64 g 2) 2) (*.f64 h (pow.f64 h 3))) (fma.f64 g g (pow.f64 h 2))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 (-.f64 (pow.f64 h 2) (pow.f64 g 2)) 0) (/.f64 (pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 3) (pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 2)) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 (pow.f64 g 2) 0) (/.f64 (-.f64 (pow.f64 (pow.f64 g 3) 2) (pow.f64 (pow.f64 h 3) 2)) (+.f64 (*.f64 h (pow.f64 h 3)) (*.f64 (pow.f64 g 2) (fma.f64 g g (pow.f64 h 2))))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 (pow.f64 g 2) 0) (*.f64 (pow.f64 g 2) (-.f64 1 (/.f64 (pow.f64 h 2) (pow.f64 g 2)))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 (neg.f64 (pow.f64 g 2)) 0) (/.f64 (-.f64 (pow.f64 (pow.f64 g 3) 2) (pow.f64 (pow.f64 h 3) 2)) (+.f64 (*.f64 h (pow.f64 h 3)) (+.f64 (pow.f64 (pow.f64 g 2) 2) (*.f64 (neg.f64 (pow.f64 h 2)) (neg.f64 (pow.f64 g 2)))))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 (+.f64 (*.f64 h (pow.f64 h 3)) (+.f64 (pow.f64 (pow.f64 g 2) 2) (*.f64 (neg.f64 (pow.f64 h 2)) (neg.f64 (pow.f64 g 2))))) 0) (/.f64 (-.f64 (pow.f64 (pow.f64 g 3) 2) (pow.f64 (pow.f64 h 3) 2)) (+.f64 (*.f64 h (pow.f64 h 3)) (+.f64 (pow.f64 (pow.f64 g 2) 2) (*.f64 (neg.f64 (pow.f64 h 2)) (neg.f64 (pow.f64 g 2)))))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 (neg.f64 (pow.f64 h 2)) 0) (/.f64 (-.f64 (pow.f64 (pow.f64 g 3) 2) (pow.f64 (pow.f64 h 3) 2)) (+.f64 (*.f64 h (pow.f64 h 3)) (+.f64 (pow.f64 (pow.f64 g 2) 2) (*.f64 (neg.f64 (pow.f64 h 2)) (neg.f64 (pow.f64 g 2)))))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(+.f64 (pow.f64 g 2) (neg.f64 (pow.f64 h 2)))
(+.f64 (neg.f64 (pow.f64 h 2)) (pow.f64 g 2))
(+.f64 (+.f64 (neg.f64 (pow.f64 h 2)) 0) (pow.f64 g 2))
(+.f64 (-.f64 (neg.f64 (pow.f64 h 2)) 0) (pow.f64 g 2))
(+.f64 0 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(+.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 0)
(*.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (*.f64 (cbrt.f64 g) (+.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (cbrt.f64 g)))) (-.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (cbrt.f64 g)))
(*.f64 (cbrt.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) (cbrt.f64 (pow.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 2)))
(*.f64 (cbrt.f64 (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (neg.f64 (cbrt.f64 (pow.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 2))))
(*.f64 (cbrt.f64 (pow.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 2)) (cbrt.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)))
(*.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (*.f64 (neg.f64 (cbrt.f64 g)) (-.f64 (neg.f64 (cbrt.f64 g)) (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (-.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (cbrt.f64 g)))
(*.f64 (+.f64 0 (+.f64 (cbrt.f64 (pow.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 2)) (*.f64 0 (cbrt.f64 (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (cbrt.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)))
(*.f64 (+.f64 0 (-.f64 (cbrt.f64 (pow.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 2)) (*.f64 0 (cbrt.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))))) (+.f64 0 (cbrt.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))))
(*.f64 -1 (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(*.f64 (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) -1)
(*.f64 (+.f64 (cbrt.f64 (pow.f64 g 2)) (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (*.f64 (neg.f64 (cbrt.f64 g)) (neg.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (-.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (cbrt.f64 g)))
(*.f64 1 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))
(*.f64 (+.f64 (cbrt.f64 (pow.f64 g 2)) (*.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (+.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (cbrt.f64 g)))) (-.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (cbrt.f64 g)))
(*.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 1)
(-.f64 (neg.f64 g) (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(-.f64 3 (+.f64 3 (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))
(-.f64 3 (-.f64 3 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)))
(-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)
(-.f64 0 (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(-.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 0)
(-.f64 1 (-.f64 1 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)))
(-.f64 1 (+.f64 1 (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))
(/.f64 (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) -1)
(/.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 1)
(fma.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (neg.f64 g))
(fma.f64 (cbrt.f64 g) (neg.f64 (cbrt.f64 (pow.f64 g 2))) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(fma.f64 -1 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(fma.f64 g -1 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(fma.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (neg.f64 g))
(fma.f64 (neg.f64 (cbrt.f64 g)) (cbrt.f64 (pow.f64 g 2)) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(fma.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (neg.f64 g))
(fma.f64 (cbrt.f64 (pow.f64 g 2)) (neg.f64 (cbrt.f64 g)) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(fma.f64 1 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (neg.f64 g))
(fma.f64 1 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(fma.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 1 (neg.f64 g))
(fma.f64 (neg.f64 g) 1 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(fma.f64 0 0 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))
(fma.f64 1 0 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))
(pow.f64 (pow.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 3) 1/3)
(pow.f64 (cbrt.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) 3)
(pow.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 1)
(cbrt.f64 (pow.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 3))
(neg.f64 (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(neg.f64 (pow.f64 (neg.f64 (cbrt.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))) 3))
(if (!=.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g) 0) (/.f64 (-.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) (pow.f64 g 2)) (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))
(if (!=.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0) (*.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (-.f64 1 (/.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))
(if (!=.f64 (neg.f64 g) 0) (*.f64 (neg.f64 g) (/.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (neg.f64 g))) (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))
(if (!=.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0) (/.f64 (-.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) (pow.f64 g 2)) (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))
(if (!=.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 0) (/.f64 1 (/.f64 -1 (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))
(if (!=.f64 (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0) (/.f64 (pow.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 3) (pow.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 2)) (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))
(if (!=.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0) (/.f64 (-.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) (pow.f64 g 3)) (+.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))
(if (!=.f64 (pow.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 2) 0) (/.f64 (pow.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 3) (pow.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 2)) (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))
(if (!=.f64 0 0) (/.f64 (pow.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 3) (pow.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 2)) (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))
(if (!=.f64 (neg.f64 g) 0) (/.f64 (-.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) (pow.f64 g 3)) (+.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))
(if (!=.f64 (+.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) 0) (/.f64 (-.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) (pow.f64 g 3)) (+.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))
(if (!=.f64 g 0) (/.f64 (-.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) (pow.f64 g 3)) (+.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))
(if (!=.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0) (/.f64 (-.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) (pow.f64 g 3)) (+.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))
(if (!=.f64 (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0) (/.f64 (neg.f64 (pow.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 2)) (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))
(+.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(+.f64 (neg.f64 g) (*.f64 (neg.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (neg.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3))))
(+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (neg.f64 g))
(+.f64 0 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))
(+.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 0)
(*.f64 (+.f64 (cbrt.f64 (pow.f64 g 2)) (*.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (-.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (cbrt.f64 g)))) (-.f64 (neg.f64 (cbrt.f64 g)) (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))
(*.f64 (cbrt.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g)) (cbrt.f64 (pow.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 2)))
(*.f64 (cbrt.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (neg.f64 (cbrt.f64 (pow.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 2))))
(*.f64 (cbrt.f64 (pow.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 2)) (cbrt.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g)))
(*.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (+.f64 (cbrt.f64 (pow.f64 g 2)) (*.f64 (neg.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (cbrt.f64 g)))) (-.f64 (neg.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (cbrt.f64 g)))
(*.f64 (+.f64 0 (+.f64 (cbrt.f64 (pow.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 2)) (*.f64 0 (cbrt.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (cbrt.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g)))
(*.f64 (+.f64 (cbrt.f64 (pow.f64 g 2)) (-.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (*.f64 (neg.f64 (cbrt.f64 g)) (neg.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (-.f64 (neg.f64 (cbrt.f64 g)) (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))
(*.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (-.f64 (cbrt.f64 (pow.f64 g 2)) (*.f64 (neg.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (neg.f64 (cbrt.f64 g))))) (+.f64 (neg.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (neg.f64 (cbrt.f64 g))))
(*.f64 (+.f64 0 (-.f64 (cbrt.f64 (pow.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 2)) (*.f64 0 (cbrt.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))))) (+.f64 0 (cbrt.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))))
(*.f64 -1 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(*.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) -1)
(*.f64 1 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))
(*.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g) 1)
(-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g)
(-.f64 (neg.f64 g) (*.f64 (neg.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (neg.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3))))
(-.f64 3 (+.f64 3 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))
(-.f64 3 (-.f64 3 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g)))
(-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(-.f64 0 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(-.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g) 0)
(-.f64 1 (-.f64 1 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g)))
(-.f64 1 (+.f64 1 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))
(/.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) -1)
(/.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g) 1)
(fma.f64 (cbrt.f64 g) (neg.f64 (cbrt.f64 (pow.f64 g 2))) (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(fma.f64 -1 g (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(fma.f64 g -1 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(fma.f64 (neg.f64 (cbrt.f64 g)) (cbrt.f64 (pow.f64 g 2)) (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(fma.f64 (cbrt.f64 (pow.f64 g 2)) (neg.f64 (cbrt.f64 g)) (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(fma.f64 1 (neg.f64 g) (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(fma.f64 (neg.f64 g) 1 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(fma.f64 0 0 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))
(fma.f64 1 0 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))
(pow.f64 (pow.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g) 3) 1/3)
(pow.f64 (cbrt.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g)) 3)
(pow.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g) 1)
(cbrt.f64 (pow.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g) 3))
(neg.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(neg.f64 (pow.f64 (neg.f64 (cbrt.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))) 3))
(if (!=.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 0) (/.f64 (-.f64 (pow.f64 g 2) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2)) (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))
(if (!=.f64 (neg.f64 g) 0) (*.f64 (neg.f64 g) (+.f64 1 (/.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))
(if (!=.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g) 0) (/.f64 1 (/.f64 1 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))
(if (!=.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0) (*.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (+.f64 1 (/.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))
(if (!=.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0) (/.f64 (pow.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g) 3) (pow.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 2)) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))
(if (!=.f64 0 0) (/.f64 (pow.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g) 3) (pow.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 2)) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))
(if (!=.f64 (pow.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 2) 0) (/.f64 (pow.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g) 3) (pow.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 2)) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))
(if (!=.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0) (/.f64 (neg.f64 (pow.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 2)) (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))
(if (!=.f64 (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0) (/.f64 (-.f64 (pow.f64 g 2) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2)) (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))
(if (!=.f64 g 0) (/.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) (pow.f64 g 3)) (-.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (pow.f64 g 2))) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))
(if (!=.f64 (-.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) 0) (/.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) (pow.f64 g 3)) (-.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (pow.f64 g 2))) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))
(if (!=.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0) (/.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) (pow.f64 g 3)) (-.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (pow.f64 g 2))) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))
(if (!=.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0) (/.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) (pow.f64 g 3)) (-.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (pow.f64 g 2))) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))
(if (!=.f64 (neg.f64 g) 0) (/.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) (pow.f64 g 3)) (-.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (pow.f64 g 2))) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))
(+.f64 (neg.f64 g) (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(+.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (neg.f64 g))
(+.f64 (neg.f64 g) (neg.f64 (*.f64 (neg.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (neg.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3)))))
(+.f64 0 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))
(+.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g) 0)
Outputs
(sqrt.f64 (neg.f64 (pow.f64 h 2)))
g
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) g)
(fma.f64 -1/2 (/.f64 (pow.f64 h 2) g) g)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2) (pow.f64 (/.f64 1 g) 3))) g))
(+.f64 (*.f64 -1/2 (+.f64 (/.f64 (pow.f64 h 2) g) (/.f64 (*.f64 1/4 (pow.f64 h 4)) (pow.f64 g 3)))) g)
(+.f64 (*.f64 -1/4 (*.f64 (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2) (*.f64 (pow.f64 (/.f64 1 g) 5) (pow.f64 h 2)))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2) (pow.f64 (/.f64 1 g) 3))) g)))
(fma.f64 -1/4 (*.f64 (*.f64 (*.f64 1/4 (pow.f64 h 4)) (pow.f64 (pow.f64 g -1) 5)) (pow.f64 h 2)) (+.f64 (*.f64 -1/2 (+.f64 (/.f64 (pow.f64 h 2) g) (/.f64 (*.f64 1/4 (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 (pow.f64 h 2) g) (neg.f64 g))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 (/.f64 -1 g) 3) (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2))) (*.f64 -1 g)))
(fma.f64 1/2 (/.f64 (pow.f64 h 2) g) (fma.f64 -1/2 (/.f64 (*.f64 (*.f64 1/4 (pow.f64 h 4)) -1) (pow.f64 g 3)) (neg.f64 g)))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 (*.f64 -1/4 (*.f64 (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2) (*.f64 (pow.f64 (/.f64 -1 g) 5) (pow.f64 h 2)))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 (/.f64 -1 g) 3) (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2))) (*.f64 -1 g))))
(fma.f64 1/2 (/.f64 (pow.f64 h 2) g) (fma.f64 -1/4 (*.f64 (*.f64 (*.f64 1/4 (pow.f64 h 4)) (pow.f64 (/.f64 -1 g) 5)) (pow.f64 h 2)) (fma.f64 -1/2 (/.f64 (*.f64 (*.f64 1/4 (pow.f64 h 4)) -1) (pow.f64 g 3)) (neg.f64 g))))
(sqrt.f64 (pow.f64 g 2))
(fabs.f64 g)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) (sqrt.f64 (pow.f64 g 2)))) (sqrt.f64 (pow.f64 g 2)))
(fma.f64 -1/2 (/.f64 (pow.f64 h 2) (fabs.f64 g)) (fabs.f64 g))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) (sqrt.f64 (pow.f64 g 2)))) (+.f64 (sqrt.f64 (pow.f64 g 2)) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 h 4) (pow.f64 (/.f64 -1/2 (sqrt.f64 (pow.f64 g 2))) 2)) (sqrt.f64 (pow.f64 g 2))))))
(+.f64 (fma.f64 -1/2 (/.f64 (pow.f64 h 2) (fabs.f64 g)) (fabs.f64 g)) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 h 4) (pow.f64 (/.f64 -1/2 (fabs.f64 g)) 2)) (fabs.f64 g))))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) (sqrt.f64 (pow.f64 g 2)))) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 h 6) (pow.f64 (/.f64 -1/2 (sqrt.f64 (pow.f64 g 2))) 2)) (*.f64 (sqrt.f64 (pow.f64 g 2)) (pow.f64 (sqrt.f64 (pow.f64 g 2)) 2)))) (+.f64 (sqrt.f64 (pow.f64 g 2)) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 h 4) (pow.f64 (/.f64 -1/2 (sqrt.f64 (pow.f64 g 2))) 2)) (sqrt.f64 (pow.f64 g 2)))))))
(fma.f64 -1/2 (/.f64 (pow.f64 h 2) (fabs.f64 g)) (fma.f64 -1/4 (/.f64 (*.f64 (pow.f64 h 6) (pow.f64 (/.f64 -1/2 (fabs.f64 g)) 2)) (pow.f64 (fabs.f64 g) 3)) (+.f64 (fabs.f64 g) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 h 4) (pow.f64 (/.f64 -1/2 (fabs.f64 g)) 2)) (fabs.f64 g))))))
(*.f64 -1 (pow.f64 h 2))
(neg.f64 (pow.f64 h 2))
(+.f64 (pow.f64 g 2) (*.f64 -1 (pow.f64 h 2)))
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(+.f64 (pow.f64 g 2) (*.f64 -1 (pow.f64 h 2)))
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(+.f64 (pow.f64 g 2) (*.f64 -1 (pow.f64 h 2)))
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(pow.f64 (/.f64 1 g) -2)
(pow.f64 (pow.f64 g -1) -2)
(+.f64 (pow.f64 (/.f64 1 g) -2) (*.f64 -1 (pow.f64 h 2)))
(-.f64 (pow.f64 (pow.f64 g -1) -2) (pow.f64 h 2))
(+.f64 (pow.f64 (/.f64 1 g) -2) (*.f64 -1 (pow.f64 h 2)))
(-.f64 (pow.f64 (pow.f64 g -1) -2) (pow.f64 h 2))
(+.f64 (pow.f64 (/.f64 1 g) -2) (*.f64 -1 (pow.f64 h 2)))
(-.f64 (pow.f64 (pow.f64 g -1) -2) (pow.f64 h 2))
(pow.f64 (/.f64 -1 g) -2)
(+.f64 (pow.f64 (/.f64 -1 g) -2) (*.f64 -1 (pow.f64 h 2)))
(-.f64 (pow.f64 (/.f64 -1 g) -2) (pow.f64 h 2))
(+.f64 (pow.f64 (/.f64 -1 g) -2) (*.f64 -1 (pow.f64 h 2)))
(-.f64 (pow.f64 (/.f64 -1 g) -2) (pow.f64 h 2))
(+.f64 (pow.f64 (/.f64 -1 g) -2) (*.f64 -1 (pow.f64 h 2)))
(-.f64 (pow.f64 (/.f64 -1 g) -2) (pow.f64 h 2))
(pow.f64 g 2)
(+.f64 (pow.f64 g 2) (*.f64 -1 (pow.f64 h 2)))
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(+.f64 (pow.f64 g 2) (*.f64 -1 (pow.f64 h 2)))
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(+.f64 (pow.f64 g 2) (*.f64 -1 (pow.f64 h 2)))
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(*.f64 -1 (pow.f64 (/.f64 1 h) -2))
(neg.f64 (pow.f64 (pow.f64 h -1) -2))
(+.f64 (pow.f64 g 2) (*.f64 -1 (pow.f64 (/.f64 1 h) -2)))
(-.f64 (pow.f64 g 2) (pow.f64 (pow.f64 h -1) -2))
(+.f64 (pow.f64 g 2) (*.f64 -1 (pow.f64 (/.f64 1 h) -2)))
(-.f64 (pow.f64 g 2) (pow.f64 (pow.f64 h -1) -2))
(+.f64 (pow.f64 g 2) (*.f64 -1 (pow.f64 (/.f64 1 h) -2)))
(-.f64 (pow.f64 g 2) (pow.f64 (pow.f64 h -1) -2))
(*.f64 -1 (pow.f64 (/.f64 -1 h) -2))
(neg.f64 (pow.f64 (/.f64 -1 h) -2))
(+.f64 (*.f64 -1 (pow.f64 (/.f64 -1 h) -2)) (pow.f64 g 2))
(-.f64 (pow.f64 g 2) (pow.f64 (/.f64 -1 h) -2))
(+.f64 (*.f64 -1 (pow.f64 (/.f64 -1 h) -2)) (pow.f64 g 2))
(-.f64 (pow.f64 g 2) (pow.f64 (/.f64 -1 h) -2))
(+.f64 (*.f64 -1 (pow.f64 (/.f64 -1 h) -2)) (pow.f64 g 2))
(-.f64 (pow.f64 g 2) (pow.f64 (/.f64 -1 h) -2))
(sqrt.f64 (neg.f64 (pow.f64 h 2)))
(+.f64 (sqrt.f64 (neg.f64 (pow.f64 h 2))) (*.f64 -1 g))
(-.f64 (sqrt.f64 (neg.f64 (pow.f64 h 2))) g)
(*.f64 -1/2 (/.f64 (pow.f64 h 2) g))
(/.f64 (*.f64 (pow.f64 h 2) -1/2) g)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 -1/2 (*.f64 (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2) (pow.f64 (/.f64 1 g) 3))))
(*.f64 -1/2 (+.f64 (/.f64 (pow.f64 h 2) g) (/.f64 (*.f64 1/4 (pow.f64 h 4)) (pow.f64 g 3))))
(+.f64 (*.f64 -1/4 (*.f64 (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2) (*.f64 (pow.f64 (/.f64 1 g) 5) (pow.f64 h 2)))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 -1/2 (*.f64 (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2) (pow.f64 (/.f64 1 g) 3)))))
(fma.f64 -1/4 (*.f64 (*.f64 (*.f64 1/4 (pow.f64 h 4)) (pow.f64 (pow.f64 g -1) 5)) (pow.f64 h 2)) (*.f64 -1/2 (+.f64 (/.f64 (pow.f64 h 2) g) (/.f64 (*.f64 1/4 (pow.f64 h 4)) (pow.f64 g 3)))))
(+.f64 (*.f64 -1/4 (*.f64 (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2) (*.f64 (pow.f64 (/.f64 1 g) 5) (pow.f64 h 2)))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2) (pow.f64 (/.f64 1 g) 3))) (*.f64 -1/2 (*.f64 (pow.f64 (/.f64 1 g) 7) (+.f64 (pow.f64 (*.f64 -1/2 (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2)) 2) (*.f64 1/4 (*.f64 (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2) (pow.f64 (pow.f64 h 2) 2)))))))))
(fma.f64 -1/4 (*.f64 (*.f64 (*.f64 1/4 (pow.f64 h 4)) (pow.f64 (pow.f64 g -1) 5)) (pow.f64 h 2)) (*.f64 -1/2 (+.f64 (+.f64 (/.f64 (*.f64 1/4 (pow.f64 h 4)) (pow.f64 g 3)) (*.f64 (pow.f64 (pow.f64 g -1) 7) (+.f64 (pow.f64 (*.f64 -1/2 (*.f64 1/4 (pow.f64 h 4))) 2) (*.f64 (*.f64 1/4 (*.f64 1/4 (pow.f64 h 4))) (pow.f64 h 4))))) (/.f64 (pow.f64 h 2) g))))
(*.f64 -2 g)
(+.f64 (*.f64 -2 g) (*.f64 1/2 (/.f64 (pow.f64 h 2) g)))
(fma.f64 -2 g (/.f64 (*.f64 1/2 (pow.f64 h 2)) g))
(+.f64 (*.f64 -2 g) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 -1/2 (*.f64 (pow.f64 (/.f64 -1 g) 3) (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2)))))
(fma.f64 -2 g (fma.f64 1/2 (/.f64 (pow.f64 h 2) g) (*.f64 -1/2 (/.f64 (*.f64 (*.f64 1/4 (pow.f64 h 4)) -1) (pow.f64 g 3)))))
(+.f64 (*.f64 -2 g) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 (*.f64 -1/4 (*.f64 (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2) (*.f64 (pow.f64 (/.f64 -1 g) 5) (pow.f64 h 2)))) (*.f64 -1/2 (*.f64 (pow.f64 (/.f64 -1 g) 3) (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2))))))
(fma.f64 -2 g (fma.f64 1/2 (/.f64 (pow.f64 h 2) g) (fma.f64 -1/4 (*.f64 (*.f64 (*.f64 1/4 (pow.f64 h 4)) (pow.f64 (/.f64 -1 g) 5)) (pow.f64 h 2)) (*.f64 -1/2 (/.f64 (*.f64 (*.f64 1/4 (pow.f64 h 4)) -1) (pow.f64 g 3))))))
(-.f64 (sqrt.f64 (pow.f64 g 2)) g)
(-.f64 (fabs.f64 g) g)
(-.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) (sqrt.f64 (pow.f64 g 2)))) (sqrt.f64 (pow.f64 g 2))) g)
(-.f64 (fma.f64 -1/2 (/.f64 (pow.f64 h 2) (fabs.f64 g)) (fabs.f64 g)) g)
(-.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) (sqrt.f64 (pow.f64 g 2)))) (+.f64 (sqrt.f64 (pow.f64 g 2)) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 h 4) (pow.f64 (/.f64 -1/2 (sqrt.f64 (pow.f64 g 2))) 2)) (sqrt.f64 (pow.f64 g 2)))))) g)
(+.f64 (fma.f64 -1/2 (/.f64 (pow.f64 h 2) (fabs.f64 g)) (fabs.f64 g)) (-.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 h 4) (pow.f64 (/.f64 -1/2 (fabs.f64 g)) 2)) (fabs.f64 g))) g))
(-.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) (sqrt.f64 (pow.f64 g 2)))) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 h 6) (pow.f64 (/.f64 -1/2 (sqrt.f64 (pow.f64 g 2))) 2)) (*.f64 (sqrt.f64 (pow.f64 g 2)) (pow.f64 (sqrt.f64 (pow.f64 g 2)) 2)))) (+.f64 (sqrt.f64 (pow.f64 g 2)) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 h 4) (pow.f64 (/.f64 -1/2 (sqrt.f64 (pow.f64 g 2))) 2)) (sqrt.f64 (pow.f64 g 2))))))) g)
(-.f64 (fma.f64 -1/2 (/.f64 (pow.f64 h 2) (fabs.f64 g)) (fma.f64 -1/4 (/.f64 (*.f64 (pow.f64 h 6) (pow.f64 (/.f64 -1/2 (fabs.f64 g)) 2)) (pow.f64 (fabs.f64 g) 3)) (+.f64 (fabs.f64 g) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 h 4) (pow.f64 (/.f64 -1/2 (fabs.f64 g)) 2)) (fabs.f64 g)))))) g)
(*.f64 -1 (sqrt.f64 (neg.f64 (pow.f64 h 2))))
(neg.f64 (sqrt.f64 (neg.f64 (pow.f64 h 2))))
(+.f64 (*.f64 -1 (sqrt.f64 (neg.f64 (pow.f64 h 2)))) (*.f64 -1 g))
(-.f64 (neg.f64 g) (sqrt.f64 (neg.f64 (pow.f64 h 2))))
(*.f64 -2 g)
(+.f64 (*.f64 -2 g) (*.f64 1/2 (/.f64 (pow.f64 h 2) g)))
(fma.f64 -2 g (/.f64 (*.f64 1/2 (pow.f64 h 2)) g))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2) (pow.f64 (/.f64 1 g) 3))) (+.f64 (*.f64 -2 g) (*.f64 1/2 (/.f64 (pow.f64 h 2) g))))
(fma.f64 1/2 (/.f64 (*.f64 1/4 (pow.f64 h 4)) (pow.f64 g 3)) (fma.f64 -2 g (/.f64 (*.f64 1/2 (pow.f64 h 2)) g)))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2) (pow.f64 (/.f64 1 g) 3))) (+.f64 (*.f64 -2 g) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 1/4 (*.f64 (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2) (*.f64 (pow.f64 (/.f64 1 g) 5) (pow.f64 h 2)))))))
(fma.f64 1/2 (/.f64 (*.f64 1/4 (pow.f64 h 4)) (pow.f64 g 3)) (fma.f64 -2 g (fma.f64 1/2 (/.f64 (pow.f64 h 2) g) (*.f64 1/4 (*.f64 (*.f64 (*.f64 1/4 (pow.f64 h 4)) (pow.f64 (pow.f64 g -1) 5)) (pow.f64 h 2))))))
(*.f64 -1/2 (/.f64 (pow.f64 h 2) g))
(/.f64 (*.f64 (pow.f64 h 2) -1/2) g)
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 (/.f64 -1 g) 3) (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2))) (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)))
(fma.f64 1/2 (/.f64 (*.f64 (*.f64 1/4 (pow.f64 h 4)) -1) (pow.f64 g 3)) (/.f64 (*.f64 (pow.f64 h 2) -1/2) g))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 (/.f64 -1 g) 3) (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 1/4 (*.f64 (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2) (*.f64 (pow.f64 (/.f64 -1 g) 5) (pow.f64 h 2))))))
(fma.f64 1/2 (/.f64 (*.f64 (*.f64 1/4 (pow.f64 h 4)) -1) (pow.f64 g 3)) (fma.f64 -1/2 (/.f64 (pow.f64 h 2) g) (*.f64 1/4 (*.f64 (*.f64 (*.f64 1/4 (pow.f64 h 4)) (pow.f64 (/.f64 -1 g) 5)) (pow.f64 h 2)))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 (/.f64 -1 g) 3) (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 (/.f64 -1 g) 7) (+.f64 (pow.f64 (*.f64 -1/2 (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2)) 2) (*.f64 1/4 (*.f64 (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2) (pow.f64 (pow.f64 h 2) 2)))))) (*.f64 1/4 (*.f64 (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2) (*.f64 (pow.f64 (/.f64 -1 g) 5) (pow.f64 h 2)))))))
(fma.f64 1/2 (/.f64 (*.f64 (*.f64 1/4 (pow.f64 h 4)) -1) (pow.f64 g 3)) (fma.f64 -1/2 (/.f64 (pow.f64 h 2) g) (fma.f64 1/2 (*.f64 (pow.f64 (/.f64 -1 g) 7) (+.f64 (pow.f64 (*.f64 -1/2 (*.f64 1/4 (pow.f64 h 4))) 2) (*.f64 (*.f64 1/4 (*.f64 1/4 (pow.f64 h 4))) (pow.f64 h 4)))) (*.f64 1/4 (*.f64 (*.f64 (*.f64 1/4 (pow.f64 h 4)) (pow.f64 (/.f64 -1 g) 5)) (pow.f64 h 2))))))
(*.f64 -1 (+.f64 g (sqrt.f64 (pow.f64 g 2))))
(neg.f64 (+.f64 g (fabs.f64 g)))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) (sqrt.f64 (pow.f64 g 2)))) (*.f64 -1 (+.f64 g (sqrt.f64 (pow.f64 g 2)))))
(fma.f64 1/2 (/.f64 (pow.f64 h 2) (fabs.f64 g)) (neg.f64 (+.f64 g (fabs.f64 g))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) (sqrt.f64 (pow.f64 g 2)))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 h 4) (pow.f64 (/.f64 -1/2 (sqrt.f64 (pow.f64 g 2))) 2)) (sqrt.f64 (pow.f64 g 2)))) (*.f64 -1 (+.f64 g (sqrt.f64 (pow.f64 g 2))))))
(-.f64 (/.f64 (+.f64 (*.f64 1/2 (pow.f64 h 2)) (*.f64 1/2 (*.f64 (pow.f64 h 4) (pow.f64 (/.f64 -1/2 (fabs.f64 g)) 2)))) (fabs.f64 g)) (+.f64 g (fabs.f64 g)))
(+.f64 (*.f64 1/4 (/.f64 (*.f64 (pow.f64 h 6) (pow.f64 (/.f64 -1/2 (sqrt.f64 (pow.f64 g 2))) 2)) (*.f64 (sqrt.f64 (pow.f64 g 2)) (pow.f64 (sqrt.f64 (pow.f64 g 2)) 2)))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) (sqrt.f64 (pow.f64 g 2)))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 h 4) (pow.f64 (/.f64 -1/2 (sqrt.f64 (pow.f64 g 2))) 2)) (sqrt.f64 (pow.f64 g 2)))) (*.f64 -1 (+.f64 g (sqrt.f64 (pow.f64 g 2)))))))
(fma.f64 1/4 (/.f64 (*.f64 (pow.f64 h 6) (pow.f64 (/.f64 -1/2 (fabs.f64 g)) 2)) (pow.f64 (fabs.f64 g) 3)) (-.f64 (/.f64 (+.f64 (*.f64 1/2 (pow.f64 h 2)) (*.f64 1/2 (*.f64 (pow.f64 h 4) (pow.f64 (/.f64 -1/2 (fabs.f64 g)) 2)))) (fabs.f64 g)) (+.f64 g (fabs.f64 g))))
(fabs.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(fabs.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(*.f64 -1 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(*.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) -1)
(sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(*.f64 (*.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) -1) (*.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) -1))
(sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(*.f64 (neg.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (neg.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))
(sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(*.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(*.f64 (fabs.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3)) (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(*.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (fabs.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3)))
(*.f64 (fabs.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3)) (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(*.f64 (+.f64 (neg.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) 0) (-.f64 (neg.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) 0))
(sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(*.f64 (+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) -1) 0) (-.f64 (*.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) -1) 0))
(sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(*.f64 1 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(*.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(*.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (+.f64 0 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))
(*.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 1)
(sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(*.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3))
(*.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(-.f64 3 (-.f64 3 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(-.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) 3)
(sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0)
(sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(-.f64 0 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(-.f64 1 (-.f64 1 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(-.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 1) 1)
(sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(/.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) -1)
(sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 1)
(sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(sqrt.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2))
(sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(fma.f64 1 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0)
(sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(fma.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 1 0)
(sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(fma.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0)
(sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(fma.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) 0)
(*.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(fma.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0)
(*.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(pow.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 3)
(sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(pow.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) 1/3)
(sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(pow.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 2)
(sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(pow.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) 4)
(sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(pow.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (/.f64 4 2))
(sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(pow.f64 (neg.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) 2)
(sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(pow.f64 (*.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) -1) 2)
(sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(pow.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) 1/2)
(sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 1)
(sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 1/2)
(sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(cbrt.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3))
(sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(neg.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0) (pow.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) -1) -1) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(if (!=.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0) (/.f64 1 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) -1)) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(if (!=.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0) (/.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2)) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(if (!=.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0) (/.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(if (!=.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0) (*.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (+.f64 1 (/.f64 0 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(if (!=.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(if (!=.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) 0) (/.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2)) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(if (!=.f64 0 0) (/.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2)) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(+.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) 3)
(sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(+.f64 0 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0)
(sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(+.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 1) 1)
(sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(*.f64 (+.f64 (*.f64 (cbrt.f64 g) g) (+.f64 (*.f64 h (cbrt.f64 h)) (cbrt.f64 (pow.f64 (*.f64 h g) 2)))) (-.f64 (cbrt.f64 (pow.f64 g 2)) (cbrt.f64 (pow.f64 h 2))))
(*.f64 (fma.f64 (cbrt.f64 g) g (fma.f64 h (cbrt.f64 h) (cbrt.f64 (pow.f64 (*.f64 h g) 2)))) (-.f64 (cbrt.f64 (pow.f64 g 2)) (cbrt.f64 (pow.f64 h 2))))
(*.f64 (cbrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (cbrt.f64 (pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 2)))
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(*.f64 (cbrt.f64 (-.f64 (pow.f64 h 2) (pow.f64 g 2))) (neg.f64 (cbrt.f64 (pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 2))))
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(*.f64 (cbrt.f64 (pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 2)) (cbrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(*.f64 (+.f64 g h) (-.f64 g h))
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(*.f64 (-.f64 g h) (+.f64 g h))
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(*.f64 (-.f64 (neg.f64 g) h) (-.f64 h g))
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(*.f64 (-.f64 h g) (-.f64 (neg.f64 g) h))
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(*.f64 (+.f64 0 (+.f64 (cbrt.f64 (pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 2)) (*.f64 0 (cbrt.f64 (-.f64 (pow.f64 h 2) (pow.f64 g 2)))))) (cbrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(*.f64 (+.f64 (*.f64 h (cbrt.f64 h)) (-.f64 (*.f64 (cbrt.f64 g) g) (*.f64 (neg.f64 (cbrt.f64 (pow.f64 h 2))) (cbrt.f64 (pow.f64 g 2))))) (+.f64 (neg.f64 (cbrt.f64 (pow.f64 h 2))) (cbrt.f64 (pow.f64 g 2))))
(*.f64 (fma.f64 (cbrt.f64 g) g (fma.f64 h (cbrt.f64 h) (cbrt.f64 (pow.f64 (*.f64 h g) 2)))) (-.f64 (cbrt.f64 (pow.f64 g 2)) (cbrt.f64 (pow.f64 h 2))))
(*.f64 (+.f64 (*.f64 (cbrt.f64 g) g) (-.f64 (*.f64 h (cbrt.f64 h)) (*.f64 (cbrt.f64 (pow.f64 g 2)) (neg.f64 (cbrt.f64 (pow.f64 h 2)))))) (-.f64 (cbrt.f64 (pow.f64 g 2)) (cbrt.f64 (pow.f64 h 2))))
(*.f64 (fma.f64 (cbrt.f64 g) g (fma.f64 h (cbrt.f64 h) (cbrt.f64 (pow.f64 (*.f64 h g) 2)))) (-.f64 (cbrt.f64 (pow.f64 g 2)) (cbrt.f64 (pow.f64 h 2))))
(*.f64 (+.f64 0 (-.f64 (cbrt.f64 (pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 2)) (*.f64 0 (cbrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (+.f64 0 (cbrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(*.f64 -1 (-.f64 (pow.f64 h 2) (pow.f64 g 2)))
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(*.f64 (-.f64 (pow.f64 h 2) (pow.f64 g 2)) -1)
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(*.f64 1 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(*.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 1)
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(-.f64 (neg.f64 (pow.f64 h 2)) (neg.f64 (pow.f64 g 2)))
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(-.f64 (-.f64 (neg.f64 (pow.f64 h 2)) 0) (neg.f64 (pow.f64 g 2)))
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(-.f64 3 (+.f64 3 (-.f64 (pow.f64 h 2) (pow.f64 g 2))))
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(-.f64 3 (-.f64 3 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(-.f64 0 (-.f64 (pow.f64 h 2) (pow.f64 g 2)))
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(-.f64 1 (-.f64 1 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(-.f64 (+.f64 (neg.f64 (pow.f64 h 2)) 0) (neg.f64 (pow.f64 g 2)))
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(-.f64 1 (+.f64 1 (-.f64 (pow.f64 h 2) (pow.f64 g 2))))
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(/.f64 (-.f64 (pow.f64 h 2) (pow.f64 g 2)) -1)
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(/.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 1)
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(fma.f64 g g (neg.f64 (pow.f64 h 2)))
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(fma.f64 (neg.f64 (cbrt.f64 g)) (*.f64 (cbrt.f64 (pow.f64 g 2)) (neg.f64 g)) (neg.f64 (pow.f64 h 2)))
(fma.f64 (neg.f64 (cbrt.f64 g)) (neg.f64 (*.f64 (cbrt.f64 (pow.f64 g 2)) g)) (neg.f64 (pow.f64 h 2)))
(fma.f64 (cbrt.f64 g) (*.f64 (cbrt.f64 (pow.f64 g 2)) g) (neg.f64 (pow.f64 h 2)))
(-.f64 (*.f64 (cbrt.f64 g) (*.f64 (cbrt.f64 (pow.f64 g 2)) g)) (pow.f64 h 2))
(fma.f64 (neg.f64 g) (neg.f64 g) (neg.f64 (pow.f64 h 2)))
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(fma.f64 -1 (neg.f64 (pow.f64 g 2)) (neg.f64 (pow.f64 h 2)))
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(fma.f64 (*.f64 (neg.f64 g) (neg.f64 (cbrt.f64 g))) (cbrt.f64 (pow.f64 g 2)) (neg.f64 (pow.f64 h 2)))
(-.f64 (*.f64 (*.f64 (cbrt.f64 g) g) (cbrt.f64 (pow.f64 g 2))) (pow.f64 h 2))
(fma.f64 (pow.f64 g 2) 1 (neg.f64 (pow.f64 h 2)))
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(fma.f64 1 (pow.f64 g 2) (neg.f64 (pow.f64 h 2)))
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(fma.f64 0 0 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(fma.f64 1 0 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(fma.f64 (cbrt.f64 (pow.f64 g 2)) (*.f64 (cbrt.f64 g) g) (neg.f64 (pow.f64 h 2)))
(-.f64 (*.f64 (cbrt.f64 (pow.f64 g 2)) (*.f64 (cbrt.f64 g) g)) (pow.f64 h 2))
(fma.f64 (*.f64 (cbrt.f64 g) g) (cbrt.f64 (pow.f64 g 2)) (neg.f64 (pow.f64 h 2)))
(-.f64 (*.f64 (*.f64 (cbrt.f64 g) g) (cbrt.f64 (pow.f64 g 2))) (pow.f64 h 2))
(pow.f64 (pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 3) 1/3)
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(pow.f64 (cbrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3)
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 1)
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(cbrt.f64 (pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 3))
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(neg.f64 (-.f64 (pow.f64 h 2) (pow.f64 g 2)))
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(neg.f64 (pow.f64 (neg.f64 (cbrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 3))
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(if (!=.f64 (+.f64 (*.f64 h (pow.f64 h 3)) (*.f64 (pow.f64 g 2) (fma.f64 g g (pow.f64 h 2)))) 0) (/.f64 (-.f64 (pow.f64 (pow.f64 g 3) 2) (pow.f64 (pow.f64 h 3) 2)) (+.f64 (*.f64 h (pow.f64 h 3)) (*.f64 (pow.f64 g 2) (fma.f64 g g (pow.f64 h 2))))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 (fma.f64 h (pow.f64 h 3) (*.f64 (fma.f64 g g (pow.f64 h 2)) (pow.f64 g 2))) 0) (/.f64 (-.f64 (pow.f64 (pow.f64 g 3) 2) (pow.f64 (pow.f64 h 3) 2)) (fma.f64 h (pow.f64 h 3) (*.f64 (fma.f64 g g (pow.f64 h 2)) (pow.f64 g 2)))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 (neg.f64 (pow.f64 h 2)) 0) (/.f64 (-.f64 (pow.f64 (pow.f64 g 3) 2) (pow.f64 (pow.f64 h 3) 2)) (+.f64 (*.f64 h (pow.f64 h 3)) (*.f64 (pow.f64 g 2) (fma.f64 g g (pow.f64 h 2))))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 (neg.f64 (pow.f64 h 2)) 0) (/.f64 (-.f64 (pow.f64 (pow.f64 g 3) 2) (pow.f64 (pow.f64 h 3) 2)) (fma.f64 h (pow.f64 h 3) (*.f64 (fma.f64 g g (pow.f64 h 2)) (pow.f64 g 2)))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 (fma.f64 g g (pow.f64 h 2)) 0) (/.f64 (-.f64 (pow.f64 (pow.f64 g 2) 2) (*.f64 h (pow.f64 h 3))) (fma.f64 g g (pow.f64 h 2))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 0) (/.f64 1 (/.f64 1 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 0) (/.f64 -1 (/.f64 1 (-.f64 (pow.f64 h 2) (pow.f64 g 2)))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 (-.f64 (pow.f64 h 2) (pow.f64 g 2)) 0) (/.f64 (neg.f64 (pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 2)) (-.f64 (pow.f64 h 2) (pow.f64 g 2))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 (-.f64 (pow.f64 h 2) (pow.f64 g 2)) 0) (/.f64 (pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 2) (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 (neg.f64 (pow.f64 h 2)) 0) (*.f64 (neg.f64 (pow.f64 h 2)) (+.f64 1 (/.f64 (pow.f64 g 2) (neg.f64 (pow.f64 h 2))))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 (neg.f64 (pow.f64 h 2)) 0) (+.f64 (neg.f64 (pow.f64 h 2)) (/.f64 (pow.f64 (*.f64 h g) 2) (pow.f64 h 2))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 (pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 2) 0) (/.f64 (pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 3) (pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 2)) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 0 0) (/.f64 (pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 3) (pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 2)) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 (pow.f64 h 2) 0) (/.f64 (-.f64 (pow.f64 (pow.f64 g 3) 2) (pow.f64 (pow.f64 h 3) 2)) (+.f64 (*.f64 h (pow.f64 h 3)) (*.f64 (pow.f64 g 2) (fma.f64 g g (pow.f64 h 2))))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 (pow.f64 h 2) 0) (/.f64 (-.f64 (pow.f64 (pow.f64 g 3) 2) (pow.f64 (pow.f64 h 3) 2)) (fma.f64 h (pow.f64 h 3) (*.f64 (fma.f64 g g (pow.f64 h 2)) (pow.f64 g 2)))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 (neg.f64 (fma.f64 g g (pow.f64 h 2))) 0) (/.f64 (-.f64 (pow.f64 (pow.f64 g 2) 2) (*.f64 h (pow.f64 h 3))) (fma.f64 g g (pow.f64 h 2))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 (-.f64 (pow.f64 h 2) (pow.f64 g 2)) 0) (/.f64 (pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 3) (pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 2)) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 (pow.f64 g 2) 0) (/.f64 (-.f64 (pow.f64 (pow.f64 g 3) 2) (pow.f64 (pow.f64 h 3) 2)) (+.f64 (*.f64 h (pow.f64 h 3)) (*.f64 (pow.f64 g 2) (fma.f64 g g (pow.f64 h 2))))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 (pow.f64 g 2) 0) (/.f64 (-.f64 (pow.f64 (pow.f64 g 3) 2) (pow.f64 (pow.f64 h 3) 2)) (fma.f64 h (pow.f64 h 3) (*.f64 (fma.f64 g g (pow.f64 h 2)) (pow.f64 g 2)))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 (pow.f64 g 2) 0) (*.f64 (pow.f64 g 2) (-.f64 1 (/.f64 (pow.f64 h 2) (pow.f64 g 2)))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 (neg.f64 (pow.f64 g 2)) 0) (/.f64 (-.f64 (pow.f64 (pow.f64 g 3) 2) (pow.f64 (pow.f64 h 3) 2)) (+.f64 (*.f64 h (pow.f64 h 3)) (+.f64 (pow.f64 (pow.f64 g 2) 2) (*.f64 (neg.f64 (pow.f64 h 2)) (neg.f64 (pow.f64 g 2)))))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 (neg.f64 (pow.f64 g 2)) 0) (/.f64 (-.f64 (pow.f64 (pow.f64 g 3) 2) (pow.f64 (pow.f64 h 3) 2)) (fma.f64 h (pow.f64 h 3) (*.f64 (fma.f64 g g (pow.f64 h 2)) (pow.f64 g 2)))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 (+.f64 (*.f64 h (pow.f64 h 3)) (+.f64 (pow.f64 (pow.f64 g 2) 2) (*.f64 (neg.f64 (pow.f64 h 2)) (neg.f64 (pow.f64 g 2))))) 0) (/.f64 (-.f64 (pow.f64 (pow.f64 g 3) 2) (pow.f64 (pow.f64 h 3) 2)) (+.f64 (*.f64 h (pow.f64 h 3)) (+.f64 (pow.f64 (pow.f64 g 2) 2) (*.f64 (neg.f64 (pow.f64 h 2)) (neg.f64 (pow.f64 g 2)))))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 (fma.f64 h (pow.f64 h 3) (*.f64 (fma.f64 g g (pow.f64 h 2)) (pow.f64 g 2))) 0) (/.f64 (-.f64 (pow.f64 (pow.f64 g 3) 2) (pow.f64 (pow.f64 h 3) 2)) (fma.f64 h (pow.f64 h 3) (*.f64 (fma.f64 g g (pow.f64 h 2)) (pow.f64 g 2)))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 (neg.f64 (pow.f64 h 2)) 0) (/.f64 (-.f64 (pow.f64 (pow.f64 g 3) 2) (pow.f64 (pow.f64 h 3) 2)) (+.f64 (*.f64 h (pow.f64 h 3)) (+.f64 (pow.f64 (pow.f64 g 2) 2) (*.f64 (neg.f64 (pow.f64 h 2)) (neg.f64 (pow.f64 g 2)))))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 (neg.f64 (pow.f64 h 2)) 0) (/.f64 (-.f64 (pow.f64 (pow.f64 g 3) 2) (pow.f64 (pow.f64 h 3) 2)) (fma.f64 h (pow.f64 h 3) (*.f64 (fma.f64 g g (pow.f64 h 2)) (pow.f64 g 2)))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(+.f64 (pow.f64 g 2) (neg.f64 (pow.f64 h 2)))
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(+.f64 (neg.f64 (pow.f64 h 2)) (pow.f64 g 2))
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(+.f64 (+.f64 (neg.f64 (pow.f64 h 2)) 0) (pow.f64 g 2))
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(+.f64 (-.f64 (neg.f64 (pow.f64 h 2)) 0) (pow.f64 g 2))
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(+.f64 0 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(+.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 0)
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(*.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (*.f64 (cbrt.f64 g) (+.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (cbrt.f64 g)))) (-.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (cbrt.f64 g)))
(*.f64 (cbrt.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) (cbrt.f64 (pow.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 2)))
(-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)
(*.f64 (cbrt.f64 (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (neg.f64 (cbrt.f64 (pow.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 2))))
(-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)
(*.f64 (cbrt.f64 (pow.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 2)) (cbrt.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)))
(-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)
(*.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (*.f64 (neg.f64 (cbrt.f64 g)) (-.f64 (neg.f64 (cbrt.f64 g)) (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (-.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (cbrt.f64 g)))
(*.f64 (-.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (*.f64 (cbrt.f64 g) (-.f64 (neg.f64 (cbrt.f64 g)) (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (-.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (cbrt.f64 g)))
(*.f64 (+.f64 0 (+.f64 (cbrt.f64 (pow.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 2)) (*.f64 0 (cbrt.f64 (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (cbrt.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)))
(-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)
(*.f64 (+.f64 0 (-.f64 (cbrt.f64 (pow.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 2)) (*.f64 0 (cbrt.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))))) (+.f64 0 (cbrt.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))))
(-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)
(*.f64 -1 (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)
(*.f64 (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) -1)
(-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)
(*.f64 (+.f64 (cbrt.f64 (pow.f64 g 2)) (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (*.f64 (neg.f64 (cbrt.f64 g)) (neg.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (-.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (cbrt.f64 g)))
(*.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (*.f64 (cbrt.f64 g) (+.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (cbrt.f64 g)))) (-.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (cbrt.f64 g)))
(*.f64 1 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))
(-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)
(*.f64 (+.f64 (cbrt.f64 (pow.f64 g 2)) (*.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (+.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (cbrt.f64 g)))) (-.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (cbrt.f64 g)))
(-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)
(*.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 1)
(-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)
(-.f64 (neg.f64 g) (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)
(-.f64 3 (+.f64 3 (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))
(-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)
(-.f64 3 (-.f64 3 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)))
(-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)
(-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)
(-.f64 0 (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)
(-.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 0)
(-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)
(-.f64 1 (-.f64 1 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)))
(-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)
(-.f64 1 (+.f64 1 (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))
(-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)
(/.f64 (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) -1)
(-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)
(/.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 1)
(-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)
(fma.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (neg.f64 g))
(-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)
(fma.f64 (cbrt.f64 g) (neg.f64 (cbrt.f64 (pow.f64 g 2))) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(fma.f64 -1 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)
(fma.f64 g -1 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)
(fma.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (neg.f64 g))
(-.f64 (*.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) g)
(fma.f64 (neg.f64 (cbrt.f64 g)) (cbrt.f64 (pow.f64 g 2)) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)
(fma.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (neg.f64 g))
(-.f64 (*.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) g)
(fma.f64 (cbrt.f64 (pow.f64 g 2)) (neg.f64 (cbrt.f64 g)) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)
(fma.f64 1 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (neg.f64 g))
(-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)
(fma.f64 1 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)
(fma.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 1 (neg.f64 g))
(-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)
(fma.f64 (neg.f64 g) 1 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)
(fma.f64 0 0 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))
(-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)
(fma.f64 1 0 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))
(-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)
(pow.f64 (pow.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 3) 1/3)
(-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)
(pow.f64 (cbrt.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) 3)
(-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)
(pow.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 1)
(-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)
(cbrt.f64 (pow.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 3))
(-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)
(neg.f64 (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)
(neg.f64 (pow.f64 (neg.f64 (cbrt.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))) 3))
(-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)
(if (!=.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g) 0) (/.f64 (-.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) (pow.f64 g 2)) (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))
(if (!=.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0) (/.f64 (-.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) (pow.f64 g 2)) (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))
(if (!=.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0) (*.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (-.f64 1 (/.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))
(if (!=.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0) (*.f64 (-.f64 1 (/.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))
(if (!=.f64 (neg.f64 g) 0) (*.f64 (neg.f64 g) (/.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (neg.f64 g))) (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))
(if (!=.f64 (neg.f64 g) 0) (*.f64 (neg.f64 g) (/.f64 (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g)) (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))
(if (!=.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0) (/.f64 (-.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) (pow.f64 g 2)) (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))
(if (!=.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 0) (/.f64 (-.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) (pow.f64 g 2)) (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))
(if (!=.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 0) (/.f64 1 (/.f64 -1 (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))
(if (!=.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 0) (/.f64 -1 (/.f64 1 (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))
(if (!=.f64 (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0) (/.f64 (pow.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 3) (pow.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 2)) (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))
(if (!=.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0) (/.f64 (-.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) (pow.f64 g 3)) (+.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))
(if (!=.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0) (/.f64 (-.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) (pow.f64 g 3)) (+.f64 (pow.f64 g 2) (*.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))
(if (!=.f64 (pow.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 2) 0) (/.f64 (pow.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 3) (pow.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 2)) (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))
(if (!=.f64 0 0) (/.f64 (pow.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 3) (pow.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 2)) (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))
(if (!=.f64 (neg.f64 g) 0) (/.f64 (-.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) (pow.f64 g 3)) (+.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))
(if (!=.f64 (neg.f64 g) 0) (/.f64 (-.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) (pow.f64 g 3)) (+.f64 (pow.f64 g 2) (*.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))
(if (!=.f64 (+.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) 0) (/.f64 (-.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) (pow.f64 g 3)) (+.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))
(if (!=.f64 (+.f64 (pow.f64 g 2) (*.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) 0) (/.f64 (-.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) (pow.f64 g 3)) (+.f64 (pow.f64 g 2) (*.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))
(if (!=.f64 g 0) (/.f64 (-.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) (pow.f64 g 3)) (+.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))
(if (!=.f64 g 0) (/.f64 (-.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) (pow.f64 g 3)) (+.f64 (pow.f64 g 2) (*.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))
(if (!=.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0) (/.f64 (-.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) (pow.f64 g 3)) (+.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))
(if (!=.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0) (/.f64 (-.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) (pow.f64 g 3)) (+.f64 (pow.f64 g 2) (*.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))
(if (!=.f64 (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0) (/.f64 (neg.f64 (pow.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 2)) (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))
(if (!=.f64 (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0) (/.f64 (pow.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 2) (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))
(+.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)
(+.f64 (neg.f64 g) (*.f64 (neg.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (neg.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3))))
(-.f64 (*.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) g)
(+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (neg.f64 g))
(-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)
(+.f64 0 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))
(-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)
(+.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 0)
(-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)
(*.f64 (+.f64 (cbrt.f64 (pow.f64 g 2)) (*.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (-.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (cbrt.f64 g)))) (-.f64 (neg.f64 (cbrt.f64 g)) (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))
(-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(*.f64 (cbrt.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g)) (cbrt.f64 (pow.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 2)))
(-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(*.f64 (cbrt.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (neg.f64 (cbrt.f64 (pow.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 2))))
(neg.f64 (cbrt.f64 (pow.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 3)))
(*.f64 (cbrt.f64 (pow.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 2)) (cbrt.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g)))
(-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(*.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (+.f64 (cbrt.f64 (pow.f64 g 2)) (*.f64 (neg.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (cbrt.f64 g)))) (-.f64 (neg.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (cbrt.f64 g)))
(*.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (*.f64 (cbrt.f64 g) (-.f64 (cbrt.f64 g) (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (-.f64 (neg.f64 (cbrt.f64 g)) (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))
(*.f64 (+.f64 0 (+.f64 (cbrt.f64 (pow.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 2)) (*.f64 0 (cbrt.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (cbrt.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g)))
(-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(*.f64 (+.f64 (cbrt.f64 (pow.f64 g 2)) (-.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (*.f64 (neg.f64 (cbrt.f64 g)) (neg.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (-.f64 (neg.f64 (cbrt.f64 g)) (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))
(*.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (*.f64 (cbrt.f64 g) (-.f64 (cbrt.f64 g) (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (-.f64 (neg.f64 (cbrt.f64 g)) (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))
(*.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (-.f64 (cbrt.f64 (pow.f64 g 2)) (*.f64 (neg.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (neg.f64 (cbrt.f64 g))))) (+.f64 (neg.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (neg.f64 (cbrt.f64 g))))
(*.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (*.f64 (cbrt.f64 g) (-.f64 (cbrt.f64 g) (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (-.f64 (neg.f64 (cbrt.f64 g)) (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))
(*.f64 (+.f64 0 (-.f64 (cbrt.f64 (pow.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 2)) (*.f64 0 (cbrt.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))))) (+.f64 0 (cbrt.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))))
(-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(*.f64 -1 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(*.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) -1)
(-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(*.f64 1 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))
(-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(*.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g) 1)
(-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g)
(-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(-.f64 (neg.f64 g) (*.f64 (neg.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (neg.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3))))
(-.f64 (neg.f64 g) (*.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))
(-.f64 3 (+.f64 3 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))
(-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(-.f64 3 (-.f64 3 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g)))
(-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(-.f64 0 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(-.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g) 0)
(-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(-.f64 1 (-.f64 1 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g)))
(-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(-.f64 1 (+.f64 1 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))
(-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(/.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) -1)
(-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(/.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g) 1)
(-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(fma.f64 (cbrt.f64 g) (neg.f64 (cbrt.f64 (pow.f64 g 2))) (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(-.f64 (*.f64 (cbrt.f64 g) (neg.f64 (cbrt.f64 (pow.f64 g 2)))) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(fma.f64 -1 g (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(fma.f64 g -1 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(fma.f64 (neg.f64 (cbrt.f64 g)) (cbrt.f64 (pow.f64 g 2)) (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(fma.f64 (cbrt.f64 (pow.f64 g 2)) (neg.f64 (cbrt.f64 g)) (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(fma.f64 1 (neg.f64 g) (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(fma.f64 (neg.f64 g) 1 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(fma.f64 0 0 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))
(-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(fma.f64 1 0 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))
(-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(pow.f64 (pow.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g) 3) 1/3)
(-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(pow.f64 (cbrt.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g)) 3)
(-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(pow.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g) 1)
(-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(cbrt.f64 (pow.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g) 3))
(-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(neg.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(neg.f64 (pow.f64 (neg.f64 (cbrt.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))) 3))
(-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(if (!=.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 0) (/.f64 (-.f64 (pow.f64 g 2) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2)) (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))
(if (!=.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 0) (/.f64 (-.f64 (pow.f64 g 2) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2)) (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(if (!=.f64 (neg.f64 g) 0) (*.f64 (neg.f64 g) (+.f64 1 (/.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))
(if (!=.f64 (neg.f64 g) 0) (*.f64 (neg.f64 g) (+.f64 1 (/.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(if (!=.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g) 0) (/.f64 1 (/.f64 1 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))
(if (!=.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0) (/.f64 -1 (pow.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) -1)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(if (!=.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0) (*.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (+.f64 1 (/.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))
(if (!=.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0) (*.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (+.f64 1 (/.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(if (!=.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0) (/.f64 (pow.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g) 3) (pow.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 2)) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))
(if (!=.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 0) (/.f64 (neg.f64 (pow.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 3)) (pow.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 2)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(if (!=.f64 0 0) (/.f64 (pow.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g) 3) (pow.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 2)) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))
(if (!=.f64 0 0) (/.f64 (neg.f64 (pow.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 3)) (pow.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 2)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(if (!=.f64 (pow.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 2) 0) (/.f64 (pow.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g) 3) (pow.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 2)) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))
(if (!=.f64 (pow.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 2) 0) (/.f64 (neg.f64 (pow.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 3)) (pow.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 2)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(if (!=.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0) (/.f64 (neg.f64 (pow.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 2)) (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))
(if (!=.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 0) (/.f64 (neg.f64 (pow.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 2)) (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(if (!=.f64 (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0) (/.f64 (-.f64 (pow.f64 g 2) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2)) (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))
(if (!=.f64 (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0) (/.f64 (-.f64 (pow.f64 g 2) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2)) (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(if (!=.f64 g 0) (/.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) (pow.f64 g 3)) (-.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (pow.f64 g 2))) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))
(if (!=.f64 g 0) (/.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) (pow.f64 g 3)) (fma.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (neg.f64 (pow.f64 g 2)))) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(if (!=.f64 (-.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) 0) (/.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) (pow.f64 g 3)) (-.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (pow.f64 g 2))) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))
(if (!=.f64 (-.f64 (pow.f64 g 2) (*.f64 (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) 0) (/.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) (pow.f64 g 3)) (fma.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (neg.f64 (pow.f64 g 2)))) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(if (!=.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0) (/.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) (pow.f64 g 3)) (-.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (pow.f64 g 2))) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))
(if (!=.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0) (/.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) (pow.f64 g 3)) (fma.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (neg.f64 (pow.f64 g 2)))) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(if (!=.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0) (/.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) (pow.f64 g 3)) (-.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (pow.f64 g 2))) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))
(if (!=.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0) (/.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) (pow.f64 g 3)) (fma.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (neg.f64 (pow.f64 g 2)))) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(if (!=.f64 (neg.f64 g) 0) (/.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) (pow.f64 g 3)) (-.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (pow.f64 g 2))) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))
(if (!=.f64 (neg.f64 g) 0) (/.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) (pow.f64 g 3)) (fma.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (neg.f64 (pow.f64 g 2)))) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(+.f64 (neg.f64 g) (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(+.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (neg.f64 g))
(-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(+.f64 (neg.f64 g) (neg.f64 (*.f64 (neg.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (neg.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3)))))
(-.f64 (neg.f64 g) (*.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))
(+.f64 0 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))
(-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(+.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g) 0)
(-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))

localize72.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
4.0b
(-.f64 (*.f64 g g) (*.f64 h h))
8.8b
(cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))))
9.3b
(cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (+.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))))
26.5b
(sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))
Compiler

Compiled 168 to 53 computations (68.5% saved)

series500.0ms (1%)

Counts
4 → 39
Calls

30 calls:

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

Compiled 25360 to 20520 computations (19.1% saved)

rewrite2.0s (4%)

Algorithm
batch-egg-rewrite
Rules
65×egg-rr
43×egg-rr
23×egg-rr
23×egg-rr
Counts
4 → 154
Calls
Call 1
Inputs
(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))))))
(cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))))
(-.f64 (*.f64 g g) (*.f64 h h))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (cbrt.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (*.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (cbrt.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0) (-.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (neg.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (+.f64 0 (*.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0))) (-.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (-.f64 0 (*.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0))) (+.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) -1) (*.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 1 0)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) 1))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0) (/.f64 1 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) -1)) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0) (/.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) 0) (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) (-.f64 0 (*.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0)))) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0) (/.f64 (-.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) 0) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0) (*.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (+.f64 1 (/.f64 0 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 0 0) (/.f64 (-.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) 0) (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) (+.f64 0 (*.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0)))) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) (-.f64 0 (*.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0))) 0) (/.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) 0) (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) (-.f64 0 (*.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0)))) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) (+.f64 0 (*.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0))) 0) (/.f64 (-.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) 0) (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) (+.f64 0 (*.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0)))) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 0 0) (/.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) 0) (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) (-.f64 0 (*.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0)))) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0) (/.f64 (-.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) 0) (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) (+.f64 0 (*.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0)))) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 1 0) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0)))))
((#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (+.f64 a a)))) (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (+.f64 a a)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (+.f64 a a)))) 2) (cbrt.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (+.f64 a a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 1/2 a)) (cbrt.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) (cbrt.f64 (/.f64 1/2 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (+.f64 a a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (+.f64 a a))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cbrt.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) (cbrt.f64 1/2)) (cbrt.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cbrt.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) -1) (cbrt.f64 (*.f64 -2 a)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) a)) (cbrt.f64 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (/.f64 (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) -2)) (cbrt.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (*.f64 1/2 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))) (cbrt.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (cbrt.f64 (*.f64 -2 a)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (/.f64 (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (cbrt.f64 (*.f64 -2 a)))) (cbrt.f64 (cbrt.f64 (*.f64 4 (pow.f64 a 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (cbrt.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))) (neg.f64 (cbrt.f64 (+.f64 a a))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) (cbrt.f64 (+.f64 a a)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (+.f64 a a))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (+.f64 a a)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (+.f64 a a)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (+.f64 a a))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (+.f64 a a)))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (+.f64 a a))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 -1 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (+.f64 a a)))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (+.f64 a a))) 0) (/.f64 1 (pow.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (+.f64 a a))) -1)) (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (+.f64 a a))))))))
((#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 -2 a)))) (cbrt.f64 (cbrt.f64 (pow.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 -2 a)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (pow.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 -2 a)) 2))) (cbrt.f64 (cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 -2 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 1/2 a)) (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (cbrt.f64 (/.f64 1/2 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 -2 a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 -2 a))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (cbrt.f64 1/2)) (cbrt.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) -1) (cbrt.f64 (*.f64 -2 a)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (neg.f64 a))) (cbrt.f64 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) -2)) (cbrt.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (neg.f64 (*.f64 1/2 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)))) (cbrt.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) (cbrt.f64 (*.f64 -2 a)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (cbrt.f64 (*.f64 -2 a)))) (cbrt.f64 (cbrt.f64 (*.f64 4 (pow.f64 a 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (neg.f64 (cbrt.f64 (+.f64 a a))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (cbrt.f64 (+.f64 a a)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 -2 a))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 -2 a)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 -2 a)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 -2 a))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 -2 a)))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 (cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 -2 a))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 -1 (cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 -2 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 -2 a))) 0) (/.f64 1 (pow.f64 (cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 -2 a))) -1)) (cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 -2 a))))))))
((#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 g h) (-.f64 g h))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (cbrt.f64 (pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 g h) (+.f64 g h))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 2)) (cbrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (cbrt.f64 (-.f64 (pow.f64 h 2) (pow.f64 g 2)))) (pow.f64 (cbrt.f64 (-.f64 (pow.f64 h 2) (pow.f64 g 2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (+.f64 g h)) (-.f64 h g))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 (pow.f64 h 2) (pow.f64 g 2))) (neg.f64 (pow.f64 (cbrt.f64 (-.f64 (pow.f64 h 2) (pow.f64 g 2))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (cbrt.f64 (pow.f64 g 2)) 2) (+.f64 (cbrt.f64 (pow.f64 (pow.f64 h 2) 2)) (*.f64 (cbrt.f64 (pow.f64 g 2)) (cbrt.f64 (pow.f64 h 2))))) (-.f64 (cbrt.f64 (pow.f64 g 2)) (cbrt.f64 (pow.f64 h 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (neg.f64 g) h) (-.f64 (neg.f64 g) h))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (-.f64 (pow.f64 h 2) (pow.f64 g 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (pow.f64 g 2) (pow.f64 h 2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (neg.f64 (pow.f64 h 2)) (neg.f64 (pow.f64 g 2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (-.f64 (pow.f64 h 2) (pow.f64 g 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (cbrt.f64 g)) (*.f64 (cbrt.f64 (pow.f64 g 2)) (neg.f64 g)) (neg.f64 (pow.f64 h 2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 g) (neg.f64 g) (neg.f64 (pow.f64 h 2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 g g (neg.f64 (pow.f64 h 2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 g 2)) (pow.f64 (cbrt.f64 (pow.f64 g 2)) 2) (neg.f64 (pow.f64 h 2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (neg.f64 g) (neg.f64 (cbrt.f64 g))) (cbrt.f64 (pow.f64 g 2)) (neg.f64 (pow.f64 h 2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (pow.f64 g 2)) 2) (cbrt.f64 (pow.f64 g 2)) (neg.f64 (pow.f64 h 2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 g (cbrt.f64 g)) (cbrt.f64 (pow.f64 g 2)) (neg.f64 (pow.f64 h 2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 g) (*.f64 (cbrt.f64 (pow.f64 g 2)) g) (neg.f64 (pow.f64 h 2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 0 0 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (neg.f64 (pow.f64 g 2)) (neg.f64 (pow.f64 h 2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 0 3 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (pow.f64 g 2) (neg.f64 (pow.f64 h 2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 0 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 0 1 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 g 2) 1 (neg.f64 (pow.f64 h 2)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (-.f64 (pow.f64 h 2) (pow.f64 g 2)))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (-.f64 (-.f64 (pow.f64 h 2) (pow.f64 g 2)) 0))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (pow.f64 h 2) 0) (/.f64 (-.f64 (pow.f64 (pow.f64 g 3) 2) (pow.f64 (pow.f64 h 3) 2)) (+.f64 (*.f64 (pow.f64 g 3) g) (*.f64 (pow.f64 h 2) (fma.f64 g g (pow.f64 h 2))))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (+.f64 (*.f64 (pow.f64 g 3) g) (*.f64 (pow.f64 h 2) (fma.f64 g g (pow.f64 h 2)))) 0) (/.f64 (-.f64 (pow.f64 (pow.f64 g 3) 2) (pow.f64 (pow.f64 h 3) 2)) (+.f64 (*.f64 (pow.f64 g 3) g) (*.f64 (pow.f64 h 2) (fma.f64 g g (pow.f64 h 2))))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (-.f64 (+.f64 (*.f64 (pow.f64 g 3) g) (pow.f64 (pow.f64 h 2) 2)) (neg.f64 (pow.f64 (*.f64 g h) 2))) 0) (/.f64 (-.f64 (pow.f64 (pow.f64 g 3) 2) (pow.f64 (pow.f64 h 3) 2)) (-.f64 (+.f64 (*.f64 (pow.f64 g 3) g) (pow.f64 (pow.f64 h 2) 2)) (neg.f64 (pow.f64 (*.f64 g h) 2)))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (neg.f64 (pow.f64 h 2)) 0) (/.f64 (-.f64 (pow.f64 (pow.f64 g 3) 2) (pow.f64 (pow.f64 h 3) 2)) (-.f64 (+.f64 (*.f64 (pow.f64 g 3) g) (pow.f64 (pow.f64 h 2) 2)) (neg.f64 (pow.f64 (*.f64 g h) 2)))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (fma.f64 g g (pow.f64 h 2)) 0) (/.f64 (-.f64 (*.f64 (pow.f64 g 3) g) (pow.f64 (pow.f64 h 2) 2)) (fma.f64 g g (pow.f64 h 2))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (pow.f64 g 2) 0) (/.f64 (-.f64 (pow.f64 (pow.f64 g 3) 2) (pow.f64 (pow.f64 h 3) 2)) (+.f64 (*.f64 (pow.f64 g 3) g) (*.f64 (pow.f64 h 2) (fma.f64 g g (pow.f64 h 2))))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (pow.f64 g 2) 0) (/.f64 (-.f64 (pow.f64 (pow.f64 g 3) 2) (pow.f64 (pow.f64 h 3) 2)) (-.f64 (+.f64 (*.f64 (pow.f64 g 3) g) (pow.f64 (pow.f64 h 2) 2)) (neg.f64 (pow.f64 (*.f64 g h) 2)))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (pow.f64 g 2) 0) (*.f64 (pow.f64 g 2) (+.f64 (/.f64 (neg.f64 (pow.f64 h 2)) (pow.f64 g 2)) 1)) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 0) (/.f64 1 (pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) -1)) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (neg.f64 (pow.f64 h 2)) 0) (/.f64 (-.f64 (pow.f64 (pow.f64 g 3) 2) (pow.f64 (pow.f64 h 3) 2)) (+.f64 (pow.f64 (pow.f64 h 2) 2) (-.f64 (*.f64 (pow.f64 g 3) g) (*.f64 (neg.f64 (pow.f64 h 2)) (pow.f64 g 2))))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (+.f64 0 (-.f64 (pow.f64 h 2) (pow.f64 g 2))) 0) (/.f64 (-.f64 0 (pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 2)) (+.f64 0 (-.f64 (pow.f64 h 2) (pow.f64 g 2)))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (-.f64 (neg.f64 (pow.f64 h 2)) (pow.f64 g 2)) 0) (/.f64 (-.f64 (pow.f64 (pow.f64 h 2) 2) (*.f64 (pow.f64 g 3) g)) (-.f64 (neg.f64 (pow.f64 h 2)) (pow.f64 g 2))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (neg.f64 (pow.f64 h 2)) 0) (*.f64 (neg.f64 (pow.f64 h 2)) (+.f64 1 (/.f64 (pow.f64 g 2) (neg.f64 (pow.f64 h 2))))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (-.f64 (pow.f64 h 2) (pow.f64 g 2)) 0) (/.f64 (pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 3) (+.f64 0 (+.f64 (pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 2) (*.f64 0 (-.f64 (pow.f64 h 2) (pow.f64 g 2)))))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (+.f64 (pow.f64 (pow.f64 h 2) 2) (-.f64 (*.f64 (pow.f64 g 3) g) (*.f64 (neg.f64 (pow.f64 h 2)) (pow.f64 g 2)))) 0) (/.f64 (-.f64 (pow.f64 (pow.f64 g 3) 2) (pow.f64 (pow.f64 h 3) 2)) (+.f64 (pow.f64 (pow.f64 h 2) 2) (-.f64 (*.f64 (pow.f64 g 3) g) (*.f64 (neg.f64 (pow.f64 h 2)) (pow.f64 g 2))))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (+.f64 0 (+.f64 (pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 2) (*.f64 0 (-.f64 (pow.f64 h 2) (pow.f64 g 2))))) 0) (/.f64 (pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 3) (+.f64 0 (+.f64 (pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 2) (*.f64 0 (-.f64 (pow.f64 h 2) (pow.f64 g 2)))))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (pow.f64 g 2) 0) (/.f64 (-.f64 (pow.f64 (pow.f64 g 3) 2) (pow.f64 (pow.f64 h 3) 2)) (+.f64 (pow.f64 (pow.f64 h 2) 2) (-.f64 (*.f64 (pow.f64 g 3) g) (*.f64 (neg.f64 (pow.f64 h 2)) (pow.f64 g 2))))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 0 0) (/.f64 (pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 3) (+.f64 0 (+.f64 (pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 2) (*.f64 0 (-.f64 (pow.f64 h 2) (pow.f64 g 2)))))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (pow.f64 g 2) (neg.f64 (pow.f64 h 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (pow.f64 h 2)) (pow.f64 g 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (pow.f64 h 2)) (*.f64 (neg.f64 (pow.f64 g 2)) -1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 h (-.f64 g h)) (*.f64 g (-.f64 g h)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 g (-.f64 g h)) (*.f64 h (-.f64 g h)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 g (+.f64 g h)) (*.f64 (neg.f64 h) (+.f64 g h)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (-.f64 g h) h) (*.f64 (-.f64 g h) g))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (-.f64 g h) g) (*.f64 (-.f64 g h) h))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (+.f64 g h) g) (*.f64 (+.f64 g h) (neg.f64 h)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))

simplify5.3s (10.8%)

Algorithm
egglog
Counts
193 → 227
Calls
Call 1
Inputs
(sqrt.f64 (neg.f64 (pow.f64 h 2)))
g
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) g)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2) (pow.f64 (/.f64 1 g) 3))) g))
(+.f64 (*.f64 -1/4 (*.f64 (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2) (*.f64 (pow.f64 (/.f64 1 g) 5) (pow.f64 h 2)))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2) (pow.f64 (/.f64 1 g) 3))) g)))
(*.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/2 (*.f64 (pow.f64 (/.f64 -1 g) 3) (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2))) (*.f64 -1 g)))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 (*.f64 -1/4 (*.f64 (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2) (*.f64 (pow.f64 (/.f64 -1 g) 5) (pow.f64 h 2)))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 (/.f64 -1 g) 3) (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2))) (*.f64 -1 g))))
(sqrt.f64 (pow.f64 g 2))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) (sqrt.f64 (pow.f64 g 2)))) (sqrt.f64 (pow.f64 g 2)))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) (sqrt.f64 (pow.f64 g 2)))) (+.f64 (sqrt.f64 (pow.f64 g 2)) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 h 4) (pow.f64 (/.f64 -1/2 (sqrt.f64 (pow.f64 g 2))) 2)) (sqrt.f64 (pow.f64 g 2))))))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) (sqrt.f64 (pow.f64 g 2)))) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 h 6) (pow.f64 (/.f64 -1/2 (sqrt.f64 (pow.f64 g 2))) 2)) (*.f64 (sqrt.f64 (pow.f64 g 2)) (pow.f64 (sqrt.f64 (pow.f64 g 2)) 2)))) (+.f64 (sqrt.f64 (pow.f64 g 2)) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 h 4) (pow.f64 (/.f64 -1/2 (sqrt.f64 (pow.f64 g 2))) 2)) (sqrt.f64 (pow.f64 g 2)))))))
(*.f64 (cbrt.f64 1/2) (pow.f64 (/.f64 (-.f64 (sqrt.f64 (pow.f64 g 2)) g) a) 1/3))
(*.f64 (cbrt.f64 -1/2) (pow.f64 (/.f64 (+.f64 g (sqrt.f64 (pow.f64 g 2))) a) 1/3))
(*.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 (/.f64 1 g) -2)
(+.f64 (pow.f64 (/.f64 1 g) -2) (*.f64 -1 (pow.f64 h 2)))
(+.f64 (pow.f64 (/.f64 1 g) -2) (*.f64 -1 (pow.f64 h 2)))
(+.f64 (pow.f64 (/.f64 1 g) -2) (*.f64 -1 (pow.f64 h 2)))
(pow.f64 (/.f64 -1 g) -2)
(+.f64 (pow.f64 (/.f64 -1 g) -2) (*.f64 -1 (pow.f64 h 2)))
(+.f64 (pow.f64 (/.f64 -1 g) -2) (*.f64 -1 (pow.f64 h 2)))
(+.f64 (pow.f64 (/.f64 -1 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 (/.f64 1 h) -2))
(+.f64 (pow.f64 g 2) (*.f64 -1 (pow.f64 (/.f64 1 h) -2)))
(+.f64 (pow.f64 g 2) (*.f64 -1 (pow.f64 (/.f64 1 h) -2)))
(+.f64 (pow.f64 g 2) (*.f64 -1 (pow.f64 (/.f64 1 h) -2)))
(*.f64 -1 (pow.f64 (/.f64 -1 h) -2))
(+.f64 (*.f64 -1 (pow.f64 (/.f64 -1 h) -2)) (pow.f64 g 2))
(+.f64 (*.f64 -1 (pow.f64 (/.f64 -1 h) -2)) (pow.f64 g 2))
(+.f64 (*.f64 -1 (pow.f64 (/.f64 -1 h) -2)) (pow.f64 g 2))
(fabs.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(*.f64 (*.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (cbrt.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (*.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (cbrt.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))
(*.f64 (+.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0) (-.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0))
(*.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(*.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(*.f64 (neg.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (neg.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))
(*.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3))
(*.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (+.f64 0 (*.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0))) (-.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0))
(*.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (-.f64 0 (*.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0))) (+.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0))
(*.f64 (*.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) -1) (*.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) -1))
(*.f64 1 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 1)
(-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0)
(/.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) -1)
(/.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 1)
(sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(sqrt.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2))
(fma.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) 0)
(fma.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0)
(fma.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0)
(fma.f64 1 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0)
(fma.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 1 0)
(pow.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) 1/3)
(pow.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 3)
(pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 1/2)
(pow.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) 1/2)
(pow.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 2)
(pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 1)
(cbrt.f64 (/.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) 1))
(cbrt.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3))
(neg.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(if (!=.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0) (/.f64 1 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) -1)) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(if (!=.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0) (/.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) 0) (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) (-.f64 0 (*.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0)))) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(if (!=.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0) (/.f64 (-.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) 0) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(if (!=.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0) (*.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (+.f64 1 (/.f64 0 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(if (!=.f64 0 0) (/.f64 (-.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) 0) (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) (+.f64 0 (*.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0)))) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(if (!=.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) (-.f64 0 (*.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0))) 0) (/.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) 0) (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) (-.f64 0 (*.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0)))) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(if (!=.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) (+.f64 0 (*.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0))) 0) (/.f64 (-.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) 0) (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) (+.f64 0 (*.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0)))) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(if (!=.f64 0 0) (/.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) 0) (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) (-.f64 0 (*.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0)))) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(if (!=.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0) (/.f64 (-.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) 0) (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) (+.f64 0 (*.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0)))) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(if (!=.f64 1 0) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(+.f64 0 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0)
(*.f64 (cbrt.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (+.f64 a a)))) (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (+.f64 a a)))) 2))
(*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (+.f64 a a)))) 2) (cbrt.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (+.f64 a a)))))
(*.f64 (cbrt.f64 (/.f64 1/2 a)) (cbrt.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)))
(*.f64 (cbrt.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) (cbrt.f64 (/.f64 1/2 a)))
(*.f64 1 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (+.f64 a a))))
(*.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (+.f64 a a))) 1)
(/.f64 (*.f64 (cbrt.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) (cbrt.f64 1/2)) (cbrt.f64 a))
(/.f64 (*.f64 (cbrt.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) -1) (cbrt.f64 (*.f64 -2 a)))
(/.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) a)) (cbrt.f64 2))
(/.f64 (cbrt.f64 (/.f64 (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) -2)) (cbrt.f64 a))
(/.f64 (cbrt.f64 (*.f64 1/2 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))) (cbrt.f64 a))
(/.f64 (cbrt.f64 (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (cbrt.f64 (*.f64 -2 a)))
(/.f64 (cbrt.f64 (/.f64 (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (cbrt.f64 (*.f64 -2 a)))) (cbrt.f64 (cbrt.f64 (*.f64 4 (pow.f64 a 2)))))
(/.f64 (neg.f64 (cbrt.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))) (neg.f64 (cbrt.f64 (+.f64 a a))))
(/.f64 (cbrt.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) (cbrt.f64 (+.f64 a a)))
(/.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (+.f64 a a))) 1)
(pow.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (+.f64 a a)) 1/3)
(pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (+.f64 a a)))) 3)
(pow.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (+.f64 a a))) 1)
(cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (+.f64 a a)))
(neg.f64 (*.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (+.f64 a a))) -1))
(neg.f64 (*.f64 -1 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (+.f64 a a)))))
(if (!=.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (+.f64 a a))) 0) (/.f64 1 (pow.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (+.f64 a a))) -1)) (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (+.f64 a a))))
(*.f64 (cbrt.f64 (cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 -2 a)))) (cbrt.f64 (cbrt.f64 (pow.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 -2 a)) 2))))
(*.f64 (cbrt.f64 (cbrt.f64 (pow.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 -2 a)) 2))) (cbrt.f64 (cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 -2 a)))))
(*.f64 (cbrt.f64 (/.f64 1/2 a)) (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))
(*.f64 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (cbrt.f64 (/.f64 1/2 a)))
(*.f64 1 (cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 -2 a))))
(*.f64 (cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 -2 a))) 1)
(/.f64 (*.f64 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (cbrt.f64 1/2)) (cbrt.f64 a))
(/.f64 (*.f64 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) -1) (cbrt.f64 (*.f64 -2 a)))
(/.f64 (cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (neg.f64 a))) (cbrt.f64 2))
(/.f64 (cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) -2)) (cbrt.f64 a))
(/.f64 (cbrt.f64 (neg.f64 (*.f64 1/2 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)))) (cbrt.f64 a))
(/.f64 (cbrt.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) (cbrt.f64 (*.f64 -2 a)))
(/.f64 (cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (cbrt.f64 (*.f64 -2 a)))) (cbrt.f64 (cbrt.f64 (*.f64 4 (pow.f64 a 2)))))
(/.f64 (neg.f64 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (neg.f64 (cbrt.f64 (+.f64 a a))))
(/.f64 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (cbrt.f64 (+.f64 a a)))
(/.f64 (cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 -2 a))) 1)
(pow.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 -2 a)) 1/3)
(pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 -2 a)))) 3)
(pow.f64 (cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 -2 a))) 1)
(cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 -2 a)))
(neg.f64 (*.f64 (cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 -2 a))) -1))
(neg.f64 (*.f64 -1 (cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 -2 a)))))
(if (!=.f64 (cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 -2 a))) 0) (/.f64 1 (pow.f64 (cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 -2 a))) -1)) (cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 -2 a))))
(*.f64 (+.f64 g h) (-.f64 g h))
(*.f64 (cbrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (cbrt.f64 (pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 2)))
(*.f64 (-.f64 g h) (+.f64 g h))
(*.f64 (cbrt.f64 (pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 2)) (cbrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(*.f64 (neg.f64 (cbrt.f64 (-.f64 (pow.f64 h 2) (pow.f64 g 2)))) (pow.f64 (cbrt.f64 (-.f64 (pow.f64 h 2) (pow.f64 g 2))) 2))
(*.f64 (neg.f64 (+.f64 g h)) (-.f64 h g))
(*.f64 (cbrt.f64 (-.f64 (pow.f64 h 2) (pow.f64 g 2))) (neg.f64 (pow.f64 (cbrt.f64 (-.f64 (pow.f64 h 2) (pow.f64 g 2))) 2)))
(*.f64 (+.f64 (pow.f64 (cbrt.f64 (pow.f64 g 2)) 2) (+.f64 (cbrt.f64 (pow.f64 (pow.f64 h 2) 2)) (*.f64 (cbrt.f64 (pow.f64 g 2)) (cbrt.f64 (pow.f64 h 2))))) (-.f64 (cbrt.f64 (pow.f64 g 2)) (cbrt.f64 (pow.f64 h 2))))
(*.f64 (+.f64 (neg.f64 g) h) (-.f64 (neg.f64 g) h))
(*.f64 -1 (-.f64 (pow.f64 h 2) (pow.f64 g 2)))
(*.f64 1 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(*.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 1)
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(-.f64 (neg.f64 (pow.f64 h 2)) (neg.f64 (pow.f64 g 2)))
(-.f64 0 (-.f64 (pow.f64 h 2) (pow.f64 g 2)))
(/.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 1)
(fma.f64 (neg.f64 (cbrt.f64 g)) (*.f64 (cbrt.f64 (pow.f64 g 2)) (neg.f64 g)) (neg.f64 (pow.f64 h 2)))
(fma.f64 (neg.f64 g) (neg.f64 g) (neg.f64 (pow.f64 h 2)))
(fma.f64 g g (neg.f64 (pow.f64 h 2)))
(fma.f64 (cbrt.f64 (pow.f64 g 2)) (pow.f64 (cbrt.f64 (pow.f64 g 2)) 2) (neg.f64 (pow.f64 h 2)))
(fma.f64 (*.f64 (neg.f64 g) (neg.f64 (cbrt.f64 g))) (cbrt.f64 (pow.f64 g 2)) (neg.f64 (pow.f64 h 2)))
(fma.f64 (pow.f64 (cbrt.f64 (pow.f64 g 2)) 2) (cbrt.f64 (pow.f64 g 2)) (neg.f64 (pow.f64 h 2)))
(fma.f64 (*.f64 g (cbrt.f64 g)) (cbrt.f64 (pow.f64 g 2)) (neg.f64 (pow.f64 h 2)))
(fma.f64 (cbrt.f64 g) (*.f64 (cbrt.f64 (pow.f64 g 2)) g) (neg.f64 (pow.f64 h 2)))
(fma.f64 0 0 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(fma.f64 -1 (neg.f64 (pow.f64 g 2)) (neg.f64 (pow.f64 h 2)))
(fma.f64 0 3 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(fma.f64 1 (pow.f64 g 2) (neg.f64 (pow.f64 h 2)))
(fma.f64 1 0 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(fma.f64 0 1 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(fma.f64 (pow.f64 g 2) 1 (neg.f64 (pow.f64 h 2)))
(pow.f64 (pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 3) 1/3)
(pow.f64 (cbrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3)
(pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 1)
(cbrt.f64 (pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 3))
(neg.f64 (-.f64 (pow.f64 h 2) (pow.f64 g 2)))
(neg.f64 (-.f64 (-.f64 (pow.f64 h 2) (pow.f64 g 2)) 0))
(if (!=.f64 (pow.f64 h 2) 0) (/.f64 (-.f64 (pow.f64 (pow.f64 g 3) 2) (pow.f64 (pow.f64 h 3) 2)) (+.f64 (*.f64 (pow.f64 g 3) g) (*.f64 (pow.f64 h 2) (fma.f64 g g (pow.f64 h 2))))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 (+.f64 (*.f64 (pow.f64 g 3) g) (*.f64 (pow.f64 h 2) (fma.f64 g g (pow.f64 h 2)))) 0) (/.f64 (-.f64 (pow.f64 (pow.f64 g 3) 2) (pow.f64 (pow.f64 h 3) 2)) (+.f64 (*.f64 (pow.f64 g 3) g) (*.f64 (pow.f64 h 2) (fma.f64 g g (pow.f64 h 2))))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 (-.f64 (+.f64 (*.f64 (pow.f64 g 3) g) (pow.f64 (pow.f64 h 2) 2)) (neg.f64 (pow.f64 (*.f64 g h) 2))) 0) (/.f64 (-.f64 (pow.f64 (pow.f64 g 3) 2) (pow.f64 (pow.f64 h 3) 2)) (-.f64 (+.f64 (*.f64 (pow.f64 g 3) g) (pow.f64 (pow.f64 h 2) 2)) (neg.f64 (pow.f64 (*.f64 g h) 2)))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 (neg.f64 (pow.f64 h 2)) 0) (/.f64 (-.f64 (pow.f64 (pow.f64 g 3) 2) (pow.f64 (pow.f64 h 3) 2)) (-.f64 (+.f64 (*.f64 (pow.f64 g 3) g) (pow.f64 (pow.f64 h 2) 2)) (neg.f64 (pow.f64 (*.f64 g h) 2)))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 (fma.f64 g g (pow.f64 h 2)) 0) (/.f64 (-.f64 (*.f64 (pow.f64 g 3) g) (pow.f64 (pow.f64 h 2) 2)) (fma.f64 g g (pow.f64 h 2))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 (pow.f64 g 2) 0) (/.f64 (-.f64 (pow.f64 (pow.f64 g 3) 2) (pow.f64 (pow.f64 h 3) 2)) (+.f64 (*.f64 (pow.f64 g 3) g) (*.f64 (pow.f64 h 2) (fma.f64 g g (pow.f64 h 2))))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 (pow.f64 g 2) 0) (/.f64 (-.f64 (pow.f64 (pow.f64 g 3) 2) (pow.f64 (pow.f64 h 3) 2)) (-.f64 (+.f64 (*.f64 (pow.f64 g 3) g) (pow.f64 (pow.f64 h 2) 2)) (neg.f64 (pow.f64 (*.f64 g h) 2)))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 (pow.f64 g 2) 0) (*.f64 (pow.f64 g 2) (+.f64 (/.f64 (neg.f64 (pow.f64 h 2)) (pow.f64 g 2)) 1)) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 0) (/.f64 1 (pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) -1)) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 (neg.f64 (pow.f64 h 2)) 0) (/.f64 (-.f64 (pow.f64 (pow.f64 g 3) 2) (pow.f64 (pow.f64 h 3) 2)) (+.f64 (pow.f64 (pow.f64 h 2) 2) (-.f64 (*.f64 (pow.f64 g 3) g) (*.f64 (neg.f64 (pow.f64 h 2)) (pow.f64 g 2))))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 (+.f64 0 (-.f64 (pow.f64 h 2) (pow.f64 g 2))) 0) (/.f64 (-.f64 0 (pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 2)) (+.f64 0 (-.f64 (pow.f64 h 2) (pow.f64 g 2)))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 (-.f64 (neg.f64 (pow.f64 h 2)) (pow.f64 g 2)) 0) (/.f64 (-.f64 (pow.f64 (pow.f64 h 2) 2) (*.f64 (pow.f64 g 3) g)) (-.f64 (neg.f64 (pow.f64 h 2)) (pow.f64 g 2))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 (neg.f64 (pow.f64 h 2)) 0) (*.f64 (neg.f64 (pow.f64 h 2)) (+.f64 1 (/.f64 (pow.f64 g 2) (neg.f64 (pow.f64 h 2))))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 (-.f64 (pow.f64 h 2) (pow.f64 g 2)) 0) (/.f64 (pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 3) (+.f64 0 (+.f64 (pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 2) (*.f64 0 (-.f64 (pow.f64 h 2) (pow.f64 g 2)))))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 (+.f64 (pow.f64 (pow.f64 h 2) 2) (-.f64 (*.f64 (pow.f64 g 3) g) (*.f64 (neg.f64 (pow.f64 h 2)) (pow.f64 g 2)))) 0) (/.f64 (-.f64 (pow.f64 (pow.f64 g 3) 2) (pow.f64 (pow.f64 h 3) 2)) (+.f64 (pow.f64 (pow.f64 h 2) 2) (-.f64 (*.f64 (pow.f64 g 3) g) (*.f64 (neg.f64 (pow.f64 h 2)) (pow.f64 g 2))))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 (+.f64 0 (+.f64 (pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 2) (*.f64 0 (-.f64 (pow.f64 h 2) (pow.f64 g 2))))) 0) (/.f64 (pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 3) (+.f64 0 (+.f64 (pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 2) (*.f64 0 (-.f64 (pow.f64 h 2) (pow.f64 g 2)))))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 (pow.f64 g 2) 0) (/.f64 (-.f64 (pow.f64 (pow.f64 g 3) 2) (pow.f64 (pow.f64 h 3) 2)) (+.f64 (pow.f64 (pow.f64 h 2) 2) (-.f64 (*.f64 (pow.f64 g 3) g) (*.f64 (neg.f64 (pow.f64 h 2)) (pow.f64 g 2))))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 0 0) (/.f64 (pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 3) (+.f64 0 (+.f64 (pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 2) (*.f64 0 (-.f64 (pow.f64 h 2) (pow.f64 g 2)))))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(+.f64 (pow.f64 g 2) (neg.f64 (pow.f64 h 2)))
(+.f64 (neg.f64 (pow.f64 h 2)) (pow.f64 g 2))
(+.f64 (neg.f64 (pow.f64 h 2)) (*.f64 (neg.f64 (pow.f64 g 2)) -1))
(+.f64 (*.f64 h (-.f64 g h)) (*.f64 g (-.f64 g h)))
(+.f64 (*.f64 g (-.f64 g h)) (*.f64 h (-.f64 g h)))
(+.f64 (*.f64 g (+.f64 g h)) (*.f64 (neg.f64 h) (+.f64 g h)))
(+.f64 (*.f64 (-.f64 g h) h) (*.f64 (-.f64 g h) g))
(+.f64 (*.f64 (-.f64 g h) g) (*.f64 (-.f64 g h) h))
(+.f64 (*.f64 (+.f64 g h) g) (*.f64 (+.f64 g h) (neg.f64 h)))
(+.f64 0 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
Outputs
(sqrt.f64 (neg.f64 (pow.f64 h 2)))
g
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) g)
(fma.f64 -1/2 (/.f64 (pow.f64 h 2) g) g)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2) (pow.f64 (/.f64 1 g) 3))) g))
(+.f64 (*.f64 -1/2 (+.f64 (/.f64 (pow.f64 h 2) g) (/.f64 (*.f64 (pow.f64 h 4) (*.f64 -1/2 -1/2)) (pow.f64 g 3)))) g)
(+.f64 (*.f64 -1/4 (*.f64 (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2) (*.f64 (pow.f64 (/.f64 1 g) 5) (pow.f64 h 2)))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2) (pow.f64 (/.f64 1 g) 3))) g)))
(fma.f64 -1/4 (*.f64 (*.f64 (*.f64 (pow.f64 h 4) (*.f64 -1/2 -1/2)) (pow.f64 (pow.f64 g -1) 5)) (pow.f64 h 2)) (+.f64 (*.f64 -1/2 (+.f64 (/.f64 (pow.f64 h 2) g) (/.f64 (*.f64 (pow.f64 h 4) (*.f64 -1/2 -1/2)) (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 (pow.f64 h 2) g) (neg.f64 g))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 (/.f64 -1 g) 3) (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2))) (*.f64 -1 g)))
(fma.f64 1/2 (/.f64 (pow.f64 h 2) g) (fma.f64 -1/2 (/.f64 (*.f64 (*.f64 (pow.f64 h 4) (*.f64 -1/2 -1/2)) -1) (pow.f64 g 3)) (neg.f64 g)))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 (*.f64 -1/4 (*.f64 (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2) (*.f64 (pow.f64 (/.f64 -1 g) 5) (pow.f64 h 2)))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 (/.f64 -1 g) 3) (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2))) (*.f64 -1 g))))
(fma.f64 1/2 (/.f64 (pow.f64 h 2) g) (fma.f64 -1/4 (*.f64 (*.f64 (*.f64 (pow.f64 h 4) (*.f64 -1/2 -1/2)) (pow.f64 (/.f64 -1 g) 5)) (pow.f64 h 2)) (fma.f64 -1/2 (/.f64 (*.f64 (*.f64 (pow.f64 h 4) (*.f64 -1/2 -1/2)) -1) (pow.f64 g 3)) (neg.f64 g))))
(sqrt.f64 (pow.f64 g 2))
(fabs.f64 g)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) (sqrt.f64 (pow.f64 g 2)))) (sqrt.f64 (pow.f64 g 2)))
(fma.f64 -1/2 (/.f64 (pow.f64 h 2) (fabs.f64 g)) (fabs.f64 g))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) (sqrt.f64 (pow.f64 g 2)))) (+.f64 (sqrt.f64 (pow.f64 g 2)) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 h 4) (pow.f64 (/.f64 -1/2 (sqrt.f64 (pow.f64 g 2))) 2)) (sqrt.f64 (pow.f64 g 2))))))
(+.f64 (fma.f64 -1/2 (/.f64 (pow.f64 h 2) (fabs.f64 g)) (fabs.f64 g)) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 (/.f64 -1/2 (fabs.f64 g)) 2) (pow.f64 h 4)) (fabs.f64 g))))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) (sqrt.f64 (pow.f64 g 2)))) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 h 6) (pow.f64 (/.f64 -1/2 (sqrt.f64 (pow.f64 g 2))) 2)) (*.f64 (sqrt.f64 (pow.f64 g 2)) (pow.f64 (sqrt.f64 (pow.f64 g 2)) 2)))) (+.f64 (sqrt.f64 (pow.f64 g 2)) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 h 4) (pow.f64 (/.f64 -1/2 (sqrt.f64 (pow.f64 g 2))) 2)) (sqrt.f64 (pow.f64 g 2)))))))
(fma.f64 -1/2 (/.f64 (pow.f64 h 2) (fabs.f64 g)) (fma.f64 -1/4 (/.f64 (*.f64 (pow.f64 h 6) (pow.f64 (/.f64 -1/2 (fabs.f64 g)) 2)) (pow.f64 (fabs.f64 g) 3)) (+.f64 (fabs.f64 g) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 (/.f64 -1/2 (fabs.f64 g)) 2) (pow.f64 h 4)) (fabs.f64 g))))))
(*.f64 (cbrt.f64 1/2) (pow.f64 (/.f64 (-.f64 (sqrt.f64 (pow.f64 g 2)) g) a) 1/3))
(*.f64 (cbrt.f64 1/2) (cbrt.f64 (/.f64 (-.f64 (fabs.f64 g) g) a)))
(*.f64 (cbrt.f64 -1/2) (pow.f64 (/.f64 (+.f64 g (sqrt.f64 (pow.f64 g 2))) a) 1/3))
(*.f64 (cbrt.f64 -1/2) (cbrt.f64 (/.f64 (+.f64 g (fabs.f64 g)) a)))
(*.f64 -1 (pow.f64 h 2))
(neg.f64 (pow.f64 h 2))
(+.f64 (pow.f64 g 2) (*.f64 -1 (pow.f64 h 2)))
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(+.f64 (pow.f64 g 2) (*.f64 -1 (pow.f64 h 2)))
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(+.f64 (pow.f64 g 2) (*.f64 -1 (pow.f64 h 2)))
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(pow.f64 (/.f64 1 g) -2)
(pow.f64 (pow.f64 g -1) -2)
(+.f64 (pow.f64 (/.f64 1 g) -2) (*.f64 -1 (pow.f64 h 2)))
(-.f64 (pow.f64 (pow.f64 g -1) -2) (pow.f64 h 2))
(+.f64 (pow.f64 (/.f64 1 g) -2) (*.f64 -1 (pow.f64 h 2)))
(-.f64 (pow.f64 (pow.f64 g -1) -2) (pow.f64 h 2))
(+.f64 (pow.f64 (/.f64 1 g) -2) (*.f64 -1 (pow.f64 h 2)))
(-.f64 (pow.f64 (pow.f64 g -1) -2) (pow.f64 h 2))
(pow.f64 (/.f64 -1 g) -2)
(+.f64 (pow.f64 (/.f64 -1 g) -2) (*.f64 -1 (pow.f64 h 2)))
(-.f64 (pow.f64 (/.f64 -1 g) -2) (pow.f64 h 2))
(+.f64 (pow.f64 (/.f64 -1 g) -2) (*.f64 -1 (pow.f64 h 2)))
(-.f64 (pow.f64 (/.f64 -1 g) -2) (pow.f64 h 2))
(+.f64 (pow.f64 (/.f64 -1 g) -2) (*.f64 -1 (pow.f64 h 2)))
(-.f64 (pow.f64 (/.f64 -1 g) -2) (pow.f64 h 2))
(pow.f64 g 2)
(+.f64 (pow.f64 g 2) (*.f64 -1 (pow.f64 h 2)))
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(+.f64 (pow.f64 g 2) (*.f64 -1 (pow.f64 h 2)))
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(+.f64 (pow.f64 g 2) (*.f64 -1 (pow.f64 h 2)))
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(*.f64 -1 (pow.f64 (/.f64 1 h) -2))
(neg.f64 (pow.f64 (pow.f64 h -1) -2))
(+.f64 (pow.f64 g 2) (*.f64 -1 (pow.f64 (/.f64 1 h) -2)))
(-.f64 (pow.f64 g 2) (pow.f64 (pow.f64 h -1) -2))
(+.f64 (pow.f64 g 2) (*.f64 -1 (pow.f64 (/.f64 1 h) -2)))
(-.f64 (pow.f64 g 2) (pow.f64 (pow.f64 h -1) -2))
(+.f64 (pow.f64 g 2) (*.f64 -1 (pow.f64 (/.f64 1 h) -2)))
(-.f64 (pow.f64 g 2) (pow.f64 (pow.f64 h -1) -2))
(*.f64 -1 (pow.f64 (/.f64 -1 h) -2))
(neg.f64 (pow.f64 (/.f64 -1 h) -2))
(+.f64 (*.f64 -1 (pow.f64 (/.f64 -1 h) -2)) (pow.f64 g 2))
(-.f64 (pow.f64 g 2) (pow.f64 (/.f64 -1 h) -2))
(+.f64 (*.f64 -1 (pow.f64 (/.f64 -1 h) -2)) (pow.f64 g 2))
(-.f64 (pow.f64 g 2) (pow.f64 (/.f64 -1 h) -2))
(+.f64 (*.f64 -1 (pow.f64 (/.f64 -1 h) -2)) (pow.f64 g 2))
(-.f64 (pow.f64 g 2) (pow.f64 (/.f64 -1 h) -2))
(fabs.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(*.f64 (*.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (cbrt.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (*.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (cbrt.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))
(sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(*.f64 (+.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0) (-.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0))
(sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(*.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(*.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3))
(*.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(*.f64 (neg.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (neg.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))
(sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(*.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3))
(*.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (+.f64 0 (*.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0))) (-.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0))
(*.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3))
(*.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (-.f64 0 (*.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0))) (+.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0))
(*.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3))
(*.f64 (*.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) -1) (*.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) -1))
(sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(*.f64 1 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 1)
(sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0)
(sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(/.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) -1)
(sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 1)
(sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(sqrt.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2))
(sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(fma.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) 0)
(*.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3))
(fma.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0)
(sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(fma.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0)
(*.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3))
(fma.f64 1 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0)
(sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(fma.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 1 0)
(sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(pow.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) 1/3)
(sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(pow.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 3)
(sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 1/2)
(sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(pow.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) 1/2)
(sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(pow.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 2)
(sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 1)
(sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(cbrt.f64 (/.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) 1))
(sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(cbrt.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3))
(sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(neg.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0) (/.f64 1 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) -1)) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(if (!=.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0) (pow.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) -1) -1) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(if (!=.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0) (/.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) 0) (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) (-.f64 0 (*.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0)))) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(if (!=.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0) (/.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(if (!=.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0) (/.f64 (-.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) 0) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(if (!=.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0) (/.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(if (!=.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0) (*.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (+.f64 1 (/.f64 0 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(if (!=.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(if (!=.f64 0 0) (/.f64 (-.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) 0) (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) (+.f64 0 (*.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0)))) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(if (!=.f64 0 0) (/.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(if (!=.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) (-.f64 0 (*.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0))) 0) (/.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) 0) (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) (-.f64 0 (*.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0)))) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(if (!=.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) 0) (/.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(if (!=.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) (+.f64 0 (*.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0))) 0) (/.f64 (-.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) 0) (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) (+.f64 0 (*.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0)))) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(if (!=.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) 0) (/.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(if (!=.f64 0 0) (/.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) 0) (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) (-.f64 0 (*.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0)))) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(if (!=.f64 0 0) (/.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(if (!=.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0) (/.f64 (-.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) 0) (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) (+.f64 0 (*.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0)))) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(if (!=.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0) (/.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(if (!=.f64 1 0) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(+.f64 0 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0)
(sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(*.f64 (cbrt.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (+.f64 a a)))) (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (+.f64 a a)))) 2))
(cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 2 a)))
(*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (+.f64 a a)))) 2) (cbrt.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (+.f64 a a)))))
(cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 2 a)))
(*.f64 (cbrt.f64 (/.f64 1/2 a)) (cbrt.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)))
(cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 2 a)))
(*.f64 (cbrt.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) (cbrt.f64 (/.f64 1/2 a)))
(cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 2 a)))
(*.f64 1 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (+.f64 a a))))
(cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 2 a)))
(*.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (+.f64 a a))) 1)
(cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 2 a)))
(/.f64 (*.f64 (cbrt.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) (cbrt.f64 1/2)) (cbrt.f64 a))
(cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 2 a)))
(/.f64 (*.f64 (cbrt.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) -1) (cbrt.f64 (*.f64 -2 a)))
(cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 2 a)))
(/.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) a)) (cbrt.f64 2))
(cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 2 a)))
(/.f64 (cbrt.f64 (/.f64 (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) -2)) (cbrt.f64 a))
(cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 2 a)))
(/.f64 (cbrt.f64 (*.f64 1/2 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))) (cbrt.f64 a))
(cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 2 a)))
(/.f64 (cbrt.f64 (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (cbrt.f64 (*.f64 -2 a)))
(cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 2 a)))
(/.f64 (cbrt.f64 (/.f64 (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (cbrt.f64 (*.f64 -2 a)))) (cbrt.f64 (cbrt.f64 (*.f64 4 (pow.f64 a 2)))))
(cbrt.f64 (/.f64 (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (*.f64 (cbrt.f64 (*.f64 4 (pow.f64 a 2))) (cbrt.f64 (*.f64 -2 a)))))
(/.f64 (neg.f64 (cbrt.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))) (neg.f64 (cbrt.f64 (+.f64 a a))))
(cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 2 a)))
(/.f64 (cbrt.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) (cbrt.f64 (+.f64 a a)))
(cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 2 a)))
(/.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (+.f64 a a))) 1)
(cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 2 a)))
(pow.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (+.f64 a a)) 1/3)
(cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 2 a)))
(pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (+.f64 a a)))) 3)
(cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 2 a)))
(pow.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (+.f64 a a))) 1)
(cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 2 a)))
(cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (+.f64 a a)))
(cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 2 a)))
(neg.f64 (*.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (+.f64 a a))) -1))
(cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 2 a)))
(neg.f64 (*.f64 -1 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (+.f64 a a)))))
(cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 2 a)))
(if (!=.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (+.f64 a a))) 0) (/.f64 1 (pow.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (+.f64 a a))) -1)) (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (+.f64 a a))))
(if (!=.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 2 a))) 0) (cbrt.f64 (/.f64 1 (/.f64 1 (/.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 2 a))))) (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 2 a))))
(*.f64 (cbrt.f64 (cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 -2 a)))) (cbrt.f64 (cbrt.f64 (pow.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 -2 a)) 2))))
(cbrt.f64 (*.f64 (cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 -2 a))) (cbrt.f64 (pow.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 -2 a)) 2))))
(*.f64 (cbrt.f64 (cbrt.f64 (pow.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 -2 a)) 2))) (cbrt.f64 (cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 -2 a)))))
(cbrt.f64 (*.f64 (cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 -2 a))) (cbrt.f64 (pow.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 -2 a)) 2))))
(*.f64 (cbrt.f64 (/.f64 1/2 a)) (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))
(cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 -2 a)))
(*.f64 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (cbrt.f64 (/.f64 1/2 a)))
(cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 -2 a)))
(*.f64 1 (cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 -2 a))))
(cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 -2 a)))
(*.f64 (cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 -2 a))) 1)
(cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 -2 a)))
(/.f64 (*.f64 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (cbrt.f64 1/2)) (cbrt.f64 a))
(cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 -2 a)))
(/.f64 (*.f64 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) -1) (cbrt.f64 (*.f64 -2 a)))
(cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 -2 a)))
(/.f64 (cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (neg.f64 a))) (cbrt.f64 2))
(cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 -2 a)))
(/.f64 (cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) -2)) (cbrt.f64 a))
(cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 -2 a)))
(/.f64 (cbrt.f64 (neg.f64 (*.f64 1/2 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)))) (cbrt.f64 a))
(cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 -2 a)))
(/.f64 (cbrt.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) (cbrt.f64 (*.f64 -2 a)))
(cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 -2 a)))
(/.f64 (cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (cbrt.f64 (*.f64 -2 a)))) (cbrt.f64 (cbrt.f64 (*.f64 4 (pow.f64 a 2)))))
(cbrt.f64 (/.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (cbrt.f64 (*.f64 -2 a))) (cbrt.f64 (*.f64 4 (pow.f64 a 2)))))
(/.f64 (neg.f64 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (neg.f64 (cbrt.f64 (+.f64 a a))))
(cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 -2 a)))
(/.f64 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (cbrt.f64 (+.f64 a a)))
(cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 -2 a)))
(/.f64 (cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 -2 a))) 1)
(cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 -2 a)))
(pow.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 -2 a)) 1/3)
(cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 -2 a)))
(pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 -2 a)))) 3)
(cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 -2 a)))
(pow.f64 (cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 -2 a))) 1)
(cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 -2 a)))
(cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 -2 a)))
(neg.f64 (*.f64 (cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 -2 a))) -1))
(cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 -2 a)))
(neg.f64 (*.f64 -1 (cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 -2 a)))))
(cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 -2 a)))
(if (!=.f64 (cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 -2 a))) 0) (/.f64 1 (pow.f64 (cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 -2 a))) -1)) (cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 -2 a))))
(if (!=.f64 (cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 -2 a))) 0) (cbrt.f64 (/.f64 1 (/.f64 1 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 -2 a))))) (cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 -2 a))))
(*.f64 (+.f64 g h) (-.f64 g h))
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(*.f64 (cbrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (cbrt.f64 (pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 2)))
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(*.f64 (-.f64 g h) (+.f64 g h))
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(*.f64 (cbrt.f64 (pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 2)) (cbrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(*.f64 (neg.f64 (cbrt.f64 (-.f64 (pow.f64 h 2) (pow.f64 g 2)))) (pow.f64 (cbrt.f64 (-.f64 (pow.f64 h 2) (pow.f64 g 2))) 2))
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(*.f64 (neg.f64 (+.f64 g h)) (-.f64 h g))
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(*.f64 (cbrt.f64 (-.f64 (pow.f64 h 2) (pow.f64 g 2))) (neg.f64 (pow.f64 (cbrt.f64 (-.f64 (pow.f64 h 2) (pow.f64 g 2))) 2)))
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(*.f64 (+.f64 (pow.f64 (cbrt.f64 (pow.f64 g 2)) 2) (+.f64 (cbrt.f64 (pow.f64 (pow.f64 h 2) 2)) (*.f64 (cbrt.f64 (pow.f64 g 2)) (cbrt.f64 (pow.f64 h 2))))) (-.f64 (cbrt.f64 (pow.f64 g 2)) (cbrt.f64 (pow.f64 h 2))))
(*.f64 (+.f64 (cbrt.f64 (pow.f64 (pow.f64 g 2) 2)) (+.f64 (cbrt.f64 (pow.f64 h 4)) (cbrt.f64 (pow.f64 (*.f64 g h) 2)))) (-.f64 (cbrt.f64 (pow.f64 g 2)) (cbrt.f64 (pow.f64 h 2))))
(*.f64 (+.f64 (neg.f64 g) h) (-.f64 (neg.f64 g) h))
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(*.f64 -1 (-.f64 (pow.f64 h 2) (pow.f64 g 2)))
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(*.f64 1 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(*.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 1)
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(-.f64 (neg.f64 (pow.f64 h 2)) (neg.f64 (pow.f64 g 2)))
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(-.f64 0 (-.f64 (pow.f64 h 2) (pow.f64 g 2)))
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(/.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 1)
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(fma.f64 (neg.f64 (cbrt.f64 g)) (*.f64 (cbrt.f64 (pow.f64 g 2)) (neg.f64 g)) (neg.f64 (pow.f64 h 2)))
(fma.f64 (neg.f64 (cbrt.f64 g)) (neg.f64 (*.f64 (cbrt.f64 (pow.f64 g 2)) g)) (neg.f64 (pow.f64 h 2)))
(fma.f64 (neg.f64 g) (neg.f64 g) (neg.f64 (pow.f64 h 2)))
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(fma.f64 g g (neg.f64 (pow.f64 h 2)))
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(fma.f64 (cbrt.f64 (pow.f64 g 2)) (pow.f64 (cbrt.f64 (pow.f64 g 2)) 2) (neg.f64 (pow.f64 h 2)))
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(fma.f64 (*.f64 (neg.f64 g) (neg.f64 (cbrt.f64 g))) (cbrt.f64 (pow.f64 g 2)) (neg.f64 (pow.f64 h 2)))
(fma.f64 (*.f64 g (neg.f64 (neg.f64 (cbrt.f64 g)))) (cbrt.f64 (pow.f64 g 2)) (neg.f64 (pow.f64 h 2)))
(fma.f64 (pow.f64 (cbrt.f64 (pow.f64 g 2)) 2) (cbrt.f64 (pow.f64 g 2)) (neg.f64 (pow.f64 h 2)))
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(fma.f64 (*.f64 g (cbrt.f64 g)) (cbrt.f64 (pow.f64 g 2)) (neg.f64 (pow.f64 h 2)))
(fma.f64 (cbrt.f64 g) (*.f64 (cbrt.f64 (pow.f64 g 2)) g) (neg.f64 (pow.f64 h 2)))
(fma.f64 0 0 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(fma.f64 -1 (neg.f64 (pow.f64 g 2)) (neg.f64 (pow.f64 h 2)))
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(fma.f64 0 3 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(fma.f64 1 (pow.f64 g 2) (neg.f64 (pow.f64 h 2)))
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(fma.f64 1 0 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(fma.f64 0 1 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(fma.f64 (pow.f64 g 2) 1 (neg.f64 (pow.f64 h 2)))
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(pow.f64 (pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 3) 1/3)
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(pow.f64 (cbrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3)
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 1)
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(cbrt.f64 (pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 3))
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(neg.f64 (-.f64 (pow.f64 h 2) (pow.f64 g 2)))
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(neg.f64 (-.f64 (-.f64 (pow.f64 h 2) (pow.f64 g 2)) 0))
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(if (!=.f64 (pow.f64 h 2) 0) (/.f64 (-.f64 (pow.f64 (pow.f64 g 3) 2) (pow.f64 (pow.f64 h 3) 2)) (+.f64 (*.f64 (pow.f64 g 3) g) (*.f64 (pow.f64 h 2) (fma.f64 g g (pow.f64 h 2))))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 (pow.f64 h 2) 0) (/.f64 (-.f64 (pow.f64 (pow.f64 g 2) 3) (pow.f64 (pow.f64 h 3) 2)) (+.f64 (fma.f64 (pow.f64 g 3) g (pow.f64 h 4)) (pow.f64 (*.f64 g h) 2))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 (+.f64 (*.f64 (pow.f64 g 3) g) (*.f64 (pow.f64 h 2) (fma.f64 g g (pow.f64 h 2)))) 0) (/.f64 (-.f64 (pow.f64 (pow.f64 g 3) 2) (pow.f64 (pow.f64 h 3) 2)) (+.f64 (*.f64 (pow.f64 g 3) g) (*.f64 (pow.f64 h 2) (fma.f64 g g (pow.f64 h 2))))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 (+.f64 (fma.f64 (pow.f64 g 3) g (pow.f64 h 4)) (pow.f64 (*.f64 g h) 2)) 0) (/.f64 (-.f64 (pow.f64 (pow.f64 g 2) 3) (pow.f64 (pow.f64 h 3) 2)) (+.f64 (fma.f64 (pow.f64 g 3) g (pow.f64 h 4)) (pow.f64 (*.f64 g h) 2))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 (-.f64 (+.f64 (*.f64 (pow.f64 g 3) g) (pow.f64 (pow.f64 h 2) 2)) (neg.f64 (pow.f64 (*.f64 g h) 2))) 0) (/.f64 (-.f64 (pow.f64 (pow.f64 g 3) 2) (pow.f64 (pow.f64 h 3) 2)) (-.f64 (+.f64 (*.f64 (pow.f64 g 3) g) (pow.f64 (pow.f64 h 2) 2)) (neg.f64 (pow.f64 (*.f64 g h) 2)))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 (+.f64 (fma.f64 (pow.f64 g 3) g (pow.f64 h 4)) (pow.f64 (*.f64 g h) 2)) 0) (/.f64 (-.f64 (pow.f64 (pow.f64 g 2) 3) (pow.f64 (pow.f64 h 3) 2)) (+.f64 (fma.f64 (pow.f64 g 3) g (pow.f64 h 4)) (pow.f64 (*.f64 g h) 2))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 (neg.f64 (pow.f64 h 2)) 0) (/.f64 (-.f64 (pow.f64 (pow.f64 g 3) 2) (pow.f64 (pow.f64 h 3) 2)) (-.f64 (+.f64 (*.f64 (pow.f64 g 3) g) (pow.f64 (pow.f64 h 2) 2)) (neg.f64 (pow.f64 (*.f64 g h) 2)))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 (neg.f64 (pow.f64 h 2)) 0) (/.f64 (-.f64 (pow.f64 (pow.f64 g 2) 3) (pow.f64 (pow.f64 h 3) 2)) (+.f64 (fma.f64 (pow.f64 g 3) g (pow.f64 h 4)) (pow.f64 (*.f64 g h) 2))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 (fma.f64 g g (pow.f64 h 2)) 0) (/.f64 (-.f64 (*.f64 (pow.f64 g 3) g) (pow.f64 (pow.f64 h 2) 2)) (fma.f64 g g (pow.f64 h 2))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 (fma.f64 g g (pow.f64 h 2)) 0) (/.f64 (-.f64 (*.f64 (pow.f64 g 3) g) (pow.f64 h 4)) (fma.f64 g g (pow.f64 h 2))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 (pow.f64 g 2) 0) (/.f64 (-.f64 (pow.f64 (pow.f64 g 3) 2) (pow.f64 (pow.f64 h 3) 2)) (+.f64 (*.f64 (pow.f64 g 3) g) (*.f64 (pow.f64 h 2) (fma.f64 g g (pow.f64 h 2))))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 (pow.f64 g 2) 0) (/.f64 (-.f64 (pow.f64 (pow.f64 g 2) 3) (pow.f64 (pow.f64 h 3) 2)) (+.f64 (fma.f64 (pow.f64 g 3) g (pow.f64 h 4)) (pow.f64 (*.f64 g h) 2))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 (pow.f64 g 2) 0) (/.f64 (-.f64 (pow.f64 (pow.f64 g 3) 2) (pow.f64 (pow.f64 h 3) 2)) (-.f64 (+.f64 (*.f64 (pow.f64 g 3) g) (pow.f64 (pow.f64 h 2) 2)) (neg.f64 (pow.f64 (*.f64 g h) 2)))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 (pow.f64 g 2) 0) (/.f64 (-.f64 (pow.f64 (pow.f64 g 2) 3) (pow.f64 (pow.f64 h 3) 2)) (+.f64 (fma.f64 (pow.f64 g 3) g (pow.f64 h 4)) (pow.f64 (*.f64 g h) 2))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 (pow.f64 g 2) 0) (*.f64 (pow.f64 g 2) (+.f64 (/.f64 (neg.f64 (pow.f64 h 2)) (pow.f64 g 2)) 1)) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 (pow.f64 g 2) 0) (*.f64 (pow.f64 g 2) (-.f64 1 (/.f64 (pow.f64 h 2) (pow.f64 g 2)))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 0) (/.f64 1 (pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) -1)) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 0) (/.f64 1 (/.f64 -1 (-.f64 (pow.f64 h 2) (pow.f64 g 2)))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 (neg.f64 (pow.f64 h 2)) 0) (/.f64 (-.f64 (pow.f64 (pow.f64 g 3) 2) (pow.f64 (pow.f64 h 3) 2)) (+.f64 (pow.f64 (pow.f64 h 2) 2) (-.f64 (*.f64 (pow.f64 g 3) g) (*.f64 (neg.f64 (pow.f64 h 2)) (pow.f64 g 2))))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 (neg.f64 (pow.f64 h 2)) 0) (/.f64 (-.f64 (pow.f64 (pow.f64 g 2) 3) (pow.f64 (pow.f64 h 3) 2)) (+.f64 (fma.f64 (pow.f64 g 3) g (pow.f64 h 4)) (pow.f64 (*.f64 g h) 2))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 (+.f64 0 (-.f64 (pow.f64 h 2) (pow.f64 g 2))) 0) (/.f64 (-.f64 0 (pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 2)) (+.f64 0 (-.f64 (pow.f64 h 2) (pow.f64 g 2)))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 (-.f64 (pow.f64 h 2) (pow.f64 g 2)) 0) (/.f64 (pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 2) (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 (-.f64 (neg.f64 (pow.f64 h 2)) (pow.f64 g 2)) 0) (/.f64 (-.f64 (pow.f64 (pow.f64 h 2) 2) (*.f64 (pow.f64 g 3) g)) (-.f64 (neg.f64 (pow.f64 h 2)) (pow.f64 g 2))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 (neg.f64 (fma.f64 g g (pow.f64 h 2))) 0) (/.f64 (-.f64 (*.f64 (pow.f64 g 3) g) (pow.f64 h 4)) (fma.f64 g g (pow.f64 h 2))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 (neg.f64 (pow.f64 h 2)) 0) (*.f64 (neg.f64 (pow.f64 h 2)) (+.f64 1 (/.f64 (pow.f64 g 2) (neg.f64 (pow.f64 h 2))))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 (neg.f64 (pow.f64 h 2)) 0) (+.f64 (neg.f64 (pow.f64 h 2)) (/.f64 (pow.f64 (*.f64 g h) 2) (pow.f64 h 2))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 (-.f64 (pow.f64 h 2) (pow.f64 g 2)) 0) (/.f64 (pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 3) (+.f64 0 (+.f64 (pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 2) (*.f64 0 (-.f64 (pow.f64 h 2) (pow.f64 g 2)))))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 (-.f64 (pow.f64 h 2) (pow.f64 g 2)) 0) (/.f64 (pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 2) (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 (+.f64 (pow.f64 (pow.f64 h 2) 2) (-.f64 (*.f64 (pow.f64 g 3) g) (*.f64 (neg.f64 (pow.f64 h 2)) (pow.f64 g 2)))) 0) (/.f64 (-.f64 (pow.f64 (pow.f64 g 3) 2) (pow.f64 (pow.f64 h 3) 2)) (+.f64 (pow.f64 (pow.f64 h 2) 2) (-.f64 (*.f64 (pow.f64 g 3) g) (*.f64 (neg.f64 (pow.f64 h 2)) (pow.f64 g 2))))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 (+.f64 (fma.f64 (pow.f64 g 3) g (pow.f64 h 4)) (pow.f64 (*.f64 g h) 2)) 0) (/.f64 (-.f64 (pow.f64 (pow.f64 g 2) 3) (pow.f64 (pow.f64 h 3) 2)) (+.f64 (fma.f64 (pow.f64 g 3) g (pow.f64 h 4)) (pow.f64 (*.f64 g h) 2))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 (+.f64 0 (+.f64 (pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 2) (*.f64 0 (-.f64 (pow.f64 h 2) (pow.f64 g 2))))) 0) (/.f64 (pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 3) (+.f64 0 (+.f64 (pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 2) (*.f64 0 (-.f64 (pow.f64 h 2) (pow.f64 g 2)))))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 (pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 2) 0) (/.f64 (pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 2) (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 (pow.f64 g 2) 0) (/.f64 (-.f64 (pow.f64 (pow.f64 g 3) 2) (pow.f64 (pow.f64 h 3) 2)) (+.f64 (pow.f64 (pow.f64 h 2) 2) (-.f64 (*.f64 (pow.f64 g 3) g) (*.f64 (neg.f64 (pow.f64 h 2)) (pow.f64 g 2))))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 (pow.f64 g 2) 0) (/.f64 (-.f64 (pow.f64 (pow.f64 g 2) 3) (pow.f64 (pow.f64 h 3) 2)) (+.f64 (fma.f64 (pow.f64 g 3) g (pow.f64 h 4)) (pow.f64 (*.f64 g h) 2))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 0 0) (/.f64 (pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 3) (+.f64 0 (+.f64 (pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 2) (*.f64 0 (-.f64 (pow.f64 h 2) (pow.f64 g 2)))))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(if (!=.f64 0 0) (/.f64 (pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 2) (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(+.f64 (pow.f64 g 2) (neg.f64 (pow.f64 h 2)))
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(+.f64 (neg.f64 (pow.f64 h 2)) (pow.f64 g 2))
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(+.f64 (neg.f64 (pow.f64 h 2)) (*.f64 (neg.f64 (pow.f64 g 2)) -1))
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(+.f64 (*.f64 h (-.f64 g h)) (*.f64 g (-.f64 g h)))
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(+.f64 (*.f64 g (-.f64 g h)) (*.f64 h (-.f64 g h)))
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(+.f64 (*.f64 g (+.f64 g h)) (*.f64 (neg.f64 h) (+.f64 g h)))
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(+.f64 (*.f64 (-.f64 g h) h) (*.f64 (-.f64 g h) g))
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(+.f64 (*.f64 (-.f64 g h) g) (*.f64 (-.f64 g h) h))
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(+.f64 (*.f64 (+.f64 g h) g) (*.f64 (+.f64 g h) (neg.f64 h)))
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
(+.f64 0 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(-.f64 (pow.f64 g 2) (pow.f64 h 2))

eval845.0ms (1.7%)

Compiler

Compiled 43184 to 29224 computations (32.3% saved)

prune419.0ms (0.9%)

Pruning

38 alts after pruning (37 fresh and 1 done)

PrunedKeptTotal
New91537952
Fresh000
Picked011
Done101
Total91638954
Error
28.2b
Counts
954 → 38
Alt Table
Click to see full alt table
StatusErrorProgram
30.7b
(+.f64 (/.f64 (*.f64 (cbrt.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) (cbrt.f64 1/2)) (cbrt.f64 a)) (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))
33.0b
(+.f64 (/.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) a)) (cbrt.f64 2)) (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))
41.6b
(+.f64 (/.f64 (cbrt.f64 (/.f64 (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (cbrt.f64 (*.f64 -2 a)))) (cbrt.f64 (cbrt.f64 (*.f64 4 (pow.f64 a 2))))) (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))
30.7b
(+.f64 (/.f64 (cbrt.f64 (/.f64 (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) -2)) (cbrt.f64 a)) (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))
30.6b
(+.f64 (/.f64 (cbrt.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) (cbrt.f64 (+.f64 a a))) (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))
33.2b
(+.f64 (*.f64 (cbrt.f64 1/2) (cbrt.f64 (/.f64 (-.f64 (fabs.f64 g) g) a))) (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))
32.9b
(+.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (+.f64 a a))) (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))
47.7b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (+.f64 (neg.f64 g) (pow.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) 1/3)))) (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))
46.1b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (+.f64 (neg.f64 g) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 -1 g))))) (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))
39.9b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (+.f64 (neg.f64 g) (*.f64 (*.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (cbrt.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (*.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (cbrt.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))))) (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))
41.6b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (+.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) (pow.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 -2 a)) 1/3))
33.2b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (+.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 -2 a)))) 3))
31.4b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (+.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) (/.f64 (*.f64 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (cbrt.f64 1/2)) (cbrt.f64 a)))
43.2b
(+.f64 (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 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (cbrt.f64 (*.f64 -2 a)))) (cbrt.f64 (cbrt.f64 (*.f64 4 (pow.f64 a 2))))))
31.3b
(+.f64 (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 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) -2)) (cbrt.f64 a)))
31.4b
(+.f64 (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 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) (cbrt.f64 (*.f64 -2 a))))
33.4b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (+.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 (/.f64 (+.f64 g (fabs.f64 g)) a))))
36.3b
(+.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 (fma.f64 (*.f64 g (cbrt.f64 g)) (cbrt.f64 (pow.f64 g 2)) (neg.f64 (pow.f64 h 2))))))))
34.8b
(+.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 (pow.f64 (/.f64 1 g) -2))))))
38.2b
(+.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 (pow.f64 (cbrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3))))))
32.9b
(+.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)))))))
49.1b
(+.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) (neg.f64 g)))))
44.6b
(+.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) g))))
46.3b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (+.f64 (neg.f64 g) (neg.f64 g)))) (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))
46.8b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (+.f64 (neg.f64 g) g))) (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))
29.1b
(*.f64 (cbrt.f64 (/.f64 1/2 a)) (+.f64 (cbrt.f64 (if (!=.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 0) (/.f64 (-.f64 (pow.f64 g 2) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2)) (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))) (cbrt.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))))
29.0b
(*.f64 (cbrt.f64 (/.f64 1/2 a)) (+.f64 (cbrt.f64 (if (!=.f64 (neg.f64 g) 0) (*.f64 (neg.f64 g) (+.f64 1 (/.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))) (cbrt.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))))
29.1b
(*.f64 (cbrt.f64 (/.f64 1/2 a)) (+.f64 (cbrt.f64 (fma.f64 1/2 (/.f64 (pow.f64 h 2) (fabs.f64 g)) (neg.f64 (+.f64 g (fabs.f64 g))))) (cbrt.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))))
29.1b
(*.f64 (cbrt.f64 (/.f64 1/2 a)) (+.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g)) 3)) (cbrt.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))))
44.4b
(*.f64 (cbrt.f64 (/.f64 1/2 a)) (+.f64 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (cbrt.f64 (/.f64 (*.f64 (pow.f64 h 2) -1/2) g))))
33.2b
(*.f64 (cbrt.f64 (/.f64 1/2 a)) (+.f64 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (cbrt.f64 (-.f64 (pow.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 2) g))))
35.4b
(*.f64 (cbrt.f64 (/.f64 1/2 a)) (+.f64 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (cbrt.f64 (-.f64 (pow.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) 4) g))))
29.0b
(*.f64 (cbrt.f64 (/.f64 1/2 a)) (+.f64 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (cbrt.f64 (-.f64 (sqrt.f64 (*.f64 (-.f64 g h) (+.f64 g h))) g))))
45.2b
(*.f64 (cbrt.f64 (/.f64 1/2 a)) (+.f64 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (cbrt.f64 (-.f64 g g))))
43.5b
(*.f64 (cbrt.f64 (/.f64 1/2 a)) (+.f64 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (cbrt.f64 (+.f64 (*.f64 -2 g) (*.f64 1/2 (/.f64 (pow.f64 h 2) g))))))
47.7b
(*.f64 (cbrt.f64 (/.f64 1/2 a)) (+.f64 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (cbrt.f64 (*.f64 -1/2 (+.f64 (/.f64 (pow.f64 h 2) g) (/.f64 (*.f64 1/4 (pow.f64 h 4)) (pow.f64 g 3)))))))
43.7b
(*.f64 (cbrt.f64 (/.f64 1/2 a)) (+.f64 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (cbrt.f64 (*.f64 -2 g))))
42.5b
(*.f64 (cbrt.f64 (/.f64 1/2 a)) (+.f64 (cbrt.f64 (-.f64 (neg.f64 g) g)) (cbrt.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))))
Compiler

Compiled 2902 to 2155 computations (25.7% saved)

localize124.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
1.0b
(-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g)
1.5b
(-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)
4.0b
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
26.5b
(sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
Compiler

Compiled 278 to 195 computations (29.9% saved)

series29.0ms (0.1%)

Counts
1 → 14
Calls

6 calls:

TimeVariablePointExpression
0.0ms
g
@0
(-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g)
0.0ms
g
@-inf
(-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g)
0.0ms
h
@0
(-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g)
0.0ms
g
@inf
(-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g)
0.0ms
h
@inf
(-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g)
Compiler

Compiled 3070 to 2545 computations (17.1% saved)

rewrite1.7s (3.6%)

Algorithm
batch-egg-rewrite
Rules
66×egg-rr
Counts
1 → 66
Calls
Call 1
Inputs
(-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (*.f64 (cbrt.f64 g) (-.f64 (cbrt.f64 g) (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (-.f64 (neg.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (cbrt.f64 g)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (cbrt.f64 (pow.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) (neg.f64 (cbrt.f64 (pow.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 2)) (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (cbrt.f64 (pow.f64 g 2)) (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (*.f64 (neg.f64 (cbrt.f64 g)) (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (-.f64 (neg.f64 (cbrt.f64 g)) (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 0 (+.f64 (cbrt.f64 (pow.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 2)) (*.f64 0 (cbrt.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))))) (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (cbrt.f64 (pow.f64 g 2)) (-.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (*.f64 (neg.f64 (cbrt.f64 g)) (neg.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (+.f64 (neg.f64 (cbrt.f64 g)) (neg.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (-.f64 (cbrt.f64 (pow.f64 g 2)) (*.f64 (neg.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (neg.f64 (cbrt.f64 g))))) (-.f64 (neg.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (cbrt.f64 g)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 0 (-.f64 (cbrt.f64 (pow.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 2)) (*.f64 0 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (+.f64 0 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) -1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (*.f64 (neg.f64 (cbrt.f64 g)) (neg.f64 (cbrt.f64 (pow.f64 g 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 1 (-.f64 1 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 3 (+.f64 3 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 3 (-.f64 3 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 1 (+.f64 1 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (neg.f64 g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (neg.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (neg.f64 g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (cbrt.f64 g)) (cbrt.f64 (pow.f64 g 2)) (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 g) (neg.f64 (cbrt.f64 (pow.f64 g 2))) (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (neg.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3)) (neg.f64 g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (neg.f64 g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (neg.f64 g) (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 1 (neg.f64 g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 0 0 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 0 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (neg.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (neg.f64 g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (neg.f64 g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 g (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (neg.f64 g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) -1 (neg.f64 g))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (pow.f64 (neg.f64 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (fma.f64 g (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2)) 0) (/.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) (pow.f64 g 3)) (neg.f64 (fma.f64 g (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2)))) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0) (/.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) (pow.f64 g 3)) (neg.f64 (fma.f64 g (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2)))) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0) (/.f64 (-.f64 (pow.f64 g 2) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2)) (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0) (*.f64 (+.f64 1 (/.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0) (/.f64 1 (/.f64 1 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (neg.f64 g) 0) (*.f64 (neg.f64 g) (+.f64 1 (/.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (neg.f64 g)))) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 0) (/.f64 (pow.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 3) (pow.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 2)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (pow.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 2) 0) (/.f64 (pow.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 3) (pow.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 2)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 0 0) (/.f64 (pow.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 3) (pow.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 2)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (neg.f64 g) 0) (/.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) (pow.f64 g 3)) (neg.f64 (fma.f64 g (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2)))) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 0) (/.f64 (neg.f64 (pow.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 2)) (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 0) (/.f64 (-.f64 (pow.f64 g 2) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2)) (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 g 0) (/.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) (pow.f64 g 3)) (neg.f64 (fma.f64 g (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2)))) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0) (/.f64 (-.f64 (neg.f64 (pow.f64 g 3)) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3)) (+.f64 (pow.f64 g 2) (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) (*.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (+.f64 (pow.f64 g 2) (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) (*.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) 0) (/.f64 (-.f64 (neg.f64 (pow.f64 g 3)) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3)) (+.f64 (pow.f64 g 2) (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) (*.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (neg.f64 g) 0) (/.f64 (-.f64 (neg.f64 (pow.f64 g 3)) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3)) (+.f64 (pow.f64 g 2) (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) (*.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (neg.f64 g))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 g) (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (neg.f64 (*.f64 (neg.f64 (cbrt.f64 g)) (neg.f64 (cbrt.f64 (pow.f64 g 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0)))))

simplify2.6s (5.3%)

Algorithm
egglog
Counts
80 → 114
Calls
Call 1
Inputs
(*.f64 -1 (sqrt.f64 (neg.f64 (pow.f64 h 2))))
(+.f64 (*.f64 -1 (sqrt.f64 (neg.f64 (pow.f64 h 2)))) (*.f64 -1 g))
(*.f64 -2 g)
(+.f64 (*.f64 -2 g) (*.f64 1/2 (/.f64 (pow.f64 h 2) g)))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2) (pow.f64 (/.f64 1 g) 3))) (+.f64 (*.f64 -2 g) (*.f64 1/2 (/.f64 (pow.f64 h 2) g))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2) (pow.f64 (/.f64 1 g) 3))) (+.f64 (*.f64 -2 g) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 1/4 (*.f64 (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2) (*.f64 (pow.f64 (/.f64 1 g) 5) (pow.f64 h 2)))))))
(*.f64 -1/2 (/.f64 (pow.f64 h 2) g))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 (/.f64 -1 g) 3) (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2))) (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 (/.f64 -1 g) 3) (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 1/4 (*.f64 (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2) (*.f64 (pow.f64 (/.f64 -1 g) 5) (pow.f64 h 2))))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 (/.f64 -1 g) 3) (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 (/.f64 -1 g) 7) (+.f64 (pow.f64 (*.f64 -1/2 (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2)) 2) (*.f64 1/4 (*.f64 (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2) (pow.f64 (pow.f64 h 2) 2)))))) (*.f64 1/4 (*.f64 (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2) (*.f64 (pow.f64 (/.f64 -1 g) 5) (pow.f64 h 2)))))))
(*.f64 -1 (+.f64 g (sqrt.f64 (pow.f64 g 2))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) (sqrt.f64 (pow.f64 g 2)))) (*.f64 -1 (+.f64 g (sqrt.f64 (pow.f64 g 2)))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) (sqrt.f64 (pow.f64 g 2)))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 h 4) (pow.f64 (/.f64 -1/2 (sqrt.f64 (pow.f64 g 2))) 2)) (sqrt.f64 (pow.f64 g 2)))) (*.f64 -1 (+.f64 g (sqrt.f64 (pow.f64 g 2))))))
(+.f64 (*.f64 1/4 (/.f64 (*.f64 (pow.f64 h 6) (pow.f64 (/.f64 -1/2 (sqrt.f64 (pow.f64 g 2))) 2)) (*.f64 (sqrt.f64 (pow.f64 g 2)) (pow.f64 (sqrt.f64 (pow.f64 g 2)) 2)))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) (sqrt.f64 (pow.f64 g 2)))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 h 4) (pow.f64 (/.f64 -1/2 (sqrt.f64 (pow.f64 g 2))) 2)) (sqrt.f64 (pow.f64 g 2)))) (*.f64 -1 (+.f64 g (sqrt.f64 (pow.f64 g 2)))))))
(*.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (*.f64 (cbrt.f64 g) (-.f64 (cbrt.f64 g) (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (-.f64 (neg.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (cbrt.f64 g)))
(*.f64 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (cbrt.f64 (pow.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 2)))
(*.f64 (cbrt.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) (neg.f64 (cbrt.f64 (pow.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 2))))
(*.f64 (cbrt.f64 (pow.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 2)) (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))
(*.f64 (+.f64 (cbrt.f64 (pow.f64 g 2)) (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (*.f64 (neg.f64 (cbrt.f64 g)) (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (-.f64 (neg.f64 (cbrt.f64 g)) (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))
(*.f64 (+.f64 0 (+.f64 (cbrt.f64 (pow.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 2)) (*.f64 0 (cbrt.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))))) (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))
(*.f64 (+.f64 (cbrt.f64 (pow.f64 g 2)) (-.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (*.f64 (neg.f64 (cbrt.f64 g)) (neg.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (+.f64 (neg.f64 (cbrt.f64 g)) (neg.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))
(*.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (-.f64 (cbrt.f64 (pow.f64 g 2)) (*.f64 (neg.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (neg.f64 (cbrt.f64 g))))) (-.f64 (neg.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (cbrt.f64 g)))
(*.f64 (+.f64 0 (-.f64 (cbrt.f64 (pow.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 2)) (*.f64 0 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (+.f64 0 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))
(*.f64 1 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(*.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 1)
(*.f64 -1 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))
(*.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) -1)
(-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (*.f64 (neg.f64 (cbrt.f64 g)) (neg.f64 (cbrt.f64 (pow.f64 g 2)))))
(-.f64 0 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))
(-.f64 1 (-.f64 1 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))
(-.f64 3 (+.f64 3 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)))
(-.f64 3 (-.f64 3 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))
(-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g)
(-.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0)
(-.f64 1 (+.f64 1 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)))
(/.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 1)
(/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) -1)
(fma.f64 (neg.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (neg.f64 g))
(fma.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (neg.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (neg.f64 g))
(fma.f64 (neg.f64 (cbrt.f64 g)) (cbrt.f64 (pow.f64 g 2)) (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(fma.f64 (cbrt.f64 g) (neg.f64 (cbrt.f64 (pow.f64 g 2))) (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(fma.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (neg.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3)) (neg.f64 g))
(fma.f64 1 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (neg.f64 g))
(fma.f64 1 (neg.f64 g) (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(fma.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 1 (neg.f64 g))
(fma.f64 0 0 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(fma.f64 1 0 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(fma.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (neg.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (neg.f64 g))
(fma.f64 -1 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (neg.f64 g))
(fma.f64 -1 g (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(fma.f64 (neg.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (neg.f64 g))
(fma.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) -1 (neg.f64 g))
(pow.f64 (pow.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 3) 1/3)
(pow.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 1)
(pow.f64 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) 3)
(cbrt.f64 (pow.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 3))
(neg.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))
(neg.f64 (pow.f64 (neg.f64 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) 3))
(if (!=.f64 (fma.f64 g (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2)) 0) (/.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) (pow.f64 g 3)) (neg.f64 (fma.f64 g (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2)))) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(if (!=.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0) (/.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) (pow.f64 g 3)) (neg.f64 (fma.f64 g (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2)))) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(if (!=.f64 (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0) (/.f64 (-.f64 (pow.f64 g 2) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2)) (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(if (!=.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0) (*.f64 (+.f64 1 (/.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(if (!=.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0) (/.f64 1 (/.f64 1 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(if (!=.f64 (neg.f64 g) 0) (*.f64 (neg.f64 g) (+.f64 1 (/.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (neg.f64 g)))) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(if (!=.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 0) (/.f64 (pow.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 3) (pow.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 2)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(if (!=.f64 (pow.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 2) 0) (/.f64 (pow.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 3) (pow.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 2)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(if (!=.f64 0 0) (/.f64 (pow.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 3) (pow.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 2)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(if (!=.f64 (neg.f64 g) 0) (/.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) (pow.f64 g 3)) (neg.f64 (fma.f64 g (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2)))) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(if (!=.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 0) (/.f64 (neg.f64 (pow.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 2)) (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(if (!=.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 0) (/.f64 (-.f64 (pow.f64 g 2) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2)) (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(if (!=.f64 g 0) (/.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) (pow.f64 g 3)) (neg.f64 (fma.f64 g (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2)))) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(if (!=.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0) (/.f64 (-.f64 (neg.f64 (pow.f64 g 3)) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3)) (+.f64 (pow.f64 g 2) (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) (*.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(if (!=.f64 (+.f64 (pow.f64 g 2) (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) (*.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) 0) (/.f64 (-.f64 (neg.f64 (pow.f64 g 3)) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3)) (+.f64 (pow.f64 g 2) (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) (*.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(if (!=.f64 (neg.f64 g) 0) (/.f64 (-.f64 (neg.f64 (pow.f64 g 3)) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3)) (+.f64 (pow.f64 g 2) (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) (*.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(+.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (neg.f64 g))
(+.f64 (neg.f64 g) (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(+.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (neg.f64 (*.f64 (neg.f64 (cbrt.f64 g)) (neg.f64 (cbrt.f64 (pow.f64 g 2))))))
(+.f64 0 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(+.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0)
Outputs
(*.f64 -1 (sqrt.f64 (neg.f64 (pow.f64 h 2))))
(neg.f64 (sqrt.f64 (neg.f64 (*.f64 h h))))
(+.f64 (*.f64 -1 (sqrt.f64 (neg.f64 (pow.f64 h 2)))) (*.f64 -1 g))
(-.f64 (neg.f64 g) (sqrt.f64 (neg.f64 (*.f64 h h))))
(*.f64 -2 g)
(*.f64 g -2)
(+.f64 (*.f64 -2 g) (*.f64 1/2 (/.f64 (pow.f64 h 2) g)))
(fma.f64 -2 g (/.f64 (*.f64 h h) (*.f64 2 g)))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2) (pow.f64 (/.f64 1 g) 3))) (+.f64 (*.f64 -2 g) (*.f64 1/2 (/.f64 (pow.f64 h 2) g))))
(fma.f64 1/2 (/.f64 (*.f64 (pow.f64 h 4) 1/4) (pow.f64 g 3)) (fma.f64 -2 g (/.f64 (*.f64 h h) (*.f64 2 g))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2) (pow.f64 (/.f64 1 g) 3))) (+.f64 (*.f64 -2 g) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 1/4 (*.f64 (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2) (*.f64 (pow.f64 (/.f64 1 g) 5) (pow.f64 h 2)))))))
(fma.f64 1/2 (/.f64 (*.f64 (pow.f64 h 4) 1/4) (pow.f64 g 3)) (fma.f64 -2 g (fma.f64 1/2 (/.f64 (*.f64 h h) g) (*.f64 1/4 (*.f64 (*.f64 (pow.f64 h 4) 1/4) (*.f64 (pow.f64 (/.f64 1 g) 5) (*.f64 h h)))))))
(*.f64 -1/2 (/.f64 (pow.f64 h 2) g))
(/.f64 (*.f64 -1/2 (*.f64 h h)) g)
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 (/.f64 -1 g) 3) (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2))) (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)))
(fma.f64 1/2 (*.f64 (pow.f64 (/.f64 -1 g) 3) (*.f64 (pow.f64 h 4) 1/4)) (/.f64 (*.f64 -1/2 (*.f64 h h)) g))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 (/.f64 -1 g) 3) (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 1/4 (*.f64 (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2) (*.f64 (pow.f64 (/.f64 -1 g) 5) (pow.f64 h 2))))))
(fma.f64 1/2 (*.f64 (pow.f64 (/.f64 -1 g) 3) (*.f64 (pow.f64 h 4) 1/4)) (fma.f64 -1/2 (/.f64 (*.f64 h h) g) (*.f64 1/4 (*.f64 (*.f64 (pow.f64 h 4) 1/4) (*.f64 (pow.f64 (/.f64 -1 g) 5) (*.f64 h h))))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 (/.f64 -1 g) 3) (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 (/.f64 -1 g) 7) (+.f64 (pow.f64 (*.f64 -1/2 (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2)) 2) (*.f64 1/4 (*.f64 (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2) (pow.f64 (pow.f64 h 2) 2)))))) (*.f64 1/4 (*.f64 (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2) (*.f64 (pow.f64 (/.f64 -1 g) 5) (pow.f64 h 2)))))))
(fma.f64 1/2 (*.f64 (pow.f64 (/.f64 -1 g) 3) (*.f64 (pow.f64 h 4) 1/4)) (fma.f64 -1/2 (/.f64 (*.f64 h h) g) (fma.f64 1/2 (*.f64 (pow.f64 (/.f64 -1 g) 7) (+.f64 (pow.f64 (*.f64 -1/2 (*.f64 (pow.f64 h 4) 1/4)) 2) (*.f64 1/4 (*.f64 (*.f64 (pow.f64 h 4) 1/4) (pow.f64 h 4))))) (*.f64 1/4 (*.f64 (*.f64 (pow.f64 h 4) 1/4) (*.f64 (pow.f64 (/.f64 -1 g) 5) (*.f64 h h)))))))
(*.f64 -1 (+.f64 g (sqrt.f64 (pow.f64 g 2))))
(neg.f64 (+.f64 g (fabs.f64 g)))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) (sqrt.f64 (pow.f64 g 2)))) (*.f64 -1 (+.f64 g (sqrt.f64 (pow.f64 g 2)))))
(-.f64 (/.f64 (*.f64 h h) (*.f64 2 (fabs.f64 g))) (+.f64 g (fabs.f64 g)))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) (sqrt.f64 (pow.f64 g 2)))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 h 4) (pow.f64 (/.f64 -1/2 (sqrt.f64 (pow.f64 g 2))) 2)) (sqrt.f64 (pow.f64 g 2)))) (*.f64 -1 (+.f64 g (sqrt.f64 (pow.f64 g 2))))))
(-.f64 (/.f64 (+.f64 (*.f64 1/2 (*.f64 h h)) (/.f64 (*.f64 (pow.f64 h 4) (pow.f64 (/.f64 -1/2 (fabs.f64 g)) 2)) 2)) (fabs.f64 g)) (+.f64 g (fabs.f64 g)))
(+.f64 (*.f64 1/4 (/.f64 (*.f64 (pow.f64 h 6) (pow.f64 (/.f64 -1/2 (sqrt.f64 (pow.f64 g 2))) 2)) (*.f64 (sqrt.f64 (pow.f64 g 2)) (pow.f64 (sqrt.f64 (pow.f64 g 2)) 2)))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) (sqrt.f64 (pow.f64 g 2)))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 h 4) (pow.f64 (/.f64 -1/2 (sqrt.f64 (pow.f64 g 2))) 2)) (sqrt.f64 (pow.f64 g 2)))) (*.f64 -1 (+.f64 g (sqrt.f64 (pow.f64 g 2)))))))
(fma.f64 1/4 (/.f64 (*.f64 (pow.f64 h 6) (pow.f64 (/.f64 -1/2 (fabs.f64 g)) 2)) (pow.f64 (fabs.f64 g) 3)) (-.f64 (/.f64 (+.f64 (*.f64 1/2 (*.f64 h h)) (/.f64 (*.f64 (pow.f64 h 4) (pow.f64 (/.f64 -1/2 (fabs.f64 g)) 2)) 2)) (fabs.f64 g)) (+.f64 g (fabs.f64 g))))
(*.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (*.f64 (cbrt.f64 g) (-.f64 (cbrt.f64 g) (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (-.f64 (neg.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (cbrt.f64 g)))
(*.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 2/3) (*.f64 (-.f64 (cbrt.f64 g) (cbrt.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))) (cbrt.f64 g))) (-.f64 (cbrt.f64 (neg.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))) (cbrt.f64 g)))
(*.f64 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (cbrt.f64 (pow.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 2)))
(-.f64 (neg.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) g)
(*.f64 (cbrt.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) (neg.f64 (cbrt.f64 (pow.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 2))))
(-.f64 (neg.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) g)
(*.f64 (cbrt.f64 (pow.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 2)) (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))
(-.f64 (neg.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) g)
(*.f64 (+.f64 (cbrt.f64 (pow.f64 g 2)) (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (*.f64 (neg.f64 (cbrt.f64 g)) (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (-.f64 (neg.f64 (cbrt.f64 g)) (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))
(*.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 2/3) (-.f64 (cbrt.f64 (*.f64 g g)) (*.f64 (cbrt.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (cbrt.f64 g)))) (-.f64 (cbrt.f64 (neg.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))) (cbrt.f64 g)))
(*.f64 (+.f64 0 (+.f64 (cbrt.f64 (pow.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 2)) (*.f64 0 (cbrt.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))))) (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))
(-.f64 (neg.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) g)
(*.f64 (+.f64 (cbrt.f64 (pow.f64 g 2)) (-.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (*.f64 (neg.f64 (cbrt.f64 g)) (neg.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (+.f64 (neg.f64 (cbrt.f64 g)) (neg.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))
(*.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 2/3) (-.f64 (cbrt.f64 (*.f64 g g)) (*.f64 (cbrt.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (cbrt.f64 g)))) (-.f64 (cbrt.f64 (neg.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))) (cbrt.f64 g)))
(*.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (-.f64 (cbrt.f64 (pow.f64 g 2)) (*.f64 (neg.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (neg.f64 (cbrt.f64 g))))) (-.f64 (neg.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (cbrt.f64 g)))
(*.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 2/3) (-.f64 (cbrt.f64 (*.f64 g g)) (*.f64 (cbrt.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (cbrt.f64 g)))) (-.f64 (cbrt.f64 (neg.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))) (cbrt.f64 g)))
(*.f64 (+.f64 0 (-.f64 (cbrt.f64 (pow.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 2)) (*.f64 0 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (+.f64 0 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))
(-.f64 (neg.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) g)
(*.f64 1 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(-.f64 (neg.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) g)
(*.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 1)
(-.f64 (neg.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) g)
(*.f64 -1 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))
(-.f64 (neg.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) g)
(*.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) -1)
(-.f64 (neg.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) g)
(-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(-.f64 (neg.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) g)
(-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (*.f64 (neg.f64 (cbrt.f64 g)) (neg.f64 (cbrt.f64 (pow.f64 g 2)))))
(-.f64 (neg.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (*.f64 (cbrt.f64 g) (cbrt.f64 (*.f64 g g))))
(-.f64 0 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))
(-.f64 (neg.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) g)
(-.f64 1 (-.f64 1 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))
(-.f64 (neg.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) g)
(-.f64 3 (+.f64 3 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)))
(-.f64 (neg.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) g)
(-.f64 3 (-.f64 3 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))
(-.f64 (neg.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) g)
(-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g)
(-.f64 (neg.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) g)
(-.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0)
(-.f64 (neg.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) g)
(-.f64 1 (+.f64 1 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)))
(-.f64 (neg.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) g)
(/.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 1)
(-.f64 (neg.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) g)
(/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) -1)
(-.f64 (neg.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) g)
(fma.f64 (neg.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (neg.f64 g))
(-.f64 (neg.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) g)
(fma.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (neg.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (neg.f64 g))
(-.f64 (neg.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) g)
(fma.f64 (neg.f64 (cbrt.f64 g)) (cbrt.f64 (pow.f64 g 2)) (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(-.f64 (neg.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (*.f64 (cbrt.f64 g) (cbrt.f64 (*.f64 g g))))
(fma.f64 (cbrt.f64 g) (neg.f64 (cbrt.f64 (pow.f64 g 2))) (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(-.f64 (neg.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (*.f64 (cbrt.f64 g) (cbrt.f64 (*.f64 g g))))
(fma.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (neg.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3)) (neg.f64 g))
(-.f64 (*.f64 (cbrt.f64 (neg.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))) (pow.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 2/3)) g)
(fma.f64 1 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (neg.f64 g))
(-.f64 (neg.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) g)
(fma.f64 1 (neg.f64 g) (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(-.f64 (neg.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) g)
(fma.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 1 (neg.f64 g))
(-.f64 (neg.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) g)
(fma.f64 0 0 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(-.f64 (neg.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) g)
(fma.f64 1 0 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(-.f64 (neg.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) g)
(fma.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (neg.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (neg.f64 g))
(-.f64 (*.f64 (pow.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 2/3) (cbrt.f64 (neg.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) g)
(fma.f64 -1 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (neg.f64 g))
(-.f64 (neg.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) g)
(fma.f64 -1 g (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(-.f64 (neg.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) g)
(fma.f64 (neg.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (neg.f64 g))
(-.f64 (*.f64 (cbrt.f64 (neg.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))) (pow.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 2/3)) g)
(fma.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) -1 (neg.f64 g))
(-.f64 (neg.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) g)
(pow.f64 (pow.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 3) 1/3)
(-.f64 (neg.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) g)
(pow.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 1)
(-.f64 (neg.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) g)
(pow.f64 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) 3)
(-.f64 (neg.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) g)
(cbrt.f64 (pow.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 3))
(-.f64 (neg.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) g)
(neg.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))
(-.f64 (neg.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) g)
(neg.f64 (pow.f64 (neg.f64 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) 3))
(-.f64 (neg.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) g)
(if (!=.f64 (fma.f64 g (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2)) 0) (/.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) (pow.f64 g 3)) (neg.f64 (fma.f64 g (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2)))) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(if (!=.f64 (fma.f64 g (-.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (pow.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 2)) 0) (/.f64 (-.f64 (pow.f64 (neg.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) 3) (pow.f64 g 3)) (fma.f64 g (-.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (pow.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 2))) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) g))
(if (!=.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0) (/.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) (pow.f64 g 3)) (neg.f64 (fma.f64 g (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2)))) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(if (!=.f64 (neg.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) 0) (/.f64 (-.f64 (pow.f64 (neg.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) 3) (pow.f64 g 3)) (fma.f64 g (-.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (pow.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 2))) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) g))
(if (!=.f64 (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0) (/.f64 (-.f64 (pow.f64 g 2) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2)) (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(if (!=.f64 (-.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) 0) (/.f64 (-.f64 (*.f64 g g) (pow.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 2)) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g)) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) g))
(if (!=.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0) (*.f64 (+.f64 1 (/.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(if (!=.f64 (neg.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) 0) (*.f64 (neg.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (-.f64 (/.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) -1)) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) g))
(if (!=.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0) (/.f64 1 (/.f64 1 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(if (!=.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) g) 0) (/.f64 -1 (/.f64 1 (+.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) g))
(if (!=.f64 (neg.f64 g) 0) (*.f64 (neg.f64 g) (+.f64 1 (/.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (neg.f64 g)))) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(if (!=.f64 (neg.f64 g) 0) (*.f64 (neg.f64 g) (/.f64 (+.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) g)) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) g))
(if (!=.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 0) (/.f64 (pow.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 3) (pow.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 2)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(if (!=.f64 (+.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) 0) (/.f64 (neg.f64 (pow.f64 (+.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) 3)) (pow.f64 (+.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) 2)) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) g))
(if (!=.f64 (pow.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 2) 0) (/.f64 (pow.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 3) (pow.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 2)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(if (!=.f64 (pow.f64 (+.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) 2) 0) (/.f64 (neg.f64 (pow.f64 (+.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) 3)) (pow.f64 (+.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) 2)) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) g))
(if (!=.f64 0 0) (/.f64 (pow.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 3) (pow.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 2)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(if (!=.f64 0 0) (/.f64 (neg.f64 (pow.f64 (+.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) 3)) (pow.f64 (+.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) 2)) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) g))
(if (!=.f64 (neg.f64 g) 0) (/.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) (pow.f64 g 3)) (neg.f64 (fma.f64 g (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2)))) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(if (!=.f64 (neg.f64 g) 0) (/.f64 (-.f64 (pow.f64 (neg.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) 3) (pow.f64 g 3)) (fma.f64 g (-.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (pow.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 2))) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) g))
(if (!=.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 0) (/.f64 (neg.f64 (pow.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 2)) (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(if (!=.f64 (+.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) 0) (/.f64 (neg.f64 (pow.f64 (+.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) 2)) (+.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g)) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) g))
(if (!=.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 0) (/.f64 (-.f64 (pow.f64 g 2) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2)) (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(if (!=.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) 0) (/.f64 (-.f64 (*.f64 g g) (pow.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 2)) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g)) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) g))
(if (!=.f64 g 0) (/.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) (pow.f64 g 3)) (neg.f64 (fma.f64 g (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2)))) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(if (!=.f64 g 0) (/.f64 (-.f64 (pow.f64 (neg.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) 3) (pow.f64 g 3)) (fma.f64 g (-.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (pow.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 2))) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) g))
(if (!=.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0) (/.f64 (-.f64 (neg.f64 (pow.f64 g 3)) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3)) (+.f64 (pow.f64 g 2) (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) (*.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(if (!=.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 0) (/.f64 (-.f64 (pow.f64 (neg.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) 3) (pow.f64 g 3)) (fma.f64 g (-.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (pow.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 2))) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) g))
(if (!=.f64 (+.f64 (pow.f64 g 2) (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) (*.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) 0) (/.f64 (-.f64 (neg.f64 (pow.f64 g 3)) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3)) (+.f64 (pow.f64 g 2) (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) (*.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(if (!=.f64 (fma.f64 g (-.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (pow.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 2)) 0) (/.f64 (-.f64 (pow.f64 (neg.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) 3) (pow.f64 g 3)) (fma.f64 g (-.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (pow.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 2))) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) g))
(if (!=.f64 (neg.f64 g) 0) (/.f64 (-.f64 (neg.f64 (pow.f64 g 3)) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3)) (+.f64 (pow.f64 g 2) (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) (*.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(if (!=.f64 (neg.f64 g) 0) (/.f64 (-.f64 (pow.f64 (neg.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) 3) (pow.f64 g 3)) (fma.f64 g (-.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (pow.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 2))) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) g))
(+.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (neg.f64 g))
(-.f64 (neg.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) g)
(+.f64 (neg.f64 g) (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(-.f64 (neg.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) g)
(+.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (neg.f64 (*.f64 (neg.f64 (cbrt.f64 g)) (neg.f64 (cbrt.f64 (pow.f64 g 2))))))
(-.f64 (neg.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (*.f64 (cbrt.f64 g) (cbrt.f64 (*.f64 g g))))
(+.f64 0 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(-.f64 (neg.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) g)
(+.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0)
(-.f64 (neg.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) g)

localize74.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
1.0b
(-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))
4.0b
(-.f64 (*.f64 g g) (*.f64 h h))
8.8b
(cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))))
26.5b
(sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))
Compiler

Compiled 140 to 53 computations (62.1% saved)

series52.0ms (0.1%)

Counts
1 → 14
Calls

6 calls:

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

Compiled 3070 to 2545 computations (17.1% saved)

rewrite1.6s (3.2%)

Algorithm
batch-egg-rewrite
Rules
62×egg-rr
Counts
1 → 62
Calls
Call 1
Inputs
(-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (neg.f64 (cbrt.f64 (pow.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (cbrt.f64 (pow.f64 g 2)) (*.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (-.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (cbrt.f64 g)))) (-.f64 (neg.f64 (cbrt.f64 g)) (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g)) (cbrt.f64 (pow.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 2)) (cbrt.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 0 (+.f64 (cbrt.f64 (pow.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 2)) (*.f64 0 (cbrt.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (cbrt.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (+.f64 (cbrt.f64 (pow.f64 g 2)) (*.f64 (neg.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (cbrt.f64 g)))) (-.f64 (neg.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (cbrt.f64 g)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 0 (-.f64 (cbrt.f64 (pow.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 2)) (*.f64 0 (cbrt.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))))) (+.f64 0 (cbrt.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (cbrt.f64 (pow.f64 g 2)) (-.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (*.f64 (neg.f64 (cbrt.f64 g)) (neg.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (-.f64 (neg.f64 (cbrt.f64 g)) (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (-.f64 (cbrt.f64 (pow.f64 g 2)) (*.f64 (neg.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (neg.f64 (cbrt.f64 g))))) (+.f64 (neg.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (neg.f64 (cbrt.f64 g))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (neg.f64 g) (*.f64 (neg.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (neg.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (/.f64 1 -1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (neg.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3)) (neg.f64 g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (neg.f64 g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (neg.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (neg.f64 g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 g) (neg.f64 (cbrt.f64 (pow.f64 g 2))) (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (cbrt.f64 g)) (cbrt.f64 (pow.f64 g 2)) (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 g 2)) (neg.f64 (cbrt.f64 g)) (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (neg.f64 g) (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (neg.f64 g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 g) 1 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 0 0 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 0 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (neg.f64 g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 g (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (neg.f64 g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 g -1 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g) 1)))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g) 3))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (pow.f64 (neg.f64 (cbrt.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (fma.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (pow.f64 g 2)) 0) (/.f64 (-.f64 (neg.f64 (pow.f64 g 3)) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3)) (fma.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (pow.f64 g 2))) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (neg.f64 g) 0) (/.f64 (-.f64 (neg.f64 (pow.f64 g 3)) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3)) (fma.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (pow.f64 g 2))) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 0) (/.f64 (-.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) (pow.f64 g 2)) (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (neg.f64 g) 0) (*.f64 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g) (neg.f64 g)) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g) 0) (/.f64 1 (/.f64 1 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0) (*.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (+.f64 1 (/.f64 (neg.f64 g) (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0) (/.f64 (pow.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g) 3) (pow.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 2)) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 0 0) (/.f64 (pow.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g) 3) (pow.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 2)) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0) (/.f64 (-.f64 (neg.f64 (pow.f64 g 3)) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3)) (fma.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (pow.f64 g 2))) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (pow.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 2) 0) (/.f64 (pow.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g) 3) (pow.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 2)) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0) (/.f64 (-.f64 (neg.f64 (pow.f64 g 3)) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3)) (fma.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (pow.f64 g 2))) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0) (/.f64 (neg.f64 (pow.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 2)) (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0) (/.f64 (-.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) (pow.f64 g 2)) (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 g 0) (/.f64 (-.f64 (neg.f64 (pow.f64 g 3)) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3)) (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) (+.f64 (pow.f64 g 2) (*.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g)))) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) (+.f64 (pow.f64 g 2) (*.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))) 0) (/.f64 (-.f64 (neg.f64 (pow.f64 g 3)) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3)) (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) (+.f64 (pow.f64 g 2) (*.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g)))) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0) (/.f64 (-.f64 (neg.f64 (pow.f64 g 3)) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3)) (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) (+.f64 (pow.f64 g 2) (*.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g)))) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 g) (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (neg.f64 g))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 g) (neg.f64 (*.f64 (neg.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (neg.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g) 0)))))

simplify2.4s (4.9%)

Algorithm
egglog
Counts
76 → 110
Calls
Call 1
Inputs
(*.f64 -1 (sqrt.f64 (neg.f64 (pow.f64 h 2))))
(+.f64 (*.f64 -1 (sqrt.f64 (neg.f64 (pow.f64 h 2)))) (*.f64 -1 g))
(*.f64 -2 g)
(+.f64 (*.f64 -2 g) (*.f64 1/2 (/.f64 (pow.f64 h 2) g)))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2) (pow.f64 (/.f64 1 g) 3))) (+.f64 (*.f64 -2 g) (*.f64 1/2 (/.f64 (pow.f64 h 2) g))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2) (pow.f64 (/.f64 1 g) 3))) (+.f64 (*.f64 -2 g) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 1/4 (*.f64 (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2) (*.f64 (pow.f64 (/.f64 1 g) 5) (pow.f64 h 2)))))))
(*.f64 -1/2 (/.f64 (pow.f64 h 2) g))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 (/.f64 -1 g) 3) (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2))) (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 (/.f64 -1 g) 3) (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 1/4 (*.f64 (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2) (*.f64 (pow.f64 (/.f64 -1 g) 5) (pow.f64 h 2))))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 (/.f64 -1 g) 3) (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 (/.f64 -1 g) 7) (+.f64 (pow.f64 (*.f64 -1/2 (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2)) 2) (*.f64 1/4 (*.f64 (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2) (pow.f64 (pow.f64 h 2) 2)))))) (*.f64 1/4 (*.f64 (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2) (*.f64 (pow.f64 (/.f64 -1 g) 5) (pow.f64 h 2)))))))
(*.f64 -1 (+.f64 g (sqrt.f64 (pow.f64 g 2))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) (sqrt.f64 (pow.f64 g 2)))) (*.f64 -1 (+.f64 g (sqrt.f64 (pow.f64 g 2)))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) (sqrt.f64 (pow.f64 g 2)))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 h 4) (pow.f64 (/.f64 -1/2 (sqrt.f64 (pow.f64 g 2))) 2)) (sqrt.f64 (pow.f64 g 2)))) (*.f64 -1 (+.f64 g (sqrt.f64 (pow.f64 g 2))))))
(+.f64 (*.f64 1/4 (/.f64 (*.f64 (pow.f64 h 6) (pow.f64 (/.f64 -1/2 (sqrt.f64 (pow.f64 g 2))) 2)) (*.f64 (sqrt.f64 (pow.f64 g 2)) (pow.f64 (sqrt.f64 (pow.f64 g 2)) 2)))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) (sqrt.f64 (pow.f64 g 2)))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 h 4) (pow.f64 (/.f64 -1/2 (sqrt.f64 (pow.f64 g 2))) 2)) (sqrt.f64 (pow.f64 g 2)))) (*.f64 -1 (+.f64 g (sqrt.f64 (pow.f64 g 2)))))))
(*.f64 (cbrt.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (neg.f64 (cbrt.f64 (pow.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 2))))
(*.f64 (+.f64 (cbrt.f64 (pow.f64 g 2)) (*.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (-.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (cbrt.f64 g)))) (-.f64 (neg.f64 (cbrt.f64 g)) (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))
(*.f64 (cbrt.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g)) (cbrt.f64 (pow.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 2)))
(*.f64 (cbrt.f64 (pow.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 2)) (cbrt.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g)))
(*.f64 (+.f64 0 (+.f64 (cbrt.f64 (pow.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 2)) (*.f64 0 (cbrt.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (cbrt.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g)))
(*.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (+.f64 (cbrt.f64 (pow.f64 g 2)) (*.f64 (neg.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (cbrt.f64 g)))) (-.f64 (neg.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (cbrt.f64 g)))
(*.f64 (+.f64 0 (-.f64 (cbrt.f64 (pow.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 2)) (*.f64 0 (cbrt.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))))) (+.f64 0 (cbrt.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))))
(*.f64 (+.f64 (cbrt.f64 (pow.f64 g 2)) (-.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (*.f64 (neg.f64 (cbrt.f64 g)) (neg.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (-.f64 (neg.f64 (cbrt.f64 g)) (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))
(*.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (-.f64 (cbrt.f64 (pow.f64 g 2)) (*.f64 (neg.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (neg.f64 (cbrt.f64 g))))) (+.f64 (neg.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (neg.f64 (cbrt.f64 g))))
(*.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g) 1)
(*.f64 1 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))
(*.f64 -1 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(*.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) -1)
(-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g)
(-.f64 (neg.f64 g) (*.f64 (neg.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (neg.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3))))
(-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(-.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g) 0)
(-.f64 0 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(/.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (/.f64 1 -1))
(/.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g) 1)
(fma.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (neg.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3)) (neg.f64 g))
(fma.f64 (neg.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (neg.f64 g))
(fma.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (neg.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (neg.f64 g))
(fma.f64 (cbrt.f64 g) (neg.f64 (cbrt.f64 (pow.f64 g 2))) (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(fma.f64 (neg.f64 (cbrt.f64 g)) (cbrt.f64 (pow.f64 g 2)) (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(fma.f64 (cbrt.f64 (pow.f64 g 2)) (neg.f64 (cbrt.f64 g)) (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(fma.f64 1 (neg.f64 g) (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(fma.f64 1 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (neg.f64 g))
(fma.f64 (neg.f64 g) 1 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(fma.f64 0 0 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))
(fma.f64 1 0 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))
(fma.f64 (neg.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (neg.f64 g))
(fma.f64 -1 g (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(fma.f64 -1 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (neg.f64 g))
(fma.f64 g -1 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(pow.f64 (pow.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g) 3) 1/3)
(pow.f64 (cbrt.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g)) 3)
(pow.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g) 1)
(cbrt.f64 (pow.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g) 3))
(neg.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(neg.f64 (pow.f64 (neg.f64 (cbrt.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))) 3))
(if (!=.f64 (fma.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (pow.f64 g 2)) 0) (/.f64 (-.f64 (neg.f64 (pow.f64 g 3)) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3)) (fma.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (pow.f64 g 2))) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))
(if (!=.f64 (neg.f64 g) 0) (/.f64 (-.f64 (neg.f64 (pow.f64 g 3)) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3)) (fma.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (pow.f64 g 2))) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))
(if (!=.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 0) (/.f64 (-.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) (pow.f64 g 2)) (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))
(if (!=.f64 (neg.f64 g) 0) (*.f64 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g) (neg.f64 g)) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))
(if (!=.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g) 0) (/.f64 1 (/.f64 1 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))
(if (!=.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0) (*.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (+.f64 1 (/.f64 (neg.f64 g) (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))
(if (!=.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0) (/.f64 (pow.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g) 3) (pow.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 2)) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))
(if (!=.f64 0 0) (/.f64 (pow.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g) 3) (pow.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 2)) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))
(if (!=.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0) (/.f64 (-.f64 (neg.f64 (pow.f64 g 3)) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3)) (fma.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (pow.f64 g 2))) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))
(if (!=.f64 (pow.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 2) 0) (/.f64 (pow.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g) 3) (pow.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 2)) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))
(if (!=.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0) (/.f64 (-.f64 (neg.f64 (pow.f64 g 3)) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3)) (fma.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (pow.f64 g 2))) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))
(if (!=.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0) (/.f64 (neg.f64 (pow.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 2)) (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))
(if (!=.f64 (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0) (/.f64 (-.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) (pow.f64 g 2)) (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))
(if (!=.f64 g 0) (/.f64 (-.f64 (neg.f64 (pow.f64 g 3)) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3)) (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) (+.f64 (pow.f64 g 2) (*.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g)))) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))
(if (!=.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) (+.f64 (pow.f64 g 2) (*.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))) 0) (/.f64 (-.f64 (neg.f64 (pow.f64 g 3)) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3)) (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) (+.f64 (pow.f64 g 2) (*.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g)))) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))
(if (!=.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0) (/.f64 (-.f64 (neg.f64 (pow.f64 g 3)) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3)) (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) (+.f64 (pow.f64 g 2) (*.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g)))) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))
(+.f64 (neg.f64 g) (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(+.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (neg.f64 g))
(+.f64 (neg.f64 g) (neg.f64 (*.f64 (neg.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (neg.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3)))))
(+.f64 0 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))
(+.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g) 0)
Outputs
(*.f64 -1 (sqrt.f64 (neg.f64 (pow.f64 h 2))))
(neg.f64 (sqrt.f64 (neg.f64 (*.f64 h h))))
(+.f64 (*.f64 -1 (sqrt.f64 (neg.f64 (pow.f64 h 2)))) (*.f64 -1 g))
(-.f64 (neg.f64 g) (sqrt.f64 (neg.f64 (*.f64 h h))))
(*.f64 -2 g)
(*.f64 g -2)
(+.f64 (*.f64 -2 g) (*.f64 1/2 (/.f64 (pow.f64 h 2) g)))
(fma.f64 -2 g (/.f64 (*.f64 (*.f64 h h) 1/2) g))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2) (pow.f64 (/.f64 1 g) 3))) (+.f64 (*.f64 -2 g) (*.f64 1/2 (/.f64 (pow.f64 h 2) g))))
(fma.f64 1/2 (/.f64 (*.f64 1/4 (pow.f64 h 4)) (pow.f64 g 3)) (fma.f64 -2 g (/.f64 (*.f64 (*.f64 h h) 1/2) g)))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2) (pow.f64 (/.f64 1 g) 3))) (+.f64 (*.f64 -2 g) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 1/4 (*.f64 (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2) (*.f64 (pow.f64 (/.f64 1 g) 5) (pow.f64 h 2)))))))
(fma.f64 1/2 (/.f64 (*.f64 1/4 (pow.f64 h 4)) (pow.f64 g 3)) (fma.f64 -2 g (fma.f64 1/2 (/.f64 (*.f64 h h) g) (*.f64 1/4 (*.f64 (*.f64 1/4 (pow.f64 h 4)) (*.f64 (pow.f64 (/.f64 1 g) 5) (*.f64 h h)))))))
(*.f64 -1/2 (/.f64 (pow.f64 h 2) g))
(/.f64 (*.f64 -1/2 (*.f64 h h)) g)
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 (/.f64 -1 g) 3) (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2))) (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)))
(fma.f64 1/2 (*.f64 (pow.f64 (/.f64 -1 g) 3) (*.f64 1/4 (pow.f64 h 4))) (/.f64 (*.f64 -1/2 (*.f64 h h)) g))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 (/.f64 -1 g) 3) (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 1/4 (*.f64 (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2) (*.f64 (pow.f64 (/.f64 -1 g) 5) (pow.f64 h 2))))))
(fma.f64 1/2 (*.f64 (pow.f64 (/.f64 -1 g) 3) (*.f64 1/4 (pow.f64 h 4))) (fma.f64 -1/2 (/.f64 (*.f64 h h) g) (*.f64 1/4 (*.f64 (*.f64 1/4 (pow.f64 h 4)) (*.f64 (pow.f64 (/.f64 -1 g) 5) (*.f64 h h))))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 (/.f64 -1 g) 3) (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 (/.f64 -1 g) 7) (+.f64 (pow.f64 (*.f64 -1/2 (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2)) 2) (*.f64 1/4 (*.f64 (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2) (pow.f64 (pow.f64 h 2) 2)))))) (*.f64 1/4 (*.f64 (pow.f64 (*.f64 -1/2 (pow.f64 h 2)) 2) (*.f64 (pow.f64 (/.f64 -1 g) 5) (pow.f64 h 2)))))))
(fma.f64 1/2 (*.f64 (pow.f64 (/.f64 -1 g) 3) (*.f64 1/4 (pow.f64 h 4))) (fma.f64 -1/2 (/.f64 (*.f64 h h) g) (fma.f64 1/2 (*.f64 (pow.f64 (/.f64 -1 g) 7) (+.f64 (pow.f64 (*.f64 -1/2 (*.f64 1/4 (pow.f64 h 4))) 2) (*.f64 1/4 (*.f64 (*.f64 1/4 (pow.f64 h 4)) (pow.f64 h 4))))) (*.f64 1/4 (*.f64 (*.f64 1/4 (pow.f64 h 4)) (*.f64 (pow.f64 (/.f64 -1 g) 5) (*.f64 h h)))))))
(*.f64 -1 (+.f64 g (sqrt.f64 (pow.f64 g 2))))
(neg.f64 (+.f64 g (fabs.f64 g)))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) (sqrt.f64 (pow.f64 g 2)))) (*.f64 -1 (+.f64 g (sqrt.f64 (pow.f64 g 2)))))
(-.f64 (/.f64 (*.f64 h h) (*.f64 2 (fabs.f64 g))) (+.f64 g (fabs.f64 g)))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) (sqrt.f64 (pow.f64 g 2)))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 h 4) (pow.f64 (/.f64 -1/2 (sqrt.f64 (pow.f64 g 2))) 2)) (sqrt.f64 (pow.f64 g 2)))) (*.f64 -1 (+.f64 g (sqrt.f64 (pow.f64 g 2))))))
(-.f64 (/.f64 (+.f64 (*.f64 1/2 (*.f64 h h)) (/.f64 (*.f64 (pow.f64 h 4) (pow.f64 (/.f64 -1/2 (fabs.f64 g)) 2)) 2)) (fabs.f64 g)) (+.f64 g (fabs.f64 g)))
(+.f64 (*.f64 1/4 (/.f64 (*.f64 (pow.f64 h 6) (pow.f64 (/.f64 -1/2 (sqrt.f64 (pow.f64 g 2))) 2)) (*.f64 (sqrt.f64 (pow.f64 g 2)) (pow.f64 (sqrt.f64 (pow.f64 g 2)) 2)))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) (sqrt.f64 (pow.f64 g 2)))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 h 4) (pow.f64 (/.f64 -1/2 (sqrt.f64 (pow.f64 g 2))) 2)) (sqrt.f64 (pow.f64 g 2)))) (*.f64 -1 (+.f64 g (sqrt.f64 (pow.f64 g 2)))))))
(fma.f64 1/4 (/.f64 (*.f64 (pow.f64 h 6) (pow.f64 (/.f64 -1/2 (fabs.f64 g)) 2)) (pow.f64 (fabs.f64 g) 3)) (-.f64 (/.f64 (+.f64 (*.f64 1/2 (*.f64 h h)) (/.f64 (*.f64 (pow.f64 h 4) (pow.f64 (/.f64 -1/2 (fabs.f64 g)) 2)) 2)) (fabs.f64 g)) (+.f64 g (fabs.f64 g))))
(*.f64 (cbrt.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (neg.f64 (cbrt.f64 (pow.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 2))))
(-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))
(*.f64 (+.f64 (cbrt.f64 (pow.f64 g 2)) (*.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (-.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (cbrt.f64 g)))) (-.f64 (neg.f64 (cbrt.f64 g)) (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))
(*.f64 (+.f64 (cbrt.f64 (*.f64 g g)) (*.f64 (-.f64 (cbrt.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (cbrt.f64 g)) (cbrt.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) (-.f64 (neg.f64 (cbrt.f64 g)) (cbrt.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))))
(*.f64 (cbrt.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g)) (cbrt.f64 (pow.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 2)))
(-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))
(*.f64 (cbrt.f64 (pow.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 2)) (cbrt.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g)))
(-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))
(*.f64 (+.f64 0 (+.f64 (cbrt.f64 (pow.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 2)) (*.f64 0 (cbrt.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (cbrt.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g)))
(-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))
(*.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (+.f64 (cbrt.f64 (pow.f64 g 2)) (*.f64 (neg.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (cbrt.f64 g)))) (-.f64 (neg.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (cbrt.f64 g)))
(*.f64 (+.f64 (cbrt.f64 (*.f64 g g)) (-.f64 (pow.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 2/3) (*.f64 (cbrt.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (cbrt.f64 g)))) (-.f64 (neg.f64 (cbrt.f64 g)) (cbrt.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))))
(*.f64 (+.f64 0 (-.f64 (cbrt.f64 (pow.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 2)) (*.f64 0 (cbrt.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))))) (+.f64 0 (cbrt.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))))
(-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))
(*.f64 (+.f64 (cbrt.f64 (pow.f64 g 2)) (-.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (*.f64 (neg.f64 (cbrt.f64 g)) (neg.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (-.f64 (neg.f64 (cbrt.f64 g)) (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))
(*.f64 (+.f64 (cbrt.f64 (*.f64 g g)) (-.f64 (pow.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 2/3) (*.f64 (cbrt.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (cbrt.f64 g)))) (-.f64 (neg.f64 (cbrt.f64 g)) (cbrt.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))))
(*.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (-.f64 (cbrt.f64 (pow.f64 g 2)) (*.f64 (neg.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (neg.f64 (cbrt.f64 g))))) (+.f64 (neg.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (neg.f64 (cbrt.f64 g))))
(*.f64 (+.f64 (cbrt.f64 (*.f64 g g)) (-.f64 (pow.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 2/3) (*.f64 (cbrt.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (cbrt.f64 g)))) (-.f64 (neg.f64 (cbrt.f64 g)) (cbrt.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))))
(*.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g) 1)
(-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))
(*.f64 1 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))
(-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))
(*.f64 -1 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))
(*.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) -1)
(-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))
(-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g)
(-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))
(-.f64 (neg.f64 g) (*.f64 (neg.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (neg.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3))))
(-.f64 (neg.f64 g) (*.f64 (cbrt.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (pow.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 2/3)))
(-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))
(-.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g) 0)
(-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))
(-.f64 0 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))
(/.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (/.f64 1 -1))
(-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))
(/.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g) 1)
(-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))
(fma.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (neg.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3)) (neg.f64 g))
(-.f64 (neg.f64 g) (*.f64 (cbrt.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (pow.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 2/3)))
(fma.f64 (neg.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (neg.f64 g))
(-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))
(fma.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (neg.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (neg.f64 g))
(-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))
(fma.f64 (cbrt.f64 g) (neg.f64 (cbrt.f64 (pow.f64 g 2))) (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(-.f64 (*.f64 (neg.f64 (cbrt.f64 g)) (cbrt.f64 (*.f64 g g))) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))
(fma.f64 (neg.f64 (cbrt.f64 g)) (cbrt.f64 (pow.f64 g 2)) (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(-.f64 (*.f64 (neg.f64 (cbrt.f64 g)) (cbrt.f64 (*.f64 g g))) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))
(fma.f64 (cbrt.f64 (pow.f64 g 2)) (neg.f64 (cbrt.f64 g)) (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(-.f64 (*.f64 (cbrt.f64 (*.f64 g g)) (neg.f64 (cbrt.f64 g))) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))
(fma.f64 1 (neg.f64 g) (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))
(fma.f64 1 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (neg.f64 g))
(-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))
(fma.f64 (neg.f64 g) 1 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))
(fma.f64 0 0 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))
(-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))
(fma.f64 1 0 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))
(-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))
(fma.f64 (neg.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (neg.f64 g))
(-.f64 (neg.f64 g) (*.f64 (cbrt.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (pow.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 2/3)))
(fma.f64 -1 g (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))
(fma.f64 -1 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (neg.f64 g))
(-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))
(fma.f64 g -1 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))
(pow.f64 (pow.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g) 3) 1/3)
(-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))
(pow.f64 (cbrt.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g)) 3)
(-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))
(pow.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g) 1)
(-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))
(cbrt.f64 (pow.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g) 3))
(-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))
(neg.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))
(neg.f64 (pow.f64 (neg.f64 (cbrt.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))) 3))
(-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))
(if (!=.f64 (fma.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (pow.f64 g 2)) 0) (/.f64 (-.f64 (neg.f64 (pow.f64 g 3)) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3)) (fma.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (pow.f64 g 2))) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))
(if (!=.f64 (fma.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 g g)) 0) (/.f64 (-.f64 (pow.f64 (neg.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) 3) (pow.f64 g 3)) (fma.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 g g))) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))
(if (!=.f64 (neg.f64 g) 0) (/.f64 (-.f64 (neg.f64 (pow.f64 g 3)) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3)) (fma.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (pow.f64 g 2))) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))
(if (!=.f64 (neg.f64 g) 0) (/.f64 (-.f64 (pow.f64 (neg.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) 3) (pow.f64 g 3)) (fma.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 g g))) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))
(if (!=.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 0) (/.f64 (-.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) (pow.f64 g 2)) (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))
(if (!=.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) 0) (/.f64 (-.f64 (pow.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 2) (*.f64 g g)) (-.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))
(if (!=.f64 (neg.f64 g) 0) (*.f64 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g) (neg.f64 g)) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))
(if (!=.f64 (neg.f64 g) 0) (*.f64 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) g) (neg.f64 g)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))
(if (!=.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g) 0) (/.f64 1 (/.f64 1 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))
(if (!=.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) 0) (/.f64 -1 (/.f64 1 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))
(if (!=.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0) (*.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (+.f64 1 (/.f64 (neg.f64 g) (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))
(if (!=.f64 (neg.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) 0) (*.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) (neg.f64 (-.f64 (/.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) -1))) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))
(if (!=.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0) (/.f64 (pow.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g) 3) (pow.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 2)) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))
(if (!=.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) 0) (/.f64 (pow.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) 3) (neg.f64 (pow.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) 2))) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))
(if (!=.f64 0 0) (/.f64 (pow.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g) 3) (pow.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 2)) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))
(if (!=.f64 0 0) (/.f64 (pow.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) 3) (neg.f64 (pow.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) 2))) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))
(if (!=.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0) (/.f64 (-.f64 (neg.f64 (pow.f64 g 3)) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3)) (fma.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (pow.f64 g 2))) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))
(if (!=.f64 (neg.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) 0) (/.f64 (-.f64 (pow.f64 (neg.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) 3) (pow.f64 g 3)) (fma.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 g g))) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))
(if (!=.f64 (pow.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 2) 0) (/.f64 (pow.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g) 3) (pow.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 2)) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))
(if (!=.f64 (pow.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) 2) 0) (/.f64 (pow.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) 3) (neg.f64 (pow.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) 2))) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))
(if (!=.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0) (/.f64 (-.f64 (neg.f64 (pow.f64 g 3)) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3)) (fma.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (pow.f64 g 2))) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))
(if (!=.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 0) (/.f64 (-.f64 (pow.f64 (neg.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) 3) (pow.f64 g 3)) (fma.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 g g))) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))
(if (!=.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0) (/.f64 (neg.f64 (pow.f64 (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 2)) (+.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))
(if (!=.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) 0) (/.f64 (neg.f64 (pow.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) 2)) (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))
(if (!=.f64 (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0) (/.f64 (-.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) (pow.f64 g 2)) (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))
(if (!=.f64 (-.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) 0) (/.f64 (-.f64 (pow.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 2) (*.f64 g g)) (-.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))
(if (!=.f64 g 0) (/.f64 (-.f64 (neg.f64 (pow.f64 g 3)) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3)) (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) (+.f64 (pow.f64 g 2) (*.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g)))) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))
(if (!=.f64 g 0) (/.f64 (-.f64 (pow.f64 (neg.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) 3) (pow.f64 g 3)) (fma.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 g g))) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))
(if (!=.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) (+.f64 (pow.f64 g 2) (*.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))) 0) (/.f64 (-.f64 (neg.f64 (pow.f64 g 3)) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3)) (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) (+.f64 (pow.f64 g 2) (*.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g)))) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))
(if (!=.f64 (fma.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 g g)) 0) (/.f64 (-.f64 (pow.f64 (neg.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) 3) (pow.f64 g 3)) (fma.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 g g))) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))
(if (!=.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0) (/.f64 (-.f64 (neg.f64 (pow.f64 g 3)) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3)) (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) (+.f64 (pow.f64 g 2) (*.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g)))) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))
(if (!=.f64 (neg.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) 0) (/.f64 (-.f64 (pow.f64 (neg.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) 3) (pow.f64 g 3)) (fma.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 g g))) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))
(+.f64 (neg.f64 g) (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))
(+.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (neg.f64 g))
(-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))
(+.f64 (neg.f64 g) (neg.f64 (*.f64 (neg.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (neg.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3)))))
(-.f64 (neg.f64 g) (*.f64 (cbrt.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (pow.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 2/3)))
(+.f64 0 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))
(-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))
(+.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g) 0)
(-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))

localize89.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.5b
(cbrt.f64 (/.f64 1/2 a))
1.0b
(-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
4.0b
(-.f64 (pow.f64 g 2) (pow.f64 h 2))
26.5b
(sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
Compiler

Compiled 108 to 75 computations (30.6% saved)

series27.0ms (0.1%)

Counts
1 → 0
Calls

3 calls:

TimeVariablePointExpression
0.0ms
a
@0
(cbrt.f64 (/.f64 1/2 a))
0.0ms
a
@inf
(cbrt.f64 (/.f64 1/2 a))
0.0ms
a
@-inf
(cbrt.f64 (/.f64 1/2 a))
Compiler

Compiled 1650 to 1310 computations (20.6% saved)

rewrite1.6s (3.4%)

Algorithm
batch-egg-rewrite
Rules
77×egg-rr
Counts
1 → 77
Calls
Call 1
Inputs
(cbrt.f64 (/.f64 1/2 a))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sqrt.f64 1/2)) (/.f64 1 (cbrt.f64 (*.f64 a (sqrt.f64 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 1/2 a)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (cbrt.f64 (/.f64 1/2 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (pow.f64 a -1))) (cbrt.f64 (/.f64 1/2 (cbrt.f64 (pow.f64 a 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (cbrt.f64 (/.f64 1/2 a)))) (cbrt.f64 (pow.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (cbrt.f64 (/.f64 1/2 a)))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (sqrt.f64 1/2) (cbrt.f64 a))) (cbrt.f64 (/.f64 (sqrt.f64 1/2) (cbrt.f64 (pow.f64 a 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 1/2)) (cbrt.f64 (/.f64 (cbrt.f64 1/4) a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (/.f64 1/2 a))) (cbrt.f64 (cbrt.f64 (/.f64 1/4 (pow.f64 a 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (cbrt.f64 (/.f64 1/2 a)))) (*.f64 (cbrt.f64 (cbrt.f64 (cbrt.f64 (/.f64 1/4 (pow.f64 a 2))))) (cbrt.f64 (cbrt.f64 (/.f64 1/4 (pow.f64 a 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (cbrt.f64 (/.f64 1/4 (pow.f64 a 2))))) (*.f64 (cbrt.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (cbrt.f64 (/.f64 1/2 a))))) (cbrt.f64 (cbrt.f64 (/.f64 1/2 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (cbrt.f64 (/.f64 1/4 (pow.f64 a 2)))) (cbrt.f64 (cbrt.f64 (cbrt.f64 (/.f64 1/2 a))))) (cbrt.f64 (cbrt.f64 (cbrt.f64 (/.f64 1/4 (pow.f64 a 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (/.f64 1/4 (pow.f64 a 2)))) (cbrt.f64 (cbrt.f64 (/.f64 1/2 a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (cbrt.f64 (/.f64 1/2 a))) (cbrt.f64 (cbrt.f64 (cbrt.f64 (/.f64 1/4 (pow.f64 a 2)))))) (cbrt.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (cbrt.f64 (/.f64 1/2 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (cbrt.f64 1/2)) (cbrt.f64 (cbrt.f64 (/.f64 1/4 (pow.f64 a 2))))) (cbrt.f64 (cbrt.f64 (pow.f64 a -1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (cbrt.f64 (/.f64 1/4 (pow.f64 a 2)))) (cbrt.f64 (cbrt.f64 1/2))) (cbrt.f64 (cbrt.f64 (pow.f64 a -1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 1/2 (cbrt.f64 (pow.f64 a 2)))) (cbrt.f64 (cbrt.f64 (pow.f64 a -1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (cbrt.f64 (/.f64 -1/2 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (/.f64 1/2 a)) -1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sqrt.f64 1/2)) (cbrt.f64 (/.f64 (sqrt.f64 1/2) a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 -1/2) (/.f64 -1 (cbrt.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 a -1)) (cbrt.f64 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 1/2 (cbrt.f64 a))) (cbrt.f64 (/.f64 1 (cbrt.f64 (pow.f64 a 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (/.f64 1/2 a)) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 1/2) (cbrt.f64 (pow.f64 a -1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 1/2)) (/.f64 1 (cbrt.f64 (/.f64 a (cbrt.f64 1/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 0 (neg.f64 (cbrt.f64 a))) (cbrt.f64 (/.f64 -1/2 a)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (cbrt.f64 (/.f64 -1/2 a)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (cbrt.f64 (sqrt.f64 1/2))) (neg.f64 (cbrt.f64 (*.f64 a (sqrt.f64 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (sqrt.f64 1/2)) (cbrt.f64 (*.f64 a (sqrt.f64 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (cbrt.f64 (/.f64 1/2 (cbrt.f64 (pow.f64 a 2))))) (neg.f64 (cbrt.f64 (cbrt.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (cbrt.f64 (/.f64 1/2 (cbrt.f64 a)))) (neg.f64 (cbrt.f64 (cbrt.f64 (pow.f64 a 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (/.f64 1/2 a)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (/.f64 -1/2 (cbrt.f64 (pow.f64 a 2)))) (cbrt.f64 (neg.f64 (cbrt.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1 (cbrt.f64 (*.f64 a -2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 1/2) (cbrt.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (*.f64 (cbrt.f64 (/.f64 1/2 a)) (cbrt.f64 1/4))) (cbrt.f64 (cbrt.f64 (pow.f64 a 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (/.f64 (sqrt.f64 1/2) (*.f64 (cbrt.f64 a) (sqrt.f64 2)))) (cbrt.f64 (cbrt.f64 (pow.f64 a 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (/.f64 1/2 (cbrt.f64 a))) (cbrt.f64 (cbrt.f64 (pow.f64 a 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 -1/2) (neg.f64 (cbrt.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1 (neg.f64 (cbrt.f64 (+.f64 a a))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (cbrt.f64 -1/2)) (cbrt.f64 (/.f64 a (cbrt.f64 -1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (cbrt.f64 1/2)) (cbrt.f64 (/.f64 a (cbrt.f64 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (neg.f64 (sqrt.f64 1/2))) (cbrt.f64 (*.f64 a (neg.f64 (sqrt.f64 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (/.f64 -1/2 (cbrt.f64 a))) (cbrt.f64 (neg.f64 (cbrt.f64 (pow.f64 a 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cbrt.f64 (cbrt.f64 1/2)) (cbrt.f64 (cbrt.f64 (/.f64 1/4 (pow.f64 a 2))))) (cbrt.f64 (cbrt.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cbrt.f64 (cbrt.f64 (/.f64 1/4 (pow.f64 a 2)))) (cbrt.f64 (cbrt.f64 1/2))) (cbrt.f64 (cbrt.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (/.f64 1/2 (cbrt.f64 (pow.f64 a 2)))) (cbrt.f64 (cbrt.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (neg.f64 (cbrt.f64 (cbrt.f64 1/2))) 3) (pow.f64 (neg.f64 (cbrt.f64 (cbrt.f64 a))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (cbrt.f64 (pow.f64 a -1))) (cbrt.f64 (*.f64 2 (cbrt.f64 (pow.f64 a 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (*.f64 (cbrt.f64 (cbrt.f64 1/2)) (pow.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (cbrt.f64 (/.f64 1/2 a)))) 2))) (cbrt.f64 (cbrt.f64 (cbrt.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (cbrt.f64 (/.f64 (/.f64 1/8 (pow.f64 a 2)) (cbrt.f64 a)))) (cbrt.f64 (cbrt.f64 (cbrt.f64 (pow.f64 a 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (cbrt.f64 (/.f64 (/.f64 1/8 a) (cbrt.f64 (pow.f64 a 2))))) (cbrt.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (pow.f64 a 2)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 (cbrt.f64 (cbrt.f64 1/2)) (cbrt.f64 (cbrt.f64 (/.f64 1/4 (pow.f64 a 2)))))) (neg.f64 (cbrt.f64 (cbrt.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 (cbrt.f64 (cbrt.f64 (/.f64 1/4 (pow.f64 a 2)))) (cbrt.f64 (cbrt.f64 1/2)))) (neg.f64 (cbrt.f64 (cbrt.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (/.f64 -1/2 a)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (pow.f64 a -1)) (cbrt.f64 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (cbrt.f64 (+.f64 a a)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (cbrt.f64 (pow.f64 a -1))) (cbrt.f64 (*.f64 (cbrt.f64 (pow.f64 a 2)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (cbrt.f64 (cbrt.f64 1/2))) (neg.f64 (cbrt.f64 (/.f64 a (cbrt.f64 1/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1/2 a) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 1/2 a))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 1/2 a)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (+.f64 a a)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 1/2 a))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (cbrt.f64 (/.f64 -1/2 a)))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 -1 (cbrt.f64 (+.f64 a a))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (cbrt.f64 (/.f64 -1/2 a)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 (cbrt.f64 (/.f64 1/2 a)) -1))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 -1 (cbrt.f64 (/.f64 1/2 a))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (cbrt.f64 (cbrt.f64 1/4)) 0) (cbrt.f64 (/.f64 1/2 a)) (cbrt.f64 (/.f64 1/2 a)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (cbrt.f64 1/2) 0) (cbrt.f64 (/.f64 1/2 a)) (cbrt.f64 (/.f64 1/2 a)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (cbrt.f64 (sqrt.f64 1/2)) 0) (cbrt.f64 (/.f64 1/2 a)) (cbrt.f64 (/.f64 1/2 a)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (/.f64 1/2 a) 0) (/.f64 1 (pow.f64 (/.f64 1/2 a) -1/3)) (cbrt.f64 (/.f64 1/2 a)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (cbrt.f64 (/.f64 1/2 a)) 0) (/.f64 1 (pow.f64 (cbrt.f64 (/.f64 1/2 a)) -1)) (cbrt.f64 (/.f64 1/2 a)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (cbrt.f64 (cbrt.f64 (/.f64 1/2 a))) 0) (/.f64 1 (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 1/2 a))) -3)) (cbrt.f64 (/.f64 1/2 a)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1/2 (cbrt.f64 (/.f64 1/2 a))) (*.f64 1/2 (cbrt.f64 (/.f64 1/2 a))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cbrt.f64 (/.f64 1/2 a)) 1/2) (*.f64 (cbrt.f64 (/.f64 1/2 a)) 1/2))))))

simplify2.6s (5.3%)

Algorithm
egglog
Counts
77 → 89
Calls
Call 1
Inputs
(*.f64 (cbrt.f64 (sqrt.f64 1/2)) (/.f64 1 (cbrt.f64 (*.f64 a (sqrt.f64 2)))))
(*.f64 (cbrt.f64 (/.f64 1/2 a)) 1)
(*.f64 1 (cbrt.f64 (/.f64 1/2 a)))
(*.f64 (cbrt.f64 (cbrt.f64 (pow.f64 a -1))) (cbrt.f64 (/.f64 1/2 (cbrt.f64 (pow.f64 a 2)))))
(*.f64 (cbrt.f64 (cbrt.f64 (cbrt.f64 (/.f64 1/2 a)))) (cbrt.f64 (pow.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (cbrt.f64 (/.f64 1/2 a)))) 2)))
(*.f64 (cbrt.f64 (/.f64 (sqrt.f64 1/2) (cbrt.f64 a))) (cbrt.f64 (/.f64 (sqrt.f64 1/2) (cbrt.f64 (pow.f64 a 2)))))
(*.f64 (cbrt.f64 (cbrt.f64 1/2)) (cbrt.f64 (/.f64 (cbrt.f64 1/4) a)))
(*.f64 (cbrt.f64 (cbrt.f64 (/.f64 1/2 a))) (cbrt.f64 (cbrt.f64 (/.f64 1/4 (pow.f64 a 2)))))
(*.f64 (cbrt.f64 (cbrt.f64 (cbrt.f64 (/.f64 1/2 a)))) (*.f64 (cbrt.f64 (cbrt.f64 (cbrt.f64 (/.f64 1/4 (pow.f64 a 2))))) (cbrt.f64 (cbrt.f64 (/.f64 1/4 (pow.f64 a 2))))))
(*.f64 (cbrt.f64 (cbrt.f64 (cbrt.f64 (/.f64 1/4 (pow.f64 a 2))))) (*.f64 (cbrt.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (cbrt.f64 (/.f64 1/2 a))))) (cbrt.f64 (cbrt.f64 (/.f64 1/2 a)))))
(*.f64 (*.f64 (cbrt.f64 (cbrt.f64 (/.f64 1/4 (pow.f64 a 2)))) (cbrt.f64 (cbrt.f64 (cbrt.f64 (/.f64 1/2 a))))) (cbrt.f64 (cbrt.f64 (cbrt.f64 (/.f64 1/4 (pow.f64 a 2))))))
(*.f64 (cbrt.f64 (cbrt.f64 (/.f64 1/4 (pow.f64 a 2)))) (cbrt.f64 (cbrt.f64 (/.f64 1/2 a))))
(*.f64 (*.f64 (cbrt.f64 (cbrt.f64 (/.f64 1/2 a))) (cbrt.f64 (cbrt.f64 (cbrt.f64 (/.f64 1/4 (pow.f64 a 2)))))) (cbrt.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (cbrt.f64 (/.f64 1/2 a))))))
(*.f64 (*.f64 (cbrt.f64 (cbrt.f64 1/2)) (cbrt.f64 (cbrt.f64 (/.f64 1/4 (pow.f64 a 2))))) (cbrt.f64 (cbrt.f64 (pow.f64 a -1))))
(*.f64 (*.f64 (cbrt.f64 (cbrt.f64 (/.f64 1/4 (pow.f64 a 2)))) (cbrt.f64 (cbrt.f64 1/2))) (cbrt.f64 (cbrt.f64 (pow.f64 a -1))))
(*.f64 (cbrt.f64 (/.f64 1/2 (cbrt.f64 (pow.f64 a 2)))) (cbrt.f64 (cbrt.f64 (pow.f64 a -1))))
(*.f64 -1 (cbrt.f64 (/.f64 -1/2 a)))
(*.f64 (/.f64 (cbrt.f64 (/.f64 1/2 a)) -1) -1)
(*.f64 (cbrt.f64 (sqrt.f64 1/2)) (cbrt.f64 (/.f64 (sqrt.f64 1/2) a)))
(*.f64 (cbrt.f64 -1/2) (/.f64 -1 (cbrt.f64 a)))
(*.f64 (cbrt.f64 (pow.f64 a -1)) (cbrt.f64 1/2))
(*.f64 (cbrt.f64 (/.f64 1/2 (cbrt.f64 a))) (cbrt.f64 (/.f64 1 (cbrt.f64 (pow.f64 a 2)))))
(*.f64 (/.f64 (cbrt.f64 (/.f64 1/2 a)) 2) 2)
(*.f64 (cbrt.f64 1/2) (cbrt.f64 (pow.f64 a -1)))
(*.f64 (cbrt.f64 (cbrt.f64 1/2)) (/.f64 1 (cbrt.f64 (/.f64 a (cbrt.f64 1/4)))))
(-.f64 (/.f64 0 (neg.f64 (cbrt.f64 a))) (cbrt.f64 (/.f64 -1/2 a)))
(-.f64 0 (cbrt.f64 (/.f64 -1/2 a)))
(/.f64 (neg.f64 (cbrt.f64 (sqrt.f64 1/2))) (neg.f64 (cbrt.f64 (*.f64 a (sqrt.f64 2)))))
(/.f64 (cbrt.f64 (sqrt.f64 1/2)) (cbrt.f64 (*.f64 a (sqrt.f64 2))))
(/.f64 (neg.f64 (cbrt.f64 (/.f64 1/2 (cbrt.f64 (pow.f64 a 2))))) (neg.f64 (cbrt.f64 (cbrt.f64 a))))
(/.f64 (neg.f64 (cbrt.f64 (/.f64 1/2 (cbrt.f64 a)))) (neg.f64 (cbrt.f64 (cbrt.f64 (pow.f64 a 2)))))
(/.f64 (cbrt.f64 (/.f64 1/2 a)) 1)
(/.f64 (cbrt.f64 (/.f64 -1/2 (cbrt.f64 (pow.f64 a 2)))) (cbrt.f64 (neg.f64 (cbrt.f64 a))))
(/.f64 -1 (cbrt.f64 (*.f64 a -2)))
(/.f64 (cbrt.f64 1/2) (cbrt.f64 a))
(/.f64 (cbrt.f64 (*.f64 (cbrt.f64 (/.f64 1/2 a)) (cbrt.f64 1/4))) (cbrt.f64 (cbrt.f64 (pow.f64 a 2))))
(/.f64 (cbrt.f64 (/.f64 (sqrt.f64 1/2) (*.f64 (cbrt.f64 a) (sqrt.f64 2)))) (cbrt.f64 (cbrt.f64 (pow.f64 a 2))))
(/.f64 (cbrt.f64 (/.f64 1/2 (cbrt.f64 a))) (cbrt.f64 (cbrt.f64 (pow.f64 a 2))))
(/.f64 (cbrt.f64 -1/2) (neg.f64 (cbrt.f64 a)))
(/.f64 -1 (neg.f64 (cbrt.f64 (+.f64 a a))))
(/.f64 (cbrt.f64 (cbrt.f64 -1/2)) (cbrt.f64 (/.f64 a (cbrt.f64 -1/4))))
(/.f64 (cbrt.f64 (cbrt.f64 1/2)) (cbrt.f64 (/.f64 a (cbrt.f64 1/4))))
(/.f64 (cbrt.f64 (neg.f64 (sqrt.f64 1/2))) (cbrt.f64 (*.f64 a (neg.f64 (sqrt.f64 2)))))
(/.f64 (cbrt.f64 (/.f64 -1/2 (cbrt.f64 a))) (cbrt.f64 (neg.f64 (cbrt.f64 (pow.f64 a 2)))))
(/.f64 (*.f64 (cbrt.f64 (cbrt.f64 1/2)) (cbrt.f64 (cbrt.f64 (/.f64 1/4 (pow.f64 a 2))))) (cbrt.f64 (cbrt.f64 a)))
(/.f64 (*.f64 (cbrt.f64 (cbrt.f64 (/.f64 1/4 (pow.f64 a 2)))) (cbrt.f64 (cbrt.f64 1/2))) (cbrt.f64 (cbrt.f64 a)))
(/.f64 (cbrt.f64 (/.f64 1/2 (cbrt.f64 (pow.f64 a 2)))) (cbrt.f64 (cbrt.f64 a)))
(/.f64 (pow.f64 (neg.f64 (cbrt.f64 (cbrt.f64 1/2))) 3) (pow.f64 (neg.f64 (cbrt.f64 (cbrt.f64 a))) 3))
(/.f64 (cbrt.f64 (cbrt.f64 (pow.f64 a -1))) (cbrt.f64 (*.f64 2 (cbrt.f64 (pow.f64 a 2)))))
(/.f64 (cbrt.f64 (*.f64 (cbrt.f64 (cbrt.f64 1/2)) (pow.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (cbrt.f64 (/.f64 1/2 a)))) 2))) (cbrt.f64 (cbrt.f64 (cbrt.f64 a))))
(/.f64 (cbrt.f64 (cbrt.f64 (/.f64 (/.f64 1/8 (pow.f64 a 2)) (cbrt.f64 a)))) (cbrt.f64 (cbrt.f64 (cbrt.f64 (pow.f64 a 2)))))
(/.f64 (cbrt.f64 (cbrt.f64 (/.f64 (/.f64 1/8 a) (cbrt.f64 (pow.f64 a 2))))) (cbrt.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (pow.f64 a 2)) 2))))
(/.f64 (neg.f64 (*.f64 (cbrt.f64 (cbrt.f64 1/2)) (cbrt.f64 (cbrt.f64 (/.f64 1/4 (pow.f64 a 2)))))) (neg.f64 (cbrt.f64 (cbrt.f64 a))))
(/.f64 (neg.f64 (*.f64 (cbrt.f64 (cbrt.f64 (/.f64 1/4 (pow.f64 a 2)))) (cbrt.f64 (cbrt.f64 1/2)))) (neg.f64 (cbrt.f64 (cbrt.f64 a))))
(/.f64 (cbrt.f64 (/.f64 -1/2 a)) -1)
(/.f64 (cbrt.f64 (pow.f64 a -1)) (cbrt.f64 2))
(/.f64 1 (cbrt.f64 (+.f64 a a)))
(/.f64 (cbrt.f64 (cbrt.f64 (pow.f64 a -1))) (cbrt.f64 (*.f64 (cbrt.f64 (pow.f64 a 2)) 2)))
(/.f64 (neg.f64 (cbrt.f64 (cbrt.f64 1/2))) (neg.f64 (cbrt.f64 (/.f64 a (cbrt.f64 1/4)))))
(pow.f64 (/.f64 1/2 a) 1/3)
(pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 1/2 a))) 3)
(pow.f64 (cbrt.f64 (/.f64 1/2 a)) 1)
(pow.f64 (cbrt.f64 (+.f64 a a)) -1)
(cbrt.f64 (/.f64 1/2 a))
(neg.f64 (cbrt.f64 (/.f64 -1/2 a)))
(neg.f64 (/.f64 -1 (cbrt.f64 (+.f64 a a))))
(neg.f64 (/.f64 (cbrt.f64 (/.f64 -1/2 a)) 1))
(neg.f64 (*.f64 (cbrt.f64 (/.f64 1/2 a)) -1))
(neg.f64 (*.f64 -1 (cbrt.f64 (/.f64 1/2 a))))
(if (!=.f64 (cbrt.f64 (cbrt.f64 1/4)) 0) (cbrt.f64 (/.f64 1/2 a)) (cbrt.f64 (/.f64 1/2 a)))
(if (!=.f64 (cbrt.f64 1/2) 0) (cbrt.f64 (/.f64 1/2 a)) (cbrt.f64 (/.f64 1/2 a)))
(if (!=.f64 (cbrt.f64 (sqrt.f64 1/2)) 0) (cbrt.f64 (/.f64 1/2 a)) (cbrt.f64 (/.f64 1/2 a)))
(if (!=.f64 (/.f64 1/2 a) 0) (/.f64 1 (pow.f64 (/.f64 1/2 a) -1/3)) (cbrt.f64 (/.f64 1/2 a)))
(if (!=.f64 (cbrt.f64 (/.f64 1/2 a)) 0) (/.f64 1 (pow.f64 (cbrt.f64 (/.f64 1/2 a)) -1)) (cbrt.f64 (/.f64 1/2 a)))
(if (!=.f64 (cbrt.f64 (cbrt.f64 (/.f64 1/2 a))) 0) (/.f64 1 (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 1/2 a))) -3)) (cbrt.f64 (/.f64 1/2 a)))
(+.f64 (*.f64 1/2 (cbrt.f64 (/.f64 1/2 a))) (*.f64 1/2 (cbrt.f64 (/.f64 1/2 a))))
(+.f64 (*.f64 (cbrt.f64 (/.f64 1/2 a)) 1/2) (*.f64 (cbrt.f64 (/.f64 1/2 a)) 1/2))
Outputs
(*.f64 (cbrt.f64 (sqrt.f64 1/2)) (/.f64 1 (cbrt.f64 (*.f64 a (sqrt.f64 2)))))
(cbrt.f64 (/.f64 1/2 a))
(*.f64 (cbrt.f64 (/.f64 1/2 a)) 1)
(cbrt.f64 (/.f64 1/2 a))
(*.f64 1 (cbrt.f64 (/.f64 1/2 a)))
(cbrt.f64 (/.f64 1/2 a))
(*.f64 (cbrt.f64 (cbrt.f64 (pow.f64 a -1))) (cbrt.f64 (/.f64 1/2 (cbrt.f64 (pow.f64 a 2)))))
(cbrt.f64 (cbrt.f64 (/.f64 (/.f64 1/8 a) (*.f64 a a))))
(*.f64 (cbrt.f64 (cbrt.f64 (cbrt.f64 (/.f64 1/2 a)))) (cbrt.f64 (pow.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (cbrt.f64 (/.f64 1/2 a)))) 2)))
(cbrt.f64 (*.f64 (cbrt.f64 (cbrt.f64 (/.f64 1/2 a))) (pow.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (cbrt.f64 (/.f64 1/2 a)))) 2)))
(*.f64 (cbrt.f64 (/.f64 (sqrt.f64 1/2) (cbrt.f64 a))) (cbrt.f64 (/.f64 (sqrt.f64 1/2) (cbrt.f64 (pow.f64 a 2)))))
(cbrt.f64 (cbrt.f64 (/.f64 (/.f64 1/8 a) (*.f64 a a))))
(*.f64 (cbrt.f64 (cbrt.f64 1/2)) (cbrt.f64 (/.f64 (cbrt.f64 1/4) a)))
(cbrt.f64 (/.f64 1/2 a))
(*.f64 (cbrt.f64 (cbrt.f64 (/.f64 1/2 a))) (cbrt.f64 (cbrt.f64 (/.f64 1/4 (pow.f64 a 2)))))
(cbrt.f64 (cbrt.f64 (/.f64 (/.f64 1/8 a) (*.f64 a a))))
(*.f64 (cbrt.f64 (cbrt.f64 (cbrt.f64 (/.f64 1/2 a)))) (*.f64 (cbrt.f64 (cbrt.f64 (cbrt.f64 (/.f64 1/4 (pow.f64 a 2))))) (cbrt.f64 (cbrt.f64 (/.f64 1/4 (pow.f64 a 2))))))
(*.f64 (cbrt.f64 (cbrt.f64 (cbrt.f64 (/.f64 1/2 a)))) (cbrt.f64 (*.f64 (cbrt.f64 (cbrt.f64 (/.f64 1/4 (*.f64 a a)))) (cbrt.f64 (/.f64 1/4 (*.f64 a a))))))
(*.f64 (cbrt.f64 (cbrt.f64 (cbrt.f64 (/.f64 1/4 (pow.f64 a 2))))) (*.f64 (cbrt.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (cbrt.f64 (/.f64 1/2 a))))) (cbrt.f64 (cbrt.f64 (/.f64 1/2 a)))))
(*.f64 (cbrt.f64 (cbrt.f64 (cbrt.f64 (/.f64 1/4 (*.f64 a a))))) (cbrt.f64 (*.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (cbrt.f64 (/.f64 1/2 a)))) (cbrt.f64 (/.f64 1/2 a)))))
(*.f64 (*.f64 (cbrt.f64 (cbrt.f64 (/.f64 1/4 (pow.f64 a 2)))) (cbrt.f64 (cbrt.f64 (cbrt.f64 (/.f64 1/2 a))))) (cbrt.f64 (cbrt.f64 (cbrt.f64 (/.f64 1/4 (pow.f64 a 2))))))
(*.f64 (cbrt.f64 (*.f64 (cbrt.f64 (/.f64 1/4 (*.f64 a a))) (cbrt.f64 (cbrt.f64 (/.f64 1/2 a))))) (cbrt.f64 (cbrt.f64 (cbrt.f64 (/.f64 1/4 (*.f64 a a))))))
(*.f64 (cbrt.f64 (cbrt.f64 (/.f64 1/4 (pow.f64 a 2)))) (cbrt.f64 (cbrt.f64 (/.f64 1/2 a))))
(cbrt.f64 (cbrt.f64 (/.f64 (/.f64 1/8 a) (*.f64 a a))))
(*.f64 (*.f64 (cbrt.f64 (cbrt.f64 (/.f64 1/2 a))) (cbrt.f64 (cbrt.f64 (cbrt.f64 (/.f64 1/4 (pow.f64 a 2)))))) (cbrt.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (cbrt.f64 (/.f64 1/2 a))))))
(*.f64 (cbrt.f64 (*.f64 (cbrt.f64 (/.f64 1/2 a)) (cbrt.f64 (cbrt.f64 (/.f64 1/4 (*.f64 a a)))))) (cbrt.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (cbrt.f64 (/.f64 1/2 a))))))
(*.f64 (*.f64 (cbrt.f64 (cbrt.f64 1/2)) (cbrt.f64 (cbrt.f64 (/.f64 1/4 (pow.f64 a 2))))) (cbrt.f64 (cbrt.f64 (pow.f64 a -1))))
(cbrt.f64 (cbrt.f64 (/.f64 (/.f64 1/8 a) (*.f64 a a))))
(*.f64 (*.f64 (cbrt.f64 (cbrt.f64 (/.f64 1/4 (pow.f64 a 2)))) (cbrt.f64 (cbrt.f64 1/2))) (cbrt.f64 (cbrt.f64 (pow.f64 a -1))))
(cbrt.f64 (cbrt.f64 (/.f64 (/.f64 1/8 a) (*.f64 a a))))
(*.f64 (cbrt.f64 (/.f64 1/2 (cbrt.f64 (pow.f64 a 2)))) (cbrt.f64 (cbrt.f64 (pow.f64 a -1))))
(cbrt.f64 (cbrt.f64 (/.f64 (/.f64 1/8 a) (*.f64 a a))))
(*.f64 -1 (cbrt.f64 (/.f64 -1/2 a)))
(cbrt.f64 (/.f64 1/2 a))
(*.f64 (/.f64 (cbrt.f64 (/.f64 1/2 a)) -1) -1)
(cbrt.f64 (/.f64 1/2 a))
(*.f64 (cbrt.f64 (sqrt.f64 1/2)) (cbrt.f64 (/.f64 (sqrt.f64 1/2) a)))
(cbrt.f64 (/.f64 1/2 a))
(*.f64 (cbrt.f64 -1/2) (/.f64 -1 (cbrt.f64 a)))
(cbrt.f64 (/.f64 1/2 a))
(*.f64 (cbrt.f64 (pow.f64 a -1)) (cbrt.f64 1/2))
(cbrt.f64 (/.f64 1/2 a))
(*.f64 (cbrt.f64 (/.f64 1/2 (cbrt.f64 a))) (cbrt.f64 (/.f64 1 (cbrt.f64 (pow.f64 a 2)))))
(cbrt.f64 (cbrt.f64 (/.f64 (/.f64 1/8 a) (*.f64 a a))))
(*.f64 (/.f64 (cbrt.f64 (/.f64 1/2 a)) 2) 2)
(cbrt.f64 (/.f64 1/2 a))
(*.f64 (cbrt.f64 1/2) (cbrt.f64 (pow.f64 a -1)))
(cbrt.f64 (/.f64 1/2 a))
(*.f64 (cbrt.f64 (cbrt.f64 1/2)) (/.f64 1 (cbrt.f64 (/.f64 a (cbrt.f64 1/4)))))
(cbrt.f64 (/.f64 (cbrt.f64 1/2) (*.f64 a (cbrt.f64 4))))
(-.f64 (/.f64 0 (neg.f64 (cbrt.f64 a))) (cbrt.f64 (/.f64 -1/2 a)))
(cbrt.f64 (/.f64 1/2 a))
(-.f64 0 (cbrt.f64 (/.f64 -1/2 a)))
(cbrt.f64 (/.f64 1/2 a))
(/.f64 (neg.f64 (cbrt.f64 (sqrt.f64 1/2))) (neg.f64 (cbrt.f64 (*.f64 a (sqrt.f64 2)))))
(cbrt.f64 (/.f64 1/2 a))
(/.f64 (cbrt.f64 (sqrt.f64 1/2)) (cbrt.f64 (*.f64 a (sqrt.f64 2))))
(cbrt.f64 (/.f64 1/2 a))
(/.f64 (neg.f64 (cbrt.f64 (/.f64 1/2 (cbrt.f64 (pow.f64 a 2))))) (neg.f64 (cbrt.f64 (cbrt.f64 a))))
(cbrt.f64 (cbrt.f64 (/.f64 (/.f64 1/8 a) (*.f64 a a))))
(/.f64 (neg.f64 (cbrt.f64 (/.f64 1/2 (cbrt.f64 a)))) (neg.f64 (cbrt.f64 (cbrt.f64 (pow.f64 a 2)))))
(cbrt.f64 (cbrt.f64 (/.f64 (/.f64 1/8 a) (*.f64 a a))))
(/.f64 (cbrt.f64 (/.f64 1/2 a)) 1)
(cbrt.f64 (/.f64 1/2 a))
(/.f64 (cbrt.f64 (/.f64 -1/2 (cbrt.f64 (pow.f64 a 2)))) (cbrt.f64 (neg.f64 (cbrt.f64 a))))
(cbrt.f64 (cbrt.f64 (/.f64 (/.f64 1/8 a) (*.f64 a a))))
(/.f64 -1 (cbrt.f64 (*.f64 a -2)))
(cbrt.f64 (/.f64 1/2 a))
(/.f64 (cbrt.f64 1/2) (cbrt.f64 a))
(cbrt.f64 (/.f64 1/2 a))
(/.f64 (cbrt.f64 (*.f64 (cbrt.f64 (/.f64 1/2 a)) (cbrt.f64 1/4))) (cbrt.f64 (cbrt.f64 (pow.f64 a 2))))
(cbrt.f64 (cbrt.f64 (/.f64 (/.f64 1/8 a) (*.f64 a a))))
(/.f64 (cbrt.f64 (/.f64 (sqrt.f64 1/2) (*.f64 (cbrt.f64 a) (sqrt.f64 2)))) (cbrt.f64 (cbrt.f64 (pow.f64 a 2))))
(cbrt.f64 (cbrt.f64 (/.f64 (/.f64 1/8 a) (*.f64 a a))))
(/.f64 (cbrt.f64 (/.f64 1/2 (cbrt.f64 a))) (cbrt.f64 (cbrt.f64 (pow.f64 a 2))))
(cbrt.f64 (cbrt.f64 (/.f64 (/.f64 1/8 a) (*.f64 a a))))
(/.f64 (cbrt.f64 -1/2) (neg.f64 (cbrt.f64 a)))
(cbrt.f64 (/.f64 1/2 a))
(/.f64 -1 (neg.f64 (cbrt.f64 (+.f64 a a))))
(cbrt.f64 (/.f64 1/2 a))
(/.f64 (cbrt.f64 (cbrt.f64 -1/2)) (cbrt.f64 (/.f64 a (cbrt.f64 -1/4))))
(cbrt.f64 (/.f64 (cbrt.f64 -1/2) (*.f64 a (cbrt.f64 -4))))
(/.f64 (cbrt.f64 (cbrt.f64 1/2)) (cbrt.f64 (/.f64 a (cbrt.f64 1/4))))
(cbrt.f64 (/.f64 (cbrt.f64 1/2) (*.f64 a (cbrt.f64 4))))
(/.f64 (cbrt.f64 (neg.f64 (sqrt.f64 1/2))) (cbrt.f64 (*.f64 a (neg.f64 (sqrt.f64 2)))))
(cbrt.f64 (/.f64 1/2 a))
(/.f64 (cbrt.f64 (/.f64 -1/2 (cbrt.f64 a))) (cbrt.f64 (neg.f64 (cbrt.f64 (pow.f64 a 2)))))
(cbrt.f64 (cbrt.f64 (/.f64 (/.f64 1/8 a) (*.f64 a a))))
(/.f64 (*.f64 (cbrt.f64 (cbrt.f64 1/2)) (cbrt.f64 (cbrt.f64 (/.f64 1/4 (pow.f64 a 2))))) (cbrt.f64 (cbrt.f64 a)))
(cbrt.f64 (cbrt.f64 (/.f64 (/.f64 1/8 a) (*.f64 a a))))
(/.f64 (*.f64 (cbrt.f64 (cbrt.f64 (/.f64 1/4 (pow.f64 a 2)))) (cbrt.f64 (cbrt.f64 1/2))) (cbrt.f64 (cbrt.f64 a)))
(cbrt.f64 (cbrt.f64 (/.f64 (/.f64 1/8 a) (*.f64 a a))))
(/.f64 (cbrt.f64 (/.f64 1/2 (cbrt.f64 (pow.f64 a 2)))) (cbrt.f64 (cbrt.f64 a)))
(cbrt.f64 (cbrt.f64 (/.f64 (/.f64 1/8 a) (*.f64 a a))))
(/.f64 (pow.f64 (neg.f64 (cbrt.f64 (cbrt.f64 1/2))) 3) (pow.f64 (neg.f64 (cbrt.f64 (cbrt.f64 a))) 3))
(cbrt.f64 (/.f64 1/2 a))
(/.f64 (cbrt.f64 (cbrt.f64 (pow.f64 a -1))) (cbrt.f64 (*.f64 2 (cbrt.f64 (pow.f64 a 2)))))
(cbrt.f64 (cbrt.f64 (/.f64 (/.f64 1/8 a) (*.f64 a a))))
(/.f64 (cbrt.f64 (*.f64 (cbrt.f64 (cbrt.f64 1/2)) (pow.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (cbrt.f64 (/.f64 1/2 a)))) 2))) (cbrt.f64 (cbrt.f64 (cbrt.f64 a))))
(cbrt.f64 (/.f64 (*.f64 (cbrt.f64 (cbrt.f64 1/2)) (pow.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (cbrt.f64 (/.f64 1/2 a)))) 2)) (cbrt.f64 (cbrt.f64 a))))
(/.f64 (cbrt.f64 (cbrt.f64 (/.f64 (/.f64 1/8 (pow.f64 a 2)) (cbrt.f64 a)))) (cbrt.f64 (cbrt.f64 (cbrt.f64 (pow.f64 a 2)))))
(cbrt.f64 (cbrt.f64 (/.f64 (/.f64 (/.f64 1/8 (cbrt.f64 a)) (*.f64 a a)) (cbrt.f64 (*.f64 a a)))))
(/.f64 (cbrt.f64 (cbrt.f64 (/.f64 (/.f64 1/8 a) (cbrt.f64 (pow.f64 a 2))))) (cbrt.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (pow.f64 a 2)) 2))))
(cbrt.f64 (cbrt.f64 (/.f64 (/.f64 (/.f64 1/8 a) (cbrt.f64 (*.f64 a a))) (pow.f64 (cbrt.f64 (*.f64 a a)) 2))))
(/.f64 (neg.f64 (*.f64 (cbrt.f64 (cbrt.f64 1/2)) (cbrt.f64 (cbrt.f64 (/.f64 1/4 (pow.f64 a 2)))))) (neg.f64 (cbrt.f64 (cbrt.f64 a))))
(cbrt.f64 (cbrt.f64 (/.f64 (/.f64 1/8 a) (*.f64 a a))))
(/.f64 (neg.f64 (*.f64 (cbrt.f64 (cbrt.f64 (/.f64 1/4 (pow.f64 a 2)))) (cbrt.f64 (cbrt.f64 1/2)))) (neg.f64 (cbrt.f64 (cbrt.f64 a))))
(cbrt.f64 (cbrt.f64 (/.f64 (/.f64 1/8 a) (*.f64 a a))))
(/.f64 (cbrt.f64 (/.f64 -1/2 a)) -1)
(cbrt.f64 (/.f64 1/2 a))
(/.f64 (cbrt.f64 (pow.f64 a -1)) (cbrt.f64 2))
(cbrt.f64 (/.f64 1/2 a))
(/.f64 1 (cbrt.f64 (+.f64 a a)))
(cbrt.f64 (/.f64 1/2 a))
(/.f64 (cbrt.f64 (cbrt.f64 (pow.f64 a -1))) (cbrt.f64 (*.f64 (cbrt.f64 (pow.f64 a 2)) 2)))
(cbrt.f64 (cbrt.f64 (/.f64 (/.f64 1/8 a) (*.f64 a a))))
(/.f64 (neg.f64 (cbrt.f64 (cbrt.f64 1/2))) (neg.f64 (cbrt.f64 (/.f64 a (cbrt.f64 1/4)))))
(cbrt.f64 (/.f64 (cbrt.f64 1/2) (*.f64 a (cbrt.f64 4))))
(pow.f64 (/.f64 1/2 a) 1/3)
(cbrt.f64 (/.f64 1/2 a))
(pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 1/2 a))) 3)
(cbrt.f64 (/.f64 1/2 a))
(pow.f64 (cbrt.f64 (/.f64 1/2 a)) 1)
(cbrt.f64 (/.f64 1/2 a))
(pow.f64 (cbrt.f64 (+.f64 a a)) -1)
(cbrt.f64 (/.f64 1/2 a))
(cbrt.f64 (/.f64 1/2 a))
(neg.f64 (cbrt.f64 (/.f64 -1/2 a)))
(cbrt.f64 (/.f64 1/2 a))
(neg.f64 (/.f64 -1 (cbrt.f64 (+.f64 a a))))
(cbrt.f64 (/.f64 1/2 a))
(neg.f64 (/.f64 (cbrt.f64 (/.f64 -1/2 a)) 1))
(cbrt.f64 (/.f64 1/2 a))
(neg.f64 (*.f64 (cbrt.f64 (/.f64 1/2 a)) -1))
(cbrt.f64 (/.f64 1/2 a))
(neg.f64 (*.f64 -1 (cbrt.f64 (/.f64 1/2 a))))
(cbrt.f64 (/.f64 1/2 a))
(if (!=.f64 (cbrt.f64 (cbrt.f64 1/4)) 0) (cbrt.f64 (/.f64 1/2 a)) (cbrt.f64 (/.f64 1/2 a)))
(if (!=.f64 (cbrt.f64 1/2) 0) (cbrt.f64 (/.f64 1/2 a)) (cbrt.f64 (/.f64 1/2 a)))
(if (!=.f64 (cbrt.f64 (sqrt.f64 1/2)) 0) (cbrt.f64 (/.f64 1/2 a)) (cbrt.f64 (/.f64 1/2 a)))
(if (!=.f64 (/.f64 1/2 a) 0) (/.f64 1 (pow.f64 (/.f64 1/2 a) -1/3)) (cbrt.f64 (/.f64 1/2 a)))
(if (!=.f64 (cbrt.f64 (/.f64 1/2 a)) 0) (/.f64 1 (pow.f64 (cbrt.f64 (/.f64 1/2 a)) -1)) (cbrt.f64 (/.f64 1/2 a)))
(if (!=.f64 (cbrt.f64 (/.f64 1/2 a)) 0) (/.f64 1 (cbrt.f64 (pow.f64 (/.f64 1/2 a) -1))) (cbrt.f64 (/.f64 1/2 a)))
(if (!=.f64 (cbrt.f64 (cbrt.f64 (/.f64 1/2 a))) 0) (/.f64 1 (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 1/2 a))) -3)) (cbrt.f64 (/.f64 1/2 a)))
(+.f64 (*.f64 1/2 (cbrt.f64 (/.f64 1/2 a))) (*.f64 1/2 (cbrt.f64 (/.f64 1/2 a))))
(cbrt.f64 (/.f64 1/2 a))
(+.f64 (*.f64 (cbrt.f64 (/.f64 1/2 a)) 1/2) (*.f64 (cbrt.f64 (/.f64 1/2 a)) 1/2))
(cbrt.f64 (/.f64 1/2 a))

localize123.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
4.0b
(-.f64 (*.f64 g g) (*.f64 h h))
8.8b
(cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))))
26.5b
(sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
26.5b
(sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))
Compiler

Compiled 185 to 85 computations (54.1% saved)

localize109.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
10.5b
(cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (-.f64 (neg.f64 g) (sqrt.f64 (fma.f64 (*.f64 g (cbrt.f64 g)) (cbrt.f64 (pow.f64 g 2)) (neg.f64 (pow.f64 h 2)))))))
26.5b
(sqrt.f64 (fma.f64 (*.f64 g (cbrt.f64 g)) (cbrt.f64 (pow.f64 g 2)) (neg.f64 (pow.f64 h 2))))
26.5b
(sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))
27.5b
(cbrt.f64 (pow.f64 g 2))
Compiler

Compiled 239 to 115 computations (51.9% saved)

series410.0ms (0.8%)

Counts
3 → 7
Calls

18 calls:

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

Compiled 22770 to 18350 computations (19.4% saved)

rewrite1.6s (3.3%)

Algorithm
batch-egg-rewrite
Rules
40×egg-rr
34×egg-rr
24×egg-rr
Counts
3 → 98
Calls
Call 1
Inputs
(cbrt.f64 (pow.f64 g 2))
(sqrt.f64 (fma.f64 (*.f64 g (cbrt.f64 g)) (cbrt.f64 (pow.f64 g 2)) (neg.f64 (pow.f64 h 2))))
(cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (-.f64 (neg.f64 g) (sqrt.f64 (fma.f64 (*.f64 g (cbrt.f64 g)) (cbrt.f64 (pow.f64 g 2)) (neg.f64 (pow.f64 h 2)))))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 g) (cbrt.f64 g))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (pow.f64 g 2))) (cbrt.f64 (*.f64 (cbrt.f64 g) g)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (cbrt.f64 g))) 2) (pow.f64 (cbrt.f64 (cbrt.f64 (pow.f64 (*.f64 (cbrt.f64 g) g) 2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 g)) (cbrt.f64 (*.f64 (cbrt.f64 (pow.f64 g 2)) g)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (cbrt.f64 g) g)) (cbrt.f64 (cbrt.f64 (pow.f64 g 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (cbrt.f64 g)) (neg.f64 (cbrt.f64 g)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (neg.f64 g) (neg.f64 (cbrt.f64 g)))) (cbrt.f64 (cbrt.f64 (pow.f64 g 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 g)) (cbrt.f64 (*.f64 g (cbrt.f64 (pow.f64 g 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (neg.f64 (cbrt.f64 g))) (cbrt.f64 (*.f64 (cbrt.f64 (pow.f64 g 2)) (neg.f64 g))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (*.f64 (cbrt.f64 g) g))) (cbrt.f64 (cbrt.f64 (*.f64 (pow.f64 (*.f64 (cbrt.f64 g) g) 2) (pow.f64 g 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (*.f64 (cbrt.f64 g) g) (cbrt.f64 (cbrt.f64 (pow.f64 g 2))))) (cbrt.f64 (cbrt.f64 (*.f64 (cbrt.f64 g) g))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (neg.f64 (cbrt.f64 g)) -1) (*.f64 (neg.f64 (cbrt.f64 g)) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (cbrt.f64 (neg.f64 (pow.f64 g 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (cbrt.f64 (pow.f64 g 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 g 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (pow.f64 g 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 g 2) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (cbrt.f64 (pow.f64 g 2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 g) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (neg.f64 (cbrt.f64 g)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (pow.f64 g 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 g 2))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (cbrt.f64 (pow.f64 g 2))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (cbrt.f64 (pow.f64 g 2)) 0) (/.f64 1 (pow.f64 (cbrt.f64 (pow.f64 g 2)) -1)) (cbrt.f64 (pow.f64 g 2)))))))
((#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (neg.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) -1) (*.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0) (-.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (+.f64 0 (*.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0))) (-.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (cbrt.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (*.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (cbrt.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 1 0)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0) (/.f64 1 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) -1)) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 0 0) (/.f64 (-.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) 0) (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) (+.f64 0 (*.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0)))) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) (+.f64 0 (*.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0))) 0) (/.f64 (-.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) 0) (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) (+.f64 0 (*.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0)))) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0) (/.f64 (-.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) 0) (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) (+.f64 0 (*.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0)))) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0) (/.f64 (-.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) 0) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0)))))
((#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (*.f64 (/.f64 -1/2 a) (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)))) (cbrt.f64 (cbrt.f64 (pow.f64 (*.f64 (/.f64 -1/2 a) (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (pow.f64 (*.f64 (/.f64 -1/2 a) (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) 2))) (cbrt.f64 (cbrt.f64 (*.f64 (/.f64 -1/2 a) (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 1/2 a)) (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (cbrt.f64 (/.f64 1/2 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (/.f64 1/2 a))) (cbrt.f64 (cbrt.f64 (*.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (pow.f64 (*.f64 (/.f64 -1/2 a) (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (cbrt.f64 (*.f64 -2 a)))) (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 1/2 a))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (/.f64 1/2 a))) (cbrt.f64 (/.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (cbrt.f64 (*.f64 4 (pow.f64 a 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (cbrt.f64 (pow.f64 (cbrt.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (cbrt.f64 (*.f64 (/.f64 -1/2 a) (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))))) (cbrt.f64 (cbrt.f64 (*.f64 (cbrt.f64 (pow.f64 (*.f64 (/.f64 -1/2 a) (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) 2)) (pow.f64 (*.f64 (/.f64 -1/2 a) (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (/.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 8))) (cbrt.f64 (/.f64 (pow.f64 (cbrt.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) 2) a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) a)) (cbrt.f64 (*.f64 (pow.f64 (cbrt.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) 2) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (/.f64 1/2 a))) (cbrt.f64 (neg.f64 (*.f64 (cbrt.f64 (/.f64 1/4 (pow.f64 a 2))) (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 a -1)) (cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 1/2) (cbrt.f64 (/.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (cbrt.f64 (*.f64 (pow.f64 (cbrt.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) 2) (/.f64 1/2 a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (cbrt.f64 (*.f64 (/.f64 -1/2 a) (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (/.f64 -1/2 a) (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (cbrt.f64 (+.f64 a a)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -1 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (cbrt.f64 (*.f64 -2 a)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cbrt.f64 1/2) (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (cbrt.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) -1) (cbrt.f64 (*.f64 -2 a)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (cbrt.f64 1/2)) (cbrt.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (cbrt.f64 2)) (cbrt.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (cbrt.f64 a)) (cbrt.f64 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) (cbrt.f64 (*.f64 -2 a)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (/.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) a)) (cbrt.f64 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) -2)) (cbrt.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (cbrt.f64 (*.f64 -2 a)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (cbrt.f64 (cbrt.f64 (+.f64 a a)))) (pow.f64 (cbrt.f64 (cbrt.f64 (+.f64 a a))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (cbrt.f64 (*.f64 -2 a)))) (pow.f64 (cbrt.f64 (cbrt.f64 (+.f64 a a))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (*.f64 (/.f64 -1/2 a) (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 -1/2 a) (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 (/.f64 -1/2 a) (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (/.f64 -1/2 a) (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (/.f64 -1/2 a) (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 (cbrt.f64 (*.f64 (/.f64 -1/2 a) (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 -1 (cbrt.f64 (*.f64 (/.f64 -1/2 a) (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (cbrt.f64 (*.f64 (/.f64 -1/2 a) (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))) 0) (/.f64 1 (pow.f64 (cbrt.f64 (*.f64 (/.f64 -1/2 a) (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))) -1)) (cbrt.f64 (*.f64 (/.f64 -1/2 a) (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) 0) (/.f64 1 (/.f64 (cbrt.f64 (+.f64 a a)) (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (cbrt.f64 (*.f64 (/.f64 -1/2 a) (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) 2)) 0) (/.f64 (cbrt.f64 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (/.f64 (cbrt.f64 (+.f64 a a)) (cbrt.f64 (pow.f64 (cbrt.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) 2)))) (cbrt.f64 (*.f64 (/.f64 -1/2 a) (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))))))))

simplify2.5s (5.2%)

Algorithm
egglog
Counts
105 → 135
Calls
Call 1
Inputs
(sqrt.f64 (neg.f64 (pow.f64 h 2)))
(sqrt.f64 (neg.f64 (pow.f64 h 2)))
(sqrt.f64 (neg.f64 (pow.f64 h 2)))
(sqrt.f64 (*.f64 (pow.f64 (pow.f64 g 2) 1/3) (*.f64 g (pow.f64 g 1/3))))
(+.f64 (sqrt.f64 (*.f64 (pow.f64 (pow.f64 g 2) 1/3) (*.f64 g (pow.f64 g 1/3)))) (*.f64 -1/2 (/.f64 (pow.f64 h 2) (sqrt.f64 (*.f64 (pow.f64 (pow.f64 g 2) 1/3) (*.f64 g (pow.f64 g 1/3)))))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 h 4) (pow.f64 (/.f64 -1/2 (sqrt.f64 (*.f64 (pow.f64 (pow.f64 g 2) 1/3) (*.f64 g (pow.f64 g 1/3))))) 2)) (sqrt.f64 (*.f64 (pow.f64 (pow.f64 g 2) 1/3) (*.f64 g (pow.f64 g 1/3)))))) (+.f64 (sqrt.f64 (*.f64 (pow.f64 (pow.f64 g 2) 1/3) (*.f64 g (pow.f64 g 1/3)))) (*.f64 -1/2 (/.f64 (pow.f64 h 2) (sqrt.f64 (*.f64 (pow.f64 (pow.f64 g 2) 1/3) (*.f64 g (pow.f64 g 1/3))))))))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 h 6) (pow.f64 (/.f64 -1/2 (sqrt.f64 (*.f64 (pow.f64 (pow.f64 g 2) 1/3) (*.f64 g (pow.f64 g 1/3))))) 2)) (*.f64 (pow.f64 (sqrt.f64 (*.f64 (pow.f64 (pow.f64 g 2) 1/3) (*.f64 g (pow.f64 g 1/3)))) 2) (sqrt.f64 (*.f64 (pow.f64 (pow.f64 g 2) 1/3) (*.f64 g (pow.f64 g 1/3))))))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 h 4) (pow.f64 (/.f64 -1/2 (sqrt.f64 (*.f64 (pow.f64 (pow.f64 g 2) 1/3) (*.f64 g (pow.f64 g 1/3))))) 2)) (sqrt.f64 (*.f64 (pow.f64 (pow.f64 g 2) 1/3) (*.f64 g (pow.f64 g 1/3)))))) (+.f64 (sqrt.f64 (*.f64 (pow.f64 (pow.f64 g 2) 1/3) (*.f64 g (pow.f64 g 1/3)))) (*.f64 -1/2 (/.f64 (pow.f64 h 2) (sqrt.f64 (*.f64 (pow.f64 (pow.f64 g 2) 1/3) (*.f64 g (pow.f64 g 1/3)))))))))
(*.f64 (cbrt.f64 g) (cbrt.f64 g))
(*.f64 (cbrt.f64 (cbrt.f64 (pow.f64 g 2))) (cbrt.f64 (*.f64 (cbrt.f64 g) g)))
(*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (cbrt.f64 g))) 2) (pow.f64 (cbrt.f64 (cbrt.f64 (pow.f64 (*.f64 (cbrt.f64 g) g) 2))) 2))
(*.f64 (cbrt.f64 (cbrt.f64 g)) (cbrt.f64 (*.f64 (cbrt.f64 (pow.f64 g 2)) g)))
(*.f64 (cbrt.f64 (*.f64 (cbrt.f64 g) g)) (cbrt.f64 (cbrt.f64 (pow.f64 g 2))))
(*.f64 (neg.f64 (cbrt.f64 g)) (neg.f64 (cbrt.f64 g)))
(*.f64 (cbrt.f64 (*.f64 (neg.f64 g) (neg.f64 (cbrt.f64 g)))) (cbrt.f64 (cbrt.f64 (pow.f64 g 2))))
(*.f64 (cbrt.f64 (cbrt.f64 g)) (cbrt.f64 (*.f64 g (cbrt.f64 (pow.f64 g 2)))))
(*.f64 (cbrt.f64 (neg.f64 (cbrt.f64 g))) (cbrt.f64 (*.f64 (cbrt.f64 (pow.f64 g 2)) (neg.f64 g))))
(*.f64 (cbrt.f64 (cbrt.f64 (*.f64 (cbrt.f64 g) g))) (cbrt.f64 (cbrt.f64 (*.f64 (pow.f64 (*.f64 (cbrt.f64 g) g) 2) (pow.f64 g 2)))))
(*.f64 (cbrt.f64 (*.f64 (*.f64 (cbrt.f64 g) g) (cbrt.f64 (cbrt.f64 (pow.f64 g 2))))) (cbrt.f64 (cbrt.f64 (*.f64 (cbrt.f64 g) g))))
(*.f64 (*.f64 (neg.f64 (cbrt.f64 g)) -1) (*.f64 (neg.f64 (cbrt.f64 g)) -1))
(*.f64 -1 (cbrt.f64 (neg.f64 (pow.f64 g 2))))
(*.f64 1 (cbrt.f64 (pow.f64 g 2)))
(*.f64 (cbrt.f64 (pow.f64 g 2)) 1)
(/.f64 (cbrt.f64 (pow.f64 g 2)) 1)
(pow.f64 (pow.f64 g 2) 1/3)
(pow.f64 (cbrt.f64 (cbrt.f64 (pow.f64 g 2))) 3)
(pow.f64 (cbrt.f64 g) 2)
(pow.f64 (neg.f64 (cbrt.f64 g)) 2)
(pow.f64 (cbrt.f64 (pow.f64 g 2)) 1)
(cbrt.f64 (pow.f64 g 2))
(neg.f64 (neg.f64 (cbrt.f64 (pow.f64 g 2))))
(if (!=.f64 (cbrt.f64 (pow.f64 g 2)) 0) (/.f64 1 (pow.f64 (cbrt.f64 (pow.f64 g 2)) -1)) (cbrt.f64 (pow.f64 g 2)))
(fabs.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(*.f64 (neg.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (neg.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))
(*.f64 (*.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) -1) (*.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) -1))
(*.f64 (+.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0) (-.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0))
(*.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3))
(*.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(*.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (+.f64 0 (*.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0))) (-.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0))
(*.f64 (*.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (cbrt.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (*.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (cbrt.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))
(*.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(*.f64 1 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 1)
(-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0)
(/.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 1)
(sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(sqrt.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2))
(fma.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) 0)
(fma.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0)
(fma.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0)
(fma.f64 1 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0)
(fma.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 1 0)
(pow.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) 1/3)
(pow.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 3)
(pow.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 2)
(pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 1/2)
(pow.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) 1/2)
(pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 1)
(cbrt.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3))
(neg.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(if (!=.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0) (/.f64 1 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) -1)) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(if (!=.f64 0 0) (/.f64 (-.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) 0) (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) (+.f64 0 (*.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0)))) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(if (!=.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) (+.f64 0 (*.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0))) 0) (/.f64 (-.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) 0) (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) (+.f64 0 (*.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0)))) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(if (!=.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0) (/.f64 (-.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) 0) (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) (+.f64 0 (*.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0)))) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(if (!=.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0) (/.f64 (-.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) 0) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0)
(*.f64 (cbrt.f64 (cbrt.f64 (*.f64 (/.f64 -1/2 a) (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)))) (cbrt.f64 (cbrt.f64 (pow.f64 (*.f64 (/.f64 -1/2 a) (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) 2))))
(*.f64 (cbrt.f64 (cbrt.f64 (pow.f64 (*.f64 (/.f64 -1/2 a) (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) 2))) (cbrt.f64 (cbrt.f64 (*.f64 (/.f64 -1/2 a) (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)))))
(*.f64 (cbrt.f64 (/.f64 1/2 a)) (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))
(*.f64 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (cbrt.f64 (/.f64 1/2 a)))
(*.f64 (cbrt.f64 (cbrt.f64 (/.f64 1/2 a))) (cbrt.f64 (cbrt.f64 (*.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (pow.f64 (*.f64 (/.f64 -1/2 a) (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) 2)))))
(*.f64 (cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (cbrt.f64 (*.f64 -2 a)))) (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 1/2 a))) 2))
(*.f64 (cbrt.f64 (cbrt.f64 (/.f64 1/2 a))) (cbrt.f64 (/.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (cbrt.f64 (*.f64 4 (pow.f64 a 2))))))
(*.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (cbrt.f64 (pow.f64 (cbrt.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) 2)))
(*.f64 (cbrt.f64 (cbrt.f64 (cbrt.f64 (*.f64 (/.f64 -1/2 a) (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))))) (cbrt.f64 (cbrt.f64 (*.f64 (cbrt.f64 (pow.f64 (*.f64 (/.f64 -1/2 a) (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) 2)) (pow.f64 (*.f64 (/.f64 -1/2 a) (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) 2)))))
(*.f64 (cbrt.f64 (cbrt.f64 (/.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 8))) (cbrt.f64 (/.f64 (pow.f64 (cbrt.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) 2) a)))
(*.f64 (cbrt.f64 (/.f64 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) a)) (cbrt.f64 (*.f64 (pow.f64 (cbrt.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) 2) 1/2)))
(*.f64 (cbrt.f64 (cbrt.f64 (/.f64 1/2 a))) (cbrt.f64 (neg.f64 (*.f64 (cbrt.f64 (/.f64 1/4 (pow.f64 a 2))) (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)))))
(*.f64 (cbrt.f64 (pow.f64 a -1)) (cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) -2)))
(*.f64 (cbrt.f64 1/2) (cbrt.f64 (/.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) a)))
(*.f64 (cbrt.f64 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (cbrt.f64 (*.f64 (pow.f64 (cbrt.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) 2) (/.f64 1/2 a))))
(*.f64 1 (cbrt.f64 (*.f64 (/.f64 -1/2 a) (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))))
(*.f64 (cbrt.f64 (*.f64 (/.f64 -1/2 a) (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))) 1)
(/.f64 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (cbrt.f64 (+.f64 a a)))
(/.f64 (*.f64 -1 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (cbrt.f64 (*.f64 -2 a)))
(/.f64 (*.f64 (cbrt.f64 1/2) (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (cbrt.f64 a))
(/.f64 (*.f64 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) -1) (cbrt.f64 (*.f64 -2 a)))
(/.f64 (*.f64 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (cbrt.f64 1/2)) (cbrt.f64 a))
(/.f64 (/.f64 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (cbrt.f64 2)) (cbrt.f64 a))
(/.f64 (/.f64 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (cbrt.f64 a)) (cbrt.f64 2))
(/.f64 (cbrt.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) (cbrt.f64 (*.f64 -2 a)))
(/.f64 (cbrt.f64 (/.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) a)) (cbrt.f64 2))
(/.f64 (cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) -2)) (cbrt.f64 a))
(/.f64 (neg.f64 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (cbrt.f64 (*.f64 -2 a)))
(/.f64 (/.f64 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (cbrt.f64 (cbrt.f64 (+.f64 a a)))) (pow.f64 (cbrt.f64 (cbrt.f64 (+.f64 a a))) 2))
(/.f64 (cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (cbrt.f64 (*.f64 -2 a)))) (pow.f64 (cbrt.f64 (cbrt.f64 (+.f64 a a))) 2))
(/.f64 (cbrt.f64 (*.f64 (/.f64 -1/2 a) (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))) 1)
(pow.f64 (*.f64 (/.f64 -1/2 a) (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) 1/3)
(pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 (/.f64 -1/2 a) (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)))) 3)
(pow.f64 (cbrt.f64 (*.f64 (/.f64 -1/2 a) (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))) 1)
(cbrt.f64 (*.f64 (/.f64 -1/2 a) (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)))
(neg.f64 (*.f64 (cbrt.f64 (*.f64 (/.f64 -1/2 a) (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))) -1))
(neg.f64 (*.f64 -1 (cbrt.f64 (*.f64 (/.f64 -1/2 a) (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)))))
(if (!=.f64 (cbrt.f64 (*.f64 (/.f64 -1/2 a) (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))) 0) (/.f64 1 (pow.f64 (cbrt.f64 (*.f64 (/.f64 -1/2 a) (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))) -1)) (cbrt.f64 (*.f64 (/.f64 -1/2 a) (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))))
(if (!=.f64 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) 0) (/.f64 1 (/.f64 (cbrt.f64 (+.f64 a a)) (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (cbrt.f64 (*.f64 (/.f64 -1/2 a) (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))))
(if (!=.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) 2)) 0) (/.f64 (cbrt.f64 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (/.f64 (cbrt.f64 (+.f64 a a)) (cbrt.f64 (pow.f64 (cbrt.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) 2)))) (cbrt.f64 (*.f64 (/.f64 -1/2 a) (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))))
Outputs
(sqrt.f64 (neg.f64 (pow.f64 h 2)))
(sqrt.f64 (neg.f64 (*.f64 h h)))
(sqrt.f64 (neg.f64 (pow.f64 h 2)))
(sqrt.f64 (neg.f64 (*.f64 h h)))
(sqrt.f64 (neg.f64 (pow.f64 h 2)))
(sqrt.f64 (neg.f64 (*.f64 h h)))
(sqrt.f64 (*.f64 (pow.f64 (pow.f64 g 2) 1/3) (*.f64 g (pow.f64 g 1/3))))
(sqrt.f64 (*.f64 (pow.f64 (cbrt.f64 g) 2) (*.f64 (cbrt.f64 g) g)))
(+.f64 (sqrt.f64 (*.f64 (pow.f64 (pow.f64 g 2) 1/3) (*.f64 g (pow.f64 g 1/3)))) (*.f64 -1/2 (/.f64 (pow.f64 h 2) (sqrt.f64 (*.f64 (pow.f64 (pow.f64 g 2) 1/3) (*.f64 g (pow.f64 g 1/3)))))))
(fma.f64 (/.f64 (*.f64 h h) (sqrt.f64 (*.f64 (pow.f64 (cbrt.f64 g) 2) (*.f64 (cbrt.f64 g) g)))) -1/2 (sqrt.f64 (*.f64 (pow.f64 (cbrt.f64 g) 2) (*.f64 (cbrt.f64 g) g))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 h 4) (pow.f64 (/.f64 -1/2 (sqrt.f64 (*.f64 (pow.f64 (pow.f64 g 2) 1/3) (*.f64 g (pow.f64 g 1/3))))) 2)) (sqrt.f64 (*.f64 (pow.f64 (pow.f64 g 2) 1/3) (*.f64 g (pow.f64 g 1/3)))))) (+.f64 (sqrt.f64 (*.f64 (pow.f64 (pow.f64 g 2) 1/3) (*.f64 g (pow.f64 g 1/3)))) (*.f64 -1/2 (/.f64 (pow.f64 h 2) (sqrt.f64 (*.f64 (pow.f64 (pow.f64 g 2) 1/3) (*.f64 g (pow.f64 g 1/3))))))))
(fma.f64 -1/2 (/.f64 (*.f64 (pow.f64 h 4) (pow.f64 (/.f64 -1/2 (sqrt.f64 (*.f64 (pow.f64 (cbrt.f64 g) 2) (*.f64 (cbrt.f64 g) g)))) 2)) (sqrt.f64 (*.f64 (pow.f64 (cbrt.f64 g) 2) (*.f64 (cbrt.f64 g) g)))) (fma.f64 (/.f64 (*.f64 h h) (sqrt.f64 (*.f64 (pow.f64 (cbrt.f64 g) 2) (*.f64 (cbrt.f64 g) g)))) -1/2 (sqrt.f64 (*.f64 (pow.f64 (cbrt.f64 g) 2) (*.f64 (cbrt.f64 g) g)))))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 h 6) (pow.f64 (/.f64 -1/2 (sqrt.f64 (*.f64 (pow.f64 (pow.f64 g 2) 1/3) (*.f64 g (pow.f64 g 1/3))))) 2)) (*.f64 (pow.f64 (sqrt.f64 (*.f64 (pow.f64 (pow.f64 g 2) 1/3) (*.f64 g (pow.f64 g 1/3)))) 2) (sqrt.f64 (*.f64 (pow.f64 (pow.f64 g 2) 1/3) (*.f64 g (pow.f64 g 1/3))))))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 h 4) (pow.f64 (/.f64 -1/2 (sqrt.f64 (*.f64 (pow.f64 (pow.f64 g 2) 1/3) (*.f64 g (pow.f64 g 1/3))))) 2)) (sqrt.f64 (*.f64 (pow.f64 (pow.f64 g 2) 1/3) (*.f64 g (pow.f64 g 1/3)))))) (+.f64 (sqrt.f64 (*.f64 (pow.f64 (pow.f64 g 2) 1/3) (*.f64 g (pow.f64 g 1/3)))) (*.f64 -1/2 (/.f64 (pow.f64 h 2) (sqrt.f64 (*.f64 (pow.f64 (pow.f64 g 2) 1/3) (*.f64 g (pow.f64 g 1/3)))))))))
(fma.f64 (/.f64 (*.f64 (pow.f64 h 6) (pow.f64 (/.f64 -1/2 (sqrt.f64 (*.f64 (pow.f64 (cbrt.f64 g) 2) (*.f64 (cbrt.f64 g) g)))) 2)) (pow.f64 (sqrt.f64 (*.f64 (pow.f64 (cbrt.f64 g) 2) (*.f64 (cbrt.f64 g) g))) 3)) -1/4 (fma.f64 -1/2 (/.f64 (*.f64 (pow.f64 h 4) (pow.f64 (/.f64 -1/2 (sqrt.f64 (*.f64 (pow.f64 (cbrt.f64 g) 2) (*.f64 (cbrt.f64 g) g)))) 2)) (sqrt.f64 (*.f64 (pow.f64 (cbrt.f64 g) 2) (*.f64 (cbrt.f64 g) g)))) (fma.f64 (/.f64 (*.f64 h h) (sqrt.f64 (*.f64 (pow.f64 (cbrt.f64 g) 2) (*.f64 (cbrt.f64 g) g)))) -1/2 (sqrt.f64 (*.f64 (pow.f64 (cbrt.f64 g) 2) (*.f64 (cbrt.f64 g) g))))))
(*.f64 (cbrt.f64 g) (cbrt.f64 g))
(pow.f64 (cbrt.f64 g) 2)
(*.f64 (cbrt.f64 (cbrt.f64 (pow.f64 g 2))) (cbrt.f64 (*.f64 (cbrt.f64 g) g)))
(cbrt.f64 (*.f64 (pow.f64 (cbrt.f64 g) 2) (*.f64 (cbrt.f64 g) g)))
(*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (cbrt.f64 g))) 2) (pow.f64 (cbrt.f64 (cbrt.f64 (pow.f64 (*.f64 (cbrt.f64 g) g) 2))) 2))
(*.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (cbrt.f64 g)) 2)) (cbrt.f64 (pow.f64 (cbrt.f64 (pow.f64 (*.f64 (cbrt.f64 g) g) 2)) 2)))
(*.f64 (cbrt.f64 (cbrt.f64 g)) (cbrt.f64 (*.f64 (cbrt.f64 (pow.f64 g 2)) g)))
(cbrt.f64 (*.f64 (cbrt.f64 g) (*.f64 (pow.f64 (cbrt.f64 g) 2) g)))
(*.f64 (cbrt.f64 (*.f64 (cbrt.f64 g) g)) (cbrt.f64 (cbrt.f64 (pow.f64 g 2))))
(cbrt.f64 (*.f64 (pow.f64 (cbrt.f64 g) 2) (*.f64 (cbrt.f64 g) g)))
(*.f64 (neg.f64 (cbrt.f64 g)) (neg.f64 (cbrt.f64 g)))
(pow.f64 (cbrt.f64 g) 2)
(*.f64 (cbrt.f64 (*.f64 (neg.f64 g) (neg.f64 (cbrt.f64 g)))) (cbrt.f64 (cbrt.f64 (pow.f64 g 2))))
(cbrt.f64 (*.f64 (pow.f64 (cbrt.f64 g) 2) (*.f64 (cbrt.f64 g) g)))
(*.f64 (cbrt.f64 (cbrt.f64 g)) (cbrt.f64 (*.f64 g (cbrt.f64 (pow.f64 g 2)))))
(cbrt.f64 (*.f64 (cbrt.f64 g) (*.f64 (pow.f64 (cbrt.f64 g) 2) g)))
(*.f64 (cbrt.f64 (neg.f64 (cbrt.f64 g))) (cbrt.f64 (*.f64 (cbrt.f64 (pow.f64 g 2)) (neg.f64 g))))
(cbrt.f64 (*.f64 (neg.f64 (cbrt.f64 g)) (*.f64 (pow.f64 (cbrt.f64 g) 2) (neg.f64 g))))
(*.f64 (cbrt.f64 (cbrt.f64 (*.f64 (cbrt.f64 g) g))) (cbrt.f64 (cbrt.f64 (*.f64 (pow.f64 (*.f64 (cbrt.f64 g) g) 2) (pow.f64 g 2)))))
(cbrt.f64 (*.f64 (cbrt.f64 (*.f64 (cbrt.f64 g) g)) (cbrt.f64 (*.f64 (*.f64 g g) (pow.f64 (*.f64 (cbrt.f64 g) g) 2)))))
(*.f64 (cbrt.f64 (*.f64 (*.f64 (cbrt.f64 g) g) (cbrt.f64 (cbrt.f64 (pow.f64 g 2))))) (cbrt.f64 (cbrt.f64 (*.f64 (cbrt.f64 g) g))))
(cbrt.f64 (*.f64 (*.f64 (cbrt.f64 (pow.f64 (cbrt.f64 g) 2)) (*.f64 (cbrt.f64 g) g)) (cbrt.f64 (*.f64 (cbrt.f64 g) g))))
(*.f64 (*.f64 (neg.f64 (cbrt.f64 g)) -1) (*.f64 (neg.f64 (cbrt.f64 g)) -1))
(pow.f64 (cbrt.f64 g) 2)
(*.f64 -1 (cbrt.f64 (neg.f64 (pow.f64 g 2))))
(pow.f64 (cbrt.f64 g) 2)
(*.f64 1 (cbrt.f64 (pow.f64 g 2)))
(pow.f64 (cbrt.f64 g) 2)
(*.f64 (cbrt.f64 (pow.f64 g 2)) 1)
(pow.f64 (cbrt.f64 g) 2)
(/.f64 (cbrt.f64 (pow.f64 g 2)) 1)
(pow.f64 (cbrt.f64 g) 2)
(pow.f64 (pow.f64 g 2) 1/3)
(pow.f64 (cbrt.f64 g) 2)
(pow.f64 (cbrt.f64 (cbrt.f64 (pow.f64 g 2))) 3)
(pow.f64 (cbrt.f64 g) 2)
(pow.f64 (cbrt.f64 g) 2)
(pow.f64 (neg.f64 (cbrt.f64 g)) 2)
(pow.f64 (cbrt.f64 g) 2)
(pow.f64 (cbrt.f64 (pow.f64 g 2)) 1)
(pow.f64 (cbrt.f64 g) 2)
(cbrt.f64 (pow.f64 g 2))
(pow.f64 (cbrt.f64 g) 2)
(neg.f64 (neg.f64 (cbrt.f64 (pow.f64 g 2))))
(pow.f64 (cbrt.f64 g) 2)
(if (!=.f64 (cbrt.f64 (pow.f64 g 2)) 0) (/.f64 1 (pow.f64 (cbrt.f64 (pow.f64 g 2)) -1)) (cbrt.f64 (pow.f64 g 2)))
(if (!=.f64 (pow.f64 (cbrt.f64 g) 2) 0) (pow.f64 (pow.f64 (pow.f64 (cbrt.f64 g) 2) -1) -1) (pow.f64 (cbrt.f64 g) 2))
(fabs.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))
(*.f64 (neg.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (neg.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))
(sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))
(*.f64 (*.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) -1) (*.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) -1))
(sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))
(*.f64 (+.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0) (-.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0))
(sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))
(*.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3))
(*.f64 (cbrt.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (pow.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 2/3))
(*.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))
(*.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (+.f64 0 (*.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0))) (-.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0))
(*.f64 (cbrt.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (pow.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 2/3))
(*.f64 (*.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (cbrt.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (*.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (cbrt.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))))
(sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))
(*.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(*.f64 (cbrt.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (pow.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 2/3))
(*.f64 1 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 1)
(sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))
(-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0)
(sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 1)
(sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))
(sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))
(sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))
(sqrt.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2))
(sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))
(fma.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) 0)
(*.f64 (cbrt.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (pow.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 2/3))
(fma.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0)
(sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))
(fma.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2/3) (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 0)
(*.f64 (cbrt.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (pow.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 2/3))
(fma.f64 1 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0)
(sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))
(fma.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 1 0)
(sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))
(pow.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) 1/3)
(sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))
(pow.f64 (cbrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 3)
(sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))
(pow.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 2)
(sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))
(pow.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)) 1/2)
(sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))
(pow.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) 1/2)
(sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))
(pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 1)
(sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))
(cbrt.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3))
(sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))
(neg.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))
(sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))
(if (!=.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0) (/.f64 1 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) -1)) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(if (!=.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 0) (/.f64 -1 (/.f64 -1 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))
(if (!=.f64 0 0) (/.f64 (-.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) 0) (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) (+.f64 0 (*.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0)))) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(if (!=.f64 0 0) (/.f64 (pow.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 2) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))
(if (!=.f64 (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) (+.f64 0 (*.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0))) 0) (/.f64 (-.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) 0) (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) (+.f64 0 (*.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0)))) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(if (!=.f64 (pow.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 2) 0) (/.f64 (pow.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 2) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))
(if (!=.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0) (/.f64 (-.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 3) 0) (+.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) (+.f64 0 (*.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0)))) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(if (!=.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 0) (/.f64 (pow.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 2) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))
(if (!=.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0) (/.f64 (-.f64 (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2) 0) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))
(if (!=.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 0) (/.f64 (pow.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 2) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))
(+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 0)
(sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))
(*.f64 (cbrt.f64 (cbrt.f64 (*.f64 (/.f64 -1/2 a) (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)))) (cbrt.f64 (cbrt.f64 (pow.f64 (*.f64 (/.f64 -1/2 a) (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) 2))))
(cbrt.f64 (*.f64 (cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 -2 a))) (cbrt.f64 (pow.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 -2 a)) 2))))
(*.f64 (cbrt.f64 (cbrt.f64 (pow.f64 (*.f64 (/.f64 -1/2 a) (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) 2))) (cbrt.f64 (cbrt.f64 (*.f64 (/.f64 -1/2 a) (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)))))
(cbrt.f64 (*.f64 (cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 -2 a))) (cbrt.f64 (pow.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 -2 a)) 2))))
(*.f64 (cbrt.f64 (/.f64 1/2 a)) (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))
(cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 -2 a)))
(*.f64 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (cbrt.f64 (/.f64 1/2 a)))
(cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 -2 a)))
(*.f64 (cbrt.f64 (cbrt.f64 (/.f64 1/2 a))) (cbrt.f64 (cbrt.f64 (*.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (pow.f64 (*.f64 (/.f64 -1/2 a) (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) 2)))))
(cbrt.f64 (*.f64 (cbrt.f64 (/.f64 1/2 a)) (cbrt.f64 (neg.f64 (*.f64 (pow.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 -2 a)) 2) (+.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))))))
(*.f64 (cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (cbrt.f64 (*.f64 -2 a)))) (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 1/2 a))) 2))
(*.f64 (cbrt.f64 (*.f64 (+.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (cbrt.f64 (/.f64 -1/2 a)))) (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 1/2 a))) 2))
(*.f64 (cbrt.f64 (cbrt.f64 (/.f64 1/2 a))) (cbrt.f64 (/.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) (cbrt.f64 (*.f64 4 (pow.f64 a 2))))))
(cbrt.f64 (/.f64 (*.f64 (cbrt.f64 (/.f64 1/2 a)) (+.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g)) (neg.f64 (cbrt.f64 (*.f64 (*.f64 a a) 4)))))
(*.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (cbrt.f64 (pow.f64 (cbrt.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) 2)))
(cbrt.f64 (*.f64 (/.f64 (cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) -8)) a) (pow.f64 (cbrt.f64 (+.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g)) 2)))
(*.f64 (cbrt.f64 (cbrt.f64 (cbrt.f64 (*.f64 (/.f64 -1/2 a) (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))))) (cbrt.f64 (cbrt.f64 (*.f64 (cbrt.f64 (pow.f64 (*.f64 (/.f64 -1/2 a) (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) 2)) (pow.f64 (*.f64 (/.f64 -1/2 a) (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) 2)))))
(cbrt.f64 (*.f64 (cbrt.f64 (cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 -2 a)))) (cbrt.f64 (*.f64 (cbrt.f64 (pow.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 -2 a)) 2)) (pow.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 -2 a)) 2)))))
(*.f64 (cbrt.f64 (cbrt.f64 (/.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) 8))) (cbrt.f64 (/.f64 (pow.f64 (cbrt.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) 2) a)))
(cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 -2 a)))
(*.f64 (cbrt.f64 (/.f64 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) a)) (cbrt.f64 (*.f64 (pow.f64 (cbrt.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) 2) 1/2)))
(cbrt.f64 (*.f64 (/.f64 (cbrt.f64 (+.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g)) (neg.f64 a)) (*.f64 (pow.f64 (cbrt.f64 (+.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g)) 2) 1/2)))
(*.f64 (cbrt.f64 (cbrt.f64 (/.f64 1/2 a))) (cbrt.f64 (neg.f64 (*.f64 (cbrt.f64 (/.f64 1/4 (pow.f64 a 2))) (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)))))
(cbrt.f64 (*.f64 (cbrt.f64 (/.f64 1/2 a)) (neg.f64 (*.f64 (+.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (cbrt.f64 (/.f64 1/4 (*.f64 a a)))))))
(*.f64 (cbrt.f64 (pow.f64 a -1)) (cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) -2)))
(cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 -2 a)))
(*.f64 (cbrt.f64 1/2) (cbrt.f64 (/.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) a)))
(cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 -2 a)))
(*.f64 (cbrt.f64 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (cbrt.f64 (*.f64 (pow.f64 (cbrt.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) 2) (/.f64 1/2 a))))
(cbrt.f64 (*.f64 (neg.f64 (cbrt.f64 (+.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (*.f64 (pow.f64 (cbrt.f64 (+.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g)) 2) (/.f64 1/2 a))))
(*.f64 1 (cbrt.f64 (*.f64 (/.f64 -1/2 a) (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))))
(cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 -2 a)))
(*.f64 (cbrt.f64 (*.f64 (/.f64 -1/2 a) (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))) 1)
(cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 -2 a)))
(/.f64 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (cbrt.f64 (+.f64 a a)))
(cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 -2 a)))
(/.f64 (*.f64 -1 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (cbrt.f64 (*.f64 -2 a)))
(cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 -2 a)))
(/.f64 (*.f64 (cbrt.f64 1/2) (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (cbrt.f64 a))
(cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 -2 a)))
(/.f64 (*.f64 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) -1) (cbrt.f64 (*.f64 -2 a)))
(cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 -2 a)))
(/.f64 (*.f64 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (cbrt.f64 1/2)) (cbrt.f64 a))
(cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 -2 a)))
(/.f64 (/.f64 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (cbrt.f64 2)) (cbrt.f64 a))
(cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 -2 a)))
(/.f64 (/.f64 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (cbrt.f64 a)) (cbrt.f64 2))
(cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 -2 a)))
(/.f64 (cbrt.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) (cbrt.f64 (*.f64 -2 a)))
(cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 -2 a)))
(/.f64 (cbrt.f64 (/.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) a)) (cbrt.f64 2))
(cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 -2 a)))
(/.f64 (cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) -2)) (cbrt.f64 a))
(cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 -2 a)))
(/.f64 (neg.f64 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (cbrt.f64 (*.f64 -2 a)))
(cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 -2 a)))
(/.f64 (/.f64 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (cbrt.f64 (cbrt.f64 (+.f64 a a)))) (pow.f64 (cbrt.f64 (cbrt.f64 (+.f64 a a))) 2))
(cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 -2 a)))
(/.f64 (cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (cbrt.f64 (*.f64 -2 a)))) (pow.f64 (cbrt.f64 (cbrt.f64 (+.f64 a a))) 2))
(cbrt.f64 (/.f64 (*.f64 (+.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (cbrt.f64 (/.f64 -1/2 a))) (pow.f64 (cbrt.f64 (*.f64 2 a)) 2)))
(/.f64 (cbrt.f64 (*.f64 (/.f64 -1/2 a) (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))) 1)
(cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 -2 a)))
(pow.f64 (*.f64 (/.f64 -1/2 a) (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) 1/3)
(cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 -2 a)))
(pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 (/.f64 -1/2 a) (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)))) 3)
(cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 -2 a)))
(pow.f64 (cbrt.f64 (*.f64 (/.f64 -1/2 a) (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))) 1)
(cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 -2 a)))
(cbrt.f64 (*.f64 (/.f64 -1/2 a) (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)))
(cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 -2 a)))
(neg.f64 (*.f64 (cbrt.f64 (*.f64 (/.f64 -1/2 a) (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))) -1))
(cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 -2 a)))
(neg.f64 (*.f64 -1 (cbrt.f64 (*.f64 (/.f64 -1/2 a) (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)))))
(cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 -2 a)))
(if (!=.f64 (cbrt.f64 (*.f64 (/.f64 -1/2 a) (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))) 0) (/.f64 1 (pow.f64 (cbrt.f64 (*.f64 (/.f64 -1/2 a) (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))) -1)) (cbrt.f64 (*.f64 (/.f64 -1/2 a) (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))))
(if (!=.f64 (cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 -2 a))) 0) (/.f64 -1 (/.f64 -1 (cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 -2 a))))) (cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 -2 a))))
(if (!=.f64 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) 0) (/.f64 1 (/.f64 (cbrt.f64 (+.f64 a a)) (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))))) (cbrt.f64 (*.f64 (/.f64 -1/2 a) (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))))
(if (!=.f64 (neg.f64 (cbrt.f64 (+.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) 0) (/.f64 -1 (/.f64 (cbrt.f64 (*.f64 2 a)) (cbrt.f64 (+.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g)))) (cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 -2 a))))
(if (!=.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) 2)) 0) (/.f64 (cbrt.f64 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))))) (/.f64 (cbrt.f64 (+.f64 a a)) (cbrt.f64 (pow.f64 (cbrt.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) 2)))) (cbrt.f64 (*.f64 (/.f64 -1/2 a) (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))))
(if (!=.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (+.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g)) 2)) 0) (cbrt.f64 (/.f64 (neg.f64 (cbrt.f64 (+.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (/.f64 (*.f64 2 a) (pow.f64 (cbrt.f64 (+.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g)) 2)))) (cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 -2 a))))

eval2.0s (4%)

Compiler

Compiled 96618 to 66734 computations (30.9% saved)

prune1.0s (2.1%)

Pruning

45 alts after pruning (45 fresh and 0 done)

PrunedKeptTotal
New1876311907
Fresh181432
Picked101
Done505
Total1900451945
Error
1.1b
Counts
1945 → 45
Alt Table
Click to see full alt table
StatusErrorProgram
33.0b
(+.f64 (/.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) a)) (cbrt.f64 2)) (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))
30.7b
(+.f64 (/.f64 (cbrt.f64 (/.f64 (-.f64 g (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) -2)) (cbrt.f64 a)) (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))
29.0b
(+.f64 (/.f64 (cbrt.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) (cbrt.f64 (+.f64 a a))) (/.f64 (cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) -2)) (cbrt.f64 a)))
42.9b
(+.f64 (/.f64 (cbrt.f64 (-.f64 (neg.f64 g) g)) (cbrt.f64 (+.f64 a a))) (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))
33.2b
(+.f64 (*.f64 (cbrt.f64 1/2) (cbrt.f64 (/.f64 (-.f64 (fabs.f64 g) g) a))) (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))
32.9b
(+.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (+.f64 a a))) (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))
46.1b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (+.f64 (neg.f64 g) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 -1 g))))) (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))
31.5b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (+.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) (/.f64 (/.f64 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (cbrt.f64 (cbrt.f64 (+.f64 a a)))) (pow.f64 (cbrt.f64 (cbrt.f64 (+.f64 a a))) 2)))
31.4b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (+.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) (/.f64 (/.f64 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (cbrt.f64 2)) (cbrt.f64 a)))
32.9b
(+.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 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 -2 a))))
44.6b
(+.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) g))))
43.2b
(+.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 (cbrt.f64 (/.f64 1/2 a)) (neg.f64 (*.f64 (+.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (cbrt.f64 (/.f64 1/4 (*.f64 a a))))))))
46.3b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (+.f64 (neg.f64 g) (neg.f64 g)))) (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))
55.3b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (+.f64 (neg.f64 g) g))) (pow.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) (*.f64 -2 a)) 1/3))
45.2b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (+.f64 (neg.f64 g) g))) (/.f64 (*.f64 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (cbrt.f64 1/2)) (cbrt.f64 a)))
45.2b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (+.f64 (neg.f64 g) g))) (/.f64 (cbrt.f64 (/.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) -2)) (cbrt.f64 a)))
45.2b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (+.f64 (neg.f64 g) g))) (/.f64 (cbrt.f64 (+.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) (cbrt.f64 (*.f64 -2 a))))
39.2b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (+.f64 (neg.f64 g) g))) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 (/.f64 (+.f64 g (fabs.f64 g)) a))))
46.9b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (+.f64 (neg.f64 g) g))) (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (pow.f64 (cbrt.f64 (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g)) 3))))
61.4b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (+.f64 (neg.f64 g) g))) (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (/.f64 (*.f64 -1/2 (*.f64 h h)) g))))
46.7b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (+.f64 (neg.f64 g) g))) (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (-.f64 (*.f64 (neg.f64 (cbrt.f64 g)) (cbrt.f64 (*.f64 g g))) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))
46.6b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (+.f64 (neg.f64 g) g))) (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (-.f64 (neg.f64 g) (*.f64 (cbrt.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (pow.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 2/3))))))
46.8b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (+.f64 (neg.f64 g) g))) (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (-.f64 (neg.f64 g) (sqrt.f64 (pow.f64 (/.f64 1 g) -2))))))
62.1b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (+.f64 (neg.f64 g) g))) (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (-.f64 (neg.f64 g) (neg.f64 g)))))
18.7b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (+.f64 (neg.f64 g) g))) (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (*.f64 g -2))))
43.8b
(*.f64 (/.f64 (cbrt.f64 (pow.f64 a -1)) (cbrt.f64 2)) (+.f64 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (cbrt.f64 (*.f64 -2 g))))
43.8b
(*.f64 (/.f64 (cbrt.f64 1/2) (cbrt.f64 a)) (+.f64 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (cbrt.f64 (*.f64 -2 g))))
43.7b
(*.f64 (/.f64 1 (cbrt.f64 (+.f64 a a))) (+.f64 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (cbrt.f64 (*.f64 -2 g))))
43.7b
(*.f64 (*.f64 (cbrt.f64 (sqrt.f64 1/2)) (/.f64 1 (cbrt.f64 (*.f64 a (sqrt.f64 2))))) (+.f64 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (cbrt.f64 (*.f64 -2 g))))
43.7b
(*.f64 (*.f64 (cbrt.f64 (sqrt.f64 1/2)) (cbrt.f64 (/.f64 (sqrt.f64 1/2) a))) (+.f64 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (cbrt.f64 (*.f64 -2 g))))
43.8b
(*.f64 (*.f64 (cbrt.f64 -1/2) (/.f64 -1 (cbrt.f64 a))) (+.f64 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (cbrt.f64 (*.f64 -2 g))))
29.1b
(*.f64 (cbrt.f64 (/.f64 1/2 a)) (+.f64 (cbrt.f64 (if (!=.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 0) (/.f64 (-.f64 (pow.f64 g 2) (pow.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) 2)) (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g)) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))) (cbrt.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))))
35.0b
(*.f64 (cbrt.f64 (/.f64 1/2 a)) (+.f64 (cbrt.f64 (if (!=.f64 (neg.f64 g) 0) (*.f64 (neg.f64 g) (+.f64 1 (/.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))) (cbrt.f64 (pow.f64 (pow.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g) 3) 1/3))))
29.0b
(*.f64 (cbrt.f64 (/.f64 1/2 a)) (+.f64 (cbrt.f64 (if (!=.f64 (neg.f64 g) 0) (*.f64 (neg.f64 g) (+.f64 1 (/.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))) (-.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2)))) g))) (cbrt.f64 (-.f64 (sqrt.f64 (*.f64 (-.f64 g h) (+.f64 g h))) g))))
29.1b
(*.f64 (cbrt.f64 (/.f64 1/2 a)) (+.f64 (cbrt.f64 (fma.f64 1/2 (/.f64 (pow.f64 h 2) (fabs.f64 g)) (neg.f64 (+.f64 g (fabs.f64 g))))) (cbrt.f64 (-.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))) g))))
30.4b
(*.f64 (cbrt.f64 (/.f64 1/2 a)) (+.f64 (cbrt.f64 (fma.f64 1/2 (/.f64 (pow.f64 h 2) (fabs.f64 g)) (neg.f64 (+.f64 g (fabs.f64 g))))) (cbrt.f64 (*.f64 -2 g))))
6.6b
(*.f64 (cbrt.f64 (/.f64 1/2 a)) (+.f64 (cbrt.f64 (-.f64 (neg.f64 g) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 -1 g)))) (cbrt.f64 (*.f64 -2 g))))
44.4b
(*.f64 (cbrt.f64 (/.f64 1/2 a)) (+.f64 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (cbrt.f64 (/.f64 (*.f64 (pow.f64 h 2) -1/2) g))))
35.4b
(*.f64 (cbrt.f64 (/.f64 1/2 a)) (+.f64 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (cbrt.f64 (-.f64 (pow.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) 4) g))))
29.0b
(*.f64 (cbrt.f64 (/.f64 1/2 a)) (+.f64 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (cbrt.f64 (-.f64 (sqrt.f64 (*.f64 (-.f64 g h) (+.f64 g h))) g))))
43.5b
(*.f64 (cbrt.f64 (/.f64 1/2 a)) (+.f64 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (cbrt.f64 (+.f64 (*.f64 -2 g) (*.f64 1/2 (/.f64 (pow.f64 h 2) g))))))
47.7b
(*.f64 (cbrt.f64 (/.f64 1/2 a)) (+.f64 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (pow.f64 g 2) (pow.f64 h 2))))) (cbrt.f64 (*.f64 -1/2 (+.f64 (/.f64 (pow.f64 h 2) g) (/.f64 (*.f64 1/4 (pow.f64 h 4)) (pow.f64 g 3)))))))
43.7b
(*.f64 (cbrt.f64 (/.f64 1/2 a)) (+.f64 (cbrt.f64 (-.f64 (neg.f64 g) (sqrt.f64 (*.f64 (-.f64 g h) (+.f64 g h))))) (cbrt.f64 (*.f64 -2 g))))
2.6b
(*.f64 (cbrt.f64 (/.f64 1/2 a)) (+.f64 (cbrt.f64 (-.f64 (neg.f64 g) (neg.f64 g))) (cbrt.f64 (*.f64 -2 g))))
52.0b
(*.f64 (cbrt.f64 (/.f64 1/2 a)) (+.f64 (cbrt.f64 (-.f64 (neg.f64 g) g)) (cbrt.f64 (*.f64 -2 g))))
Compiler

Compiled 3092 to 2284 computations (26.1% saved)

localize27.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.4b
(*.f64 (cbrt.f64 (/.f64 1/2 a)) (+.f64 (cbrt.f64 (-.f64 (neg.f64 g) (neg.f64 g))) (cbrt.f64 (*.f64 -2 g))))
0.5b
(cbrt.f64 (*.f64 -2 g))
0.5b
(cbrt.f64 (/.f64 1/2 a))
Compiler

Compiled 61 to 30 computations (50.8% saved)

series81.0ms (0.2%)

Counts
2 → 0
Calls

9 calls:

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

Compiled 7150 to 5820 computations (18.6% saved)

rewrite1.9s (3.9%)

Algorithm
batch-egg-rewrite

end0.0ms (0%)

Profiling

Loading profile data...