Details

Time bar (total: 6.0s)

analyze488.0ms (8.1%)

Algorithm
search
Search
TrueOtherFalseIter
0%48.6%51.4%0
0%48.6%51.4%1
24.3%24.3%51.4%2
24.3%24.3%51.4%3
30.4%18.2%51.4%4
30.4%18.2%51.4%5
33.4%15.2%51.4%6
33.4%15.2%51.4%7
34.6%14.1%51.4%8
34.8%13.9%51.4%9
35.4%13.2%51.4%10
35.6%13.1%51.4%11
35.9%12.7%51.4%12
Compiler

Compiled 28 to 20 computations (28.6% saved)

sample1.9s (31.1%)

Results
951.0ms6344×body256valid
453.0ms849×body2048valid
196.0ms530×body1024valid
182.0ms280×body4096valid
70.0ms253×body512valid

preprocess17.0ms (0.3%)

Algorithm
egg-herbie
Rules
18×fma-def_binary64
12×*-commutative_binary64
+-commutative_binary64
associate-/l*_binary64
distribute-lft-in_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02448
15048
27044
38444
48844
59244
69444
022
Stop Event
saturated
saturated
Calls
Call 1
Inputs
0
1
Outputs
0
1
Call 2
Inputs
(sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 x (sqrt.f64 (+.f64 (*.f64 (*.f64 4 p) p) (*.f64 x x)))))))
(sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 p (sqrt.f64 (+.f64 (*.f64 (*.f64 4 x) x) (*.f64 p p)))))))
Outputs
(sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 x (sqrt.f64 (+.f64 (*.f64 (*.f64 4 p) p) (*.f64 x x)))))))
(sqrt.f64 (+.f64 1/2 (*.f64 1/2 (/.f64 x (sqrt.f64 (fma.f64 (*.f64 4 p) p (*.f64 x x)))))))
(sqrt.f64 (+.f64 1/2 (/.f64 (*.f64 x 1/2) (sqrt.f64 (fma.f64 x x (*.f64 p (*.f64 4 p)))))))
(sqrt.f64 (fma.f64 1/2 (/.f64 x (sqrt.f64 (fma.f64 x x (*.f64 p (*.f64 4 p))))) 1/2))
(sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 p (sqrt.f64 (+.f64 (*.f64 (*.f64 4 x) x) (*.f64 p p)))))))
(sqrt.f64 (+.f64 1/2 (*.f64 (/.f64 p (sqrt.f64 (fma.f64 (*.f64 x 4) x (*.f64 p p)))) 1/2)))
(sqrt.f64 (+.f64 1/2 (*.f64 1/2 (/.f64 p (sqrt.f64 (fma.f64 4 (*.f64 x x) (*.f64 p p)))))))
(sqrt.f64 (fma.f64 1/2 (/.f64 p (sqrt.f64 (fma.f64 4 (*.f64 x x) (*.f64 p p)))) 1/2))
Compiler

Compiled 21 to 16 computations (23.8% saved)

simplify8.0ms (0.1%)

Algorithm
egg-herbie
Rules
fma-def_binary64
*-commutative_binary64
+-commutative_binary64
associate-/l*_binary64
distribute-lft-in_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01524
13124
24122
34822
45022
55222
65322
Stop Event
saturated
Counts
1 → 2
Calls
Call 1
Inputs
(sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 x (sqrt.f64 (+.f64 (*.f64 (*.f64 4 p) p) (*.f64 x x)))))))
Outputs
(sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 x (sqrt.f64 (+.f64 (*.f64 (*.f64 4 p) p) (*.f64 x x)))))))
(sqrt.f64 (+.f64 1/2 (*.f64 (/.f64 x (sqrt.f64 (fma.f64 (*.f64 4 p) p (*.f64 x x)))) 1/2)))
(sqrt.f64 (+.f64 1/2 (*.f64 1/2 (/.f64 x (sqrt.f64 (fma.f64 x x (*.f64 4 (*.f64 p p))))))))
(sqrt.f64 (fma.f64 1/2 (/.f64 x (sqrt.f64 (fma.f64 x x (*.f64 4 (*.f64 p p))))) 1/2))

eval1.0ms (0%)

Compiler

Compiled 34 to 24 computations (29.4% saved)

prune1.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New112
Fresh011
Picked000
Done000
Total123
Error
15.8b
Counts
3 → 1
Alt Table
Click to see full alt table
StatusErrorProgram
15.8b
(sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 x (sqrt.f64 (+.f64 (*.f64 (*.f64 4 p) p) (*.f64 x x)))))))
Compiler

Compiled 19 to 14 computations (26.3% saved)

localize35.0ms (0.6%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (*.f64 (*.f64 4 p) p) (*.f64 x x))
0.0b
(sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 x (sqrt.f64 (+.f64 (*.f64 (*.f64 4 p) p) (*.f64 x x)))))))
0.6b
(+.f64 1 (/.f64 x (sqrt.f64 (+.f64 (*.f64 (*.f64 4 p) p) (*.f64 x x)))))
14.3b
(sqrt.f64 (+.f64 (*.f64 (*.f64 4 p) p) (*.f64 x x)))
Compiler

Compiled 96 to 55 computations (42.7% saved)

series23.0ms (0.4%)

Counts
4 → 96
Calls

24 calls:

TimeVariablePointExpression
3.0ms
x
@-inf
(sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 x (sqrt.f64 (+.f64 (*.f64 (*.f64 4 p) p) (*.f64 x x)))))))
3.0ms
p
@0
(sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 x (sqrt.f64 (+.f64 (*.f64 (*.f64 4 p) p) (*.f64 x x)))))))
1.0ms
x
@-inf
(+.f64 1 (/.f64 x (sqrt.f64 (+.f64 (*.f64 (*.f64 4 p) p) (*.f64 x x)))))
1.0ms
x
@inf
(sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 x (sqrt.f64 (+.f64 (*.f64 (*.f64 4 p) p) (*.f64 x x)))))))
1.0ms
x
@0
(sqrt.f64 (+.f64 (*.f64 (*.f64 4 p) p) (*.f64 x x)))

rewrite91.0ms (1.5%)

Algorithm
batch-egg-rewrite
Rules
740×log-prod_binary64
492×fma-def_binary64
264×pow1/3_binary64
264×expm1-udef_binary64
264×log1p-udef_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01567
132548
2421146
Stop Event
node limit
Counts
4 → 174
Calls
Call 1
Inputs
(sqrt.f64 (+.f64 (*.f64 (*.f64 4 p) p) (*.f64 x x)))
(+.f64 1 (/.f64 x (sqrt.f64 (+.f64 (*.f64 (*.f64 4 p) p) (*.f64 x x)))))
(sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 x (sqrt.f64 (+.f64 (*.f64 (*.f64 4 p) p) (*.f64 x x)))))))
(+.f64 (*.f64 (*.f64 4 p) p) (*.f64 x x))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (hypot.f64 x (*.f64 2 p)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (hypot.f64 x (*.f64 2 p)))) (cbrt.f64 (exp.f64 (hypot.f64 x (*.f64 2 p)))))) (log.f64 (cbrt.f64 (exp.f64 (hypot.f64 x (*.f64 2 p))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (hypot.f64 x (*.f64 2 p))))) (log.f64 (sqrt.f64 (exp.f64 (hypot.f64 x (*.f64 2 p))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (hypot.f64 x (*.f64 2 p)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (hypot.f64 x (*.f64 2 p)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (hypot.f64 x (*.f64 2 p)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (hypot.f64 x (*.f64 2 p))) (pow.f64 (cbrt.f64 (hypot.f64 x (*.f64 2 p))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (hypot.f64 x (*.f64 2 p))) 2) (cbrt.f64 (hypot.f64 x (*.f64 2 p))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (hypot.f64 x (*.f64 2 p))) (sqrt.f64 (hypot.f64 x (*.f64 2 p))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cbrt.f64 (pow.f64 (pow.f64 (hypot.f64 x (*.f64 2 p)) 2) 2))) (sqrt.f64 (pow.f64 (cbrt.f64 (hypot.f64 x (*.f64 2 p))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/2) (hypot.f64 x (*.f64 2 p)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (pow.f64 (pow.f64 (hypot.f64 x (*.f64 2 p)) 2) 2)) 1/2) (pow.f64 (pow.f64 (cbrt.f64 (hypot.f64 x (*.f64 2 p))) 2) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (-.f64 (pow.f64 (*.f64 4 (*.f64 p p)) 2) (pow.f64 x 4))) (sqrt.f64 (fma.f64 p (*.f64 4 p) (*.f64 (neg.f64 x) x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (hypot.f64 (pow.f64 x 3) (pow.f64 (*.f64 2 p) 3)) (hypot.f64 (*.f64 4 (*.f64 p p)) (sqrt.f64 (-.f64 (pow.f64 x 4) (*.f64 4 (*.f64 (*.f64 p p) (*.f64 x x)))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (hypot.f64 x (*.f64 2 p)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (hypot.f64 x (*.f64 2 p)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (hypot.f64 x (*.f64 2 p)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (hypot.f64 x (*.f64 2 p))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (hypot.f64 x (*.f64 2 p))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (hypot.f64 x (*.f64 2 p)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (hypot.f64 x (*.f64 2 p))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (hypot.f64 x (*.f64 2 p)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (hypot.f64 x (*.f64 2 p)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 x (*.f64 2 p))))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 (*.f64 2 p) x)))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (hypot.f64 x (*.f64 2 p))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (hypot.f64 x (*.f64 2 p))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (hypot.f64 x (*.f64 2 p))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 2 (log.f64 (hypot.f64 x (*.f64 2 p)))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (hypot.f64 x (*.f64 2 p))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (+.f64 1 (/.f64 x (hypot.f64 x (*.f64 2 p)))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 1 (-.f64 1 (/.f64 x (hypot.f64 x (*.f64 2 p))))) (/.f64 (pow.f64 (/.f64 x (hypot.f64 x (*.f64 2 p))) 2) (-.f64 1 (/.f64 x (hypot.f64 x (*.f64 2 p))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 1 (/.f64 x (hypot.f64 x (*.f64 2 p)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 1 (/.f64 x (hypot.f64 x (*.f64 2 p)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (+.f64 1 (/.f64 x (hypot.f64 x (*.f64 2 p))))) (pow.f64 (cbrt.f64 (+.f64 1 (/.f64 x (hypot.f64 x (*.f64 2 p))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (+.f64 1 (/.f64 x (hypot.f64 x (*.f64 2 p))))) 2) (cbrt.f64 (+.f64 1 (/.f64 x (hypot.f64 x (*.f64 2 p))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (+.f64 1 (/.f64 x (hypot.f64 x (*.f64 2 p))))) (sqrt.f64 (+.f64 1 (/.f64 x (hypot.f64 x (*.f64 2 p))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 1 (pow.f64 (/.f64 x (hypot.f64 x (*.f64 2 p))) 3)) (/.f64 1 (fma.f64 (/.f64 x (hypot.f64 x (*.f64 2 p))) (-.f64 (/.f64 x (hypot.f64 x (*.f64 2 p))) 1) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 1 (pow.f64 (/.f64 x (hypot.f64 x (*.f64 2 p))) 2)) (/.f64 1 (-.f64 1 (/.f64 x (hypot.f64 x (*.f64 2 p))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (/.f64 x (hypot.f64 x (*.f64 2 p))) (-.f64 (/.f64 x (hypot.f64 x (*.f64 2 p))) 1) 1) (+.f64 1 (pow.f64 (/.f64 x (hypot.f64 x (*.f64 2 p))) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 1 (/.f64 x (hypot.f64 x (*.f64 2 p)))) (-.f64 1 (pow.f64 (/.f64 x (hypot.f64 x (*.f64 2 p))) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 1 (pow.f64 (/.f64 x (hypot.f64 x (*.f64 2 p))) 3)) (fma.f64 (/.f64 x (hypot.f64 x (*.f64 2 p))) (-.f64 (/.f64 x (hypot.f64 x (*.f64 2 p))) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 1 (pow.f64 (/.f64 x (hypot.f64 x (*.f64 2 p))) 3)) (+.f64 (pow.f64 (/.f64 x (hypot.f64 x (*.f64 2 p))) 2) (-.f64 1 (/.f64 x (hypot.f64 x (*.f64 2 p))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 1 (pow.f64 (/.f64 x (hypot.f64 x (*.f64 2 p))) 2)) (-.f64 1 (/.f64 x (hypot.f64 x (*.f64 2 p)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 1 (pow.f64 (/.f64 x (hypot.f64 x (*.f64 2 p))) 3))) (neg.f64 (fma.f64 (/.f64 x (hypot.f64 x (*.f64 2 p))) (-.f64 (/.f64 x (hypot.f64 x (*.f64 2 p))) 1) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 1 (pow.f64 (/.f64 x (hypot.f64 x (*.f64 2 p))) 2))) (neg.f64 (-.f64 1 (/.f64 x (hypot.f64 x (*.f64 2 p))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (/.f64 x (hypot.f64 x (*.f64 2 p))) 2) 1) (-.f64 (/.f64 x (hypot.f64 x (*.f64 2 p))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 1 (/.f64 x (hypot.f64 x (*.f64 2 p)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (+.f64 1 (/.f64 x (hypot.f64 x (*.f64 2 p)))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (+.f64 1 (/.f64 x (hypot.f64 x (*.f64 2 p))))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (+.f64 1 (/.f64 x (hypot.f64 x (*.f64 2 p))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (/.f64 x (hypot.f64 x (*.f64 2 p))) (-.f64 (/.f64 x (hypot.f64 x (*.f64 2 p))) 1) 1) (+.f64 1 (pow.f64 (/.f64 x (hypot.f64 x (*.f64 2 p))) 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (-.f64 1 (/.f64 x (hypot.f64 x (*.f64 2 p)))) (-.f64 1 (pow.f64 (/.f64 x (hypot.f64 x (*.f64 2 p))) 2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (+.f64 1 (/.f64 x (hypot.f64 x (*.f64 2 p)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (+.f64 1 (/.f64 x (hypot.f64 x (*.f64 2 p))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (+.f64 1 (/.f64 x (hypot.f64 x (*.f64 2 p)))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (+.f64 1 (/.f64 x (hypot.f64 x (*.f64 2 p)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (+.f64 1 (/.f64 x (hypot.f64 x (*.f64 2 p))))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (+.f64 1 (/.f64 x (hypot.f64 x (*.f64 2 p))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log1p.f64 (/.f64 x (hypot.f64 x (*.f64 2 p)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log1p.f64 (/.f64 x (hypot.f64 x (*.f64 2 p)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x (/.f64 1 (hypot.f64 x (*.f64 2 p))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (/.f64 x (hypot.f64 x (*.f64 2 p))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 x (hypot.f64 x (*.f64 2 p))) 1 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (/.f64 x (hypot.f64 x (*.f64 2 p)))) (cbrt.f64 (pow.f64 (/.f64 x (hypot.f64 x (*.f64 2 p))) 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (/.f64 x (hypot.f64 x (*.f64 2 p))) 2)) (cbrt.f64 (/.f64 x (hypot.f64 x (*.f64 2 p)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (*.f64 (cbrt.f64 x) (/.f64 1 (hypot.f64 x (*.f64 2 p)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) (/.f64 1 (hypot.f64 x (*.f64 2 p)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (/.f64 x (hypot.f64 x (*.f64 2 p)))) (sqrt.f64 (/.f64 x (hypot.f64 x (*.f64 2 p)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 x) (/.f64 1 (neg.f64 (hypot.f64 x (*.f64 2 p)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (hypot.f64 x (*.f64 2 p))) x 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 x) 2) 1) (/.f64 (cbrt.f64 x) (hypot.f64 x (*.f64 2 p))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 x) 1) (/.f64 (sqrt.f64 x) (hypot.f64 x (*.f64 2 p))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (pow.f64 (cbrt.f64 (hypot.f64 x (*.f64 2 p))) 2)) (/.f64 x (cbrt.f64 (hypot.f64 x (*.f64 2 p)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 x) 2) (pow.f64 (cbrt.f64 (hypot.f64 x (*.f64 2 p))) 2)) (cbrt.f64 (/.f64 x (hypot.f64 x (*.f64 2 p)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 x) (pow.f64 (cbrt.f64 (hypot.f64 x (*.f64 2 p))) 2)) (/.f64 (sqrt.f64 x) (cbrt.f64 (hypot.f64 x (*.f64 2 p)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (sqrt.f64 (hypot.f64 x (*.f64 2 p)))) (/.f64 x (sqrt.f64 (hypot.f64 x (*.f64 2 p)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 x) 2) (sqrt.f64 (hypot.f64 x (*.f64 2 p)))) (/.f64 (cbrt.f64 x) (sqrt.f64 (hypot.f64 x (*.f64 2 p)))) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (sqrt.f64 (fma.f64 (/.f64 x (hypot.f64 x (*.f64 2 p))) 1/2 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (fma.f64 (/.f64 x (hypot.f64 x (*.f64 2 p))) 1/2 1/2)))) (cbrt.f64 (exp.f64 (sqrt.f64 (fma.f64 (/.f64 x (hypot.f64 x (*.f64 2 p))) 1/2 1/2)))))) (log.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (fma.f64 (/.f64 x (hypot.f64 x (*.f64 2 p))) 1/2 1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (fma.f64 (/.f64 x (hypot.f64 x (*.f64 2 p))) 1/2 1/2))))) (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (fma.f64 (/.f64 x (hypot.f64 x (*.f64 2 p))) 1/2 1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (sqrt.f64 (fma.f64 (/.f64 x (hypot.f64 x (*.f64 2 p))) 1/2 1/2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (fma.f64 (/.f64 x (hypot.f64 x (*.f64 2 p))) 1/2 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 (/.f64 x (hypot.f64 x (*.f64 2 p))) 1/2 1/2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sqrt.f64 (fma.f64 (/.f64 x (hypot.f64 x (*.f64 2 p))) 1/2 1/2))) (cbrt.f64 (fma.f64 (/.f64 x (hypot.f64 x (*.f64 2 p))) 1/2 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 (/.f64 x (hypot.f64 x (*.f64 2 p))) 1/2 1/2)) (cbrt.f64 (sqrt.f64 (fma.f64 (/.f64 x (hypot.f64 x (*.f64 2 p))) 1/2 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (fma.f64 (/.f64 x (hypot.f64 x (*.f64 2 p))) 1/2 1/2) 1/4) (pow.f64 (fma.f64 (/.f64 x (hypot.f64 x (*.f64 2 p))) 1/2 1/2) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (+.f64 1 (/.f64 x (hypot.f64 x (*.f64 2 p))))) (sqrt.f64 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 1/2) (sqrt.f64 (+.f64 1 (/.f64 x (hypot.f64 x (*.f64 2 p))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cbrt.f64 (pow.f64 (fma.f64 (/.f64 x (hypot.f64 x (*.f64 2 p))) 1/2 1/2) 2))) (sqrt.f64 (cbrt.f64 (fma.f64 (/.f64 x (hypot.f64 x (*.f64 2 p))) 1/2 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/2) (sqrt.f64 (fma.f64 (/.f64 x (hypot.f64 x (*.f64 2 p))) 1/2 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (pow.f64 (fma.f64 (/.f64 x (hypot.f64 x (*.f64 2 p))) 1/2 1/2) 2)) 1/2) (pow.f64 (cbrt.f64 (fma.f64 (/.f64 x (hypot.f64 x (*.f64 2 p))) 1/2 1/2)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 (/.f64 x (hypot.f64 x (*.f64 2 p))) 1/2 1/2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 (/.f64 x (hypot.f64 x (*.f64 2 p))) 1/2 1/2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (/.f64 x (hypot.f64 x (*.f64 2 p))) 1/2 1/2) 3/2) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (sqrt.f64 (fma.f64 (/.f64 x (hypot.f64 x (*.f64 2 p))) 1/2 1/2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (/.f64 x (hypot.f64 x (*.f64 2 p))) 1/2 1/2) 1/4) 2)))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (sqrt.f64 (fma.f64 (/.f64 x (hypot.f64 x (*.f64 2 p))) 1/2 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (sqrt.f64 (fma.f64 (/.f64 x (hypot.f64 x (*.f64 2 p))) 1/2 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (fma.f64 (/.f64 x (hypot.f64 x (*.f64 2 p))) 1/2 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 (/.f64 x (hypot.f64 x (*.f64 2 p))) 1/2 1/2) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (sqrt.f64 (fma.f64 (/.f64 x (hypot.f64 x (*.f64 2 p))) 1/2 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (sqrt.f64 (fma.f64 (/.f64 x (hypot.f64 x (*.f64 2 p))) 1/2 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (sqrt.f64 (fma.f64 (/.f64 x (hypot.f64 x (*.f64 2 p))) 1/2 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 (/.f64 x (hypot.f64 x (*.f64 2 p))) 1/2 1/2)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (fma.f64 (/.f64 x (hypot.f64 x (*.f64 2 p))) 1/2 1/2))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (pow.f64 (hypot.f64 x (*.f64 2 p)) 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (*.f64 4 (*.f64 p p)) 2) (fma.f64 p (*.f64 4 p) (*.f64 (neg.f64 x) x))) (/.f64 (pow.f64 x 4) (fma.f64 p (*.f64 4 p) (*.f64 (neg.f64 x) x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (hypot.f64 x (*.f64 2 p)) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (hypot.f64 x (*.f64 2 p)) (hypot.f64 x (*.f64 2 p)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (hypot.f64 x (*.f64 2 p)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (hypot.f64 x (*.f64 2 p))) 2) (cbrt.f64 (pow.f64 (pow.f64 (hypot.f64 x (*.f64 2 p)) 2) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (hypot.f64 x (*.f64 2 p))) 2) (*.f64 (cbrt.f64 (hypot.f64 x (*.f64 2 p))) (hypot.f64 x (*.f64 2 p))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (pow.f64 (hypot.f64 x (*.f64 2 p)) 2) 2)) (pow.f64 (cbrt.f64 (hypot.f64 x (*.f64 2 p))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (hypot.f64 x (*.f64 2 p))) (*.f64 (sqrt.f64 (hypot.f64 x (*.f64 2 p))) (hypot.f64 x (*.f64 2 p))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 64 (pow.f64 (*.f64 p p) 3) (pow.f64 x 6)) (/.f64 1 (fma.f64 (*.f64 x x) (-.f64 (*.f64 x x) (*.f64 4 (*.f64 p p))) (pow.f64 (*.f64 4 (*.f64 p p)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (*.f64 4 (*.f64 p p)) 2) (pow.f64 x 4)) (/.f64 1 (fma.f64 p (*.f64 4 p) (*.f64 (neg.f64 x) x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (hypot.f64 x (*.f64 2 p))) 3) (sqrt.f64 (hypot.f64 x (*.f64 2 p))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (hypot.f64 x (*.f64 2 p)) (pow.f64 (cbrt.f64 (hypot.f64 x (*.f64 2 p))) 2)) (cbrt.f64 (hypot.f64 x (*.f64 2 p))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (*.f64 x x) (-.f64 (*.f64 x x) (*.f64 4 (*.f64 p p))) (pow.f64 (*.f64 4 (*.f64 p p)) 2)) (fma.f64 64 (pow.f64 (*.f64 p p) 3) (pow.f64 x 6))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 p (*.f64 4 p) (*.f64 (neg.f64 x) x)) (-.f64 (pow.f64 (*.f64 4 (*.f64 p p)) 2) (pow.f64 x 4))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 64 (pow.f64 (*.f64 p p) 3) (pow.f64 x 6)) (fma.f64 (*.f64 x x) (-.f64 (*.f64 x x) (*.f64 4 (*.f64 p p))) (pow.f64 (*.f64 4 (*.f64 p p)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 64 (pow.f64 (*.f64 p p) 3) (pow.f64 x 6)) (+.f64 (pow.f64 x 4) (-.f64 (pow.f64 (*.f64 4 (*.f64 p p)) 2) (*.f64 4 (*.f64 (*.f64 p p) (*.f64 x x))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 4 (*.f64 p p)) 2) (pow.f64 x 4)) (fma.f64 p (*.f64 4 p) (*.f64 (neg.f64 x) x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (fma.f64 64 (pow.f64 (*.f64 p p) 3) (pow.f64 x 6))) (neg.f64 (fma.f64 (*.f64 x x) (-.f64 (*.f64 x x) (*.f64 4 (*.f64 p p))) (pow.f64 (*.f64 4 (*.f64 p p)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 4 (*.f64 p p)) 2) (pow.f64 x 4))) (neg.f64 (fma.f64 p (*.f64 4 p) (*.f64 (neg.f64 x) x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 x 4) (pow.f64 (*.f64 4 (*.f64 p p)) 2)) (-.f64 (*.f64 x x) (*.f64 4 (*.f64 p p))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (hypot.f64 x (*.f64 2 p)) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (hypot.f64 x (*.f64 2 p)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (pow.f64 (hypot.f64 x (*.f64 2 p)) 2) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (pow.f64 (hypot.f64 x (*.f64 2 p)) 2) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cbrt.f64 (hypot.f64 x (*.f64 2 p))) 2) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (*.f64 x x) (-.f64 (*.f64 x x) (*.f64 4 (*.f64 p p))) (pow.f64 (*.f64 4 (*.f64 p p)) 2)) (fma.f64 64 (pow.f64 (*.f64 p p) 3) (pow.f64 x 6))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 p (*.f64 4 p) (*.f64 (neg.f64 x) x)) (-.f64 (pow.f64 (*.f64 4 (*.f64 p p)) 2) (pow.f64 x 4))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (pow.f64 (hypot.f64 x (*.f64 2 p)) 2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (hypot.f64 x (*.f64 2 p)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (pow.f64 (hypot.f64 x (*.f64 2 p)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 4 (*.f64 p p)))) (pow.f64 (exp.f64 x) x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 p) (*.f64 4 p)) (+.f64 1 (expm1.f64 (*.f64 x x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 4 (*.f64 p p)))) (+.f64 1 (expm1.f64 (*.f64 x x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x x))) (pow.f64 (exp.f64 p) (*.f64 4 p))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 x) x) (+.f64 1 (expm1.f64 (*.f64 4 (*.f64 p p))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x x))) (+.f64 1 (expm1.f64 (*.f64 4 (*.f64 p p))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (pow.f64 (hypot.f64 x (*.f64 2 p)) 2) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (hypot.f64 x (*.f64 2 p)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (hypot.f64 x (*.f64 2 p)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 2 (log.f64 (hypot.f64 x (*.f64 2 p)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 2 (log.f64 (hypot.f64 x (*.f64 2 p)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 4 (*.f64 p p) (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 p (*.f64 4 p) (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 4 p) p (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 4 (*.f64 p p)) 1 (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x x (*.f64 4 (*.f64 p p)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x x) 1 (*.f64 4 (*.f64 p p)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 4 (*.f64 p p)) (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 x x) (*.f64 4 (*.f64 p p)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 p p) 4 (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 p) 2) (*.f64 (cbrt.f64 p) (*.f64 4 p)) (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 4 (*.f64 p p))) (cbrt.f64 (pow.f64 (*.f64 4 (*.f64 p p)) 2)) (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (*.f64 4 (*.f64 p p)) 2)) (cbrt.f64 (*.f64 4 (*.f64 p p))) (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 (pow.f64 x 4)) (*.f64 4 (*.f64 p p)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (*.f64 (cbrt.f64 x) x) (*.f64 4 (*.f64 p p)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 x 4)) (pow.f64 (cbrt.f64 x) 2) (*.f64 4 (*.f64 p p)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 4 p)) 2) (*.f64 (cbrt.f64 (*.f64 4 p)) p) (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) x) (*.f64 4 (*.f64 p p)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 p) (*.f64 (sqrt.f64 p) (*.f64 4 p)) (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 2 p) (*.f64 2 p) (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sqrt.f64 p) 2) (*.f64 (*.f64 (sqrt.f64 p) 2) p) (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (sqrt.f64 x)) (sqrt.f64 x) (*.f64 4 (*.f64 p p)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 p (pow.f64 (cbrt.f64 (*.f64 4 p)) 2)) (cbrt.f64 (*.f64 4 p)) (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 p (*.f64 (sqrt.f64 p) 2)) (*.f64 (sqrt.f64 p) 2) (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 4 p) (pow.f64 (cbrt.f64 p) 2)) (cbrt.f64 p) (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 4 p) (sqrt.f64 p)) (sqrt.f64 p) (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x) (*.f64 4 (*.f64 p p)))))))

simplify85.0ms (1.4%)

Algorithm
egg-herbie
Rules
555×associate-*l/_binary64
532×associate-*r/_binary64
405×distribute-rgt-in_binary64
404×distribute-lft-in_binary64
317×associate-/r/_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02893139
19462992
236562729
Stop Event
node limit
Counts
270 → 279
Calls
Call 1
Inputs
x
(+.f64 (*.f64 2 (/.f64 (pow.f64 p 2) x)) x)
(+.f64 (*.f64 -2 (/.f64 (pow.f64 p 4) (pow.f64 x 3))) (+.f64 (*.f64 2 (/.f64 (pow.f64 p 2) x)) x))
(+.f64 (*.f64 -2 (/.f64 (pow.f64 p 4) (pow.f64 x 3))) (+.f64 (*.f64 4 (/.f64 (pow.f64 p 6) (pow.f64 x 5))) (+.f64 (*.f64 2 (/.f64 (pow.f64 p 2) x)) x)))
(*.f64 2 p)
(+.f64 (*.f64 1/4 (/.f64 (pow.f64 x 2) p)) (*.f64 2 p))
(+.f64 (*.f64 1/4 (/.f64 (pow.f64 x 2) p)) (+.f64 (*.f64 -1/64 (/.f64 (pow.f64 x 4) (pow.f64 p 3))) (*.f64 2 p)))
(+.f64 (*.f64 1/4 (/.f64 (pow.f64 x 2) p)) (+.f64 (*.f64 1/512 (/.f64 (pow.f64 x 6) (pow.f64 p 5))) (+.f64 (*.f64 -1/64 (/.f64 (pow.f64 x 4) (pow.f64 p 3))) (*.f64 2 p))))
(*.f64 -2 p)
(+.f64 (*.f64 -1/4 (/.f64 (pow.f64 x 2) p)) (*.f64 -2 p))
(+.f64 (*.f64 -1/4 (/.f64 (pow.f64 x 2) p)) (+.f64 (*.f64 1/64 (/.f64 (pow.f64 x 4) (pow.f64 p 3))) (*.f64 -2 p)))
(+.f64 (*.f64 -1/512 (/.f64 (pow.f64 x 6) (pow.f64 p 5))) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 x 2) p)) (+.f64 (*.f64 1/64 (/.f64 (pow.f64 x 4) (pow.f64 p 3))) (*.f64 -2 p))))
(*.f64 2 p)
(+.f64 (*.f64 1/4 (/.f64 (pow.f64 x 2) p)) (*.f64 2 p))
(+.f64 (*.f64 1/4 (/.f64 (pow.f64 x 2) p)) (+.f64 (*.f64 -1/64 (/.f64 (pow.f64 x 4) (pow.f64 p 3))) (*.f64 2 p)))
(+.f64 (*.f64 1/4 (/.f64 (pow.f64 x 2) p)) (+.f64 (*.f64 1/512 (/.f64 (pow.f64 x 6) (pow.f64 p 5))) (+.f64 (*.f64 -1/64 (/.f64 (pow.f64 x 4) (pow.f64 p 3))) (*.f64 2 p))))
x
(+.f64 (*.f64 2 (/.f64 (pow.f64 p 2) x)) x)
(+.f64 (*.f64 -2 (/.f64 (pow.f64 p 4) (pow.f64 x 3))) (+.f64 (*.f64 2 (/.f64 (pow.f64 p 2) x)) x))
(+.f64 (*.f64 -2 (/.f64 (pow.f64 p 4) (pow.f64 x 3))) (+.f64 (*.f64 4 (/.f64 (pow.f64 p 6) (pow.f64 x 5))) (+.f64 (*.f64 2 (/.f64 (pow.f64 p 2) x)) x)))
(*.f64 -1 x)
(+.f64 (*.f64 -2 (/.f64 (pow.f64 p 2) x)) (*.f64 -1 x))
(+.f64 (*.f64 2 (/.f64 (pow.f64 p 4) (pow.f64 x 3))) (+.f64 (*.f64 -2 (/.f64 (pow.f64 p 2) x)) (*.f64 -1 x)))
(+.f64 (*.f64 -4 (/.f64 (pow.f64 p 6) (pow.f64 x 5))) (+.f64 (*.f64 2 (/.f64 (pow.f64 p 4) (pow.f64 x 3))) (+.f64 (*.f64 -2 (/.f64 (pow.f64 p 2) x)) (*.f64 -1 x))))
1
(+.f64 1 (*.f64 1/2 (/.f64 x p)))
(+.f64 1 (+.f64 (*.f64 1/2 (/.f64 x p)) (*.f64 -1/16 (/.f64 (pow.f64 x 3) (pow.f64 p 3)))))
(+.f64 1 (+.f64 (*.f64 1/2 (/.f64 x p)) (+.f64 (*.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 p 6))) (pow.f64 (/.f64 -1/16 (pow.f64 p 3)) 2)) (*.f64 (pow.f64 x 5) p)) (*.f64 -1/16 (/.f64 (pow.f64 x 3) (pow.f64 p 3))))))
2
(+.f64 2 (*.f64 -2 (/.f64 (pow.f64 p 2) (pow.f64 x 2))))
(+.f64 2 (+.f64 (*.f64 -2 (/.f64 (pow.f64 p 2) (pow.f64 x 2))) (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -16 (pow.f64 p 4)) (pow.f64 (*.f64 -2 (pow.f64 p 2)) 2)) (pow.f64 x 4)))))
(+.f64 2 (+.f64 (*.f64 -2 (/.f64 (pow.f64 p 2) (pow.f64 x 2))) (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -16 (pow.f64 p 4)) (pow.f64 (*.f64 -2 (pow.f64 p 2)) 2)) (pow.f64 x 4))) (*.f64 -1/2 (/.f64 (+.f64 (*.f64 64 (pow.f64 p 6)) (*.f64 2 (*.f64 (+.f64 (*.f64 -16 (pow.f64 p 4)) (pow.f64 (*.f64 -2 (pow.f64 p 2)) 2)) (pow.f64 p 2)))) (pow.f64 x 6))))))
(*.f64 2 (/.f64 (pow.f64 p 2) (pow.f64 x 2)))
(+.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -16 (pow.f64 p 4)) (pow.f64 (*.f64 -2 (pow.f64 p 2)) 2)) (pow.f64 x 4))) (*.f64 2 (/.f64 (pow.f64 p 2) (pow.f64 x 2))))
(+.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 64 (pow.f64 p 6)) (*.f64 2 (*.f64 (+.f64 (*.f64 -16 (pow.f64 p 4)) (pow.f64 (*.f64 -2 (pow.f64 p 2)) 2)) (pow.f64 p 2)))) (pow.f64 x 6))) (+.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -16 (pow.f64 p 4)) (pow.f64 (*.f64 -2 (pow.f64 p 2)) 2)) (pow.f64 x 4))) (*.f64 2 (/.f64 (pow.f64 p 2) (pow.f64 x 2)))))
(+.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 64 (pow.f64 p 6)) (*.f64 2 (*.f64 (+.f64 (*.f64 -16 (pow.f64 p 4)) (pow.f64 (*.f64 -2 (pow.f64 p 2)) 2)) (pow.f64 p 2)))) (pow.f64 x 6))) (+.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -16 (pow.f64 p 4)) (pow.f64 (*.f64 -2 (pow.f64 p 2)) 2)) (pow.f64 x 4))) (+.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 2 (*.f64 (pow.f64 p 2) (+.f64 (*.f64 64 (pow.f64 p 6)) (*.f64 2 (*.f64 (+.f64 (*.f64 -16 (pow.f64 p 4)) (pow.f64 (*.f64 -2 (pow.f64 p 2)) 2)) (pow.f64 p 2)))))) (+.f64 (*.f64 -256 (pow.f64 p 8)) (pow.f64 (*.f64 -1/2 (+.f64 (*.f64 -16 (pow.f64 p 4)) (pow.f64 (*.f64 -2 (pow.f64 p 2)) 2))) 2))) (pow.f64 x 8))) (*.f64 2 (/.f64 (pow.f64 p 2) (pow.f64 x 2))))))
2
(+.f64 2 (*.f64 -2 (/.f64 (pow.f64 p 2) (pow.f64 x 2))))
(+.f64 2 (+.f64 (*.f64 1/2 (*.f64 (pow.f64 p 4) (*.f64 (-.f64 (*.f64 16 (/.f64 1 (pow.f64 x 6))) (pow.f64 (/.f64 -2 (pow.f64 x 3)) 2)) (pow.f64 x 2)))) (*.f64 -2 (/.f64 (pow.f64 p 2) (pow.f64 x 2)))))
(+.f64 (*.f64 -1/2 (*.f64 (+.f64 (*.f64 -2 (/.f64 (-.f64 (*.f64 16 (/.f64 1 (pow.f64 x 6))) (pow.f64 (/.f64 -2 (pow.f64 x 3)) 2)) (pow.f64 x 2))) (*.f64 64 (/.f64 1 (pow.f64 x 8)))) (*.f64 (pow.f64 x 2) (pow.f64 p 6)))) (+.f64 2 (+.f64 (*.f64 1/2 (*.f64 (pow.f64 p 4) (*.f64 (-.f64 (*.f64 16 (/.f64 1 (pow.f64 x 6))) (pow.f64 (/.f64 -2 (pow.f64 x 3)) 2)) (pow.f64 x 2)))) (*.f64 -2 (/.f64 (pow.f64 p 2) (pow.f64 x 2))))))
1
(+.f64 1 (*.f64 1/2 (/.f64 x p)))
(+.f64 1 (+.f64 (*.f64 1/2 (/.f64 x p)) (*.f64 -1/16 (/.f64 (pow.f64 x 3) (pow.f64 p 3)))))
(+.f64 1 (+.f64 (*.f64 1/2 (/.f64 x p)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (+.f64 (*.f64 -1/64 (pow.f64 x 4)) (pow.f64 (*.f64 -1/16 (pow.f64 x 2)) 2)) x) (pow.f64 p 5))) (*.f64 -1/16 (/.f64 (pow.f64 x 3) (pow.f64 p 3))))))
1
(+.f64 (*.f64 -1/2 (/.f64 x p)) 1)
(+.f64 (*.f64 -1/2 (/.f64 x p)) (+.f64 1 (*.f64 1/16 (/.f64 (pow.f64 x 3) (pow.f64 p 3)))))
(+.f64 (*.f64 -1/2 (/.f64 x p)) (+.f64 1 (+.f64 (*.f64 1/16 (/.f64 (pow.f64 x 3) (pow.f64 p 3))) (/.f64 (*.f64 (+.f64 (*.f64 -1/64 (pow.f64 x 4)) (pow.f64 (*.f64 -1/16 (pow.f64 x 2)) 2)) x) (pow.f64 p 5)))))
(sqrt.f64 1/2)
(+.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p)))
(+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p)) (*.f64 -1/32 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 2)) (pow.f64 p 2)))))
(+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 -3/128 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 3)) (pow.f64 p 3))) (+.f64 (*.f64 1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p)) (*.f64 -1/32 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 2)) (pow.f64 p 2))))))
(*.f64 (sqrt.f64 2) (sqrt.f64 1/2))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 p 2)) (*.f64 (sqrt.f64 2) (pow.f64 x 2)))) (*.f64 (sqrt.f64 2) (sqrt.f64 1/2)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 p 2)) (*.f64 (sqrt.f64 2) (pow.f64 x 2)))) (+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 1/2)) (*.f64 1/2 (/.f64 (*.f64 (sqrt.f64 1/2) (-.f64 (*.f64 -1/2 (+.f64 (*.f64 -16 (pow.f64 p 4)) (pow.f64 (*.f64 -2 (pow.f64 p 2)) 2))) (pow.f64 (*.f64 -1 (/.f64 (pow.f64 p 2) (sqrt.f64 2))) 2))) (*.f64 (sqrt.f64 2) (pow.f64 x 4))))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 p 2)) (*.f64 (sqrt.f64 2) (pow.f64 x 2)))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/2 (+.f64 (*.f64 64 (pow.f64 p 6)) (*.f64 2 (*.f64 (+.f64 (*.f64 -16 (pow.f64 p 4)) (pow.f64 (*.f64 -2 (pow.f64 p 2)) 2)) (pow.f64 p 2))))) (*.f64 -1 (/.f64 (*.f64 (-.f64 (*.f64 -1/2 (+.f64 (*.f64 -16 (pow.f64 p 4)) (pow.f64 (*.f64 -2 (pow.f64 p 2)) 2))) (pow.f64 (*.f64 -1 (/.f64 (pow.f64 p 2) (sqrt.f64 2))) 2)) (pow.f64 p 2)) (pow.f64 (sqrt.f64 2) 2)))) (sqrt.f64 1/2)) (*.f64 (sqrt.f64 2) (pow.f64 x 6)))) (+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 1/2)) (*.f64 1/2 (/.f64 (*.f64 (sqrt.f64 1/2) (-.f64 (*.f64 -1/2 (+.f64 (*.f64 -16 (pow.f64 p 4)) (pow.f64 (*.f64 -2 (pow.f64 p 2)) 2))) (pow.f64 (*.f64 -1 (/.f64 (pow.f64 p 2) (sqrt.f64 2))) 2))) (*.f64 (sqrt.f64 2) (pow.f64 x 4)))))))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (+.f64 (*.f64 -16 (pow.f64 p 4)) (pow.f64 (*.f64 -2 (pow.f64 p 2)) 2)) (sqrt.f64 1/2)) (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 x 3) p)))) (*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x)))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (+.f64 (*.f64 -16 (pow.f64 p 4)) (pow.f64 (*.f64 -2 (pow.f64 p 2)) 2)) (sqrt.f64 1/2)) (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 x 3) p)))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sqrt.f64 1/2) (-.f64 (*.f64 1/2 (+.f64 (*.f64 64 (pow.f64 p 6)) (*.f64 2 (*.f64 (+.f64 (*.f64 -16 (pow.f64 p 4)) (pow.f64 (*.f64 -2 (pow.f64 p 2)) 2)) (pow.f64 p 2))))) (pow.f64 (*.f64 1/4 (/.f64 (+.f64 (*.f64 -16 (pow.f64 p 4)) (pow.f64 (*.f64 -2 (pow.f64 p 2)) 2)) (*.f64 (sqrt.f64 2) p))) 2))) (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 x 5) p)))) (*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (+.f64 (*.f64 -16 (pow.f64 p 4)) (pow.f64 (*.f64 -2 (pow.f64 p 2)) 2)) (sqrt.f64 1/2)) (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 x 3) p)))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 1/2 (+.f64 (*.f64 2 (*.f64 (pow.f64 p 2) (+.f64 (*.f64 64 (pow.f64 p 6)) (*.f64 2 (*.f64 (+.f64 (*.f64 -16 (pow.f64 p 4)) (pow.f64 (*.f64 -2 (pow.f64 p 2)) 2)) (pow.f64 p 2)))))) (+.f64 (*.f64 -256 (pow.f64 p 8)) (pow.f64 (*.f64 -1/2 (+.f64 (*.f64 -16 (pow.f64 p 4)) (pow.f64 (*.f64 -2 (pow.f64 p 2)) 2))) 2)))) (*.f64 1/4 (/.f64 (*.f64 (+.f64 (*.f64 -16 (pow.f64 p 4)) (pow.f64 (*.f64 -2 (pow.f64 p 2)) 2)) (-.f64 (*.f64 1/2 (+.f64 (*.f64 64 (pow.f64 p 6)) (*.f64 2 (*.f64 (+.f64 (*.f64 -16 (pow.f64 p 4)) (pow.f64 (*.f64 -2 (pow.f64 p 2)) 2)) (pow.f64 p 2))))) (pow.f64 (*.f64 1/4 (/.f64 (+.f64 (*.f64 -16 (pow.f64 p 4)) (pow.f64 (*.f64 -2 (pow.f64 p 2)) 2)) (*.f64 (sqrt.f64 2) p))) 2))) (*.f64 (pow.f64 (sqrt.f64 2) 2) (pow.f64 p 2))))) (sqrt.f64 1/2)) (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 x 7) p)))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sqrt.f64 1/2) (-.f64 (*.f64 1/2 (+.f64 (*.f64 64 (pow.f64 p 6)) (*.f64 2 (*.f64 (+.f64 (*.f64 -16 (pow.f64 p 4)) (pow.f64 (*.f64 -2 (pow.f64 p 2)) 2)) (pow.f64 p 2))))) (pow.f64 (*.f64 1/4 (/.f64 (+.f64 (*.f64 -16 (pow.f64 p 4)) (pow.f64 (*.f64 -2 (pow.f64 p 2)) 2)) (*.f64 (sqrt.f64 2) p))) 2))) (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 x 5) p)))) (*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x)))))
(*.f64 (sqrt.f64 2) (sqrt.f64 1/2))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 p 2)) (*.f64 (sqrt.f64 2) (pow.f64 x 2)))) (*.f64 (sqrt.f64 2) (sqrt.f64 1/2)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 p 2)) (*.f64 (sqrt.f64 2) (pow.f64 x 2)))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (sqrt.f64 1/2) (*.f64 (-.f64 (*.f64 1/2 (*.f64 (-.f64 (*.f64 16 (/.f64 1 (pow.f64 x 6))) (pow.f64 (/.f64 -2 (pow.f64 x 3)) 2)) (pow.f64 x 2))) (pow.f64 (/.f64 -1 (*.f64 (sqrt.f64 2) (pow.f64 x 2))) 2)) (pow.f64 p 4))) (sqrt.f64 2))) (*.f64 (sqrt.f64 2) (sqrt.f64 1/2))))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (sqrt.f64 1/2) (*.f64 (-.f64 (*.f64 -1/2 (*.f64 (+.f64 (*.f64 -2 (/.f64 (-.f64 (*.f64 16 (/.f64 1 (pow.f64 x 6))) (pow.f64 (/.f64 -2 (pow.f64 x 3)) 2)) (pow.f64 x 2))) (*.f64 64 (/.f64 1 (pow.f64 x 8)))) (pow.f64 x 2))) (*.f64 -1 (/.f64 (-.f64 (*.f64 1/2 (*.f64 (-.f64 (*.f64 16 (/.f64 1 (pow.f64 x 6))) (pow.f64 (/.f64 -2 (pow.f64 x 3)) 2)) (pow.f64 x 2))) (pow.f64 (/.f64 -1 (*.f64 (sqrt.f64 2) (pow.f64 x 2))) 2)) (*.f64 (pow.f64 (sqrt.f64 2) 2) (pow.f64 x 2))))) (pow.f64 p 6))) (sqrt.f64 2))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 p 2)) (*.f64 (sqrt.f64 2) (pow.f64 x 2)))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (sqrt.f64 1/2) (*.f64 (-.f64 (*.f64 1/2 (*.f64 (-.f64 (*.f64 16 (/.f64 1 (pow.f64 x 6))) (pow.f64 (/.f64 -2 (pow.f64 x 3)) 2)) (pow.f64 x 2))) (pow.f64 (/.f64 -1 (*.f64 (sqrt.f64 2) (pow.f64 x 2))) 2)) (pow.f64 p 4))) (sqrt.f64 2))) (*.f64 (sqrt.f64 2) (sqrt.f64 1/2)))))
(sqrt.f64 1/2)
(+.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p)))
(+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p)) (*.f64 -1/32 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 2)) (pow.f64 p 2)))))
(+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p)) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (sqrt.f64 1/2) (-.f64 (*.f64 -1/16 (pow.f64 x 3)) (*.f64 -1/64 (pow.f64 x 3)))) (pow.f64 p 3))) (*.f64 -1/32 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 2)) (pow.f64 p 2))))))
(sqrt.f64 1/2)
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p)) (sqrt.f64 1/2))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p)) (+.f64 (sqrt.f64 1/2) (*.f64 -1/32 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 2)) (pow.f64 p 2)))))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sqrt.f64 1/2) (-.f64 (*.f64 -1/16 (pow.f64 x 3)) (*.f64 -1/64 (pow.f64 x 3)))) (pow.f64 p 3))) (+.f64 (sqrt.f64 1/2) (*.f64 -1/32 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 2)) (pow.f64 p 2))))))
(pow.f64 x 2)
(+.f64 (*.f64 4 (pow.f64 p 2)) (pow.f64 x 2))
(+.f64 (*.f64 4 (pow.f64 p 2)) (pow.f64 x 2))
(+.f64 (*.f64 4 (pow.f64 p 2)) (pow.f64 x 2))
(*.f64 4 (pow.f64 p 2))
(+.f64 (*.f64 4 (pow.f64 p 2)) (pow.f64 x 2))
(+.f64 (*.f64 4 (pow.f64 p 2)) (pow.f64 x 2))
(+.f64 (*.f64 4 (pow.f64 p 2)) (pow.f64 x 2))
(*.f64 4 (pow.f64 p 2))
(+.f64 (*.f64 4 (pow.f64 p 2)) (pow.f64 x 2))
(+.f64 (*.f64 4 (pow.f64 p 2)) (pow.f64 x 2))
(+.f64 (*.f64 4 (pow.f64 p 2)) (pow.f64 x 2))
(*.f64 4 (pow.f64 p 2))
(+.f64 (*.f64 4 (pow.f64 p 2)) (pow.f64 x 2))
(+.f64 (*.f64 4 (pow.f64 p 2)) (pow.f64 x 2))
(+.f64 (*.f64 4 (pow.f64 p 2)) (pow.f64 x 2))
(pow.f64 x 2)
(+.f64 (*.f64 4 (pow.f64 p 2)) (pow.f64 x 2))
(+.f64 (*.f64 4 (pow.f64 p 2)) (pow.f64 x 2))
(+.f64 (*.f64 4 (pow.f64 p 2)) (pow.f64 x 2))
(pow.f64 x 2)
(+.f64 (*.f64 4 (pow.f64 p 2)) (pow.f64 x 2))
(+.f64 (*.f64 4 (pow.f64 p 2)) (pow.f64 x 2))
(+.f64 (*.f64 4 (pow.f64 p 2)) (pow.f64 x 2))
Outputs
x
(+.f64 (*.f64 2 (/.f64 (pow.f64 p 2) x)) x)
(fma.f64 2 (/.f64 (*.f64 p p) x) x)
(fma.f64 2 (/.f64 p (/.f64 x p)) x)
(fma.f64 2 (*.f64 (/.f64 p x) p) x)
(+.f64 (*.f64 -2 (/.f64 (pow.f64 p 4) (pow.f64 x 3))) (+.f64 (*.f64 2 (/.f64 (pow.f64 p 2) x)) x))
(fma.f64 -2 (/.f64 (pow.f64 p 4) (pow.f64 x 3)) (fma.f64 2 (/.f64 (*.f64 p p) x) x))
(fma.f64 -2 (/.f64 (pow.f64 p 4) (pow.f64 x 3)) (fma.f64 2 (/.f64 p (/.f64 x p)) x))
(fma.f64 -2 (/.f64 (pow.f64 p 4) (pow.f64 x 3)) (fma.f64 2 (*.f64 (/.f64 p x) p) x))
(+.f64 (*.f64 -2 (/.f64 (pow.f64 p 4) (pow.f64 x 3))) (+.f64 (*.f64 4 (/.f64 (pow.f64 p 6) (pow.f64 x 5))) (+.f64 (*.f64 2 (/.f64 (pow.f64 p 2) x)) x)))
(fma.f64 -2 (/.f64 (pow.f64 p 4) (pow.f64 x 3)) (fma.f64 4 (/.f64 (pow.f64 p 6) (pow.f64 x 5)) (fma.f64 2 (/.f64 (*.f64 p p) x) x)))
(fma.f64 -2 (/.f64 (pow.f64 p 4) (pow.f64 x 3)) (fma.f64 4 (/.f64 (pow.f64 p 6) (pow.f64 x 5)) (fma.f64 2 (/.f64 p (/.f64 x p)) x)))
(fma.f64 -2 (/.f64 (pow.f64 p 4) (pow.f64 x 3)) (fma.f64 4 (/.f64 (pow.f64 p 6) (pow.f64 x 5)) (fma.f64 2 (*.f64 (/.f64 p x) p) x)))
(*.f64 2 p)
(+.f64 (*.f64 1/4 (/.f64 (pow.f64 x 2) p)) (*.f64 2 p))
(fma.f64 1/4 (/.f64 (*.f64 x x) p) (*.f64 2 p))
(fma.f64 2 p (/.f64 (*.f64 1/4 (*.f64 x x)) p))
(fma.f64 2 p (*.f64 (/.f64 1/4 p) (*.f64 x x)))
(+.f64 (*.f64 1/4 (/.f64 (pow.f64 x 2) p)) (+.f64 (*.f64 -1/64 (/.f64 (pow.f64 x 4) (pow.f64 p 3))) (*.f64 2 p)))
(fma.f64 1/4 (/.f64 (*.f64 x x) p) (fma.f64 -1/64 (/.f64 (pow.f64 x 4) (pow.f64 p 3)) (*.f64 2 p)))
(fma.f64 1/4 (/.f64 (*.f64 x x) p) (fma.f64 2 p (*.f64 -1/64 (/.f64 (pow.f64 x 4) (pow.f64 p 3)))))
(fma.f64 1/4 (*.f64 (/.f64 x p) x) (fma.f64 -1/64 (/.f64 (pow.f64 x 4) (pow.f64 p 3)) (*.f64 2 p)))
(+.f64 (*.f64 1/4 (/.f64 (pow.f64 x 2) p)) (+.f64 (*.f64 1/512 (/.f64 (pow.f64 x 6) (pow.f64 p 5))) (+.f64 (*.f64 -1/64 (/.f64 (pow.f64 x 4) (pow.f64 p 3))) (*.f64 2 p))))
(fma.f64 1/4 (/.f64 (*.f64 x x) p) (fma.f64 1/512 (/.f64 (pow.f64 x 6) (pow.f64 p 5)) (fma.f64 -1/64 (/.f64 (pow.f64 x 4) (pow.f64 p 3)) (*.f64 2 p))))
(fma.f64 1/4 (/.f64 (*.f64 x x) p) (fma.f64 1/512 (/.f64 (pow.f64 x 6) (pow.f64 p 5)) (fma.f64 2 p (*.f64 -1/64 (/.f64 (pow.f64 x 4) (pow.f64 p 3))))))
(fma.f64 1/4 (*.f64 (/.f64 x p) x) (fma.f64 1/512 (/.f64 (pow.f64 x 6) (pow.f64 p 5)) (fma.f64 -1/64 (/.f64 (pow.f64 x 4) (pow.f64 p 3)) (*.f64 2 p))))
(*.f64 -2 p)
(*.f64 p -2)
(+.f64 (*.f64 -1/4 (/.f64 (pow.f64 x 2) p)) (*.f64 -2 p))
(fma.f64 -1/4 (/.f64 (*.f64 x x) p) (*.f64 p -2))
(fma.f64 p -2 (*.f64 (/.f64 (*.f64 x x) p) -1/4))
(fma.f64 p -2 (/.f64 (*.f64 (*.f64 x x) -1/4) p))
(+.f64 (*.f64 -1/4 (/.f64 (pow.f64 x 2) p)) (+.f64 (*.f64 1/64 (/.f64 (pow.f64 x 4) (pow.f64 p 3))) (*.f64 -2 p)))
(fma.f64 -1/4 (/.f64 (*.f64 x x) p) (fma.f64 1/64 (/.f64 (pow.f64 x 4) (pow.f64 p 3)) (*.f64 p -2)))
(fma.f64 (/.f64 (*.f64 x x) p) -1/4 (fma.f64 p -2 (*.f64 (/.f64 (pow.f64 x 4) (pow.f64 p 3)) 1/64)))
(fma.f64 (*.f64 (/.f64 x p) x) -1/4 (fma.f64 (/.f64 (pow.f64 x 4) (pow.f64 p 3)) 1/64 (*.f64 p -2)))
(+.f64 (*.f64 -1/512 (/.f64 (pow.f64 x 6) (pow.f64 p 5))) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 x 2) p)) (+.f64 (*.f64 1/64 (/.f64 (pow.f64 x 4) (pow.f64 p 3))) (*.f64 -2 p))))
(fma.f64 -1/512 (/.f64 (pow.f64 x 6) (pow.f64 p 5)) (fma.f64 -1/4 (/.f64 (*.f64 x x) p) (fma.f64 1/64 (/.f64 (pow.f64 x 4) (pow.f64 p 3)) (*.f64 p -2))))
(fma.f64 (/.f64 (pow.f64 x 6) (pow.f64 p 5)) -1/512 (fma.f64 (/.f64 (*.f64 x x) p) -1/4 (fma.f64 p -2 (*.f64 (/.f64 (pow.f64 x 4) (pow.f64 p 3)) 1/64))))
(fma.f64 (/.f64 (pow.f64 x 6) (pow.f64 p 5)) -1/512 (fma.f64 (*.f64 (/.f64 x p) x) -1/4 (fma.f64 (/.f64 (pow.f64 x 4) (pow.f64 p 3)) 1/64 (*.f64 p -2))))
(*.f64 2 p)
(+.f64 (*.f64 1/4 (/.f64 (pow.f64 x 2) p)) (*.f64 2 p))
(fma.f64 1/4 (/.f64 (*.f64 x x) p) (*.f64 2 p))
(fma.f64 2 p (/.f64 (*.f64 1/4 (*.f64 x x)) p))
(fma.f64 2 p (*.f64 (/.f64 1/4 p) (*.f64 x x)))
(+.f64 (*.f64 1/4 (/.f64 (pow.f64 x 2) p)) (+.f64 (*.f64 -1/64 (/.f64 (pow.f64 x 4) (pow.f64 p 3))) (*.f64 2 p)))
(fma.f64 1/4 (/.f64 (*.f64 x x) p) (fma.f64 -1/64 (/.f64 (pow.f64 x 4) (pow.f64 p 3)) (*.f64 2 p)))
(fma.f64 1/4 (/.f64 (*.f64 x x) p) (fma.f64 2 p (*.f64 -1/64 (/.f64 (pow.f64 x 4) (pow.f64 p 3)))))
(fma.f64 1/4 (*.f64 (/.f64 x p) x) (fma.f64 -1/64 (/.f64 (pow.f64 x 4) (pow.f64 p 3)) (*.f64 2 p)))
(+.f64 (*.f64 1/4 (/.f64 (pow.f64 x 2) p)) (+.f64 (*.f64 1/512 (/.f64 (pow.f64 x 6) (pow.f64 p 5))) (+.f64 (*.f64 -1/64 (/.f64 (pow.f64 x 4) (pow.f64 p 3))) (*.f64 2 p))))
(fma.f64 1/4 (/.f64 (*.f64 x x) p) (fma.f64 1/512 (/.f64 (pow.f64 x 6) (pow.f64 p 5)) (fma.f64 -1/64 (/.f64 (pow.f64 x 4) (pow.f64 p 3)) (*.f64 2 p))))
(fma.f64 1/4 (/.f64 (*.f64 x x) p) (fma.f64 1/512 (/.f64 (pow.f64 x 6) (pow.f64 p 5)) (fma.f64 2 p (*.f64 -1/64 (/.f64 (pow.f64 x 4) (pow.f64 p 3))))))
(fma.f64 1/4 (*.f64 (/.f64 x p) x) (fma.f64 1/512 (/.f64 (pow.f64 x 6) (pow.f64 p 5)) (fma.f64 -1/64 (/.f64 (pow.f64 x 4) (pow.f64 p 3)) (*.f64 2 p))))
x
(+.f64 (*.f64 2 (/.f64 (pow.f64 p 2) x)) x)
(fma.f64 2 (/.f64 (*.f64 p p) x) x)
(fma.f64 2 (/.f64 p (/.f64 x p)) x)
(fma.f64 2 (*.f64 (/.f64 p x) p) x)
(+.f64 (*.f64 -2 (/.f64 (pow.f64 p 4) (pow.f64 x 3))) (+.f64 (*.f64 2 (/.f64 (pow.f64 p 2) x)) x))
(fma.f64 -2 (/.f64 (pow.f64 p 4) (pow.f64 x 3)) (fma.f64 2 (/.f64 (*.f64 p p) x) x))
(fma.f64 -2 (/.f64 (pow.f64 p 4) (pow.f64 x 3)) (fma.f64 2 (/.f64 p (/.f64 x p)) x))
(fma.f64 -2 (/.f64 (pow.f64 p 4) (pow.f64 x 3)) (fma.f64 2 (*.f64 (/.f64 p x) p) x))
(+.f64 (*.f64 -2 (/.f64 (pow.f64 p 4) (pow.f64 x 3))) (+.f64 (*.f64 4 (/.f64 (pow.f64 p 6) (pow.f64 x 5))) (+.f64 (*.f64 2 (/.f64 (pow.f64 p 2) x)) x)))
(fma.f64 -2 (/.f64 (pow.f64 p 4) (pow.f64 x 3)) (fma.f64 4 (/.f64 (pow.f64 p 6) (pow.f64 x 5)) (fma.f64 2 (/.f64 (*.f64 p p) x) x)))
(fma.f64 -2 (/.f64 (pow.f64 p 4) (pow.f64 x 3)) (fma.f64 4 (/.f64 (pow.f64 p 6) (pow.f64 x 5)) (fma.f64 2 (/.f64 p (/.f64 x p)) x)))
(fma.f64 -2 (/.f64 (pow.f64 p 4) (pow.f64 x 3)) (fma.f64 4 (/.f64 (pow.f64 p 6) (pow.f64 x 5)) (fma.f64 2 (*.f64 (/.f64 p x) p) x)))
(*.f64 -1 x)
(neg.f64 x)
(+.f64 (*.f64 -2 (/.f64 (pow.f64 p 2) x)) (*.f64 -1 x))
(fma.f64 -2 (/.f64 (*.f64 p p) x) (neg.f64 x))
(-.f64 (/.f64 (*.f64 p p) (/.f64 x -2)) x)
(-.f64 (*.f64 (/.f64 -2 x) (*.f64 p p)) x)
(+.f64 (*.f64 2 (/.f64 (pow.f64 p 4) (pow.f64 x 3))) (+.f64 (*.f64 -2 (/.f64 (pow.f64 p 2) x)) (*.f64 -1 x)))
(fma.f64 2 (/.f64 (pow.f64 p 4) (pow.f64 x 3)) (fma.f64 -2 (/.f64 (*.f64 p p) x) (neg.f64 x)))
(fma.f64 2 (/.f64 (pow.f64 p 4) (pow.f64 x 3)) (-.f64 (/.f64 (*.f64 p p) (/.f64 x -2)) x))
(fma.f64 2 (/.f64 (pow.f64 p 4) (pow.f64 x 3)) (-.f64 (*.f64 (/.f64 -2 x) (*.f64 p p)) x))
(+.f64 (*.f64 -4 (/.f64 (pow.f64 p 6) (pow.f64 x 5))) (+.f64 (*.f64 2 (/.f64 (pow.f64 p 4) (pow.f64 x 3))) (+.f64 (*.f64 -2 (/.f64 (pow.f64 p 2) x)) (*.f64 -1 x))))
(fma.f64 -4 (/.f64 (pow.f64 p 6) (pow.f64 x 5)) (fma.f64 2 (/.f64 (pow.f64 p 4) (pow.f64 x 3)) (fma.f64 -2 (/.f64 (*.f64 p p) x) (neg.f64 x))))
(fma.f64 (/.f64 (pow.f64 p 6) (pow.f64 x 5)) -4 (fma.f64 2 (/.f64 (pow.f64 p 4) (pow.f64 x 3)) (-.f64 (/.f64 (*.f64 p p) (/.f64 x -2)) x)))
(fma.f64 (/.f64 (pow.f64 p 6) (pow.f64 x 5)) -4 (fma.f64 2 (/.f64 (pow.f64 p 4) (pow.f64 x 3)) (-.f64 (*.f64 (/.f64 -2 x) (*.f64 p p)) x)))
1
(+.f64 1 (*.f64 1/2 (/.f64 x p)))
(fma.f64 1/2 (/.f64 x p) 1)
(+.f64 1 (+.f64 (*.f64 1/2 (/.f64 x p)) (*.f64 -1/16 (/.f64 (pow.f64 x 3) (pow.f64 p 3)))))
(+.f64 1 (fma.f64 1/2 (/.f64 x p) (/.f64 (*.f64 (pow.f64 x 3) -1/16) (pow.f64 p 3))))
(+.f64 1 (fma.f64 1/2 (/.f64 x p) (*.f64 -1/16 (/.f64 (pow.f64 x 3) (pow.f64 p 3)))))
(+.f64 (fma.f64 1/2 (/.f64 x p) 1) (/.f64 -1/16 (pow.f64 (/.f64 p x) 3)))
(+.f64 1 (+.f64 (*.f64 1/2 (/.f64 x p)) (+.f64 (*.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 p 6))) (pow.f64 (/.f64 -1/16 (pow.f64 p 3)) 2)) (*.f64 (pow.f64 x 5) p)) (*.f64 -1/16 (/.f64 (pow.f64 x 3) (pow.f64 p 3))))))
(+.f64 1 (fma.f64 1/2 (/.f64 x p) (fma.f64 (-.f64 (/.f64 1/64 (pow.f64 p 6)) (pow.f64 (/.f64 -1/16 (pow.f64 p 3)) 2)) (*.f64 p (pow.f64 x 5)) (/.f64 (*.f64 (pow.f64 x 3) -1/16) (pow.f64 p 3)))))
(+.f64 1 (fma.f64 1/2 (/.f64 x p) (fma.f64 -1/16 (/.f64 (pow.f64 x 3) (pow.f64 p 3)) (*.f64 p (*.f64 (pow.f64 x 5) (-.f64 (/.f64 1/64 (pow.f64 p 6)) (pow.f64 (/.f64 -1/16 (pow.f64 p 3)) 2)))))))
(+.f64 (fma.f64 1/2 (/.f64 x p) 1) (fma.f64 (-.f64 (/.f64 1/64 (pow.f64 p 6)) (pow.f64 (/.f64 -1/16 (pow.f64 p 3)) 2)) (*.f64 p (pow.f64 x 5)) (/.f64 -1/16 (pow.f64 (/.f64 p x) 3))))
2
(+.f64 2 (*.f64 -2 (/.f64 (pow.f64 p 2) (pow.f64 x 2))))
(+.f64 2 (*.f64 -2 (/.f64 (*.f64 p p) (*.f64 x x))))
(fma.f64 -2 (*.f64 (/.f64 p x) (/.f64 p x)) 2)
(+.f64 2 (+.f64 (*.f64 -2 (/.f64 (pow.f64 p 2) (pow.f64 x 2))) (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -16 (pow.f64 p 4)) (pow.f64 (*.f64 -2 (pow.f64 p 2)) 2)) (pow.f64 x 4)))))
(+.f64 2 (fma.f64 -2 (/.f64 (*.f64 p p) (*.f64 x x)) (*.f64 -1/2 (/.f64 (fma.f64 -16 (pow.f64 p 4) (pow.f64 (*.f64 (*.f64 p p) -2) 2)) (pow.f64 x 4)))))
(+.f64 2 (fma.f64 -2 (*.f64 (/.f64 p x) (/.f64 p x)) (*.f64 -1/2 (/.f64 (fma.f64 (pow.f64 p 4) -16 (*.f64 4 (pow.f64 p 4))) (pow.f64 x 4)))))
(+.f64 (fma.f64 -2 (*.f64 (/.f64 p x) (/.f64 p x)) 2) (*.f64 (/.f64 -1/2 (pow.f64 x 4)) (*.f64 (pow.f64 p 4) -12)))
(+.f64 2 (+.f64 (*.f64 -2 (/.f64 (pow.f64 p 2) (pow.f64 x 2))) (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -16 (pow.f64 p 4)) (pow.f64 (*.f64 -2 (pow.f64 p 2)) 2)) (pow.f64 x 4))) (*.f64 -1/2 (/.f64 (+.f64 (*.f64 64 (pow.f64 p 6)) (*.f64 2 (*.f64 (+.f64 (*.f64 -16 (pow.f64 p 4)) (pow.f64 (*.f64 -2 (pow.f64 p 2)) 2)) (pow.f64 p 2)))) (pow.f64 x 6))))))
(+.f64 2 (fma.f64 -2 (/.f64 (*.f64 p p) (*.f64 x x)) (*.f64 -1/2 (+.f64 (/.f64 (fma.f64 -16 (pow.f64 p 4) (pow.f64 (*.f64 (*.f64 p p) -2) 2)) (pow.f64 x 4)) (/.f64 (fma.f64 64 (pow.f64 p 6) (*.f64 2 (*.f64 (*.f64 p p) (fma.f64 -16 (pow.f64 p 4) (pow.f64 (*.f64 (*.f64 p p) -2) 2))))) (pow.f64 x 6))))))
(+.f64 2 (fma.f64 -2 (*.f64 (/.f64 p x) (/.f64 p x)) (fma.f64 -1/2 (/.f64 (fma.f64 (pow.f64 p 4) -16 (*.f64 4 (pow.f64 p 4))) (pow.f64 x 4)) (/.f64 (+.f64 (*.f64 (pow.f64 p 6) -32) (*.f64 -1 (*.f64 (*.f64 p p) (fma.f64 (pow.f64 p 4) -16 (*.f64 4 (pow.f64 p 4)))))) (pow.f64 x 6)))))
(+.f64 (fma.f64 -2 (*.f64 (/.f64 p x) (/.f64 p x)) 2) (fma.f64 -1/2 (/.f64 (*.f64 (pow.f64 p 4) -12) (pow.f64 x 4)) (/.f64 (+.f64 (*.f64 (pow.f64 p 6) -32) (neg.f64 (*.f64 p (*.f64 p (*.f64 (pow.f64 p 4) -12))))) (pow.f64 x 6))))
(*.f64 2 (/.f64 (pow.f64 p 2) (pow.f64 x 2)))
(/.f64 (*.f64 2 (*.f64 p p)) (*.f64 x x))
(*.f64 2 (*.f64 (/.f64 p x) (/.f64 p x)))
(+.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -16 (pow.f64 p 4)) (pow.f64 (*.f64 -2 (pow.f64 p 2)) 2)) (pow.f64 x 4))) (*.f64 2 (/.f64 (pow.f64 p 2) (pow.f64 x 2))))
(fma.f64 1/2 (/.f64 (fma.f64 -16 (pow.f64 p 4) (pow.f64 (*.f64 (*.f64 p p) -2) 2)) (pow.f64 x 4)) (/.f64 (*.f64 2 (*.f64 p p)) (*.f64 x x)))
(fma.f64 1/2 (/.f64 (fma.f64 (pow.f64 p 4) -16 (*.f64 4 (pow.f64 p 4))) (pow.f64 x 4)) (/.f64 (*.f64 2 (*.f64 p p)) (*.f64 x x)))
(fma.f64 2 (*.f64 (/.f64 p x) (/.f64 p x)) (*.f64 (/.f64 1/2 (pow.f64 x 4)) (*.f64 (pow.f64 p 4) -12)))
(+.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 64 (pow.f64 p 6)) (*.f64 2 (*.f64 (+.f64 (*.f64 -16 (pow.f64 p 4)) (pow.f64 (*.f64 -2 (pow.f64 p 2)) 2)) (pow.f64 p 2)))) (pow.f64 x 6))) (+.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -16 (pow.f64 p 4)) (pow.f64 (*.f64 -2 (pow.f64 p 2)) 2)) (pow.f64 x 4))) (*.f64 2 (/.f64 (pow.f64 p 2) (pow.f64 x 2)))))
(fma.f64 1/2 (/.f64 (fma.f64 64 (pow.f64 p 6) (*.f64 2 (*.f64 (*.f64 p p) (fma.f64 -16 (pow.f64 p 4) (pow.f64 (*.f64 (*.f64 p p) -2) 2))))) (pow.f64 x 6)) (fma.f64 1/2 (/.f64 (fma.f64 -16 (pow.f64 p 4) (pow.f64 (*.f64 (*.f64 p p) -2) 2)) (pow.f64 x 4)) (/.f64 (*.f64 2 (*.f64 p p)) (*.f64 x x))))
(fma.f64 1/2 (/.f64 (fma.f64 2 (*.f64 (*.f64 p p) (fma.f64 (pow.f64 p 4) -16 (*.f64 4 (pow.f64 p 4)))) (*.f64 (pow.f64 p 6) 64)) (pow.f64 x 6)) (fma.f64 1/2 (/.f64 (fma.f64 (pow.f64 p 4) -16 (*.f64 4 (pow.f64 p 4))) (pow.f64 x 4)) (/.f64 (*.f64 2 (*.f64 p p)) (*.f64 x x))))
(+.f64 (fma.f64 2 (*.f64 (/.f64 p x) (/.f64 p x)) (*.f64 (/.f64 1/2 (pow.f64 x 4)) (*.f64 (pow.f64 p 4) -12))) (/.f64 (+.f64 (*.f64 p (*.f64 p (*.f64 (pow.f64 p 4) -12))) (*.f64 (pow.f64 p 6) 32)) (pow.f64 x 6)))
(+.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 64 (pow.f64 p 6)) (*.f64 2 (*.f64 (+.f64 (*.f64 -16 (pow.f64 p 4)) (pow.f64 (*.f64 -2 (pow.f64 p 2)) 2)) (pow.f64 p 2)))) (pow.f64 x 6))) (+.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -16 (pow.f64 p 4)) (pow.f64 (*.f64 -2 (pow.f64 p 2)) 2)) (pow.f64 x 4))) (+.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 2 (*.f64 (pow.f64 p 2) (+.f64 (*.f64 64 (pow.f64 p 6)) (*.f64 2 (*.f64 (+.f64 (*.f64 -16 (pow.f64 p 4)) (pow.f64 (*.f64 -2 (pow.f64 p 2)) 2)) (pow.f64 p 2)))))) (+.f64 (*.f64 -256 (pow.f64 p 8)) (pow.f64 (*.f64 -1/2 (+.f64 (*.f64 -16 (pow.f64 p 4)) (pow.f64 (*.f64 -2 (pow.f64 p 2)) 2))) 2))) (pow.f64 x 8))) (*.f64 2 (/.f64 (pow.f64 p 2) (pow.f64 x 2))))))
(fma.f64 1/2 (/.f64 (fma.f64 64 (pow.f64 p 6) (*.f64 2 (*.f64 (*.f64 p p) (fma.f64 -16 (pow.f64 p 4) (pow.f64 (*.f64 (*.f64 p p) -2) 2))))) (pow.f64 x 6)) (fma.f64 1/2 (/.f64 (fma.f64 -16 (pow.f64 p 4) (pow.f64 (*.f64 (*.f64 p p) -2) 2)) (pow.f64 x 4)) (fma.f64 1/2 (/.f64 (fma.f64 2 (*.f64 (*.f64 p p) (fma.f64 64 (pow.f64 p 6) (*.f64 2 (*.f64 (*.f64 p p) (fma.f64 -16 (pow.f64 p 4) (pow.f64 (*.f64 (*.f64 p p) -2) 2)))))) (fma.f64 -256 (pow.f64 p 8) (pow.f64 (*.f64 -1/2 (fma.f64 -16 (pow.f64 p 4) (pow.f64 (*.f64 (*.f64 p p) -2) 2))) 2))) (pow.f64 x 8)) (/.f64 (*.f64 2 (*.f64 p p)) (*.f64 x x)))))
(fma.f64 1/2 (/.f64 (fma.f64 2 (*.f64 (*.f64 p p) (fma.f64 (pow.f64 p 4) -16 (*.f64 4 (pow.f64 p 4)))) (*.f64 (pow.f64 p 6) 64)) (pow.f64 x 6)) (fma.f64 1/2 (/.f64 (fma.f64 (pow.f64 p 4) -16 (*.f64 4 (pow.f64 p 4))) (pow.f64 x 4)) (fma.f64 2 (*.f64 (/.f64 p x) (/.f64 p x)) (*.f64 1/2 (/.f64 (fma.f64 2 (+.f64 (*.f64 64 (pow.f64 p 8)) (*.f64 (*.f64 2 (fma.f64 (pow.f64 p 4) -16 (*.f64 4 (pow.f64 p 4)))) (pow.f64 p 4))) (fma.f64 -256 (pow.f64 p 8) (pow.f64 (*.f64 -1/2 (fma.f64 (pow.f64 p 4) -16 (*.f64 4 (pow.f64 p 4)))) 2))) (pow.f64 x 8))))))
(+.f64 (/.f64 (+.f64 (*.f64 p (*.f64 p (*.f64 (pow.f64 p 4) -12))) (*.f64 (pow.f64 p 6) 32)) (pow.f64 x 6)) (fma.f64 1/2 (/.f64 (*.f64 (pow.f64 p 4) -12) (pow.f64 x 4)) (fma.f64 2 (*.f64 (/.f64 p x) (/.f64 p x)) (/.f64 (+.f64 (+.f64 (*.f64 64 (pow.f64 p 8)) (*.f64 (*.f64 2 (*.f64 (pow.f64 p 4) -12)) (pow.f64 p 4))) (*.f64 1/2 (fma.f64 -256 (pow.f64 p 8) (pow.f64 (*.f64 -1/2 (*.f64 (pow.f64 p 4) -12)) 2)))) (pow.f64 x 8)))))
2
(+.f64 2 (*.f64 -2 (/.f64 (pow.f64 p 2) (pow.f64 x 2))))
(+.f64 2 (*.f64 -2 (/.f64 (*.f64 p p) (*.f64 x x))))
(fma.f64 -2 (*.f64 (/.f64 p x) (/.f64 p x)) 2)
(+.f64 2 (+.f64 (*.f64 1/2 (*.f64 (pow.f64 p 4) (*.f64 (-.f64 (*.f64 16 (/.f64 1 (pow.f64 x 6))) (pow.f64 (/.f64 -2 (pow.f64 x 3)) 2)) (pow.f64 x 2)))) (*.f64 -2 (/.f64 (pow.f64 p 2) (pow.f64 x 2)))))
(+.f64 2 (fma.f64 1/2 (*.f64 (pow.f64 p 4) (*.f64 (*.f64 x x) (-.f64 (/.f64 16 (pow.f64 x 6)) (pow.f64 (/.f64 -2 (pow.f64 x 3)) 2)))) (*.f64 -2 (/.f64 (*.f64 p p) (*.f64 x x)))))
(+.f64 2 (fma.f64 -2 (*.f64 (/.f64 p x) (/.f64 p x)) (*.f64 (pow.f64 p 4) (*.f64 (*.f64 x x) (*.f64 1/2 (-.f64 (/.f64 16 (pow.f64 x 6)) (pow.f64 (/.f64 -2 (pow.f64 x 3)) 2)))))))
(+.f64 2 (fma.f64 1/2 (*.f64 (-.f64 (/.f64 16 (pow.f64 x 6)) (pow.f64 (/.f64 -2 (pow.f64 x 3)) 2)) (*.f64 (*.f64 x x) (pow.f64 p 4))) (*.f64 -2 (*.f64 (/.f64 p x) (/.f64 p x)))))
(+.f64 (*.f64 -1/2 (*.f64 (+.f64 (*.f64 -2 (/.f64 (-.f64 (*.f64 16 (/.f64 1 (pow.f64 x 6))) (pow.f64 (/.f64 -2 (pow.f64 x 3)) 2)) (pow.f64 x 2))) (*.f64 64 (/.f64 1 (pow.f64 x 8)))) (*.f64 (pow.f64 x 2) (pow.f64 p 6)))) (+.f64 2 (+.f64 (*.f64 1/2 (*.f64 (pow.f64 p 4) (*.f64 (-.f64 (*.f64 16 (/.f64 1 (pow.f64 x 6))) (pow.f64 (/.f64 -2 (pow.f64 x 3)) 2)) (pow.f64 x 2)))) (*.f64 -2 (/.f64 (pow.f64 p 2) (pow.f64 x 2))))))
(fma.f64 -1/2 (*.f64 (fma.f64 -2 (/.f64 (-.f64 (/.f64 16 (pow.f64 x 6)) (pow.f64 (/.f64 -2 (pow.f64 x 3)) 2)) (*.f64 x x)) (/.f64 64 (pow.f64 x 8))) (*.f64 (pow.f64 p 6) (*.f64 x x))) (+.f64 2 (fma.f64 1/2 (*.f64 (pow.f64 p 4) (*.f64 (*.f64 x x) (-.f64 (/.f64 16 (pow.f64 x 6)) (pow.f64 (/.f64 -2 (pow.f64 x 3)) 2)))) (*.f64 -2 (/.f64 (*.f64 p p) (*.f64 x x))))))
(+.f64 (fma.f64 -2 (*.f64 (/.f64 p x) (/.f64 p x)) (*.f64 (pow.f64 p 4) (*.f64 (*.f64 x x) (*.f64 1/2 (-.f64 (/.f64 16 (pow.f64 x 6)) (pow.f64 (/.f64 -2 (pow.f64 x 3)) 2)))))) (fma.f64 (*.f64 -1/2 (fma.f64 -2 (-.f64 (/.f64 16 (pow.f64 x 8)) (/.f64 (pow.f64 (/.f64 -2 (pow.f64 x 3)) 2) (*.f64 x x))) (/.f64 64 (pow.f64 x 8)))) (*.f64 x (*.f64 x (pow.f64 p 6))) 2))
(fma.f64 (+.f64 (/.f64 1 (/.f64 (*.f64 x x) (-.f64 (/.f64 16 (pow.f64 x 6)) (pow.f64 (/.f64 -2 (pow.f64 x 3)) 2)))) (/.f64 -32 (pow.f64 x 8))) (*.f64 x (*.f64 x (pow.f64 p 6))) (+.f64 2 (fma.f64 1/2 (*.f64 (-.f64 (/.f64 16 (pow.f64 x 6)) (pow.f64 (/.f64 -2 (pow.f64 x 3)) 2)) (*.f64 (*.f64 x x) (pow.f64 p 4))) (*.f64 -2 (*.f64 (/.f64 p x) (/.f64 p x))))))
1
(+.f64 1 (*.f64 1/2 (/.f64 x p)))
(fma.f64 1/2 (/.f64 x p) 1)
(+.f64 1 (+.f64 (*.f64 1/2 (/.f64 x p)) (*.f64 -1/16 (/.f64 (pow.f64 x 3) (pow.f64 p 3)))))
(+.f64 1 (fma.f64 1/2 (/.f64 x p) (/.f64 (*.f64 (pow.f64 x 3) -1/16) (pow.f64 p 3))))
(+.f64 1 (fma.f64 1/2 (/.f64 x p) (*.f64 -1/16 (/.f64 (pow.f64 x 3) (pow.f64 p 3)))))
(+.f64 (fma.f64 1/2 (/.f64 x p) 1) (/.f64 -1/16 (pow.f64 (/.f64 p x) 3)))
(+.f64 1 (+.f64 (*.f64 1/2 (/.f64 x p)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (+.f64 (*.f64 -1/64 (pow.f64 x 4)) (pow.f64 (*.f64 -1/16 (pow.f64 x 2)) 2)) x) (pow.f64 p 5))) (*.f64 -1/16 (/.f64 (pow.f64 x 3) (pow.f64 p 3))))))
(+.f64 1 (fma.f64 1/2 (/.f64 x p) (fma.f64 -1 (/.f64 (fma.f64 -1/64 (pow.f64 x 4) (pow.f64 (*.f64 (*.f64 x x) -1/16) 2)) (/.f64 (pow.f64 p 5) x)) (/.f64 (*.f64 (pow.f64 x 3) -1/16) (pow.f64 p 3)))))
(+.f64 1 (fma.f64 1/2 (/.f64 x p) (-.f64 (*.f64 -1/16 (/.f64 (pow.f64 x 3) (pow.f64 p 3))) (/.f64 (fma.f64 -1/64 (pow.f64 x 4) (*.f64 (pow.f64 x 4) 1/256)) (/.f64 (pow.f64 p 5) x)))))
(+.f64 (fma.f64 1/2 (/.f64 x p) 1) (-.f64 (/.f64 -1/16 (pow.f64 (/.f64 p x) 3)) (/.f64 (*.f64 (pow.f64 x 4) -3/256) (/.f64 (pow.f64 p 5) x))))
1
(+.f64 (*.f64 -1/2 (/.f64 x p)) 1)
(fma.f64 -1/2 (/.f64 x p) 1)
(fma.f64 (/.f64 x p) -1/2 1)
(+.f64 (*.f64 -1/2 (/.f64 x p)) (+.f64 1 (*.f64 1/16 (/.f64 (pow.f64 x 3) (pow.f64 p 3)))))
(+.f64 (fma.f64 -1/2 (/.f64 x p) 1) (/.f64 (*.f64 1/16 (pow.f64 x 3)) (pow.f64 p 3)))
(fma.f64 (/.f64 x p) -1/2 (fma.f64 (/.f64 (pow.f64 x 3) (pow.f64 p 3)) 1/16 1))
(+.f64 (fma.f64 (/.f64 x p) -1/2 1) (/.f64 1/16 (pow.f64 (/.f64 p x) 3)))
(+.f64 (*.f64 -1/2 (/.f64 x p)) (+.f64 1 (+.f64 (*.f64 1/16 (/.f64 (pow.f64 x 3) (pow.f64 p 3))) (/.f64 (*.f64 (+.f64 (*.f64 -1/64 (pow.f64 x 4)) (pow.f64 (*.f64 -1/16 (pow.f64 x 2)) 2)) x) (pow.f64 p 5)))))
(+.f64 (fma.f64 -1/2 (/.f64 x p) 1) (fma.f64 1/16 (/.f64 (pow.f64 x 3) (pow.f64 p 3)) (/.f64 (fma.f64 -1/64 (pow.f64 x 4) (pow.f64 (*.f64 (*.f64 x x) -1/16) 2)) (/.f64 (pow.f64 p 5) x))))
(+.f64 (fma.f64 (/.f64 x p) -1/2 1) (fma.f64 (/.f64 (pow.f64 x 3) (pow.f64 p 3)) 1/16 (/.f64 (fma.f64 -1/64 (pow.f64 x 4) (*.f64 (pow.f64 x 4) 1/256)) (/.f64 (pow.f64 p 5) x))))
(+.f64 (+.f64 (fma.f64 (/.f64 x p) -1/2 1) (/.f64 (*.f64 (pow.f64 x 4) -3/256) (/.f64 (pow.f64 p 5) x))) (/.f64 1/16 (pow.f64 (/.f64 p x) 3)))
(sqrt.f64 1/2)
(+.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p)))
(+.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 (sqrt.f64 1/2) (/.f64 p x))))
(fma.f64 1/4 (*.f64 (/.f64 (sqrt.f64 1/2) p) x) (sqrt.f64 1/2))
(fma.f64 1/4 (*.f64 (/.f64 x p) (sqrt.f64 1/2)) (sqrt.f64 1/2))
(+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p)) (*.f64 -1/32 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 2)) (pow.f64 p 2)))))
(+.f64 (sqrt.f64 1/2) (fma.f64 1/4 (/.f64 (sqrt.f64 1/2) (/.f64 p x)) (*.f64 -1/32 (/.f64 (sqrt.f64 1/2) (/.f64 (*.f64 p p) (*.f64 x x))))))
(+.f64 (sqrt.f64 1/2) (fma.f64 1/4 (*.f64 (/.f64 (sqrt.f64 1/2) p) x) (*.f64 -1/32 (*.f64 (/.f64 (*.f64 x x) p) (/.f64 (sqrt.f64 1/2) p)))))
(+.f64 (*.f64 1/4 (*.f64 (/.f64 x p) (sqrt.f64 1/2))) (fma.f64 -1/32 (*.f64 (*.f64 (/.f64 x p) x) (/.f64 (sqrt.f64 1/2) p)) (sqrt.f64 1/2)))
(+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 -3/128 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 3)) (pow.f64 p 3))) (+.f64 (*.f64 1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p)) (*.f64 -1/32 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 2)) (pow.f64 p 2))))))
(+.f64 (sqrt.f64 1/2) (fma.f64 -3/128 (/.f64 (sqrt.f64 1/2) (/.f64 (pow.f64 p 3) (pow.f64 x 3))) (fma.f64 1/4 (/.f64 (sqrt.f64 1/2) (/.f64 p x)) (*.f64 -1/32 (/.f64 (sqrt.f64 1/2) (/.f64 (*.f64 p p) (*.f64 x x)))))))
(+.f64 (sqrt.f64 1/2) (fma.f64 -3/128 (/.f64 (sqrt.f64 1/2) (/.f64 (pow.f64 p 3) (pow.f64 x 3))) (fma.f64 1/4 (*.f64 (/.f64 (sqrt.f64 1/2) p) x) (*.f64 -1/32 (*.f64 (/.f64 (*.f64 x x) p) (/.f64 (sqrt.f64 1/2) p))))))
(+.f64 (fma.f64 -3/128 (/.f64 (sqrt.f64 1/2) (pow.f64 (/.f64 p x) 3)) (*.f64 1/4 (*.f64 (/.f64 x p) (sqrt.f64 1/2)))) (fma.f64 -1/32 (*.f64 (*.f64 (/.f64 x p) x) (/.f64 (sqrt.f64 1/2) p)) (sqrt.f64 1/2)))
(*.f64 (sqrt.f64 2) (sqrt.f64 1/2))
(*.f64 (sqrt.f64 1/2) (sqrt.f64 2))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 p 2)) (*.f64 (sqrt.f64 2) (pow.f64 x 2)))) (*.f64 (sqrt.f64 2) (sqrt.f64 1/2)))
(fma.f64 -1 (/.f64 (sqrt.f64 1/2) (/.f64 (*.f64 (*.f64 x x) (sqrt.f64 2)) (*.f64 p p))) (*.f64 (sqrt.f64 1/2) (sqrt.f64 2)))
(-.f64 (*.f64 (sqrt.f64 1/2) (sqrt.f64 2)) (*.f64 (/.f64 (*.f64 p p) (sqrt.f64 2)) (/.f64 (sqrt.f64 1/2) (*.f64 x x))))
(-.f64 (*.f64 (sqrt.f64 1/2) (sqrt.f64 2)) (*.f64 (*.f64 (/.f64 p x) (/.f64 p x)) (/.f64 (sqrt.f64 1/2) (sqrt.f64 2))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 p 2)) (*.f64 (sqrt.f64 2) (pow.f64 x 2)))) (+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 1/2)) (*.f64 1/2 (/.f64 (*.f64 (sqrt.f64 1/2) (-.f64 (*.f64 -1/2 (+.f64 (*.f64 -16 (pow.f64 p 4)) (pow.f64 (*.f64 -2 (pow.f64 p 2)) 2))) (pow.f64 (*.f64 -1 (/.f64 (pow.f64 p 2) (sqrt.f64 2))) 2))) (*.f64 (sqrt.f64 2) (pow.f64 x 4))))))
(fma.f64 -1 (/.f64 (sqrt.f64 1/2) (/.f64 (*.f64 (*.f64 x x) (sqrt.f64 2)) (*.f64 p p))) (fma.f64 (sqrt.f64 2) (sqrt.f64 1/2) (*.f64 1/2 (*.f64 (/.f64 (sqrt.f64 1/2) (sqrt.f64 2)) (/.f64 (-.f64 (*.f64 -1/2 (fma.f64 -16 (pow.f64 p 4) (pow.f64 (*.f64 (*.f64 p p) -2) 2))) (pow.f64 (neg.f64 (/.f64 (*.f64 p p) (sqrt.f64 2))) 2)) (pow.f64 x 4))))))
(-.f64 (fma.f64 (sqrt.f64 1/2) (sqrt.f64 2) (/.f64 (*.f64 (*.f64 1/2 (sqrt.f64 1/2)) (-.f64 (*.f64 -1/2 (fma.f64 (pow.f64 p 4) -16 (*.f64 4 (pow.f64 p 4)))) (pow.f64 (/.f64 (neg.f64 (*.f64 p p)) (sqrt.f64 2)) 2))) (*.f64 (pow.f64 x 4) (sqrt.f64 2)))) (*.f64 (/.f64 (*.f64 p p) (sqrt.f64 2)) (/.f64 (sqrt.f64 1/2) (*.f64 x x))))
(+.f64 (*.f64 (sqrt.f64 1/2) (sqrt.f64 2)) (*.f64 (/.f64 (sqrt.f64 1/2) (sqrt.f64 2)) (+.f64 (*.f64 (/.f64 (-.f64 (*.f64 -1/2 (*.f64 (pow.f64 p 4) -12)) (pow.f64 (/.f64 (*.f64 p (neg.f64 p)) (sqrt.f64 2)) 2)) (pow.f64 x 4)) 1/2) (neg.f64 (*.f64 (/.f64 p x) (/.f64 p x))))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 p 2)) (*.f64 (sqrt.f64 2) (pow.f64 x 2)))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/2 (+.f64 (*.f64 64 (pow.f64 p 6)) (*.f64 2 (*.f64 (+.f64 (*.f64 -16 (pow.f64 p 4)) (pow.f64 (*.f64 -2 (pow.f64 p 2)) 2)) (pow.f64 p 2))))) (*.f64 -1 (/.f64 (*.f64 (-.f64 (*.f64 -1/2 (+.f64 (*.f64 -16 (pow.f64 p 4)) (pow.f64 (*.f64 -2 (pow.f64 p 2)) 2))) (pow.f64 (*.f64 -1 (/.f64 (pow.f64 p 2) (sqrt.f64 2))) 2)) (pow.f64 p 2)) (pow.f64 (sqrt.f64 2) 2)))) (sqrt.f64 1/2)) (*.f64 (sqrt.f64 2) (pow.f64 x 6)))) (+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 1/2)) (*.f64 1/2 (/.f64 (*.f64 (sqrt.f64 1/2) (-.f64 (*.f64 -1/2 (+.f64 (*.f64 -16 (pow.f64 p 4)) (pow.f64 (*.f64 -2 (pow.f64 p 2)) 2))) (pow.f64 (*.f64 -1 (/.f64 (pow.f64 p 2) (sqrt.f64 2))) 2))) (*.f64 (sqrt.f64 2) (pow.f64 x 4)))))))
(fma.f64 -1 (/.f64 (sqrt.f64 1/2) (/.f64 (*.f64 (*.f64 x x) (sqrt.f64 2)) (*.f64 p p))) (fma.f64 1/2 (*.f64 (/.f64 (-.f64 (*.f64 -1/2 (fma.f64 64 (pow.f64 p 6) (*.f64 2 (*.f64 (*.f64 p p) (fma.f64 -16 (pow.f64 p 4) (pow.f64 (*.f64 (*.f64 p p) -2) 2)))))) (neg.f64 (/.f64 (-.f64 (*.f64 -1/2 (fma.f64 -16 (pow.f64 p 4) (pow.f64 (*.f64 (*.f64 p p) -2) 2))) (pow.f64 (neg.f64 (/.f64 (*.f64 p p) (sqrt.f64 2))) 2)) (/.f64 (pow.f64 (sqrt.f64 2) 2) (*.f64 p p))))) (sqrt.f64 2)) (/.f64 (sqrt.f64 1/2) (pow.f64 x 6))) (fma.f64 (sqrt.f64 2) (sqrt.f64 1/2) (*.f64 1/2 (*.f64 (/.f64 (sqrt.f64 1/2) (sqrt.f64 2)) (/.f64 (-.f64 (*.f64 -1/2 (fma.f64 -16 (pow.f64 p 4) (pow.f64 (*.f64 (*.f64 p p) -2) 2))) (pow.f64 (neg.f64 (/.f64 (*.f64 p p) (sqrt.f64 2))) 2)) (pow.f64 x 4)))))))
(-.f64 (fma.f64 1/2 (*.f64 (/.f64 (fma.f64 -1/2 (fma.f64 2 (*.f64 (*.f64 p p) (fma.f64 (pow.f64 p 4) -16 (*.f64 4 (pow.f64 p 4)))) (*.f64 (pow.f64 p 6) 64)) (/.f64 (-.f64 (*.f64 -1/2 (fma.f64 (pow.f64 p 4) -16 (*.f64 4 (pow.f64 p 4)))) (pow.f64 (/.f64 (neg.f64 (*.f64 p p)) (sqrt.f64 2)) 2)) (/.f64 2 (*.f64 p p)))) (sqrt.f64 2)) (/.f64 (sqrt.f64 1/2) (pow.f64 x 6))) (fma.f64 (sqrt.f64 1/2) (sqrt.f64 2) (/.f64 (*.f64 (*.f64 1/2 (sqrt.f64 1/2)) (-.f64 (*.f64 -1/2 (fma.f64 (pow.f64 p 4) -16 (*.f64 4 (pow.f64 p 4)))) (pow.f64 (/.f64 (neg.f64 (*.f64 p p)) (sqrt.f64 2)) 2))) (*.f64 (pow.f64 x 4) (sqrt.f64 2))))) (*.f64 (/.f64 (*.f64 p p) (sqrt.f64 2)) (/.f64 (sqrt.f64 1/2) (*.f64 x x))))
(+.f64 (fma.f64 1/2 (*.f64 (/.f64 (+.f64 (*.f64 (pow.f64 p 6) -32) (*.f64 (*.f64 p p) (+.f64 (*.f64 -1/2 (*.f64 2 (*.f64 (pow.f64 p 4) -12))) (/.f64 (-.f64 (*.f64 -1/2 (*.f64 (pow.f64 p 4) -12)) (pow.f64 (/.f64 (*.f64 p (neg.f64 p)) (sqrt.f64 2)) 2)) 2)))) (sqrt.f64 2)) (/.f64 (sqrt.f64 1/2) (pow.f64 x 6))) (*.f64 (sqrt.f64 1/2) (sqrt.f64 2))) (*.f64 (/.f64 (sqrt.f64 1/2) (sqrt.f64 2)) (+.f64 (*.f64 (/.f64 (-.f64 (*.f64 -1/2 (*.f64 (pow.f64 p 4) -12)) (pow.f64 (/.f64 (*.f64 p (neg.f64 p)) (sqrt.f64 2)) 2)) (pow.f64 x 4)) 1/2) (neg.f64 (*.f64 (/.f64 p x) (/.f64 p x))))))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(neg.f64 (/.f64 (sqrt.f64 2) (/.f64 x (*.f64 p (sqrt.f64 1/2)))))
(/.f64 (neg.f64 (sqrt.f64 2)) (/.f64 (/.f64 x p) (sqrt.f64 1/2)))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (+.f64 (*.f64 -16 (pow.f64 p 4)) (pow.f64 (*.f64 -2 (pow.f64 p 2)) 2)) (sqrt.f64 1/2)) (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 x 3) p)))) (*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x)))
(fma.f64 -1/4 (*.f64 (/.f64 (fma.f64 -16 (pow.f64 p 4) (pow.f64 (*.f64 (*.f64 p p) -2) 2)) (sqrt.f64 2)) (/.f64 (sqrt.f64 1/2) (*.f64 p (pow.f64 x 3)))) (neg.f64 (/.f64 (sqrt.f64 2) (/.f64 x (*.f64 p (sqrt.f64 1/2))))))
(-.f64 (*.f64 -1/4 (*.f64 (/.f64 (fma.f64 (pow.f64 p 4) -16 (*.f64 4 (pow.f64 p 4))) (*.f64 (sqrt.f64 2) (*.f64 p (pow.f64 x 3)))) (sqrt.f64 1/2))) (*.f64 (/.f64 (sqrt.f64 2) x) (*.f64 p (sqrt.f64 1/2))))
(fma.f64 -1/4 (*.f64 (/.f64 (*.f64 (pow.f64 p 4) -12) (sqrt.f64 2)) (/.f64 (sqrt.f64 1/2) (*.f64 p (pow.f64 x 3)))) (/.f64 (neg.f64 (sqrt.f64 2)) (/.f64 (/.f64 x p) (sqrt.f64 1/2))))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (+.f64 (*.f64 -16 (pow.f64 p 4)) (pow.f64 (*.f64 -2 (pow.f64 p 2)) 2)) (sqrt.f64 1/2)) (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 x 3) p)))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sqrt.f64 1/2) (-.f64 (*.f64 1/2 (+.f64 (*.f64 64 (pow.f64 p 6)) (*.f64 2 (*.f64 (+.f64 (*.f64 -16 (pow.f64 p 4)) (pow.f64 (*.f64 -2 (pow.f64 p 2)) 2)) (pow.f64 p 2))))) (pow.f64 (*.f64 1/4 (/.f64 (+.f64 (*.f64 -16 (pow.f64 p 4)) (pow.f64 (*.f64 -2 (pow.f64 p 2)) 2)) (*.f64 (sqrt.f64 2) p))) 2))) (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 x 5) p)))) (*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))))
(fma.f64 -1/4 (*.f64 (/.f64 (fma.f64 -16 (pow.f64 p 4) (pow.f64 (*.f64 (*.f64 p p) -2) 2)) (sqrt.f64 2)) (/.f64 (sqrt.f64 1/2) (*.f64 p (pow.f64 x 3)))) (fma.f64 -1/2 (/.f64 (sqrt.f64 1/2) (/.f64 (*.f64 (*.f64 p (pow.f64 x 5)) (sqrt.f64 2)) (-.f64 (*.f64 1/2 (fma.f64 64 (pow.f64 p 6) (*.f64 2 (*.f64 (*.f64 p p) (fma.f64 -16 (pow.f64 p 4) (pow.f64 (*.f64 (*.f64 p p) -2) 2)))))) (pow.f64 (/.f64 (*.f64 1/4 (fma.f64 -16 (pow.f64 p 4) (pow.f64 (*.f64 (*.f64 p p) -2) 2))) (*.f64 p (sqrt.f64 2))) 2)))) (neg.f64 (/.f64 (sqrt.f64 2) (/.f64 x (*.f64 p (sqrt.f64 1/2)))))))
(-.f64 (fma.f64 -1/4 (*.f64 (/.f64 (fma.f64 (pow.f64 p 4) -16 (*.f64 4 (pow.f64 p 4))) (*.f64 (sqrt.f64 2) (*.f64 p (pow.f64 x 3)))) (sqrt.f64 1/2)) (/.f64 (*.f64 (sqrt.f64 1/2) -1/2) (/.f64 (*.f64 p (*.f64 (pow.f64 x 5) (sqrt.f64 2))) (+.f64 (*.f64 (pow.f64 p 6) 32) (-.f64 (*.f64 1 (*.f64 (*.f64 p p) (fma.f64 (pow.f64 p 4) -16 (*.f64 4 (pow.f64 p 4))))) (pow.f64 (*.f64 (/.f64 1/4 p) (/.f64 (fma.f64 (pow.f64 p 4) -16 (*.f64 4 (pow.f64 p 4))) (sqrt.f64 2))) 2)))))) (*.f64 (/.f64 (sqrt.f64 2) x) (*.f64 p (sqrt.f64 1/2))))
(-.f64 (fma.f64 -1/4 (*.f64 (/.f64 (*.f64 (pow.f64 p 4) -12) (sqrt.f64 2)) (/.f64 (sqrt.f64 1/2) (*.f64 p (pow.f64 x 3)))) (*.f64 (/.f64 (*.f64 (sqrt.f64 1/2) -1/2) (*.f64 p (pow.f64 x 5))) (/.f64 (+.f64 (*.f64 (pow.f64 p 6) 32) (-.f64 (*.f64 p (*.f64 p (*.f64 (pow.f64 p 4) -12))) (pow.f64 (*.f64 (/.f64 1/4 p) (/.f64 (*.f64 (pow.f64 p 4) -12) (sqrt.f64 2))) 2))) (sqrt.f64 2)))) (*.f64 (/.f64 (sqrt.f64 2) x) (*.f64 p (sqrt.f64 1/2))))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (+.f64 (*.f64 -16 (pow.f64 p 4)) (pow.f64 (*.f64 -2 (pow.f64 p 2)) 2)) (sqrt.f64 1/2)) (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 x 3) p)))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 1/2 (+.f64 (*.f64 2 (*.f64 (pow.f64 p 2) (+.f64 (*.f64 64 (pow.f64 p 6)) (*.f64 2 (*.f64 (+.f64 (*.f64 -16 (pow.f64 p 4)) (pow.f64 (*.f64 -2 (pow.f64 p 2)) 2)) (pow.f64 p 2)))))) (+.f64 (*.f64 -256 (pow.f64 p 8)) (pow.f64 (*.f64 -1/2 (+.f64 (*.f64 -16 (pow.f64 p 4)) (pow.f64 (*.f64 -2 (pow.f64 p 2)) 2))) 2)))) (*.f64 1/4 (/.f64 (*.f64 (+.f64 (*.f64 -16 (pow.f64 p 4)) (pow.f64 (*.f64 -2 (pow.f64 p 2)) 2)) (-.f64 (*.f64 1/2 (+.f64 (*.f64 64 (pow.f64 p 6)) (*.f64 2 (*.f64 (+.f64 (*.f64 -16 (pow.f64 p 4)) (pow.f64 (*.f64 -2 (pow.f64 p 2)) 2)) (pow.f64 p 2))))) (pow.f64 (*.f64 1/4 (/.f64 (+.f64 (*.f64 -16 (pow.f64 p 4)) (pow.f64 (*.f64 -2 (pow.f64 p 2)) 2)) (*.f64 (sqrt.f64 2) p))) 2))) (*.f64 (pow.f64 (sqrt.f64 2) 2) (pow.f64 p 2))))) (sqrt.f64 1/2)) (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 x 7) p)))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sqrt.f64 1/2) (-.f64 (*.f64 1/2 (+.f64 (*.f64 64 (pow.f64 p 6)) (*.f64 2 (*.f64 (+.f64 (*.f64 -16 (pow.f64 p 4)) (pow.f64 (*.f64 -2 (pow.f64 p 2)) 2)) (pow.f64 p 2))))) (pow.f64 (*.f64 1/4 (/.f64 (+.f64 (*.f64 -16 (pow.f64 p 4)) (pow.f64 (*.f64 -2 (pow.f64 p 2)) 2)) (*.f64 (sqrt.f64 2) p))) 2))) (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 x 5) p)))) (*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x)))))
(fma.f64 -1/4 (*.f64 (/.f64 (fma.f64 -16 (pow.f64 p 4) (pow.f64 (*.f64 (*.f64 p p) -2) 2)) (sqrt.f64 2)) (/.f64 (sqrt.f64 1/2) (*.f64 p (pow.f64 x 3)))) (fma.f64 -1/2 (*.f64 (/.f64 (+.f64 (*.f64 1/2 (fma.f64 2 (*.f64 (*.f64 p p) (fma.f64 64 (pow.f64 p 6) (*.f64 2 (*.f64 (*.f64 p p) (fma.f64 -16 (pow.f64 p 4) (pow.f64 (*.f64 (*.f64 p p) -2) 2)))))) (fma.f64 -256 (pow.f64 p 8) (pow.f64 (*.f64 -1/2 (fma.f64 -16 (pow.f64 p 4) (pow.f64 (*.f64 (*.f64 p p) -2) 2))) 2)))) (*.f64 -1/4 (*.f64 (/.f64 (fma.f64 -16 (pow.f64 p 4) (pow.f64 (*.f64 (*.f64 p p) -2) 2)) (pow.f64 (sqrt.f64 2) 2)) (/.f64 (-.f64 (*.f64 1/2 (fma.f64 64 (pow.f64 p 6) (*.f64 2 (*.f64 (*.f64 p p) (fma.f64 -16 (pow.f64 p 4) (pow.f64 (*.f64 (*.f64 p p) -2) 2)))))) (pow.f64 (/.f64 (*.f64 1/4 (fma.f64 -16 (pow.f64 p 4) (pow.f64 (*.f64 (*.f64 p p) -2) 2))) (*.f64 p (sqrt.f64 2))) 2)) (*.f64 p p))))) (sqrt.f64 2)) (/.f64 (sqrt.f64 1/2) (*.f64 p (pow.f64 x 7)))) (fma.f64 -1/2 (/.f64 (sqrt.f64 1/2) (/.f64 (*.f64 (*.f64 p (pow.f64 x 5)) (sqrt.f64 2)) (-.f64 (*.f64 1/2 (fma.f64 64 (pow.f64 p 6) (*.f64 2 (*.f64 (*.f64 p p) (fma.f64 -16 (pow.f64 p 4) (pow.f64 (*.f64 (*.f64 p p) -2) 2)))))) (pow.f64 (/.f64 (*.f64 1/4 (fma.f64 -16 (pow.f64 p 4) (pow.f64 (*.f64 (*.f64 p p) -2) 2))) (*.f64 p (sqrt.f64 2))) 2)))) (neg.f64 (/.f64 (sqrt.f64 2) (/.f64 x (*.f64 p (sqrt.f64 1/2))))))))
(fma.f64 -1/4 (*.f64 (/.f64 (fma.f64 (pow.f64 p 4) -16 (*.f64 4 (pow.f64 p 4))) (*.f64 (sqrt.f64 2) (*.f64 p (pow.f64 x 3)))) (sqrt.f64 1/2)) (-.f64 (*.f64 -1/2 (+.f64 (*.f64 (/.f64 (-.f64 (*.f64 1/2 (fma.f64 2 (+.f64 (*.f64 64 (pow.f64 p 8)) (*.f64 (*.f64 2 (fma.f64 (pow.f64 p 4) -16 (*.f64 4 (pow.f64 p 4)))) (pow.f64 p 4))) (fma.f64 -256 (pow.f64 p 8) (pow.f64 (*.f64 -1/2 (fma.f64 (pow.f64 p 4) -16 (*.f64 4 (pow.f64 p 4)))) 2)))) (*.f64 1/8 (/.f64 (*.f64 (fma.f64 (pow.f64 p 4) -16 (*.f64 4 (pow.f64 p 4))) (+.f64 (*.f64 (pow.f64 p 6) 32) (-.f64 (*.f64 1 (*.f64 (*.f64 p p) (fma.f64 (pow.f64 p 4) -16 (*.f64 4 (pow.f64 p 4))))) (pow.f64 (*.f64 (/.f64 1/4 p) (/.f64 (fma.f64 (pow.f64 p 4) -16 (*.f64 4 (pow.f64 p 4))) (sqrt.f64 2))) 2)))) (*.f64 p p)))) (sqrt.f64 2)) (/.f64 (sqrt.f64 1/2) (*.f64 p (pow.f64 x 7)))) (*.f64 (/.f64 (sqrt.f64 1/2) (sqrt.f64 2)) (/.f64 (+.f64 (*.f64 (pow.f64 p 6) 32) (-.f64 (*.f64 1 (*.f64 (*.f64 p p) (fma.f64 (pow.f64 p 4) -16 (*.f64 4 (pow.f64 p 4))))) (pow.f64 (*.f64 (/.f64 1/4 p) (/.f64 (fma.f64 (pow.f64 p 4) -16 (*.f64 4 (pow.f64 p 4))) (sqrt.f64 2))) 2))) (*.f64 p (pow.f64 x 5)))))) (*.f64 (/.f64 (sqrt.f64 2) x) (*.f64 p (sqrt.f64 1/2)))))
(fma.f64 -1/4 (*.f64 (/.f64 (*.f64 (pow.f64 p 4) -12) (sqrt.f64 2)) (/.f64 (sqrt.f64 1/2) (*.f64 p (pow.f64 x 3)))) (fma.f64 -1/2 (*.f64 (/.f64 (sqrt.f64 1/2) (sqrt.f64 2)) (+.f64 (/.f64 (+.f64 (+.f64 (*.f64 64 (pow.f64 p 8)) (*.f64 (*.f64 2 (*.f64 (pow.f64 p 4) -12)) (pow.f64 p 4))) (fma.f64 1/2 (fma.f64 -256 (pow.f64 p 8) (pow.f64 (*.f64 -1/2 (*.f64 (pow.f64 p 4) -12)) 2)) (*.f64 -1/8 (/.f64 (*.f64 (*.f64 (pow.f64 p 4) -12) (+.f64 (*.f64 (pow.f64 p 6) 32) (-.f64 (*.f64 p (*.f64 p (*.f64 (pow.f64 p 4) -12))) (pow.f64 (*.f64 (/.f64 1/4 p) (/.f64 (*.f64 (pow.f64 p 4) -12) (sqrt.f64 2))) 2)))) (*.f64 p p))))) (*.f64 p (pow.f64 x 7))) (/.f64 (+.f64 (*.f64 (pow.f64 p 6) 32) (-.f64 (*.f64 p (*.f64 p (*.f64 (pow.f64 p 4) -12))) (pow.f64 (*.f64 (/.f64 1/4 p) (/.f64 (*.f64 (pow.f64 p 4) -12) (sqrt.f64 2))) 2))) (*.f64 p (pow.f64 x 5))))) (/.f64 (neg.f64 (sqrt.f64 2)) (/.f64 (/.f64 x p) (sqrt.f64 1/2)))))
(*.f64 (sqrt.f64 2) (sqrt.f64 1/2))
(*.f64 (sqrt.f64 1/2) (sqrt.f64 2))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 p 2)) (*.f64 (sqrt.f64 2) (pow.f64 x 2)))) (*.f64 (sqrt.f64 2) (sqrt.f64 1/2)))
(fma.f64 -1 (/.f64 (sqrt.f64 1/2) (/.f64 (*.f64 (*.f64 x x) (sqrt.f64 2)) (*.f64 p p))) (*.f64 (sqrt.f64 1/2) (sqrt.f64 2)))
(-.f64 (*.f64 (sqrt.f64 1/2) (sqrt.f64 2)) (*.f64 (/.f64 (*.f64 p p) (sqrt.f64 2)) (/.f64 (sqrt.f64 1/2) (*.f64 x x))))
(-.f64 (*.f64 (sqrt.f64 1/2) (sqrt.f64 2)) (*.f64 (*.f64 (/.f64 p x) (/.f64 p x)) (/.f64 (sqrt.f64 1/2) (sqrt.f64 2))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 p 2)) (*.f64 (sqrt.f64 2) (pow.f64 x 2)))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (sqrt.f64 1/2) (*.f64 (-.f64 (*.f64 1/2 (*.f64 (-.f64 (*.f64 16 (/.f64 1 (pow.f64 x 6))) (pow.f64 (/.f64 -2 (pow.f64 x 3)) 2)) (pow.f64 x 2))) (pow.f64 (/.f64 -1 (*.f64 (sqrt.f64 2) (pow.f64 x 2))) 2)) (pow.f64 p 4))) (sqrt.f64 2))) (*.f64 (sqrt.f64 2) (sqrt.f64 1/2))))
(fma.f64 -1 (/.f64 (sqrt.f64 1/2) (/.f64 (*.f64 (*.f64 x x) (sqrt.f64 2)) (*.f64 p p))) (fma.f64 1/2 (/.f64 (sqrt.f64 1/2) (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 p 4) (fma.f64 1/2 (*.f64 (*.f64 x x) (-.f64 (/.f64 16 (pow.f64 x 6)) (pow.f64 (/.f64 -2 (pow.f64 x 3)) 2))) (neg.f64 (pow.f64 (/.f64 -1 (*.f64 (*.f64 x x) (sqrt.f64 2))) 2)))))) (*.f64 (sqrt.f64 1/2) (sqrt.f64 2))))
(-.f64 (fma.f64 1/2 (*.f64 (/.f64 (sqrt.f64 1/2) (sqrt.f64 2)) (*.f64 (pow.f64 p 4) (fma.f64 1/2 (*.f64 x (*.f64 x (-.f64 (/.f64 16 (pow.f64 x 6)) (pow.f64 (/.f64 -2 (pow.f64 x 3)) 2)))) (neg.f64 (pow.f64 (/.f64 (/.f64 -1 (*.f64 x x)) (sqrt.f64 2)) 2))))) (*.f64 (sqrt.f64 1/2) (sqrt.f64 2))) (*.f64 (/.f64 (*.f64 p p) (sqrt.f64 2)) (/.f64 (sqrt.f64 1/2) (*.f64 x x))))
(-.f64 (fma.f64 1/2 (*.f64 (/.f64 (sqrt.f64 1/2) (sqrt.f64 2)) (*.f64 (pow.f64 p 4) (-.f64 (*.f64 (*.f64 x x) (*.f64 1/2 (-.f64 (/.f64 16 (pow.f64 x 6)) (pow.f64 (/.f64 -2 (pow.f64 x 3)) 2)))) (pow.f64 (/.f64 -1 (*.f64 x (*.f64 x (sqrt.f64 2)))) 2)))) (*.f64 (sqrt.f64 1/2) (sqrt.f64 2))) (*.f64 (*.f64 (/.f64 p x) (/.f64 p x)) (/.f64 (sqrt.f64 1/2) (sqrt.f64 2))))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (sqrt.f64 1/2) (*.f64 (-.f64 (*.f64 -1/2 (*.f64 (+.f64 (*.f64 -2 (/.f64 (-.f64 (*.f64 16 (/.f64 1 (pow.f64 x 6))) (pow.f64 (/.f64 -2 (pow.f64 x 3)) 2)) (pow.f64 x 2))) (*.f64 64 (/.f64 1 (pow.f64 x 8)))) (pow.f64 x 2))) (*.f64 -1 (/.f64 (-.f64 (*.f64 1/2 (*.f64 (-.f64 (*.f64 16 (/.f64 1 (pow.f64 x 6))) (pow.f64 (/.f64 -2 (pow.f64 x 3)) 2)) (pow.f64 x 2))) (pow.f64 (/.f64 -1 (*.f64 (sqrt.f64 2) (pow.f64 x 2))) 2)) (*.f64 (pow.f64 (sqrt.f64 2) 2) (pow.f64 x 2))))) (pow.f64 p 6))) (sqrt.f64 2))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 p 2)) (*.f64 (sqrt.f64 2) (pow.f64 x 2)))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (sqrt.f64 1/2) (*.f64 (-.f64 (*.f64 1/2 (*.f64 (-.f64 (*.f64 16 (/.f64 1 (pow.f64 x 6))) (pow.f64 (/.f64 -2 (pow.f64 x 3)) 2)) (pow.f64 x 2))) (pow.f64 (/.f64 -1 (*.f64 (sqrt.f64 2) (pow.f64 x 2))) 2)) (pow.f64 p 4))) (sqrt.f64 2))) (*.f64 (sqrt.f64 2) (sqrt.f64 1/2)))))
(fma.f64 1/2 (/.f64 (sqrt.f64 1/2) (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 p 6) (-.f64 (*.f64 -1/2 (*.f64 (*.f64 x x) (fma.f64 -2 (/.f64 (-.f64 (/.f64 16 (pow.f64 x 6)) (pow.f64 (/.f64 -2 (pow.f64 x 3)) 2)) (*.f64 x x)) (/.f64 64 (pow.f64 x 8))))) (neg.f64 (/.f64 (fma.f64 1/2 (*.f64 (*.f64 x x) (-.f64 (/.f64 16 (pow.f64 x 6)) (pow.f64 (/.f64 -2 (pow.f64 x 3)) 2))) (neg.f64 (pow.f64 (/.f64 -1 (*.f64 (*.f64 x x) (sqrt.f64 2))) 2))) (*.f64 (*.f64 x x) (pow.f64 (sqrt.f64 2) 2)))))))) (fma.f64 -1 (/.f64 (sqrt.f64 1/2) (/.f64 (*.f64 (*.f64 x x) (sqrt.f64 2)) (*.f64 p p))) (fma.f64 1/2 (/.f64 (sqrt.f64 1/2) (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 p 4) (fma.f64 1/2 (*.f64 (*.f64 x x) (-.f64 (/.f64 16 (pow.f64 x 6)) (pow.f64 (/.f64 -2 (pow.f64 x 3)) 2))) (neg.f64 (pow.f64 (/.f64 -1 (*.f64 (*.f64 x x) (sqrt.f64 2))) 2)))))) (*.f64 (sqrt.f64 1/2) (sqrt.f64 2)))))
(fma.f64 1/2 (*.f64 (/.f64 (sqrt.f64 1/2) (sqrt.f64 2)) (*.f64 (pow.f64 p 6) (fma.f64 -1/2 (*.f64 x (*.f64 x (fma.f64 -2 (-.f64 (/.f64 16 (pow.f64 x 8)) (/.f64 (pow.f64 (/.f64 -2 (pow.f64 x 3)) 2) (*.f64 x x))) (/.f64 64 (pow.f64 x 8))))) (/.f64 (fma.f64 1/2 (*.f64 x (*.f64 x (-.f64 (/.f64 16 (pow.f64 x 6)) (pow.f64 (/.f64 -2 (pow.f64 x 3)) 2)))) (neg.f64 (pow.f64 (/.f64 (/.f64 -1 (*.f64 x x)) (sqrt.f64 2)) 2))) (*.f64 x (*.f64 x 2)))))) (-.f64 (fma.f64 1/2 (*.f64 (/.f64 (sqrt.f64 1/2) (sqrt.f64 2)) (*.f64 (pow.f64 p 4) (fma.f64 1/2 (*.f64 x (*.f64 x (-.f64 (/.f64 16 (pow.f64 x 6)) (pow.f64 (/.f64 -2 (pow.f64 x 3)) 2)))) (neg.f64 (pow.f64 (/.f64 (/.f64 -1 (*.f64 x x)) (sqrt.f64 2)) 2))))) (*.f64 (sqrt.f64 1/2) (sqrt.f64 2))) (*.f64 (/.f64 (*.f64 p p) (sqrt.f64 2)) (/.f64 (sqrt.f64 1/2) (*.f64 x x)))))
(fma.f64 1/2 (*.f64 (/.f64 (sqrt.f64 1/2) (sqrt.f64 2)) (*.f64 (pow.f64 p 6) (fma.f64 (*.f64 x x) (+.f64 (/.f64 1 (/.f64 (*.f64 x x) (-.f64 (/.f64 16 (pow.f64 x 6)) (pow.f64 (/.f64 -2 (pow.f64 x 3)) 2)))) (/.f64 -32 (pow.f64 x 8))) (-.f64 (*.f64 (/.f64 (*.f64 1/2 (-.f64 (/.f64 16 (pow.f64 x 6)) (pow.f64 (/.f64 -2 (pow.f64 x 3)) 2))) 2) 1) (/.f64 (pow.f64 (/.f64 -1 (*.f64 x (*.f64 x (sqrt.f64 2)))) 2) (*.f64 x (*.f64 x 2))))))) (-.f64 (fma.f64 1/2 (*.f64 (/.f64 (sqrt.f64 1/2) (sqrt.f64 2)) (*.f64 (pow.f64 p 4) (-.f64 (*.f64 (*.f64 x x) (*.f64 1/2 (-.f64 (/.f64 16 (pow.f64 x 6)) (pow.f64 (/.f64 -2 (pow.f64 x 3)) 2)))) (pow.f64 (/.f64 -1 (*.f64 x (*.f64 x (sqrt.f64 2)))) 2)))) (*.f64 (sqrt.f64 1/2) (sqrt.f64 2))) (*.f64 (*.f64 (/.f64 p x) (/.f64 p x)) (/.f64 (sqrt.f64 1/2) (sqrt.f64 2)))))
(sqrt.f64 1/2)
(+.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p)))
(+.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 (sqrt.f64 1/2) (/.f64 p x))))
(fma.f64 1/4 (*.f64 (/.f64 (sqrt.f64 1/2) p) x) (sqrt.f64 1/2))
(fma.f64 1/4 (*.f64 (/.f64 x p) (sqrt.f64 1/2)) (sqrt.f64 1/2))
(+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p)) (*.f64 -1/32 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 2)) (pow.f64 p 2)))))
(+.f64 (sqrt.f64 1/2) (fma.f64 1/4 (/.f64 (sqrt.f64 1/2) (/.f64 p x)) (*.f64 -1/32 (/.f64 (sqrt.f64 1/2) (/.f64 (*.f64 p p) (*.f64 x x))))))
(+.f64 (sqrt.f64 1/2) (fma.f64 1/4 (*.f64 (/.f64 (sqrt.f64 1/2) p) x) (*.f64 -1/32 (*.f64 (/.f64 (*.f64 x x) p) (/.f64 (sqrt.f64 1/2) p)))))
(+.f64 (*.f64 1/4 (*.f64 (/.f64 x p) (sqrt.f64 1/2))) (fma.f64 -1/32 (*.f64 (*.f64 (/.f64 x p) x) (/.f64 (sqrt.f64 1/2) p)) (sqrt.f64 1/2)))
(+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p)) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (sqrt.f64 1/2) (-.f64 (*.f64 -1/16 (pow.f64 x 3)) (*.f64 -1/64 (pow.f64 x 3)))) (pow.f64 p 3))) (*.f64 -1/32 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 2)) (pow.f64 p 2))))))
(+.f64 (sqrt.f64 1/2) (fma.f64 1/4 (/.f64 (sqrt.f64 1/2) (/.f64 p x)) (fma.f64 1/2 (/.f64 (*.f64 (sqrt.f64 1/2) (*.f64 (pow.f64 x 3) -3/64)) (pow.f64 p 3)) (*.f64 -1/32 (/.f64 (sqrt.f64 1/2) (/.f64 (*.f64 p p) (*.f64 x x)))))))
(+.f64 (sqrt.f64 1/2) (fma.f64 1/4 (*.f64 (/.f64 (sqrt.f64 1/2) p) x) (fma.f64 1/2 (*.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 p 3)) (*.f64 (pow.f64 x 3) -3/64)) (*.f64 -1/32 (*.f64 (/.f64 (*.f64 x x) p) (/.f64 (sqrt.f64 1/2) p))))))
(+.f64 (fma.f64 1/4 (*.f64 (/.f64 x p) (sqrt.f64 1/2)) (sqrt.f64 1/2)) (fma.f64 -1/32 (*.f64 (*.f64 (/.f64 x p) x) (/.f64 (sqrt.f64 1/2) p)) (*.f64 (/.f64 (*.f64 (sqrt.f64 1/2) 1/2) (pow.f64 (/.f64 p x) 3)) -3/64)))
(sqrt.f64 1/2)
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p)) (sqrt.f64 1/2))
(fma.f64 -1/4 (/.f64 (sqrt.f64 1/2) (/.f64 p x)) (sqrt.f64 1/2))
(fma.f64 -1/4 (*.f64 (/.f64 (sqrt.f64 1/2) p) x) (sqrt.f64 1/2))
(fma.f64 -1/4 (*.f64 (/.f64 x p) (sqrt.f64 1/2)) (sqrt.f64 1/2))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p)) (+.f64 (sqrt.f64 1/2) (*.f64 -1/32 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 2)) (pow.f64 p 2)))))
(+.f64 (fma.f64 -1/4 (/.f64 (sqrt.f64 1/2) (/.f64 p x)) (sqrt.f64 1/2)) (*.f64 -1/32 (/.f64 (sqrt.f64 1/2) (/.f64 (*.f64 p p) (*.f64 x x)))))
(fma.f64 -1/4 (*.f64 (/.f64 (sqrt.f64 1/2) p) x) (fma.f64 -1/32 (*.f64 (/.f64 (*.f64 x x) p) (/.f64 (sqrt.f64 1/2) p)) (sqrt.f64 1/2)))
(fma.f64 -1/4 (*.f64 (/.f64 x p) (sqrt.f64 1/2)) (fma.f64 -1/32 (*.f64 (*.f64 (/.f64 x p) x) (/.f64 (sqrt.f64 1/2) p)) (sqrt.f64 1/2)))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sqrt.f64 1/2) (-.f64 (*.f64 -1/16 (pow.f64 x 3)) (*.f64 -1/64 (pow.f64 x 3)))) (pow.f64 p 3))) (+.f64 (sqrt.f64 1/2) (*.f64 -1/32 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 2)) (pow.f64 p 2))))))
(fma.f64 -1/4 (/.f64 (sqrt.f64 1/2) (/.f64 p x)) (fma.f64 -1/2 (/.f64 (*.f64 (sqrt.f64 1/2) (*.f64 (pow.f64 x 3) -3/64)) (pow.f64 p 3)) (+.f64 (sqrt.f64 1/2) (*.f64 -1/32 (/.f64 (sqrt.f64 1/2) (/.f64 (*.f64 p p) (*.f64 x x)))))))
(fma.f64 -1/4 (*.f64 (/.f64 (sqrt.f64 1/2) p) x) (fma.f64 -1/2 (*.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 p 3)) (*.f64 (pow.f64 x 3) -3/64)) (fma.f64 -1/32 (*.f64 (/.f64 (*.f64 x x) p) (/.f64 (sqrt.f64 1/2) p)) (sqrt.f64 1/2))))
(fma.f64 -1/4 (*.f64 (/.f64 x p) (sqrt.f64 1/2)) (fma.f64 -1/2 (*.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 (/.f64 p x) 3)) -3/64) (fma.f64 -1/32 (*.f64 (*.f64 (/.f64 x p) x) (/.f64 (sqrt.f64 1/2) p)) (sqrt.f64 1/2))))
(pow.f64 x 2)
(*.f64 x x)
(+.f64 (*.f64 4 (pow.f64 p 2)) (pow.f64 x 2))
(fma.f64 4 (*.f64 p p) (*.f64 x x))
(fma.f64 x x (*.f64 p (*.f64 p 4)))
(+.f64 (*.f64 4 (pow.f64 p 2)) (pow.f64 x 2))
(fma.f64 4 (*.f64 p p) (*.f64 x x))
(fma.f64 x x (*.f64 p (*.f64 p 4)))
(+.f64 (*.f64 4 (pow.f64 p 2)) (pow.f64 x 2))
(fma.f64 4 (*.f64 p p) (*.f64 x x))
(fma.f64 x x (*.f64 p (*.f64 p 4)))
(*.f64 4 (pow.f64 p 2))
(*.f64 (*.f64 p p) 4)
(*.f64 p (*.f64 p 4))
(+.f64 (*.f64 4 (pow.f64 p 2)) (pow.f64 x 2))
(fma.f64 4 (*.f64 p p) (*.f64 x x))
(fma.f64 x x (*.f64 p (*.f64 p 4)))
(+.f64 (*.f64 4 (pow.f64 p 2)) (pow.f64 x 2))
(fma.f64 4 (*.f64 p p) (*.f64 x x))
(fma.f64 x x (*.f64 p (*.f64 p 4)))
(+.f64 (*.f64 4 (pow.f64 p 2)) (pow.f64 x 2))
(fma.f64 4 (*.f64 p p) (*.f64 x x))
(fma.f64 x x (*.f64 p (*.f64 p 4)))
(*.f64 4 (pow.f64 p 2))
(*.f64 (*.f64 p p) 4)
(*.f64 p (*.f64 p 4))
(+.f64 (*.f64 4 (pow.f64 p 2)) (pow.f64 x 2))
(fma.f64 4 (*.f64 p p) (*.f64 x x))
(fma.f64 x x (*.f64 p (*.f64 p 4)))
(+.f64 (*.f64 4 (pow.f64 p 2)) (pow.f64 x 2))
(fma.f64 4 (*.f64 p p) (*.f64 x x))
(fma.f64 x x (*.f64 p (*.f64 p 4)))
(+.f64 (*.f64 4 (pow.f64 p 2)) (pow.f64 x 2))
(fma.f64 4 (*.f64 p p) (*.f64 x x))
(fma.f64 x x (*.f64 p (*.f64 p 4)))
(*.f64 4 (pow.f64 p 2))
(*.f64 (*.f64 p p) 4)
(*.f64 p (*.f64 p 4))
(+.f64 (*.f64 4 (pow.f64 p 2)) (pow.f64 x 2))
(fma.f64 4 (*.f64 p p) (*.f64 x x))
(fma.f64 x x (*.f64 p (*.f64 p 4)))
(+.f64 (*.f64 4 (pow.f64 p 2)) (pow.f64 x 2))
(fma.f64 4 (*.f64 p p) (*.f64 x x))
(fma.f64 x x (*.f64 p (*.f64 p 4)))
(+.f64 (*.f64 4 (pow.f64 p 2)) (pow.f64 x 2))
(fma.f64 4 (*.f64 p p) (*.f64 x x))
(fma.f64 x x (*.f64 p (*.f64 p 4)))
(pow.f64 x 2)
(*.f64 x x)
(+.f64 (*.f64 4 (pow.f64 p 2)) (pow.f64 x 2))
(fma.f64 4 (*.f64 p p) (*.f64 x x))
(fma.f64 x x (*.f64 p (*.f64 p 4)))
(+.f64 (*.f64 4 (pow.f64 p 2)) (pow.f64 x 2))
(fma.f64 4 (*.f64 p p) (*.f64 x x))
(fma.f64 x x (*.f64 p (*.f64 p 4)))
(+.f64 (*.f64 4 (pow.f64 p 2)) (pow.f64 x 2))
(fma.f64 4 (*.f64 p p) (*.f64 x x))
(fma.f64 x x (*.f64 p (*.f64 p 4)))
(pow.f64 x 2)
(*.f64 x x)
(+.f64 (*.f64 4 (pow.f64 p 2)) (pow.f64 x 2))
(fma.f64 4 (*.f64 p p) (*.f64 x x))
(fma.f64 x x (*.f64 p (*.f64 p 4)))
(+.f64 (*.f64 4 (pow.f64 p 2)) (pow.f64 x 2))
(fma.f64 4 (*.f64 p p) (*.f64 x x))
(fma.f64 x x (*.f64 p (*.f64 p 4)))
(+.f64 (*.f64 4 (pow.f64 p 2)) (pow.f64 x 2))
(fma.f64 4 (*.f64 p p) (*.f64 x x))
(fma.f64 x x (*.f64 p (*.f64 p 4)))

eval149.0ms (2.5%)

Compiler

Compiled 7418 to 5603 computations (24.5% saved)

prune50.0ms (0.8%)

Pruning

11 alts after pruning (11 fresh and 0 done)

PrunedKeptTotal
New26811279
Fresh000
Picked101
Done000
Total26911280
Error
2.0b
Counts
280 → 11
Alt Table
Click to see full alt table
StatusErrorProgram
59.0b
(sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 x (neg.f64 x)))))
32.5b
(sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 x (*.f64 2 p)))))
49.0b
(/.f64 (neg.f64 (sqrt.f64 2)) (/.f64 (/.f64 x p) (sqrt.f64 1/2)))
29.9b
(sqrt.f64 1/2)
32.7b
(sqrt.f64 (*.f64 1/2 (+.f64 (*.f64 -1/2 (/.f64 x p)) 1)))
16.2b
(pow.f64 (pow.f64 (fma.f64 (/.f64 x (hypot.f64 x (*.f64 2 p))) 1/2 1/2) 1/4) 2)
43.4b
(sqrt.f64 (*.f64 1/2 2))
53.8b
(-.f64 (fma.f64 -1/4 (*.f64 (/.f64 (*.f64 (pow.f64 p 4) -12) (sqrt.f64 2)) (/.f64 (sqrt.f64 1/2) (*.f64 p (pow.f64 x 3)))) (*.f64 (/.f64 (*.f64 (sqrt.f64 1/2) -1/2) (*.f64 p (pow.f64 x 5))) (/.f64 (+.f64 (*.f64 (pow.f64 p 6) 32) (-.f64 (*.f64 p (*.f64 p (*.f64 (pow.f64 p 4) -12))) (pow.f64 (*.f64 (/.f64 1/4 p) (/.f64 (*.f64 (pow.f64 p 4) -12) (sqrt.f64 2))) 2))) (sqrt.f64 2)))) (*.f64 (/.f64 (sqrt.f64 2) x) (*.f64 p (sqrt.f64 1/2))))
15.8b
(sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 x (hypot.f64 (*.f64 2 p) x)))))
48.8b
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
49.8b
(sqrt.f64 (*.f64 1/2 (*.f64 2 (*.f64 (/.f64 p x) (/.f64 p x)))))
Compiler

Compiled 378 to 310 computations (18% saved)

localize22.0ms (0.4%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(/.f64 x (hypot.f64 (*.f64 2 p) x))
0.0b
(hypot.f64 (*.f64 2 p) x)
0.0b
(sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 x (hypot.f64 (*.f64 2 p) x)))))
0.6b
(+.f64 1 (/.f64 x (hypot.f64 (*.f64 2 p) x)))
Compiler

Compiled 54 to 37 computations (31.5% saved)

series19.0ms (0.3%)

Counts
4 → 96
Calls

24 calls:

TimeVariablePointExpression
2.0ms
x
@-inf
(/.f64 x (hypot.f64 (*.f64 2 p) x))
2.0ms
x
@-inf
(sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 x (hypot.f64 (*.f64 2 p) x)))))
2.0ms
x
@-inf
(+.f64 1 (/.f64 x (hypot.f64 (*.f64 2 p) x)))
1.0ms
p
@-inf
(+.f64 1 (/.f64 x (hypot.f64 (*.f64 2 p) x)))
1.0ms
x
@inf
(sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 x (hypot.f64 (*.f64 2 p) x)))))

rewrite83.0ms (1.4%)

Algorithm
batch-egg-rewrite
Rules
554×log-prod_binary64
395×prod-diff_binary64
311×pow-prod-down_binary64
301×pow2_binary64
252×fma-def_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01248
125548
2314146
Stop Event
node limit
Counts
4 → 145
Calls
Call 1
Inputs
(+.f64 1 (/.f64 x (hypot.f64 (*.f64 2 p) x)))
(sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 x (hypot.f64 (*.f64 2 p) x)))))
(hypot.f64 (*.f64 2 p) x)
(/.f64 x (hypot.f64 (*.f64 2 p) x))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (+.f64 1 (/.f64 x (hypot.f64 x (+.f64 p p)))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 1 (-.f64 1 (/.f64 x (hypot.f64 x (+.f64 p p))))) (/.f64 (pow.f64 (/.f64 x (hypot.f64 x (+.f64 p p))) 2) (-.f64 1 (/.f64 x (hypot.f64 x (+.f64 p p))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 1 (/.f64 x (hypot.f64 x (+.f64 p p)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 1 (/.f64 x (hypot.f64 x (+.f64 p p)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (+.f64 1 (/.f64 x (hypot.f64 x (+.f64 p p))))) (pow.f64 (cbrt.f64 (+.f64 1 (/.f64 x (hypot.f64 x (+.f64 p p))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (+.f64 1 (/.f64 x (hypot.f64 x (+.f64 p p))))) 2) (cbrt.f64 (+.f64 1 (/.f64 x (hypot.f64 x (+.f64 p p))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (hypot.f64 1 (sqrt.f64 (/.f64 x (hypot.f64 x (+.f64 p p))))) (hypot.f64 1 (sqrt.f64 (/.f64 x (hypot.f64 x (+.f64 p p))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 1 (pow.f64 (/.f64 x (hypot.f64 x (+.f64 p p))) 3)) (/.f64 1 (fma.f64 (/.f64 x (hypot.f64 x (+.f64 p p))) (-.f64 (/.f64 x (hypot.f64 x (+.f64 p p))) 1) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 1 (pow.f64 (/.f64 x (hypot.f64 x (+.f64 p p))) 2)) (/.f64 1 (-.f64 1 (/.f64 x (hypot.f64 x (+.f64 p p))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (/.f64 x (hypot.f64 x (+.f64 p p))) (-.f64 (/.f64 x (hypot.f64 x (+.f64 p p))) 1) 1) (+.f64 1 (pow.f64 (/.f64 x (hypot.f64 x (+.f64 p p))) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 1 (/.f64 x (hypot.f64 x (+.f64 p p)))) (-.f64 1 (pow.f64 (/.f64 x (hypot.f64 x (+.f64 p p))) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 1 (pow.f64 (/.f64 x (hypot.f64 x (+.f64 p p))) 3)) (fma.f64 (/.f64 x (hypot.f64 x (+.f64 p p))) (-.f64 (/.f64 x (hypot.f64 x (+.f64 p p))) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 1 (pow.f64 (/.f64 x (hypot.f64 x (+.f64 p p))) 3)) (+.f64 (pow.f64 (/.f64 x (hypot.f64 x (+.f64 p p))) 2) (-.f64 1 (/.f64 x (hypot.f64 x (+.f64 p p))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 1 (pow.f64 (/.f64 x (hypot.f64 x (+.f64 p p))) 2)) (-.f64 1 (/.f64 x (hypot.f64 x (+.f64 p p)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 1 (pow.f64 (/.f64 x (hypot.f64 x (+.f64 p p))) 3))) (neg.f64 (fma.f64 (/.f64 x (hypot.f64 x (+.f64 p p))) (-.f64 (/.f64 x (hypot.f64 x (+.f64 p p))) 1) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 1 (pow.f64 (/.f64 x (hypot.f64 x (+.f64 p p))) 2))) (neg.f64 (-.f64 1 (/.f64 x (hypot.f64 x (+.f64 p p))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (/.f64 x (hypot.f64 x (+.f64 p p))) 2) 1) (-.f64 (/.f64 x (hypot.f64 x (+.f64 p p))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 1 (/.f64 x (hypot.f64 x (+.f64 p p)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (+.f64 1 (/.f64 x (hypot.f64 x (+.f64 p p)))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (+.f64 1 (/.f64 x (hypot.f64 x (+.f64 p p)))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (+.f64 1 (/.f64 x (hypot.f64 x (+.f64 p p))))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (hypot.f64 1 (sqrt.f64 (/.f64 x (hypot.f64 x (+.f64 p p))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (/.f64 x (hypot.f64 x (+.f64 p p))) (-.f64 (/.f64 x (hypot.f64 x (+.f64 p p))) 1) 1) (+.f64 1 (pow.f64 (/.f64 x (hypot.f64 x (+.f64 p p))) 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (-.f64 1 (/.f64 x (hypot.f64 x (+.f64 p p)))) (-.f64 1 (pow.f64 (/.f64 x (hypot.f64 x (+.f64 p p))) 2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (+.f64 1 (/.f64 x (hypot.f64 x (+.f64 p p)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (+.f64 1 (/.f64 x (hypot.f64 x (+.f64 p p))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (+.f64 1 (/.f64 x (hypot.f64 x (+.f64 p p)))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (+.f64 1 (/.f64 x (hypot.f64 x (+.f64 p p)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (+.f64 1 (/.f64 x (hypot.f64 x (+.f64 p p))))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (+.f64 1 (/.f64 x (hypot.f64 x (+.f64 p p))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log1p.f64 (/.f64 x (hypot.f64 x (+.f64 p p)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log1p.f64 (/.f64 x (hypot.f64 x (+.f64 p p)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (/.f64 x (hypot.f64 x (+.f64 p p))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x (/.f64 1 (hypot.f64 x (+.f64 p p))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 x (hypot.f64 x (+.f64 p p))) 1 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (/.f64 x (hypot.f64 x (+.f64 p p)))) (cbrt.f64 (pow.f64 (/.f64 x (hypot.f64 x (+.f64 p p))) 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (/.f64 x (hypot.f64 x (+.f64 p p))) 2)) (cbrt.f64 (/.f64 x (hypot.f64 x (+.f64 p p)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (*.f64 (cbrt.f64 x) (/.f64 1 (hypot.f64 x (+.f64 p p)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (/.f64 x (hypot.f64 x (+.f64 p p)))) (sqrt.f64 (/.f64 x (hypot.f64 x (+.f64 p p)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) (/.f64 1 (hypot.f64 x (+.f64 p p)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 x) (/.f64 1 (neg.f64 (hypot.f64 x (+.f64 p p)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (hypot.f64 x (+.f64 p p))) x 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 x) 2) 1) (/.f64 (cbrt.f64 x) (hypot.f64 x (+.f64 p p))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 x) 1) (/.f64 (sqrt.f64 x) (hypot.f64 x (+.f64 p p))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (hypot.f64 x (+.f64 p p))) -2) (/.f64 x (cbrt.f64 (hypot.f64 x (+.f64 p p)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 x) 2) (pow.f64 (cbrt.f64 (hypot.f64 x (+.f64 p p))) 2)) (cbrt.f64 (/.f64 x (hypot.f64 x (+.f64 p p)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 x) (pow.f64 (cbrt.f64 (hypot.f64 x (+.f64 p p))) 2)) (/.f64 (sqrt.f64 x) (cbrt.f64 (hypot.f64 x (+.f64 p p)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (hypot.f64 x (+.f64 p p)) -1/2) (/.f64 x (sqrt.f64 (hypot.f64 x (+.f64 p p)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 x) 2) (sqrt.f64 (hypot.f64 x (+.f64 p p)))) (/.f64 (cbrt.f64 x) (sqrt.f64 (hypot.f64 x (+.f64 p p)))) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (sqrt.f64 (fma.f64 (/.f64 x (hypot.f64 x (+.f64 p p))) 1/2 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (fma.f64 (/.f64 x (hypot.f64 x (+.f64 p p))) 1/2 1/2)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (fma.f64 (/.f64 x (hypot.f64 x (+.f64 p p))) 1/2 1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (fma.f64 (/.f64 x (hypot.f64 x (+.f64 p p))) 1/2 1/2))))) (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (fma.f64 (/.f64 x (hypot.f64 x (+.f64 p p))) 1/2 1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (sqrt.f64 (fma.f64 (/.f64 x (hypot.f64 x (+.f64 p p))) 1/2 1/2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (fma.f64 (/.f64 x (hypot.f64 x (+.f64 p p))) 1/2 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 (/.f64 x (hypot.f64 x (+.f64 p p))) 1/2 1/2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 (/.f64 x (hypot.f64 x (+.f64 p p))) 1/2 1/2)) (pow.f64 (fma.f64 (/.f64 x (hypot.f64 x (+.f64 p p))) 1/2 1/2) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (fma.f64 (/.f64 x (hypot.f64 x (+.f64 p p))) 1/2 1/2) 1/6) (cbrt.f64 (fma.f64 (/.f64 x (hypot.f64 x (+.f64 p p))) 1/2 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (fma.f64 (/.f64 x (hypot.f64 x (+.f64 p p))) 1/2 1/2) 1/4) (pow.f64 (fma.f64 (/.f64 x (hypot.f64 x (+.f64 p p))) 1/2 1/2) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (hypot.f64 1 (sqrt.f64 (/.f64 x (hypot.f64 x (+.f64 p p))))) (sqrt.f64 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 1/2) (hypot.f64 1 (sqrt.f64 (/.f64 x (hypot.f64 x (+.f64 p p))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/2) (sqrt.f64 (fma.f64 (/.f64 x (hypot.f64 x (+.f64 p p))) 1/2 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 (/.f64 x (hypot.f64 x (+.f64 p p))) 1/2 1/2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 (/.f64 x (hypot.f64 x (+.f64 p p))) 1/2 1/2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (/.f64 x (hypot.f64 x (+.f64 p p))) 1/2 1/2) 2) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (/.f64 x (hypot.f64 x (+.f64 p p))) 1/2 1/2) 3) 1/6)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (/.f64 x (hypot.f64 x (+.f64 p p))) 1/2 1/2) 3/2) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 (/.f64 x (hypot.f64 x (+.f64 p p))) 1/2 1/2)) 3/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (/.f64 x (hypot.f64 x (+.f64 p p))) 1/2 1/2) 1/6) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (/.f64 x (hypot.f64 x (+.f64 p p))) 1/2 1/2) 1/4) 2)))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (sqrt.f64 (fma.f64 (/.f64 x (hypot.f64 x (+.f64 p p))) 1/2 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (sqrt.f64 (fma.f64 (/.f64 x (hypot.f64 x (+.f64 p p))) 1/2 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (fma.f64 (/.f64 x (hypot.f64 x (+.f64 p p))) 1/2 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 (/.f64 x (hypot.f64 x (+.f64 p p))) 1/2 1/2) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (sqrt.f64 (fma.f64 (/.f64 x (hypot.f64 x (+.f64 p p))) 1/2 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (sqrt.f64 (fma.f64 (/.f64 x (hypot.f64 x (+.f64 p p))) 1/2 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (sqrt.f64 (fma.f64 (/.f64 x (hypot.f64 x (+.f64 p p))) 1/2 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 (/.f64 x (hypot.f64 x (+.f64 p p))) 1/2 1/2)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (fma.f64 (/.f64 x (hypot.f64 x (+.f64 p p))) 1/2 1/2))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (hypot.f64 x (+.f64 p p)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (hypot.f64 x (+.f64 p p)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (hypot.f64 x (+.f64 p p))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (hypot.f64 x (+.f64 p p))))) (log.f64 (sqrt.f64 (exp.f64 (hypot.f64 x (+.f64 p p))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (hypot.f64 x (+.f64 p p)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (hypot.f64 x (+.f64 p p)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (hypot.f64 x (+.f64 p p)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (hypot.f64 x (+.f64 p p))) (pow.f64 (cbrt.f64 (hypot.f64 x (+.f64 p p))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (hypot.f64 x (+.f64 p p))) 2) (cbrt.f64 (hypot.f64 x (+.f64 p p))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (hypot.f64 x (+.f64 p p))) (sqrt.f64 (hypot.f64 x (+.f64 p p))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (hypot.f64 x (+.f64 p p)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (hypot.f64 x (+.f64 p p)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (hypot.f64 x (+.f64 p p))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (hypot.f64 x (+.f64 p p))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (hypot.f64 x (+.f64 p p)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (hypot.f64 x (+.f64 p p)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (hypot.f64 x (+.f64 p p))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (hypot.f64 x (+.f64 p p)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (hypot.f64 x (+.f64 p p)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (hypot.f64 x (+.f64 p p))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (hypot.f64 x (+.f64 p p))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (hypot.f64 x (+.f64 p p))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (hypot.f64 x (+.f64 p p))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 x (hypot.f64 x (+.f64 p p))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 x (hypot.f64 x (+.f64 p p))))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 x (hypot.f64 x (+.f64 p p)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 x (hypot.f64 x (+.f64 p p)))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 x (hypot.f64 x (+.f64 p p)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (/.f64 x (hypot.f64 x (+.f64 p p)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 x (hypot.f64 x (+.f64 p p))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x (/.f64 1 (hypot.f64 x (+.f64 p p))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x (hypot.f64 x (+.f64 p p))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 x (hypot.f64 x (+.f64 p p)))) (cbrt.f64 (pow.f64 (/.f64 x (hypot.f64 x (+.f64 p p))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (/.f64 x (hypot.f64 x (+.f64 p p))) 2)) (cbrt.f64 (/.f64 x (hypot.f64 x (+.f64 p p)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 x) 2) (*.f64 (cbrt.f64 x) (/.f64 1 (hypot.f64 x (+.f64 p p)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 x (hypot.f64 x (+.f64 p p)))) (sqrt.f64 (/.f64 x (hypot.f64 x (+.f64 p p)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) (/.f64 1 (hypot.f64 x (+.f64 p p)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 x) (/.f64 1 (neg.f64 (hypot.f64 x (+.f64 p p)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (hypot.f64 x (+.f64 p p))) x)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 x) 2) 1) (/.f64 (cbrt.f64 x) (hypot.f64 x (+.f64 p p))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 x) 1) (/.f64 (sqrt.f64 x) (hypot.f64 x (+.f64 p p))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (hypot.f64 x (+.f64 p p))) -2) (/.f64 x (cbrt.f64 (hypot.f64 x (+.f64 p p)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 x) 2) (pow.f64 (cbrt.f64 (hypot.f64 x (+.f64 p p))) 2)) (cbrt.f64 (/.f64 x (hypot.f64 x (+.f64 p p)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 x) (pow.f64 (cbrt.f64 (hypot.f64 x (+.f64 p p))) 2)) (/.f64 (sqrt.f64 x) (cbrt.f64 (hypot.f64 x (+.f64 p p)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (hypot.f64 x (+.f64 p p)) -1/2) (/.f64 x (sqrt.f64 (hypot.f64 x (+.f64 p p)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 x) 2) (sqrt.f64 (hypot.f64 x (+.f64 p p)))) (/.f64 (cbrt.f64 x) (sqrt.f64 (hypot.f64 x (+.f64 p p)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 x (hypot.f64 x (+.f64 p p))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 x (hypot.f64 x (+.f64 p p))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 x (hypot.f64 x (+.f64 p p)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 x (hypot.f64 x (+.f64 p p)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 x (hypot.f64 x (+.f64 p p))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (hypot.f64 x (+.f64 p p)) x) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 (hypot.f64 x (+.f64 p p)) x) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 x (neg.f64 (hypot.f64 x (+.f64 p p)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 x (hypot.f64 x (+.f64 p p))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 x (hypot.f64 x (+.f64 p p)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 x (hypot.f64 x (+.f64 p p))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 x (hypot.f64 x (+.f64 p p))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 x (hypot.f64 x (+.f64 p p)))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (*.f64 (log1p.f64 (/.f64 x (hypot.f64 x (+.f64 p p)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 x (hypot.f64 x (+.f64 p p)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 x (hypot.f64 x (+.f64 p p)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 x (hypot.f64 x (+.f64 p p)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (+.f64 1 (/.f64 x (hypot.f64 x (+.f64 p p)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 1 (/.f64 x (hypot.f64 x (+.f64 p p)))) 1 -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (+.f64 1 (/.f64 x (hypot.f64 x (+.f64 p p))))) (pow.f64 (cbrt.f64 (+.f64 1 (/.f64 x (hypot.f64 x (+.f64 p p))))) 2) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (+.f64 1 (/.f64 x (hypot.f64 x (+.f64 p p))))) 2) (cbrt.f64 (+.f64 1 (/.f64 x (hypot.f64 x (+.f64 p p))))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (hypot.f64 1 (sqrt.f64 (/.f64 x (hypot.f64 x (+.f64 p p))))) (hypot.f64 1 (sqrt.f64 (/.f64 x (hypot.f64 x (+.f64 p p))))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 1 (pow.f64 (/.f64 x (hypot.f64 x (+.f64 p p))) 3)) (/.f64 1 (fma.f64 (/.f64 x (hypot.f64 x (+.f64 p p))) (-.f64 (/.f64 x (hypot.f64 x (+.f64 p p))) 1) 1)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 1 (pow.f64 (/.f64 x (hypot.f64 x (+.f64 p p))) 2)) (/.f64 1 (-.f64 1 (/.f64 x (hypot.f64 x (+.f64 p p))))) -1)))))

simplify89.0ms (1.5%)

Algorithm
egg-herbie
Rules
625×associate-*l/_binary64
419×distribute-rgt-in_binary64
418×distribute-lft-in_binary64
399×fma-def_binary64
329×associate-/r/_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03453165
111343012
244242904
Stop Event
node limit
Counts
241 → 277
Calls
Call 1
Inputs
1
(+.f64 1 (*.f64 1/2 (/.f64 x p)))
(+.f64 1 (+.f64 (*.f64 1/2 (/.f64 x p)) (*.f64 -1/16 (/.f64 (pow.f64 x 3) (pow.f64 p 3)))))
(+.f64 (*.f64 3/256 (/.f64 (pow.f64 x 5) (pow.f64 p 5))) (+.f64 1 (+.f64 (*.f64 1/2 (/.f64 x p)) (*.f64 -1/16 (/.f64 (pow.f64 x 3) (pow.f64 p 3))))))
2
(+.f64 2 (*.f64 -2 (/.f64 (pow.f64 p 2) (pow.f64 x 2))))
(+.f64 2 (+.f64 (*.f64 -2 (/.f64 (pow.f64 p 2) (pow.f64 x 2))) (*.f64 -1 (/.f64 (+.f64 (*.f64 -2 (pow.f64 p 4)) (*.f64 -4 (pow.f64 p 4))) (pow.f64 x 4)))))
(+.f64 2 (+.f64 (*.f64 -2 (/.f64 (pow.f64 p 2) (pow.f64 x 2))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 8 (pow.f64 p 6)) (*.f64 -2 (*.f64 (+.f64 (*.f64 -2 (pow.f64 p 4)) (*.f64 -4 (pow.f64 p 4))) (pow.f64 p 2)))) (pow.f64 x 6))) (*.f64 -1 (/.f64 (+.f64 (*.f64 -2 (pow.f64 p 4)) (*.f64 -4 (pow.f64 p 4))) (pow.f64 x 4))))))
(*.f64 2 (/.f64 (pow.f64 p 2) (pow.f64 x 2)))
(+.f64 (*.f64 2 (/.f64 (pow.f64 p 2) (pow.f64 x 2))) (+.f64 (*.f64 -4 (/.f64 (pow.f64 p 4) (pow.f64 x 4))) (*.f64 -2 (/.f64 (pow.f64 p 4) (pow.f64 x 4)))))
(+.f64 (*.f64 8 (/.f64 (pow.f64 p 6) (pow.f64 x 6))) (+.f64 (*.f64 2 (/.f64 (pow.f64 p 2) (pow.f64 x 2))) (+.f64 (*.f64 -2 (/.f64 (*.f64 (+.f64 (*.f64 -2 (pow.f64 p 4)) (*.f64 -4 (pow.f64 p 4))) (pow.f64 p 2)) (pow.f64 x 6))) (+.f64 (*.f64 -2 (/.f64 (pow.f64 p 4) (pow.f64 x 4))) (*.f64 -4 (/.f64 (pow.f64 p 4) (pow.f64 x 4)))))))
(+.f64 (*.f64 -1/2 (/.f64 (+.f64 (*.f64 16 (pow.f64 p 8)) (pow.f64 (*.f64 -2 (pow.f64 p 4)) 2)) (pow.f64 x 8))) (+.f64 (*.f64 2 (/.f64 (*.f64 (+.f64 (*.f64 -2 (pow.f64 p 4)) (*.f64 -4 (pow.f64 p 4))) (pow.f64 p 4)) (pow.f64 x 8))) (+.f64 (*.f64 -2 (/.f64 (*.f64 (+.f64 (*.f64 8 (pow.f64 p 6)) (*.f64 -2 (*.f64 (+.f64 (*.f64 -2 (pow.f64 p 4)) (*.f64 -4 (pow.f64 p 4))) (pow.f64 p 2)))) (pow.f64 p 2)) (pow.f64 x 8))) (+.f64 (*.f64 2 (/.f64 (pow.f64 p 2) (pow.f64 x 2))) (+.f64 (*.f64 8 (/.f64 (pow.f64 p 6) (pow.f64 x 6))) (+.f64 (*.f64 -2 (/.f64 (*.f64 (+.f64 (*.f64 -2 (pow.f64 p 4)) (*.f64 -4 (pow.f64 p 4))) (pow.f64 p 2)) (pow.f64 x 6))) (+.f64 (*.f64 -8 (/.f64 (pow.f64 p 8) (pow.f64 x 8))) (+.f64 (*.f64 -4 (/.f64 (pow.f64 p 4) (pow.f64 x 4))) (*.f64 -2 (/.f64 (pow.f64 p 4) (pow.f64 x 4)))))))))))
2
(+.f64 2 (*.f64 -2 (/.f64 (pow.f64 p 2) (pow.f64 x 2))))
(+.f64 2 (+.f64 (*.f64 -2 (/.f64 (pow.f64 p 2) (pow.f64 x 2))) (*.f64 6 (/.f64 (pow.f64 p 4) (pow.f64 x 4)))))
(+.f64 (*.f64 -20 (/.f64 (pow.f64 p 6) (pow.f64 x 6))) (+.f64 2 (+.f64 (*.f64 -2 (/.f64 (pow.f64 p 2) (pow.f64 x 2))) (*.f64 6 (/.f64 (pow.f64 p 4) (pow.f64 x 4))))))
1
(+.f64 1 (*.f64 1/2 (/.f64 x p)))
(+.f64 1 (+.f64 (*.f64 1/2 (/.f64 x p)) (*.f64 -1/16 (/.f64 (pow.f64 x 3) (pow.f64 p 3)))))
(+.f64 1 (+.f64 (*.f64 1/2 (/.f64 x p)) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/256 (pow.f64 x 5)) (*.f64 -1/128 (pow.f64 x 5))) (pow.f64 p 5))) (*.f64 -1/16 (/.f64 (pow.f64 x 3) (pow.f64 p 3))))))
1
(+.f64 (*.f64 -1/2 (/.f64 x p)) 1)
(+.f64 (*.f64 -1/2 (/.f64 x p)) (+.f64 1 (*.f64 1/16 (/.f64 (pow.f64 x 3) (pow.f64 p 3)))))
(+.f64 (*.f64 -1/128 (/.f64 (pow.f64 x 5) (pow.f64 p 5))) (+.f64 (*.f64 -1/2 (/.f64 x p)) (+.f64 1 (+.f64 (*.f64 -1/256 (/.f64 (pow.f64 x 5) (pow.f64 p 5))) (*.f64 1/16 (/.f64 (pow.f64 x 3) (pow.f64 p 3)))))))
(sqrt.f64 1/2)
(+.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p)))
(+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p)) (*.f64 -1/32 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 2)) (pow.f64 p 2)))))
(+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 -3/128 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 3)) (pow.f64 p 3))) (+.f64 (*.f64 1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p)) (*.f64 -1/32 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 2)) (pow.f64 p 2))))))
(*.f64 (sqrt.f64 2) (sqrt.f64 1/2))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 p 2)) (*.f64 (sqrt.f64 2) (pow.f64 x 2)))) (*.f64 (sqrt.f64 2) (sqrt.f64 1/2)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 p 2)) (*.f64 (sqrt.f64 2) (pow.f64 x 2)))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sqrt.f64 1/2) (+.f64 (pow.f64 (*.f64 -1 (/.f64 (pow.f64 p 2) (sqrt.f64 2))) 2) (+.f64 (*.f64 -2 (pow.f64 p 4)) (*.f64 -4 (pow.f64 p 4))))) (*.f64 (sqrt.f64 2) (pow.f64 x 4)))) (*.f64 (sqrt.f64 2) (sqrt.f64 1/2))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 p 2)) (*.f64 (sqrt.f64 2) (pow.f64 x 2)))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sqrt.f64 1/2) (+.f64 (*.f64 8 (pow.f64 p 6)) (+.f64 (*.f64 -2 (*.f64 (+.f64 (*.f64 -2 (pow.f64 p 4)) (*.f64 -4 (pow.f64 p 4))) (pow.f64 p 2))) (/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 -1 (/.f64 (pow.f64 p 2) (sqrt.f64 2))) 2) (+.f64 (*.f64 -2 (pow.f64 p 4)) (*.f64 -4 (pow.f64 p 4)))) (pow.f64 p 2)) (pow.f64 (sqrt.f64 2) 2))))) (*.f64 (sqrt.f64 2) (pow.f64 x 6)))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sqrt.f64 1/2) (+.f64 (pow.f64 (*.f64 -1 (/.f64 (pow.f64 p 2) (sqrt.f64 2))) 2) (+.f64 (*.f64 -2 (pow.f64 p 4)) (*.f64 -4 (pow.f64 p 4))))) (*.f64 (sqrt.f64 2) (pow.f64 x 4)))) (*.f64 (sqrt.f64 2) (sqrt.f64 1/2)))))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (*.f64 -2 (pow.f64 p 4)) (*.f64 -4 (pow.f64 p 4))) (sqrt.f64 1/2)) (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 x 3) p)))) (*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (*.f64 -2 (pow.f64 p 4)) (*.f64 -4 (pow.f64 p 4))) (sqrt.f64 1/2)) (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 x 3) p)))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sqrt.f64 1/2) (-.f64 (+.f64 (*.f64 8 (pow.f64 p 6)) (*.f64 -2 (*.f64 (+.f64 (*.f64 -2 (pow.f64 p 4)) (*.f64 -4 (pow.f64 p 4))) (pow.f64 p 2)))) (pow.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -2 (pow.f64 p 4)) (*.f64 -4 (pow.f64 p 4))) (*.f64 (sqrt.f64 2) p))) 2))) (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 x 5) p)))) (*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (*.f64 -2 (pow.f64 p 4)) (*.f64 -4 (pow.f64 p 4))) (sqrt.f64 1/2)) (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 x 3) p)))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sqrt.f64 1/2) (-.f64 (+.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 -2 (pow.f64 p 4)) (*.f64 -4 (pow.f64 p 4))) (pow.f64 p 4))) (+.f64 (*.f64 -1/2 (+.f64 (*.f64 16 (pow.f64 p 8)) (pow.f64 (*.f64 -2 (pow.f64 p 4)) 2))) (+.f64 (*.f64 -2 (*.f64 (+.f64 (*.f64 8 (pow.f64 p 6)) (*.f64 -2 (*.f64 (+.f64 (*.f64 -2 (pow.f64 p 4)) (*.f64 -4 (pow.f64 p 4))) (pow.f64 p 2)))) (pow.f64 p 2))) (*.f64 -8 (pow.f64 p 8))))) (*.f64 1/2 (/.f64 (*.f64 (+.f64 (*.f64 -2 (pow.f64 p 4)) (*.f64 -4 (pow.f64 p 4))) (-.f64 (+.f64 (*.f64 8 (pow.f64 p 6)) (*.f64 -2 (*.f64 (+.f64 (*.f64 -2 (pow.f64 p 4)) (*.f64 -4 (pow.f64 p 4))) (pow.f64 p 2)))) (pow.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -2 (pow.f64 p 4)) (*.f64 -4 (pow.f64 p 4))) (*.f64 (sqrt.f64 2) p))) 2))) (*.f64 (pow.f64 (sqrt.f64 2) 2) (pow.f64 p 2)))))) (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 x 7) p)))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sqrt.f64 1/2) (-.f64 (+.f64 (*.f64 8 (pow.f64 p 6)) (*.f64 -2 (*.f64 (+.f64 (*.f64 -2 (pow.f64 p 4)) (*.f64 -4 (pow.f64 p 4))) (pow.f64 p 2)))) (pow.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -2 (pow.f64 p 4)) (*.f64 -4 (pow.f64 p 4))) (*.f64 (sqrt.f64 2) p))) 2))) (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 x 5) p)))) (*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x)))))
(*.f64 (sqrt.f64 2) (sqrt.f64 1/2))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 p 2)) (*.f64 (sqrt.f64 2) (pow.f64 x 2)))) (*.f64 (sqrt.f64 2) (sqrt.f64 1/2)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 p 2)) (*.f64 (sqrt.f64 2) (pow.f64 x 2)))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (sqrt.f64 1/2) (*.f64 (-.f64 (*.f64 6 (/.f64 1 (pow.f64 x 4))) (pow.f64 (/.f64 -1 (*.f64 (sqrt.f64 2) (pow.f64 x 2))) 2)) (pow.f64 p 4))) (sqrt.f64 2))) (*.f64 (sqrt.f64 2) (sqrt.f64 1/2))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 p 2)) (*.f64 (sqrt.f64 2) (pow.f64 x 2)))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (sqrt.f64 1/2) (*.f64 (-.f64 (*.f64 6 (/.f64 1 (pow.f64 x 4))) (pow.f64 (/.f64 -1 (*.f64 (sqrt.f64 2) (pow.f64 x 2))) 2)) (pow.f64 p 4))) (sqrt.f64 2))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 6 (/.f64 1 (pow.f64 x 4))) (pow.f64 (/.f64 -1 (*.f64 (sqrt.f64 2) (pow.f64 x 2))) 2)) (*.f64 (pow.f64 (sqrt.f64 2) 2) (pow.f64 x 2)))) (*.f64 20 (/.f64 1 (pow.f64 x 6)))) (*.f64 (sqrt.f64 1/2) (pow.f64 p 6))) (sqrt.f64 2))) (*.f64 (sqrt.f64 2) (sqrt.f64 1/2)))))
(sqrt.f64 1/2)
(+.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p)))
(+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p)) (*.f64 -1/32 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 2)) (pow.f64 p 2)))))
(+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sqrt.f64 1/2) (+.f64 (*.f64 -1/64 (pow.f64 x 3)) (*.f64 1/16 (pow.f64 x 3)))) (pow.f64 p 3))) (+.f64 (*.f64 1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p)) (*.f64 -1/32 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 2)) (pow.f64 p 2))))))
(sqrt.f64 1/2)
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p)) (sqrt.f64 1/2))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p)) (+.f64 (sqrt.f64 1/2) (*.f64 -1/32 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 2)) (pow.f64 p 2)))))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p)) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (sqrt.f64 1/2) (+.f64 (*.f64 -1/64 (pow.f64 x 3)) (*.f64 1/16 (pow.f64 x 3)))) (pow.f64 p 3))) (+.f64 (sqrt.f64 1/2) (*.f64 -1/32 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 2)) (pow.f64 p 2))))))
x
(+.f64 (*.f64 2 (/.f64 (pow.f64 p 2) x)) x)
(+.f64 (*.f64 -2 (/.f64 (pow.f64 p 4) (pow.f64 x 3))) (+.f64 (*.f64 2 (/.f64 (pow.f64 p 2) x)) x))
(+.f64 (*.f64 -2 (/.f64 (pow.f64 p 4) (pow.f64 x 3))) (+.f64 (*.f64 4 (/.f64 (pow.f64 p 6) (pow.f64 x 5))) (+.f64 (*.f64 2 (/.f64 (pow.f64 p 2) x)) x)))
(*.f64 2 p)
(+.f64 (*.f64 1/4 (/.f64 (pow.f64 x 2) p)) (*.f64 2 p))
(+.f64 (*.f64 1/4 (/.f64 (pow.f64 x 2) p)) (+.f64 (*.f64 -1/64 (/.f64 (pow.f64 x 4) (pow.f64 p 3))) (*.f64 2 p)))
(+.f64 (*.f64 1/4 (/.f64 (pow.f64 x 2) p)) (+.f64 (*.f64 1/512 (/.f64 (pow.f64 x 6) (pow.f64 p 5))) (+.f64 (*.f64 -1/64 (/.f64 (pow.f64 x 4) (pow.f64 p 3))) (*.f64 2 p))))
(*.f64 -2 p)
(+.f64 (*.f64 -1/4 (/.f64 (pow.f64 x 2) p)) (*.f64 -2 p))
(+.f64 (*.f64 -1/4 (/.f64 (pow.f64 x 2) p)) (+.f64 (*.f64 1/64 (/.f64 (pow.f64 x 4) (pow.f64 p 3))) (*.f64 -2 p)))
(+.f64 (*.f64 -1/512 (/.f64 (pow.f64 x 6) (pow.f64 p 5))) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 x 2) p)) (+.f64 (*.f64 1/64 (/.f64 (pow.f64 x 4) (pow.f64 p 3))) (*.f64 -2 p))))
(*.f64 2 p)
(+.f64 (*.f64 1/4 (/.f64 (pow.f64 x 2) p)) (*.f64 2 p))
(+.f64 (*.f64 1/4 (/.f64 (pow.f64 x 2) p)) (+.f64 (*.f64 -1/64 (/.f64 (pow.f64 x 4) (pow.f64 p 3))) (*.f64 2 p)))
(+.f64 (*.f64 1/4 (/.f64 (pow.f64 x 2) p)) (+.f64 (*.f64 1/512 (/.f64 (pow.f64 x 6) (pow.f64 p 5))) (+.f64 (*.f64 -1/64 (/.f64 (pow.f64 x 4) (pow.f64 p 3))) (*.f64 2 p))))
x
(+.f64 (*.f64 2 (/.f64 (pow.f64 p 2) x)) x)
(+.f64 (*.f64 -2 (/.f64 (pow.f64 p 4) (pow.f64 x 3))) (+.f64 (*.f64 2 (/.f64 (pow.f64 p 2) x)) x))
(+.f64 (*.f64 -2 (/.f64 (pow.f64 p 4) (pow.f64 x 3))) (+.f64 (*.f64 4 (/.f64 (pow.f64 p 6) (pow.f64 x 5))) (+.f64 (*.f64 2 (/.f64 (pow.f64 p 2) x)) x)))
(*.f64 -1 x)
(+.f64 (*.f64 -2 (/.f64 (pow.f64 p 2) x)) (*.f64 -1 x))
(+.f64 (*.f64 2 (/.f64 (pow.f64 p 4) (pow.f64 x 3))) (+.f64 (*.f64 -2 (/.f64 (pow.f64 p 2) x)) (*.f64 -1 x)))
(+.f64 (*.f64 -4 (/.f64 (pow.f64 p 6) (pow.f64 x 5))) (+.f64 (*.f64 2 (/.f64 (pow.f64 p 4) (pow.f64 x 3))) (+.f64 (*.f64 -2 (/.f64 (pow.f64 p 2) x)) (*.f64 -1 x))))
(*.f64 1/2 (/.f64 x p))
(+.f64 (*.f64 1/2 (/.f64 x p)) (*.f64 -1/16 (/.f64 (pow.f64 x 3) (pow.f64 p 3))))
(+.f64 (*.f64 3/256 (/.f64 (pow.f64 x 5) (pow.f64 p 5))) (+.f64 (*.f64 1/2 (/.f64 x p)) (*.f64 -1/16 (/.f64 (pow.f64 x 3) (pow.f64 p 3)))))
(+.f64 (*.f64 3/256 (/.f64 (pow.f64 x 5) (pow.f64 p 5))) (+.f64 (*.f64 1/2 (/.f64 x p)) (+.f64 (*.f64 -5/2048 (/.f64 (pow.f64 x 7) (pow.f64 p 7))) (*.f64 -1/16 (/.f64 (pow.f64 x 3) (pow.f64 p 3))))))
1
(+.f64 1 (*.f64 -2 (/.f64 (pow.f64 p 2) (pow.f64 x 2))))
(+.f64 1 (+.f64 (*.f64 -2 (/.f64 (pow.f64 p 2) (pow.f64 x 2))) (*.f64 -1 (/.f64 (+.f64 (*.f64 -2 (pow.f64 p 4)) (*.f64 -4 (pow.f64 p 4))) (pow.f64 x 4)))))
(+.f64 1 (+.f64 (*.f64 -2 (/.f64 (pow.f64 p 2) (pow.f64 x 2))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 8 (pow.f64 p 6)) (*.f64 -2 (*.f64 (+.f64 (*.f64 -2 (pow.f64 p 4)) (*.f64 -4 (pow.f64 p 4))) (pow.f64 p 2)))) (pow.f64 x 6))) (*.f64 -1 (/.f64 (+.f64 (*.f64 -2 (pow.f64 p 4)) (*.f64 -4 (pow.f64 p 4))) (pow.f64 x 4))))))
-1
(-.f64 (*.f64 2 (/.f64 (pow.f64 p 2) (pow.f64 x 2))) 1)
(-.f64 (+.f64 (*.f64 2 (/.f64 (pow.f64 p 2) (pow.f64 x 2))) (*.f64 -1 (/.f64 (+.f64 (*.f64 4 (pow.f64 p 4)) (*.f64 2 (pow.f64 p 4))) (pow.f64 x 4)))) 1)
(-.f64 (+.f64 (*.f64 2 (/.f64 (pow.f64 p 2) (pow.f64 x 2))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -8 (pow.f64 p 6)) (*.f64 -2 (*.f64 (+.f64 (*.f64 4 (pow.f64 p 4)) (*.f64 2 (pow.f64 p 4))) (pow.f64 p 2)))) (pow.f64 x 6))) (*.f64 -1 (/.f64 (+.f64 (*.f64 4 (pow.f64 p 4)) (*.f64 2 (pow.f64 p 4))) (pow.f64 x 4))))) 1)
1
(+.f64 1 (*.f64 -2 (/.f64 (pow.f64 p 2) (pow.f64 x 2))))
(+.f64 1 (+.f64 (*.f64 -2 (/.f64 (pow.f64 p 2) (pow.f64 x 2))) (*.f64 6 (/.f64 (pow.f64 p 4) (pow.f64 x 4)))))
(+.f64 (*.f64 -20 (/.f64 (pow.f64 p 6) (pow.f64 x 6))) (+.f64 1 (+.f64 (*.f64 -2 (/.f64 (pow.f64 p 2) (pow.f64 x 2))) (*.f64 6 (/.f64 (pow.f64 p 4) (pow.f64 x 4))))))
(*.f64 1/2 (/.f64 x p))
(+.f64 (*.f64 1/2 (/.f64 x p)) (*.f64 -1/16 (/.f64 (pow.f64 x 3) (pow.f64 p 3))))
(+.f64 (*.f64 1/2 (/.f64 x p)) (+.f64 (*.f64 -1/16 (/.f64 (pow.f64 x 3) (pow.f64 p 3))) (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/256 (pow.f64 x 5)) (*.f64 -1/128 (pow.f64 x 5))) (pow.f64 p 5)))))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (*.f64 (+.f64 (*.f64 -1/256 (pow.f64 x 5)) (*.f64 -1/128 (pow.f64 x 5))) (pow.f64 x 2))) (*.f64 1/1024 (pow.f64 x 7))) (pow.f64 p 7))) (+.f64 (*.f64 1/2 (/.f64 x p)) (+.f64 (*.f64 -1/16 (/.f64 (pow.f64 x 3) (pow.f64 p 3))) (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/256 (pow.f64 x 5)) (*.f64 -1/128 (pow.f64 x 5))) (pow.f64 p 5))))))
(*.f64 -1/2 (/.f64 x p))
(+.f64 (*.f64 -1/2 (/.f64 x p)) (*.f64 1/16 (/.f64 (pow.f64 x 3) (pow.f64 p 3))))
(+.f64 (*.f64 -1/128 (/.f64 (pow.f64 x 5) (pow.f64 p 5))) (+.f64 (*.f64 -1/2 (/.f64 x p)) (+.f64 (*.f64 -1/256 (/.f64 (pow.f64 x 5) (pow.f64 p 5))) (*.f64 1/16 (/.f64 (pow.f64 x 3) (pow.f64 p 3))))))
(+.f64 (*.f64 -1/128 (/.f64 (pow.f64 x 5) (pow.f64 p 5))) (+.f64 (*.f64 -1/2 (/.f64 x p)) (+.f64 (*.f64 -1/256 (/.f64 (pow.f64 x 5) (pow.f64 p 5))) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 x 3) (pow.f64 p 3))) (+.f64 (*.f64 1/1024 (/.f64 (pow.f64 x 7) (pow.f64 p 7))) (*.f64 -1/8 (/.f64 (*.f64 (+.f64 (*.f64 -1/256 (pow.f64 x 5)) (*.f64 -1/128 (pow.f64 x 5))) (pow.f64 x 2)) (pow.f64 p 7))))))))
Outputs
1
(+.f64 1 (*.f64 1/2 (/.f64 x p)))
(fma.f64 1/2 (/.f64 x p) 1)
(+.f64 1 (+.f64 (*.f64 1/2 (/.f64 x p)) (*.f64 -1/16 (/.f64 (pow.f64 x 3) (pow.f64 p 3)))))
(+.f64 1 (fma.f64 1/2 (/.f64 x p) (*.f64 -1/16 (/.f64 (pow.f64 x 3) (pow.f64 p 3)))))
(+.f64 (fma.f64 1/2 (/.f64 x p) 1) (/.f64 -1/16 (pow.f64 (/.f64 p x) 3)))
(+.f64 (*.f64 3/256 (/.f64 (pow.f64 x 5) (pow.f64 p 5))) (+.f64 1 (+.f64 (*.f64 1/2 (/.f64 x p)) (*.f64 -1/16 (/.f64 (pow.f64 x 3) (pow.f64 p 3))))))
(fma.f64 3/256 (/.f64 (pow.f64 x 5) (pow.f64 p 5)) (+.f64 1 (fma.f64 1/2 (/.f64 x p) (*.f64 -1/16 (/.f64 (pow.f64 x 3) (pow.f64 p 3))))))
(+.f64 1 (fma.f64 3/256 (/.f64 (pow.f64 x 5) (pow.f64 p 5)) (fma.f64 1/2 (/.f64 x p) (*.f64 -1/16 (/.f64 (pow.f64 x 3) (pow.f64 p 3))))))
(+.f64 1 (fma.f64 3/256 (/.f64 (pow.f64 x 5) (pow.f64 p 5)) (fma.f64 1/2 (/.f64 x p) (/.f64 -1/16 (pow.f64 (/.f64 p x) 3)))))
2
(+.f64 2 (*.f64 -2 (/.f64 (pow.f64 p 2) (pow.f64 x 2))))
(+.f64 2 (/.f64 (*.f64 -2 (*.f64 p p)) (*.f64 x x)))
(fma.f64 -2 (*.f64 (/.f64 p x) (/.f64 p x)) 2)
(+.f64 2 (+.f64 (*.f64 -2 (/.f64 (pow.f64 p 2) (pow.f64 x 2))) (*.f64 -1 (/.f64 (+.f64 (*.f64 -2 (pow.f64 p 4)) (*.f64 -4 (pow.f64 p 4))) (pow.f64 x 4)))))
(+.f64 2 (fma.f64 -2 (/.f64 (*.f64 p p) (*.f64 x x)) (neg.f64 (/.f64 (*.f64 (pow.f64 p 4) -6) (pow.f64 x 4)))))
(-.f64 (fma.f64 -2 (*.f64 (/.f64 p x) (/.f64 p x)) 2) (*.f64 (/.f64 (pow.f64 p 4) (pow.f64 x 4)) -6))
(+.f64 2 (fma.f64 (/.f64 -2 x) (*.f64 (/.f64 p x) p) (/.f64 6 (/.f64 (pow.f64 x 4) (pow.f64 p 4)))))
(+.f64 2 (+.f64 (*.f64 -2 (/.f64 (pow.f64 p 2) (pow.f64 x 2))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 8 (pow.f64 p 6)) (*.f64 -2 (*.f64 (+.f64 (*.f64 -2 (pow.f64 p 4)) (*.f64 -4 (pow.f64 p 4))) (pow.f64 p 2)))) (pow.f64 x 6))) (*.f64 -1 (/.f64 (+.f64 (*.f64 -2 (pow.f64 p 4)) (*.f64 -4 (pow.f64 p 4))) (pow.f64 x 4))))))
(+.f64 2 (fma.f64 -2 (/.f64 (*.f64 p p) (*.f64 x x)) (fma.f64 -1 (/.f64 (fma.f64 8 (pow.f64 p 6) (*.f64 -2 (*.f64 (*.f64 p p) (*.f64 (pow.f64 p 4) -6)))) (pow.f64 x 6)) (neg.f64 (/.f64 (*.f64 (pow.f64 p 4) -6) (pow.f64 x 4))))))
(+.f64 2 (-.f64 (-.f64 (*.f64 -2 (*.f64 (/.f64 p x) (/.f64 p x))) (/.f64 (fma.f64 -2 (*.f64 (pow.f64 p 6) -6) (*.f64 8 (pow.f64 p 6))) (pow.f64 x 6))) (*.f64 (/.f64 (pow.f64 p 4) (pow.f64 x 4)) -6)))
(+.f64 (fma.f64 -2 (*.f64 (/.f64 p x) (/.f64 p x)) 2) (-.f64 (/.f64 6 (/.f64 (pow.f64 x 4) (pow.f64 p 4))) (/.f64 (fma.f64 -2 (*.f64 (pow.f64 p 6) -6) (*.f64 8 (pow.f64 p 6))) (pow.f64 x 6))))
(*.f64 2 (/.f64 (pow.f64 p 2) (pow.f64 x 2)))
(*.f64 2 (/.f64 (*.f64 p p) (*.f64 x x)))
(*.f64 2 (*.f64 (/.f64 p x) (/.f64 p x)))
(/.f64 (*.f64 p (*.f64 p 2)) (*.f64 x x))
(+.f64 (*.f64 2 (/.f64 (pow.f64 p 2) (pow.f64 x 2))) (+.f64 (*.f64 -4 (/.f64 (pow.f64 p 4) (pow.f64 x 4))) (*.f64 -2 (/.f64 (pow.f64 p 4) (pow.f64 x 4)))))
(fma.f64 2 (/.f64 (*.f64 p p) (*.f64 x x)) (*.f64 (/.f64 (pow.f64 p 4) (pow.f64 x 4)) -6))
(fma.f64 2 (*.f64 (/.f64 p x) (/.f64 p x)) (*.f64 (/.f64 (pow.f64 p 4) (pow.f64 x 4)) -6))
(+.f64 (*.f64 8 (/.f64 (pow.f64 p 6) (pow.f64 x 6))) (+.f64 (*.f64 2 (/.f64 (pow.f64 p 2) (pow.f64 x 2))) (+.f64 (*.f64 -2 (/.f64 (*.f64 (+.f64 (*.f64 -2 (pow.f64 p 4)) (*.f64 -4 (pow.f64 p 4))) (pow.f64 p 2)) (pow.f64 x 6))) (+.f64 (*.f64 -2 (/.f64 (pow.f64 p 4) (pow.f64 x 4))) (*.f64 -4 (/.f64 (pow.f64 p 4) (pow.f64 x 4)))))))
(fma.f64 8 (/.f64 (pow.f64 p 6) (pow.f64 x 6)) (fma.f64 2 (/.f64 (*.f64 p p) (*.f64 x x)) (fma.f64 -2 (/.f64 (*.f64 (pow.f64 p 4) -6) (/.f64 (pow.f64 x 6) (*.f64 p p))) (*.f64 (/.f64 (pow.f64 p 4) (pow.f64 x 4)) -6))))
(fma.f64 8 (/.f64 (pow.f64 p 6) (pow.f64 x 6)) (fma.f64 2 (*.f64 (/.f64 p x) (/.f64 p x)) (fma.f64 -2 (/.f64 (*.f64 (pow.f64 p 6) -6) (pow.f64 x 6)) (*.f64 (/.f64 (pow.f64 p 4) (pow.f64 x 4)) -6))))
(+.f64 (*.f64 -1/2 (/.f64 (+.f64 (*.f64 16 (pow.f64 p 8)) (pow.f64 (*.f64 -2 (pow.f64 p 4)) 2)) (pow.f64 x 8))) (+.f64 (*.f64 2 (/.f64 (*.f64 (+.f64 (*.f64 -2 (pow.f64 p 4)) (*.f64 -4 (pow.f64 p 4))) (pow.f64 p 4)) (pow.f64 x 8))) (+.f64 (*.f64 -2 (/.f64 (*.f64 (+.f64 (*.f64 8 (pow.f64 p 6)) (*.f64 -2 (*.f64 (+.f64 (*.f64 -2 (pow.f64 p 4)) (*.f64 -4 (pow.f64 p 4))) (pow.f64 p 2)))) (pow.f64 p 2)) (pow.f64 x 8))) (+.f64 (*.f64 2 (/.f64 (pow.f64 p 2) (pow.f64 x 2))) (+.f64 (*.f64 8 (/.f64 (pow.f64 p 6) (pow.f64 x 6))) (+.f64 (*.f64 -2 (/.f64 (*.f64 (+.f64 (*.f64 -2 (pow.f64 p 4)) (*.f64 -4 (pow.f64 p 4))) (pow.f64 p 2)) (pow.f64 x 6))) (+.f64 (*.f64 -8 (/.f64 (pow.f64 p 8) (pow.f64 x 8))) (+.f64 (*.f64 -4 (/.f64 (pow.f64 p 4) (pow.f64 x 4))) (*.f64 -2 (/.f64 (pow.f64 p 4) (pow.f64 x 4)))))))))))
(fma.f64 -1/2 (/.f64 (fma.f64 16 (pow.f64 p 8) (pow.f64 (*.f64 -2 (pow.f64 p 4)) 2)) (pow.f64 x 8)) (fma.f64 2 (/.f64 (*.f64 (pow.f64 p 4) -6) (/.f64 (pow.f64 x 8) (pow.f64 p 4))) (fma.f64 -2 (/.f64 (fma.f64 8 (pow.f64 p 6) (*.f64 -2 (*.f64 (*.f64 p p) (*.f64 (pow.f64 p 4) -6)))) (/.f64 (pow.f64 x 8) (*.f64 p p))) (fma.f64 2 (/.f64 (*.f64 p p) (*.f64 x x)) (fma.f64 8 (/.f64 (pow.f64 p 6) (pow.f64 x 6)) (fma.f64 -2 (/.f64 (*.f64 (pow.f64 p 4) -6) (/.f64 (pow.f64 x 6) (*.f64 p p))) (fma.f64 -8 (/.f64 (pow.f64 p 8) (pow.f64 x 8)) (*.f64 (/.f64 (pow.f64 p 4) (pow.f64 x 4)) -6))))))))
(fma.f64 -1/2 (/.f64 (fma.f64 16 (pow.f64 p 8) (*.f64 4 (pow.f64 p 8))) (pow.f64 x 8)) (fma.f64 2 (/.f64 (*.f64 (pow.f64 p 8) -6) (pow.f64 x 8)) (fma.f64 -2 (*.f64 (/.f64 (fma.f64 -2 (*.f64 (pow.f64 p 6) -6) (*.f64 8 (pow.f64 p 6))) (pow.f64 x 8)) (*.f64 p p)) (fma.f64 2 (*.f64 (/.f64 p x) (/.f64 p x)) (fma.f64 8 (/.f64 (pow.f64 p 6) (pow.f64 x 6)) (fma.f64 -2 (/.f64 (*.f64 (pow.f64 p 6) -6) (pow.f64 x 6)) (fma.f64 (/.f64 (pow.f64 p 4) (pow.f64 x 4)) -6 (*.f64 -8 (/.f64 (pow.f64 p 8) (pow.f64 x 8))))))))))
(fma.f64 -1/2 (/.f64 (*.f64 (pow.f64 p 8) 20) (pow.f64 x 8)) (fma.f64 2 (*.f64 (/.f64 (pow.f64 p 8) (pow.f64 x 8)) -6) (fma.f64 -2 (*.f64 (/.f64 (fma.f64 -2 (*.f64 (pow.f64 p 6) -6) (*.f64 8 (pow.f64 p 6))) (pow.f64 x 8)) (*.f64 p p)) (fma.f64 2 (*.f64 (/.f64 p x) (/.f64 p x)) (fma.f64 8 (/.f64 (pow.f64 p 6) (pow.f64 x 6)) (fma.f64 -2 (/.f64 (*.f64 (pow.f64 p 6) -6) (pow.f64 x 6)) (fma.f64 (/.f64 (pow.f64 p 4) (pow.f64 x 4)) -6 (/.f64 (pow.f64 p 8) (/.f64 (pow.f64 x 8) -8)))))))))
2
(+.f64 2 (*.f64 -2 (/.f64 (pow.f64 p 2) (pow.f64 x 2))))
(+.f64 2 (/.f64 (*.f64 -2 (*.f64 p p)) (*.f64 x x)))
(fma.f64 -2 (*.f64 (/.f64 p x) (/.f64 p x)) 2)
(+.f64 2 (+.f64 (*.f64 -2 (/.f64 (pow.f64 p 2) (pow.f64 x 2))) (*.f64 6 (/.f64 (pow.f64 p 4) (pow.f64 x 4)))))
(+.f64 2 (fma.f64 -2 (/.f64 (*.f64 p p) (*.f64 x x)) (neg.f64 (/.f64 (*.f64 (pow.f64 p 4) -6) (pow.f64 x 4)))))
(-.f64 (fma.f64 -2 (*.f64 (/.f64 p x) (/.f64 p x)) 2) (*.f64 (/.f64 (pow.f64 p 4) (pow.f64 x 4)) -6))
(+.f64 2 (fma.f64 (/.f64 -2 x) (*.f64 (/.f64 p x) p) (/.f64 6 (/.f64 (pow.f64 x 4) (pow.f64 p 4)))))
(+.f64 (*.f64 -20 (/.f64 (pow.f64 p 6) (pow.f64 x 6))) (+.f64 2 (+.f64 (*.f64 -2 (/.f64 (pow.f64 p 2) (pow.f64 x 2))) (*.f64 6 (/.f64 (pow.f64 p 4) (pow.f64 x 4))))))
(fma.f64 -20 (/.f64 (pow.f64 p 6) (pow.f64 x 6)) (+.f64 2 (fma.f64 -2 (/.f64 (*.f64 p p) (*.f64 x x)) (*.f64 6 (/.f64 (pow.f64 p 4) (pow.f64 x 4))))))
(fma.f64 (/.f64 (pow.f64 p 6) (pow.f64 x 6)) -20 (+.f64 2 (fma.f64 -2 (*.f64 (/.f64 p x) (/.f64 p x)) (*.f64 6 (/.f64 (pow.f64 p 4) (pow.f64 x 4))))))
(fma.f64 (/.f64 (pow.f64 p 6) (pow.f64 x 6)) -20 (+.f64 2 (fma.f64 (/.f64 -2 x) (*.f64 (/.f64 p x) p) (/.f64 6 (/.f64 (pow.f64 x 4) (pow.f64 p 4))))))
1
(+.f64 1 (*.f64 1/2 (/.f64 x p)))
(fma.f64 1/2 (/.f64 x p) 1)
(+.f64 1 (+.f64 (*.f64 1/2 (/.f64 x p)) (*.f64 -1/16 (/.f64 (pow.f64 x 3) (pow.f64 p 3)))))
(+.f64 1 (fma.f64 1/2 (/.f64 x p) (*.f64 -1/16 (/.f64 (pow.f64 x 3) (pow.f64 p 3)))))
(+.f64 (fma.f64 1/2 (/.f64 x p) 1) (/.f64 -1/16 (pow.f64 (/.f64 p x) 3)))
(+.f64 1 (+.f64 (*.f64 1/2 (/.f64 x p)) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/256 (pow.f64 x 5)) (*.f64 -1/128 (pow.f64 x 5))) (pow.f64 p 5))) (*.f64 -1/16 (/.f64 (pow.f64 x 3) (pow.f64 p 3))))))
(fma.f64 3/256 (/.f64 (pow.f64 x 5) (pow.f64 p 5)) (+.f64 1 (fma.f64 1/2 (/.f64 x p) (*.f64 -1/16 (/.f64 (pow.f64 x 3) (pow.f64 p 3))))))
(+.f64 1 (fma.f64 3/256 (/.f64 (pow.f64 x 5) (pow.f64 p 5)) (fma.f64 1/2 (/.f64 x p) (*.f64 -1/16 (/.f64 (pow.f64 x 3) (pow.f64 p 3))))))
(+.f64 1 (fma.f64 3/256 (/.f64 (pow.f64 x 5) (pow.f64 p 5)) (fma.f64 1/2 (/.f64 x p) (/.f64 -1/16 (pow.f64 (/.f64 p x) 3)))))
1
(+.f64 (*.f64 -1/2 (/.f64 x p)) 1)
(fma.f64 -1/2 (/.f64 x p) 1)
(fma.f64 (/.f64 x p) -1/2 1)
(+.f64 (*.f64 -1/2 (/.f64 x p)) (+.f64 1 (*.f64 1/16 (/.f64 (pow.f64 x 3) (pow.f64 p 3)))))
(+.f64 (fma.f64 -1/2 (/.f64 x p) 1) (*.f64 (/.f64 (pow.f64 x 3) (pow.f64 p 3)) 1/16))
(fma.f64 (/.f64 x p) -1/2 (fma.f64 (/.f64 (pow.f64 x 3) (pow.f64 p 3)) 1/16 1))
(+.f64 1 (fma.f64 (/.f64 x p) -1/2 (/.f64 1/16 (pow.f64 (/.f64 p x) 3))))
(+.f64 (*.f64 -1/128 (/.f64 (pow.f64 x 5) (pow.f64 p 5))) (+.f64 (*.f64 -1/2 (/.f64 x p)) (+.f64 1 (+.f64 (*.f64 -1/256 (/.f64 (pow.f64 x 5) (pow.f64 p 5))) (*.f64 1/16 (/.f64 (pow.f64 x 3) (pow.f64 p 3)))))))
(fma.f64 -1/128 (/.f64 (pow.f64 x 5) (pow.f64 p 5)) (+.f64 (fma.f64 -1/2 (/.f64 x p) 1) (fma.f64 -1/256 (/.f64 (pow.f64 x 5) (pow.f64 p 5)) (*.f64 (/.f64 (pow.f64 x 3) (pow.f64 p 3)) 1/16))))
(+.f64 (fma.f64 (/.f64 (pow.f64 x 5) (pow.f64 p 5)) -1/128 (fma.f64 (/.f64 x p) -1/2 (fma.f64 (/.f64 (pow.f64 x 3) (pow.f64 p 3)) 1/16 (*.f64 (/.f64 (pow.f64 x 5) (pow.f64 p 5)) -1/256)))) 1)
(fma.f64 (/.f64 (pow.f64 x 5) (pow.f64 p 5)) -1/128 (+.f64 (fma.f64 (/.f64 x p) -1/2 1) (fma.f64 (/.f64 (pow.f64 x 5) (pow.f64 p 5)) -1/256 (/.f64 1/16 (pow.f64 (/.f64 p x) 3)))))
(sqrt.f64 1/2)
(+.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p)))
(+.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 (*.f64 x (sqrt.f64 1/2)) p)))
(fma.f64 1/4 (*.f64 (/.f64 (sqrt.f64 1/2) p) x) (sqrt.f64 1/2))
(fma.f64 1/4 (*.f64 (/.f64 x p) (sqrt.f64 1/2)) (sqrt.f64 1/2))
(+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p)) (*.f64 -1/32 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 2)) (pow.f64 p 2)))))
(+.f64 (sqrt.f64 1/2) (fma.f64 1/4 (/.f64 (*.f64 x (sqrt.f64 1/2)) p) (*.f64 -1/32 (/.f64 (sqrt.f64 1/2) (/.f64 (*.f64 p p) (*.f64 x x))))))
(+.f64 (sqrt.f64 1/2) (fma.f64 1/4 (*.f64 (/.f64 (sqrt.f64 1/2) p) x) (*.f64 -1/32 (/.f64 (*.f64 x x) (/.f64 (*.f64 p p) (sqrt.f64 1/2))))))
(+.f64 (sqrt.f64 1/2) (fma.f64 1/4 (*.f64 (/.f64 x p) (sqrt.f64 1/2)) (*.f64 (/.f64 (*.f64 -1/32 (sqrt.f64 1/2)) p) (*.f64 (/.f64 x p) x))))
(+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 -3/128 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 3)) (pow.f64 p 3))) (+.f64 (*.f64 1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p)) (*.f64 -1/32 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 2)) (pow.f64 p 2))))))
(+.f64 (sqrt.f64 1/2) (fma.f64 -3/128 (/.f64 (sqrt.f64 1/2) (/.f64 (pow.f64 p 3) (pow.f64 x 3))) (fma.f64 1/4 (/.f64 (*.f64 x (sqrt.f64 1/2)) p) (*.f64 -1/32 (/.f64 (sqrt.f64 1/2) (/.f64 (*.f64 p p) (*.f64 x x)))))))
(+.f64 (fma.f64 -3/128 (/.f64 (pow.f64 x 3) (/.f64 (pow.f64 p 3) (sqrt.f64 1/2))) (/.f64 (*.f64 1/4 (sqrt.f64 1/2)) (/.f64 p x))) (fma.f64 -1/32 (/.f64 (*.f64 x x) (/.f64 (*.f64 p p) (sqrt.f64 1/2))) (sqrt.f64 1/2)))
(+.f64 (fma.f64 -3/128 (/.f64 (sqrt.f64 1/2) (pow.f64 (/.f64 p x) 3)) (/.f64 (*.f64 (sqrt.f64 1/2) 1/4) (/.f64 p x))) (fma.f64 -1/32 (*.f64 (*.f64 (/.f64 x p) x) (/.f64 (sqrt.f64 1/2) p)) (sqrt.f64 1/2)))
(*.f64 (sqrt.f64 2) (sqrt.f64 1/2))
(*.f64 (sqrt.f64 1/2) (sqrt.f64 2))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 p 2)) (*.f64 (sqrt.f64 2) (pow.f64 x 2)))) (*.f64 (sqrt.f64 2) (sqrt.f64 1/2)))
(fma.f64 -1 (/.f64 (/.f64 (*.f64 (*.f64 p p) (sqrt.f64 1/2)) (sqrt.f64 2)) (*.f64 x x)) (*.f64 (sqrt.f64 1/2) (sqrt.f64 2)))
(-.f64 (*.f64 (sqrt.f64 1/2) (sqrt.f64 2)) (*.f64 (*.f64 (/.f64 p x) (/.f64 p x)) (/.f64 (sqrt.f64 1/2) (sqrt.f64 2))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 p 2)) (*.f64 (sqrt.f64 2) (pow.f64 x 2)))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sqrt.f64 1/2) (+.f64 (pow.f64 (*.f64 -1 (/.f64 (pow.f64 p 2) (sqrt.f64 2))) 2) (+.f64 (*.f64 -2 (pow.f64 p 4)) (*.f64 -4 (pow.f64 p 4))))) (*.f64 (sqrt.f64 2) (pow.f64 x 4)))) (*.f64 (sqrt.f64 2) (sqrt.f64 1/2))))
(fma.f64 -1 (/.f64 (/.f64 (*.f64 (*.f64 p p) (sqrt.f64 1/2)) (sqrt.f64 2)) (*.f64 x x)) (fma.f64 -1/2 (*.f64 (/.f64 (sqrt.f64 1/2) (sqrt.f64 2)) (/.f64 (+.f64 (*.f64 (pow.f64 p 4) -6) (pow.f64 (neg.f64 (/.f64 (*.f64 p p) (sqrt.f64 2))) 2)) (pow.f64 x 4))) (*.f64 (sqrt.f64 1/2) (sqrt.f64 2))))
(-.f64 (fma.f64 (sqrt.f64 1/2) (sqrt.f64 2) (*.f64 (/.f64 (sqrt.f64 1/2) (sqrt.f64 2)) (*.f64 (/.f64 (fma.f64 (pow.f64 p 4) -6 (pow.f64 (/.f64 (neg.f64 (*.f64 p p)) (sqrt.f64 2)) 2)) (pow.f64 x 4)) -1/2))) (*.f64 (*.f64 (/.f64 p x) (/.f64 p x)) (/.f64 (sqrt.f64 1/2) (sqrt.f64 2))))
(+.f64 (*.f64 (sqrt.f64 1/2) (sqrt.f64 2)) (*.f64 (/.f64 (sqrt.f64 1/2) (sqrt.f64 2)) (+.f64 (*.f64 (/.f64 p x) (neg.f64 (/.f64 p x))) (*.f64 (/.f64 (fma.f64 (pow.f64 p 4) -6 (pow.f64 (/.f64 (*.f64 p (neg.f64 p)) (sqrt.f64 2)) 2)) (pow.f64 x 4)) -1/2))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 p 2)) (*.f64 (sqrt.f64 2) (pow.f64 x 2)))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sqrt.f64 1/2) (+.f64 (*.f64 8 (pow.f64 p 6)) (+.f64 (*.f64 -2 (*.f64 (+.f64 (*.f64 -2 (pow.f64 p 4)) (*.f64 -4 (pow.f64 p 4))) (pow.f64 p 2))) (/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 -1 (/.f64 (pow.f64 p 2) (sqrt.f64 2))) 2) (+.f64 (*.f64 -2 (pow.f64 p 4)) (*.f64 -4 (pow.f64 p 4)))) (pow.f64 p 2)) (pow.f64 (sqrt.f64 2) 2))))) (*.f64 (sqrt.f64 2) (pow.f64 x 6)))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sqrt.f64 1/2) (+.f64 (pow.f64 (*.f64 -1 (/.f64 (pow.f64 p 2) (sqrt.f64 2))) 2) (+.f64 (*.f64 -2 (pow.f64 p 4)) (*.f64 -4 (pow.f64 p 4))))) (*.f64 (sqrt.f64 2) (pow.f64 x 4)))) (*.f64 (sqrt.f64 2) (sqrt.f64 1/2)))))
(fma.f64 -1 (/.f64 (/.f64 (*.f64 (*.f64 p p) (sqrt.f64 1/2)) (sqrt.f64 2)) (*.f64 x x)) (fma.f64 -1/2 (*.f64 (/.f64 (sqrt.f64 1/2) (sqrt.f64 2)) (/.f64 (fma.f64 8 (pow.f64 p 6) (fma.f64 -2 (*.f64 (*.f64 p p) (*.f64 (pow.f64 p 4) -6)) (/.f64 (+.f64 (*.f64 (pow.f64 p 4) -6) (pow.f64 (neg.f64 (/.f64 (*.f64 p p) (sqrt.f64 2))) 2)) (/.f64 (pow.f64 (sqrt.f64 2) 2) (*.f64 p p))))) (pow.f64 x 6))) (fma.f64 -1/2 (*.f64 (/.f64 (sqrt.f64 1/2) (sqrt.f64 2)) (/.f64 (+.f64 (*.f64 (pow.f64 p 4) -6) (pow.f64 (neg.f64 (/.f64 (*.f64 p p) (sqrt.f64 2))) 2)) (pow.f64 x 4))) (*.f64 (sqrt.f64 1/2) (sqrt.f64 2)))))
(-.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sqrt.f64 1/2) (sqrt.f64 2)) (/.f64 (fma.f64 8 (pow.f64 p 6) (fma.f64 -2 (*.f64 (pow.f64 p 6) -6) (*.f64 (/.f64 (fma.f64 (pow.f64 p 4) -6 (pow.f64 (/.f64 (neg.f64 (*.f64 p p)) (sqrt.f64 2)) 2)) 2) (*.f64 p p)))) (pow.f64 x 6))) (fma.f64 (sqrt.f64 1/2) (sqrt.f64 2) (*.f64 (/.f64 (sqrt.f64 1/2) (sqrt.f64 2)) (*.f64 (/.f64 (fma.f64 (pow.f64 p 4) -6 (pow.f64 (/.f64 (neg.f64 (*.f64 p p)) (sqrt.f64 2)) 2)) (pow.f64 x 4)) -1/2)))) (*.f64 (*.f64 (/.f64 p x) (/.f64 p x)) (/.f64 (sqrt.f64 1/2) (sqrt.f64 2))))
(+.f64 (*.f64 -1/2 (*.f64 (/.f64 (sqrt.f64 1/2) (sqrt.f64 2)) (+.f64 (/.f64 (fma.f64 8 (pow.f64 p 6) (fma.f64 -2 (*.f64 (pow.f64 p 6) -6) (*.f64 (/.f64 (fma.f64 (pow.f64 p 4) -6 (pow.f64 (/.f64 (*.f64 p (neg.f64 p)) (sqrt.f64 2)) 2)) 2) (*.f64 p p)))) (pow.f64 x 6)) (/.f64 (fma.f64 (pow.f64 p 4) -6 (pow.f64 (/.f64 (*.f64 p (neg.f64 p)) (sqrt.f64 2)) 2)) (pow.f64 x 4))))) (-.f64 (*.f64 (sqrt.f64 1/2) (sqrt.f64 2)) (*.f64 (*.f64 (/.f64 p x) (/.f64 p x)) (/.f64 (sqrt.f64 1/2) (sqrt.f64 2)))))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(neg.f64 (/.f64 (sqrt.f64 2) (/.f64 x (*.f64 p (sqrt.f64 1/2)))))
(/.f64 (neg.f64 (*.f64 p (*.f64 (sqrt.f64 1/2) (sqrt.f64 2)))) x)
(*.f64 (/.f64 (sqrt.f64 2) x) (neg.f64 (*.f64 p (sqrt.f64 1/2))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (*.f64 -2 (pow.f64 p 4)) (*.f64 -4 (pow.f64 p 4))) (sqrt.f64 1/2)) (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 x 3) p)))) (*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x)))
(fma.f64 -1/2 (*.f64 (/.f64 (*.f64 (pow.f64 p 4) -6) (sqrt.f64 2)) (/.f64 (sqrt.f64 1/2) (*.f64 p (pow.f64 x 3)))) (neg.f64 (/.f64 (sqrt.f64 2) (/.f64 x (*.f64 p (sqrt.f64 1/2))))))
(-.f64 (*.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 p 4) -6) (sqrt.f64 2))) (/.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 x 3)) p)) (/.f64 (*.f64 (sqrt.f64 1/2) (sqrt.f64 2)) (/.f64 x p)))
(-.f64 (*.f64 (*.f64 (/.f64 (pow.f64 p 4) (sqrt.f64 2)) -6) (*.f64 (/.f64 (/.f64 (sqrt.f64 1/2) p) (pow.f64 x 3)) -1/2)) (*.f64 (/.f64 (sqrt.f64 2) x) (*.f64 p (sqrt.f64 1/2))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (*.f64 -2 (pow.f64 p 4)) (*.f64 -4 (pow.f64 p 4))) (sqrt.f64 1/2)) (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 x 3) p)))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sqrt.f64 1/2) (-.f64 (+.f64 (*.f64 8 (pow.f64 p 6)) (*.f64 -2 (*.f64 (+.f64 (*.f64 -2 (pow.f64 p 4)) (*.f64 -4 (pow.f64 p 4))) (pow.f64 p 2)))) (pow.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -2 (pow.f64 p 4)) (*.f64 -4 (pow.f64 p 4))) (*.f64 (sqrt.f64 2) p))) 2))) (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 x 5) p)))) (*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))))
(fma.f64 -1/2 (*.f64 (/.f64 (*.f64 (pow.f64 p 4) -6) (sqrt.f64 2)) (/.f64 (sqrt.f64 1/2) (*.f64 p (pow.f64 x 3)))) (fma.f64 -1/2 (*.f64 (/.f64 (sqrt.f64 1/2) (sqrt.f64 2)) (/.f64 (-.f64 (fma.f64 8 (pow.f64 p 6) (*.f64 -2 (*.f64 (*.f64 p p) (*.f64 (pow.f64 p 4) -6)))) (pow.f64 (/.f64 (*.f64 1/2 (*.f64 (pow.f64 p 4) -6)) (*.f64 p (sqrt.f64 2))) 2)) (*.f64 p (pow.f64 x 5)))) (neg.f64 (/.f64 (sqrt.f64 2) (/.f64 x (*.f64 p (sqrt.f64 1/2)))))))
(-.f64 (*.f64 -1/2 (+.f64 (*.f64 (/.f64 (sqrt.f64 1/2) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 p 4) -6) (*.f64 p (pow.f64 x 3)))) (*.f64 (/.f64 (sqrt.f64 1/2) (sqrt.f64 2)) (/.f64 (-.f64 (fma.f64 -2 (*.f64 (pow.f64 p 6) -6) (*.f64 8 (pow.f64 p 6))) (pow.f64 (*.f64 1/2 (*.f64 (/.f64 (pow.f64 p 4) p) (/.f64 -6 (sqrt.f64 2)))) 2)) (*.f64 p (pow.f64 x 5)))))) (/.f64 (*.f64 (sqrt.f64 1/2) (sqrt.f64 2)) (/.f64 x p)))
(fma.f64 -1/2 (*.f64 (/.f64 (sqrt.f64 1/2) (sqrt.f64 2)) (+.f64 (/.f64 (*.f64 (pow.f64 p 4) -6) (*.f64 p (pow.f64 x 3))) (/.f64 (-.f64 (fma.f64 -2 (*.f64 (pow.f64 p 6) -6) (*.f64 8 (pow.f64 p 6))) (pow.f64 (/.f64 1/2 (/.f64 (*.f64 p (sqrt.f64 2)) (*.f64 (pow.f64 p 4) -6))) 2)) (*.f64 p (pow.f64 x 5))))) (*.f64 (/.f64 (sqrt.f64 2) x) (neg.f64 (*.f64 p (sqrt.f64 1/2)))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (*.f64 -2 (pow.f64 p 4)) (*.f64 -4 (pow.f64 p 4))) (sqrt.f64 1/2)) (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 x 3) p)))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sqrt.f64 1/2) (-.f64 (+.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 -2 (pow.f64 p 4)) (*.f64 -4 (pow.f64 p 4))) (pow.f64 p 4))) (+.f64 (*.f64 -1/2 (+.f64 (*.f64 16 (pow.f64 p 8)) (pow.f64 (*.f64 -2 (pow.f64 p 4)) 2))) (+.f64 (*.f64 -2 (*.f64 (+.f64 (*.f64 8 (pow.f64 p 6)) (*.f64 -2 (*.f64 (+.f64 (*.f64 -2 (pow.f64 p 4)) (*.f64 -4 (pow.f64 p 4))) (pow.f64 p 2)))) (pow.f64 p 2))) (*.f64 -8 (pow.f64 p 8))))) (*.f64 1/2 (/.f64 (*.f64 (+.f64 (*.f64 -2 (pow.f64 p 4)) (*.f64 -4 (pow.f64 p 4))) (-.f64 (+.f64 (*.f64 8 (pow.f64 p 6)) (*.f64 -2 (*.f64 (+.f64 (*.f64 -2 (pow.f64 p 4)) (*.f64 -4 (pow.f64 p 4))) (pow.f64 p 2)))) (pow.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -2 (pow.f64 p 4)) (*.f64 -4 (pow.f64 p 4))) (*.f64 (sqrt.f64 2) p))) 2))) (*.f64 (pow.f64 (sqrt.f64 2) 2) (pow.f64 p 2)))))) (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 x 7) p)))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sqrt.f64 1/2) (-.f64 (+.f64 (*.f64 8 (pow.f64 p 6)) (*.f64 -2 (*.f64 (+.f64 (*.f64 -2 (pow.f64 p 4)) (*.f64 -4 (pow.f64 p 4))) (pow.f64 p 2)))) (pow.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -2 (pow.f64 p 4)) (*.f64 -4 (pow.f64 p 4))) (*.f64 (sqrt.f64 2) p))) 2))) (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 x 5) p)))) (*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x)))))
(fma.f64 -1/2 (*.f64 (/.f64 (*.f64 (pow.f64 p 4) -6) (sqrt.f64 2)) (/.f64 (sqrt.f64 1/2) (*.f64 p (pow.f64 x 3)))) (fma.f64 -1/2 (*.f64 (/.f64 (sqrt.f64 1/2) (sqrt.f64 2)) (/.f64 (+.f64 (fma.f64 2 (*.f64 (pow.f64 p 4) (*.f64 (pow.f64 p 4) -6)) (fma.f64 -1/2 (fma.f64 16 (pow.f64 p 8) (pow.f64 (*.f64 -2 (pow.f64 p 4)) 2)) (fma.f64 -2 (*.f64 (*.f64 p p) (fma.f64 8 (pow.f64 p 6) (*.f64 -2 (*.f64 (*.f64 p p) (*.f64 (pow.f64 p 4) -6))))) (*.f64 (pow.f64 p 8) -8)))) (*.f64 -1/2 (*.f64 (/.f64 (*.f64 (pow.f64 p 4) -6) (pow.f64 (sqrt.f64 2) 2)) (/.f64 (-.f64 (fma.f64 8 (pow.f64 p 6) (*.f64 -2 (*.f64 (*.f64 p p) (*.f64 (pow.f64 p 4) -6)))) (pow.f64 (/.f64 (*.f64 1/2 (*.f64 (pow.f64 p 4) -6)) (*.f64 p (sqrt.f64 2))) 2)) (*.f64 p p))))) (*.f64 p (pow.f64 x 7)))) (fma.f64 -1/2 (*.f64 (/.f64 (sqrt.f64 1/2) (sqrt.f64 2)) (/.f64 (-.f64 (fma.f64 8 (pow.f64 p 6) (*.f64 -2 (*.f64 (*.f64 p p) (*.f64 (pow.f64 p 4) -6)))) (pow.f64 (/.f64 (*.f64 1/2 (*.f64 (pow.f64 p 4) -6)) (*.f64 p (sqrt.f64 2))) 2)) (*.f64 p (pow.f64 x 5)))) (neg.f64 (/.f64 (sqrt.f64 2) (/.f64 x (*.f64 p (sqrt.f64 1/2))))))))
(fma.f64 -1/2 (*.f64 (/.f64 (sqrt.f64 1/2) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 p 4) -6) (*.f64 p (pow.f64 x 3)))) (-.f64 (*.f64 -1/2 (+.f64 (*.f64 (/.f64 (sqrt.f64 1/2) (sqrt.f64 2)) (/.f64 (-.f64 (fma.f64 2 (*.f64 (pow.f64 p 8) -6) (fma.f64 -1/2 (fma.f64 16 (pow.f64 p 8) (*.f64 4 (pow.f64 p 8))) (fma.f64 (*.f64 -2 (fma.f64 -2 (*.f64 (pow.f64 p 6) -6) (*.f64 8 (pow.f64 p 6)))) (*.f64 p p) (*.f64 (pow.f64 p 8) -8)))) (*.f64 1/2 (/.f64 (*.f64 (/.f64 (pow.f64 p 4) -1/3) (-.f64 (fma.f64 -2 (*.f64 (pow.f64 p 6) -6) (*.f64 8 (pow.f64 p 6))) (pow.f64 (*.f64 1/2 (*.f64 (/.f64 (pow.f64 p 4) p) (/.f64 -6 (sqrt.f64 2)))) 2))) (*.f64 p p)))) (*.f64 p (pow.f64 x 7)))) (*.f64 (/.f64 (sqrt.f64 1/2) (sqrt.f64 2)) (/.f64 (-.f64 (fma.f64 -2 (*.f64 (pow.f64 p 6) -6) (*.f64 8 (pow.f64 p 6))) (pow.f64 (*.f64 1/2 (*.f64 (/.f64 (pow.f64 p 4) p) (/.f64 -6 (sqrt.f64 2)))) 2)) (*.f64 p (pow.f64 x 5)))))) (/.f64 (*.f64 (sqrt.f64 1/2) (sqrt.f64 2)) (/.f64 x p))))
(-.f64 (*.f64 -1/2 (+.f64 (*.f64 (*.f64 (/.f64 (pow.f64 p 4) (sqrt.f64 2)) -6) (/.f64 (/.f64 (sqrt.f64 1/2) p) (pow.f64 x 3))) (*.f64 (/.f64 (sqrt.f64 1/2) (sqrt.f64 2)) (+.f64 (/.f64 (+.f64 (fma.f64 2 (*.f64 (pow.f64 p 8) -6) (fma.f64 -1/2 (*.f64 (pow.f64 p 8) 20) (fma.f64 (pow.f64 p 8) -8 (*.f64 (fma.f64 -2 (*.f64 (pow.f64 p 6) -6) (*.f64 8 (pow.f64 p 6))) (*.f64 -2 (*.f64 p p)))))) (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (fma.f64 -2 (*.f64 (pow.f64 p 6) -6) (*.f64 8 (pow.f64 p 6))) (pow.f64 (/.f64 1/2 (/.f64 (*.f64 p (sqrt.f64 2)) (*.f64 (pow.f64 p 4) -6))) 2)) (/.f64 (pow.f64 p 4) -1/3)) (*.f64 p p)))) (*.f64 p (pow.f64 x 7))) (/.f64 (-.f64 (fma.f64 -2 (*.f64 (pow.f64 p 6) -6) (*.f64 8 (pow.f64 p 6))) (pow.f64 (/.f64 1/2 (/.f64 (*.f64 p (sqrt.f64 2)) (*.f64 (pow.f64 p 4) -6))) 2)) (*.f64 p (pow.f64 x 5))))))) (*.f64 (/.f64 (sqrt.f64 2) x) (*.f64 p (sqrt.f64 1/2))))
(*.f64 (sqrt.f64 2) (sqrt.f64 1/2))
(*.f64 (sqrt.f64 1/2) (sqrt.f64 2))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 p 2)) (*.f64 (sqrt.f64 2) (pow.f64 x 2)))) (*.f64 (sqrt.f64 2) (sqrt.f64 1/2)))
(fma.f64 -1 (/.f64 (/.f64 (*.f64 (*.f64 p p) (sqrt.f64 1/2)) (sqrt.f64 2)) (*.f64 x x)) (*.f64 (sqrt.f64 1/2) (sqrt.f64 2)))
(-.f64 (*.f64 (sqrt.f64 1/2) (sqrt.f64 2)) (*.f64 (*.f64 (/.f64 p x) (/.f64 p x)) (/.f64 (sqrt.f64 1/2) (sqrt.f64 2))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 p 2)) (*.f64 (sqrt.f64 2) (pow.f64 x 2)))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (sqrt.f64 1/2) (*.f64 (-.f64 (*.f64 6 (/.f64 1 (pow.f64 x 4))) (pow.f64 (/.f64 -1 (*.f64 (sqrt.f64 2) (pow.f64 x 2))) 2)) (pow.f64 p 4))) (sqrt.f64 2))) (*.f64 (sqrt.f64 2) (sqrt.f64 1/2))))
(fma.f64 -1 (/.f64 (/.f64 (*.f64 (*.f64 p p) (sqrt.f64 1/2)) (sqrt.f64 2)) (*.f64 x x)) (fma.f64 1/2 (/.f64 (sqrt.f64 1/2) (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 p 4) (-.f64 (/.f64 6 (pow.f64 x 4)) (pow.f64 (/.f64 -1 (*.f64 (*.f64 x x) (sqrt.f64 2))) 2))))) (*.f64 (sqrt.f64 1/2) (sqrt.f64 2))))
(-.f64 (fma.f64 1/2 (*.f64 (/.f64 (sqrt.f64 1/2) (sqrt.f64 2)) (*.f64 (pow.f64 p 4) (-.f64 (/.f64 6 (pow.f64 x 4)) (pow.f64 (/.f64 (/.f64 -1 (*.f64 x x)) (sqrt.f64 2)) 2)))) (*.f64 (sqrt.f64 1/2) (sqrt.f64 2))) (*.f64 (*.f64 (/.f64 p x) (/.f64 p x)) (/.f64 (sqrt.f64 1/2) (sqrt.f64 2))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 p 2)) (*.f64 (sqrt.f64 2) (pow.f64 x 2)))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (sqrt.f64 1/2) (*.f64 (-.f64 (*.f64 6 (/.f64 1 (pow.f64 x 4))) (pow.f64 (/.f64 -1 (*.f64 (sqrt.f64 2) (pow.f64 x 2))) 2)) (pow.f64 p 4))) (sqrt.f64 2))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 6 (/.f64 1 (pow.f64 x 4))) (pow.f64 (/.f64 -1 (*.f64 (sqrt.f64 2) (pow.f64 x 2))) 2)) (*.f64 (pow.f64 (sqrt.f64 2) 2) (pow.f64 x 2)))) (*.f64 20 (/.f64 1 (pow.f64 x 6)))) (*.f64 (sqrt.f64 1/2) (pow.f64 p 6))) (sqrt.f64 2))) (*.f64 (sqrt.f64 2) (sqrt.f64 1/2)))))
(fma.f64 -1 (/.f64 (/.f64 (*.f64 (*.f64 p p) (sqrt.f64 1/2)) (sqrt.f64 2)) (*.f64 x x)) (fma.f64 1/2 (/.f64 (sqrt.f64 1/2) (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 p 4) (-.f64 (/.f64 6 (pow.f64 x 4)) (pow.f64 (/.f64 -1 (*.f64 (*.f64 x x) (sqrt.f64 2))) 2))))) (fma.f64 -1/2 (/.f64 (fma.f64 -1 (/.f64 (-.f64 (/.f64 6 (pow.f64 x 4)) (pow.f64 (/.f64 -1 (*.f64 (*.f64 x x) (sqrt.f64 2))) 2)) (*.f64 (*.f64 x x) (pow.f64 (sqrt.f64 2) 2))) (/.f64 20 (pow.f64 x 6))) (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 p 6) (sqrt.f64 1/2)))) (*.f64 (sqrt.f64 1/2) (sqrt.f64 2)))))
(-.f64 (fma.f64 1/2 (*.f64 (/.f64 (sqrt.f64 1/2) (sqrt.f64 2)) (*.f64 (pow.f64 p 4) (-.f64 (/.f64 6 (pow.f64 x 4)) (pow.f64 (/.f64 (/.f64 -1 (*.f64 x x)) (sqrt.f64 2)) 2)))) (fma.f64 (sqrt.f64 1/2) (sqrt.f64 2) (/.f64 (*.f64 (*.f64 -1/2 (*.f64 (pow.f64 p 6) (sqrt.f64 1/2))) (+.f64 (*.f64 -1/2 (/.f64 (-.f64 (/.f64 6 (pow.f64 x 4)) (pow.f64 (/.f64 (/.f64 -1 (*.f64 x x)) (sqrt.f64 2)) 2)) (*.f64 x x))) (/.f64 20 (pow.f64 x 6)))) (sqrt.f64 2)))) (*.f64 (*.f64 (/.f64 p x) (/.f64 p x)) (/.f64 (sqrt.f64 1/2) (sqrt.f64 2))))
(-.f64 (fma.f64 1/2 (*.f64 (/.f64 (sqrt.f64 1/2) (sqrt.f64 2)) (*.f64 (pow.f64 p 4) (-.f64 (/.f64 6 (pow.f64 x 4)) (pow.f64 (/.f64 (/.f64 -1 (*.f64 x x)) (sqrt.f64 2)) 2)))) (fma.f64 -1/2 (*.f64 (/.f64 (+.f64 (*.f64 -1/2 (-.f64 (/.f64 6 (pow.f64 x 6)) (/.f64 (pow.f64 (/.f64 (/.f64 -1 (*.f64 x x)) (sqrt.f64 2)) 2) (*.f64 x x)))) (/.f64 20 (pow.f64 x 6))) (sqrt.f64 2)) (*.f64 (pow.f64 p 6) (sqrt.f64 1/2))) (*.f64 (sqrt.f64 1/2) (sqrt.f64 2)))) (*.f64 (*.f64 (/.f64 p x) (/.f64 p x)) (/.f64 (sqrt.f64 1/2) (sqrt.f64 2))))
(sqrt.f64 1/2)
(+.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p)))
(+.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 (*.f64 x (sqrt.f64 1/2)) p)))
(fma.f64 1/4 (*.f64 (/.f64 (sqrt.f64 1/2) p) x) (sqrt.f64 1/2))
(fma.f64 1/4 (*.f64 (/.f64 x p) (sqrt.f64 1/2)) (sqrt.f64 1/2))
(+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p)) (*.f64 -1/32 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 2)) (pow.f64 p 2)))))
(+.f64 (sqrt.f64 1/2) (fma.f64 1/4 (/.f64 (*.f64 x (sqrt.f64 1/2)) p) (*.f64 -1/32 (/.f64 (sqrt.f64 1/2) (/.f64 (*.f64 p p) (*.f64 x x))))))
(+.f64 (sqrt.f64 1/2) (fma.f64 1/4 (*.f64 (/.f64 (sqrt.f64 1/2) p) x) (*.f64 -1/32 (/.f64 (*.f64 x x) (/.f64 (*.f64 p p) (sqrt.f64 1/2))))))
(+.f64 (sqrt.f64 1/2) (fma.f64 1/4 (*.f64 (/.f64 x p) (sqrt.f64 1/2)) (*.f64 (/.f64 (*.f64 -1/32 (sqrt.f64 1/2)) p) (*.f64 (/.f64 x p) x))))
(+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sqrt.f64 1/2) (+.f64 (*.f64 -1/64 (pow.f64 x 3)) (*.f64 1/16 (pow.f64 x 3)))) (pow.f64 p 3))) (+.f64 (*.f64 1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p)) (*.f64 -1/32 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 2)) (pow.f64 p 2))))))
(+.f64 (sqrt.f64 1/2) (fma.f64 -1/2 (/.f64 (sqrt.f64 1/2) (/.f64 (pow.f64 p 3) (*.f64 (pow.f64 x 3) 3/64))) (fma.f64 1/4 (/.f64 (*.f64 x (sqrt.f64 1/2)) p) (*.f64 -1/32 (/.f64 (sqrt.f64 1/2) (/.f64 (*.f64 p p) (*.f64 x x)))))))
(+.f64 (sqrt.f64 1/2) (fma.f64 -1/2 (*.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 p 3)) (*.f64 (pow.f64 x 3) 3/64)) (fma.f64 1/4 (*.f64 (/.f64 (sqrt.f64 1/2) p) x) (*.f64 -1/32 (/.f64 (*.f64 x x) (/.f64 (*.f64 p p) (sqrt.f64 1/2)))))))
(+.f64 (sqrt.f64 1/2) (fma.f64 -1/2 (*.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 (/.f64 p x) 3)) 3/64) (fma.f64 1/4 (*.f64 (/.f64 x p) (sqrt.f64 1/2)) (*.f64 (/.f64 (*.f64 -1/32 (sqrt.f64 1/2)) p) (*.f64 (/.f64 x p) x)))))
(sqrt.f64 1/2)
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p)) (sqrt.f64 1/2))
(fma.f64 -1/4 (/.f64 (*.f64 x (sqrt.f64 1/2)) p) (sqrt.f64 1/2))
(fma.f64 (*.f64 (/.f64 (sqrt.f64 1/2) p) x) -1/4 (sqrt.f64 1/2))
(fma.f64 (*.f64 (/.f64 x p) (sqrt.f64 1/2)) -1/4 (sqrt.f64 1/2))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p)) (+.f64 (sqrt.f64 1/2) (*.f64 -1/32 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 2)) (pow.f64 p 2)))))
(+.f64 (fma.f64 -1/4 (/.f64 (*.f64 x (sqrt.f64 1/2)) p) (sqrt.f64 1/2)) (*.f64 -1/32 (/.f64 (sqrt.f64 1/2) (/.f64 (*.f64 p p) (*.f64 x x)))))
(fma.f64 (*.f64 (/.f64 (sqrt.f64 1/2) p) x) -1/4 (fma.f64 -1/32 (/.f64 (*.f64 x x) (/.f64 (*.f64 p p) (sqrt.f64 1/2))) (sqrt.f64 1/2)))
(fma.f64 (*.f64 (/.f64 x p) (sqrt.f64 1/2)) -1/4 (fma.f64 -1/32 (*.f64 (*.f64 (/.f64 x p) x) (/.f64 (sqrt.f64 1/2) p)) (sqrt.f64 1/2)))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p)) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (sqrt.f64 1/2) (+.f64 (*.f64 -1/64 (pow.f64 x 3)) (*.f64 1/16 (pow.f64 x 3)))) (pow.f64 p 3))) (+.f64 (sqrt.f64 1/2) (*.f64 -1/32 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 2)) (pow.f64 p 2))))))
(fma.f64 -1/4 (/.f64 (*.f64 x (sqrt.f64 1/2)) p) (fma.f64 1/2 (/.f64 (sqrt.f64 1/2) (/.f64 (pow.f64 p 3) (*.f64 (pow.f64 x 3) 3/64))) (+.f64 (sqrt.f64 1/2) (*.f64 -1/32 (/.f64 (sqrt.f64 1/2) (/.f64 (*.f64 p p) (*.f64 x x)))))))
(fma.f64 (*.f64 (/.f64 (sqrt.f64 1/2) p) x) -1/4 (fma.f64 1/2 (*.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 p 3)) (*.f64 (pow.f64 x 3) 3/64)) (fma.f64 -1/32 (/.f64 (*.f64 x x) (/.f64 (*.f64 p p) (sqrt.f64 1/2))) (sqrt.f64 1/2))))
(fma.f64 (*.f64 (/.f64 x p) (sqrt.f64 1/2)) -1/4 (fma.f64 1/2 (*.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 (/.f64 p x) 3)) 3/64) (fma.f64 -1/32 (*.f64 (*.f64 (/.f64 x p) x) (/.f64 (sqrt.f64 1/2) p)) (sqrt.f64 1/2))))
x
(+.f64 (*.f64 2 (/.f64 (pow.f64 p 2) x)) x)
(fma.f64 2 (/.f64 (*.f64 p p) x) x)
(fma.f64 2 (/.f64 p (/.f64 x p)) x)
(fma.f64 2 (*.f64 (/.f64 p x) p) x)
(+.f64 (*.f64 -2 (/.f64 (pow.f64 p 4) (pow.f64 x 3))) (+.f64 (*.f64 2 (/.f64 (pow.f64 p 2) x)) x))
(fma.f64 -2 (/.f64 (pow.f64 p 4) (pow.f64 x 3)) (fma.f64 2 (/.f64 (*.f64 p p) x) x))
(fma.f64 -2 (/.f64 (pow.f64 p 4) (pow.f64 x 3)) (fma.f64 2 (/.f64 p (/.f64 x p)) x))
(fma.f64 -2 (/.f64 (pow.f64 p 4) (pow.f64 x 3)) (fma.f64 2 (*.f64 (/.f64 p x) p) x))
(+.f64 (*.f64 -2 (/.f64 (pow.f64 p 4) (pow.f64 x 3))) (+.f64 (*.f64 4 (/.f64 (pow.f64 p 6) (pow.f64 x 5))) (+.f64 (*.f64 2 (/.f64 (pow.f64 p 2) x)) x)))
(fma.f64 -2 (/.f64 (pow.f64 p 4) (pow.f64 x 3)) (fma.f64 4 (/.f64 (pow.f64 p 6) (pow.f64 x 5)) (fma.f64 2 (/.f64 (*.f64 p p) x) x)))
(fma.f64 -2 (/.f64 (pow.f64 p 4) (pow.f64 x 3)) (fma.f64 4 (/.f64 (pow.f64 p 6) (pow.f64 x 5)) (fma.f64 2 (/.f64 p (/.f64 x p)) x)))
(fma.f64 -2 (/.f64 (pow.f64 p 4) (pow.f64 x 3)) (fma.f64 4 (/.f64 (pow.f64 p 6) (pow.f64 x 5)) (fma.f64 2 (*.f64 (/.f64 p x) p) x)))
(*.f64 2 p)
(*.f64 p 2)
(+.f64 (*.f64 1/4 (/.f64 (pow.f64 x 2) p)) (*.f64 2 p))
(fma.f64 1/4 (/.f64 (*.f64 x x) p) (*.f64 p 2))
(fma.f64 p 2 (*.f64 1/4 (/.f64 x (/.f64 p x))))
(fma.f64 p 2 (/.f64 (*.f64 x 1/4) (/.f64 p x)))
(+.f64 (*.f64 1/4 (/.f64 (pow.f64 x 2) p)) (+.f64 (*.f64 -1/64 (/.f64 (pow.f64 x 4) (pow.f64 p 3))) (*.f64 2 p)))
(fma.f64 1/4 (/.f64 (*.f64 x x) p) (fma.f64 -1/64 (/.f64 (pow.f64 x 4) (pow.f64 p 3)) (*.f64 p 2)))
(fma.f64 1/4 (/.f64 x (/.f64 p x)) (fma.f64 p 2 (*.f64 -1/64 (/.f64 (pow.f64 x 4) (pow.f64 p 3)))))
(fma.f64 1/4 (*.f64 (/.f64 x p) x) (fma.f64 -1/64 (/.f64 (pow.f64 x 4) (pow.f64 p 3)) (*.f64 p 2)))
(+.f64 (*.f64 1/4 (/.f64 (pow.f64 x 2) p)) (+.f64 (*.f64 1/512 (/.f64 (pow.f64 x 6) (pow.f64 p 5))) (+.f64 (*.f64 -1/64 (/.f64 (pow.f64 x 4) (pow.f64 p 3))) (*.f64 2 p))))
(fma.f64 1/4 (/.f64 (*.f64 x x) p) (fma.f64 1/512 (/.f64 (pow.f64 x 6) (pow.f64 p 5)) (fma.f64 -1/64 (/.f64 (pow.f64 x 4) (pow.f64 p 3)) (*.f64 p 2))))
(fma.f64 1/4 (/.f64 x (/.f64 p x)) (fma.f64 1/512 (/.f64 (pow.f64 x 6) (pow.f64 p 5)) (fma.f64 p 2 (*.f64 -1/64 (/.f64 (pow.f64 x 4) (pow.f64 p 3))))))
(fma.f64 1/4 (*.f64 (/.f64 x p) x) (fma.f64 1/512 (/.f64 (pow.f64 x 6) (pow.f64 p 5)) (fma.f64 -1/64 (/.f64 (pow.f64 x 4) (pow.f64 p 3)) (*.f64 p 2))))
(*.f64 -2 p)
(*.f64 p -2)
(+.f64 (*.f64 -1/4 (/.f64 (pow.f64 x 2) p)) (*.f64 -2 p))
(fma.f64 -1/4 (/.f64 (*.f64 x x) p) (*.f64 p -2))
(fma.f64 p -2 (*.f64 -1/4 (/.f64 x (/.f64 p x))))
(fma.f64 -1/4 (*.f64 (/.f64 x p) x) (*.f64 p -2))
(+.f64 (*.f64 -1/4 (/.f64 (pow.f64 x 2) p)) (+.f64 (*.f64 1/64 (/.f64 (pow.f64 x 4) (pow.f64 p 3))) (*.f64 -2 p)))
(fma.f64 -1/4 (/.f64 (*.f64 x x) p) (fma.f64 1/64 (/.f64 (pow.f64 x 4) (pow.f64 p 3)) (*.f64 p -2)))
(fma.f64 -1/4 (/.f64 x (/.f64 p x)) (fma.f64 p -2 (*.f64 (/.f64 (pow.f64 x 4) (pow.f64 p 3)) 1/64)))
(fma.f64 -1/4 (*.f64 (/.f64 x p) x) (fma.f64 (/.f64 (pow.f64 x 4) (pow.f64 p 3)) 1/64 (*.f64 p -2)))
(+.f64 (*.f64 -1/512 (/.f64 (pow.f64 x 6) (pow.f64 p 5))) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 x 2) p)) (+.f64 (*.f64 1/64 (/.f64 (pow.f64 x 4) (pow.f64 p 3))) (*.f64 -2 p))))
(fma.f64 -1/512 (/.f64 (pow.f64 x 6) (pow.f64 p 5)) (fma.f64 -1/4 (/.f64 (*.f64 x x) p) (fma.f64 1/64 (/.f64 (pow.f64 x 4) (pow.f64 p 3)) (*.f64 p -2))))
(fma.f64 (/.f64 (pow.f64 x 6) (pow.f64 p 5)) -1/512 (fma.f64 -1/4 (/.f64 x (/.f64 p x)) (fma.f64 p -2 (*.f64 (/.f64 (pow.f64 x 4) (pow.f64 p 3)) 1/64))))
(fma.f64 (/.f64 (pow.f64 x 6) (pow.f64 p 5)) -1/512 (fma.f64 -1/4 (*.f64 (/.f64 x p) x) (fma.f64 (/.f64 (pow.f64 x 4) (pow.f64 p 3)) 1/64 (*.f64 p -2))))
(*.f64 2 p)
(*.f64 p 2)
(+.f64 (*.f64 1/4 (/.f64 (pow.f64 x 2) p)) (*.f64 2 p))
(fma.f64 1/4 (/.f64 (*.f64 x x) p) (*.f64 p 2))
(fma.f64 p 2 (*.f64 1/4 (/.f64 x (/.f64 p x))))
(fma.f64 p 2 (/.f64 (*.f64 x 1/4) (/.f64 p x)))
(+.f64 (*.f64 1/4 (/.f64 (pow.f64 x 2) p)) (+.f64 (*.f64 -1/64 (/.f64 (pow.f64 x 4) (pow.f64 p 3))) (*.f64 2 p)))
(fma.f64 1/4 (/.f64 (*.f64 x x) p) (fma.f64 -1/64 (/.f64 (pow.f64 x 4) (pow.f64 p 3)) (*.f64 p 2)))
(fma.f64 1/4 (/.f64 x (/.f64 p x)) (fma.f64 p 2 (*.f64 -1/64 (/.f64 (pow.f64 x 4) (pow.f64 p 3)))))
(fma.f64 1/4 (*.f64 (/.f64 x p) x) (fma.f64 -1/64 (/.f64 (pow.f64 x 4) (pow.f64 p 3)) (*.f64 p 2)))
(+.f64 (*.f64 1/4 (/.f64 (pow.f64 x 2) p)) (+.f64 (*.f64 1/512 (/.f64 (pow.f64 x 6) (pow.f64 p 5))) (+.f64 (*.f64 -1/64 (/.f64 (pow.f64 x 4) (pow.f64 p 3))) (*.f64 2 p))))
(fma.f64 1/4 (/.f64 (*.f64 x x) p) (fma.f64 1/512 (/.f64 (pow.f64 x 6) (pow.f64 p 5)) (fma.f64 -1/64 (/.f64 (pow.f64 x 4) (pow.f64 p 3)) (*.f64 p 2))))
(fma.f64 1/4 (/.f64 x (/.f64 p x)) (fma.f64 1/512 (/.f64 (pow.f64 x 6) (pow.f64 p 5)) (fma.f64 p 2 (*.f64 -1/64 (/.f64 (pow.f64 x 4) (pow.f64 p 3))))))
(fma.f64 1/4 (*.f64 (/.f64 x p) x) (fma.f64 1/512 (/.f64 (pow.f64 x 6) (pow.f64 p 5)) (fma.f64 -1/64 (/.f64 (pow.f64 x 4) (pow.f64 p 3)) (*.f64 p 2))))
x
(+.f64 (*.f64 2 (/.f64 (pow.f64 p 2) x)) x)
(fma.f64 2 (/.f64 (*.f64 p p) x) x)
(fma.f64 2 (/.f64 p (/.f64 x p)) x)
(fma.f64 2 (*.f64 (/.f64 p x) p) x)
(+.f64 (*.f64 -2 (/.f64 (pow.f64 p 4) (pow.f64 x 3))) (+.f64 (*.f64 2 (/.f64 (pow.f64 p 2) x)) x))
(fma.f64 -2 (/.f64 (pow.f64 p 4) (pow.f64 x 3)) (fma.f64 2 (/.f64 (*.f64 p p) x) x))
(fma.f64 -2 (/.f64 (pow.f64 p 4) (pow.f64 x 3)) (fma.f64 2 (/.f64 p (/.f64 x p)) x))
(fma.f64 -2 (/.f64 (pow.f64 p 4) (pow.f64 x 3)) (fma.f64 2 (*.f64 (/.f64 p x) p) x))
(+.f64 (*.f64 -2 (/.f64 (pow.f64 p 4) (pow.f64 x 3))) (+.f64 (*.f64 4 (/.f64 (pow.f64 p 6) (pow.f64 x 5))) (+.f64 (*.f64 2 (/.f64 (pow.f64 p 2) x)) x)))
(fma.f64 -2 (/.f64 (pow.f64 p 4) (pow.f64 x 3)) (fma.f64 4 (/.f64 (pow.f64 p 6) (pow.f64 x 5)) (fma.f64 2 (/.f64 (*.f64 p p) x) x)))
(fma.f64 -2 (/.f64 (pow.f64 p 4) (pow.f64 x 3)) (fma.f64 4 (/.f64 (pow.f64 p 6) (pow.f64 x 5)) (fma.f64 2 (/.f64 p (/.f64 x p)) x)))
(fma.f64 -2 (/.f64 (pow.f64 p 4) (pow.f64 x 3)) (fma.f64 4 (/.f64 (pow.f64 p 6) (pow.f64 x 5)) (fma.f64 2 (*.f64 (/.f64 p x) p) x)))
(*.f64 -1 x)
(neg.f64 x)
(+.f64 (*.f64 -2 (/.f64 (pow.f64 p 2) x)) (*.f64 -1 x))
(fma.f64 -2 (/.f64 (*.f64 p p) x) (neg.f64 x))
(-.f64 (/.f64 -2 (/.f64 x (*.f64 p p))) x)
(fma.f64 -2 (*.f64 (/.f64 p x) p) (neg.f64 x))
(+.f64 (*.f64 2 (/.f64 (pow.f64 p 4) (pow.f64 x 3))) (+.f64 (*.f64 -2 (/.f64 (pow.f64 p 2) x)) (*.f64 -1 x)))
(fma.f64 2 (/.f64 (pow.f64 p 4) (pow.f64 x 3)) (fma.f64 -2 (/.f64 (*.f64 p p) x) (neg.f64 x)))
(-.f64 (fma.f64 2 (/.f64 (pow.f64 p 4) (pow.f64 x 3)) (/.f64 -2 (/.f64 x (*.f64 p p)))) x)
(fma.f64 2 (/.f64 (pow.f64 p 4) (pow.f64 x 3)) (fma.f64 -2 (*.f64 (/.f64 p x) p) (neg.f64 x)))
(+.f64 (*.f64 -4 (/.f64 (pow.f64 p 6) (pow.f64 x 5))) (+.f64 (*.f64 2 (/.f64 (pow.f64 p 4) (pow.f64 x 3))) (+.f64 (*.f64 -2 (/.f64 (pow.f64 p 2) x)) (*.f64 -1 x))))
(fma.f64 -4 (/.f64 (pow.f64 p 6) (pow.f64 x 5)) (fma.f64 2 (/.f64 (pow.f64 p 4) (pow.f64 x 3)) (fma.f64 -2 (/.f64 (*.f64 p p) x) (neg.f64 x))))
(fma.f64 -4 (/.f64 (pow.f64 p 6) (pow.f64 x 5)) (-.f64 (fma.f64 2 (/.f64 (pow.f64 p 4) (pow.f64 x 3)) (/.f64 -2 (/.f64 x (*.f64 p p)))) x))
(fma.f64 -4 (/.f64 (pow.f64 p 6) (pow.f64 x 5)) (fma.f64 2 (/.f64 (pow.f64 p 4) (pow.f64 x 3)) (fma.f64 -2 (*.f64 (/.f64 p x) p) (neg.f64 x))))
(*.f64 1/2 (/.f64 x p))
(+.f64 (*.f64 1/2 (/.f64 x p)) (*.f64 -1/16 (/.f64 (pow.f64 x 3) (pow.f64 p 3))))
(fma.f64 1/2 (/.f64 x p) (*.f64 -1/16 (/.f64 (pow.f64 x 3) (pow.f64 p 3))))
(fma.f64 1/2 (/.f64 x p) (/.f64 -1/16 (pow.f64 (/.f64 p x) 3)))
(+.f64 (*.f64 3/256 (/.f64 (pow.f64 x 5) (pow.f64 p 5))) (+.f64 (*.f64 1/2 (/.f64 x p)) (*.f64 -1/16 (/.f64 (pow.f64 x 3) (pow.f64 p 3)))))
(fma.f64 3/256 (/.f64 (pow.f64 x 5) (pow.f64 p 5)) (fma.f64 1/2 (/.f64 x p) (*.f64 -1/16 (/.f64 (pow.f64 x 3) (pow.f64 p 3)))))
(fma.f64 3/256 (/.f64 (pow.f64 x 5) (pow.f64 p 5)) (fma.f64 1/2 (/.f64 x p) (/.f64 -1/16 (pow.f64 (/.f64 p x) 3))))
(+.f64 (*.f64 3/256 (/.f64 (pow.f64 x 5) (pow.f64 p 5))) (+.f64 (*.f64 1/2 (/.f64 x p)) (+.f64 (*.f64 -5/2048 (/.f64 (pow.f64 x 7) (pow.f64 p 7))) (*.f64 -1/16 (/.f64 (pow.f64 x 3) (pow.f64 p 3))))))
(fma.f64 3/256 (/.f64 (pow.f64 x 5) (pow.f64 p 5)) (fma.f64 1/2 (/.f64 x p) (fma.f64 -5/2048 (/.f64 (pow.f64 x 7) (pow.f64 p 7)) (*.f64 -1/16 (/.f64 (pow.f64 x 3) (pow.f64 p 3))))))
(fma.f64 3/256 (/.f64 (pow.f64 x 5) (pow.f64 p 5)) (fma.f64 1/2 (/.f64 x p) (fma.f64 -1/16 (/.f64 (pow.f64 x 3) (pow.f64 p 3)) (*.f64 -5/2048 (/.f64 (pow.f64 x 7) (pow.f64 p 7))))))
(fma.f64 3/256 (/.f64 (pow.f64 x 5) (pow.f64 p 5)) (fma.f64 1/2 (/.f64 x p) (fma.f64 -5/2048 (/.f64 (pow.f64 x 7) (pow.f64 p 7)) (/.f64 -1/16 (pow.f64 (/.f64 p x) 3)))))
1
(+.f64 1 (*.f64 -2 (/.f64 (pow.f64 p 2) (pow.f64 x 2))))
(+.f64 1 (/.f64 (*.f64 -2 (*.f64 p p)) (*.f64 x x)))
(fma.f64 -2 (*.f64 (/.f64 p x) (/.f64 p x)) 1)
(+.f64 1 (+.f64 (*.f64 -2 (/.f64 (pow.f64 p 2) (pow.f64 x 2))) (*.f64 -1 (/.f64 (+.f64 (*.f64 -2 (pow.f64 p 4)) (*.f64 -4 (pow.f64 p 4))) (pow.f64 x 4)))))
(+.f64 1 (fma.f64 -2 (/.f64 (*.f64 p p) (*.f64 x x)) (neg.f64 (/.f64 (*.f64 (pow.f64 p 4) -6) (pow.f64 x 4)))))
(-.f64 (fma.f64 -2 (*.f64 (/.f64 p x) (/.f64 p x)) 1) (*.f64 (/.f64 (pow.f64 p 4) (pow.f64 x 4)) -6))
(+.f64 1 (fma.f64 (/.f64 -2 x) (*.f64 (/.f64 p x) p) (/.f64 6 (/.f64 (pow.f64 x 4) (pow.f64 p 4)))))
(+.f64 1 (+.f64 (*.f64 -2 (/.f64 (pow.f64 p 2) (pow.f64 x 2))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 8 (pow.f64 p 6)) (*.f64 -2 (*.f64 (+.f64 (*.f64 -2 (pow.f64 p 4)) (*.f64 -4 (pow.f64 p 4))) (pow.f64 p 2)))) (pow.f64 x 6))) (*.f64 -1 (/.f64 (+.f64 (*.f64 -2 (pow.f64 p 4)) (*.f64 -4 (pow.f64 p 4))) (pow.f64 x 4))))))
(+.f64 1 (fma.f64 -2 (/.f64 (*.f64 p p) (*.f64 x x)) (fma.f64 -1 (/.f64 (fma.f64 8 (pow.f64 p 6) (*.f64 -2 (*.f64 (*.f64 p p) (*.f64 (pow.f64 p 4) -6)))) (pow.f64 x 6)) (neg.f64 (/.f64 (*.f64 (pow.f64 p 4) -6) (pow.f64 x 4))))))
(+.f64 (-.f64 (/.f64 (neg.f64 (*.f64 (pow.f64 p 4) -6)) (pow.f64 x 4)) (/.f64 (fma.f64 -2 (*.f64 (pow.f64 p 6) -6) (*.f64 8 (pow.f64 p 6))) (pow.f64 x 6))) (fma.f64 -2 (*.f64 (/.f64 p x) (/.f64 p x)) 1))
(+.f64 (-.f64 (/.f64 6 (/.f64 (pow.f64 x 4) (pow.f64 p 4))) (/.f64 (fma.f64 -2 (*.f64 (pow.f64 p 6) -6) (*.f64 8 (pow.f64 p 6))) (pow.f64 x 6))) (fma.f64 -2 (*.f64 (/.f64 p x) (/.f64 p x)) 1))
-1
(-.f64 (*.f64 2 (/.f64 (pow.f64 p 2) (pow.f64 x 2))) 1)
(fma.f64 2 (/.f64 (*.f64 p p) (*.f64 x x)) -1)
(fma.f64 2 (*.f64 (/.f64 p x) (/.f64 p x)) -1)
(-.f64 (+.f64 (*.f64 2 (/.f64 (pow.f64 p 2) (pow.f64 x 2))) (*.f64 -1 (/.f64 (+.f64 (*.f64 4 (pow.f64 p 4)) (*.f64 2 (pow.f64 p 4))) (pow.f64 x 4)))) 1)
(+.f64 (fma.f64 2 (/.f64 (*.f64 p p) (*.f64 x x)) (neg.f64 (/.f64 (*.f64 (pow.f64 p 4) 6) (pow.f64 x 4)))) -1)
(fma.f64 2 (*.f64 (/.f64 p x) (/.f64 p x)) (fma.f64 -1 (*.f64 6 (/.f64 (pow.f64 p 4) (pow.f64 x 4))) -1))
(+.f64 (*.f64 (/.f64 (pow.f64 p 4) (pow.f64 x 4)) -6) (fma.f64 2 (*.f64 (/.f64 p x) (/.f64 p x)) -1))
(-.f64 (+.f64 (*.f64 2 (/.f64 (pow.f64 p 2) (pow.f64 x 2))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -8 (pow.f64 p 6)) (*.f64 -2 (*.f64 (+.f64 (*.f64 4 (pow.f64 p 4)) (*.f64 2 (pow.f64 p 4))) (pow.f64 p 2)))) (pow.f64 x 6))) (*.f64 -1 (/.f64 (+.f64 (*.f64 4 (pow.f64 p 4)) (*.f64 2 (pow.f64 p 4))) (pow.f64 x 4))))) 1)
(+.f64 (fma.f64 2 (/.f64 (*.f64 p p) (*.f64 x x)) (*.f64 -1 (+.f64 (/.f64 (fma.f64 -8 (pow.f64 p 6) (*.f64 (*.f64 -2 (*.f64 (pow.f64 p 4) 6)) (*.f64 p p))) (pow.f64 x 6)) (/.f64 (*.f64 (pow.f64 p 4) 6) (pow.f64 x 4))))) -1)
(fma.f64 2 (*.f64 (/.f64 p x) (/.f64 p x)) (fma.f64 -1 (+.f64 (*.f64 6 (/.f64 (pow.f64 p 4) (pow.f64 x 4))) (/.f64 (fma.f64 -2 (*.f64 (pow.f64 p 6) 6) (*.f64 (pow.f64 p 6) -8)) (pow.f64 x 6))) -1))
(+.f64 (-.f64 (*.f64 (/.f64 (pow.f64 p 4) (pow.f64 x 4)) -6) (/.f64 (fma.f64 -2 (*.f64 (pow.f64 p 6) 6) (*.f64 (pow.f64 p 6) -8)) (pow.f64 x 6))) (fma.f64 2 (*.f64 (/.f64 p x) (/.f64 p x)) -1))
1
(+.f64 1 (*.f64 -2 (/.f64 (pow.f64 p 2) (pow.f64 x 2))))
(+.f64 1 (/.f64 (*.f64 -2 (*.f64 p p)) (*.f64 x x)))
(fma.f64 -2 (*.f64 (/.f64 p x) (/.f64 p x)) 1)
(+.f64 1 (+.f64 (*.f64 -2 (/.f64 (pow.f64 p 2) (pow.f64 x 2))) (*.f64 6 (/.f64 (pow.f64 p 4) (pow.f64 x 4)))))
(+.f64 1 (fma.f64 -2 (/.f64 (*.f64 p p) (*.f64 x x)) (neg.f64 (/.f64 (*.f64 (pow.f64 p 4) -6) (pow.f64 x 4)))))
(-.f64 (fma.f64 -2 (*.f64 (/.f64 p x) (/.f64 p x)) 1) (*.f64 (/.f64 (pow.f64 p 4) (pow.f64 x 4)) -6))
(+.f64 1 (fma.f64 (/.f64 -2 x) (*.f64 (/.f64 p x) p) (/.f64 6 (/.f64 (pow.f64 x 4) (pow.f64 p 4)))))
(+.f64 (*.f64 -20 (/.f64 (pow.f64 p 6) (pow.f64 x 6))) (+.f64 1 (+.f64 (*.f64 -2 (/.f64 (pow.f64 p 2) (pow.f64 x 2))) (*.f64 6 (/.f64 (pow.f64 p 4) (pow.f64 x 4))))))
(fma.f64 -20 (/.f64 (pow.f64 p 6) (pow.f64 x 6)) (+.f64 1 (fma.f64 -2 (/.f64 (*.f64 p p) (*.f64 x x)) (*.f64 6 (/.f64 (pow.f64 p 4) (pow.f64 x 4))))))
(+.f64 (fma.f64 (/.f64 (pow.f64 p 6) (pow.f64 x 6)) -20 1) (fma.f64 -2 (*.f64 (/.f64 p x) (/.f64 p x)) (*.f64 6 (/.f64 (pow.f64 p 4) (pow.f64 x 4)))))
(fma.f64 (/.f64 (pow.f64 p 6) (pow.f64 x 6)) -20 (+.f64 1 (fma.f64 (/.f64 -2 x) (*.f64 (/.f64 p x) p) (/.f64 6 (/.f64 (pow.f64 x 4) (pow.f64 p 4))))))
(*.f64 1/2 (/.f64 x p))
(+.f64 (*.f64 1/2 (/.f64 x p)) (*.f64 -1/16 (/.f64 (pow.f64 x 3) (pow.f64 p 3))))
(fma.f64 1/2 (/.f64 x p) (*.f64 -1/16 (/.f64 (pow.f64 x 3) (pow.f64 p 3))))
(fma.f64 1/2 (/.f64 x p) (/.f64 -1/16 (pow.f64 (/.f64 p x) 3)))
(+.f64 (*.f64 1/2 (/.f64 x p)) (+.f64 (*.f64 -1/16 (/.f64 (pow.f64 x 3) (pow.f64 p 3))) (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/256 (pow.f64 x 5)) (*.f64 -1/128 (pow.f64 x 5))) (pow.f64 p 5)))))
(fma.f64 3/256 (/.f64 (pow.f64 x 5) (pow.f64 p 5)) (fma.f64 1/2 (/.f64 x p) (*.f64 -1/16 (/.f64 (pow.f64 x 3) (pow.f64 p 3)))))
(fma.f64 3/256 (/.f64 (pow.f64 x 5) (pow.f64 p 5)) (fma.f64 1/2 (/.f64 x p) (/.f64 -1/16 (pow.f64 (/.f64 p x) 3))))
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (*.f64 (+.f64 (*.f64 -1/256 (pow.f64 x 5)) (*.f64 -1/128 (pow.f64 x 5))) (pow.f64 x 2))) (*.f64 1/1024 (pow.f64 x 7))) (pow.f64 p 7))) (+.f64 (*.f64 1/2 (/.f64 x p)) (+.f64 (*.f64 -1/16 (/.f64 (pow.f64 x 3) (pow.f64 p 3))) (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/256 (pow.f64 x 5)) (*.f64 -1/128 (pow.f64 x 5))) (pow.f64 p 5))))))
(fma.f64 -1 (/.f64 (fma.f64 -1/8 (*.f64 (*.f64 x x) (*.f64 (pow.f64 x 5) -3/256)) (*.f64 (pow.f64 x 7) 1/1024)) (pow.f64 p 7)) (fma.f64 1/2 (/.f64 x p) (fma.f64 -1/16 (/.f64 (pow.f64 x 3) (pow.f64 p 3)) (neg.f64 (/.f64 (*.f64 (pow.f64 x 5) -3/256) (pow.f64 p 5))))))
(-.f64 (-.f64 (fma.f64 1/2 (/.f64 x p) (*.f64 -1/16 (/.f64 (pow.f64 x 3) (pow.f64 p 3)))) (/.f64 (pow.f64 x 5) (/.f64 (pow.f64 p 5) -3/256))) (/.f64 (fma.f64 -1/8 (*.f64 (pow.f64 x 5) (*.f64 -3/256 (*.f64 x x))) (*.f64 (pow.f64 x 7) 1/1024)) (pow.f64 p 7)))
(-.f64 (fma.f64 3/256 (/.f64 (pow.f64 x 5) (pow.f64 p 5)) (fma.f64 1/2 (/.f64 x p) (/.f64 -1/16 (pow.f64 (/.f64 p x) 3)))) (/.f64 (fma.f64 -1/8 (*.f64 (pow.f64 x 5) (*.f64 -3/256 (*.f64 x x))) (*.f64 (pow.f64 x 7) 1/1024)) (pow.f64 p 7)))
(*.f64 -1/2 (/.f64 x p))
(*.f64 (/.f64 x p) -1/2)
(/.f64 -1/2 (/.f64 p x))
(+.f64 (*.f64 -1/2 (/.f64 x p)) (*.f64 1/16 (/.f64 (pow.f64 x 3) (pow.f64 p 3))))
(fma.f64 -1/2 (/.f64 x p) (*.f64 (/.f64 (pow.f64 x 3) (pow.f64 p 3)) 1/16))
(fma.f64 (/.f64 x p) -1/2 (*.f64 (/.f64 (pow.f64 x 3) (pow.f64 p 3)) 1/16))
(fma.f64 (/.f64 x p) -1/2 (/.f64 1/16 (pow.f64 (/.f64 p x) 3)))
(+.f64 (*.f64 -1/128 (/.f64 (pow.f64 x 5) (pow.f64 p 5))) (+.f64 (*.f64 -1/2 (/.f64 x p)) (+.f64 (*.f64 -1/256 (/.f64 (pow.f64 x 5) (pow.f64 p 5))) (*.f64 1/16 (/.f64 (pow.f64 x 3) (pow.f64 p 3))))))
(fma.f64 -1/128 (/.f64 (pow.f64 x 5) (pow.f64 p 5)) (fma.f64 -1/2 (/.f64 x p) (fma.f64 -1/256 (/.f64 (pow.f64 x 5) (pow.f64 p 5)) (*.f64 (/.f64 (pow.f64 x 3) (pow.f64 p 3)) 1/16))))
(fma.f64 (/.f64 (pow.f64 x 5) (pow.f64 p 5)) -1/128 (fma.f64 (/.f64 x p) -1/2 (fma.f64 (/.f64 (pow.f64 x 3) (pow.f64 p 3)) 1/16 (*.f64 (/.f64 (pow.f64 x 5) (pow.f64 p 5)) -1/256))))
(fma.f64 (/.f64 (pow.f64 x 5) (pow.f64 p 5)) -1/128 (fma.f64 (/.f64 x p) -1/2 (fma.f64 (/.f64 (pow.f64 x 5) (pow.f64 p 5)) -1/256 (/.f64 1/16 (pow.f64 (/.f64 p x) 3)))))
(+.f64 (*.f64 -1/128 (/.f64 (pow.f64 x 5) (pow.f64 p 5))) (+.f64 (*.f64 -1/2 (/.f64 x p)) (+.f64 (*.f64 -1/256 (/.f64 (pow.f64 x 5) (pow.f64 p 5))) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 x 3) (pow.f64 p 3))) (+.f64 (*.f64 1/1024 (/.f64 (pow.f64 x 7) (pow.f64 p 7))) (*.f64 -1/8 (/.f64 (*.f64 (+.f64 (*.f64 -1/256 (pow.f64 x 5)) (*.f64 -1/128 (pow.f64 x 5))) (pow.f64 x 2)) (pow.f64 p 7))))))))
(fma.f64 -1/128 (/.f64 (pow.f64 x 5) (pow.f64 p 5)) (fma.f64 -1/2 (/.f64 x p) (fma.f64 -1/256 (/.f64 (pow.f64 x 5) (pow.f64 p 5)) (fma.f64 1/16 (/.f64 (pow.f64 x 3) (pow.f64 p 3)) (fma.f64 1/1024 (/.f64 (pow.f64 x 7) (pow.f64 p 7)) (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 x 5) -3/256) (/.f64 (pow.f64 p 7) (*.f64 x x)))))))))
(fma.f64 (/.f64 (pow.f64 x 5) (pow.f64 p 5)) -1/128 (fma.f64 (/.f64 x p) -1/2 (fma.f64 (/.f64 (pow.f64 x 5) (pow.f64 p 5)) -1/256 (fma.f64 (/.f64 (pow.f64 x 3) (pow.f64 p 3)) 1/16 (fma.f64 (/.f64 (pow.f64 x 7) (pow.f64 p 7)) 1/1024 (*.f64 -1/8 (/.f64 (pow.f64 x 5) (/.f64 (/.f64 (pow.f64 p 7) (*.f64 x x)) -3/256))))))))
(+.f64 (fma.f64 (/.f64 (pow.f64 x 5) (pow.f64 p 5)) -1/128 (fma.f64 (/.f64 x p) -1/2 (fma.f64 (/.f64 (pow.f64 x 5) (pow.f64 p 5)) -1/256 (/.f64 1/16 (pow.f64 (/.f64 p x) 3))))) (fma.f64 (/.f64 (pow.f64 x 7) (pow.f64 p 7)) 1/1024 (*.f64 -1/8 (*.f64 (/.f64 (pow.f64 x 5) (/.f64 (pow.f64 p 7) (*.f64 x x))) -3/256))))

localize3.0ms (0.1%)

Compiler

Compiled 5 to 5 computations (0% saved)

localize11.0ms (0.2%)

Compiler

Compiled 34 to 17 computations (50% saved)

localize15.0ms (0.2%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(*.f64 -1/2 (/.f64 x p))
2.9b
(sqrt.f64 (*.f64 1/2 (+.f64 (*.f64 -1/2 (/.f64 x p)) 1)))
Compiler

Compiled 41 to 25 computations (39% saved)

series9.0ms (0.1%)

Counts
2 → 12
Calls

12 calls:

TimeVariablePointExpression
1.0ms
x
@inf
(sqrt.f64 (*.f64 1/2 (+.f64 (*.f64 -1/2 (/.f64 x p)) 1)))
1.0ms
p
@0
(sqrt.f64 (*.f64 1/2 (+.f64 (*.f64 -1/2 (/.f64 x p)) 1)))
1.0ms
x
@0
(sqrt.f64 (*.f64 1/2 (+.f64 (*.f64 -1/2 (/.f64 x p)) 1)))
1.0ms
x
@inf
(*.f64 -1/2 (/.f64 x p))
1.0ms
x
@-inf
(sqrt.f64 (*.f64 1/2 (+.f64 (*.f64 -1/2 (/.f64 x p)) 1)))

rewrite68.0ms (1.1%)

Algorithm
batch-egg-rewrite
Rules
522×log-prod_binary64
292×pow-prod-down_binary64
280×prod-diff_binary64
276×pow2_binary64
191×pow1/3_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01120
123719
2294017
Stop Event
node limit
Counts
2 → 75
Calls
Call 1
Inputs
(sqrt.f64 (*.f64 1/2 (+.f64 (*.f64 -1/2 (/.f64 x p)) 1)))
(*.f64 -1/2 (/.f64 x p))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (sqrt.f64 (fma.f64 (/.f64 x p) -1/4 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (fma.f64 (/.f64 x p) -1/4 1/2)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (fma.f64 (/.f64 x p) -1/4 1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (fma.f64 (/.f64 x p) -1/4 1/2))))) (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (fma.f64 (/.f64 x p) -1/4 1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (sqrt.f64 (fma.f64 (/.f64 x p) -1/4 1/2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (fma.f64 (/.f64 x p) -1/4 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 (/.f64 x p) -1/4 1/2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (fma.f64 (/.f64 x p) -1/4 1/2) 1/6) (cbrt.f64 (fma.f64 (/.f64 x p) -1/4 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 (/.f64 x p) -1/4 1/2)) (pow.f64 (fma.f64 (/.f64 x p) -1/4 1/2) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (fma.f64 (/.f64 x p) -1/4 1/2) 1/4) (pow.f64 (fma.f64 (/.f64 x p) -1/4 1/2) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 1/2) (sqrt.f64 (fma.f64 -1/2 (/.f64 x p) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 -1/2 (/.f64 x p) 1)) (sqrt.f64 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 (/.f64 x p) -1/4 1/2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 (/.f64 x p) -1/4 1/2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (/.f64 x p) -1/4 1/2) 3/2) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (/.f64 x p) -1/4 1/2) 2) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (/.f64 x p) -1/4 1/2) 3) 1/6)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (/.f64 x p) -1/4 1/2) 1/6) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 (/.f64 x p) -1/4 1/2)) 3/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (/.f64 x p) -1/4 1/2) 1/4) 2)))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (sqrt.f64 (fma.f64 (/.f64 x p) -1/4 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (sqrt.f64 (fma.f64 (/.f64 x p) -1/4 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (fma.f64 (/.f64 x p) -1/4 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 (/.f64 x p) -1/4 1/2) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (sqrt.f64 (fma.f64 (/.f64 x p) -1/4 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (sqrt.f64 (fma.f64 (/.f64 x p) -1/4 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (sqrt.f64 (fma.f64 (/.f64 x p) -1/4 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 (/.f64 x p) -1/4 1/2)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (fma.f64 (/.f64 x p) -1/4 1/2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3/2 (log.f64 (fma.f64 (/.f64 x p) -1/4 1/2))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (fma.f64 (/.f64 x p) -1/4 1/2) 1/6)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 1/4 (log.f64 (fma.f64 (/.f64 x p) -1/4 1/2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (fma.f64 (/.f64 x p) -1/4 1/2)) 1) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (fma.f64 (/.f64 x p) -1/4 1/2)) 1/2) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (sqrt.f64 (fma.f64 (/.f64 x p) -1/4 1/2))) 1) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 -1/2 (/.f64 x p)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (/.f64 x p) -1/4) (*.f64 (/.f64 x p) -1/4))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 -1/2) (/.f64 x p))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 -1/2) (/.f64 x p)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (fma.f64 -1/2 (/.f64 x p) 1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1/2 (/.f64 p x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 p (*.f64 -1/2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -1/2 x) p)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 -1/2 x)) (neg.f64 p))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 -1/2 x) 1) p)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 -1/2 x) (cbrt.f64 (*.f64 p p))) (cbrt.f64 p))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 -1/2 x) (sqrt.f64 p)) (sqrt.f64 p))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 -1/2 x) 1) p)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 x) -1/2) (neg.f64 p))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -1/2 (neg.f64 x)) (neg.f64 p))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 -1/2 (/.f64 x p)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 1/4 (pow.f64 (/.f64 x p) 2)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 -1/2 (/.f64 x p))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 -1/2 (/.f64 x p))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (/.f64 x p) 3) -1/8) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 p (*.f64 -1/2 x)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 1/4 (pow.f64 (/.f64 x p) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 -1/2) (/.f64 x p)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 -1/2 (/.f64 x p)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (/.f64 x p) 3) -1/8))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 -1/2 (/.f64 x p))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (*.f64 (log1p.f64 (*.f64 -1/2 (/.f64 x p))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 -1/2 (/.f64 x p))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 -1/2 (/.f64 x p))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 -1/2 (/.f64 x p))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 -1/2 (/.f64 x p)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 -1/2 (/.f64 x p)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 -1/2 (/.f64 x p)))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 -1/2 (/.f64 x p))) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 -1/2 (/.f64 x p))) 3) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 -1/2 (/.f64 x p) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 -1/2 (/.f64 x p) 1) 1 -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 -1/2 (/.f64 x p) 1)) (pow.f64 (cbrt.f64 (fma.f64 -1/2 (/.f64 x p) 1)) 2) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 -1/2 (/.f64 x p) 1)) 2) (cbrt.f64 (fma.f64 -1/2 (/.f64 x p) 1)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 -1/2 (/.f64 x p) 1)) (sqrt.f64 (fma.f64 -1/2 (/.f64 x p) 1)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (pow.f64 (/.f64 x p) 3) -1/8 1) (/.f64 1 (-.f64 (fma.f64 1/4 (pow.f64 (/.f64 x p) 2) 1) (*.f64 -1/2 (/.f64 x p)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 1/4 (pow.f64 (/.f64 x p) 2) -1) (/.f64 1 (fma.f64 -1/2 (/.f64 x p) -1)) -1)))))

simplify54.0ms (0.9%)

Algorithm
egg-herbie
Rules
990×distribute-rgt-out_binary64
660×associate-/r*_binary64
550×associate-*r*_binary64
546×fma-def_binary64
521×associate-*l/_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
028318
180306
2251297
31203255
46741255
Stop Event
node limit
Counts
87 → 82
Calls
Call 1
Inputs
(sqrt.f64 1/2)
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p)) (sqrt.f64 1/2))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p)) (+.f64 (sqrt.f64 1/2) (*.f64 -1/32 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 2)) (pow.f64 p 2)))))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p)) (+.f64 (*.f64 -1/128 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 3)) (pow.f64 p 3))) (+.f64 (sqrt.f64 1/2) (*.f64 -1/32 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 2)) (pow.f64 p 2))))))
(sqrt.f64 1/2)
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p)) (sqrt.f64 1/2))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p)) (+.f64 (sqrt.f64 1/2) (*.f64 -1/32 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 2)) (pow.f64 p 2)))))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p)) (+.f64 (*.f64 -1/128 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 3)) (pow.f64 p 3))) (+.f64 (sqrt.f64 1/2) (*.f64 -1/32 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 2)) (pow.f64 p 2))))))
(sqrt.f64 1/2)
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p)) (sqrt.f64 1/2))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p)) (+.f64 (sqrt.f64 1/2) (*.f64 -1/32 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 2)) (pow.f64 p 2)))))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p)) (+.f64 (*.f64 -1/128 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 3)) (pow.f64 p 3))) (+.f64 (sqrt.f64 1/2) (*.f64 -1/32 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 2)) (pow.f64 p 2))))))
Outputs
(sqrt.f64 1/2)
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p)) (sqrt.f64 1/2))
(fma.f64 -1/4 (/.f64 (sqrt.f64 1/2) (/.f64 p x)) (sqrt.f64 1/2))
(fma.f64 -1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p) (sqrt.f64 1/2))
(fma.f64 -1/4 (*.f64 x (/.f64 (sqrt.f64 1/2) p)) (sqrt.f64 1/2))
(fma.f64 -1/4 (*.f64 (sqrt.f64 1/2) (/.f64 x p)) (sqrt.f64 1/2))
(*.f64 (+.f64 (*.f64 (/.f64 -1/4 p) x) 1) (sqrt.f64 1/2))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p)) (+.f64 (sqrt.f64 1/2) (*.f64 -1/32 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 2)) (pow.f64 p 2)))))
(fma.f64 -1/4 (/.f64 (sqrt.f64 1/2) (/.f64 p x)) (+.f64 (sqrt.f64 1/2) (*.f64 -1/32 (/.f64 (*.f64 (sqrt.f64 1/2) (*.f64 x x)) (*.f64 p p)))))
(fma.f64 -1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p) (fma.f64 -1/32 (/.f64 (*.f64 x x) (/.f64 (*.f64 p p) (sqrt.f64 1/2))) (sqrt.f64 1/2)))
(fma.f64 -1/4 (*.f64 x (/.f64 (sqrt.f64 1/2) p)) (fma.f64 -1/32 (/.f64 (sqrt.f64 1/2) (*.f64 (/.f64 p (*.f64 x x)) p)) (sqrt.f64 1/2)))
(+.f64 (sqrt.f64 1/2) (*.f64 (*.f64 (sqrt.f64 1/2) (/.f64 x p)) (+.f64 -1/4 (*.f64 (/.f64 -1/32 p) x))))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p)) (+.f64 (*.f64 -1/128 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 3)) (pow.f64 p 3))) (+.f64 (sqrt.f64 1/2) (*.f64 -1/32 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 2)) (pow.f64 p 2))))))
(fma.f64 -1/4 (/.f64 (sqrt.f64 1/2) (/.f64 p x)) (fma.f64 -1/128 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 3)) (pow.f64 p 3)) (+.f64 (sqrt.f64 1/2) (*.f64 -1/32 (/.f64 (*.f64 (sqrt.f64 1/2) (*.f64 x x)) (*.f64 p p))))))
(fma.f64 -1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p) (fma.f64 -1/128 (*.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 p 3)) (pow.f64 x 3)) (fma.f64 -1/32 (/.f64 (*.f64 x x) (/.f64 (*.f64 p p) (sqrt.f64 1/2))) (sqrt.f64 1/2))))
(fma.f64 -1/4 (*.f64 x (/.f64 (sqrt.f64 1/2) p)) (fma.f64 -1/32 (/.f64 (sqrt.f64 1/2) (*.f64 (/.f64 p (*.f64 x x)) p)) (fma.f64 -1/128 (/.f64 (sqrt.f64 1/2) (pow.f64 (/.f64 p x) 3)) (sqrt.f64 1/2))))
(+.f64 (sqrt.f64 1/2) (fma.f64 -1/128 (/.f64 (sqrt.f64 1/2) (pow.f64 (/.f64 p x) 3)) (*.f64 (*.f64 (sqrt.f64 1/2) (/.f64 x p)) (+.f64 -1/4 (*.f64 (/.f64 -1/32 p) x)))))
(sqrt.f64 1/2)
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p)) (sqrt.f64 1/2))
(fma.f64 -1/4 (/.f64 (sqrt.f64 1/2) (/.f64 p x)) (sqrt.f64 1/2))
(fma.f64 -1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p) (sqrt.f64 1/2))
(fma.f64 -1/4 (*.f64 x (/.f64 (sqrt.f64 1/2) p)) (sqrt.f64 1/2))
(fma.f64 -1/4 (*.f64 (sqrt.f64 1/2) (/.f64 x p)) (sqrt.f64 1/2))
(*.f64 (+.f64 (*.f64 (/.f64 -1/4 p) x) 1) (sqrt.f64 1/2))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p)) (+.f64 (sqrt.f64 1/2) (*.f64 -1/32 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 2)) (pow.f64 p 2)))))
(fma.f64 -1/4 (/.f64 (sqrt.f64 1/2) (/.f64 p x)) (+.f64 (sqrt.f64 1/2) (*.f64 -1/32 (/.f64 (*.f64 (sqrt.f64 1/2) (*.f64 x x)) (*.f64 p p)))))
(fma.f64 -1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p) (fma.f64 -1/32 (/.f64 (*.f64 x x) (/.f64 (*.f64 p p) (sqrt.f64 1/2))) (sqrt.f64 1/2)))
(fma.f64 -1/4 (*.f64 x (/.f64 (sqrt.f64 1/2) p)) (fma.f64 -1/32 (/.f64 (sqrt.f64 1/2) (*.f64 (/.f64 p (*.f64 x x)) p)) (sqrt.f64 1/2)))
(+.f64 (sqrt.f64 1/2) (*.f64 (*.f64 (sqrt.f64 1/2) (/.f64 x p)) (+.f64 -1/4 (*.f64 (/.f64 -1/32 p) x))))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p)) (+.f64 (*.f64 -1/128 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 3)) (pow.f64 p 3))) (+.f64 (sqrt.f64 1/2) (*.f64 -1/32 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 2)) (pow.f64 p 2))))))
(fma.f64 -1/4 (/.f64 (sqrt.f64 1/2) (/.f64 p x)) (fma.f64 -1/128 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 3)) (pow.f64 p 3)) (+.f64 (sqrt.f64 1/2) (*.f64 -1/32 (/.f64 (*.f64 (sqrt.f64 1/2) (*.f64 x x)) (*.f64 p p))))))
(fma.f64 -1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p) (fma.f64 -1/128 (*.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 p 3)) (pow.f64 x 3)) (fma.f64 -1/32 (/.f64 (*.f64 x x) (/.f64 (*.f64 p p) (sqrt.f64 1/2))) (sqrt.f64 1/2))))
(fma.f64 -1/4 (*.f64 x (/.f64 (sqrt.f64 1/2) p)) (fma.f64 -1/32 (/.f64 (sqrt.f64 1/2) (*.f64 (/.f64 p (*.f64 x x)) p)) (fma.f64 -1/128 (/.f64 (sqrt.f64 1/2) (pow.f64 (/.f64 p x) 3)) (sqrt.f64 1/2))))
(+.f64 (sqrt.f64 1/2) (fma.f64 -1/128 (/.f64 (sqrt.f64 1/2) (pow.f64 (/.f64 p x) 3)) (*.f64 (*.f64 (sqrt.f64 1/2) (/.f64 x p)) (+.f64 -1/4 (*.f64 (/.f64 -1/32 p) x)))))
(sqrt.f64 1/2)
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p)) (sqrt.f64 1/2))
(fma.f64 -1/4 (/.f64 (sqrt.f64 1/2) (/.f64 p x)) (sqrt.f64 1/2))
(fma.f64 -1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p) (sqrt.f64 1/2))
(fma.f64 -1/4 (*.f64 x (/.f64 (sqrt.f64 1/2) p)) (sqrt.f64 1/2))
(fma.f64 -1/4 (*.f64 (sqrt.f64 1/2) (/.f64 x p)) (sqrt.f64 1/2))
(*.f64 (+.f64 (*.f64 (/.f64 -1/4 p) x) 1) (sqrt.f64 1/2))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p)) (+.f64 (sqrt.f64 1/2) (*.f64 -1/32 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 2)) (pow.f64 p 2)))))
(fma.f64 -1/4 (/.f64 (sqrt.f64 1/2) (/.f64 p x)) (+.f64 (sqrt.f64 1/2) (*.f64 -1/32 (/.f64 (*.f64 (sqrt.f64 1/2) (*.f64 x x)) (*.f64 p p)))))
(fma.f64 -1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p) (fma.f64 -1/32 (/.f64 (*.f64 x x) (/.f64 (*.f64 p p) (sqrt.f64 1/2))) (sqrt.f64 1/2)))
(fma.f64 -1/4 (*.f64 x (/.f64 (sqrt.f64 1/2) p)) (fma.f64 -1/32 (/.f64 (sqrt.f64 1/2) (*.f64 (/.f64 p (*.f64 x x)) p)) (sqrt.f64 1/2)))
(+.f64 (sqrt.f64 1/2) (*.f64 (*.f64 (sqrt.f64 1/2) (/.f64 x p)) (+.f64 -1/4 (*.f64 (/.f64 -1/32 p) x))))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p)) (+.f64 (*.f64 -1/128 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 3)) (pow.f64 p 3))) (+.f64 (sqrt.f64 1/2) (*.f64 -1/32 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 2)) (pow.f64 p 2))))))
(fma.f64 -1/4 (/.f64 (sqrt.f64 1/2) (/.f64 p x)) (fma.f64 -1/128 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 3)) (pow.f64 p 3)) (+.f64 (sqrt.f64 1/2) (*.f64 -1/32 (/.f64 (*.f64 (sqrt.f64 1/2) (*.f64 x x)) (*.f64 p p))))))
(fma.f64 -1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p) (fma.f64 -1/128 (*.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 p 3)) (pow.f64 x 3)) (fma.f64 -1/32 (/.f64 (*.f64 x x) (/.f64 (*.f64 p p) (sqrt.f64 1/2))) (sqrt.f64 1/2))))
(fma.f64 -1/4 (*.f64 x (/.f64 (sqrt.f64 1/2) p)) (fma.f64 -1/32 (/.f64 (sqrt.f64 1/2) (*.f64 (/.f64 p (*.f64 x x)) p)) (fma.f64 -1/128 (/.f64 (sqrt.f64 1/2) (pow.f64 (/.f64 p x) 3)) (sqrt.f64 1/2))))
(+.f64 (sqrt.f64 1/2) (fma.f64 -1/128 (/.f64 (sqrt.f64 1/2) (pow.f64 (/.f64 p x) 3)) (*.f64 (*.f64 (sqrt.f64 1/2) (/.f64 x p)) (+.f64 -1/4 (*.f64 (/.f64 -1/32 p) x)))))

localize16.0ms (0.3%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.4b
(/.f64 (/.f64 x p) (sqrt.f64 1/2))
0.8b
(/.f64 (neg.f64 (sqrt.f64 2)) (/.f64 (/.f64 x p) (sqrt.f64 1/2)))
Compiler

Compiled 32 to 22 computations (31.3% saved)

series10.0ms (0.2%)

Counts
2 → 48
Calls

12 calls:

TimeVariablePointExpression
2.0ms
x
@0
(/.f64 (neg.f64 (sqrt.f64 2)) (/.f64 (/.f64 x p) (sqrt.f64 1/2)))
1.0ms
p
@0
(/.f64 (neg.f64 (sqrt.f64 2)) (/.f64 (/.f64 x p) (sqrt.f64 1/2)))
1.0ms
x
@inf
(/.f64 (neg.f64 (sqrt.f64 2)) (/.f64 (/.f64 x p) (sqrt.f64 1/2)))
1.0ms
p
@inf
(/.f64 (neg.f64 (sqrt.f64 2)) (/.f64 (/.f64 x p) (sqrt.f64 1/2)))
1.0ms
x
@inf
(/.f64 (/.f64 x p) (sqrt.f64 1/2))

rewrite110.0ms (1.8%)

Algorithm
egg-rewrite
egg-rewrite-iter-limit
batch-egg-rewrite
Rules
840×pow1_binary64
784×add-log-exp_binary64
784×log1p-expm1-u_binary64
784×expm1-log1p-u_binary64
767×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01125
124525
2350325
01116
124516
2350316
01116
079
11529
220589
Stop Event
node limit
iter limit
unsound
unsound
Counts
2 → 50
Calls
Call 1
Inputs
(/.f64 (neg.f64 (sqrt.f64 2)) (/.f64 (/.f64 x p) (sqrt.f64 1/2)))
(/.f64 (/.f64 x p) (sqrt.f64 1/2))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (sqrt.f64 2)) (/.f64 1 (/.f64 x (*.f64 (sqrt.f64 1/2) p))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (/.f64 (neg.f64 (sqrt.f64 2)) (/.f64 x p)) (sqrt.f64 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (*.f64 (/.f64 (neg.f64 (sqrt.f64 2)) (/.f64 x p)) (sqrt.f64 1/2))) (cbrt.f64 (*.f64 (/.f64 (neg.f64 (sqrt.f64 2)) (/.f64 x p)) (sqrt.f64 1/2)))) (cbrt.f64 (*.f64 (/.f64 (neg.f64 (sqrt.f64 2)) (/.f64 x p)) (sqrt.f64 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (/.f64 (neg.f64 (sqrt.f64 2)) (/.f64 x p)) (sqrt.f64 1/2))) (sqrt.f64 (*.f64 (/.f64 (neg.f64 (sqrt.f64 2)) (/.f64 x p)) (sqrt.f64 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (neg.f64 (sqrt.f64 2)) (/.f64 x p)) (sqrt.f64 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 (neg.f64 (sqrt.f64 2)) (/.f64 x p)) (sqrt.f64 1/2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (sqrt.f64 2) (/.f64 x (*.f64 (sqrt.f64 1/2) p))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (*.f64 (/.f64 (neg.f64 (sqrt.f64 2)) (/.f64 x p)) (sqrt.f64 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (*.f64 (*.f64 (/.f64 (neg.f64 (sqrt.f64 2)) (/.f64 x p)) (sqrt.f64 1/2)) (*.f64 (/.f64 (neg.f64 (sqrt.f64 2)) (/.f64 x p)) (sqrt.f64 1/2))) (*.f64 (/.f64 (neg.f64 (sqrt.f64 2)) (/.f64 x p)) (sqrt.f64 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (/.f64 (neg.f64 (sqrt.f64 2)) (/.f64 x p)) (sqrt.f64 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (/.f64 (neg.f64 (sqrt.f64 2)) (/.f64 x p)) (sqrt.f64 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (/.f64 (neg.f64 (sqrt.f64 2)) (/.f64 x p)) (sqrt.f64 1/2))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (/.f64 (/.f64 x (sqrt.f64 1/2)) p)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x (/.f64 1 (*.f64 p (sqrt.f64 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x (*.f64 (/.f64 1 p) (pow.f64 1/2 -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x p) (pow.f64 1/2 -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 x (sqrt.f64 1/2)) p) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (/.f64 x (sqrt.f64 1/2)) p))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (/.f64 x (sqrt.f64 1/2)) p)) (cbrt.f64 (/.f64 (pow.f64 (/.f64 x p) 2) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (pow.f64 (/.f64 x p) 2) 1/2)) (cbrt.f64 (/.f64 (/.f64 x (sqrt.f64 1/2)) p)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 x p)) 2) (*.f64 (cbrt.f64 (/.f64 x p)) (pow.f64 1/2 -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (/.f64 x (sqrt.f64 1/2)) p)) (sqrt.f64 (/.f64 (/.f64 x (sqrt.f64 1/2)) p)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 x p)) (*.f64 (sqrt.f64 (/.f64 x p)) (pow.f64 1/2 -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (neg.f64 x) p) (/.f64 1 (neg.f64 (sqrt.f64 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1/2 -1/2) (/.f64 x p))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (*.f64 x x)) (sqrt.f64 1/2)) (/.f64 (cbrt.f64 x) p))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 x) (sqrt.f64 1/2)) (/.f64 (sqrt.f64 x) p))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x 1) (/.f64 (/.f64 1 p) (sqrt.f64 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (/.f64 x p)) 2) 1) (/.f64 (cbrt.f64 (/.f64 x p)) (sqrt.f64 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (/.f64 x p)) 1) (/.f64 (sqrt.f64 (/.f64 x p)) (sqrt.f64 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x (cbrt.f64 1/2)) (/.f64 (/.f64 1 p) (cbrt.f64 (sqrt.f64 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cbrt.f64 1/2)) (/.f64 (/.f64 x p) (cbrt.f64 (sqrt.f64 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (/.f64 x p)) 2) (cbrt.f64 1/2)) (cbrt.f64 (/.f64 (/.f64 x (sqrt.f64 1/2)) p)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (/.f64 x p)) (cbrt.f64 1/2)) (/.f64 (sqrt.f64 (/.f64 x p)) (cbrt.f64 (sqrt.f64 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x (pow.f64 1/2 1/4)) (/.f64 (/.f64 1 p) (pow.f64 1/2 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 1/2 1/4)) (/.f64 (/.f64 x p) (pow.f64 1/2 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (/.f64 x p)) 2) (pow.f64 1/2 1/4)) (/.f64 (cbrt.f64 (/.f64 x p)) (pow.f64 1/2 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 x (sqrt.f64 1/2)) p) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (/.f64 x (sqrt.f64 1/2)) p) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (/.f64 x (sqrt.f64 1/2)) p)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (/.f64 x (sqrt.f64 1/2)) p)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sqrt.f64 1/2) (/.f64 p x)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (/.f64 x p) (neg.f64 (sqrt.f64 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (/.f64 (pow.f64 (/.f64 x p) 2) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (/.f64 x (sqrt.f64 1/2)) p)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (/.f64 x (sqrt.f64 1/2)) p) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (/.f64 x p) 3) (*.f64 1/2 (sqrt.f64 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (/.f64 x (sqrt.f64 1/2)) p)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (/.f64 x (sqrt.f64 1/2)) p)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (/.f64 x (sqrt.f64 1/2)) p)))))))

simplify59.0ms (1%)

Algorithm
egg-herbie
Rules
702×fma-def_binary64
228×fma-neg_binary64
65×associate-/r/_binary64
63×div-sub_binary64
62×associate-/l*_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
013600
124600
258600
3173600
4349600
5528600
6687600
7825600
8946600
91343600
101786600
111788600
Stop Event
saturated
Counts
98 → 54
Calls
Call 1
Inputs
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(/.f64 x (*.f64 (sqrt.f64 1/2) p))
(/.f64 x (*.f64 (sqrt.f64 1/2) p))
(/.f64 x (*.f64 (sqrt.f64 1/2) p))
(/.f64 x (*.f64 (sqrt.f64 1/2) p))
(/.f64 x (*.f64 (sqrt.f64 1/2) p))
(/.f64 x (*.f64 (sqrt.f64 1/2) p))
(/.f64 x (*.f64 (sqrt.f64 1/2) p))
(/.f64 x (*.f64 (sqrt.f64 1/2) p))
(/.f64 x (*.f64 (sqrt.f64 1/2) p))
(/.f64 x (*.f64 (sqrt.f64 1/2) p))
(/.f64 x (*.f64 (sqrt.f64 1/2) p))
(/.f64 x (*.f64 (sqrt.f64 1/2) p))
(/.f64 x (*.f64 (sqrt.f64 1/2) p))
(/.f64 x (*.f64 (sqrt.f64 1/2) p))
(/.f64 x (*.f64 (sqrt.f64 1/2) p))
(/.f64 x (*.f64 (sqrt.f64 1/2) p))
(/.f64 x (*.f64 (sqrt.f64 1/2) p))
(/.f64 x (*.f64 (sqrt.f64 1/2) p))
(/.f64 x (*.f64 (sqrt.f64 1/2) p))
(/.f64 x (*.f64 (sqrt.f64 1/2) p))
(/.f64 x (*.f64 (sqrt.f64 1/2) p))
(/.f64 x (*.f64 (sqrt.f64 1/2) p))
(/.f64 x (*.f64 (sqrt.f64 1/2) p))
(/.f64 x (*.f64 (sqrt.f64 1/2) p))
Outputs
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(neg.f64 (/.f64 (sqrt.f64 2) (/.f64 x (*.f64 (sqrt.f64 1/2) p))))
(/.f64 (neg.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p))) x)
(*.f64 (/.f64 (sqrt.f64 2) x) (neg.f64 (*.f64 (sqrt.f64 1/2) p)))
(*.f64 (*.f64 (sqrt.f64 1/2) p) (/.f64 (neg.f64 (sqrt.f64 2)) x))
(*.f64 p (/.f64 (sqrt.f64 1/2) (/.f64 x (neg.f64 (sqrt.f64 2)))))
(*.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 2) (neg.f64 (/.f64 p x))))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(neg.f64 (/.f64 (sqrt.f64 2) (/.f64 x (*.f64 (sqrt.f64 1/2) p))))
(/.f64 (neg.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p))) x)
(*.f64 (/.f64 (sqrt.f64 2) x) (neg.f64 (*.f64 (sqrt.f64 1/2) p)))
(*.f64 (*.f64 (sqrt.f64 1/2) p) (/.f64 (neg.f64 (sqrt.f64 2)) x))
(*.f64 p (/.f64 (sqrt.f64 1/2) (/.f64 x (neg.f64 (sqrt.f64 2)))))
(*.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 2) (neg.f64 (/.f64 p x))))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(neg.f64 (/.f64 (sqrt.f64 2) (/.f64 x (*.f64 (sqrt.f64 1/2) p))))
(/.f64 (neg.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p))) x)
(*.f64 (/.f64 (sqrt.f64 2) x) (neg.f64 (*.f64 (sqrt.f64 1/2) p)))
(*.f64 (*.f64 (sqrt.f64 1/2) p) (/.f64 (neg.f64 (sqrt.f64 2)) x))
(*.f64 p (/.f64 (sqrt.f64 1/2) (/.f64 x (neg.f64 (sqrt.f64 2)))))
(*.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 2) (neg.f64 (/.f64 p x))))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(neg.f64 (/.f64 (sqrt.f64 2) (/.f64 x (*.f64 (sqrt.f64 1/2) p))))
(/.f64 (neg.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p))) x)
(*.f64 (/.f64 (sqrt.f64 2) x) (neg.f64 (*.f64 (sqrt.f64 1/2) p)))
(*.f64 (*.f64 (sqrt.f64 1/2) p) (/.f64 (neg.f64 (sqrt.f64 2)) x))
(*.f64 p (/.f64 (sqrt.f64 1/2) (/.f64 x (neg.f64 (sqrt.f64 2)))))
(*.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 2) (neg.f64 (/.f64 p x))))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(neg.f64 (/.f64 (sqrt.f64 2) (/.f64 x (*.f64 (sqrt.f64 1/2) p))))
(/.f64 (neg.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p))) x)
(*.f64 (/.f64 (sqrt.f64 2) x) (neg.f64 (*.f64 (sqrt.f64 1/2) p)))
(*.f64 (*.f64 (sqrt.f64 1/2) p) (/.f64 (neg.f64 (sqrt.f64 2)) x))
(*.f64 p (/.f64 (sqrt.f64 1/2) (/.f64 x (neg.f64 (sqrt.f64 2)))))
(*.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 2) (neg.f64 (/.f64 p x))))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(neg.f64 (/.f64 (sqrt.f64 2) (/.f64 x (*.f64 (sqrt.f64 1/2) p))))
(/.f64 (neg.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p))) x)
(*.f64 (/.f64 (sqrt.f64 2) x) (neg.f64 (*.f64 (sqrt.f64 1/2) p)))
(*.f64 (*.f64 (sqrt.f64 1/2) p) (/.f64 (neg.f64 (sqrt.f64 2)) x))
(*.f64 p (/.f64 (sqrt.f64 1/2) (/.f64 x (neg.f64 (sqrt.f64 2)))))
(*.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 2) (neg.f64 (/.f64 p x))))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(neg.f64 (/.f64 (sqrt.f64 2) (/.f64 x (*.f64 (sqrt.f64 1/2) p))))
(/.f64 (neg.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p))) x)
(*.f64 (/.f64 (sqrt.f64 2) x) (neg.f64 (*.f64 (sqrt.f64 1/2) p)))
(*.f64 (*.f64 (sqrt.f64 1/2) p) (/.f64 (neg.f64 (sqrt.f64 2)) x))
(*.f64 p (/.f64 (sqrt.f64 1/2) (/.f64 x (neg.f64 (sqrt.f64 2)))))
(*.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 2) (neg.f64 (/.f64 p x))))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(neg.f64 (/.f64 (sqrt.f64 2) (/.f64 x (*.f64 (sqrt.f64 1/2) p))))
(/.f64 (neg.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p))) x)
(*.f64 (/.f64 (sqrt.f64 2) x) (neg.f64 (*.f64 (sqrt.f64 1/2) p)))
(*.f64 (*.f64 (sqrt.f64 1/2) p) (/.f64 (neg.f64 (sqrt.f64 2)) x))
(*.f64 p (/.f64 (sqrt.f64 1/2) (/.f64 x (neg.f64 (sqrt.f64 2)))))
(*.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 2) (neg.f64 (/.f64 p x))))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(neg.f64 (/.f64 (sqrt.f64 2) (/.f64 x (*.f64 (sqrt.f64 1/2) p))))
(/.f64 (neg.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p))) x)
(*.f64 (/.f64 (sqrt.f64 2) x) (neg.f64 (*.f64 (sqrt.f64 1/2) p)))
(*.f64 (*.f64 (sqrt.f64 1/2) p) (/.f64 (neg.f64 (sqrt.f64 2)) x))
(*.f64 p (/.f64 (sqrt.f64 1/2) (/.f64 x (neg.f64 (sqrt.f64 2)))))
(*.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 2) (neg.f64 (/.f64 p x))))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(neg.f64 (/.f64 (sqrt.f64 2) (/.f64 x (*.f64 (sqrt.f64 1/2) p))))
(/.f64 (neg.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p))) x)
(*.f64 (/.f64 (sqrt.f64 2) x) (neg.f64 (*.f64 (sqrt.f64 1/2) p)))
(*.f64 (*.f64 (sqrt.f64 1/2) p) (/.f64 (neg.f64 (sqrt.f64 2)) x))
(*.f64 p (/.f64 (sqrt.f64 1/2) (/.f64 x (neg.f64 (sqrt.f64 2)))))
(*.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 2) (neg.f64 (/.f64 p x))))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(neg.f64 (/.f64 (sqrt.f64 2) (/.f64 x (*.f64 (sqrt.f64 1/2) p))))
(/.f64 (neg.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p))) x)
(*.f64 (/.f64 (sqrt.f64 2) x) (neg.f64 (*.f64 (sqrt.f64 1/2) p)))
(*.f64 (*.f64 (sqrt.f64 1/2) p) (/.f64 (neg.f64 (sqrt.f64 2)) x))
(*.f64 p (/.f64 (sqrt.f64 1/2) (/.f64 x (neg.f64 (sqrt.f64 2)))))
(*.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 2) (neg.f64 (/.f64 p x))))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(neg.f64 (/.f64 (sqrt.f64 2) (/.f64 x (*.f64 (sqrt.f64 1/2) p))))
(/.f64 (neg.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p))) x)
(*.f64 (/.f64 (sqrt.f64 2) x) (neg.f64 (*.f64 (sqrt.f64 1/2) p)))
(*.f64 (*.f64 (sqrt.f64 1/2) p) (/.f64 (neg.f64 (sqrt.f64 2)) x))
(*.f64 p (/.f64 (sqrt.f64 1/2) (/.f64 x (neg.f64 (sqrt.f64 2)))))
(*.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 2) (neg.f64 (/.f64 p x))))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(neg.f64 (/.f64 (sqrt.f64 2) (/.f64 x (*.f64 (sqrt.f64 1/2) p))))
(/.f64 (neg.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p))) x)
(*.f64 (/.f64 (sqrt.f64 2) x) (neg.f64 (*.f64 (sqrt.f64 1/2) p)))
(*.f64 (*.f64 (sqrt.f64 1/2) p) (/.f64 (neg.f64 (sqrt.f64 2)) x))
(*.f64 p (/.f64 (sqrt.f64 1/2) (/.f64 x (neg.f64 (sqrt.f64 2)))))
(*.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 2) (neg.f64 (/.f64 p x))))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(neg.f64 (/.f64 (sqrt.f64 2) (/.f64 x (*.f64 (sqrt.f64 1/2) p))))
(/.f64 (neg.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p))) x)
(*.f64 (/.f64 (sqrt.f64 2) x) (neg.f64 (*.f64 (sqrt.f64 1/2) p)))
(*.f64 (*.f64 (sqrt.f64 1/2) p) (/.f64 (neg.f64 (sqrt.f64 2)) x))
(*.f64 p (/.f64 (sqrt.f64 1/2) (/.f64 x (neg.f64 (sqrt.f64 2)))))
(*.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 2) (neg.f64 (/.f64 p x))))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(neg.f64 (/.f64 (sqrt.f64 2) (/.f64 x (*.f64 (sqrt.f64 1/2) p))))
(/.f64 (neg.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p))) x)
(*.f64 (/.f64 (sqrt.f64 2) x) (neg.f64 (*.f64 (sqrt.f64 1/2) p)))
(*.f64 (*.f64 (sqrt.f64 1/2) p) (/.f64 (neg.f64 (sqrt.f64 2)) x))
(*.f64 p (/.f64 (sqrt.f64 1/2) (/.f64 x (neg.f64 (sqrt.f64 2)))))
(*.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 2) (neg.f64 (/.f64 p x))))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(neg.f64 (/.f64 (sqrt.f64 2) (/.f64 x (*.f64 (sqrt.f64 1/2) p))))
(/.f64 (neg.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p))) x)
(*.f64 (/.f64 (sqrt.f64 2) x) (neg.f64 (*.f64 (sqrt.f64 1/2) p)))
(*.f64 (*.f64 (sqrt.f64 1/2) p) (/.f64 (neg.f64 (sqrt.f64 2)) x))
(*.f64 p (/.f64 (sqrt.f64 1/2) (/.f64 x (neg.f64 (sqrt.f64 2)))))
(*.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 2) (neg.f64 (/.f64 p x))))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(neg.f64 (/.f64 (sqrt.f64 2) (/.f64 x (*.f64 (sqrt.f64 1/2) p))))
(/.f64 (neg.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p))) x)
(*.f64 (/.f64 (sqrt.f64 2) x) (neg.f64 (*.f64 (sqrt.f64 1/2) p)))
(*.f64 (*.f64 (sqrt.f64 1/2) p) (/.f64 (neg.f64 (sqrt.f64 2)) x))
(*.f64 p (/.f64 (sqrt.f64 1/2) (/.f64 x (neg.f64 (sqrt.f64 2)))))
(*.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 2) (neg.f64 (/.f64 p x))))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(neg.f64 (/.f64 (sqrt.f64 2) (/.f64 x (*.f64 (sqrt.f64 1/2) p))))
(/.f64 (neg.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p))) x)
(*.f64 (/.f64 (sqrt.f64 2) x) (neg.f64 (*.f64 (sqrt.f64 1/2) p)))
(*.f64 (*.f64 (sqrt.f64 1/2) p) (/.f64 (neg.f64 (sqrt.f64 2)) x))
(*.f64 p (/.f64 (sqrt.f64 1/2) (/.f64 x (neg.f64 (sqrt.f64 2)))))
(*.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 2) (neg.f64 (/.f64 p x))))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(neg.f64 (/.f64 (sqrt.f64 2) (/.f64 x (*.f64 (sqrt.f64 1/2) p))))
(/.f64 (neg.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p))) x)
(*.f64 (/.f64 (sqrt.f64 2) x) (neg.f64 (*.f64 (sqrt.f64 1/2) p)))
(*.f64 (*.f64 (sqrt.f64 1/2) p) (/.f64 (neg.f64 (sqrt.f64 2)) x))
(*.f64 p (/.f64 (sqrt.f64 1/2) (/.f64 x (neg.f64 (sqrt.f64 2)))))
(*.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 2) (neg.f64 (/.f64 p x))))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(neg.f64 (/.f64 (sqrt.f64 2) (/.f64 x (*.f64 (sqrt.f64 1/2) p))))
(/.f64 (neg.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p))) x)
(*.f64 (/.f64 (sqrt.f64 2) x) (neg.f64 (*.f64 (sqrt.f64 1/2) p)))
(*.f64 (*.f64 (sqrt.f64 1/2) p) (/.f64 (neg.f64 (sqrt.f64 2)) x))
(*.f64 p (/.f64 (sqrt.f64 1/2) (/.f64 x (neg.f64 (sqrt.f64 2)))))
(*.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 2) (neg.f64 (/.f64 p x))))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(neg.f64 (/.f64 (sqrt.f64 2) (/.f64 x (*.f64 (sqrt.f64 1/2) p))))
(/.f64 (neg.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p))) x)
(*.f64 (/.f64 (sqrt.f64 2) x) (neg.f64 (*.f64 (sqrt.f64 1/2) p)))
(*.f64 (*.f64 (sqrt.f64 1/2) p) (/.f64 (neg.f64 (sqrt.f64 2)) x))
(*.f64 p (/.f64 (sqrt.f64 1/2) (/.f64 x (neg.f64 (sqrt.f64 2)))))
(*.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 2) (neg.f64 (/.f64 p x))))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(neg.f64 (/.f64 (sqrt.f64 2) (/.f64 x (*.f64 (sqrt.f64 1/2) p))))
(/.f64 (neg.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p))) x)
(*.f64 (/.f64 (sqrt.f64 2) x) (neg.f64 (*.f64 (sqrt.f64 1/2) p)))
(*.f64 (*.f64 (sqrt.f64 1/2) p) (/.f64 (neg.f64 (sqrt.f64 2)) x))
(*.f64 p (/.f64 (sqrt.f64 1/2) (/.f64 x (neg.f64 (sqrt.f64 2)))))
(*.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 2) (neg.f64 (/.f64 p x))))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(neg.f64 (/.f64 (sqrt.f64 2) (/.f64 x (*.f64 (sqrt.f64 1/2) p))))
(/.f64 (neg.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p))) x)
(*.f64 (/.f64 (sqrt.f64 2) x) (neg.f64 (*.f64 (sqrt.f64 1/2) p)))
(*.f64 (*.f64 (sqrt.f64 1/2) p) (/.f64 (neg.f64 (sqrt.f64 2)) x))
(*.f64 p (/.f64 (sqrt.f64 1/2) (/.f64 x (neg.f64 (sqrt.f64 2)))))
(*.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 2) (neg.f64 (/.f64 p x))))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(neg.f64 (/.f64 (sqrt.f64 2) (/.f64 x (*.f64 (sqrt.f64 1/2) p))))
(/.f64 (neg.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p))) x)
(*.f64 (/.f64 (sqrt.f64 2) x) (neg.f64 (*.f64 (sqrt.f64 1/2) p)))
(*.f64 (*.f64 (sqrt.f64 1/2) p) (/.f64 (neg.f64 (sqrt.f64 2)) x))
(*.f64 p (/.f64 (sqrt.f64 1/2) (/.f64 x (neg.f64 (sqrt.f64 2)))))
(*.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 2) (neg.f64 (/.f64 p x))))
(/.f64 x (*.f64 (sqrt.f64 1/2) p))
(/.f64 (/.f64 x p) (sqrt.f64 1/2))
(/.f64 x (*.f64 (sqrt.f64 1/2) p))
(/.f64 (/.f64 x p) (sqrt.f64 1/2))
(/.f64 x (*.f64 (sqrt.f64 1/2) p))
(/.f64 (/.f64 x p) (sqrt.f64 1/2))
(/.f64 x (*.f64 (sqrt.f64 1/2) p))
(/.f64 (/.f64 x p) (sqrt.f64 1/2))
(/.f64 x (*.f64 (sqrt.f64 1/2) p))
(/.f64 (/.f64 x p) (sqrt.f64 1/2))
(/.f64 x (*.f64 (sqrt.f64 1/2) p))
(/.f64 (/.f64 x p) (sqrt.f64 1/2))
(/.f64 x (*.f64 (sqrt.f64 1/2) p))
(/.f64 (/.f64 x p) (sqrt.f64 1/2))
(/.f64 x (*.f64 (sqrt.f64 1/2) p))
(/.f64 (/.f64 x p) (sqrt.f64 1/2))
(/.f64 x (*.f64 (sqrt.f64 1/2) p))
(/.f64 (/.f64 x p) (sqrt.f64 1/2))
(/.f64 x (*.f64 (sqrt.f64 1/2) p))
(/.f64 (/.f64 x p) (sqrt.f64 1/2))
(/.f64 x (*.f64 (sqrt.f64 1/2) p))
(/.f64 (/.f64 x p) (sqrt.f64 1/2))
(/.f64 x (*.f64 (sqrt.f64 1/2) p))
(/.f64 (/.f64 x p) (sqrt.f64 1/2))
(/.f64 x (*.f64 (sqrt.f64 1/2) p))
(/.f64 (/.f64 x p) (sqrt.f64 1/2))
(/.f64 x (*.f64 (sqrt.f64 1/2) p))
(/.f64 (/.f64 x p) (sqrt.f64 1/2))
(/.f64 x (*.f64 (sqrt.f64 1/2) p))
(/.f64 (/.f64 x p) (sqrt.f64 1/2))
(/.f64 x (*.f64 (sqrt.f64 1/2) p))
(/.f64 (/.f64 x p) (sqrt.f64 1/2))
(/.f64 x (*.f64 (sqrt.f64 1/2) p))
(/.f64 (/.f64 x p) (sqrt.f64 1/2))
(/.f64 x (*.f64 (sqrt.f64 1/2) p))
(/.f64 (/.f64 x p) (sqrt.f64 1/2))
(/.f64 x (*.f64 (sqrt.f64 1/2) p))
(/.f64 (/.f64 x p) (sqrt.f64 1/2))
(/.f64 x (*.f64 (sqrt.f64 1/2) p))
(/.f64 (/.f64 x p) (sqrt.f64 1/2))
(/.f64 x (*.f64 (sqrt.f64 1/2) p))
(/.f64 (/.f64 x p) (sqrt.f64 1/2))
(/.f64 x (*.f64 (sqrt.f64 1/2) p))
(/.f64 (/.f64 x p) (sqrt.f64 1/2))
(/.f64 x (*.f64 (sqrt.f64 1/2) p))
(/.f64 (/.f64 x p) (sqrt.f64 1/2))
(/.f64 x (*.f64 (sqrt.f64 1/2) p))
(/.f64 (/.f64 x p) (sqrt.f64 1/2))

eval211.0ms (3.5%)

Compiler

Compiled 9075 to 6142 computations (32.3% saved)

prune70.0ms (1.2%)

Pruning

16 alts after pruning (12 fresh and 4 done)

PrunedKeptTotal
New40310413
Fresh426
Picked011
Done134
Total40816424
Error
1.9b
Counts
424 → 16
Alt Table
Click to see full alt table
StatusErrorProgram
49.0b
(/.f64 (neg.f64 (sqrt.f64 2)) (*.f64 x (*.f64 (/.f64 1 p) (pow.f64 1/2 -1/2))))
49.0b
(/.f64 (neg.f64 (sqrt.f64 2)) (/.f64 x (*.f64 (sqrt.f64 1/2) p)))
49.0b
(/.f64 (neg.f64 (sqrt.f64 2)) (/.f64 (/.f64 x p) (sqrt.f64 1/2)))
29.9b
(sqrt.f64 1/2)
59.0b
(sqrt.f64 (*.f64 1/2 (+.f64 1 -1)))
48.8b
(*.f64 (/.f64 (sqrt.f64 2) x) (neg.f64 (*.f64 p (sqrt.f64 1/2))))
49.0b
(/.f64 (neg.f64 (sqrt.f64 2)) (*.f64 (/.f64 x (pow.f64 1/2 1/4)) (/.f64 (/.f64 1 p) (pow.f64 1/2 1/4))))
49.8b
(sqrt.f64 (*.f64 1/2 (*.f64 2 (*.f64 (/.f64 p x) (/.f64 p x)))))
49.0b
(*.f64 (neg.f64 (sqrt.f64 2)) (/.f64 1 (/.f64 x (*.f64 (sqrt.f64 1/2) p))))
32.5b
(sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 x (*.f64 p 2)))))
32.7b
(sqrt.f64 (*.f64 1/2 (+.f64 (*.f64 -1/2 (/.f64 x p)) 1)))
48.8b
(*.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 2) (neg.f64 (/.f64 p x))))
43.4b
(sqrt.f64 (*.f64 1/2 2))
49.0b
(/.f64 (neg.f64 (sqrt.f64 2)) (*.f64 (pow.f64 1/2 -1/2) (/.f64 x p)))
15.8b
(sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 x (hypot.f64 (*.f64 2 p) x)))))
33.2b
(pow.f64 (pow.f64 (fma.f64 (/.f64 x p) -1/4 1/2) 1/4) 2)
Compiler

Compiled 340 to 287 computations (15.6% saved)

localize22.0ms (0.4%)

Local error

Found 1 expressions with local error:

NewErrorProgram
1.5b
(sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 x (*.f64 p 2)))))
Compiler

Compiled 41 to 30 computations (26.8% saved)

series4.0ms (0.1%)

Counts
1 → 12
Calls

6 calls:

TimeVariablePointExpression
1.0ms
x
@inf
(sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 x (*.f64 p 2)))))
1.0ms
x
@0
(sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 x (*.f64 p 2)))))
1.0ms
x
@-inf
(sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 x (*.f64 p 2)))))
1.0ms
p
@0
(sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 x (*.f64 p 2)))))
1.0ms
p
@-inf
(sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 x (*.f64 p 2)))))

rewrite57.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
539×log-prod_binary64
416×prod-diff_binary64
292×pow-prod-down_binary64
279×pow2_binary64
242×fma-def_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01115
123613
2302213
Stop Event
node limit
Counts
1 → 29
Calls
Call 1
Inputs
(sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 x (*.f64 p 2)))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (sqrt.f64 (*.f64 1/2 (fma.f64 x (/.f64 1/2 p) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (*.f64 1/2 (fma.f64 x (/.f64 1/2 p) 1))))) 2)) (log.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (*.f64 1/2 (fma.f64 x (/.f64 1/2 p) 1)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (*.f64 1/2 (fma.f64 x (/.f64 1/2 p) 1)))))) (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (*.f64 1/2 (fma.f64 x (/.f64 1/2 p) 1)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 1/2 (fma.f64 x (/.f64 1/2 p) 1))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (*.f64 1/2 (fma.f64 x (/.f64 1/2 p) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 1/2 (fma.f64 x (/.f64 1/2 p) 1))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 1/2 (fma.f64 x (/.f64 1/2 p) 1)) 1/6) (cbrt.f64 (*.f64 1/2 (fma.f64 x (/.f64 1/2 p) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 1/2 (fma.f64 x (/.f64 1/2 p) 1))) (pow.f64 (*.f64 1/2 (fma.f64 x (/.f64 1/2 p) 1)) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 1/2 (fma.f64 x (/.f64 1/2 p) 1)) 1/4) (pow.f64 (*.f64 1/2 (fma.f64 x (/.f64 1/2 p) 1)) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 1/2) (sqrt.f64 (fma.f64 x (/.f64 1/2 p) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 x (/.f64 1/2 p) 1)) (sqrt.f64 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/2) (sqrt.f64 (*.f64 1/2 (fma.f64 x (/.f64 1/2 p) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 1/2 (fma.f64 x (/.f64 1/2 p) 1)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 1/2 (fma.f64 x (/.f64 1/2 p) 1))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 1/2 (fma.f64 x (/.f64 1/2 p) 1)) 3/2) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 1/4 (pow.f64 (fma.f64 x (/.f64 1/2 p) 1) 2)) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 1/2 (fma.f64 x (/.f64 1/2 p) 1)) 3) 1/6)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 1/2 (fma.f64 x (/.f64 1/2 p) 1)) 1/6) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 1/2 (fma.f64 x (/.f64 1/2 p) 1))) 3/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 1/2 (fma.f64 x (/.f64 1/2 p) 1)) 1/4) 2)))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (sqrt.f64 (*.f64 1/2 (fma.f64 x (/.f64 1/2 p) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (sqrt.f64 (*.f64 1/2 (fma.f64 x (/.f64 1/2 p) 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (*.f64 1/2 (fma.f64 x (/.f64 1/2 p) 1))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 1/2 (fma.f64 x (/.f64 1/2 p) 1)) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 1/2 (fma.f64 x (/.f64 1/2 p) 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 1/2 (fma.f64 x (/.f64 1/2 p) 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (sqrt.f64 (*.f64 1/2 (fma.f64 x (/.f64 1/2 p) 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 1/2 (fma.f64 x (/.f64 1/2 p) 1))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 1/2 (fma.f64 x (/.f64 1/2 p) 1)))) 1))))))

simplify52.0ms (0.9%)

Algorithm
egg-herbie
Rules
990×distribute-rgt-out_binary64
661×associate-/r*_binary64
568×fma-def_binary64
553×associate-*r*_binary64
521×associate-*l/_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
028324
178318
2247297
31203255
46753255
Stop Event
node limit
Counts
41 → 36
Calls
Call 1
Inputs
(sqrt.f64 1/2)
(+.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p)))
(+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p)) (*.f64 -1/32 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 2)) (pow.f64 p 2)))))
(+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/128 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 3)) (pow.f64 p 3))) (+.f64 (*.f64 1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p)) (*.f64 -1/32 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 2)) (pow.f64 p 2))))))
(sqrt.f64 1/2)
(+.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p)))
(+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p)) (*.f64 -1/32 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 2)) (pow.f64 p 2)))))
(+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/128 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 3)) (pow.f64 p 3))) (+.f64 (*.f64 1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p)) (*.f64 -1/32 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 2)) (pow.f64 p 2))))))
(sqrt.f64 1/2)
(+.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p)))
(+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p)) (*.f64 -1/32 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 2)) (pow.f64 p 2)))))
(+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/128 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 3)) (pow.f64 p 3))) (+.f64 (*.f64 1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p)) (*.f64 -1/32 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 2)) (pow.f64 p 2))))))
Outputs
(sqrt.f64 1/2)
(+.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p)))
(+.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 (sqrt.f64 1/2) (/.f64 p x))))
(fma.f64 1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p) (sqrt.f64 1/2))
(fma.f64 1/4 (*.f64 x (/.f64 (sqrt.f64 1/2) p)) (sqrt.f64 1/2))
(fma.f64 1/4 (/.f64 (sqrt.f64 1/2) (/.f64 p x)) (sqrt.f64 1/2))
(+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p)) (*.f64 -1/32 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 2)) (pow.f64 p 2)))))
(+.f64 (sqrt.f64 1/2) (fma.f64 1/4 (/.f64 (sqrt.f64 1/2) (/.f64 p x)) (*.f64 -1/32 (/.f64 (*.f64 (sqrt.f64 1/2) (*.f64 x x)) (*.f64 p p)))))
(+.f64 (sqrt.f64 1/2) (fma.f64 1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p) (*.f64 -1/32 (/.f64 (*.f64 x x) (/.f64 (*.f64 p p) (sqrt.f64 1/2))))))
(fma.f64 1/4 (*.f64 x (/.f64 (sqrt.f64 1/2) p)) (fma.f64 -1/32 (*.f64 (*.f64 x (/.f64 (sqrt.f64 1/2) p)) (/.f64 x p)) (sqrt.f64 1/2)))
(+.f64 (sqrt.f64 1/2) (*.f64 (/.f64 (sqrt.f64 1/2) (/.f64 p x)) (+.f64 1/4 (*.f64 (/.f64 -1/32 p) x))))
(+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/128 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 3)) (pow.f64 p 3))) (+.f64 (*.f64 1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p)) (*.f64 -1/32 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 2)) (pow.f64 p 2))))))
(+.f64 (sqrt.f64 1/2) (fma.f64 1/128 (/.f64 (sqrt.f64 1/2) (/.f64 (pow.f64 p 3) (pow.f64 x 3))) (fma.f64 1/4 (/.f64 (sqrt.f64 1/2) (/.f64 p x)) (*.f64 -1/32 (/.f64 (*.f64 (sqrt.f64 1/2) (*.f64 x x)) (*.f64 p p))))))
(+.f64 (sqrt.f64 1/2) (fma.f64 1/128 (*.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 p 3)) (pow.f64 x 3)) (fma.f64 1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p) (*.f64 -1/32 (/.f64 (*.f64 x x) (/.f64 (*.f64 p p) (sqrt.f64 1/2)))))))
(fma.f64 1/128 (/.f64 (sqrt.f64 1/2) (pow.f64 (/.f64 p x) 3)) (fma.f64 1/4 (*.f64 x (/.f64 (sqrt.f64 1/2) p)) (fma.f64 -1/32 (*.f64 (*.f64 x (/.f64 (sqrt.f64 1/2) p)) (/.f64 x p)) (sqrt.f64 1/2))))
(+.f64 (*.f64 (/.f64 (sqrt.f64 1/2) (/.f64 p x)) (+.f64 1/4 (*.f64 (/.f64 -1/32 p) x))) (fma.f64 1/128 (/.f64 (sqrt.f64 1/2) (pow.f64 (/.f64 p x) 3)) (sqrt.f64 1/2)))
(sqrt.f64 1/2)
(+.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p)))
(+.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 (sqrt.f64 1/2) (/.f64 p x))))
(fma.f64 1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p) (sqrt.f64 1/2))
(fma.f64 1/4 (*.f64 x (/.f64 (sqrt.f64 1/2) p)) (sqrt.f64 1/2))
(fma.f64 1/4 (/.f64 (sqrt.f64 1/2) (/.f64 p x)) (sqrt.f64 1/2))
(+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p)) (*.f64 -1/32 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 2)) (pow.f64 p 2)))))
(+.f64 (sqrt.f64 1/2) (fma.f64 1/4 (/.f64 (sqrt.f64 1/2) (/.f64 p x)) (*.f64 -1/32 (/.f64 (*.f64 (sqrt.f64 1/2) (*.f64 x x)) (*.f64 p p)))))
(+.f64 (sqrt.f64 1/2) (fma.f64 1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p) (*.f64 -1/32 (/.f64 (*.f64 x x) (/.f64 (*.f64 p p) (sqrt.f64 1/2))))))
(fma.f64 1/4 (*.f64 x (/.f64 (sqrt.f64 1/2) p)) (fma.f64 -1/32 (*.f64 (*.f64 x (/.f64 (sqrt.f64 1/2) p)) (/.f64 x p)) (sqrt.f64 1/2)))
(+.f64 (sqrt.f64 1/2) (*.f64 (/.f64 (sqrt.f64 1/2) (/.f64 p x)) (+.f64 1/4 (*.f64 (/.f64 -1/32 p) x))))
(+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/128 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 3)) (pow.f64 p 3))) (+.f64 (*.f64 1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p)) (*.f64 -1/32 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 2)) (pow.f64 p 2))))))
(+.f64 (sqrt.f64 1/2) (fma.f64 1/128 (/.f64 (sqrt.f64 1/2) (/.f64 (pow.f64 p 3) (pow.f64 x 3))) (fma.f64 1/4 (/.f64 (sqrt.f64 1/2) (/.f64 p x)) (*.f64 -1/32 (/.f64 (*.f64 (sqrt.f64 1/2) (*.f64 x x)) (*.f64 p p))))))
(+.f64 (sqrt.f64 1/2) (fma.f64 1/128 (*.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 p 3)) (pow.f64 x 3)) (fma.f64 1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p) (*.f64 -1/32 (/.f64 (*.f64 x x) (/.f64 (*.f64 p p) (sqrt.f64 1/2)))))))
(fma.f64 1/128 (/.f64 (sqrt.f64 1/2) (pow.f64 (/.f64 p x) 3)) (fma.f64 1/4 (*.f64 x (/.f64 (sqrt.f64 1/2) p)) (fma.f64 -1/32 (*.f64 (*.f64 x (/.f64 (sqrt.f64 1/2) p)) (/.f64 x p)) (sqrt.f64 1/2))))
(+.f64 (*.f64 (/.f64 (sqrt.f64 1/2) (/.f64 p x)) (+.f64 1/4 (*.f64 (/.f64 -1/32 p) x))) (fma.f64 1/128 (/.f64 (sqrt.f64 1/2) (pow.f64 (/.f64 p x) 3)) (sqrt.f64 1/2)))
(sqrt.f64 1/2)
(+.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p)))
(+.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 (sqrt.f64 1/2) (/.f64 p x))))
(fma.f64 1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p) (sqrt.f64 1/2))
(fma.f64 1/4 (*.f64 x (/.f64 (sqrt.f64 1/2) p)) (sqrt.f64 1/2))
(fma.f64 1/4 (/.f64 (sqrt.f64 1/2) (/.f64 p x)) (sqrt.f64 1/2))
(+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p)) (*.f64 -1/32 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 2)) (pow.f64 p 2)))))
(+.f64 (sqrt.f64 1/2) (fma.f64 1/4 (/.f64 (sqrt.f64 1/2) (/.f64 p x)) (*.f64 -1/32 (/.f64 (*.f64 (sqrt.f64 1/2) (*.f64 x x)) (*.f64 p p)))))
(+.f64 (sqrt.f64 1/2) (fma.f64 1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p) (*.f64 -1/32 (/.f64 (*.f64 x x) (/.f64 (*.f64 p p) (sqrt.f64 1/2))))))
(fma.f64 1/4 (*.f64 x (/.f64 (sqrt.f64 1/2) p)) (fma.f64 -1/32 (*.f64 (*.f64 x (/.f64 (sqrt.f64 1/2) p)) (/.f64 x p)) (sqrt.f64 1/2)))
(+.f64 (sqrt.f64 1/2) (*.f64 (/.f64 (sqrt.f64 1/2) (/.f64 p x)) (+.f64 1/4 (*.f64 (/.f64 -1/32 p) x))))
(+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/128 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 3)) (pow.f64 p 3))) (+.f64 (*.f64 1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p)) (*.f64 -1/32 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 2)) (pow.f64 p 2))))))
(+.f64 (sqrt.f64 1/2) (fma.f64 1/128 (/.f64 (sqrt.f64 1/2) (/.f64 (pow.f64 p 3) (pow.f64 x 3))) (fma.f64 1/4 (/.f64 (sqrt.f64 1/2) (/.f64 p x)) (*.f64 -1/32 (/.f64 (*.f64 (sqrt.f64 1/2) (*.f64 x x)) (*.f64 p p))))))
(+.f64 (sqrt.f64 1/2) (fma.f64 1/128 (*.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 p 3)) (pow.f64 x 3)) (fma.f64 1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p) (*.f64 -1/32 (/.f64 (*.f64 x x) (/.f64 (*.f64 p p) (sqrt.f64 1/2)))))))
(fma.f64 1/128 (/.f64 (sqrt.f64 1/2) (pow.f64 (/.f64 p x) 3)) (fma.f64 1/4 (*.f64 x (/.f64 (sqrt.f64 1/2) p)) (fma.f64 -1/32 (*.f64 (*.f64 x (/.f64 (sqrt.f64 1/2) p)) (/.f64 x p)) (sqrt.f64 1/2))))
(+.f64 (*.f64 (/.f64 (sqrt.f64 1/2) (/.f64 p x)) (+.f64 1/4 (*.f64 (/.f64 -1/32 p) x))) (fma.f64 1/128 (/.f64 (sqrt.f64 1/2) (pow.f64 (/.f64 p x) 3)) (sqrt.f64 1/2)))

localize5.0ms (0.1%)

Compiler

Compiled 11 to 11 computations (0% saved)

localize13.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(*.f64 2 (*.f64 (/.f64 p x) (/.f64 p x)))
0.2b
(*.f64 (/.f64 p x) (/.f64 p x))
22.1b
(sqrt.f64 (*.f64 1/2 (*.f64 2 (*.f64 (/.f64 p x) (/.f64 p x)))))
Compiler

Compiled 48 to 17 computations (64.6% saved)

series9.0ms (0.2%)

Counts
3 → 72
Calls

18 calls:

TimeVariablePointExpression
2.0ms
p
@inf
(*.f64 2 (*.f64 (/.f64 p x) (/.f64 p x)))
1.0ms
x
@0
(*.f64 (/.f64 p x) (/.f64 p x))
1.0ms
p
@inf
(*.f64 (/.f64 p x) (/.f64 p x))
1.0ms
p
@0
(*.f64 (/.f64 p x) (/.f64 p x))
1.0ms
p
@0
(sqrt.f64 (*.f64 1/2 (*.f64 2 (*.f64 (/.f64 p x) (/.f64 p x)))))

rewrite67.0ms (1.1%)

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

Useful iterations: 1 (0.0ms)

IterNodesCost
01026
121721
2245421
Stop Event
node limit
Counts
3 → 100
Calls
Call 1
Inputs
(sqrt.f64 (*.f64 1/2 (*.f64 2 (*.f64 (/.f64 p x) (/.f64 p x)))))
(*.f64 (/.f64 p x) (/.f64 p x))
(*.f64 2 (*.f64 (/.f64 p x) (/.f64 p x)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (/.f64 p x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 p (/.f64 1 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 p x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 p x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 p x)) 2) (cbrt.f64 (/.f64 p x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 p x)) (pow.f64 (cbrt.f64 (/.f64 p x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 p) 2) (*.f64 (cbrt.f64 p) (/.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 p x) (sqrt.f64 2)) (sqrt.f64 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 1/2) (*.f64 (/.f64 p x) (sqrt.f64 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 p x)) (sqrt.f64 (/.f64 p x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 p) (*.f64 (sqrt.f64 p) (/.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 p) (/.f64 1 (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 x) p)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cbrt.f64 (pow.f64 (/.f64 p x) 4))) (sqrt.f64 (pow.f64 (cbrt.f64 (/.f64 p x)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/2) (/.f64 p x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (pow.f64 (/.f64 p x) 4)) 1/2) (pow.f64 (pow.f64 (cbrt.f64 (/.f64 p x)) 2) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 p) 2) 1) (/.f64 (cbrt.f64 p) x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 p) 1) (/.f64 (sqrt.f64 p) x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 x) 2)) (/.f64 p (cbrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 p) (pow.f64 (cbrt.f64 x) 2)) (/.f64 (sqrt.f64 p) (cbrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 p (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 p) 2) (sqrt.f64 x)) (/.f64 (cbrt.f64 p) (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 p x)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 x p))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (/.f64 x p) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (cbrt.f64 p) 2) (/.f64 x (cbrt.f64 p)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 p) (/.f64 x (sqrt.f64 p)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 p) (neg.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (*.f64 p (/.f64 p x))) (sqrt.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1 (neg.f64 (/.f64 x p)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (neg.f64 p)) (neg.f64 (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 p 1) x)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 p (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 p (sqrt.f64 x)) (sqrt.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 p x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 p x) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 p x) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 p x)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 p x)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 x p) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 p (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (/.f64 p x))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 p x)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 p x) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 p x)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 p x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 p x)))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (pow.f64 (/.f64 p x) 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 p (*.f64 x (/.f64 x p)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 p (*.f64 (/.f64 x p) x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 p (/.f64 (*.f64 x x) p))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 p (/.f64 x (/.f64 p x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 p x) (/.f64 x p))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (*.f64 (/.f64 x p) (/.f64 x p)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (*.f64 x x) (*.f64 p p)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 x (*.f64 p (/.f64 p x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 p p) (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 p) (*.f64 (/.f64 x p) (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 p (/.f64 p x)) x)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 p) (neg.f64 p)) (*.f64 (neg.f64 x) (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 p p)) (neg.f64 (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 p (/.f64 p x))) (neg.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 p) p) (*.f64 (neg.f64 x) x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 p) 1) (*.f64 (neg.f64 x) (/.f64 x p)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 p (neg.f64 p)) (*.f64 x (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 p (/.f64 p x)) 1) x)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 p (/.f64 p x)) (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 p (/.f64 p x)) (sqrt.f64 x)) (sqrt.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 p) (/.f64 p x)) (neg.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 p x) (neg.f64 p)) (neg.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 p x) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 p x) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 p x) 4) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (pow.f64 (/.f64 p x) 2) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cbrt.f64 (/.f64 p x)) 2) 3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 p x) 4))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (/.f64 p x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (pow.f64 (/.f64 p x) 2) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (/.f64 p x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (/.f64 p x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 2 (log.f64 (/.f64 p x))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 2 (pow.f64 (/.f64 p x) 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (/.f64 p x)) (/.f64 x p))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 p p) 2) (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 p (/.f64 p x)) 2) x)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 p p)) (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 p (/.f64 p x))) x)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 2 (/.f64 p x)) p) x)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 2 (/.f64 p x)) 1) (/.f64 x p))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 2 (/.f64 p x)) (neg.f64 p)) (neg.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 2 (pow.f64 (/.f64 p x) 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 2 (pow.f64 (/.f64 p x) 2)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 2 (pow.f64 (/.f64 p x) 2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 p x) (sqrt.f64 2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (pow.f64 (/.f64 p x) 4) 4))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (pow.f64 (/.f64 p x) 2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 2 (pow.f64 (/.f64 p x) 2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 2 (pow.f64 (/.f64 p x) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 2 (pow.f64 (/.f64 p x) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 2 (pow.f64 (/.f64 p x) 2))))))))

simplify78.0ms (1.3%)

Algorithm
egg-herbie
Rules
924×fma-def_binary64
724×associate-/l*_binary64
453×associate-/r*_binary64
366×unswap-sqr_binary64
360×associate-/l/_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
011664
126664
256664
3164664
4821664
55064664
66062664
76820664
Stop Event
node limit
Counts
172 → 106
Calls
Call 1
Inputs
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(*.f64 -1 (/.f64 p x))
(*.f64 -1 (/.f64 p x))
(*.f64 -1 (/.f64 p x))
(*.f64 -1 (/.f64 p x))
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(*.f64 -1 (/.f64 p x))
(*.f64 -1 (/.f64 p x))
(*.f64 -1 (/.f64 p x))
(*.f64 -1 (/.f64 p x))
(/.f64 (pow.f64 p 2) (pow.f64 x 2))
(/.f64 (pow.f64 p 2) (pow.f64 x 2))
(/.f64 (pow.f64 p 2) (pow.f64 x 2))
(/.f64 (pow.f64 p 2) (pow.f64 x 2))
(/.f64 (pow.f64 p 2) (pow.f64 x 2))
(/.f64 (pow.f64 p 2) (pow.f64 x 2))
(/.f64 (pow.f64 p 2) (pow.f64 x 2))
(/.f64 (pow.f64 p 2) (pow.f64 x 2))
(/.f64 (pow.f64 p 2) (pow.f64 x 2))
(/.f64 (pow.f64 p 2) (pow.f64 x 2))
(/.f64 (pow.f64 p 2) (pow.f64 x 2))
(/.f64 (pow.f64 p 2) (pow.f64 x 2))
(/.f64 (pow.f64 p 2) (pow.f64 x 2))
(/.f64 (pow.f64 p 2) (pow.f64 x 2))
(/.f64 (pow.f64 p 2) (pow.f64 x 2))
(/.f64 (pow.f64 p 2) (pow.f64 x 2))
(/.f64 (pow.f64 p 2) (pow.f64 x 2))
(/.f64 (pow.f64 p 2) (pow.f64 x 2))
(/.f64 (pow.f64 p 2) (pow.f64 x 2))
(/.f64 (pow.f64 p 2) (pow.f64 x 2))
(/.f64 (pow.f64 p 2) (pow.f64 x 2))
(/.f64 (pow.f64 p 2) (pow.f64 x 2))
(/.f64 (pow.f64 p 2) (pow.f64 x 2))
(/.f64 (pow.f64 p 2) (pow.f64 x 2))
(*.f64 2 (/.f64 (pow.f64 p 2) (pow.f64 x 2)))
(*.f64 2 (/.f64 (pow.f64 p 2) (pow.f64 x 2)))
(*.f64 2 (/.f64 (pow.f64 p 2) (pow.f64 x 2)))
(*.f64 2 (/.f64 (pow.f64 p 2) (pow.f64 x 2)))
(*.f64 2 (/.f64 (pow.f64 p 2) (pow.f64 x 2)))
(*.f64 2 (/.f64 (pow.f64 p 2) (pow.f64 x 2)))
(*.f64 2 (/.f64 (pow.f64 p 2) (pow.f64 x 2)))
(*.f64 2 (/.f64 (pow.f64 p 2) (pow.f64 x 2)))
(*.f64 2 (/.f64 (pow.f64 p 2) (pow.f64 x 2)))
(*.f64 2 (/.f64 (pow.f64 p 2) (pow.f64 x 2)))
(*.f64 2 (/.f64 (pow.f64 p 2) (pow.f64 x 2)))
(*.f64 2 (/.f64 (pow.f64 p 2) (pow.f64 x 2)))
(*.f64 2 (/.f64 (pow.f64 p 2) (pow.f64 x 2)))
(*.f64 2 (/.f64 (pow.f64 p 2) (pow.f64 x 2)))
(*.f64 2 (/.f64 (pow.f64 p 2) (pow.f64 x 2)))
(*.f64 2 (/.f64 (pow.f64 p 2) (pow.f64 x 2)))
(*.f64 2 (/.f64 (pow.f64 p 2) (pow.f64 x 2)))
(*.f64 2 (/.f64 (pow.f64 p 2) (pow.f64 x 2)))
(*.f64 2 (/.f64 (pow.f64 p 2) (pow.f64 x 2)))
(*.f64 2 (/.f64 (pow.f64 p 2) (pow.f64 x 2)))
(*.f64 2 (/.f64 (pow.f64 p 2) (pow.f64 x 2)))
(*.f64 2 (/.f64 (pow.f64 p 2) (pow.f64 x 2)))
(*.f64 2 (/.f64 (pow.f64 p 2) (pow.f64 x 2)))
(*.f64 2 (/.f64 (pow.f64 p 2) (pow.f64 x 2)))
Outputs
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(*.f64 -1 (/.f64 p x))
(neg.f64 (/.f64 p x))
(/.f64 (neg.f64 p) x)
(*.f64 -1 (/.f64 p x))
(neg.f64 (/.f64 p x))
(/.f64 (neg.f64 p) x)
(*.f64 -1 (/.f64 p x))
(neg.f64 (/.f64 p x))
(/.f64 (neg.f64 p) x)
(*.f64 -1 (/.f64 p x))
(neg.f64 (/.f64 p x))
(/.f64 (neg.f64 p) x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(*.f64 -1 (/.f64 p x))
(neg.f64 (/.f64 p x))
(/.f64 (neg.f64 p) x)
(*.f64 -1 (/.f64 p x))
(neg.f64 (/.f64 p x))
(/.f64 (neg.f64 p) x)
(*.f64 -1 (/.f64 p x))
(neg.f64 (/.f64 p x))
(/.f64 (neg.f64 p) x)
(*.f64 -1 (/.f64 p x))
(neg.f64 (/.f64 p x))
(/.f64 (neg.f64 p) x)
(/.f64 (pow.f64 p 2) (pow.f64 x 2))
(/.f64 (*.f64 p p) (*.f64 x x))
(*.f64 (/.f64 p x) (/.f64 p x))
(*.f64 p (/.f64 (/.f64 p x) x))
(/.f64 (pow.f64 p 2) (pow.f64 x 2))
(/.f64 (*.f64 p p) (*.f64 x x))
(*.f64 (/.f64 p x) (/.f64 p x))
(*.f64 p (/.f64 (/.f64 p x) x))
(/.f64 (pow.f64 p 2) (pow.f64 x 2))
(/.f64 (*.f64 p p) (*.f64 x x))
(*.f64 (/.f64 p x) (/.f64 p x))
(*.f64 p (/.f64 (/.f64 p x) x))
(/.f64 (pow.f64 p 2) (pow.f64 x 2))
(/.f64 (*.f64 p p) (*.f64 x x))
(*.f64 (/.f64 p x) (/.f64 p x))
(*.f64 p (/.f64 (/.f64 p x) x))
(/.f64 (pow.f64 p 2) (pow.f64 x 2))
(/.f64 (*.f64 p p) (*.f64 x x))
(*.f64 (/.f64 p x) (/.f64 p x))
(*.f64 p (/.f64 (/.f64 p x) x))
(/.f64 (pow.f64 p 2) (pow.f64 x 2))
(/.f64 (*.f64 p p) (*.f64 x x))
(*.f64 (/.f64 p x) (/.f64 p x))
(*.f64 p (/.f64 (/.f64 p x) x))
(/.f64 (pow.f64 p 2) (pow.f64 x 2))
(/.f64 (*.f64 p p) (*.f64 x x))
(*.f64 (/.f64 p x) (/.f64 p x))
(*.f64 p (/.f64 (/.f64 p x) x))
(/.f64 (pow.f64 p 2) (pow.f64 x 2))
(/.f64 (*.f64 p p) (*.f64 x x))
(*.f64 (/.f64 p x) (/.f64 p x))
(*.f64 p (/.f64 (/.f64 p x) x))
(/.f64 (pow.f64 p 2) (pow.f64 x 2))
(/.f64 (*.f64 p p) (*.f64 x x))
(*.f64 (/.f64 p x) (/.f64 p x))
(*.f64 p (/.f64 (/.f64 p x) x))
(/.f64 (pow.f64 p 2) (pow.f64 x 2))
(/.f64 (*.f64 p p) (*.f64 x x))
(*.f64 (/.f64 p x) (/.f64 p x))
(*.f64 p (/.f64 (/.f64 p x) x))
(/.f64 (pow.f64 p 2) (pow.f64 x 2))
(/.f64 (*.f64 p p) (*.f64 x x))
(*.f64 (/.f64 p x) (/.f64 p x))
(*.f64 p (/.f64 (/.f64 p x) x))
(/.f64 (pow.f64 p 2) (pow.f64 x 2))
(/.f64 (*.f64 p p) (*.f64 x x))
(*.f64 (/.f64 p x) (/.f64 p x))
(*.f64 p (/.f64 (/.f64 p x) x))
(/.f64 (pow.f64 p 2) (pow.f64 x 2))
(/.f64 (*.f64 p p) (*.f64 x x))
(*.f64 (/.f64 p x) (/.f64 p x))
(*.f64 p (/.f64 (/.f64 p x) x))
(/.f64 (pow.f64 p 2) (pow.f64 x 2))
(/.f64 (*.f64 p p) (*.f64 x x))
(*.f64 (/.f64 p x) (/.f64 p x))
(*.f64 p (/.f64 (/.f64 p x) x))
(/.f64 (pow.f64 p 2) (pow.f64 x 2))
(/.f64 (*.f64 p p) (*.f64 x x))
(*.f64 (/.f64 p x) (/.f64 p x))
(*.f64 p (/.f64 (/.f64 p x) x))
(/.f64 (pow.f64 p 2) (pow.f64 x 2))
(/.f64 (*.f64 p p) (*.f64 x x))
(*.f64 (/.f64 p x) (/.f64 p x))
(*.f64 p (/.f64 (/.f64 p x) x))
(/.f64 (pow.f64 p 2) (pow.f64 x 2))
(/.f64 (*.f64 p p) (*.f64 x x))
(*.f64 (/.f64 p x) (/.f64 p x))
(*.f64 p (/.f64 (/.f64 p x) x))
(/.f64 (pow.f64 p 2) (pow.f64 x 2))
(/.f64 (*.f64 p p) (*.f64 x x))
(*.f64 (/.f64 p x) (/.f64 p x))
(*.f64 p (/.f64 (/.f64 p x) x))
(/.f64 (pow.f64 p 2) (pow.f64 x 2))
(/.f64 (*.f64 p p) (*.f64 x x))
(*.f64 (/.f64 p x) (/.f64 p x))
(*.f64 p (/.f64 (/.f64 p x) x))
(/.f64 (pow.f64 p 2) (pow.f64 x 2))
(/.f64 (*.f64 p p) (*.f64 x x))
(*.f64 (/.f64 p x) (/.f64 p x))
(*.f64 p (/.f64 (/.f64 p x) x))
(/.f64 (pow.f64 p 2) (pow.f64 x 2))
(/.f64 (*.f64 p p) (*.f64 x x))
(*.f64 (/.f64 p x) (/.f64 p x))
(*.f64 p (/.f64 (/.f64 p x) x))
(/.f64 (pow.f64 p 2) (pow.f64 x 2))
(/.f64 (*.f64 p p) (*.f64 x x))
(*.f64 (/.f64 p x) (/.f64 p x))
(*.f64 p (/.f64 (/.f64 p x) x))
(/.f64 (pow.f64 p 2) (pow.f64 x 2))
(/.f64 (*.f64 p p) (*.f64 x x))
(*.f64 (/.f64 p x) (/.f64 p x))
(*.f64 p (/.f64 (/.f64 p x) x))
(/.f64 (pow.f64 p 2) (pow.f64 x 2))
(/.f64 (*.f64 p p) (*.f64 x x))
(*.f64 (/.f64 p x) (/.f64 p x))
(*.f64 p (/.f64 (/.f64 p x) x))
(*.f64 2 (/.f64 (pow.f64 p 2) (pow.f64 x 2)))
(*.f64 2 (/.f64 (*.f64 p p) (*.f64 x x)))
(*.f64 2 (*.f64 (/.f64 p x) (/.f64 p x)))
(*.f64 (/.f64 p x) (*.f64 (/.f64 p x) 2))
(*.f64 p (*.f64 2 (/.f64 (/.f64 p x) x)))
(*.f64 2 (/.f64 (pow.f64 p 2) (pow.f64 x 2)))
(*.f64 2 (/.f64 (*.f64 p p) (*.f64 x x)))
(*.f64 2 (*.f64 (/.f64 p x) (/.f64 p x)))
(*.f64 (/.f64 p x) (*.f64 (/.f64 p x) 2))
(*.f64 p (*.f64 2 (/.f64 (/.f64 p x) x)))
(*.f64 2 (/.f64 (pow.f64 p 2) (pow.f64 x 2)))
(*.f64 2 (/.f64 (*.f64 p p) (*.f64 x x)))
(*.f64 2 (*.f64 (/.f64 p x) (/.f64 p x)))
(*.f64 (/.f64 p x) (*.f64 (/.f64 p x) 2))
(*.f64 p (*.f64 2 (/.f64 (/.f64 p x) x)))
(*.f64 2 (/.f64 (pow.f64 p 2) (pow.f64 x 2)))
(*.f64 2 (/.f64 (*.f64 p p) (*.f64 x x)))
(*.f64 2 (*.f64 (/.f64 p x) (/.f64 p x)))
(*.f64 (/.f64 p x) (*.f64 (/.f64 p x) 2))
(*.f64 p (*.f64 2 (/.f64 (/.f64 p x) x)))
(*.f64 2 (/.f64 (pow.f64 p 2) (pow.f64 x 2)))
(*.f64 2 (/.f64 (*.f64 p p) (*.f64 x x)))
(*.f64 2 (*.f64 (/.f64 p x) (/.f64 p x)))
(*.f64 (/.f64 p x) (*.f64 (/.f64 p x) 2))
(*.f64 p (*.f64 2 (/.f64 (/.f64 p x) x)))
(*.f64 2 (/.f64 (pow.f64 p 2) (pow.f64 x 2)))
(*.f64 2 (/.f64 (*.f64 p p) (*.f64 x x)))
(*.f64 2 (*.f64 (/.f64 p x) (/.f64 p x)))
(*.f64 (/.f64 p x) (*.f64 (/.f64 p x) 2))
(*.f64 p (*.f64 2 (/.f64 (/.f64 p x) x)))
(*.f64 2 (/.f64 (pow.f64 p 2) (pow.f64 x 2)))
(*.f64 2 (/.f64 (*.f64 p p) (*.f64 x x)))
(*.f64 2 (*.f64 (/.f64 p x) (/.f64 p x)))
(*.f64 (/.f64 p x) (*.f64 (/.f64 p x) 2))
(*.f64 p (*.f64 2 (/.f64 (/.f64 p x) x)))
(*.f64 2 (/.f64 (pow.f64 p 2) (pow.f64 x 2)))
(*.f64 2 (/.f64 (*.f64 p p) (*.f64 x x)))
(*.f64 2 (*.f64 (/.f64 p x) (/.f64 p x)))
(*.f64 (/.f64 p x) (*.f64 (/.f64 p x) 2))
(*.f64 p (*.f64 2 (/.f64 (/.f64 p x) x)))
(*.f64 2 (/.f64 (pow.f64 p 2) (pow.f64 x 2)))
(*.f64 2 (/.f64 (*.f64 p p) (*.f64 x x)))
(*.f64 2 (*.f64 (/.f64 p x) (/.f64 p x)))
(*.f64 (/.f64 p x) (*.f64 (/.f64 p x) 2))
(*.f64 p (*.f64 2 (/.f64 (/.f64 p x) x)))
(*.f64 2 (/.f64 (pow.f64 p 2) (pow.f64 x 2)))
(*.f64 2 (/.f64 (*.f64 p p) (*.f64 x x)))
(*.f64 2 (*.f64 (/.f64 p x) (/.f64 p x)))
(*.f64 (/.f64 p x) (*.f64 (/.f64 p x) 2))
(*.f64 p (*.f64 2 (/.f64 (/.f64 p x) x)))
(*.f64 2 (/.f64 (pow.f64 p 2) (pow.f64 x 2)))
(*.f64 2 (/.f64 (*.f64 p p) (*.f64 x x)))
(*.f64 2 (*.f64 (/.f64 p x) (/.f64 p x)))
(*.f64 (/.f64 p x) (*.f64 (/.f64 p x) 2))
(*.f64 p (*.f64 2 (/.f64 (/.f64 p x) x)))
(*.f64 2 (/.f64 (pow.f64 p 2) (pow.f64 x 2)))
(*.f64 2 (/.f64 (*.f64 p p) (*.f64 x x)))
(*.f64 2 (*.f64 (/.f64 p x) (/.f64 p x)))
(*.f64 (/.f64 p x) (*.f64 (/.f64 p x) 2))
(*.f64 p (*.f64 2 (/.f64 (/.f64 p x) x)))
(*.f64 2 (/.f64 (pow.f64 p 2) (pow.f64 x 2)))
(*.f64 2 (/.f64 (*.f64 p p) (*.f64 x x)))
(*.f64 2 (*.f64 (/.f64 p x) (/.f64 p x)))
(*.f64 (/.f64 p x) (*.f64 (/.f64 p x) 2))
(*.f64 p (*.f64 2 (/.f64 (/.f64 p x) x)))
(*.f64 2 (/.f64 (pow.f64 p 2) (pow.f64 x 2)))
(*.f64 2 (/.f64 (*.f64 p p) (*.f64 x x)))
(*.f64 2 (*.f64 (/.f64 p x) (/.f64 p x)))
(*.f64 (/.f64 p x) (*.f64 (/.f64 p x) 2))
(*.f64 p (*.f64 2 (/.f64 (/.f64 p x) x)))
(*.f64 2 (/.f64 (pow.f64 p 2) (pow.f64 x 2)))
(*.f64 2 (/.f64 (*.f64 p p) (*.f64 x x)))
(*.f64 2 (*.f64 (/.f64 p x) (/.f64 p x)))
(*.f64 (/.f64 p x) (*.f64 (/.f64 p x) 2))
(*.f64 p (*.f64 2 (/.f64 (/.f64 p x) x)))
(*.f64 2 (/.f64 (pow.f64 p 2) (pow.f64 x 2)))
(*.f64 2 (/.f64 (*.f64 p p) (*.f64 x x)))
(*.f64 2 (*.f64 (/.f64 p x) (/.f64 p x)))
(*.f64 (/.f64 p x) (*.f64 (/.f64 p x) 2))
(*.f64 p (*.f64 2 (/.f64 (/.f64 p x) x)))
(*.f64 2 (/.f64 (pow.f64 p 2) (pow.f64 x 2)))
(*.f64 2 (/.f64 (*.f64 p p) (*.f64 x x)))
(*.f64 2 (*.f64 (/.f64 p x) (/.f64 p x)))
(*.f64 (/.f64 p x) (*.f64 (/.f64 p x) 2))
(*.f64 p (*.f64 2 (/.f64 (/.f64 p x) x)))
(*.f64 2 (/.f64 (pow.f64 p 2) (pow.f64 x 2)))
(*.f64 2 (/.f64 (*.f64 p p) (*.f64 x x)))
(*.f64 2 (*.f64 (/.f64 p x) (/.f64 p x)))
(*.f64 (/.f64 p x) (*.f64 (/.f64 p x) 2))
(*.f64 p (*.f64 2 (/.f64 (/.f64 p x) x)))
(*.f64 2 (/.f64 (pow.f64 p 2) (pow.f64 x 2)))
(*.f64 2 (/.f64 (*.f64 p p) (*.f64 x x)))
(*.f64 2 (*.f64 (/.f64 p x) (/.f64 p x)))
(*.f64 (/.f64 p x) (*.f64 (/.f64 p x) 2))
(*.f64 p (*.f64 2 (/.f64 (/.f64 p x) x)))
(*.f64 2 (/.f64 (pow.f64 p 2) (pow.f64 x 2)))
(*.f64 2 (/.f64 (*.f64 p p) (*.f64 x x)))
(*.f64 2 (*.f64 (/.f64 p x) (/.f64 p x)))
(*.f64 (/.f64 p x) (*.f64 (/.f64 p x) 2))
(*.f64 p (*.f64 2 (/.f64 (/.f64 p x) x)))
(*.f64 2 (/.f64 (pow.f64 p 2) (pow.f64 x 2)))
(*.f64 2 (/.f64 (*.f64 p p) (*.f64 x x)))
(*.f64 2 (*.f64 (/.f64 p x) (/.f64 p x)))
(*.f64 (/.f64 p x) (*.f64 (/.f64 p x) 2))
(*.f64 p (*.f64 2 (/.f64 (/.f64 p x) x)))
(*.f64 2 (/.f64 (pow.f64 p 2) (pow.f64 x 2)))
(*.f64 2 (/.f64 (*.f64 p p) (*.f64 x x)))
(*.f64 2 (*.f64 (/.f64 p x) (/.f64 p x)))
(*.f64 (/.f64 p x) (*.f64 (/.f64 p x) 2))
(*.f64 p (*.f64 2 (/.f64 (/.f64 p x) x)))
(*.f64 2 (/.f64 (pow.f64 p 2) (pow.f64 x 2)))
(*.f64 2 (/.f64 (*.f64 p p) (*.f64 x x)))
(*.f64 2 (*.f64 (/.f64 p x) (/.f64 p x)))
(*.f64 (/.f64 p x) (*.f64 (/.f64 p x) 2))
(*.f64 p (*.f64 2 (/.f64 (/.f64 p x) x)))
(*.f64 2 (/.f64 (pow.f64 p 2) (pow.f64 x 2)))
(*.f64 2 (/.f64 (*.f64 p p) (*.f64 x x)))
(*.f64 2 (*.f64 (/.f64 p x) (/.f64 p x)))
(*.f64 (/.f64 p x) (*.f64 (/.f64 p x) 2))
(*.f64 p (*.f64 2 (/.f64 (/.f64 p x) x)))

localize16.0ms (0.3%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.3b
(*.f64 (/.f64 (sqrt.f64 2) x) (neg.f64 (*.f64 p (sqrt.f64 1/2))))
0.4b
(*.f64 p (sqrt.f64 1/2))
0.4b
(/.f64 (sqrt.f64 2) x)
Compiler

Compiled 33 to 26 computations (21.2% saved)

series4.0ms (0.1%)

Counts
3 → 36
Calls

12 calls:

TimeVariablePointExpression
1.0ms
x
@0
(/.f64 (sqrt.f64 2) x)
0.0ms
x
@-inf
(/.f64 (sqrt.f64 2) x)
0.0ms
p
@inf
(*.f64 p (sqrt.f64 1/2))
0.0ms
x
@inf
(/.f64 (sqrt.f64 2) x)
0.0ms
p
@-inf
(*.f64 p (sqrt.f64 1/2))

rewrite70.0ms (1.2%)

Algorithm
batch-egg-rewrite
Rules
534×log-prod_binary64
405×exp-prod_binary64
321×pow-prod-down_binary64
269×pow-unpow_binary64
258×pow2_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01128
123526
2294226
Stop Event
node limit
Counts
3 → 121
Calls
Call 1
Inputs
(/.f64 (sqrt.f64 2) x)
(*.f64 p (sqrt.f64 1/2))
(*.f64 (/.f64 (sqrt.f64 2) x) (neg.f64 (*.f64 p (sqrt.f64 1/2))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (sqrt.f64 2) x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 (sqrt.f64 2) x))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 (sqrt.f64 2) x)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 (sqrt.f64 2) x)))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 (sqrt.f64 2) x)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (sqrt.f64 2) x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 2) (/.f64 1 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 2) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (sqrt.f64 2) x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (sqrt.f64 2) x)) (cbrt.f64 (/.f64 2 (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 2 (*.f64 x x))) (cbrt.f64 (/.f64 (sqrt.f64 2) x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 2) (*.f64 (pow.f64 2 1/6) (/.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (sqrt.f64 2) x)) (sqrt.f64 (/.f64 (sqrt.f64 2) x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 2 1/4) (*.f64 (pow.f64 2 1/4) (/.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (sqrt.f64 2)) (/.f64 1 (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 x) (sqrt.f64 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 2) 1) (/.f64 (pow.f64 2 1/6) x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 2 1/4) 1) (/.f64 (pow.f64 2 1/4) x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 x) -2) (/.f64 (sqrt.f64 2) (cbrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 2) (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 (/.f64 (sqrt.f64 2) x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 2 1/4) (pow.f64 (cbrt.f64 x) 2)) (/.f64 (pow.f64 2 1/4) (cbrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 x -1/2) (/.f64 (sqrt.f64 2) (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 2) (sqrt.f64 x)) (/.f64 (pow.f64 2 1/6) (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sqrt.f64 2) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 2 (*.f64 x x)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (sqrt.f64 2) x) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (sqrt.f64 2) x)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (sqrt.f64 2) x)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 x (sqrt.f64 2)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (/.f64 (sqrt.f64 2) x)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 2 3/2) (pow.f64 x 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 x (sqrt.f64 2)) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (/.f64 (sqrt.f64 2) x))) 2)) (cbrt.f64 (log.f64 (/.f64 (sqrt.f64 2) x))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (/.f64 (sqrt.f64 2) x)))) (sqrt.f64 (log.f64 (/.f64 (sqrt.f64 2) x))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (sqrt.f64 2) (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (/.f64 2 (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (sqrt.f64 2) x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (sqrt.f64 2) x))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (sqrt.f64 2) x) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 2 3/2) (pow.f64 x 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (sqrt.f64 2) x)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (sqrt.f64 2) x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (sqrt.f64 2) x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (sqrt.f64 2) x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (/.f64 (sqrt.f64 2) x))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 (sqrt.f64 2) x))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 (sqrt.f64 2) x))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 x (sqrt.f64 2))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 (sqrt.f64 2) x)) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (*.f64 (log.f64 2) 1/2) (log.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (*.f64 (log.f64 (sqrt.f64 2)) 1) (log.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (log.f64 (sqrt.f64 2)) (*.f64 (log.f64 x) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (*.f64 (log.f64 2) 1/2) (*.f64 (log.f64 x) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (*.f64 (log.f64 (sqrt.f64 2)) 1) (*.f64 (log.f64 x) 1)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 p (sqrt.f64 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 p) (sqrt.f64 1/2))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 p) (sqrt.f64 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 p) (sqrt.f64 1/2)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 p) (sqrt.f64 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (*.f64 p (sqrt.f64 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 p (sqrt.f64 1/2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 0 (pow.f64 (*.f64 p (sqrt.f64 1/2)) 3)) (+.f64 0 (fma.f64 1/2 (*.f64 p p) (*.f64 0 (*.f64 p (sqrt.f64 1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 0 (*.f64 1/2 (*.f64 p p))) (*.f64 p (sqrt.f64 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 p (sqrt.f64 1/2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 1/2 (*.f64 p p)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 p (sqrt.f64 1/2)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 p (sqrt.f64 1/2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 p (sqrt.f64 1/2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (*.f64 p (sqrt.f64 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 p (sqrt.f64 1/2)))) 2)) (cbrt.f64 (log.f64 (*.f64 p (sqrt.f64 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 p (sqrt.f64 1/2))))) (sqrt.f64 (log.f64 (*.f64 p (sqrt.f64 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 p (sqrt.f64 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 1/2 (*.f64 p p)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 p) (sqrt.f64 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 p (sqrt.f64 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 1 (+.f64 1 (expm1.f64 (*.f64 p (sqrt.f64 1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 p (sqrt.f64 1/2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 p (sqrt.f64 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 p (sqrt.f64 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 p (sqrt.f64 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 p (sqrt.f64 1/2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 p (sqrt.f64 1/2)))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 p (sqrt.f64 1/2)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 p (sqrt.f64 1/2)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 p (sqrt.f64 1/2))) 1) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (/.f64 (sqrt.f64 2) x) (*.f64 p (sqrt.f64 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (sqrt.f64 1/2)) (*.f64 p (/.f64 (sqrt.f64 2) x)))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sqrt.f64 1/2)) (*.f64 p (/.f64 (sqrt.f64 2) x))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sqrt.f64 1/2)) (*.f64 p (/.f64 (sqrt.f64 2) x))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sqrt.f64 1/2)) (*.f64 p (/.f64 (sqrt.f64 2) x))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (*.f64 (/.f64 (sqrt.f64 2) x) (*.f64 p (sqrt.f64 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (/.f64 (sqrt.f64 2) x) (*.f64 p (sqrt.f64 1/2))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 2) (/.f64 x (*.f64 p (sqrt.f64 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 p (sqrt.f64 1/2)) (/.f64 x (sqrt.f64 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 x (*.f64 (sqrt.f64 2) (*.f64 p (sqrt.f64 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 2) (*.f64 p (sqrt.f64 1/2))) x)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 2) (*.f64 p (sqrt.f64 1/2))) (neg.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 p (sqrt.f64 1/2))) 1) x)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 p (sqrt.f64 1/2))) (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 p (sqrt.f64 1/2))) (sqrt.f64 x)) (sqrt.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (sqrt.f64 2)) (*.f64 p (sqrt.f64 1/2))) (neg.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 p (sqrt.f64 1/2)) (neg.f64 (sqrt.f64 2))) (neg.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 (sqrt.f64 2) x) (*.f64 p (sqrt.f64 1/2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 2 (*.f64 x x)) (*.f64 1/2 (*.f64 p p))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (/.f64 (sqrt.f64 2) x) (*.f64 p (sqrt.f64 1/2))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (/.f64 (sqrt.f64 2) x) (*.f64 p (sqrt.f64 1/2)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (/.f64 (sqrt.f64 2) x) (*.f64 p (sqrt.f64 1/2)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (*.f64 (/.f64 (sqrt.f64 2) x) (*.f64 p (sqrt.f64 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 x (*.f64 (sqrt.f64 2) (*.f64 p (sqrt.f64 1/2)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (/.f64 (sqrt.f64 2) x) (*.f64 p (sqrt.f64 1/2))))) 2)) (cbrt.f64 (log.f64 (*.f64 (/.f64 (sqrt.f64 2) x) (*.f64 p (sqrt.f64 1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 (/.f64 (sqrt.f64 2) x) (*.f64 p (sqrt.f64 1/2)))))) (sqrt.f64 (log.f64 (*.f64 (/.f64 (sqrt.f64 2) x) (*.f64 p (sqrt.f64 1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 (/.f64 (sqrt.f64 2) x) (*.f64 p (sqrt.f64 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (/.f64 2 (*.f64 x x)) (*.f64 1/2 (*.f64 p p))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (sqrt.f64 1/2)) (*.f64 p (/.f64 (sqrt.f64 2) x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (/.f64 (sqrt.f64 2) x) (*.f64 p (sqrt.f64 1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 1 (+.f64 1 (expm1.f64 (*.f64 (/.f64 (sqrt.f64 2) x) (*.f64 p (sqrt.f64 1/2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (/.f64 (sqrt.f64 2) x) (*.f64 p (sqrt.f64 1/2))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (/.f64 (sqrt.f64 2) x) (*.f64 p (sqrt.f64 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (/.f64 (sqrt.f64 2) x) (*.f64 p (sqrt.f64 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (/.f64 (sqrt.f64 2) x) (*.f64 p (sqrt.f64 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (/.f64 (sqrt.f64 2) x) (*.f64 p (sqrt.f64 1/2)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 (/.f64 (sqrt.f64 2) x) (*.f64 p (sqrt.f64 1/2))))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (/.f64 (sqrt.f64 2) x) (*.f64 p (sqrt.f64 1/2))))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (/.f64 (sqrt.f64 2) x) (*.f64 p (sqrt.f64 1/2))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (/.f64 (sqrt.f64 2) x) (*.f64 p (sqrt.f64 1/2)))) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (*.f64 (log.f64 (*.f64 p (sqrt.f64 1/2))) 1) (log.f64 (/.f64 x (sqrt.f64 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (log.f64 (*.f64 (sqrt.f64 2) (*.f64 p (sqrt.f64 1/2)))) (*.f64 (log.f64 x) 1)))))))

simplify56.0ms (0.9%)

Algorithm
egg-herbie
Rules
704×fma-def_binary64
228×fma-neg_binary64
66×associate-/r/_binary64
63×associate-/l*_binary64
63×div-sub_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
012456
122456
256456
3166456
4346456
5530456
6689456
7827456
8948456
91345456
101788456
111790456
Stop Event
saturated
Counts
157 → 124
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 1/2) p)
(*.f64 (sqrt.f64 1/2) p)
(*.f64 (sqrt.f64 1/2) p)
(*.f64 (sqrt.f64 1/2) p)
(*.f64 (sqrt.f64 1/2) p)
(*.f64 (sqrt.f64 1/2) p)
(*.f64 (sqrt.f64 1/2) p)
(*.f64 (sqrt.f64 1/2) p)
(*.f64 (sqrt.f64 1/2) p)
(*.f64 (sqrt.f64 1/2) p)
(*.f64 (sqrt.f64 1/2) p)
(*.f64 (sqrt.f64 1/2) p)
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
Outputs
(*.f64 (sqrt.f64 1/2) p)
(*.f64 (sqrt.f64 1/2) p)
(*.f64 (sqrt.f64 1/2) p)
(*.f64 (sqrt.f64 1/2) p)
(*.f64 (sqrt.f64 1/2) p)
(*.f64 (sqrt.f64 1/2) p)
(*.f64 (sqrt.f64 1/2) p)
(*.f64 (sqrt.f64 1/2) p)
(*.f64 (sqrt.f64 1/2) p)
(*.f64 (sqrt.f64 1/2) p)
(*.f64 (sqrt.f64 1/2) p)
(*.f64 (sqrt.f64 1/2) p)
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(neg.f64 (/.f64 (sqrt.f64 2) (/.f64 x (*.f64 (sqrt.f64 1/2) p))))
(/.f64 (neg.f64 (*.f64 p (*.f64 (sqrt.f64 1/2) (sqrt.f64 2)))) x)
(*.f64 (/.f64 (sqrt.f64 2) x) (neg.f64 (*.f64 (sqrt.f64 1/2) p)))
(*.f64 (/.f64 (sqrt.f64 2) x) (*.f64 (sqrt.f64 1/2) (neg.f64 p)))
(*.f64 (sqrt.f64 1/2) (*.f64 (/.f64 (neg.f64 p) x) (sqrt.f64 2)))
(*.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 2) (/.f64 (neg.f64 p) x)))
(/.f64 (sqrt.f64 1/2) (/.f64 (/.f64 x (neg.f64 p)) (sqrt.f64 2)))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(neg.f64 (/.f64 (sqrt.f64 2) (/.f64 x (*.f64 (sqrt.f64 1/2) p))))
(/.f64 (neg.f64 (*.f64 p (*.f64 (sqrt.f64 1/2) (sqrt.f64 2)))) x)
(*.f64 (/.f64 (sqrt.f64 2) x) (neg.f64 (*.f64 (sqrt.f64 1/2) p)))
(*.f64 (/.f64 (sqrt.f64 2) x) (*.f64 (sqrt.f64 1/2) (neg.f64 p)))
(*.f64 (sqrt.f64 1/2) (*.f64 (/.f64 (neg.f64 p) x) (sqrt.f64 2)))
(*.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 2) (/.f64 (neg.f64 p) x)))
(/.f64 (sqrt.f64 1/2) (/.f64 (/.f64 x (neg.f64 p)) (sqrt.f64 2)))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(neg.f64 (/.f64 (sqrt.f64 2) (/.f64 x (*.f64 (sqrt.f64 1/2) p))))
(/.f64 (neg.f64 (*.f64 p (*.f64 (sqrt.f64 1/2) (sqrt.f64 2)))) x)
(*.f64 (/.f64 (sqrt.f64 2) x) (neg.f64 (*.f64 (sqrt.f64 1/2) p)))
(*.f64 (/.f64 (sqrt.f64 2) x) (*.f64 (sqrt.f64 1/2) (neg.f64 p)))
(*.f64 (sqrt.f64 1/2) (*.f64 (/.f64 (neg.f64 p) x) (sqrt.f64 2)))
(*.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 2) (/.f64 (neg.f64 p) x)))
(/.f64 (sqrt.f64 1/2) (/.f64 (/.f64 x (neg.f64 p)) (sqrt.f64 2)))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(neg.f64 (/.f64 (sqrt.f64 2) (/.f64 x (*.f64 (sqrt.f64 1/2) p))))
(/.f64 (neg.f64 (*.f64 p (*.f64 (sqrt.f64 1/2) (sqrt.f64 2)))) x)
(*.f64 (/.f64 (sqrt.f64 2) x) (neg.f64 (*.f64 (sqrt.f64 1/2) p)))
(*.f64 (/.f64 (sqrt.f64 2) x) (*.f64 (sqrt.f64 1/2) (neg.f64 p)))
(*.f64 (sqrt.f64 1/2) (*.f64 (/.f64 (neg.f64 p) x) (sqrt.f64 2)))
(*.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 2) (/.f64 (neg.f64 p) x)))
(/.f64 (sqrt.f64 1/2) (/.f64 (/.f64 x (neg.f64 p)) (sqrt.f64 2)))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(neg.f64 (/.f64 (sqrt.f64 2) (/.f64 x (*.f64 (sqrt.f64 1/2) p))))
(/.f64 (neg.f64 (*.f64 p (*.f64 (sqrt.f64 1/2) (sqrt.f64 2)))) x)
(*.f64 (/.f64 (sqrt.f64 2) x) (neg.f64 (*.f64 (sqrt.f64 1/2) p)))
(*.f64 (/.f64 (sqrt.f64 2) x) (*.f64 (sqrt.f64 1/2) (neg.f64 p)))
(*.f64 (sqrt.f64 1/2) (*.f64 (/.f64 (neg.f64 p) x) (sqrt.f64 2)))
(*.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 2) (/.f64 (neg.f64 p) x)))
(/.f64 (sqrt.f64 1/2) (/.f64 (/.f64 x (neg.f64 p)) (sqrt.f64 2)))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(neg.f64 (/.f64 (sqrt.f64 2) (/.f64 x (*.f64 (sqrt.f64 1/2) p))))
(/.f64 (neg.f64 (*.f64 p (*.f64 (sqrt.f64 1/2) (sqrt.f64 2)))) x)
(*.f64 (/.f64 (sqrt.f64 2) x) (neg.f64 (*.f64 (sqrt.f64 1/2) p)))
(*.f64 (/.f64 (sqrt.f64 2) x) (*.f64 (sqrt.f64 1/2) (neg.f64 p)))
(*.f64 (sqrt.f64 1/2) (*.f64 (/.f64 (neg.f64 p) x) (sqrt.f64 2)))
(*.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 2) (/.f64 (neg.f64 p) x)))
(/.f64 (sqrt.f64 1/2) (/.f64 (/.f64 x (neg.f64 p)) (sqrt.f64 2)))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(neg.f64 (/.f64 (sqrt.f64 2) (/.f64 x (*.f64 (sqrt.f64 1/2) p))))
(/.f64 (neg.f64 (*.f64 p (*.f64 (sqrt.f64 1/2) (sqrt.f64 2)))) x)
(*.f64 (/.f64 (sqrt.f64 2) x) (neg.f64 (*.f64 (sqrt.f64 1/2) p)))
(*.f64 (/.f64 (sqrt.f64 2) x) (*.f64 (sqrt.f64 1/2) (neg.f64 p)))
(*.f64 (sqrt.f64 1/2) (*.f64 (/.f64 (neg.f64 p) x) (sqrt.f64 2)))
(*.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 2) (/.f64 (neg.f64 p) x)))
(/.f64 (sqrt.f64 1/2) (/.f64 (/.f64 x (neg.f64 p)) (sqrt.f64 2)))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(neg.f64 (/.f64 (sqrt.f64 2) (/.f64 x (*.f64 (sqrt.f64 1/2) p))))
(/.f64 (neg.f64 (*.f64 p (*.f64 (sqrt.f64 1/2) (sqrt.f64 2)))) x)
(*.f64 (/.f64 (sqrt.f64 2) x) (neg.f64 (*.f64 (sqrt.f64 1/2) p)))
(*.f64 (/.f64 (sqrt.f64 2) x) (*.f64 (sqrt.f64 1/2) (neg.f64 p)))
(*.f64 (sqrt.f64 1/2) (*.f64 (/.f64 (neg.f64 p) x) (sqrt.f64 2)))
(*.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 2) (/.f64 (neg.f64 p) x)))
(/.f64 (sqrt.f64 1/2) (/.f64 (/.f64 x (neg.f64 p)) (sqrt.f64 2)))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(neg.f64 (/.f64 (sqrt.f64 2) (/.f64 x (*.f64 (sqrt.f64 1/2) p))))
(/.f64 (neg.f64 (*.f64 p (*.f64 (sqrt.f64 1/2) (sqrt.f64 2)))) x)
(*.f64 (/.f64 (sqrt.f64 2) x) (neg.f64 (*.f64 (sqrt.f64 1/2) p)))
(*.f64 (/.f64 (sqrt.f64 2) x) (*.f64 (sqrt.f64 1/2) (neg.f64 p)))
(*.f64 (sqrt.f64 1/2) (*.f64 (/.f64 (neg.f64 p) x) (sqrt.f64 2)))
(*.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 2) (/.f64 (neg.f64 p) x)))
(/.f64 (sqrt.f64 1/2) (/.f64 (/.f64 x (neg.f64 p)) (sqrt.f64 2)))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(neg.f64 (/.f64 (sqrt.f64 2) (/.f64 x (*.f64 (sqrt.f64 1/2) p))))
(/.f64 (neg.f64 (*.f64 p (*.f64 (sqrt.f64 1/2) (sqrt.f64 2)))) x)
(*.f64 (/.f64 (sqrt.f64 2) x) (neg.f64 (*.f64 (sqrt.f64 1/2) p)))
(*.f64 (/.f64 (sqrt.f64 2) x) (*.f64 (sqrt.f64 1/2) (neg.f64 p)))
(*.f64 (sqrt.f64 1/2) (*.f64 (/.f64 (neg.f64 p) x) (sqrt.f64 2)))
(*.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 2) (/.f64 (neg.f64 p) x)))
(/.f64 (sqrt.f64 1/2) (/.f64 (/.f64 x (neg.f64 p)) (sqrt.f64 2)))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(neg.f64 (/.f64 (sqrt.f64 2) (/.f64 x (*.f64 (sqrt.f64 1/2) p))))
(/.f64 (neg.f64 (*.f64 p (*.f64 (sqrt.f64 1/2) (sqrt.f64 2)))) x)
(*.f64 (/.f64 (sqrt.f64 2) x) (neg.f64 (*.f64 (sqrt.f64 1/2) p)))
(*.f64 (/.f64 (sqrt.f64 2) x) (*.f64 (sqrt.f64 1/2) (neg.f64 p)))
(*.f64 (sqrt.f64 1/2) (*.f64 (/.f64 (neg.f64 p) x) (sqrt.f64 2)))
(*.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 2) (/.f64 (neg.f64 p) x)))
(/.f64 (sqrt.f64 1/2) (/.f64 (/.f64 x (neg.f64 p)) (sqrt.f64 2)))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(neg.f64 (/.f64 (sqrt.f64 2) (/.f64 x (*.f64 (sqrt.f64 1/2) p))))
(/.f64 (neg.f64 (*.f64 p (*.f64 (sqrt.f64 1/2) (sqrt.f64 2)))) x)
(*.f64 (/.f64 (sqrt.f64 2) x) (neg.f64 (*.f64 (sqrt.f64 1/2) p)))
(*.f64 (/.f64 (sqrt.f64 2) x) (*.f64 (sqrt.f64 1/2) (neg.f64 p)))
(*.f64 (sqrt.f64 1/2) (*.f64 (/.f64 (neg.f64 p) x) (sqrt.f64 2)))
(*.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 2) (/.f64 (neg.f64 p) x)))
(/.f64 (sqrt.f64 1/2) (/.f64 (/.f64 x (neg.f64 p)) (sqrt.f64 2)))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(neg.f64 (/.f64 (sqrt.f64 2) (/.f64 x (*.f64 (sqrt.f64 1/2) p))))
(/.f64 (neg.f64 (*.f64 p (*.f64 (sqrt.f64 1/2) (sqrt.f64 2)))) x)
(*.f64 (/.f64 (sqrt.f64 2) x) (neg.f64 (*.f64 (sqrt.f64 1/2) p)))
(*.f64 (/.f64 (sqrt.f64 2) x) (*.f64 (sqrt.f64 1/2) (neg.f64 p)))
(*.f64 (sqrt.f64 1/2) (*.f64 (/.f64 (neg.f64 p) x) (sqrt.f64 2)))
(*.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 2) (/.f64 (neg.f64 p) x)))
(/.f64 (sqrt.f64 1/2) (/.f64 (/.f64 x (neg.f64 p)) (sqrt.f64 2)))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(neg.f64 (/.f64 (sqrt.f64 2) (/.f64 x (*.f64 (sqrt.f64 1/2) p))))
(/.f64 (neg.f64 (*.f64 p (*.f64 (sqrt.f64 1/2) (sqrt.f64 2)))) x)
(*.f64 (/.f64 (sqrt.f64 2) x) (neg.f64 (*.f64 (sqrt.f64 1/2) p)))
(*.f64 (/.f64 (sqrt.f64 2) x) (*.f64 (sqrt.f64 1/2) (neg.f64 p)))
(*.f64 (sqrt.f64 1/2) (*.f64 (/.f64 (neg.f64 p) x) (sqrt.f64 2)))
(*.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 2) (/.f64 (neg.f64 p) x)))
(/.f64 (sqrt.f64 1/2) (/.f64 (/.f64 x (neg.f64 p)) (sqrt.f64 2)))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(neg.f64 (/.f64 (sqrt.f64 2) (/.f64 x (*.f64 (sqrt.f64 1/2) p))))
(/.f64 (neg.f64 (*.f64 p (*.f64 (sqrt.f64 1/2) (sqrt.f64 2)))) x)
(*.f64 (/.f64 (sqrt.f64 2) x) (neg.f64 (*.f64 (sqrt.f64 1/2) p)))
(*.f64 (/.f64 (sqrt.f64 2) x) (*.f64 (sqrt.f64 1/2) (neg.f64 p)))
(*.f64 (sqrt.f64 1/2) (*.f64 (/.f64 (neg.f64 p) x) (sqrt.f64 2)))
(*.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 2) (/.f64 (neg.f64 p) x)))
(/.f64 (sqrt.f64 1/2) (/.f64 (/.f64 x (neg.f64 p)) (sqrt.f64 2)))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(neg.f64 (/.f64 (sqrt.f64 2) (/.f64 x (*.f64 (sqrt.f64 1/2) p))))
(/.f64 (neg.f64 (*.f64 p (*.f64 (sqrt.f64 1/2) (sqrt.f64 2)))) x)
(*.f64 (/.f64 (sqrt.f64 2) x) (neg.f64 (*.f64 (sqrt.f64 1/2) p)))
(*.f64 (/.f64 (sqrt.f64 2) x) (*.f64 (sqrt.f64 1/2) (neg.f64 p)))
(*.f64 (sqrt.f64 1/2) (*.f64 (/.f64 (neg.f64 p) x) (sqrt.f64 2)))
(*.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 2) (/.f64 (neg.f64 p) x)))
(/.f64 (sqrt.f64 1/2) (/.f64 (/.f64 x (neg.f64 p)) (sqrt.f64 2)))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(neg.f64 (/.f64 (sqrt.f64 2) (/.f64 x (*.f64 (sqrt.f64 1/2) p))))
(/.f64 (neg.f64 (*.f64 p (*.f64 (sqrt.f64 1/2) (sqrt.f64 2)))) x)
(*.f64 (/.f64 (sqrt.f64 2) x) (neg.f64 (*.f64 (sqrt.f64 1/2) p)))
(*.f64 (/.f64 (sqrt.f64 2) x) (*.f64 (sqrt.f64 1/2) (neg.f64 p)))
(*.f64 (sqrt.f64 1/2) (*.f64 (/.f64 (neg.f64 p) x) (sqrt.f64 2)))
(*.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 2) (/.f64 (neg.f64 p) x)))
(/.f64 (sqrt.f64 1/2) (/.f64 (/.f64 x (neg.f64 p)) (sqrt.f64 2)))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(neg.f64 (/.f64 (sqrt.f64 2) (/.f64 x (*.f64 (sqrt.f64 1/2) p))))
(/.f64 (neg.f64 (*.f64 p (*.f64 (sqrt.f64 1/2) (sqrt.f64 2)))) x)
(*.f64 (/.f64 (sqrt.f64 2) x) (neg.f64 (*.f64 (sqrt.f64 1/2) p)))
(*.f64 (/.f64 (sqrt.f64 2) x) (*.f64 (sqrt.f64 1/2) (neg.f64 p)))
(*.f64 (sqrt.f64 1/2) (*.f64 (/.f64 (neg.f64 p) x) (sqrt.f64 2)))
(*.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 2) (/.f64 (neg.f64 p) x)))
(/.f64 (sqrt.f64 1/2) (/.f64 (/.f64 x (neg.f64 p)) (sqrt.f64 2)))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(neg.f64 (/.f64 (sqrt.f64 2) (/.f64 x (*.f64 (sqrt.f64 1/2) p))))
(/.f64 (neg.f64 (*.f64 p (*.f64 (sqrt.f64 1/2) (sqrt.f64 2)))) x)
(*.f64 (/.f64 (sqrt.f64 2) x) (neg.f64 (*.f64 (sqrt.f64 1/2) p)))
(*.f64 (/.f64 (sqrt.f64 2) x) (*.f64 (sqrt.f64 1/2) (neg.f64 p)))
(*.f64 (sqrt.f64 1/2) (*.f64 (/.f64 (neg.f64 p) x) (sqrt.f64 2)))
(*.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 2) (/.f64 (neg.f64 p) x)))
(/.f64 (sqrt.f64 1/2) (/.f64 (/.f64 x (neg.f64 p)) (sqrt.f64 2)))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(neg.f64 (/.f64 (sqrt.f64 2) (/.f64 x (*.f64 (sqrt.f64 1/2) p))))
(/.f64 (neg.f64 (*.f64 p (*.f64 (sqrt.f64 1/2) (sqrt.f64 2)))) x)
(*.f64 (/.f64 (sqrt.f64 2) x) (neg.f64 (*.f64 (sqrt.f64 1/2) p)))
(*.f64 (/.f64 (sqrt.f64 2) x) (*.f64 (sqrt.f64 1/2) (neg.f64 p)))
(*.f64 (sqrt.f64 1/2) (*.f64 (/.f64 (neg.f64 p) x) (sqrt.f64 2)))
(*.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 2) (/.f64 (neg.f64 p) x)))
(/.f64 (sqrt.f64 1/2) (/.f64 (/.f64 x (neg.f64 p)) (sqrt.f64 2)))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(neg.f64 (/.f64 (sqrt.f64 2) (/.f64 x (*.f64 (sqrt.f64 1/2) p))))
(/.f64 (neg.f64 (*.f64 p (*.f64 (sqrt.f64 1/2) (sqrt.f64 2)))) x)
(*.f64 (/.f64 (sqrt.f64 2) x) (neg.f64 (*.f64 (sqrt.f64 1/2) p)))
(*.f64 (/.f64 (sqrt.f64 2) x) (*.f64 (sqrt.f64 1/2) (neg.f64 p)))
(*.f64 (sqrt.f64 1/2) (*.f64 (/.f64 (neg.f64 p) x) (sqrt.f64 2)))
(*.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 2) (/.f64 (neg.f64 p) x)))
(/.f64 (sqrt.f64 1/2) (/.f64 (/.f64 x (neg.f64 p)) (sqrt.f64 2)))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(neg.f64 (/.f64 (sqrt.f64 2) (/.f64 x (*.f64 (sqrt.f64 1/2) p))))
(/.f64 (neg.f64 (*.f64 p (*.f64 (sqrt.f64 1/2) (sqrt.f64 2)))) x)
(*.f64 (/.f64 (sqrt.f64 2) x) (neg.f64 (*.f64 (sqrt.f64 1/2) p)))
(*.f64 (/.f64 (sqrt.f64 2) x) (*.f64 (sqrt.f64 1/2) (neg.f64 p)))
(*.f64 (sqrt.f64 1/2) (*.f64 (/.f64 (neg.f64 p) x) (sqrt.f64 2)))
(*.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 2) (/.f64 (neg.f64 p) x)))
(/.f64 (sqrt.f64 1/2) (/.f64 (/.f64 x (neg.f64 p)) (sqrt.f64 2)))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(neg.f64 (/.f64 (sqrt.f64 2) (/.f64 x (*.f64 (sqrt.f64 1/2) p))))
(/.f64 (neg.f64 (*.f64 p (*.f64 (sqrt.f64 1/2) (sqrt.f64 2)))) x)
(*.f64 (/.f64 (sqrt.f64 2) x) (neg.f64 (*.f64 (sqrt.f64 1/2) p)))
(*.f64 (/.f64 (sqrt.f64 2) x) (*.f64 (sqrt.f64 1/2) (neg.f64 p)))
(*.f64 (sqrt.f64 1/2) (*.f64 (/.f64 (neg.f64 p) x) (sqrt.f64 2)))
(*.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 2) (/.f64 (neg.f64 p) x)))
(/.f64 (sqrt.f64 1/2) (/.f64 (/.f64 x (neg.f64 p)) (sqrt.f64 2)))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(neg.f64 (/.f64 (sqrt.f64 2) (/.f64 x (*.f64 (sqrt.f64 1/2) p))))
(/.f64 (neg.f64 (*.f64 p (*.f64 (sqrt.f64 1/2) (sqrt.f64 2)))) x)
(*.f64 (/.f64 (sqrt.f64 2) x) (neg.f64 (*.f64 (sqrt.f64 1/2) p)))
(*.f64 (/.f64 (sqrt.f64 2) x) (*.f64 (sqrt.f64 1/2) (neg.f64 p)))
(*.f64 (sqrt.f64 1/2) (*.f64 (/.f64 (neg.f64 p) x) (sqrt.f64 2)))
(*.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 2) (/.f64 (neg.f64 p) x)))
(/.f64 (sqrt.f64 1/2) (/.f64 (/.f64 x (neg.f64 p)) (sqrt.f64 2)))

localize18.0ms (0.3%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.4b
(*.f64 (pow.f64 1/2 -1/2) (/.f64 x p))
0.8b
(/.f64 (neg.f64 (sqrt.f64 2)) (*.f64 (pow.f64 1/2 -1/2) (/.f64 x p)))
Compiler

Compiled 36 to 26 computations (27.8% saved)

series12.0ms (0.2%)

Counts
2 → 48
Calls

12 calls:

TimeVariablePointExpression
6.0ms
x
@0
(/.f64 (neg.f64 (sqrt.f64 2)) (*.f64 (pow.f64 1/2 -1/2) (/.f64 x p)))
1.0ms
p
@inf
(/.f64 (neg.f64 (sqrt.f64 2)) (*.f64 (pow.f64 1/2 -1/2) (/.f64 x p)))
1.0ms
x
@0
(*.f64 (pow.f64 1/2 -1/2) (/.f64 x p))
1.0ms
p
@0
(*.f64 (pow.f64 1/2 -1/2) (/.f64 x p))
1.0ms
x
@-inf
(*.f64 (pow.f64 1/2 -1/2) (/.f64 x p))

rewrite115.0ms (1.9%)

Algorithm
egg-rewrite
egg-rewrite-iter-limit
batch-egg-rewrite
Rules
810×pow1_binary64
754×add-log-exp_binary64
754×log1p-expm1-u_binary64
754×expm1-log1p-u_binary64
737×add-exp-log_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01227
126527
2368227
01217
126517
2368217
01217
0810
11739
220979
Stop Event
node limit
iter limit
unsound
unsound
Counts
2 → 33
Calls
Call 1
Inputs
(/.f64 (neg.f64 (sqrt.f64 2)) (*.f64 (pow.f64 1/2 -1/2) (/.f64 x p)))
(*.f64 (pow.f64 1/2 -1/2) (/.f64 x p))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (sqrt.f64 2)) (/.f64 1 (*.f64 (pow.f64 1/2 -1/2) (/.f64 x p))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (neg.f64 (sqrt.f64 2)) (*.f64 (pow.f64 1/2 -1/2) (/.f64 x p))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (/.f64 (neg.f64 (sqrt.f64 2)) (*.f64 (pow.f64 1/2 -1/2) (/.f64 x p)))) (cbrt.f64 (/.f64 (neg.f64 (sqrt.f64 2)) (*.f64 (pow.f64 1/2 -1/2) (/.f64 x p))))) (cbrt.f64 (/.f64 (neg.f64 (sqrt.f64 2)) (*.f64 (pow.f64 1/2 -1/2) (/.f64 x p)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (neg.f64 (sqrt.f64 2)) (*.f64 (pow.f64 1/2 -1/2) (/.f64 x p)))) (sqrt.f64 (/.f64 (neg.f64 (sqrt.f64 2)) (*.f64 (pow.f64 1/2 -1/2) (/.f64 x p)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (neg.f64 (sqrt.f64 2)) (*.f64 (pow.f64 1/2 -1/2) (/.f64 x p))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 1/2 -1/2) (/.f64 x p))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (neg.f64 (sqrt.f64 2)) (*.f64 (pow.f64 1/2 -1/2) (/.f64 x p)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (*.f64 (/.f64 (neg.f64 (sqrt.f64 2)) (*.f64 (pow.f64 1/2 -1/2) (/.f64 x p))) (/.f64 (neg.f64 (sqrt.f64 2)) (*.f64 (pow.f64 1/2 -1/2) (/.f64 x p)))) (/.f64 (neg.f64 (sqrt.f64 2)) (*.f64 (pow.f64 1/2 -1/2) (/.f64 x p)))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (neg.f64 (sqrt.f64 2)) (*.f64 (pow.f64 1/2 -1/2) (/.f64 x p)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (neg.f64 (sqrt.f64 2)) (*.f64 (pow.f64 1/2 -1/2) (/.f64 x p)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (neg.f64 (sqrt.f64 2)) (*.f64 (pow.f64 1/2 -1/2) (/.f64 x p)))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 (sqrt.f64 2) (/.f64 x p))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 2) (/.f64 p x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 p (*.f64 (sqrt.f64 2) x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 2) x) p)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 (sqrt.f64 2) x)) (neg.f64 p))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sqrt.f64 2) x) 1) p)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sqrt.f64 2) x) (pow.f64 (cbrt.f64 p) 2)) (cbrt.f64 p))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sqrt.f64 2) x) (sqrt.f64 p)) (sqrt.f64 p))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 x) (sqrt.f64 2)) (neg.f64 p))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 2) (neg.f64 x)) (neg.f64 p))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sqrt.f64 2) (/.f64 x p)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sqrt.f64 2) (/.f64 x p)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (sqrt.f64 2) (/.f64 x p))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (sqrt.f64 2) (/.f64 x p))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (pow.f64 (/.f64 x p) 2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (/.f64 x p)) (sqrt.f64 2)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (sqrt.f64 2) (/.f64 x p)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (*.f64 (sqrt.f64 2) 2) (pow.f64 (/.f64 x p) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (/.f64 x p) 3) (*.f64 (sqrt.f64 2) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (sqrt.f64 2) (/.f64 x p))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (sqrt.f64 2) (/.f64 x p))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (sqrt.f64 2) (/.f64 x p))))))))

simplify26.0ms (0.4%)

Algorithm
egg-herbie
Rules
14×fma-def_binary64
sub-neg_binary64
*-commutative_binary64
+-commutative_binary64
associate-/l*_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
010360
116360
227360
335360
442360
550360
658360
768360
878360
997360
1098360
Stop Event
saturated
Counts
81 → 36
Calls
Call 1
Inputs
(*.f64 -1 (/.f64 p x))
(*.f64 -1 (/.f64 p x))
(*.f64 -1 (/.f64 p x))
(*.f64 -1 (/.f64 p x))
(*.f64 -1 (/.f64 p x))
(*.f64 -1 (/.f64 p x))
(*.f64 -1 (/.f64 p x))
(*.f64 -1 (/.f64 p x))
(*.f64 -1 (/.f64 p x))
(*.f64 -1 (/.f64 p x))
(*.f64 -1 (/.f64 p x))
(*.f64 -1 (/.f64 p x))
(*.f64 -1 (/.f64 p x))
(*.f64 -1 (/.f64 p x))
(*.f64 -1 (/.f64 p x))
(*.f64 -1 (/.f64 p x))
(*.f64 -1 (/.f64 p x))
(*.f64 -1 (/.f64 p x))
(*.f64 -1 (/.f64 p x))
(*.f64 -1 (/.f64 p x))
(*.f64 -1 (/.f64 p x))
(*.f64 -1 (/.f64 p x))
(*.f64 -1 (/.f64 p x))
(*.f64 -1 (/.f64 p x))
(/.f64 (*.f64 (sqrt.f64 2) x) p)
(/.f64 (*.f64 (sqrt.f64 2) x) p)
(/.f64 (*.f64 (sqrt.f64 2) x) p)
(/.f64 (*.f64 (sqrt.f64 2) x) p)
(/.f64 (*.f64 (sqrt.f64 2) x) p)
(/.f64 (*.f64 (sqrt.f64 2) x) p)
(/.f64 (*.f64 (sqrt.f64 2) x) p)
(/.f64 (*.f64 (sqrt.f64 2) x) p)
(/.f64 (*.f64 (sqrt.f64 2) x) p)
(/.f64 (*.f64 (sqrt.f64 2) x) p)
(/.f64 (*.f64 (sqrt.f64 2) x) p)
(/.f64 (*.f64 (sqrt.f64 2) x) p)
(/.f64 (*.f64 (sqrt.f64 2) x) p)
(/.f64 (*.f64 (sqrt.f64 2) x) p)
(/.f64 (*.f64 (sqrt.f64 2) x) p)
(/.f64 (*.f64 (sqrt.f64 2) x) p)
(/.f64 (*.f64 (sqrt.f64 2) x) p)
(/.f64 (*.f64 (sqrt.f64 2) x) p)
(/.f64 (*.f64 (sqrt.f64 2) x) p)
(/.f64 (*.f64 (sqrt.f64 2) x) p)
(/.f64 (*.f64 (sqrt.f64 2) x) p)
(/.f64 (*.f64 (sqrt.f64 2) x) p)
(/.f64 (*.f64 (sqrt.f64 2) x) p)
(/.f64 (*.f64 (sqrt.f64 2) x) p)
Outputs
(*.f64 -1 (/.f64 p x))
(neg.f64 (/.f64 p x))
(/.f64 (neg.f64 p) x)
(*.f64 -1 (/.f64 p x))
(neg.f64 (/.f64 p x))
(/.f64 (neg.f64 p) x)
(*.f64 -1 (/.f64 p x))
(neg.f64 (/.f64 p x))
(/.f64 (neg.f64 p) x)
(*.f64 -1 (/.f64 p x))
(neg.f64 (/.f64 p x))
(/.f64 (neg.f64 p) x)
(*.f64 -1 (/.f64 p x))
(neg.f64 (/.f64 p x))
(/.f64 (neg.f64 p) x)
(*.f64 -1 (/.f64 p x))
(neg.f64 (/.f64 p x))
(/.f64 (neg.f64 p) x)
(*.f64 -1 (/.f64 p x))
(neg.f64 (/.f64 p x))
(/.f64 (neg.f64 p) x)
(*.f64 -1 (/.f64 p x))
(neg.f64 (/.f64 p x))
(/.f64 (neg.f64 p) x)
(*.f64 -1 (/.f64 p x))
(neg.f64 (/.f64 p x))
(/.f64 (neg.f64 p) x)
(*.f64 -1 (/.f64 p x))
(neg.f64 (/.f64 p x))
(/.f64 (neg.f64 p) x)
(*.f64 -1 (/.f64 p x))
(neg.f64 (/.f64 p x))
(/.f64 (neg.f64 p) x)
(*.f64 -1 (/.f64 p x))
(neg.f64 (/.f64 p x))
(/.f64 (neg.f64 p) x)
(*.f64 -1 (/.f64 p x))
(neg.f64 (/.f64 p x))
(/.f64 (neg.f64 p) x)
(*.f64 -1 (/.f64 p x))
(neg.f64 (/.f64 p x))
(/.f64 (neg.f64 p) x)
(*.f64 -1 (/.f64 p x))
(neg.f64 (/.f64 p x))
(/.f64 (neg.f64 p) x)
(*.f64 -1 (/.f64 p x))
(neg.f64 (/.f64 p x))
(/.f64 (neg.f64 p) x)
(*.f64 -1 (/.f64 p x))
(neg.f64 (/.f64 p x))
(/.f64 (neg.f64 p) x)
(*.f64 -1 (/.f64 p x))
(neg.f64 (/.f64 p x))
(/.f64 (neg.f64 p) x)
(*.f64 -1 (/.f64 p x))
(neg.f64 (/.f64 p x))
(/.f64 (neg.f64 p) x)
(*.f64 -1 (/.f64 p x))
(neg.f64 (/.f64 p x))
(/.f64 (neg.f64 p) x)
(*.f64 -1 (/.f64 p x))
(neg.f64 (/.f64 p x))
(/.f64 (neg.f64 p) x)
(*.f64 -1 (/.f64 p x))
(neg.f64 (/.f64 p x))
(/.f64 (neg.f64 p) x)
(*.f64 -1 (/.f64 p x))
(neg.f64 (/.f64 p x))
(/.f64 (neg.f64 p) x)
(*.f64 -1 (/.f64 p x))
(neg.f64 (/.f64 p x))
(/.f64 (neg.f64 p) x)
(/.f64 (*.f64 (sqrt.f64 2) x) p)
(/.f64 (sqrt.f64 2) (/.f64 p x))
(*.f64 (/.f64 x p) (sqrt.f64 2))
(*.f64 (sqrt.f64 2) (/.f64 x p))
(/.f64 (*.f64 (sqrt.f64 2) x) p)
(/.f64 (sqrt.f64 2) (/.f64 p x))
(*.f64 (/.f64 x p) (sqrt.f64 2))
(*.f64 (sqrt.f64 2) (/.f64 x p))
(/.f64 (*.f64 (sqrt.f64 2) x) p)
(/.f64 (sqrt.f64 2) (/.f64 p x))
(*.f64 (/.f64 x p) (sqrt.f64 2))
(*.f64 (sqrt.f64 2) (/.f64 x p))
(/.f64 (*.f64 (sqrt.f64 2) x) p)
(/.f64 (sqrt.f64 2) (/.f64 p x))
(*.f64 (/.f64 x p) (sqrt.f64 2))
(*.f64 (sqrt.f64 2) (/.f64 x p))
(/.f64 (*.f64 (sqrt.f64 2) x) p)
(/.f64 (sqrt.f64 2) (/.f64 p x))
(*.f64 (/.f64 x p) (sqrt.f64 2))
(*.f64 (sqrt.f64 2) (/.f64 x p))
(/.f64 (*.f64 (sqrt.f64 2) x) p)
(/.f64 (sqrt.f64 2) (/.f64 p x))
(*.f64 (/.f64 x p) (sqrt.f64 2))
(*.f64 (sqrt.f64 2) (/.f64 x p))
(/.f64 (*.f64 (sqrt.f64 2) x) p)
(/.f64 (sqrt.f64 2) (/.f64 p x))
(*.f64 (/.f64 x p) (sqrt.f64 2))
(*.f64 (sqrt.f64 2) (/.f64 x p))
(/.f64 (*.f64 (sqrt.f64 2) x) p)
(/.f64 (sqrt.f64 2) (/.f64 p x))
(*.f64 (/.f64 x p) (sqrt.f64 2))
(*.f64 (sqrt.f64 2) (/.f64 x p))
(/.f64 (*.f64 (sqrt.f64 2) x) p)
(/.f64 (sqrt.f64 2) (/.f64 p x))
(*.f64 (/.f64 x p) (sqrt.f64 2))
(*.f64 (sqrt.f64 2) (/.f64 x p))
(/.f64 (*.f64 (sqrt.f64 2) x) p)
(/.f64 (sqrt.f64 2) (/.f64 p x))
(*.f64 (/.f64 x p) (sqrt.f64 2))
(*.f64 (sqrt.f64 2) (/.f64 x p))
(/.f64 (*.f64 (sqrt.f64 2) x) p)
(/.f64 (sqrt.f64 2) (/.f64 p x))
(*.f64 (/.f64 x p) (sqrt.f64 2))
(*.f64 (sqrt.f64 2) (/.f64 x p))
(/.f64 (*.f64 (sqrt.f64 2) x) p)
(/.f64 (sqrt.f64 2) (/.f64 p x))
(*.f64 (/.f64 x p) (sqrt.f64 2))
(*.f64 (sqrt.f64 2) (/.f64 x p))
(/.f64 (*.f64 (sqrt.f64 2) x) p)
(/.f64 (sqrt.f64 2) (/.f64 p x))
(*.f64 (/.f64 x p) (sqrt.f64 2))
(*.f64 (sqrt.f64 2) (/.f64 x p))
(/.f64 (*.f64 (sqrt.f64 2) x) p)
(/.f64 (sqrt.f64 2) (/.f64 p x))
(*.f64 (/.f64 x p) (sqrt.f64 2))
(*.f64 (sqrt.f64 2) (/.f64 x p))
(/.f64 (*.f64 (sqrt.f64 2) x) p)
(/.f64 (sqrt.f64 2) (/.f64 p x))
(*.f64 (/.f64 x p) (sqrt.f64 2))
(*.f64 (sqrt.f64 2) (/.f64 x p))
(/.f64 (*.f64 (sqrt.f64 2) x) p)
(/.f64 (sqrt.f64 2) (/.f64 p x))
(*.f64 (/.f64 x p) (sqrt.f64 2))
(*.f64 (sqrt.f64 2) (/.f64 x p))
(/.f64 (*.f64 (sqrt.f64 2) x) p)
(/.f64 (sqrt.f64 2) (/.f64 p x))
(*.f64 (/.f64 x p) (sqrt.f64 2))
(*.f64 (sqrt.f64 2) (/.f64 x p))
(/.f64 (*.f64 (sqrt.f64 2) x) p)
(/.f64 (sqrt.f64 2) (/.f64 p x))
(*.f64 (/.f64 x p) (sqrt.f64 2))
(*.f64 (sqrt.f64 2) (/.f64 x p))
(/.f64 (*.f64 (sqrt.f64 2) x) p)
(/.f64 (sqrt.f64 2) (/.f64 p x))
(*.f64 (/.f64 x p) (sqrt.f64 2))
(*.f64 (sqrt.f64 2) (/.f64 x p))
(/.f64 (*.f64 (sqrt.f64 2) x) p)
(/.f64 (sqrt.f64 2) (/.f64 p x))
(*.f64 (/.f64 x p) (sqrt.f64 2))
(*.f64 (sqrt.f64 2) (/.f64 x p))
(/.f64 (*.f64 (sqrt.f64 2) x) p)
(/.f64 (sqrt.f64 2) (/.f64 p x))
(*.f64 (/.f64 x p) (sqrt.f64 2))
(*.f64 (sqrt.f64 2) (/.f64 x p))
(/.f64 (*.f64 (sqrt.f64 2) x) p)
(/.f64 (sqrt.f64 2) (/.f64 p x))
(*.f64 (/.f64 x p) (sqrt.f64 2))
(*.f64 (sqrt.f64 2) (/.f64 x p))
(/.f64 (*.f64 (sqrt.f64 2) x) p)
(/.f64 (sqrt.f64 2) (/.f64 p x))
(*.f64 (/.f64 x p) (sqrt.f64 2))
(*.f64 (sqrt.f64 2) (/.f64 x p))
(/.f64 (*.f64 (sqrt.f64 2) x) p)
(/.f64 (sqrt.f64 2) (/.f64 p x))
(*.f64 (/.f64 x p) (sqrt.f64 2))
(*.f64 (sqrt.f64 2) (/.f64 x p))

eval88.0ms (1.5%)

Compiler

Compiled 3906 to 2886 computations (26.1% saved)

prune51.0ms (0.8%)

Pruning

13 alts after pruning (8 fresh and 5 done)

PrunedKeptTotal
New2957302
Fresh617
Picked101
Done358
Total30513318
Error
0.1b
Counts
318 → 13
Alt Table
Click to see full alt table
StatusErrorProgram
43.4b
(sqrt.f64 (*.f64 1/2 2))
58.7b
(-.f64 (+.f64 1 (/.f64 p x)) 1)
48.6b
(/.f64 (neg.f64 p) x)
53.8b
(*.f64 (/.f64 1 x) p)
15.8b
(sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 x (hypot.f64 (*.f64 2 p) x)))))
32.5b
(sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 x (*.f64 p 2)))))
53.7b
(/.f64 1 (/.f64 x p))
32.7b
(sqrt.f64 (*.f64 1/2 (+.f64 (*.f64 -1/2 (/.f64 x p)) 1)))
53.9b
(pow.f64 (cbrt.f64 (/.f64 p x)) 3)
55.0b
(exp.f64 (log.f64 (/.f64 p x)))
29.9b
(sqrt.f64 1/2)
33.2b
(pow.f64 (pow.f64 (fma.f64 (/.f64 x p) -1/4 1/2) 1/4) 2)
53.7b
(/.f64 p x)
Compiler

Compiled 170 to 131 computations (22.9% saved)

localize17.0ms (0.3%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.6b
(pow.f64 (pow.f64 (fma.f64 (/.f64 x p) -1/4 1/2) 1/4) 2)
4.1b
(pow.f64 (fma.f64 (/.f64 x p) -1/4 1/2) 1/4)
Compiler

Compiled 35 to 22 computations (37.1% saved)

series18.0ms (0.3%)

Counts
2 → 48
Calls

12 calls:

TimeVariablePointExpression
4.0ms
p
@0
(pow.f64 (fma.f64 (/.f64 x p) -1/4 1/2) 1/4)
2.0ms
x
@inf
(pow.f64 (pow.f64 (fma.f64 (/.f64 x p) -1/4 1/2) 1/4) 2)
2.0ms
x
@inf
(pow.f64 (fma.f64 (/.f64 x p) -1/4 1/2) 1/4)
2.0ms
x
@-inf
(pow.f64 (pow.f64 (fma.f64 (/.f64 x p) -1/4 1/2) 1/4) 2)
2.0ms
x
@0
(pow.f64 (fma.f64 (/.f64 x p) -1/4 1/2) 1/4)

rewrite59.0ms (1%)

Algorithm
batch-egg-rewrite
Rules
970×pow1_binary64
902×add-log-exp_binary64
902×log1p-expm1-u_binary64
902×expm1-log1p-u_binary64
108×add-sqr-sqrt_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01122
123521
2258621
Stop Event
node limit
Counts
2 → 39
Calls
Call 1
Inputs
(pow.f64 (fma.f64 (/.f64 x p) -1/4 1/2) 1/4)
(pow.f64 (pow.f64 (fma.f64 (/.f64 x p) -1/4 1/2) 1/4) 2)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (pow.f64 (fma.f64 (/.f64 x p) -1/4 1/2) 1/4))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (fma.f64 (/.f64 x p) -1/4 1/2) 1/4) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (fma.f64 (/.f64 x p) -1/4 1/2) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (fma.f64 (/.f64 x p) -1/4 1/2) 1/4)) (cbrt.f64 (sqrt.f64 (fma.f64 (/.f64 x p) -1/4 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sqrt.f64 (fma.f64 (/.f64 x p) -1/4 1/2))) (cbrt.f64 (pow.f64 (fma.f64 (/.f64 x p) -1/4 1/2) 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (fma.f64 (/.f64 x p) -1/4 1/2) 1/8) (pow.f64 (fma.f64 (/.f64 x p) -1/4 1/2) 1/8))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cbrt.f64 (fma.f64 (/.f64 x p) -1/4 1/2))) (sqrt.f64 (cbrt.f64 (sqrt.f64 (fma.f64 (/.f64 x p) -1/4 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/4) (pow.f64 (fma.f64 (/.f64 x p) -1/4 1/2) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (fma.f64 (/.f64 x p) -1/4 1/2)) 2) 1/4) (pow.f64 (cbrt.f64 (fma.f64 (/.f64 x p) -1/4 1/2)) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (fma.f64 (/.f64 x p) -1/4 1/2)) 1/4) (pow.f64 (sqrt.f64 (fma.f64 (/.f64 x p) -1/4 1/2)) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (sqrt.f64 (fma.f64 (/.f64 x p) -1/4 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (pow.f64 (fma.f64 (/.f64 x p) -1/4 1/2) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (fma.f64 (/.f64 x p) -1/4 1/2) 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (pow.f64 (fma.f64 (/.f64 x p) -1/4 1/2) 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 (/.f64 x p) -1/4 1/2) 3/4))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (fma.f64 (/.f64 x p) -1/4 1/2) 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (fma.f64 (/.f64 x p) -1/4 1/2) 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (pow.f64 (fma.f64 (/.f64 x p) -1/4 1/2) 1/4)))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (sqrt.f64 (fma.f64 (/.f64 x p) -1/4 1/2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (fma.f64 (/.f64 x p) -1/4 1/2) 1/4) (pow.f64 (fma.f64 (/.f64 x p) -1/4 1/2) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 (/.f64 x p) -1/4 1/2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (fma.f64 (/.f64 x p) -1/4 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sqrt.f64 (fma.f64 (/.f64 x p) -1/4 1/2))) (cbrt.f64 (fma.f64 (/.f64 x p) -1/4 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sqrt.f64 (fma.f64 (/.f64 x p) -1/4 1/2))) (*.f64 (cbrt.f64 (pow.f64 (fma.f64 (/.f64 x p) -1/4 1/2) 1/4)) (pow.f64 (fma.f64 (/.f64 x p) -1/4 1/2) 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 (/.f64 x p) -1/4 1/2)) (cbrt.f64 (sqrt.f64 (fma.f64 (/.f64 x p) -1/4 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (fma.f64 (/.f64 x p) -1/4 1/2) 1/8) (*.f64 (pow.f64 (fma.f64 (/.f64 x p) -1/4 1/2) 1/8) (pow.f64 (fma.f64 (/.f64 x p) -1/4 1/2) 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 (fma.f64 (/.f64 x p) -1/4 1/2) 1/4) (pow.f64 (fma.f64 (/.f64 x p) -1/4 1/2) 1/8)) (pow.f64 (fma.f64 (/.f64 x p) -1/4 1/2) 1/8))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (fma.f64 (/.f64 x p) -1/4 1/2)) 2)) (sqrt.f64 (cbrt.f64 (fma.f64 (/.f64 x p) -1/4 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/2) (sqrt.f64 (fma.f64 (/.f64 x p) -1/4 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (fma.f64 (/.f64 x p) -1/4 1/2)) 2) 1/2) (pow.f64 (cbrt.f64 (fma.f64 (/.f64 x p) -1/4 1/2)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 (fma.f64 (/.f64 x p) -1/4 1/2) 1/4) (cbrt.f64 (sqrt.f64 (fma.f64 (/.f64 x p) -1/4 1/2)))) (cbrt.f64 (pow.f64 (fma.f64 (/.f64 x p) -1/4 1/2) 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (fma.f64 (/.f64 x p) -1/4 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (sqrt.f64 (fma.f64 (/.f64 x p) -1/4 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (sqrt.f64 (fma.f64 (/.f64 x p) -1/4 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (fma.f64 (/.f64 x p) -1/4 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (sqrt.f64 (fma.f64 (/.f64 x p) -1/4 1/2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (sqrt.f64 (fma.f64 (/.f64 x p) -1/4 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (sqrt.f64 (fma.f64 (/.f64 x p) -1/4 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (sqrt.f64 (fma.f64 (/.f64 x p) -1/4 1/2))))))))

simplify76.0ms (1.3%)

Algorithm
egg-herbie
Rules
755×associate-/r*_binary64
423×distribute-rgt-in_binary64
419×distribute-lft-in_binary64
315×fma-def_binary64
247×associate-/r/_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02912926
19332567
237212225
Stop Event
node limit
Counts
87 → 107
Calls
Call 1
Inputs
(pow.f64 1/2 1/4)
(+.f64 (*.f64 -1/8 (*.f64 (/.f64 x p) (pow.f64 1/2 1/4))) (pow.f64 1/2 1/4))
(+.f64 (*.f64 -1/8 (*.f64 (/.f64 x p) (pow.f64 1/2 1/4))) (+.f64 (pow.f64 1/2 1/4) (*.f64 -3/128 (*.f64 (/.f64 (pow.f64 x 2) (pow.f64 p 2)) (pow.f64 1/2 1/4)))))
(+.f64 (*.f64 -7/1024 (*.f64 (/.f64 (pow.f64 x 3) (pow.f64 p 3)) (pow.f64 1/2 1/4))) (+.f64 (*.f64 -1/8 (*.f64 (/.f64 x p) (pow.f64 1/2 1/4))) (+.f64 (pow.f64 1/2 1/4) (*.f64 -3/128 (*.f64 (/.f64 (pow.f64 x 2) (pow.f64 p 2)) (pow.f64 1/2 1/4))))))
(exp.f64 (*.f64 1/4 (+.f64 (log.f64 (neg.f64 (*.f64 1/4 (/.f64 1 p)))) (*.f64 -1 (log.f64 (/.f64 1 x))))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (neg.f64 (*.f64 1/4 (/.f64 1 p)))) (*.f64 -1 (log.f64 (/.f64 1 x)))))) p) x)) (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (neg.f64 (*.f64 1/4 (/.f64 1 p)))) (*.f64 -1 (log.f64 (/.f64 1 x)))))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (neg.f64 (*.f64 1/4 (/.f64 1 p)))) (*.f64 -1 (log.f64 (/.f64 1 x)))))) p) x)) (+.f64 (/.f64 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 p 2)) (*.f64 -1/2 (pow.f64 p 2))) (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (neg.f64 (*.f64 1/4 (/.f64 1 p)))) (*.f64 -1 (log.f64 (/.f64 1 x))))))) (pow.f64 x 2)) (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (neg.f64 (*.f64 1/4 (/.f64 1 p)))) (*.f64 -1 (log.f64 (/.f64 1 x))))))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (neg.f64 (*.f64 1/4 (/.f64 1 p)))) (*.f64 -1 (log.f64 (/.f64 1 x)))))) p) x)) (+.f64 (/.f64 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 p 2)) (*.f64 -1/2 (pow.f64 p 2))) (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (neg.f64 (*.f64 1/4 (/.f64 1 p)))) (*.f64 -1 (log.f64 (/.f64 1 x))))))) (pow.f64 x 2)) (+.f64 (/.f64 (*.f64 (+.f64 (*.f64 1/4 (pow.f64 p 3)) (+.f64 (*.f64 -1/48 (pow.f64 p 3)) (*.f64 -2/3 (pow.f64 p 3)))) (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (neg.f64 (*.f64 1/4 (/.f64 1 p)))) (*.f64 -1 (log.f64 (/.f64 1 x))))))) (pow.f64 x 3)) (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (neg.f64 (*.f64 1/4 (/.f64 1 p)))) (*.f64 -1 (log.f64 (/.f64 1 x)))))))))
(exp.f64 (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 (/.f64 1/4 p)))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 (/.f64 1/4 p))))) p) x)) (exp.f64 (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 (/.f64 1/4 p))))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 (/.f64 1/4 p))))) p) x)) (+.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 (/.f64 1/4 p))))) (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 (/.f64 1/4 p))))) (+.f64 (*.f64 1/8 (pow.f64 p 2)) (*.f64 -1/2 (pow.f64 p 2)))) (pow.f64 x 2))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 (/.f64 1/4 p))))) p) x)) (+.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 (/.f64 1/4 p))))) (+.f64 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 (/.f64 1/4 p))))) (+.f64 (*.f64 1/8 (pow.f64 p 2)) (*.f64 -1/2 (pow.f64 p 2)))) (pow.f64 x 2)) (*.f64 -1 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 (/.f64 1/4 p))))) (+.f64 (*.f64 1/48 (pow.f64 p 3)) (+.f64 (*.f64 2/3 (pow.f64 p 3)) (*.f64 -1/4 (pow.f64 p 3))))) (pow.f64 x 3))))))
(exp.f64 (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 p)) (log.f64 (*.f64 -1/4 x)))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 p)) (log.f64 (*.f64 -1/4 x))))) p) x)) (exp.f64 (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 p)) (log.f64 (*.f64 -1/4 x))))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 p)) (log.f64 (*.f64 -1/4 x))))) p) x)) (+.f64 (*.f64 -3/8 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 p)) (log.f64 (*.f64 -1/4 x))))) (pow.f64 p 2)) (pow.f64 x 2))) (exp.f64 (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 p)) (log.f64 (*.f64 -1/4 x)))))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 p)) (log.f64 (*.f64 -1/4 x))))) p) x)) (+.f64 (*.f64 -3/8 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 p)) (log.f64 (*.f64 -1/4 x))))) (pow.f64 p 2)) (pow.f64 x 2))) (+.f64 (*.f64 -7/16 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 p)) (log.f64 (*.f64 -1/4 x))))) (pow.f64 p 3)) (pow.f64 x 3))) (exp.f64 (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 p)) (log.f64 (*.f64 -1/4 x))))))))
(pow.f64 1/2 1/4)
(+.f64 (*.f64 -1/8 (*.f64 (/.f64 x p) (pow.f64 1/2 1/4))) (pow.f64 1/2 1/4))
(+.f64 (*.f64 (pow.f64 1/2 1/4) (/.f64 (+.f64 (*.f64 1/128 (pow.f64 x 2)) (*.f64 -1/32 (pow.f64 x 2))) (pow.f64 p 2))) (+.f64 (*.f64 -1/8 (*.f64 (/.f64 x p) (pow.f64 1/2 1/4))) (pow.f64 1/2 1/4)))
(+.f64 (*.f64 (pow.f64 1/2 1/4) (/.f64 (+.f64 (*.f64 1/128 (pow.f64 x 2)) (*.f64 -1/32 (pow.f64 x 2))) (pow.f64 p 2))) (+.f64 (*.f64 -1/8 (*.f64 (/.f64 x p) (pow.f64 1/2 1/4))) (+.f64 (*.f64 (/.f64 (+.f64 (*.f64 1/256 (pow.f64 x 3)) (+.f64 (*.f64 -1/3072 (pow.f64 x 3)) (*.f64 -1/96 (pow.f64 x 3)))) (pow.f64 p 3)) (pow.f64 1/2 1/4)) (pow.f64 1/2 1/4))))
(pow.f64 1/2 1/4)
(+.f64 (*.f64 -1/8 (*.f64 (/.f64 x p) (pow.f64 1/2 1/4))) (pow.f64 1/2 1/4))
(+.f64 (*.f64 (pow.f64 1/2 1/4) (/.f64 (+.f64 (*.f64 1/128 (pow.f64 x 2)) (*.f64 -1/32 (pow.f64 x 2))) (pow.f64 p 2))) (+.f64 (*.f64 -1/8 (*.f64 (/.f64 x p) (pow.f64 1/2 1/4))) (pow.f64 1/2 1/4)))
(+.f64 (*.f64 (pow.f64 1/2 1/4) (/.f64 (+.f64 (*.f64 1/128 (pow.f64 x 2)) (*.f64 -1/32 (pow.f64 x 2))) (pow.f64 p 2))) (+.f64 (*.f64 -1/8 (*.f64 (/.f64 x p) (pow.f64 1/2 1/4))) (+.f64 (*.f64 -1 (*.f64 (/.f64 (+.f64 (*.f64 1/96 (pow.f64 x 3)) (+.f64 (*.f64 -1/256 (pow.f64 x 3)) (*.f64 1/3072 (pow.f64 x 3)))) (pow.f64 p 3)) (pow.f64 1/2 1/4))) (pow.f64 1/2 1/4))))
(sqrt.f64 1/2)
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p)) (sqrt.f64 1/2))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p)) (+.f64 (*.f64 (+.f64 (*.f64 -3/64 (/.f64 (sqrt.f64 1/2) (pow.f64 p 2))) (*.f64 1/64 (/.f64 (sqrt.f64 1/2) (pow.f64 p 2)))) (pow.f64 x 2)) (sqrt.f64 1/2)))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p)) (+.f64 (*.f64 (+.f64 (*.f64 -3/64 (/.f64 (sqrt.f64 1/2) (pow.f64 p 2))) (*.f64 1/64 (/.f64 (sqrt.f64 1/2) (pow.f64 p 2)))) (pow.f64 x 2)) (+.f64 (sqrt.f64 1/2) (*.f64 (+.f64 (*.f64 -7/512 (/.f64 (sqrt.f64 1/2) (pow.f64 p 3))) (*.f64 3/512 (/.f64 (sqrt.f64 1/2) (pow.f64 p 3)))) (pow.f64 x 3)))))
(pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (neg.f64 (*.f64 1/4 (/.f64 1 p)))) (*.f64 -1 (log.f64 (/.f64 1 x)))))) 2)
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (neg.f64 (*.f64 1/4 (/.f64 1 p)))) (*.f64 -1 (log.f64 (/.f64 1 x)))))) 2) p) x)) (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (neg.f64 (*.f64 1/4 (/.f64 1 p)))) (*.f64 -1 (log.f64 (/.f64 1 x)))))) 2))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (neg.f64 (*.f64 1/4 (/.f64 1 p)))) (*.f64 -1 (log.f64 (/.f64 1 x)))))) 2) p) x)) (+.f64 (*.f64 2 (/.f64 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 p 2)) (*.f64 -1/2 (pow.f64 p 2))) (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (neg.f64 (*.f64 1/4 (/.f64 1 p)))) (*.f64 -1 (log.f64 (/.f64 1 x)))))) 2)) (pow.f64 x 2))) (+.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (neg.f64 (*.f64 1/4 (/.f64 1 p)))) (*.f64 -1 (log.f64 (/.f64 1 x)))))) 2) (*.f64 1/4 (/.f64 (*.f64 (pow.f64 p 2) (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (neg.f64 (*.f64 1/4 (/.f64 1 p)))) (*.f64 -1 (log.f64 (/.f64 1 x)))))) 2)) (pow.f64 x 2))))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (neg.f64 (*.f64 1/4 (/.f64 1 p)))) (*.f64 -1 (log.f64 (/.f64 1 x)))))) 2) p) x)) (+.f64 (*.f64 2 (/.f64 (*.f64 (+.f64 (*.f64 1/4 (pow.f64 p 3)) (+.f64 (*.f64 -1/48 (pow.f64 p 3)) (*.f64 -2/3 (pow.f64 p 3)))) (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (neg.f64 (*.f64 1/4 (/.f64 1 p)))) (*.f64 -1 (log.f64 (/.f64 1 x)))))) 2)) (pow.f64 x 3))) (+.f64 (*.f64 2 (/.f64 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 p 2)) (*.f64 -1/2 (pow.f64 p 2))) (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (neg.f64 (*.f64 1/4 (/.f64 1 p)))) (*.f64 -1 (log.f64 (/.f64 1 x)))))) 2)) (pow.f64 x 2))) (+.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (neg.f64 (*.f64 1/4 (/.f64 1 p)))) (*.f64 -1 (log.f64 (/.f64 1 x)))))) 2) (+.f64 (*.f64 -1 (/.f64 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 p 2)) (*.f64 -1/2 (pow.f64 p 2))) (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (neg.f64 (*.f64 1/4 (/.f64 1 p)))) (*.f64 -1 (log.f64 (/.f64 1 x)))))) 2) p)) (pow.f64 x 3))) (*.f64 1/4 (/.f64 (*.f64 (pow.f64 p 2) (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (neg.f64 (*.f64 1/4 (/.f64 1 p)))) (*.f64 -1 (log.f64 (/.f64 1 x)))))) 2)) (pow.f64 x 2))))))))
(pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 (/.f64 1/4 p))))) 2)
(+.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 (/.f64 1/4 p))))) 2) (*.f64 -1 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 (/.f64 1/4 p))))) 2) p) x)))
(+.f64 (*.f64 1/4 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 (/.f64 1/4 p))))) 2) (pow.f64 p 2)) (pow.f64 x 2))) (+.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 (/.f64 1/4 p))))) 2) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 (/.f64 1/4 p))))) 2) p) x)) (*.f64 2 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 (/.f64 1/4 p))))) 2) (+.f64 (*.f64 1/8 (pow.f64 p 2)) (*.f64 -1/2 (pow.f64 p 2)))) (pow.f64 x 2))))))
(+.f64 (*.f64 1/4 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 (/.f64 1/4 p))))) 2) (pow.f64 p 2)) (pow.f64 x 2))) (+.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 (/.f64 1/4 p))))) 2) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 (/.f64 1/4 p))))) 2) p) x)) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 (/.f64 1/4 p))))) 2) (*.f64 (+.f64 (*.f64 1/8 (pow.f64 p 2)) (*.f64 -1/2 (pow.f64 p 2))) p)) (*.f64 2 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 (/.f64 1/4 p))))) 2) (+.f64 (*.f64 1/48 (pow.f64 p 3)) (+.f64 (*.f64 2/3 (pow.f64 p 3)) (*.f64 -1/4 (pow.f64 p 3))))))) (pow.f64 x 3))) (*.f64 2 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 (/.f64 1/4 p))))) 2) (+.f64 (*.f64 1/8 (pow.f64 p 2)) (*.f64 -1/2 (pow.f64 p 2)))) (pow.f64 x 2)))))))
(pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (*.f64 -1/4 x)) (*.f64 -1 (log.f64 p))))) 2)
(+.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (*.f64 -1/4 x)) (*.f64 -1 (log.f64 p))))) 2) (*.f64 -1 (/.f64 (*.f64 p (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (*.f64 -1/4 x)) (*.f64 -1 (log.f64 p))))) 2)) x)))
(+.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (*.f64 -1/4 x)) (*.f64 -1 (log.f64 p))))) 2) (+.f64 (*.f64 (+.f64 (*.f64 1/4 (/.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (*.f64 -1/4 x)) (*.f64 -1 (log.f64 p))))) 2) (pow.f64 x 2))) (*.f64 -3/4 (/.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (*.f64 -1/4 x)) (*.f64 -1 (log.f64 p))))) 2) (pow.f64 x 2)))) (pow.f64 p 2)) (*.f64 -1 (/.f64 (*.f64 p (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (*.f64 -1/4 x)) (*.f64 -1 (log.f64 p))))) 2)) x))))
(+.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (*.f64 -1/4 x)) (*.f64 -1 (log.f64 p))))) 2) (+.f64 (*.f64 (+.f64 (*.f64 -7/8 (/.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (*.f64 -1/4 x)) (*.f64 -1 (log.f64 p))))) 2) (pow.f64 x 3))) (*.f64 3/8 (/.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (*.f64 -1/4 x)) (*.f64 -1 (log.f64 p))))) 2) (pow.f64 x 3)))) (pow.f64 p 3)) (+.f64 (*.f64 (+.f64 (*.f64 1/4 (/.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (*.f64 -1/4 x)) (*.f64 -1 (log.f64 p))))) 2) (pow.f64 x 2))) (*.f64 -3/4 (/.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (*.f64 -1/4 x)) (*.f64 -1 (log.f64 p))))) 2) (pow.f64 x 2)))) (pow.f64 p 2)) (*.f64 -1 (/.f64 (*.f64 p (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (*.f64 -1/4 x)) (*.f64 -1 (log.f64 p))))) 2)) x)))))
(sqrt.f64 1/2)
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p)) (sqrt.f64 1/2))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p)) (+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 2 (/.f64 (*.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/128 (pow.f64 x 2)) (*.f64 -1/32 (pow.f64 x 2)))) (pow.f64 p 2))) (*.f64 1/64 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 2)) (pow.f64 p 2))))))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p)) (+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 2 (/.f64 (*.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/128 (pow.f64 x 2)) (*.f64 -1/32 (pow.f64 x 2)))) (pow.f64 p 2))) (+.f64 (*.f64 -1/8 (/.f64 (*.f64 (sqrt.f64 1/2) (*.f64 (+.f64 (*.f64 1/128 (pow.f64 x 2)) (*.f64 -1/32 (pow.f64 x 2))) x)) (pow.f64 p 3))) (+.f64 (*.f64 1/64 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 2)) (pow.f64 p 2))) (+.f64 (*.f64 -1/8 (/.f64 (*.f64 (sqrt.f64 1/2) (*.f64 x (+.f64 (*.f64 1/128 (pow.f64 x 2)) (*.f64 -1/32 (pow.f64 x 2))))) (pow.f64 p 3))) (*.f64 2 (/.f64 (*.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/256 (pow.f64 x 3)) (+.f64 (*.f64 -1/3072 (pow.f64 x 3)) (*.f64 -1/96 (pow.f64 x 3))))) (pow.f64 p 3)))))))))
(sqrt.f64 1/2)
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p)) (sqrt.f64 1/2))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p)) (+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 2 (/.f64 (*.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/128 (pow.f64 x 2)) (*.f64 -1/32 (pow.f64 x 2)))) (pow.f64 p 2))) (*.f64 1/64 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 2)) (pow.f64 p 2))))))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p)) (+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 2 (/.f64 (*.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/128 (pow.f64 x 2)) (*.f64 -1/32 (pow.f64 x 2)))) (pow.f64 p 2))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 2 (*.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/96 (pow.f64 x 3)) (+.f64 (*.f64 -1/256 (pow.f64 x 3)) (*.f64 1/3072 (pow.f64 x 3)))))) (+.f64 (*.f64 1/8 (*.f64 (sqrt.f64 1/2) (*.f64 (+.f64 (*.f64 1/128 (pow.f64 x 2)) (*.f64 -1/32 (pow.f64 x 2))) x))) (*.f64 1/8 (*.f64 (sqrt.f64 1/2) (*.f64 x (+.f64 (*.f64 1/128 (pow.f64 x 2)) (*.f64 -1/32 (pow.f64 x 2)))))))) (pow.f64 p 3))) (*.f64 1/64 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 2)) (pow.f64 p 2)))))))
Outputs
(pow.f64 1/2 1/4)
(+.f64 (*.f64 -1/8 (*.f64 (/.f64 x p) (pow.f64 1/2 1/4))) (pow.f64 1/2 1/4))
(fma.f64 -1/8 (/.f64 (*.f64 x (pow.f64 1/2 1/4)) p) (pow.f64 1/2 1/4))
(*.f64 (+.f64 (*.f64 -1/8 (/.f64 x p)) 1) (pow.f64 1/2 1/4))
(+.f64 (*.f64 -1/8 (*.f64 (/.f64 x p) (pow.f64 1/2 1/4))) (+.f64 (pow.f64 1/2 1/4) (*.f64 -3/128 (*.f64 (/.f64 (pow.f64 x 2) (pow.f64 p 2)) (pow.f64 1/2 1/4)))))
(+.f64 (fma.f64 -1/8 (/.f64 (*.f64 x (pow.f64 1/2 1/4)) p) (pow.f64 1/2 1/4)) (*.f64 -3/128 (/.f64 (*.f64 (*.f64 x x) (pow.f64 1/2 1/4)) (*.f64 p p))))
(+.f64 (pow.f64 1/2 1/4) (*.f64 (pow.f64 1/2 1/4) (+.f64 (*.f64 -3/128 (*.f64 (/.f64 x p) (/.f64 x p))) (*.f64 -1/8 (/.f64 x p)))))
(*.f64 (pow.f64 1/2 1/4) (+.f64 (*.f64 -1/8 (/.f64 x p)) (+.f64 (*.f64 -3/128 (*.f64 (/.f64 x p) (/.f64 x p))) 1)))
(+.f64 (*.f64 -7/1024 (*.f64 (/.f64 (pow.f64 x 3) (pow.f64 p 3)) (pow.f64 1/2 1/4))) (+.f64 (*.f64 -1/8 (*.f64 (/.f64 x p) (pow.f64 1/2 1/4))) (+.f64 (pow.f64 1/2 1/4) (*.f64 -3/128 (*.f64 (/.f64 (pow.f64 x 2) (pow.f64 p 2)) (pow.f64 1/2 1/4))))))
(fma.f64 -7/1024 (/.f64 (*.f64 (pow.f64 x 3) (pow.f64 1/2 1/4)) (pow.f64 p 3)) (+.f64 (fma.f64 -1/8 (/.f64 (*.f64 x (pow.f64 1/2 1/4)) p) (pow.f64 1/2 1/4)) (*.f64 -3/128 (/.f64 (*.f64 (*.f64 x x) (pow.f64 1/2 1/4)) (*.f64 p p)))))
(+.f64 (*.f64 (+.f64 (*.f64 -3/128 (*.f64 (/.f64 x p) (/.f64 x p))) 1) (pow.f64 1/2 1/4)) (*.f64 (pow.f64 1/2 1/4) (+.f64 (*.f64 -7/1024 (/.f64 (pow.f64 x 3) (pow.f64 p 3))) (*.f64 -1/8 (/.f64 x p)))))
(+.f64 (*.f64 (pow.f64 1/2 1/4) (+.f64 (+.f64 (*.f64 -7/1024 (pow.f64 (/.f64 x p) 3)) (*.f64 -1/8 (/.f64 x p))) (*.f64 -3/128 (*.f64 (/.f64 x p) (/.f64 x p))))) (pow.f64 1/2 1/4))
(exp.f64 (*.f64 1/4 (+.f64 (log.f64 (neg.f64 (*.f64 1/4 (/.f64 1 p)))) (*.f64 -1 (log.f64 (/.f64 1 x))))))
(pow.f64 (exp.f64 1/4) (+.f64 (log.f64 (neg.f64 (/.f64 1/4 p))) (neg.f64 (neg.f64 (log.f64 x)))))
(pow.f64 (exp.f64 1/4) (+.f64 (log.f64 (/.f64 -1/4 p)) (log.f64 x)))
(*.f64 (pow.f64 (/.f64 -1/4 p) 1/4) (pow.f64 x 1/4))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (neg.f64 (*.f64 1/4 (/.f64 1 p)))) (*.f64 -1 (log.f64 (/.f64 1 x)))))) p) x)) (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (neg.f64 (*.f64 1/4 (/.f64 1 p)))) (*.f64 -1 (log.f64 (/.f64 1 x)))))))
(fma.f64 -1/2 (/.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 (neg.f64 (/.f64 1/4 p))) (neg.f64 (neg.f64 (log.f64 x))))) (/.f64 x p)) (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 (neg.f64 (/.f64 1/4 p))) (neg.f64 (neg.f64 (log.f64 x))))))
(fma.f64 -1/2 (*.f64 (/.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 (/.f64 -1/4 p)) (log.f64 x))) x) p) (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 (/.f64 -1/4 p)) (log.f64 x))))
(fma.f64 -1/2 (/.f64 p (/.f64 (/.f64 x (pow.f64 p -1/4)) (pow.f64 (*.f64 x -1/4) 1/4))) (*.f64 (pow.f64 (/.f64 -1/4 p) 1/4) (pow.f64 x 1/4)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (neg.f64 (*.f64 1/4 (/.f64 1 p)))) (*.f64 -1 (log.f64 (/.f64 1 x)))))) p) x)) (+.f64 (/.f64 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 p 2)) (*.f64 -1/2 (pow.f64 p 2))) (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (neg.f64 (*.f64 1/4 (/.f64 1 p)))) (*.f64 -1 (log.f64 (/.f64 1 x))))))) (pow.f64 x 2)) (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (neg.f64 (*.f64 1/4 (/.f64 1 p)))) (*.f64 -1 (log.f64 (/.f64 1 x))))))))
(fma.f64 -1/2 (/.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 (neg.f64 (/.f64 1/4 p))) (neg.f64 (neg.f64 (log.f64 x))))) (/.f64 x p)) (+.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 (neg.f64 (/.f64 1/4 p))) (neg.f64 (neg.f64 (log.f64 x))))) (/.f64 (*.f64 (*.f64 p p) -3/8) (/.f64 (*.f64 x x) (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 (neg.f64 (/.f64 1/4 p))) (neg.f64 (neg.f64 (log.f64 x)))))))))
(+.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 (/.f64 -1/4 p)) (log.f64 x))) (fma.f64 -1/2 (*.f64 (/.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 (/.f64 -1/4 p)) (log.f64 x))) x) p) (*.f64 (/.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 (/.f64 -1/4 p)) (log.f64 x))) x) (/.f64 (*.f64 p (*.f64 p -3/8)) x))))
(fma.f64 -1/2 (/.f64 p (/.f64 (/.f64 x (pow.f64 p -1/4)) (pow.f64 (*.f64 x -1/4) 1/4))) (*.f64 (+.f64 (/.f64 (*.f64 p (*.f64 p -3/8)) (*.f64 x x)) 1) (*.f64 (pow.f64 (/.f64 -1/4 p) 1/4) (pow.f64 x 1/4))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (neg.f64 (*.f64 1/4 (/.f64 1 p)))) (*.f64 -1 (log.f64 (/.f64 1 x)))))) p) x)) (+.f64 (/.f64 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 p 2)) (*.f64 -1/2 (pow.f64 p 2))) (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (neg.f64 (*.f64 1/4 (/.f64 1 p)))) (*.f64 -1 (log.f64 (/.f64 1 x))))))) (pow.f64 x 2)) (+.f64 (/.f64 (*.f64 (+.f64 (*.f64 1/4 (pow.f64 p 3)) (+.f64 (*.f64 -1/48 (pow.f64 p 3)) (*.f64 -2/3 (pow.f64 p 3)))) (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (neg.f64 (*.f64 1/4 (/.f64 1 p)))) (*.f64 -1 (log.f64 (/.f64 1 x))))))) (pow.f64 x 3)) (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (neg.f64 (*.f64 1/4 (/.f64 1 p)))) (*.f64 -1 (log.f64 (/.f64 1 x)))))))))
(fma.f64 -1/2 (/.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 (neg.f64 (/.f64 1/4 p))) (neg.f64 (neg.f64 (log.f64 x))))) (/.f64 x p)) (+.f64 (/.f64 (*.f64 (*.f64 p p) -3/8) (/.f64 (*.f64 x x) (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 (neg.f64 (/.f64 1/4 p))) (neg.f64 (neg.f64 (log.f64 x))))))) (+.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 (neg.f64 (/.f64 1/4 p))) (neg.f64 (neg.f64 (log.f64 x))))) (/.f64 (fma.f64 1/4 (pow.f64 p 3) (*.f64 (pow.f64 p 3) -11/16)) (/.f64 (pow.f64 x 3) (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 (neg.f64 (/.f64 1/4 p))) (neg.f64 (neg.f64 (log.f64 x))))))))))
(+.f64 (+.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 (/.f64 -1/4 p)) (log.f64 x))) (/.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 (/.f64 -1/4 p)) (log.f64 x))) (/.f64 (pow.f64 x 3) (*.f64 (pow.f64 p 3) -7/16)))) (fma.f64 -1/2 (*.f64 (/.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 (/.f64 -1/4 p)) (log.f64 x))) x) p) (*.f64 (/.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 (/.f64 -1/4 p)) (log.f64 x))) x) (/.f64 (*.f64 p (*.f64 p -3/8)) x))))
(+.f64 (*.f64 (*.f64 (pow.f64 (/.f64 -1/4 p) 1/4) (pow.f64 x 1/4)) (+.f64 (/.f64 (*.f64 p (*.f64 p -3/8)) (*.f64 x x)) (/.f64 (*.f64 (pow.f64 p 3) -7/16) (pow.f64 x 3)))) (fma.f64 -1/2 (/.f64 p (/.f64 (/.f64 x (pow.f64 p -1/4)) (pow.f64 (*.f64 x -1/4) 1/4))) (*.f64 (pow.f64 (/.f64 -1/4 p) 1/4) (pow.f64 x 1/4))))
(exp.f64 (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 (/.f64 1/4 p)))))
(pow.f64 (exp.f64 1/4) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 (/.f64 1/4 p))))
(pow.f64 (exp.f64 1/4) (-.f64 (log.f64 (/.f64 1/4 p)) (log.f64 (/.f64 -1 x))))
(*.f64 (pow.f64 (/.f64 1/4 p) 1/4) (pow.f64 (/.f64 -1 x) -1/4))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 (/.f64 1/4 p))))) p) x)) (exp.f64 (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 (/.f64 1/4 p))))))
(fma.f64 -1/2 (/.f64 (pow.f64 (exp.f64 1/4) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 (/.f64 1/4 p)))) (/.f64 x p)) (pow.f64 (exp.f64 1/4) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 (/.f64 1/4 p)))))
(fma.f64 -1/2 (*.f64 (/.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 (/.f64 1/4 p)) (log.f64 (/.f64 -1 x)))) x) p) (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 (/.f64 1/4 p)) (log.f64 (/.f64 -1 x)))))
(fma.f64 -1/2 (*.f64 (/.f64 p x) (*.f64 (pow.f64 (/.f64 1/4 p) 1/4) (pow.f64 (/.f64 -1 x) -1/4))) (*.f64 (pow.f64 (/.f64 1/4 p) 1/4) (pow.f64 (/.f64 -1 x) -1/4)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 (/.f64 1/4 p))))) p) x)) (+.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 (/.f64 1/4 p))))) (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 (/.f64 1/4 p))))) (+.f64 (*.f64 1/8 (pow.f64 p 2)) (*.f64 -1/2 (pow.f64 p 2)))) (pow.f64 x 2))))
(+.f64 (fma.f64 -1/2 (/.f64 (pow.f64 (exp.f64 1/4) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 (/.f64 1/4 p)))) (/.f64 x p)) (pow.f64 (exp.f64 1/4) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 (/.f64 1/4 p))))) (/.f64 (pow.f64 (exp.f64 1/4) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 (/.f64 1/4 p)))) (/.f64 (*.f64 x x) (*.f64 (*.f64 p p) -3/8))))
(+.f64 (fma.f64 -1/2 (*.f64 (/.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 (/.f64 1/4 p)) (log.f64 (/.f64 -1 x)))) x) p) (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 (/.f64 1/4 p)) (log.f64 (/.f64 -1 x))))) (*.f64 (/.f64 (*.f64 p (*.f64 p -3/8)) x) (/.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 (/.f64 1/4 p)) (log.f64 (/.f64 -1 x)))) x)))
(+.f64 (fma.f64 -1/2 (*.f64 (/.f64 p x) (*.f64 (pow.f64 (/.f64 1/4 p) 1/4) (pow.f64 (/.f64 -1 x) -1/4))) (*.f64 (pow.f64 (/.f64 1/4 p) 1/4) (pow.f64 (/.f64 -1 x) -1/4))) (*.f64 (/.f64 (*.f64 p (*.f64 p -3/8)) x) (/.f64 (*.f64 (pow.f64 (/.f64 1/4 p) 1/4) (pow.f64 (/.f64 -1 x) -1/4)) x)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 (/.f64 1/4 p))))) p) x)) (+.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 (/.f64 1/4 p))))) (+.f64 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 (/.f64 1/4 p))))) (+.f64 (*.f64 1/8 (pow.f64 p 2)) (*.f64 -1/2 (pow.f64 p 2)))) (pow.f64 x 2)) (*.f64 -1 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 (/.f64 1/4 p))))) (+.f64 (*.f64 1/48 (pow.f64 p 3)) (+.f64 (*.f64 2/3 (pow.f64 p 3)) (*.f64 -1/4 (pow.f64 p 3))))) (pow.f64 x 3))))))
(+.f64 (fma.f64 -1/2 (/.f64 (pow.f64 (exp.f64 1/4) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 (/.f64 1/4 p)))) (/.f64 x p)) (pow.f64 (exp.f64 1/4) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 (/.f64 1/4 p))))) (+.f64 (/.f64 (pow.f64 (exp.f64 1/4) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 (/.f64 1/4 p)))) (/.f64 (*.f64 x x) (*.f64 (*.f64 p p) -3/8))) (neg.f64 (/.f64 (pow.f64 (exp.f64 1/4) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 (/.f64 1/4 p)))) (/.f64 (pow.f64 x 3) (fma.f64 1/48 (pow.f64 p 3) (*.f64 (pow.f64 p 3) 5/12)))))))
(+.f64 (fma.f64 -1/2 (*.f64 (/.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 (/.f64 1/4 p)) (log.f64 (/.f64 -1 x)))) x) p) (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 (/.f64 1/4 p)) (log.f64 (/.f64 -1 x))))) (-.f64 (*.f64 (/.f64 (*.f64 p (*.f64 p -3/8)) x) (/.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 (/.f64 1/4 p)) (log.f64 (/.f64 -1 x)))) x)) (*.f64 (/.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 (/.f64 1/4 p)) (log.f64 (/.f64 -1 x)))) (pow.f64 x 3)) (*.f64 (pow.f64 p 3) 7/16))))
(+.f64 (fma.f64 -1/2 (*.f64 (/.f64 p x) (*.f64 (pow.f64 (/.f64 1/4 p) 1/4) (pow.f64 (/.f64 -1 x) -1/4))) (*.f64 (pow.f64 (/.f64 1/4 p) 1/4) (pow.f64 (/.f64 -1 x) -1/4))) (*.f64 (/.f64 (*.f64 (pow.f64 (/.f64 1/4 p) 1/4) (pow.f64 (/.f64 -1 x) -1/4)) (*.f64 x x)) (-.f64 (*.f64 p (*.f64 p -3/8)) (/.f64 (*.f64 (pow.f64 p 3) 7/16) x))))
(exp.f64 (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 p)) (log.f64 (*.f64 -1/4 x)))))
(pow.f64 (exp.f64 1/4) (+.f64 (log.f64 (neg.f64 (/.f64 1/4 p))) (neg.f64 (neg.f64 (log.f64 x)))))
(pow.f64 (exp.f64 1/4) (+.f64 (log.f64 (/.f64 -1/4 p)) (log.f64 x)))
(*.f64 (pow.f64 (/.f64 -1/4 p) 1/4) (pow.f64 x 1/4))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 p)) (log.f64 (*.f64 -1/4 x))))) p) x)) (exp.f64 (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 p)) (log.f64 (*.f64 -1/4 x))))))
(fma.f64 -1/2 (/.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 (neg.f64 (/.f64 1/4 p))) (neg.f64 (neg.f64 (log.f64 x))))) (/.f64 x p)) (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 (neg.f64 (/.f64 1/4 p))) (neg.f64 (neg.f64 (log.f64 x))))))
(fma.f64 -1/2 (*.f64 (/.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 (/.f64 -1/4 p)) (log.f64 x))) x) p) (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 (/.f64 -1/4 p)) (log.f64 x))))
(fma.f64 -1/2 (/.f64 p (/.f64 (/.f64 x (pow.f64 p -1/4)) (pow.f64 (*.f64 x -1/4) 1/4))) (*.f64 (pow.f64 (/.f64 -1/4 p) 1/4) (pow.f64 x 1/4)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 p)) (log.f64 (*.f64 -1/4 x))))) p) x)) (+.f64 (*.f64 -3/8 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 p)) (log.f64 (*.f64 -1/4 x))))) (pow.f64 p 2)) (pow.f64 x 2))) (exp.f64 (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 p)) (log.f64 (*.f64 -1/4 x)))))))
(fma.f64 -1/2 (/.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 (neg.f64 (/.f64 1/4 p))) (neg.f64 (neg.f64 (log.f64 x))))) (/.f64 x p)) (+.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 (neg.f64 (/.f64 1/4 p))) (neg.f64 (neg.f64 (log.f64 x))))) (/.f64 (*.f64 (*.f64 p p) -3/8) (/.f64 (*.f64 x x) (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 (neg.f64 (/.f64 1/4 p))) (neg.f64 (neg.f64 (log.f64 x)))))))))
(+.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 (/.f64 -1/4 p)) (log.f64 x))) (fma.f64 -1/2 (*.f64 (/.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 (/.f64 -1/4 p)) (log.f64 x))) x) p) (*.f64 (/.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 (/.f64 -1/4 p)) (log.f64 x))) x) (/.f64 (*.f64 p (*.f64 p -3/8)) x))))
(fma.f64 -1/2 (/.f64 p (/.f64 (/.f64 x (pow.f64 p -1/4)) (pow.f64 (*.f64 x -1/4) 1/4))) (*.f64 (+.f64 (/.f64 (*.f64 p (*.f64 p -3/8)) (*.f64 x x)) 1) (*.f64 (pow.f64 (/.f64 -1/4 p) 1/4) (pow.f64 x 1/4))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 p)) (log.f64 (*.f64 -1/4 x))))) p) x)) (+.f64 (*.f64 -3/8 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 p)) (log.f64 (*.f64 -1/4 x))))) (pow.f64 p 2)) (pow.f64 x 2))) (+.f64 (*.f64 -7/16 (/.f64 (*.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 p)) (log.f64 (*.f64 -1/4 x))))) (pow.f64 p 3)) (pow.f64 x 3))) (exp.f64 (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 p)) (log.f64 (*.f64 -1/4 x))))))))
(fma.f64 -1/2 (/.f64 (pow.f64 (exp.f64 1/4) (fma.f64 -1 (log.f64 p) (log.f64 (*.f64 x -1/4)))) (/.f64 x p)) (fma.f64 -3/8 (/.f64 (pow.f64 (exp.f64 1/4) (fma.f64 -1 (log.f64 p) (log.f64 (*.f64 x -1/4)))) (/.f64 (*.f64 x x) (*.f64 p p))) (fma.f64 -7/16 (/.f64 (pow.f64 (exp.f64 1/4) (fma.f64 -1 (log.f64 p) (log.f64 (*.f64 x -1/4)))) (/.f64 (pow.f64 x 3) (pow.f64 p 3))) (pow.f64 (exp.f64 1/4) (fma.f64 -1 (log.f64 p) (log.f64 (*.f64 x -1/4)))))))
(fma.f64 -1/2 (*.f64 (/.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 (*.f64 x -1/4)) (log.f64 p))) x) p) (fma.f64 -3/8 (*.f64 (/.f64 (*.f64 p p) x) (/.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 (*.f64 x -1/4)) (log.f64 p))) x)) (fma.f64 -7/16 (*.f64 (/.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 (*.f64 x -1/4)) (log.f64 p))) (pow.f64 x 3)) (pow.f64 p 3)) (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 (*.f64 x -1/4)) (log.f64 p))))))
(+.f64 (fma.f64 -1/2 (/.f64 p (/.f64 (/.f64 x (pow.f64 p -1/4)) (pow.f64 (*.f64 x -1/4) 1/4))) (*.f64 (+.f64 (/.f64 (*.f64 p (*.f64 p -3/8)) (*.f64 x x)) 1) (*.f64 (pow.f64 (/.f64 -1/4 p) 1/4) (pow.f64 x 1/4)))) (/.f64 (*.f64 (*.f64 (pow.f64 (/.f64 -1/4 p) 1/4) (pow.f64 x 1/4)) -7/16) (pow.f64 (/.f64 x p) 3)))
(pow.f64 1/2 1/4)
(+.f64 (*.f64 -1/8 (*.f64 (/.f64 x p) (pow.f64 1/2 1/4))) (pow.f64 1/2 1/4))
(fma.f64 -1/8 (/.f64 (*.f64 x (pow.f64 1/2 1/4)) p) (pow.f64 1/2 1/4))
(*.f64 (+.f64 (*.f64 -1/8 (/.f64 x p)) 1) (pow.f64 1/2 1/4))
(+.f64 (*.f64 (pow.f64 1/2 1/4) (/.f64 (+.f64 (*.f64 1/128 (pow.f64 x 2)) (*.f64 -1/32 (pow.f64 x 2))) (pow.f64 p 2))) (+.f64 (*.f64 -1/8 (*.f64 (/.f64 x p) (pow.f64 1/2 1/4))) (pow.f64 1/2 1/4)))
(+.f64 (fma.f64 -1/8 (/.f64 (*.f64 x (pow.f64 1/2 1/4)) p) (pow.f64 1/2 1/4)) (*.f64 -3/128 (/.f64 (*.f64 (*.f64 x x) (pow.f64 1/2 1/4)) (*.f64 p p))))
(+.f64 (pow.f64 1/2 1/4) (*.f64 (pow.f64 1/2 1/4) (+.f64 (*.f64 -3/128 (*.f64 (/.f64 x p) (/.f64 x p))) (*.f64 -1/8 (/.f64 x p)))))
(*.f64 (pow.f64 1/2 1/4) (+.f64 (*.f64 -1/8 (/.f64 x p)) (+.f64 (*.f64 -3/128 (*.f64 (/.f64 x p) (/.f64 x p))) 1)))
(+.f64 (*.f64 (pow.f64 1/2 1/4) (/.f64 (+.f64 (*.f64 1/128 (pow.f64 x 2)) (*.f64 -1/32 (pow.f64 x 2))) (pow.f64 p 2))) (+.f64 (*.f64 -1/8 (*.f64 (/.f64 x p) (pow.f64 1/2 1/4))) (+.f64 (*.f64 (/.f64 (+.f64 (*.f64 1/256 (pow.f64 x 3)) (+.f64 (*.f64 -1/3072 (pow.f64 x 3)) (*.f64 -1/96 (pow.f64 x 3)))) (pow.f64 p 3)) (pow.f64 1/2 1/4)) (pow.f64 1/2 1/4))))
(fma.f64 (pow.f64 1/2 1/4) (/.f64 (*.f64 (*.f64 x x) -3/128) (*.f64 p p)) (fma.f64 -1/8 (/.f64 (*.f64 x (pow.f64 1/2 1/4)) p) (*.f64 (+.f64 (/.f64 (fma.f64 1/256 (pow.f64 x 3) (*.f64 (pow.f64 x 3) -11/1024)) (pow.f64 p 3)) 1) (pow.f64 1/2 1/4))))
(fma.f64 (pow.f64 1/2 1/4) (*.f64 -3/128 (*.f64 (/.f64 x p) (/.f64 x p))) (*.f64 (pow.f64 1/2 1/4) (+.f64 (*.f64 -1/8 (/.f64 x p)) (+.f64 1 (/.f64 (*.f64 (pow.f64 x 3) -7/1024) (pow.f64 p 3))))))
(*.f64 (pow.f64 1/2 1/4) (+.f64 (*.f64 -3/128 (*.f64 (/.f64 x p) (/.f64 x p))) (+.f64 (*.f64 -1/8 (/.f64 x p)) (+.f64 1 (/.f64 (*.f64 (pow.f64 x 3) -7/1024) (pow.f64 p 3))))))
(pow.f64 1/2 1/4)
(+.f64 (*.f64 -1/8 (*.f64 (/.f64 x p) (pow.f64 1/2 1/4))) (pow.f64 1/2 1/4))
(fma.f64 -1/8 (/.f64 (*.f64 x (pow.f64 1/2 1/4)) p) (pow.f64 1/2 1/4))
(*.f64 (+.f64 (*.f64 -1/8 (/.f64 x p)) 1) (pow.f64 1/2 1/4))
(+.f64 (*.f64 (pow.f64 1/2 1/4) (/.f64 (+.f64 (*.f64 1/128 (pow.f64 x 2)) (*.f64 -1/32 (pow.f64 x 2))) (pow.f64 p 2))) (+.f64 (*.f64 -1/8 (*.f64 (/.f64 x p) (pow.f64 1/2 1/4))) (pow.f64 1/2 1/4)))
(+.f64 (fma.f64 -1/8 (/.f64 (*.f64 x (pow.f64 1/2 1/4)) p) (pow.f64 1/2 1/4)) (*.f64 -3/128 (/.f64 (*.f64 (*.f64 x x) (pow.f64 1/2 1/4)) (*.f64 p p))))
(+.f64 (pow.f64 1/2 1/4) (*.f64 (pow.f64 1/2 1/4) (+.f64 (*.f64 -3/128 (*.f64 (/.f64 x p) (/.f64 x p))) (*.f64 -1/8 (/.f64 x p)))))
(*.f64 (pow.f64 1/2 1/4) (+.f64 (*.f64 -1/8 (/.f64 x p)) (+.f64 (*.f64 -3/128 (*.f64 (/.f64 x p) (/.f64 x p))) 1)))
(+.f64 (*.f64 (pow.f64 1/2 1/4) (/.f64 (+.f64 (*.f64 1/128 (pow.f64 x 2)) (*.f64 -1/32 (pow.f64 x 2))) (pow.f64 p 2))) (+.f64 (*.f64 -1/8 (*.f64 (/.f64 x p) (pow.f64 1/2 1/4))) (+.f64 (*.f64 -1 (*.f64 (/.f64 (+.f64 (*.f64 1/96 (pow.f64 x 3)) (+.f64 (*.f64 -1/256 (pow.f64 x 3)) (*.f64 1/3072 (pow.f64 x 3)))) (pow.f64 p 3)) (pow.f64 1/2 1/4))) (pow.f64 1/2 1/4))))
(fma.f64 (pow.f64 1/2 1/4) (/.f64 (*.f64 (*.f64 x x) -3/128) (*.f64 p p)) (fma.f64 -1/8 (/.f64 (*.f64 x (pow.f64 1/2 1/4)) p) (fma.f64 -1 (*.f64 (pow.f64 1/2 1/4) (/.f64 (fma.f64 1/96 (pow.f64 x 3) (*.f64 (pow.f64 x 3) -11/3072)) (pow.f64 p 3))) (pow.f64 1/2 1/4))))
(+.f64 (*.f64 (+.f64 (neg.f64 (/.f64 (*.f64 (pow.f64 x 3) 7/1024) (pow.f64 p 3))) 1) (pow.f64 1/2 1/4)) (*.f64 (pow.f64 1/2 1/4) (+.f64 (*.f64 -3/128 (*.f64 (/.f64 x p) (/.f64 x p))) (*.f64 -1/8 (/.f64 x p)))))
(+.f64 (*.f64 (pow.f64 1/2 1/4) (+.f64 (*.f64 -3/128 (*.f64 (/.f64 x p) (/.f64 x p))) (-.f64 (*.f64 -1/8 (/.f64 x p)) (/.f64 (*.f64 (pow.f64 x 3) 7/1024) (pow.f64 p 3))))) (pow.f64 1/2 1/4))
(sqrt.f64 1/2)
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p)) (sqrt.f64 1/2))
(fma.f64 -1/4 (/.f64 (sqrt.f64 1/2) (/.f64 p x)) (sqrt.f64 1/2))
(fma.f64 -1/4 (/.f64 x (/.f64 p (sqrt.f64 1/2))) (sqrt.f64 1/2))
(fma.f64 -1/4 (*.f64 (/.f64 x p) (sqrt.f64 1/2)) (sqrt.f64 1/2))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p)) (+.f64 (*.f64 (+.f64 (*.f64 -3/64 (/.f64 (sqrt.f64 1/2) (pow.f64 p 2))) (*.f64 1/64 (/.f64 (sqrt.f64 1/2) (pow.f64 p 2)))) (pow.f64 x 2)) (sqrt.f64 1/2)))
(fma.f64 -1/4 (/.f64 (sqrt.f64 1/2) (/.f64 p x)) (fma.f64 (*.f64 (/.f64 (sqrt.f64 1/2) (*.f64 p p)) -1/32) (*.f64 x x) (sqrt.f64 1/2)))
(fma.f64 -1/4 (/.f64 x (/.f64 p (sqrt.f64 1/2))) (fma.f64 (*.f64 x x) (*.f64 -1/32 (/.f64 (sqrt.f64 1/2) (*.f64 p p))) (sqrt.f64 1/2)))
(fma.f64 -1/4 (*.f64 (/.f64 x p) (sqrt.f64 1/2)) (fma.f64 (*.f64 x x) (/.f64 (*.f64 (sqrt.f64 1/2) -1/32) (*.f64 p p)) (sqrt.f64 1/2)))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p)) (+.f64 (*.f64 (+.f64 (*.f64 -3/64 (/.f64 (sqrt.f64 1/2) (pow.f64 p 2))) (*.f64 1/64 (/.f64 (sqrt.f64 1/2) (pow.f64 p 2)))) (pow.f64 x 2)) (+.f64 (sqrt.f64 1/2) (*.f64 (+.f64 (*.f64 -7/512 (/.f64 (sqrt.f64 1/2) (pow.f64 p 3))) (*.f64 3/512 (/.f64 (sqrt.f64 1/2) (pow.f64 p 3)))) (pow.f64 x 3)))))
(fma.f64 -1/4 (/.f64 (sqrt.f64 1/2) (/.f64 p x)) (+.f64 (fma.f64 (*.f64 (/.f64 (sqrt.f64 1/2) (*.f64 p p)) -1/32) (*.f64 x x) (sqrt.f64 1/2)) (*.f64 (pow.f64 x 3) (*.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 p 3)) -1/128))))
(fma.f64 -1/4 (/.f64 x (/.f64 p (sqrt.f64 1/2))) (fma.f64 (*.f64 x x) (*.f64 -1/32 (/.f64 (sqrt.f64 1/2) (*.f64 p p))) (fma.f64 (pow.f64 x 3) (*.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 p 3)) -1/128) (sqrt.f64 1/2))))
(fma.f64 -1/4 (*.f64 (/.f64 x p) (sqrt.f64 1/2)) (fma.f64 (*.f64 x x) (/.f64 (*.f64 (sqrt.f64 1/2) -1/32) (*.f64 p p)) (fma.f64 (pow.f64 x 3) (*.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 p 3)) -1/128) (sqrt.f64 1/2))))
(pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (neg.f64 (*.f64 1/4 (/.f64 1 p)))) (*.f64 -1 (log.f64 (/.f64 1 x)))))) 2)
(pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 (neg.f64 (/.f64 1/4 p))) (neg.f64 (neg.f64 (log.f64 x))))) 2)
(pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 (/.f64 -1/4 p)) (log.f64 x))) 2)
(pow.f64 (*.f64 (pow.f64 (/.f64 -1/4 p) 1/4) (pow.f64 x 1/4)) 2)
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (neg.f64 (*.f64 1/4 (/.f64 1 p)))) (*.f64 -1 (log.f64 (/.f64 1 x)))))) 2) p) x)) (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (neg.f64 (*.f64 1/4 (/.f64 1 p)))) (*.f64 -1 (log.f64 (/.f64 1 x)))))) 2))
(fma.f64 -1 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 (neg.f64 (/.f64 1/4 p))) (neg.f64 (neg.f64 (log.f64 x))))) 2) (/.f64 x p)) (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 (neg.f64 (/.f64 1/4 p))) (neg.f64 (neg.f64 (log.f64 x))))) 2))
(-.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 (/.f64 -1/4 p)) (log.f64 x))) 2) (/.f64 p (/.f64 x (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 (/.f64 -1/4 p)) (log.f64 x))) 2))))
(-.f64 (pow.f64 (*.f64 (pow.f64 (/.f64 -1/4 p) 1/4) (pow.f64 x 1/4)) 2) (*.f64 (/.f64 p x) (pow.f64 (*.f64 (pow.f64 (/.f64 -1/4 p) 1/4) (pow.f64 x 1/4)) 2)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (neg.f64 (*.f64 1/4 (/.f64 1 p)))) (*.f64 -1 (log.f64 (/.f64 1 x)))))) 2) p) x)) (+.f64 (*.f64 2 (/.f64 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 p 2)) (*.f64 -1/2 (pow.f64 p 2))) (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (neg.f64 (*.f64 1/4 (/.f64 1 p)))) (*.f64 -1 (log.f64 (/.f64 1 x)))))) 2)) (pow.f64 x 2))) (+.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (neg.f64 (*.f64 1/4 (/.f64 1 p)))) (*.f64 -1 (log.f64 (/.f64 1 x)))))) 2) (*.f64 1/4 (/.f64 (*.f64 (pow.f64 p 2) (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (neg.f64 (*.f64 1/4 (/.f64 1 p)))) (*.f64 -1 (log.f64 (/.f64 1 x)))))) 2)) (pow.f64 x 2))))))
(fma.f64 -1 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 (neg.f64 (/.f64 1/4 p))) (neg.f64 (neg.f64 (log.f64 x))))) 2) (/.f64 x p)) (fma.f64 2 (/.f64 (*.f64 (*.f64 p p) -3/8) (/.f64 (*.f64 x x) (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 (neg.f64 (/.f64 1/4 p))) (neg.f64 (neg.f64 (log.f64 x))))) 2))) (+.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 (neg.f64 (/.f64 1/4 p))) (neg.f64 (neg.f64 (log.f64 x))))) 2) (/.f64 (*.f64 1/4 (*.f64 (*.f64 p p) (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 (neg.f64 (/.f64 1/4 p))) (neg.f64 (neg.f64 (log.f64 x))))) 2))) (*.f64 x x)))))
(-.f64 (fma.f64 2 (*.f64 (/.f64 (*.f64 p (*.f64 p -3/8)) x) (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 (/.f64 -1/4 p)) (log.f64 x))) 2) x)) (fma.f64 1/4 (*.f64 (*.f64 (/.f64 p x) (/.f64 p x)) (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 (/.f64 -1/4 p)) (log.f64 x))) 2)) (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 (/.f64 -1/4 p)) (log.f64 x))) 2))) (/.f64 p (/.f64 x (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 (/.f64 -1/4 p)) (log.f64 x))) 2))))
(-.f64 (fma.f64 2 (*.f64 (*.f64 (/.f64 (pow.f64 (*.f64 (pow.f64 (/.f64 -1/4 p) 1/4) (pow.f64 x 1/4)) 2) (*.f64 x x)) (*.f64 p p)) -3/8) (fma.f64 1/4 (*.f64 (/.f64 (pow.f64 (*.f64 (pow.f64 (/.f64 -1/4 p) 1/4) (pow.f64 x 1/4)) 2) (*.f64 x x)) (*.f64 p p)) (pow.f64 (*.f64 (pow.f64 (/.f64 -1/4 p) 1/4) (pow.f64 x 1/4)) 2))) (*.f64 (/.f64 p x) (pow.f64 (*.f64 (pow.f64 (/.f64 -1/4 p) 1/4) (pow.f64 x 1/4)) 2)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (neg.f64 (*.f64 1/4 (/.f64 1 p)))) (*.f64 -1 (log.f64 (/.f64 1 x)))))) 2) p) x)) (+.f64 (*.f64 2 (/.f64 (*.f64 (+.f64 (*.f64 1/4 (pow.f64 p 3)) (+.f64 (*.f64 -1/48 (pow.f64 p 3)) (*.f64 -2/3 (pow.f64 p 3)))) (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (neg.f64 (*.f64 1/4 (/.f64 1 p)))) (*.f64 -1 (log.f64 (/.f64 1 x)))))) 2)) (pow.f64 x 3))) (+.f64 (*.f64 2 (/.f64 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 p 2)) (*.f64 -1/2 (pow.f64 p 2))) (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (neg.f64 (*.f64 1/4 (/.f64 1 p)))) (*.f64 -1 (log.f64 (/.f64 1 x)))))) 2)) (pow.f64 x 2))) (+.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (neg.f64 (*.f64 1/4 (/.f64 1 p)))) (*.f64 -1 (log.f64 (/.f64 1 x)))))) 2) (+.f64 (*.f64 -1 (/.f64 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 p 2)) (*.f64 -1/2 (pow.f64 p 2))) (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (neg.f64 (*.f64 1/4 (/.f64 1 p)))) (*.f64 -1 (log.f64 (/.f64 1 x)))))) 2) p)) (pow.f64 x 3))) (*.f64 1/4 (/.f64 (*.f64 (pow.f64 p 2) (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (neg.f64 (*.f64 1/4 (/.f64 1 p)))) (*.f64 -1 (log.f64 (/.f64 1 x)))))) 2)) (pow.f64 x 2))))))))
(fma.f64 -1 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 (neg.f64 (/.f64 1/4 p))) (neg.f64 (neg.f64 (log.f64 x))))) 2) (/.f64 x p)) (fma.f64 2 (/.f64 (fma.f64 1/4 (pow.f64 p 3) (*.f64 (pow.f64 p 3) -11/16)) (/.f64 (pow.f64 x 3) (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 (neg.f64 (/.f64 1/4 p))) (neg.f64 (neg.f64 (log.f64 x))))) 2))) (fma.f64 2 (/.f64 (*.f64 (*.f64 p p) -3/8) (/.f64 (*.f64 x x) (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 (neg.f64 (/.f64 1/4 p))) (neg.f64 (neg.f64 (log.f64 x))))) 2))) (+.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 (neg.f64 (/.f64 1/4 p))) (neg.f64 (neg.f64 (log.f64 x))))) 2) (fma.f64 -1 (/.f64 (*.f64 (*.f64 p p) -3/8) (/.f64 (pow.f64 x 3) (*.f64 p (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 (neg.f64 (/.f64 1/4 p))) (neg.f64 (neg.f64 (log.f64 x))))) 2)))) (/.f64 (*.f64 1/4 (*.f64 (*.f64 p p) (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 (neg.f64 (/.f64 1/4 p))) (neg.f64 (neg.f64 (log.f64 x))))) 2))) (*.f64 x x)))))))
(-.f64 (fma.f64 2 (*.f64 (/.f64 (*.f64 (pow.f64 p 3) -7/16) (pow.f64 x 3)) (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 (/.f64 -1/4 p)) (log.f64 x))) 2)) (+.f64 (fma.f64 2 (*.f64 (/.f64 (*.f64 p (*.f64 p -3/8)) x) (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 (/.f64 -1/4 p)) (log.f64 x))) 2) x)) (fma.f64 1/4 (*.f64 (*.f64 (/.f64 p x) (/.f64 p x)) (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 (/.f64 -1/4 p)) (log.f64 x))) 2)) (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 (/.f64 -1/4 p)) (log.f64 x))) 2))) (/.f64 (neg.f64 (*.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 (/.f64 -1/4 p)) (log.f64 x))) 2) (*.f64 (pow.f64 p 3) -3/8))) (pow.f64 x 3)))) (/.f64 p (/.f64 x (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 (/.f64 -1/4 p)) (log.f64 x))) 2))))
(+.f64 (*.f64 2 (*.f64 (pow.f64 (*.f64 (pow.f64 (/.f64 -1/4 p) 1/4) (pow.f64 x 1/4)) 2) (+.f64 (/.f64 (*.f64 (pow.f64 p 3) -7/16) (pow.f64 x 3)) (/.f64 (*.f64 p (*.f64 p -3/8)) (*.f64 x x))))) (-.f64 (-.f64 (fma.f64 1/4 (*.f64 (/.f64 (pow.f64 (*.f64 (pow.f64 (/.f64 -1/4 p) 1/4) (pow.f64 x 1/4)) 2) (*.f64 x x)) (*.f64 p p)) (pow.f64 (*.f64 (pow.f64 (/.f64 -1/4 p) 1/4) (pow.f64 x 1/4)) 2)) (/.f64 (*.f64 (pow.f64 (*.f64 (pow.f64 (/.f64 -1/4 p) 1/4) (pow.f64 x 1/4)) 2) (*.f64 (pow.f64 p 3) -3/8)) (pow.f64 x 3))) (*.f64 (/.f64 p x) (pow.f64 (*.f64 (pow.f64 (/.f64 -1/4 p) 1/4) (pow.f64 x 1/4)) 2))))
(pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 (/.f64 1/4 p))))) 2)
(pow.f64 (pow.f64 (exp.f64 1/4) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 (/.f64 1/4 p)))) 2)
(pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 (/.f64 1/4 p)) (log.f64 (/.f64 -1 x)))) 2)
(pow.f64 (*.f64 (pow.f64 (/.f64 1/4 p) 1/4) (pow.f64 (/.f64 -1 x) -1/4)) 2)
(+.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 (/.f64 1/4 p))))) 2) (*.f64 -1 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 (/.f64 1/4 p))))) 2) p) x)))
(+.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 (/.f64 1/4 p)))) 2) (neg.f64 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 (/.f64 1/4 p)))) 2) (/.f64 x p))))
(-.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 (/.f64 1/4 p)) (log.f64 (/.f64 -1 x)))) 2) (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 (/.f64 1/4 p)) (log.f64 (/.f64 -1 x)))) 2) (/.f64 x p)))
(-.f64 (pow.f64 (*.f64 (pow.f64 (/.f64 1/4 p) 1/4) (pow.f64 (/.f64 -1 x) -1/4)) 2) (*.f64 (/.f64 p x) (pow.f64 (*.f64 (pow.f64 (/.f64 1/4 p) 1/4) (pow.f64 (/.f64 -1 x) -1/4)) 2)))
(+.f64 (*.f64 1/4 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 (/.f64 1/4 p))))) 2) (pow.f64 p 2)) (pow.f64 x 2))) (+.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 (/.f64 1/4 p))))) 2) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 (/.f64 1/4 p))))) 2) p) x)) (*.f64 2 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 (/.f64 1/4 p))))) 2) (+.f64 (*.f64 1/8 (pow.f64 p 2)) (*.f64 -1/2 (pow.f64 p 2)))) (pow.f64 x 2))))))
(fma.f64 1/4 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 (/.f64 1/4 p)))) 2) (/.f64 (*.f64 x x) (*.f64 p p))) (+.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 (/.f64 1/4 p)))) 2) (fma.f64 -1 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 (/.f64 1/4 p)))) 2) (/.f64 x p)) (*.f64 2 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 (/.f64 1/4 p)))) 2) (/.f64 (*.f64 x x) (*.f64 (*.f64 p p) -3/8)))))))
(+.f64 (-.f64 (*.f64 2 (*.f64 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 (/.f64 1/4 p)) (log.f64 (/.f64 -1 x)))) 2) (*.f64 x x)) (*.f64 p (*.f64 p -3/8)))) (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 (/.f64 1/4 p)) (log.f64 (/.f64 -1 x)))) 2) (/.f64 x p))) (fma.f64 1/4 (*.f64 (/.f64 (*.f64 p p) x) (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 (/.f64 1/4 p)) (log.f64 (/.f64 -1 x)))) 2) x)) (pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 (/.f64 1/4 p)) (log.f64 (/.f64 -1 x)))) 2)))
(+.f64 (-.f64 (*.f64 (/.f64 2 x) (/.f64 (*.f64 (*.f64 p p) (*.f64 -3/8 (pow.f64 (*.f64 (pow.f64 (/.f64 1/4 p) 1/4) (pow.f64 (/.f64 -1 x) -1/4)) 2))) x)) (*.f64 (/.f64 p x) (pow.f64 (*.f64 (pow.f64 (/.f64 1/4 p) 1/4) (pow.f64 (/.f64 -1 x) -1/4)) 2))) (fma.f64 1/4 (*.f64 (*.f64 (/.f64 p x) (/.f64 p x)) (pow.f64 (*.f64 (pow.f64 (/.f64 1/4 p) 1/4) (pow.f64 (/.f64 -1 x) -1/4)) 2)) (pow.f64 (*.f64 (pow.f64 (/.f64 1/4 p) 1/4) (pow.f64 (/.f64 -1 x) -1/4)) 2)))
(+.f64 (*.f64 1/4 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 (/.f64 1/4 p))))) 2) (pow.f64 p 2)) (pow.f64 x 2))) (+.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 (/.f64 1/4 p))))) 2) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 (/.f64 1/4 p))))) 2) p) x)) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 (/.f64 1/4 p))))) 2) (*.f64 (+.f64 (*.f64 1/8 (pow.f64 p 2)) (*.f64 -1/2 (pow.f64 p 2))) p)) (*.f64 2 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 (/.f64 1/4 p))))) 2) (+.f64 (*.f64 1/48 (pow.f64 p 3)) (+.f64 (*.f64 2/3 (pow.f64 p 3)) (*.f64 -1/4 (pow.f64 p 3))))))) (pow.f64 x 3))) (*.f64 2 (/.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 (/.f64 1/4 p))))) 2) (+.f64 (*.f64 1/8 (pow.f64 p 2)) (*.f64 -1/2 (pow.f64 p 2)))) (pow.f64 x 2)))))))
(fma.f64 1/4 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 (/.f64 1/4 p)))) 2) (/.f64 (*.f64 x x) (*.f64 p p))) (+.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 (/.f64 1/4 p)))) 2) (fma.f64 -1 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 (/.f64 1/4 p)))) 2) (/.f64 x p)) (fma.f64 -1 (/.f64 (fma.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 (/.f64 1/4 p)))) 2) (*.f64 p (*.f64 (*.f64 p p) -3/8)) (*.f64 2 (*.f64 (fma.f64 1/48 (pow.f64 p 3) (*.f64 (pow.f64 p 3) 5/12)) (pow.f64 (pow.f64 (exp.f64 1/4) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 (/.f64 1/4 p)))) 2)))) (pow.f64 x 3)) (*.f64 2 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (fma.f64 -1 (log.f64 (/.f64 -1 x)) (log.f64 (/.f64 1/4 p)))) 2) (/.f64 (*.f64 x x) (*.f64 (*.f64 p p) -3/8))))))))
(+.f64 (-.f64 (-.f64 (*.f64 2 (*.f64 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 (/.f64 1/4 p)) (log.f64 (/.f64 -1 x)))) 2) (*.f64 x x)) (*.f64 p (*.f64 p -3/8)))) (/.f64 (fma.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 (/.f64 1/4 p)) (log.f64 (/.f64 -1 x)))) 2) (*.f64 (pow.f64 p 3) -3/8) (*.f64 2 (*.f64 (*.f64 (pow.f64 p 3) 7/16) (pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 (/.f64 1/4 p)) (log.f64 (/.f64 -1 x)))) 2)))) (pow.f64 x 3))) (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 (/.f64 1/4 p)) (log.f64 (/.f64 -1 x)))) 2) (/.f64 x p))) (fma.f64 1/4 (*.f64 (/.f64 (*.f64 p p) x) (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 (/.f64 1/4 p)) (log.f64 (/.f64 -1 x)))) 2) x)) (pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 (/.f64 1/4 p)) (log.f64 (/.f64 -1 x)))) 2)))
(+.f64 (-.f64 (*.f64 (/.f64 2 x) (/.f64 (*.f64 (*.f64 p p) (*.f64 -3/8 (pow.f64 (*.f64 (pow.f64 (/.f64 1/4 p) 1/4) (pow.f64 (/.f64 -1 x) -1/4)) 2))) x)) (+.f64 (*.f64 (/.f64 p x) (pow.f64 (*.f64 (pow.f64 (/.f64 1/4 p) 1/4) (pow.f64 (/.f64 -1 x) -1/4)) 2)) (/.f64 (*.f64 (pow.f64 (*.f64 (pow.f64 (/.f64 1/4 p) 1/4) (pow.f64 (/.f64 -1 x) -1/4)) 2) (+.f64 (*.f64 (pow.f64 p 3) -3/8) (*.f64 2 (*.f64 (pow.f64 p 3) 7/16)))) (pow.f64 x 3)))) (fma.f64 1/4 (*.f64 (*.f64 (/.f64 p x) (/.f64 p x)) (pow.f64 (*.f64 (pow.f64 (/.f64 1/4 p) 1/4) (pow.f64 (/.f64 -1 x) -1/4)) 2)) (pow.f64 (*.f64 (pow.f64 (/.f64 1/4 p) 1/4) (pow.f64 (/.f64 -1 x) -1/4)) 2)))
(pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (*.f64 -1/4 x)) (*.f64 -1 (log.f64 p))))) 2)
(pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 (neg.f64 (/.f64 1/4 p))) (neg.f64 (neg.f64 (log.f64 x))))) 2)
(pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 (/.f64 -1/4 p)) (log.f64 x))) 2)
(pow.f64 (*.f64 (pow.f64 (/.f64 -1/4 p) 1/4) (pow.f64 x 1/4)) 2)
(+.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (*.f64 -1/4 x)) (*.f64 -1 (log.f64 p))))) 2) (*.f64 -1 (/.f64 (*.f64 p (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (*.f64 -1/4 x)) (*.f64 -1 (log.f64 p))))) 2)) x)))
(fma.f64 -1 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 (neg.f64 (/.f64 1/4 p))) (neg.f64 (neg.f64 (log.f64 x))))) 2) (/.f64 x p)) (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 (neg.f64 (/.f64 1/4 p))) (neg.f64 (neg.f64 (log.f64 x))))) 2))
(-.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 (/.f64 -1/4 p)) (log.f64 x))) 2) (/.f64 p (/.f64 x (pow.f64 (pow.f64 (exp.f64 1/4) (+.f64 (log.f64 (/.f64 -1/4 p)) (log.f64 x))) 2))))
(-.f64 (pow.f64 (*.f64 (pow.f64 (/.f64 -1/4 p) 1/4) (pow.f64 x 1/4)) 2) (*.f64 (/.f64 p x) (pow.f64 (*.f64 (pow.f64 (/.f64 -1/4 p) 1/4) (pow.f64 x 1/4)) 2)))
(+.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (*.f64 -1/4 x)) (*.f64 -1 (log.f64 p))))) 2) (+.f64 (*.f64 (+.f64 (*.f64 1/4 (/.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (*.f64 -1/4 x)) (*.f64 -1 (log.f64 p))))) 2) (pow.f64 x 2))) (*.f64 -3/4 (/.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (*.f64 -1/4 x)) (*.f64 -1 (log.f64 p))))) 2) (pow.f64 x 2)))) (pow.f64 p 2)) (*.f64 -1 (/.f64 (*.f64 p (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (*.f64 -1/4 x)) (*.f64 -1 (log.f64 p))))) 2)) x))))
(+.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (fma.f64 -1 (log.f64 p) (log.f64 (*.f64 x -1/4)))) 2) (fma.f64 (*.f64 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (fma.f64 -1 (log.f64 p) (log.f64 (*.f64 x -1/4)))) 2) (*.f64 x x)) -1/2) (*.f64 p p) (neg.f64 (/.f64 p (/.f64 x (pow.f64 (pow.f64 (exp.f64 1/4) (fma.f64 -1 (log.f64 p) (log.f64 (*.f64 x -1/4)))) 2))))))
(+.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 (*.f64 x -1/4)) (log.f64 p))) 2) (-.f64 (*.f64 (*.f64 p p) (*.f64 -1/2 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 (*.f64 x -1/4)) (log.f64 p))) 2) (*.f64 x x)))) (*.f64 (/.f64 p x) (pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 (*.f64 x -1/4)) (log.f64 p))) 2))))
(+.f64 (-.f64 (pow.f64 (*.f64 (pow.f64 (/.f64 -1/4 p) 1/4) (pow.f64 x 1/4)) 2) (*.f64 (/.f64 p x) (pow.f64 (*.f64 (pow.f64 (/.f64 -1/4 p) 1/4) (pow.f64 x 1/4)) 2))) (*.f64 (/.f64 (pow.f64 (*.f64 (pow.f64 (/.f64 -1/4 p) 1/4) (pow.f64 x 1/4)) 2) (*.f64 x x)) (*.f64 p (*.f64 p -1/2))))
(+.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (*.f64 -1/4 x)) (*.f64 -1 (log.f64 p))))) 2) (+.f64 (*.f64 (+.f64 (*.f64 -7/8 (/.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (*.f64 -1/4 x)) (*.f64 -1 (log.f64 p))))) 2) (pow.f64 x 3))) (*.f64 3/8 (/.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (*.f64 -1/4 x)) (*.f64 -1 (log.f64 p))))) 2) (pow.f64 x 3)))) (pow.f64 p 3)) (+.f64 (*.f64 (+.f64 (*.f64 1/4 (/.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (*.f64 -1/4 x)) (*.f64 -1 (log.f64 p))))) 2) (pow.f64 x 2))) (*.f64 -3/4 (/.f64 (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (*.f64 -1/4 x)) (*.f64 -1 (log.f64 p))))) 2) (pow.f64 x 2)))) (pow.f64 p 2)) (*.f64 -1 (/.f64 (*.f64 p (pow.f64 (exp.f64 (*.f64 1/4 (+.f64 (log.f64 (*.f64 -1/4 x)) (*.f64 -1 (log.f64 p))))) 2)) x)))))
(+.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (fma.f64 -1 (log.f64 p) (log.f64 (*.f64 x -1/4)))) 2) (fma.f64 (*.f64 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (fma.f64 -1 (log.f64 p) (log.f64 (*.f64 x -1/4)))) 2) (pow.f64 x 3)) -1/2) (pow.f64 p 3) (fma.f64 (*.f64 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (fma.f64 -1 (log.f64 p) (log.f64 (*.f64 x -1/4)))) 2) (*.f64 x x)) -1/2) (*.f64 p p) (neg.f64 (/.f64 p (/.f64 x (pow.f64 (pow.f64 (exp.f64 1/4) (fma.f64 -1 (log.f64 p) (log.f64 (*.f64 x -1/4)))) 2)))))))
(+.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 (*.f64 x -1/4)) (log.f64 p))) 2) (-.f64 (fma.f64 (pow.f64 p 3) (*.f64 -1/2 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 (*.f64 x -1/4)) (log.f64 p))) 2) (pow.f64 x 3))) (*.f64 (*.f64 p p) (*.f64 -1/2 (/.f64 (pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 (*.f64 x -1/4)) (log.f64 p))) 2) (*.f64 x x))))) (*.f64 (/.f64 p x) (pow.f64 (pow.f64 (exp.f64 1/4) (-.f64 (log.f64 (*.f64 x -1/4)) (log.f64 p))) 2))))
(+.f64 (*.f64 (*.f64 p p) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (*.f64 (pow.f64 (/.f64 -1/4 p) 1/4) (pow.f64 x 1/4)) 2) (*.f64 x x))) (*.f64 (*.f64 -1/2 (/.f64 (pow.f64 (*.f64 (pow.f64 (/.f64 -1/4 p) 1/4) (pow.f64 x 1/4)) 2) (pow.f64 x 3))) p))) (-.f64 (pow.f64 (*.f64 (pow.f64 (/.f64 -1/4 p) 1/4) (pow.f64 x 1/4)) 2) (*.f64 (/.f64 p x) (pow.f64 (*.f64 (pow.f64 (/.f64 -1/4 p) 1/4) (pow.f64 x 1/4)) 2))))
(sqrt.f64 1/2)
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p)) (sqrt.f64 1/2))
(fma.f64 -1/4 (/.f64 (sqrt.f64 1/2) (/.f64 p x)) (sqrt.f64 1/2))
(fma.f64 -1/4 (/.f64 x (/.f64 p (sqrt.f64 1/2))) (sqrt.f64 1/2))
(fma.f64 -1/4 (*.f64 (/.f64 x p) (sqrt.f64 1/2)) (sqrt.f64 1/2))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p)) (+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 2 (/.f64 (*.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/128 (pow.f64 x 2)) (*.f64 -1/32 (pow.f64 x 2)))) (pow.f64 p 2))) (*.f64 1/64 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 2)) (pow.f64 p 2))))))
(+.f64 (fma.f64 -1/4 (/.f64 (sqrt.f64 1/2) (/.f64 p x)) (sqrt.f64 1/2)) (fma.f64 2 (/.f64 (sqrt.f64 1/2) (/.f64 (*.f64 p p) (*.f64 (*.f64 x x) -3/128))) (*.f64 1/64 (/.f64 (sqrt.f64 1/2) (/.f64 (*.f64 p p) (*.f64 x x))))))
(+.f64 (fma.f64 -1/4 (/.f64 x (/.f64 p (sqrt.f64 1/2))) (sqrt.f64 1/2)) (fma.f64 2 (*.f64 (/.f64 (sqrt.f64 1/2) (*.f64 p p)) (*.f64 x (*.f64 x -3/128))) (*.f64 1/64 (*.f64 (/.f64 (sqrt.f64 1/2) (*.f64 p p)) (*.f64 x x)))))
(+.f64 (fma.f64 -1/4 (*.f64 (/.f64 x p) (sqrt.f64 1/2)) (sqrt.f64 1/2)) (fma.f64 1/64 (*.f64 (*.f64 (/.f64 x p) (/.f64 x p)) (sqrt.f64 1/2)) (/.f64 (*.f64 (sqrt.f64 1/2) (*.f64 (*.f64 x x) -3/64)) (*.f64 p p))))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p)) (+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 2 (/.f64 (*.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/128 (pow.f64 x 2)) (*.f64 -1/32 (pow.f64 x 2)))) (pow.f64 p 2))) (+.f64 (*.f64 -1/8 (/.f64 (*.f64 (sqrt.f64 1/2) (*.f64 (+.f64 (*.f64 1/128 (pow.f64 x 2)) (*.f64 -1/32 (pow.f64 x 2))) x)) (pow.f64 p 3))) (+.f64 (*.f64 1/64 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 2)) (pow.f64 p 2))) (+.f64 (*.f64 -1/8 (/.f64 (*.f64 (sqrt.f64 1/2) (*.f64 x (+.f64 (*.f64 1/128 (pow.f64 x 2)) (*.f64 -1/32 (pow.f64 x 2))))) (pow.f64 p 3))) (*.f64 2 (/.f64 (*.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/256 (pow.f64 x 3)) (+.f64 (*.f64 -1/3072 (pow.f64 x 3)) (*.f64 -1/96 (pow.f64 x 3))))) (pow.f64 p 3)))))))))
(+.f64 (fma.f64 -1/4 (/.f64 (sqrt.f64 1/2) (/.f64 p x)) (sqrt.f64 1/2)) (fma.f64 2 (/.f64 (sqrt.f64 1/2) (/.f64 (*.f64 p p) (*.f64 (*.f64 x x) -3/128))) (fma.f64 -1/8 (/.f64 (sqrt.f64 1/2) (/.f64 (pow.f64 p 3) (*.f64 x (*.f64 (*.f64 x x) -3/128)))) (fma.f64 1/64 (/.f64 (sqrt.f64 1/2) (/.f64 (*.f64 p p) (*.f64 x x))) (fma.f64 -1/8 (/.f64 (sqrt.f64 1/2) (/.f64 (pow.f64 p 3) (*.f64 x (*.f64 (*.f64 x x) -3/128)))) (*.f64 2 (/.f64 (sqrt.f64 1/2) (/.f64 (pow.f64 p 3) (fma.f64 1/256 (pow.f64 x 3) (*.f64 (pow.f64 x 3) -11/1024))))))))))
(+.f64 (fma.f64 -1/4 (/.f64 x (/.f64 p (sqrt.f64 1/2))) (sqrt.f64 1/2)) (fma.f64 2 (*.f64 (/.f64 (sqrt.f64 1/2) (*.f64 p p)) (*.f64 x (*.f64 x -3/128))) (fma.f64 -1/8 (*.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 p 3)) (*.f64 (pow.f64 x 3) -3/128)) (fma.f64 1/64 (*.f64 (/.f64 (sqrt.f64 1/2) (*.f64 p p)) (*.f64 x x)) (fma.f64 -1/8 (*.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 p 3)) (*.f64 (pow.f64 x 3) -3/128)) (*.f64 2 (*.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 p 3)) (*.f64 (pow.f64 x 3) -7/1024))))))))
(+.f64 (fma.f64 -1/4 (*.f64 (/.f64 x p) (sqrt.f64 1/2)) (sqrt.f64 1/2)) (+.f64 (/.f64 (*.f64 (sqrt.f64 1/2) (*.f64 (*.f64 x x) -3/64)) (*.f64 p p)) (fma.f64 -1/8 (*.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 p 3)) (*.f64 (pow.f64 x 3) -3/128)) (fma.f64 1/64 (*.f64 (*.f64 (/.f64 x p) (/.f64 x p)) (sqrt.f64 1/2)) (fma.f64 2 (*.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 p 3)) (*.f64 (pow.f64 x 3) -7/1024)) (/.f64 (*.f64 (sqrt.f64 1/2) -1/8) (/.f64 (/.f64 (pow.f64 p 3) (pow.f64 x 3)) -3/128)))))))
(sqrt.f64 1/2)
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p)) (sqrt.f64 1/2))
(fma.f64 -1/4 (/.f64 (sqrt.f64 1/2) (/.f64 p x)) (sqrt.f64 1/2))
(fma.f64 -1/4 (/.f64 x (/.f64 p (sqrt.f64 1/2))) (sqrt.f64 1/2))
(fma.f64 -1/4 (*.f64 (/.f64 x p) (sqrt.f64 1/2)) (sqrt.f64 1/2))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p)) (+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 2 (/.f64 (*.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/128 (pow.f64 x 2)) (*.f64 -1/32 (pow.f64 x 2)))) (pow.f64 p 2))) (*.f64 1/64 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 2)) (pow.f64 p 2))))))
(+.f64 (fma.f64 -1/4 (/.f64 (sqrt.f64 1/2) (/.f64 p x)) (sqrt.f64 1/2)) (fma.f64 2 (/.f64 (sqrt.f64 1/2) (/.f64 (*.f64 p p) (*.f64 (*.f64 x x) -3/128))) (*.f64 1/64 (/.f64 (sqrt.f64 1/2) (/.f64 (*.f64 p p) (*.f64 x x))))))
(+.f64 (fma.f64 -1/4 (/.f64 x (/.f64 p (sqrt.f64 1/2))) (sqrt.f64 1/2)) (fma.f64 2 (*.f64 (/.f64 (sqrt.f64 1/2) (*.f64 p p)) (*.f64 x (*.f64 x -3/128))) (*.f64 1/64 (*.f64 (/.f64 (sqrt.f64 1/2) (*.f64 p p)) (*.f64 x x)))))
(+.f64 (fma.f64 -1/4 (*.f64 (/.f64 x p) (sqrt.f64 1/2)) (sqrt.f64 1/2)) (fma.f64 1/64 (*.f64 (*.f64 (/.f64 x p) (/.f64 x p)) (sqrt.f64 1/2)) (/.f64 (*.f64 (sqrt.f64 1/2) (*.f64 (*.f64 x x) -3/64)) (*.f64 p p))))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (sqrt.f64 1/2) x) p)) (+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 2 (/.f64 (*.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/128 (pow.f64 x 2)) (*.f64 -1/32 (pow.f64 x 2)))) (pow.f64 p 2))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 2 (*.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/96 (pow.f64 x 3)) (+.f64 (*.f64 -1/256 (pow.f64 x 3)) (*.f64 1/3072 (pow.f64 x 3)))))) (+.f64 (*.f64 1/8 (*.f64 (sqrt.f64 1/2) (*.f64 (+.f64 (*.f64 1/128 (pow.f64 x 2)) (*.f64 -1/32 (pow.f64 x 2))) x))) (*.f64 1/8 (*.f64 (sqrt.f64 1/2) (*.f64 x (+.f64 (*.f64 1/128 (pow.f64 x 2)) (*.f64 -1/32 (pow.f64 x 2)))))))) (pow.f64 p 3))) (*.f64 1/64 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 2)) (pow.f64 p 2)))))))
(+.f64 (fma.f64 -1/4 (/.f64 (sqrt.f64 1/2) (/.f64 p x)) (sqrt.f64 1/2)) (fma.f64 2 (/.f64 (sqrt.f64 1/2) (/.f64 (*.f64 p p) (*.f64 (*.f64 x x) -3/128))) (fma.f64 -1 (/.f64 (fma.f64 2 (*.f64 (fma.f64 1/96 (pow.f64 x 3) (*.f64 (pow.f64 x 3) -11/3072)) (sqrt.f64 1/2)) (*.f64 1/8 (+.f64 (*.f64 (sqrt.f64 1/2) (*.f64 x (*.f64 (*.f64 x x) -3/128))) (*.f64 (sqrt.f64 1/2) (*.f64 x (*.f64 (*.f64 x x) -3/128)))))) (pow.f64 p 3)) (*.f64 1/64 (/.f64 (sqrt.f64 1/2) (/.f64 (*.f64 p p) (*.f64 x x)))))))
(+.f64 (fma.f64 -1/4 (/.f64 x (/.f64 p (sqrt.f64 1/2))) (sqrt.f64 1/2)) (fma.f64 2 (*.f64 (/.f64 (sqrt.f64 1/2) (*.f64 p p)) (*.f64 x (*.f64 x -3/128))) (-.f64 (*.f64 1/64 (*.f64 (/.f64 (sqrt.f64 1/2) (*.f64 p p)) (*.f64 x x))) (/.f64 (fma.f64 2 (*.f64 (*.f64 (pow.f64 x 3) 7/1024) (sqrt.f64 1/2)) (*.f64 (*.f64 (sqrt.f64 1/2) (*.f64 (pow.f64 x 3) -3/128)) 1/4)) (pow.f64 p 3)))))
(+.f64 (fma.f64 -1/4 (*.f64 (/.f64 x p) (sqrt.f64 1/2)) (sqrt.f64 1/2)) (-.f64 (fma.f64 1/64 (*.f64 (*.f64 (/.f64 x p) (/.f64 x p)) (sqrt.f64 1/2)) (/.f64 (*.f64 (sqrt.f64 1/2) (*.f64 (*.f64 x x) -3/64)) (*.f64 p p))) (/.f64 (fma.f64 2 (*.f64 (*.f64 (pow.f64 x 3) 7/1024) (sqrt.f64 1/2)) (*.f64 (*.f64 (pow.f64 x 3) -3/128) (*.f64 (sqrt.f64 1/2) 1/4))) (pow.f64 p 3))))

localize4.0ms (0.1%)

Compiler

Compiled 7 to 3 computations (57.1% saved)

localize6.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.2b
(*.f64 (/.f64 1 x) p)
Compiler

Compiled 13 to 8 computations (38.5% saved)

series2.0ms (0%)

Counts
1 → 24
Calls

6 calls:

TimeVariablePointExpression
0.0ms
x
@0
(*.f64 (/.f64 1 x) p)
0.0ms
x
@-inf
(*.f64 (/.f64 1 x) p)
0.0ms
p
@-inf
(*.f64 (/.f64 1 x) p)
0.0ms
x
@inf
(*.f64 (/.f64 1 x) p)
0.0ms
p
@inf
(*.f64 (/.f64 1 x) p)

rewrite45.0ms (0.8%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
064
11184
213864
Stop Event
node limit
Counts
1 → 21
Calls
Call 1
Inputs
(*.f64 (/.f64 1 x) p)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (/.f64 p x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 x p))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 p x)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (cbrt.f64 p) 2) (/.f64 x (cbrt.f64 p)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 p) (/.f64 x (sqrt.f64 p)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 p) (neg.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 p (sqrt.f64 x)) (sqrt.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 p 1) x)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 p (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -1 p) (neg.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 p -1) (neg.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 p x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 p x) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 p x)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 p x)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 p x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 p x)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 p x) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 p x)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 p x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 p x)))))))

simplify8.0ms (0.1%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0496
Stop Event
saturated
Counts
45 → 21
Calls
Call 1
Inputs
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
Outputs
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)

localize8.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
2.2b
(-.f64 (+.f64 1 (/.f64 p x)) 1)
Compiler

Compiled 20 to 10 computations (50% saved)

series2.0ms (0%)

Counts
1 → 24
Calls

6 calls:

TimeVariablePointExpression
0.0ms
x
@-inf
(-.f64 (+.f64 1 (/.f64 p x)) 1)
0.0ms
p
@0
(-.f64 (+.f64 1 (/.f64 p x)) 1)
0.0ms
p
@-inf
(-.f64 (+.f64 1 (/.f64 p x)) 1)
0.0ms
p
@inf
(-.f64 (+.f64 1 (/.f64 p x)) 1)
0.0ms
x
@0
(-.f64 (+.f64 1 (/.f64 p x)) 1)

rewrite55.0ms (0.9%)

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

Useful iterations: 1 (0.0ms)

IterNodesCost
0710
11604
223584
Stop Event
node limit
Counts
1 → 62
Calls
Call 1
Inputs
(-.f64 (+.f64 1 (/.f64 p x)) 1)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 1 (+.f64 (/.f64 p x) -1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 1 (*.f64 (+.f64 (/.f64 p x) -1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 p x) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 1 (/.f64 p x)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -1 (+.f64 1 (/.f64 p x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (/.f64 p x) -1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 p x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 p (/.f64 1 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 p x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 p) 2) (*.f64 (cbrt.f64 p) (/.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 p x)) (pow.f64 (cbrt.f64 (/.f64 p x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 p x)) 2) (cbrt.f64 (/.f64 p x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 p) (*.f64 (sqrt.f64 p) (/.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 p x)) (sqrt.f64 (/.f64 p x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 p) (/.f64 1 (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (+.f64 1 (/.f64 p x)) 3) -1) (/.f64 1 (+.f64 (pow.f64 (+.f64 1 (/.f64 p x)) 2) (+.f64 (/.f64 p x) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 x) p)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (+.f64 1 (/.f64 p x)) 2) -1) (/.f64 1 (+.f64 (/.f64 p x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 p) 2) 1) (/.f64 (cbrt.f64 p) x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 p) 1) (/.f64 (sqrt.f64 p) x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 x) 2)) (/.f64 p (cbrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 p) 2) (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 (/.f64 p x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 p) (pow.f64 (cbrt.f64 x) 2)) (/.f64 (sqrt.f64 p) (cbrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 p (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 p) 2) (sqrt.f64 x)) (/.f64 (cbrt.f64 p) (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (+.f64 1 (/.f64 p x))) 1) (-.f64 (sqrt.f64 (+.f64 1 (/.f64 p x))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 x p))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (/.f64 x p) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (pow.f64 (+.f64 1 (/.f64 p x)) 2) (+.f64 (/.f64 p x) 2)) (+.f64 (pow.f64 (+.f64 1 (/.f64 p x)) 3) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (/.f64 p x) 2) (+.f64 (pow.f64 (+.f64 1 (/.f64 p x)) 2) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 p x)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (cbrt.f64 p) 2) (/.f64 x (cbrt.f64 p)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 p) (/.f64 x (sqrt.f64 p)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 p) (neg.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (+.f64 1 (/.f64 p x)) 3) -1) (+.f64 (pow.f64 (+.f64 1 (/.f64 p x)) 2) (+.f64 (/.f64 p x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (+.f64 1 (/.f64 p x)) 3) -1) (+.f64 (pow.f64 (+.f64 1 (/.f64 p x)) 2) (-.f64 1 (*.f64 (+.f64 1 (/.f64 p x)) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1 (neg.f64 (/.f64 x p)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (+.f64 1 (/.f64 p x)) 2) -1) (+.f64 (/.f64 p x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (+.f64 1 (/.f64 p x)) 2) -1) (-.f64 (+.f64 1 (/.f64 p x)) -1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (neg.f64 p)) (neg.f64 (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 (+.f64 1 (/.f64 p x)) 3) -1)) (neg.f64 (+.f64 (pow.f64 (+.f64 1 (/.f64 p x)) 2) (+.f64 (/.f64 p x) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 (+.f64 1 (/.f64 p x)) 2) -1)) (neg.f64 (+.f64 (/.f64 p x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 p (sqrt.f64 x)) (sqrt.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 1 (pow.f64 (+.f64 (/.f64 p x) -1) 3)) (+.f64 1 (-.f64 (*.f64 (+.f64 (/.f64 p x) -1) (+.f64 (/.f64 p x) -1)) (+.f64 (/.f64 p x) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 1 (*.f64 (+.f64 (/.f64 p x) -1) (+.f64 (/.f64 p x) -1))) (-.f64 1 (+.f64 (/.f64 p x) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 p 1) x)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 p (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 p x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 p x)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 p x)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 p x) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 x p) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 p (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 p x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 p x)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 p x) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 p x)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 p x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 p x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (+.f64 1 (/.f64 p x)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (+.f64 1 (/.f64 p x))) 2) (cbrt.f64 (+.f64 1 (/.f64 p x))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (+.f64 1 (/.f64 p x))) (sqrt.f64 (+.f64 1 (/.f64 p x))) -1)))))

simplify9.0ms (0.1%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0496
Stop Event
saturated
Counts
86 → 62
Calls
Call 1
Inputs
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
Outputs
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)
(/.f64 p x)

localize7.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.7b
(pow.f64 (cbrt.f64 (/.f64 p x)) 3)
7.7b
(cbrt.f64 (/.f64 p x))
Compiler

Compiled 18 to 7 computations (61.1% saved)

series9.0ms (0.2%)

Counts
2 → 0
Calls

12 calls:

TimeVariablePointExpression
2.0ms
p
@0
(pow.f64 (cbrt.f64 (/.f64 p x)) 3)
1.0ms
p
@-inf
(pow.f64 (cbrt.f64 (/.f64 p x)) 3)
1.0ms
x
@inf
(pow.f64 (cbrt.f64 (/.f64 p x)) 3)
1.0ms
x
@-inf
(pow.f64 (cbrt.f64 (/.f64 p x)) 3)
1.0ms
p
@-inf
(cbrt.f64 (/.f64 p x))

rewrite56.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
635×pow1_binary64
599×add-log-exp_binary64
599×log1p-expm1-u_binary64
599×expm1-log1p-u_binary64
584×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0710
115310
2165010
Stop Event
node limit
Counts
2 → 71
Calls
Call 1
Inputs
(cbrt.f64 (/.f64 p x))
(pow.f64 (cbrt.f64 (/.f64 p x)) 3)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (cbrt.f64 (/.f64 p x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 p x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (cbrt.f64 (/.f64 p x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (/.f64 p x))) (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 p x))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (/.f64 p x))) (pow.f64 (pow.f64 (cbrt.f64 (/.f64 p x)) 2) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 p x))) 2) (cbrt.f64 (cbrt.f64 (/.f64 p x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 p) (cbrt.f64 (/.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 p) (pow.f64 (/.f64 1 x) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 p) (/.f64 1 (cbrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 p x) 1/6) (pow.f64 (/.f64 p x) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (/.f64 p x)) 2) 1/3) (cbrt.f64 (cbrt.f64 (/.f64 p x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/3) (cbrt.f64 (/.f64 p x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (/.f64 p x)) 1/3) (pow.f64 (sqrt.f64 (/.f64 p x)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (cbrt.f64 (/.f64 x p)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (cbrt.f64 x) (cbrt.f64 p)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 p) (cbrt.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (neg.f64 p)) (cbrt.f64 (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (cbrt.f64 p)) (neg.f64 (cbrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 p x) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 p x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 p x))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 p x) 1/6) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (cbrt.f64 (/.f64 p x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (cbrt.f64 (/.f64 p x))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (cbrt.f64 (/.f64 p x))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (cbrt.f64 (/.f64 p x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (cbrt.f64 (/.f64 p x))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (/.f64 p x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 p (/.f64 1 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 p x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 p x)) (pow.f64 (cbrt.f64 (/.f64 p x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 p x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 p x)) 2) (cbrt.f64 (/.f64 p x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 p x))) 2) (*.f64 (cbrt.f64 (cbrt.f64 (/.f64 p x))) (pow.f64 (cbrt.f64 (/.f64 p x)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 p) 2) (*.f64 (cbrt.f64 p) (/.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 p x) 1/6) (*.f64 (pow.f64 (/.f64 p x) 1/6) (pow.f64 (cbrt.f64 (/.f64 p x)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 p) (*.f64 (sqrt.f64 p) (/.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 p x)) (sqrt.f64 (/.f64 p x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 p) (/.f64 1 (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 x) p)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 p x))) 2) 3) (cbrt.f64 (/.f64 p x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (/.f64 p x) 1/6) 3) (pow.f64 (pow.f64 (/.f64 p x) 1/6) 3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 p) 2) 1) (/.f64 (cbrt.f64 p) x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 p) 1) (/.f64 (sqrt.f64 p) x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 x) 2)) (/.f64 p (cbrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 p) (pow.f64 (cbrt.f64 x) 2)) (/.f64 (sqrt.f64 p) (cbrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 x)) (/.f64 p (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 p) 2) (sqrt.f64 x)) (/.f64 (cbrt.f64 p) (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 (cbrt.f64 (/.f64 p x)) 2) 1) (cbrt.f64 (/.f64 p x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 (cbrt.f64 (/.f64 p x)) 2) (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 p x))) 2)) (cbrt.f64 (cbrt.f64 (/.f64 p x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 (cbrt.f64 (/.f64 p x)) 2) (pow.f64 (/.f64 p x) 1/6)) (pow.f64 (/.f64 p x) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 p x)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 x p))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (/.f64 x p) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (cbrt.f64 p) 2) (/.f64 x (cbrt.f64 p)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 p) (/.f64 x (sqrt.f64 p)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 p) (neg.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1 (neg.f64 (/.f64 x p)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (neg.f64 p)) (neg.f64 (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 p (sqrt.f64 x)) (sqrt.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 p 1) x)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 p (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cbrt.f64 p) (pow.f64 (cbrt.f64 (/.f64 p x)) 2)) (cbrt.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 (cbrt.f64 (/.f64 p x)) 2) (cbrt.f64 p)) (cbrt.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 p (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 p x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 p x)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 p x) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 p x)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 p x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 p x)))))))

simplify9.0ms (0.1%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

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

eval114.0ms (1.9%)

Compiler

Compiled 5562 to 3876 computations (30.3% saved)

prune42.0ms (0.7%)

Pruning

15 alts after pruning (7 fresh and 8 done)

PrunedKeptTotal
New2556261
Fresh213
Picked011
Done279
Total25915274
Error
0.1b
Counts
274 → 15
Alt Table
Click to see full alt table
StatusErrorProgram
30.4b
(pow.f64 (pow.f64 1/2 1/4) 2)
59.1b
(/.f64 (+.f64 1 (pow.f64 (+.f64 (/.f64 p x) -1) 3)) (+.f64 1 (-.f64 (*.f64 (+.f64 (/.f64 p x) -1) (+.f64 (/.f64 p x) -1)) (+.f64 (/.f64 p x) -1))))
53.7b
(/.f64 1 (/.f64 x p))
43.4b
(sqrt.f64 (*.f64 1/2 2))
59.4b
(pow.f64 (log.f64 (exp.f64 (cbrt.f64 (/.f64 p x)))) 3)
48.6b
(/.f64 (neg.f64 p) x)
53.8b
(*.f64 (/.f64 1 x) p)
15.8b
(sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 x (hypot.f64 (*.f64 2 p) x)))))
58.7b
(+.f64 (+.f64 (/.f64 p x) -1) 1)
29.9b
(sqrt.f64 1/2)
32.7b
(sqrt.f64 (*.f64 1/2 (+.f64 (*.f64 -1/2 (/.f64 x p)) 1)))
53.9b
(pow.f64 (cbrt.f64 (/.f64 p x)) 3)
58.9b
(/.f64 (-.f64 1 (*.f64 (+.f64 (/.f64 p x) -1) (+.f64 (/.f64 p x) -1))) (-.f64 1 (+.f64 (/.f64 p x) -1)))
53.7b
(/.f64 p x)
32.5b
(sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 x (*.f64 p 2)))))
Compiler

Compiled 161 to 121 computations (24.8% saved)

regimes268.0ms (4.5%)

Counts
35 → 2
Calls
Call 1
Inputs
(/.f64 p x)
(/.f64 (neg.f64 p) x)
(/.f64 1 (/.f64 x p))
(*.f64 (/.f64 1 x) p)
(/.f64 1 (/.f64 x p))
(+.f64 (+.f64 (/.f64 p x) -1) 1)
(-.f64 (+.f64 1 (/.f64 p x)) 1)
(/.f64 (-.f64 1 (*.f64 (+.f64 (/.f64 p x) -1) (+.f64 (/.f64 p x) -1))) (-.f64 1 (+.f64 (/.f64 p x) -1)))
(sqrt.f64 1/2)
(sqrt.f64 (*.f64 1/2 2))
(sqrt.f64 (*.f64 1/2 (+.f64 1 -1)))
(sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 x (neg.f64 x)))))
(sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 x (*.f64 p 2)))))
(sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 x (*.f64 2 p)))))
(sqrt.f64 (*.f64 1/2 (+.f64 (*.f64 -1/2 (/.f64 x p)) 1)))
(sqrt.f64 (*.f64 1/2 (*.f64 2 (*.f64 (/.f64 p x) (/.f64 p x)))))
(/.f64 (+.f64 1 (pow.f64 (+.f64 (/.f64 p x) -1) 3)) (+.f64 1 (-.f64 (*.f64 (+.f64 (/.f64 p x) -1) (+.f64 (/.f64 p x) -1)) (+.f64 (/.f64 p x) -1))))
(pow.f64 (pow.f64 1/2 1/4) 2)
(exp.f64 (log.f64 (/.f64 p x)))
(pow.f64 (cbrt.f64 (/.f64 p x)) 3)
(/.f64 (neg.f64 (sqrt.f64 2)) (/.f64 x (*.f64 (sqrt.f64 1/2) p)))
(*.f64 (/.f64 (sqrt.f64 2) x) (neg.f64 (*.f64 p (sqrt.f64 1/2))))
(*.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 2) (neg.f64 (/.f64 p x))))
(/.f64 (neg.f64 (sqrt.f64 2)) (/.f64 (/.f64 x p) (sqrt.f64 1/2)))
(/.f64 (neg.f64 (sqrt.f64 2)) (*.f64 (pow.f64 1/2 -1/2) (/.f64 x p)))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(*.f64 (neg.f64 (sqrt.f64 2)) (/.f64 1 (/.f64 x (*.f64 (sqrt.f64 1/2) p))))
(sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 x (hypot.f64 (*.f64 2 p) x)))))
(/.f64 (neg.f64 (sqrt.f64 2)) (*.f64 x (*.f64 (/.f64 1 p) (pow.f64 1/2 -1/2))))
(sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 x (sqrt.f64 (+.f64 (*.f64 (*.f64 4 p) p) (*.f64 x x)))))))
(pow.f64 (pow.f64 (fma.f64 (/.f64 x p) -1/4 1/2) 1/4) 2)
(/.f64 (neg.f64 (sqrt.f64 2)) (*.f64 (/.f64 x (pow.f64 1/2 1/4)) (/.f64 (/.f64 1 p) (pow.f64 1/2 1/4))))
(pow.f64 (log.f64 (exp.f64 (cbrt.f64 (/.f64 p x)))) 3)
(pow.f64 (pow.f64 (fma.f64 (/.f64 x (hypot.f64 x (*.f64 2 p))) 1/2 1/2) 1/4) 2)
(-.f64 (fma.f64 -1/4 (*.f64 (/.f64 (*.f64 (pow.f64 p 4) -12) (sqrt.f64 2)) (/.f64 (sqrt.f64 1/2) (*.f64 p (pow.f64 x 3)))) (*.f64 (/.f64 (*.f64 (sqrt.f64 1/2) -1/2) (*.f64 p (pow.f64 x 5))) (/.f64 (+.f64 (*.f64 (pow.f64 p 6) 32) (-.f64 (*.f64 p (*.f64 p (*.f64 (pow.f64 p 4) -12))) (pow.f64 (*.f64 (/.f64 1/4 p) (/.f64 (*.f64 (pow.f64 p 4) -12) (sqrt.f64 2))) 2))) (sqrt.f64 2)))) (*.f64 (/.f64 (sqrt.f64 2) x) (*.f64 p (sqrt.f64 1/2))))
Outputs
(/.f64 (neg.f64 p) x)
(sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 x (hypot.f64 (*.f64 2 p) x)))))
Calls

12 calls:

84.0ms
p
76.0ms
x
13.0ms
(/.f64 x (sqrt.f64 (+.f64 (*.f64 (*.f64 4 p) p) (*.f64 x x))))
12.0ms
(/.f64 x (sqrt.f64 (+.f64 (*.f64 (*.f64 4 p) p) (*.f64 x x))))
12.0ms
(sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 x (sqrt.f64 (+.f64 (*.f64 (*.f64 4 p) p) (*.f64 x x)))))))
Results
ErrorSegmentsBranch
10.5b5p
12.6b4x
5.4b2(sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 x (sqrt.f64 (+.f64 (*.f64 (*.f64 4 p) p) (*.f64 x x)))))))
5.4b2(sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 x (sqrt.f64 (+.f64 (*.f64 (*.f64 4 p) p) (*.f64 x x)))))))
5.4b2(*.f64 1/2 (+.f64 1 (/.f64 x (sqrt.f64 (+.f64 (*.f64 (*.f64 4 p) p) (*.f64 x x))))))
5.4b2(*.f64 1/2 (+.f64 1 (/.f64 x (sqrt.f64 (+.f64 (*.f64 (*.f64 4 p) p) (*.f64 x x))))))
5.4b2(+.f64 1 (/.f64 x (sqrt.f64 (+.f64 (*.f64 (*.f64 4 p) p) (*.f64 x x)))))
5.4b2(+.f64 1 (/.f64 x (sqrt.f64 (+.f64 (*.f64 (*.f64 4 p) p) (*.f64 x x)))))
5.4b2(/.f64 x (sqrt.f64 (+.f64 (*.f64 (*.f64 4 p) p) (*.f64 x x))))
5.4b2(/.f64 x (sqrt.f64 (+.f64 (*.f64 (*.f64 4 p) p) (*.f64 x x))))
15.8b1(*.f64 (*.f64 4 p) p)
15.8b1(*.f64 (*.f64 4 p) p)
Compiler

Compiled 559 to 402 computations (28.1% saved)

bsearch1.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
-1.0
-0.9999999999999476
Compiler

Compiled 24 to 18 computations (25% saved)

regimes120.0ms (2%)

Counts
27 → 5
Calls
Call 1
Inputs
(/.f64 p x)
(/.f64 (neg.f64 p) x)
(/.f64 1 (/.f64 x p))
(*.f64 (/.f64 1 x) p)
(/.f64 1 (/.f64 x p))
(+.f64 (+.f64 (/.f64 p x) -1) 1)
(-.f64 (+.f64 1 (/.f64 p x)) 1)
(/.f64 (-.f64 1 (*.f64 (+.f64 (/.f64 p x) -1) (+.f64 (/.f64 p x) -1))) (-.f64 1 (+.f64 (/.f64 p x) -1)))
(sqrt.f64 1/2)
(sqrt.f64 (*.f64 1/2 2))
(sqrt.f64 (*.f64 1/2 (+.f64 1 -1)))
(sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 x (neg.f64 x)))))
(sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 x (*.f64 p 2)))))
(sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 x (*.f64 2 p)))))
(sqrt.f64 (*.f64 1/2 (+.f64 (*.f64 -1/2 (/.f64 x p)) 1)))
(sqrt.f64 (*.f64 1/2 (*.f64 2 (*.f64 (/.f64 p x) (/.f64 p x)))))
(/.f64 (+.f64 1 (pow.f64 (+.f64 (/.f64 p x) -1) 3)) (+.f64 1 (-.f64 (*.f64 (+.f64 (/.f64 p x) -1) (+.f64 (/.f64 p x) -1)) (+.f64 (/.f64 p x) -1))))
(pow.f64 (pow.f64 1/2 1/4) 2)
(exp.f64 (log.f64 (/.f64 p x)))
(pow.f64 (cbrt.f64 (/.f64 p x)) 3)
(/.f64 (neg.f64 (sqrt.f64 2)) (/.f64 x (*.f64 (sqrt.f64 1/2) p)))
(*.f64 (/.f64 (sqrt.f64 2) x) (neg.f64 (*.f64 p (sqrt.f64 1/2))))
(*.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 2) (neg.f64 (/.f64 p x))))
(/.f64 (neg.f64 (sqrt.f64 2)) (/.f64 (/.f64 x p) (sqrt.f64 1/2)))
(/.f64 (neg.f64 (sqrt.f64 2)) (*.f64 (pow.f64 1/2 -1/2) (/.f64 x p)))
(*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 1/2) p)) x))
(*.f64 (neg.f64 (sqrt.f64 2)) (/.f64 1 (/.f64 x (*.f64 (sqrt.f64 1/2) p))))
Outputs
(sqrt.f64 1/2)
(/.f64 p x)
(sqrt.f64 (*.f64 1/2 2))
(/.f64 (neg.f64 p) x)
(sqrt.f64 1/2)
Calls

2 calls:

62.0ms
p
49.0ms
x
Results
ErrorSegmentsBranch
14.6b5p
23.7b4x
Compiler

Compiled 247 to 169 computations (31.6% saved)

bsearch215.0ms (3.6%)

Algorithm
binary-search
Steps
TimeLeftRight
36.0ms
1.8062527207981708e-19
9.829691545208197e-7
71.0ms
1.9822307214939477e-274
2.4547706122196443e-267
69.0ms
-5.4651664445348303e-216
-2.2660019902243004e-217
39.0ms
-4.9056321965133376e-27
-2.3596857107636277e-31
Compiler

Compiled 24 to 18 computations (25% saved)

regimes40.0ms (0.7%)

Counts
9 → 4
Calls
Call 1
Inputs
(/.f64 p x)
(/.f64 (neg.f64 p) x)
(/.f64 1 (/.f64 x p))
(*.f64 (/.f64 1 x) p)
(/.f64 1 (/.f64 x p))
(+.f64 (+.f64 (/.f64 p x) -1) 1)
(-.f64 (+.f64 1 (/.f64 p x)) 1)
(/.f64 (-.f64 1 (*.f64 (+.f64 (/.f64 p x) -1) (+.f64 (/.f64 p x) -1))) (-.f64 1 (+.f64 (/.f64 p x) -1)))
(sqrt.f64 1/2)
Outputs
(sqrt.f64 1/2)
(/.f64 p x)
(/.f64 (neg.f64 p) x)
(sqrt.f64 1/2)
Calls

2 calls:

21.0ms
p
16.0ms
x
Results
ErrorSegmentsBranch
16.8b4p
25.1b2x
Compiler

Compiled 67 to 39 computations (41.8% saved)

bsearch152.0ms (2.5%)

Algorithm
binary-search
Steps
TimeLeftRight
37.0ms
1.8062527207981708e-19
9.829691545208197e-7
76.0ms
-1.6982543834110598e-294
-8.587880788532667e-296
39.0ms
-4.9056321965133376e-27
-2.3596857107636277e-31
Compiler

Compiled 24 to 18 computations (25% saved)

regimes28.0ms (0.5%)

Accuracy

Total -16.9b remaining (-38.9%)

Threshold costs -16.9b (-38.9%)

Counts
8 → 2
Calls
Call 1
Inputs
(/.f64 p x)
(/.f64 (neg.f64 p) x)
(/.f64 1 (/.f64 x p))
(*.f64 (/.f64 1 x) p)
(/.f64 1 (/.f64 x p))
(+.f64 (+.f64 (/.f64 p x) -1) 1)
(-.f64 (+.f64 1 (/.f64 p x)) 1)
(/.f64 (-.f64 1 (*.f64 (+.f64 (/.f64 p x) -1) (+.f64 (/.f64 p x) -1))) (-.f64 1 (+.f64 (/.f64 p x) -1)))
Outputs
(/.f64 p x)
(/.f64 (neg.f64 p) x)
Calls

2 calls:

15.0ms
x
10.0ms
p
Results
ErrorSegmentsBranch
43.3b2p
47.6b2x
Compiler

Compiled 65 to 37 computations (43.1% saved)

bsearch76.0ms (1.3%)

Algorithm
binary-search
Steps
TimeLeftRight
75.0ms
-1.6982543834110598e-294
-8.587880788532667e-296
Compiler

Compiled 24 to 18 computations (25% saved)

simplify9.0ms (0.2%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
046142
157142
261142
364142
465142
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(if (<=.f64 (/.f64 x (sqrt.f64 (+.f64 (*.f64 (*.f64 4 p) p) (*.f64 x x)))) -1) (/.f64 (neg.f64 p) x) (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 x (hypot.f64 (*.f64 2 p) x))))))
(if (<=.f64 p -6837453353259503/1393796574908163946345982392040522594123776) (sqrt.f64 1/2) (if (<=.f64 p -8484769782575063/1552518092300708935148979488462502555256886017116696611139052038026050952686376886330878408828646477950487730697131073206171580044114814391444287275041181139204454976020849905550265285631598444825262999193716468750892846853816057856) (/.f64 p x) (if (<=.f64 p 7726984329600999/38981256045599996321413529551500753243504907430380030107471625828851794763065704409862460263528041036901219664925634672733836679460812376186311949185250613678125110799825892119483158621960214593411198373916873515494742391701579499782985454461875862451310955212417110188327314359967656443904) (sqrt.f64 (*.f64 1/2 2)) (if (<=.f64 p 3751440131168131/20769187434139310514121985316880384) (/.f64 (neg.f64 p) x) (sqrt.f64 1/2)))))
(if (<=.f64 p -6837453353259503/1393796574908163946345982392040522594123776) (sqrt.f64 1/2) (if (<=.f64 p -1221176098523159/719077253944926363091722076315609893447190791576922629093720324630930703222003852530833909289630144084480455519485573430635159075257666489971389722557896497511071573699461941105208878404984376477812331808340023075352602729369851525895652442163308948653402042738345192959788983753918865219341425318496896548864) (/.f64 p x) (if (<=.f64 p 3751440131168131/20769187434139310514121985316880384) (/.f64 (neg.f64 p) x) (sqrt.f64 1/2))))
(if (<=.f64 p -1221176098523159/719077253944926363091722076315609893447190791576922629093720324630930703222003852530833909289630144084480455519485573430635159075257666489971389722557896497511071573699461941105208878404984376477812331808340023075352602729369851525895652442163308948653402042738345192959788983753918865219341425318496896548864) (/.f64 p x) (/.f64 (neg.f64 p) x))
(/.f64 p x)
Outputs
(if (<=.f64 (/.f64 x (sqrt.f64 (+.f64 (*.f64 (*.f64 4 p) p) (*.f64 x x)))) -1) (/.f64 (neg.f64 p) x) (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 x (hypot.f64 (*.f64 2 p) x))))))
(if (<=.f64 (/.f64 x (sqrt.f64 (+.f64 (*.f64 p (*.f64 4 p)) (*.f64 x x)))) -1) (/.f64 (neg.f64 p) x) (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 x (hypot.f64 (*.f64 p 2) x))))))
(if (<=.f64 p -6837453353259503/1393796574908163946345982392040522594123776) (sqrt.f64 1/2) (if (<=.f64 p -8484769782575063/1552518092300708935148979488462502555256886017116696611139052038026050952686376886330878408828646477950487730697131073206171580044114814391444287275041181139204454976020849905550265285631598444825262999193716468750892846853816057856) (/.f64 p x) (if (<=.f64 p 7726984329600999/38981256045599996321413529551500753243504907430380030107471625828851794763065704409862460263528041036901219664925634672733836679460812376186311949185250613678125110799825892119483158621960214593411198373916873515494742391701579499782985454461875862451310955212417110188327314359967656443904) (sqrt.f64 (*.f64 1/2 2)) (if (<=.f64 p 3751440131168131/20769187434139310514121985316880384) (/.f64 (neg.f64 p) x) (sqrt.f64 1/2)))))
(if (<=.f64 p -6837453353259503/1393796574908163946345982392040522594123776) (sqrt.f64 1/2) (if (<=.f64 p -8484769782575063/1552518092300708935148979488462502555256886017116696611139052038026050952686376886330878408828646477950487730697131073206171580044114814391444287275041181139204454976020849905550265285631598444825262999193716468750892846853816057856) (/.f64 p x) (if (<=.f64 p 7726984329600999/38981256045599996321413529551500753243504907430380030107471625828851794763065704409862460263528041036901219664925634672733836679460812376186311949185250613678125110799825892119483158621960214593411198373916873515494742391701579499782985454461875862451310955212417110188327314359967656443904) 1 (if (<=.f64 p 3751440131168131/20769187434139310514121985316880384) (/.f64 (neg.f64 p) x) (sqrt.f64 1/2)))))
(if (<=.f64 p -6837453353259503/1393796574908163946345982392040522594123776) (sqrt.f64 1/2) (if (<=.f64 p -1221176098523159/719077253944926363091722076315609893447190791576922629093720324630930703222003852530833909289630144084480455519485573430635159075257666489971389722557896497511071573699461941105208878404984376477812331808340023075352602729369851525895652442163308948653402042738345192959788983753918865219341425318496896548864) (/.f64 p x) (if (<=.f64 p 3751440131168131/20769187434139310514121985316880384) (/.f64 (neg.f64 p) x) (sqrt.f64 1/2))))
(if (<=.f64 p -1221176098523159/719077253944926363091722076315609893447190791576922629093720324630930703222003852530833909289630144084480455519485573430635159075257666489971389722557896497511071573699461941105208878404984376477812331808340023075352602729369851525895652442163308948653402042738345192959788983753918865219341425318496896548864) (/.f64 p x) (/.f64 (neg.f64 p) x))
(/.f64 p x)
Compiler

Compiled 106 to 74 computations (30.2% saved)

soundness77.0ms (1.3%)

Algorithm
egg-herbie
Rules
555×associate-*l/_binary64
532×associate-*r/_binary64
405×distribute-rgt-in_binary64
404×distribute-lft-in_binary64
317×associate-/r/_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02893139
19462992
236562729
010360
116360
227360
335360
442360
550360
658360
768360
878360
997360
1098360
Stop Event
saturated
node limit
Compiler

Compiled 81 to 65 computations (19.8% saved)

end50.0ms (0.8%)

Compiler

Compiled 98 to 57 computations (41.8% saved)

Profiling

Loading profile data...