Details

Time bar (total: 3.8s)

analyze357.0ms (9.3%)

Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%99.9%0.1%0%0%0%0
0%0%99.9%0.1%0%0%0%1
0%0%99.9%0.1%0%0%0%2
0%0%99.9%0.1%0%0%0%3
0%0%99.9%0.1%0%0%0%4
0%0%99.9%0.1%0%0%0%5
0%0%99.9%0.1%0%0%0%6
12.5%12.5%87.4%0.1%0%0%0%7
18.8%18.7%81.1%0.1%0%0%0%8
25.4%25%73.3%0.1%1.6%0%0%9
35.3%34.3%62.8%0.1%2.7%0%0%10
43.9%41.3%52.9%0.1%5.7%0%0%11
50.6%46.8%45.7%0.1%7.3%0%0%12
Compiler

Compiled 15 to 10 computations (33.3% saved)

sample1.4s (37.1%)

Results
1.0s7883×body256valid
204.0ms1406×body256infinite
87.0ms155×body1024valid
72.0ms218×body512valid
Bogosity

preprocess9.0ms (0.2%)

Algorithm
egg-herbie
Rules
144×fma-def
58×+-commutative
38×*-commutative
36×distribute-lft-out
22×associate-+l+
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
023100
16176
214376
319076
419776
519976
033
133
Stop Event
unsound
saturated
Calls
Call 1
Inputs
0
1
2
Outputs
0
1
2
1
Call 2
Inputs
(+.f64 (+.f64 (*.f64 d1 3) (*.f64 d1 d2)) (*.f64 d1 d3))
(+.f64 (+.f64 (*.f64 d2 3) (*.f64 d2 d1)) (*.f64 d2 d3))
(+.f64 (+.f64 (*.f64 d3 3) (*.f64 d3 d2)) (*.f64 d3 d1))
(+.f64 (+.f64 (*.f64 d1 3) (*.f64 d1 d3)) (*.f64 d1 d2))
Outputs
(+.f64 (+.f64 (*.f64 d1 3) (*.f64 d1 d2)) (*.f64 d1 d3))
(+.f64 (*.f64 d1 (+.f64 3 d2)) (*.f64 d1 d3))
(*.f64 d1 (+.f64 d2 (+.f64 3 d3)))
(+.f64 (+.f64 (*.f64 d2 3) (*.f64 d2 d1)) (*.f64 d2 d3))
(+.f64 (*.f64 d2 (+.f64 3 d1)) (*.f64 d2 d3))
(*.f64 d2 (+.f64 (+.f64 d1 3) d3))
(*.f64 d2 (+.f64 d1 (+.f64 3 d3)))
(+.f64 (+.f64 (*.f64 d3 3) (*.f64 d3 d2)) (*.f64 d3 d1))
(+.f64 (*.f64 d1 d3) (*.f64 d3 (+.f64 3 d2)))
(*.f64 d3 (+.f64 d1 (+.f64 3 d2)))
(*.f64 d3 (+.f64 3 (+.f64 d1 d2)))
(+.f64 (+.f64 (*.f64 d1 3) (*.f64 d1 d3)) (*.f64 d1 d2))
(+.f64 (*.f64 d1 (+.f64 3 d2)) (*.f64 d1 d3))
(*.f64 d1 (+.f64 d2 (+.f64 3 d3)))
Symmetry

(sort d2 d3)

Compiler

Compiled 17 to 12 computations (29.4% saved)

simplify29.0ms (0.8%)

Algorithm
egg-herbie
Rules
48×fma-def
22×+-commutative
14×*-commutative
12×distribute-lft-out
associate-+l+
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01125
12219
24619
36819
47219
57319
Stop Event
saturated
Counts
1 → 4
Calls
Call 1
Inputs
(+.f64 (+.f64 (*.f64 d1 3) (*.f64 d1 d2)) (*.f64 d1 d3))
Outputs
(+.f64 (+.f64 (*.f64 d1 3) (*.f64 d1 d2)) (*.f64 d1 d3))
(+.f64 (*.f64 d1 (+.f64 3 d2)) (*.f64 d1 d3))
(*.f64 d1 (+.f64 (+.f64 3 d2) d3))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))

eval1.0ms (0%)

Compiler

Compiled 37 to 21 computations (43.2% saved)

prune1.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New314
Fresh101
Picked000
Done000
Total415
Error
0.04%
Counts
5 → 1
Alt Table
Click to see full alt table
StatusErrorProgram
0.04%
(*.f64 d1 (+.f64 (+.f64 3 d2) d3))
Compiler

Compiled 10 to 7 computations (30% saved)

localize8.0ms (0.2%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.01%
(*.f64 d1 (+.f64 (+.f64 3 d2) d3))
Compiler

Compiled 22 to 13 computations (40.9% saved)

series3.0ms (0.1%)

Counts
1 → 36
Calls

9 calls:

TimeVariablePointExpression
1.0ms
d2
@inf
(*.f64 d1 (+.f64 (+.f64 3 d2) d3))
0.0ms
d1
@0
(*.f64 d1 (+.f64 (+.f64 3 d2) d3))
0.0ms
d1
@-inf
(*.f64 d1 (+.f64 (+.f64 3 d2) d3))
0.0ms
d1
@inf
(*.f64 d1 (+.f64 (+.f64 3 d2) d3))
0.0ms
d3
@inf
(*.f64 d1 (+.f64 (+.f64 3 d2) d3))

rewrite69.0ms (1.8%)

Algorithm
batch-egg-rewrite
Rules
1212×associate-*r/
1038×*-commutative
1026×associate-*l/
944×distribute-lft-in
906×distribute-rgt-in
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0919
120619
2291119
Stop Event
node limit
Counts
1 → 65
Calls
Call 1
Inputs
(*.f64 d1 (+.f64 (+.f64 3 d2) d3))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 d1 (+.f64 3 d2)) (*.f64 d1 d3))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 d1 d3) (*.f64 d1 (+.f64 3 d2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 d1 3) (*.f64 d1 (+.f64 d2 d3)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 d1 d2) (+.f64 (*.f64 d1 3) (*.f64 d1 d3)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 d1 d2) (*.f64 d1 (+.f64 3 d3)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 d1 d2) (*.f64 (+.f64 3 d3) d1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 d1 (+.f64 d2 d3)) (*.f64 d1 3))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (*.f64 d1 d3) (*.f64 d1 3)) (*.f64 d1 d2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 d1 (+.f64 3 d3)) (*.f64 d1 d2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1 (*.f64 d1 3)) (*.f64 1 (*.f64 d1 (+.f64 d2 d3))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (+.f64 3 d3) d1) (*.f64 d1 d2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 d1 3) 1) (*.f64 (*.f64 d1 (+.f64 d2 d3)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 d1 (/.f64 1 (+.f64 3 (+.f64 d2 d3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 d3)) (/.f64 (+.f64 3 (-.f64 d2 d3)) d1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (+.f64 3 d2) 3) (pow.f64 d3 3)) (/.f64 (+.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 (-.f64 (-.f64 d3 3) d2))) d1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 d1 (-.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 d3))) (+.f64 3 (-.f64 d2 d3)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 d1 (+.f64 (pow.f64 (+.f64 3 d2) 3) (pow.f64 d3 3))) (+.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 (-.f64 (-.f64 d3 3) d2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 d1 (+.f64 3 d2)) (*.f64 d1 (+.f64 3 d2))) (*.f64 (*.f64 d1 d3) (*.f64 d1 d3))) (-.f64 (*.f64 d1 (+.f64 3 d2)) (*.f64 d1 d3)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 d1 (+.f64 3 d2)) 3) (pow.f64 (*.f64 d1 d3) 3)) (+.f64 (*.f64 (*.f64 d1 (+.f64 3 d2)) (*.f64 d1 (+.f64 3 d2))) (-.f64 (*.f64 (*.f64 d1 d3) (*.f64 d1 d3)) (*.f64 (*.f64 d1 (+.f64 3 d2)) (*.f64 d1 d3)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 d1 (-.f64 9 (*.f64 (+.f64 d2 d3) (+.f64 d2 d3)))) (-.f64 3 (+.f64 d2 d3)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 d1 (-.f64 (*.f64 d3 d3) (pow.f64 (+.f64 3 d2) 2))) (-.f64 (-.f64 d3 3) d2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 d1 (+.f64 27 (pow.f64 (+.f64 d2 d3) 3))) (+.f64 9 (-.f64 (*.f64 (+.f64 d2 d3) (+.f64 d2 d3)) (*.f64 3 (+.f64 d2 d3)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 d1 (neg.f64 (-.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 d3)))) (neg.f64 (+.f64 3 (-.f64 d2 d3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 d1 (neg.f64 (+.f64 (pow.f64 (+.f64 3 d2) 3) (pow.f64 d3 3)))) (neg.f64 (+.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 (-.f64 (-.f64 d3 3) d2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (*.f64 d1 (-.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 d3)))) (+.f64 3 (-.f64 d2 d3)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (*.f64 d1 (+.f64 (pow.f64 (+.f64 3 d2) 3) (pow.f64 d3 3)))) (+.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 (-.f64 (-.f64 d3 3) d2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (-.f64 (*.f64 (*.f64 d1 (+.f64 3 d2)) (*.f64 d1 (+.f64 3 d2))) (*.f64 (*.f64 d1 d3) (*.f64 d1 d3)))) (-.f64 (*.f64 d1 (+.f64 3 d2)) (*.f64 d1 d3)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (+.f64 (pow.f64 (*.f64 d1 (+.f64 3 d2)) 3) (pow.f64 (*.f64 d1 d3) 3))) (+.f64 (*.f64 (*.f64 d1 (+.f64 3 d2)) (*.f64 d1 (+.f64 3 d2))) (-.f64 (*.f64 (*.f64 d1 d3) (*.f64 d1 d3)) (*.f64 (*.f64 d1 (+.f64 3 d2)) (*.f64 d1 d3)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 d1 (sqrt.f64 (+.f64 3 (+.f64 d2 d3)))) (sqrt.f64 (+.f64 (pow.f64 (+.f64 3 d2) 3) (pow.f64 d3 3)))) (sqrt.f64 (+.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 (-.f64 (-.f64 d3 3) d2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 d1 (sqrt.f64 (+.f64 3 (+.f64 d2 d3)))) (sqrt.f64 (-.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 d3)))) (sqrt.f64 (+.f64 3 (-.f64 d2 d3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 d1 (pow.f64 (cbrt.f64 (+.f64 3 (+.f64 d2 d3))) 2)) (cbrt.f64 (+.f64 (pow.f64 (+.f64 3 d2) 3) (pow.f64 d3 3)))) (cbrt.f64 (+.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 (-.f64 (-.f64 d3 3) d2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 d1 (pow.f64 (cbrt.f64 (+.f64 3 (+.f64 d2 d3))) 2)) (cbrt.f64 (-.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 d3)))) (cbrt.f64 (+.f64 3 (-.f64 d2 d3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 9 (*.f64 (+.f64 d2 d3) (+.f64 d2 d3))) d1) (-.f64 3 (+.f64 d2 d3)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 d3 d3) (pow.f64 (+.f64 3 d2) 2)) d1) (-.f64 (-.f64 d3 3) d2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 27 (pow.f64 (+.f64 d2 d3) 3)) d1) (+.f64 9 (-.f64 (*.f64 (+.f64 d2 d3) (+.f64 d2 d3)) (*.f64 3 (+.f64 d2 d3)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (-.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 d3))) d1) (neg.f64 (+.f64 3 (-.f64 d2 d3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (+.f64 (pow.f64 (+.f64 3 d2) 3) (pow.f64 d3 3))) d1) (neg.f64 (+.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 (-.f64 (-.f64 d3 3) d2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 d1 (-.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 d3))) 1) (+.f64 3 (-.f64 d2 d3)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 d1 (+.f64 (pow.f64 (+.f64 3 d2) 3) (pow.f64 d3 3))) 1) (+.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 (-.f64 (-.f64 d3 3) d2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 (*.f64 d1 (+.f64 3 d2)) (*.f64 d1 (+.f64 3 d2))) (*.f64 (*.f64 d1 d3) (*.f64 d1 d3))) 1) (-.f64 (*.f64 d1 (+.f64 3 d2)) (*.f64 d1 d3)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (pow.f64 (*.f64 d1 (+.f64 3 d2)) 3) (pow.f64 (*.f64 d1 d3) 3)) 1) (+.f64 (*.f64 (*.f64 d1 (+.f64 3 d2)) (*.f64 d1 (+.f64 3 d2))) (-.f64 (*.f64 (*.f64 d1 d3) (*.f64 d1 d3)) (*.f64 (*.f64 d1 (+.f64 3 d2)) (*.f64 d1 d3)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (+.f64 (pow.f64 (+.f64 3 d2) 3) (pow.f64 d3 3))) (*.f64 d1 (sqrt.f64 (+.f64 3 (+.f64 d2 d3))))) (sqrt.f64 (+.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 (-.f64 (-.f64 d3 3) d2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 d3))) (*.f64 d1 (sqrt.f64 (+.f64 3 (+.f64 d2 d3))))) (sqrt.f64 (+.f64 3 (-.f64 d2 d3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 d1 (-.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 d3))) 1) (+.f64 3 (-.f64 d2 d3)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 d1 (-.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 d3))) (sqrt.f64 (+.f64 3 (-.f64 d2 d3)))) (sqrt.f64 (+.f64 3 (-.f64 d2 d3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 d1 (-.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 d3))) (*.f64 (cbrt.f64 (+.f64 3 (-.f64 d2 d3))) (cbrt.f64 (+.f64 3 (-.f64 d2 d3))))) (cbrt.f64 (+.f64 3 (-.f64 d2 d3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 d1 (-.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 d3))) (+.f64 (sqrt.f64 (+.f64 3 d2)) (sqrt.f64 d3))) (-.f64 (sqrt.f64 (+.f64 3 d2)) (sqrt.f64 d3)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 d1 (+.f64 (pow.f64 (+.f64 3 d2) 3) (pow.f64 d3 3))) 1) (+.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 (-.f64 (-.f64 d3 3) d2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 d1 (+.f64 (pow.f64 (+.f64 3 d2) 3) (pow.f64 d3 3))) (sqrt.f64 (+.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 (-.f64 (-.f64 d3 3) d2))))) (sqrt.f64 (+.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 (-.f64 (-.f64 d3 3) d2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 d1 (+.f64 (pow.f64 (+.f64 3 d2) 3) (pow.f64 d3 3))) (*.f64 (cbrt.f64 (+.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 (-.f64 (-.f64 d3 3) d2)))) (cbrt.f64 (+.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 (-.f64 (-.f64 d3 3) d2)))))) (cbrt.f64 (+.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 (-.f64 (-.f64 d3 3) d2)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 d1) (+.f64 3 (+.f64 d2 d3))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (+.f64 3 (+.f64 d2 d3)) 3) (pow.f64 d1 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 d1 (+.f64 3 d2) (*.f64 d1 d3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 3 d2) d1 (*.f64 d1 d3))))))

simplify115.0ms (3%)

Algorithm
egg-herbie
Rules
1418×associate-/l*
1044×associate-+r+
1004×*-commutative
996×associate-/r*
848×+-commutative
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02073267
15893173
224793167
376613167
Stop Event
node limit
Counts
101 → 102
Calls
Call 1
Inputs
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(*.f64 d1 (+.f64 d2 (+.f64 3 d3)))
(*.f64 d1 (+.f64 d2 (+.f64 3 d3)))
(*.f64 d1 (+.f64 d2 (+.f64 3 d3)))
(*.f64 d1 (+.f64 d2 (+.f64 3 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(*.f64 d1 (+.f64 3 d3))
(+.f64 (*.f64 d1 (+.f64 3 d3)) (*.f64 d2 d1))
(+.f64 (*.f64 d1 (+.f64 3 d3)) (*.f64 d2 d1))
(+.f64 (*.f64 d1 (+.f64 3 d3)) (*.f64 d2 d1))
(*.f64 d2 d1)
(+.f64 (*.f64 d1 (+.f64 3 d3)) (*.f64 d2 d1))
(+.f64 (*.f64 d1 (+.f64 3 d3)) (*.f64 d2 d1))
(+.f64 (*.f64 d1 (+.f64 3 d3)) (*.f64 d2 d1))
(*.f64 d2 d1)
(+.f64 (*.f64 d1 (+.f64 3 d3)) (*.f64 d2 d1))
(+.f64 (*.f64 d1 (+.f64 3 d3)) (*.f64 d2 d1))
(+.f64 (*.f64 d1 (+.f64 3 d3)) (*.f64 d2 d1))
(*.f64 (+.f64 d2 3) d1)
(+.f64 (*.f64 (+.f64 d2 3) d1) (*.f64 d1 d3))
(+.f64 (*.f64 (+.f64 d2 3) d1) (*.f64 d1 d3))
(+.f64 (*.f64 (+.f64 d2 3) d1) (*.f64 d1 d3))
(*.f64 d1 d3)
(+.f64 (*.f64 (+.f64 d2 3) d1) (*.f64 d1 d3))
(+.f64 (*.f64 (+.f64 d2 3) d1) (*.f64 d1 d3))
(+.f64 (*.f64 (+.f64 d2 3) d1) (*.f64 d1 d3))
(*.f64 d1 d3)
(+.f64 (*.f64 (+.f64 d2 3) d1) (*.f64 d1 d3))
(+.f64 (*.f64 (+.f64 d2 3) d1) (*.f64 d1 d3))
(+.f64 (*.f64 (+.f64 d2 3) d1) (*.f64 d1 d3))
(+.f64 (*.f64 d1 (+.f64 3 d2)) (*.f64 d1 d3))
(+.f64 (*.f64 d1 d3) (*.f64 d1 (+.f64 3 d2)))
(+.f64 (*.f64 d1 3) (*.f64 d1 (+.f64 d2 d3)))
(+.f64 (*.f64 d1 d2) (+.f64 (*.f64 d1 3) (*.f64 d1 d3)))
(+.f64 (*.f64 d1 d2) (*.f64 d1 (+.f64 3 d3)))
(+.f64 (*.f64 d1 d2) (*.f64 (+.f64 3 d3) d1))
(+.f64 (*.f64 d1 (+.f64 d2 d3)) (*.f64 d1 3))
(+.f64 (+.f64 (*.f64 d1 d3) (*.f64 d1 3)) (*.f64 d1 d2))
(+.f64 (*.f64 d1 (+.f64 3 d3)) (*.f64 d1 d2))
(+.f64 (*.f64 1 (*.f64 d1 3)) (*.f64 1 (*.f64 d1 (+.f64 d2 d3))))
(+.f64 (*.f64 (+.f64 3 d3) d1) (*.f64 d1 d2))
(+.f64 (*.f64 (*.f64 d1 3) 1) (*.f64 (*.f64 d1 (+.f64 d2 d3)) 1))
(-.f64 (exp.f64 (log1p.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))))) 1)
(/.f64 d1 (/.f64 1 (+.f64 3 (+.f64 d2 d3))))
(/.f64 (-.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 d3)) (/.f64 (+.f64 3 (-.f64 d2 d3)) d1))
(/.f64 (+.f64 (pow.f64 (+.f64 3 d2) 3) (pow.f64 d3 3)) (/.f64 (+.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 (-.f64 (-.f64 d3 3) d2))) d1))
(/.f64 (*.f64 d1 (-.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 d3))) (+.f64 3 (-.f64 d2 d3)))
(/.f64 (*.f64 d1 (+.f64 (pow.f64 (+.f64 3 d2) 3) (pow.f64 d3 3))) (+.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 (-.f64 (-.f64 d3 3) d2))))
(/.f64 (-.f64 (*.f64 (*.f64 d1 (+.f64 3 d2)) (*.f64 d1 (+.f64 3 d2))) (*.f64 (*.f64 d1 d3) (*.f64 d1 d3))) (-.f64 (*.f64 d1 (+.f64 3 d2)) (*.f64 d1 d3)))
(/.f64 (+.f64 (pow.f64 (*.f64 d1 (+.f64 3 d2)) 3) (pow.f64 (*.f64 d1 d3) 3)) (+.f64 (*.f64 (*.f64 d1 (+.f64 3 d2)) (*.f64 d1 (+.f64 3 d2))) (-.f64 (*.f64 (*.f64 d1 d3) (*.f64 d1 d3)) (*.f64 (*.f64 d1 (+.f64 3 d2)) (*.f64 d1 d3)))))
(/.f64 (*.f64 d1 (-.f64 9 (*.f64 (+.f64 d2 d3) (+.f64 d2 d3)))) (-.f64 3 (+.f64 d2 d3)))
(/.f64 (*.f64 d1 (-.f64 (*.f64 d3 d3) (pow.f64 (+.f64 3 d2) 2))) (-.f64 (-.f64 d3 3) d2))
(/.f64 (*.f64 d1 (+.f64 27 (pow.f64 (+.f64 d2 d3) 3))) (+.f64 9 (-.f64 (*.f64 (+.f64 d2 d3) (+.f64 d2 d3)) (*.f64 3 (+.f64 d2 d3)))))
(/.f64 (*.f64 d1 (neg.f64 (-.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 d3)))) (neg.f64 (+.f64 3 (-.f64 d2 d3))))
(/.f64 (*.f64 d1 (neg.f64 (+.f64 (pow.f64 (+.f64 3 d2) 3) (pow.f64 d3 3)))) (neg.f64 (+.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 (-.f64 (-.f64 d3 3) d2)))))
(/.f64 (*.f64 1 (*.f64 d1 (-.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 d3)))) (+.f64 3 (-.f64 d2 d3)))
(/.f64 (*.f64 1 (*.f64 d1 (+.f64 (pow.f64 (+.f64 3 d2) 3) (pow.f64 d3 3)))) (+.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 (-.f64 (-.f64 d3 3) d2))))
(/.f64 (*.f64 1 (-.f64 (*.f64 (*.f64 d1 (+.f64 3 d2)) (*.f64 d1 (+.f64 3 d2))) (*.f64 (*.f64 d1 d3) (*.f64 d1 d3)))) (-.f64 (*.f64 d1 (+.f64 3 d2)) (*.f64 d1 d3)))
(/.f64 (*.f64 1 (+.f64 (pow.f64 (*.f64 d1 (+.f64 3 d2)) 3) (pow.f64 (*.f64 d1 d3) 3))) (+.f64 (*.f64 (*.f64 d1 (+.f64 3 d2)) (*.f64 d1 (+.f64 3 d2))) (-.f64 (*.f64 (*.f64 d1 d3) (*.f64 d1 d3)) (*.f64 (*.f64 d1 (+.f64 3 d2)) (*.f64 d1 d3)))))
(/.f64 (*.f64 (*.f64 d1 (sqrt.f64 (+.f64 3 (+.f64 d2 d3)))) (sqrt.f64 (+.f64 (pow.f64 (+.f64 3 d2) 3) (pow.f64 d3 3)))) (sqrt.f64 (+.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 (-.f64 (-.f64 d3 3) d2)))))
(/.f64 (*.f64 (*.f64 d1 (sqrt.f64 (+.f64 3 (+.f64 d2 d3)))) (sqrt.f64 (-.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 d3)))) (sqrt.f64 (+.f64 3 (-.f64 d2 d3))))
(/.f64 (*.f64 (*.f64 d1 (pow.f64 (cbrt.f64 (+.f64 3 (+.f64 d2 d3))) 2)) (cbrt.f64 (+.f64 (pow.f64 (+.f64 3 d2) 3) (pow.f64 d3 3)))) (cbrt.f64 (+.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 (-.f64 (-.f64 d3 3) d2)))))
(/.f64 (*.f64 (*.f64 d1 (pow.f64 (cbrt.f64 (+.f64 3 (+.f64 d2 d3))) 2)) (cbrt.f64 (-.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 d3)))) (cbrt.f64 (+.f64 3 (-.f64 d2 d3))))
(/.f64 (*.f64 (-.f64 9 (*.f64 (+.f64 d2 d3) (+.f64 d2 d3))) d1) (-.f64 3 (+.f64 d2 d3)))
(/.f64 (*.f64 (-.f64 (*.f64 d3 d3) (pow.f64 (+.f64 3 d2) 2)) d1) (-.f64 (-.f64 d3 3) d2))
(/.f64 (*.f64 (+.f64 27 (pow.f64 (+.f64 d2 d3) 3)) d1) (+.f64 9 (-.f64 (*.f64 (+.f64 d2 d3) (+.f64 d2 d3)) (*.f64 3 (+.f64 d2 d3)))))
(/.f64 (*.f64 (neg.f64 (-.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 d3))) d1) (neg.f64 (+.f64 3 (-.f64 d2 d3))))
(/.f64 (*.f64 (neg.f64 (+.f64 (pow.f64 (+.f64 3 d2) 3) (pow.f64 d3 3))) d1) (neg.f64 (+.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 (-.f64 (-.f64 d3 3) d2)))))
(/.f64 (*.f64 (*.f64 d1 (-.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 d3))) 1) (+.f64 3 (-.f64 d2 d3)))
(/.f64 (*.f64 (*.f64 d1 (+.f64 (pow.f64 (+.f64 3 d2) 3) (pow.f64 d3 3))) 1) (+.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 (-.f64 (-.f64 d3 3) d2))))
(/.f64 (*.f64 (-.f64 (*.f64 (*.f64 d1 (+.f64 3 d2)) (*.f64 d1 (+.f64 3 d2))) (*.f64 (*.f64 d1 d3) (*.f64 d1 d3))) 1) (-.f64 (*.f64 d1 (+.f64 3 d2)) (*.f64 d1 d3)))
(/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 d1 (+.f64 3 d2)) 3) (pow.f64 (*.f64 d1 d3) 3)) 1) (+.f64 (*.f64 (*.f64 d1 (+.f64 3 d2)) (*.f64 d1 (+.f64 3 d2))) (-.f64 (*.f64 (*.f64 d1 d3) (*.f64 d1 d3)) (*.f64 (*.f64 d1 (+.f64 3 d2)) (*.f64 d1 d3)))))
(/.f64 (*.f64 (sqrt.f64 (+.f64 (pow.f64 (+.f64 3 d2) 3) (pow.f64 d3 3))) (*.f64 d1 (sqrt.f64 (+.f64 3 (+.f64 d2 d3))))) (sqrt.f64 (+.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 (-.f64 (-.f64 d3 3) d2)))))
(/.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 d3))) (*.f64 d1 (sqrt.f64 (+.f64 3 (+.f64 d2 d3))))) (sqrt.f64 (+.f64 3 (-.f64 d2 d3))))
(/.f64 (/.f64 (*.f64 d1 (-.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 d3))) 1) (+.f64 3 (-.f64 d2 d3)))
(/.f64 (/.f64 (*.f64 d1 (-.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 d3))) (sqrt.f64 (+.f64 3 (-.f64 d2 d3)))) (sqrt.f64 (+.f64 3 (-.f64 d2 d3))))
(/.f64 (/.f64 (*.f64 d1 (-.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 d3))) (*.f64 (cbrt.f64 (+.f64 3 (-.f64 d2 d3))) (cbrt.f64 (+.f64 3 (-.f64 d2 d3))))) (cbrt.f64 (+.f64 3 (-.f64 d2 d3))))
(/.f64 (/.f64 (*.f64 d1 (-.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 d3))) (+.f64 (sqrt.f64 (+.f64 3 d2)) (sqrt.f64 d3))) (-.f64 (sqrt.f64 (+.f64 3 d2)) (sqrt.f64 d3)))
(/.f64 (/.f64 (*.f64 d1 (+.f64 (pow.f64 (+.f64 3 d2) 3) (pow.f64 d3 3))) 1) (+.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 (-.f64 (-.f64 d3 3) d2))))
(/.f64 (/.f64 (*.f64 d1 (+.f64 (pow.f64 (+.f64 3 d2) 3) (pow.f64 d3 3))) (sqrt.f64 (+.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 (-.f64 (-.f64 d3 3) d2))))) (sqrt.f64 (+.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 (-.f64 (-.f64 d3 3) d2)))))
(/.f64 (/.f64 (*.f64 d1 (+.f64 (pow.f64 (+.f64 3 d2) 3) (pow.f64 d3 3))) (*.f64 (cbrt.f64 (+.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 (-.f64 (-.f64 d3 3) d2)))) (cbrt.f64 (+.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 (-.f64 (-.f64 d3 3) d2)))))) (cbrt.f64 (+.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 (-.f64 (-.f64 d3 3) d2)))))
(pow.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))) 1)
(pow.f64 (sqrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))) 2)
(pow.f64 (cbrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))) 3)
(pow.f64 (pow.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))) 3) 1/3)
(sqrt.f64 (pow.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))) 2))
(log.f64 (pow.f64 (exp.f64 d1) (+.f64 3 (+.f64 d2 d3))))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))))))
(cbrt.f64 (pow.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))) 3))
(cbrt.f64 (*.f64 (pow.f64 (+.f64 3 (+.f64 d2 d3)) 3) (pow.f64 d1 3)))
(expm1.f64 (log1p.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))))
(exp.f64 (log.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))))
(log1p.f64 (expm1.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))))
(fma.f64 d1 (+.f64 3 d2) (*.f64 d1 d3))
(fma.f64 (+.f64 3 d2) d1 (*.f64 d1 d3))
Outputs
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(*.f64 d1 (+.f64 d2 (+.f64 3 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(*.f64 d1 (+.f64 d2 (+.f64 3 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(*.f64 d1 (+.f64 d2 (+.f64 3 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(*.f64 d1 (+.f64 d2 (+.f64 3 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(*.f64 d1 (+.f64 3 d3))
(+.f64 (*.f64 d1 (+.f64 3 d3)) (*.f64 d2 d1))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(+.f64 (*.f64 d1 (+.f64 3 d3)) (*.f64 d2 d1))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(+.f64 (*.f64 d1 (+.f64 3 d3)) (*.f64 d2 d1))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(*.f64 d2 d1)
(*.f64 d1 d2)
(+.f64 (*.f64 d1 (+.f64 3 d3)) (*.f64 d2 d1))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(+.f64 (*.f64 d1 (+.f64 3 d3)) (*.f64 d2 d1))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(+.f64 (*.f64 d1 (+.f64 3 d3)) (*.f64 d2 d1))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(*.f64 d2 d1)
(*.f64 d1 d2)
(+.f64 (*.f64 d1 (+.f64 3 d3)) (*.f64 d2 d1))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(+.f64 (*.f64 d1 (+.f64 3 d3)) (*.f64 d2 d1))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(+.f64 (*.f64 d1 (+.f64 3 d3)) (*.f64 d2 d1))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(*.f64 (+.f64 d2 3) d1)
(*.f64 d1 (+.f64 3 d2))
(+.f64 (*.f64 (+.f64 d2 3) d1) (*.f64 d1 d3))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(+.f64 (*.f64 (+.f64 d2 3) d1) (*.f64 d1 d3))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(+.f64 (*.f64 (+.f64 d2 3) d1) (*.f64 d1 d3))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(*.f64 d1 d3)
(+.f64 (*.f64 (+.f64 d2 3) d1) (*.f64 d1 d3))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(+.f64 (*.f64 (+.f64 d2 3) d1) (*.f64 d1 d3))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(+.f64 (*.f64 (+.f64 d2 3) d1) (*.f64 d1 d3))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(*.f64 d1 d3)
(+.f64 (*.f64 (+.f64 d2 3) d1) (*.f64 d1 d3))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(+.f64 (*.f64 (+.f64 d2 3) d1) (*.f64 d1 d3))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(+.f64 (*.f64 (+.f64 d2 3) d1) (*.f64 d1 d3))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(+.f64 (*.f64 d1 (+.f64 3 d2)) (*.f64 d1 d3))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(+.f64 (*.f64 d1 d3) (*.f64 d1 (+.f64 3 d2)))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(+.f64 (*.f64 d1 3) (*.f64 d1 (+.f64 d2 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(+.f64 (*.f64 d1 d2) (+.f64 (*.f64 d1 3) (*.f64 d1 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(+.f64 (*.f64 d1 d2) (*.f64 d1 (+.f64 3 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(+.f64 (*.f64 d1 d2) (*.f64 (+.f64 3 d3) d1))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(+.f64 (*.f64 d1 (+.f64 d2 d3)) (*.f64 d1 3))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(+.f64 (+.f64 (*.f64 d1 d3) (*.f64 d1 3)) (*.f64 d1 d2))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(+.f64 (*.f64 d1 (+.f64 3 d3)) (*.f64 d1 d2))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(+.f64 (*.f64 1 (*.f64 d1 3)) (*.f64 1 (*.f64 d1 (+.f64 d2 d3))))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(+.f64 (*.f64 (+.f64 3 d3) d1) (*.f64 d1 d2))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(+.f64 (*.f64 (*.f64 d1 3) 1) (*.f64 (*.f64 d1 (+.f64 d2 d3)) 1))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))))) 1)
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(/.f64 d1 (/.f64 1 (+.f64 3 (+.f64 d2 d3))))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(/.f64 (-.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 d3)) (/.f64 (+.f64 3 (-.f64 d2 d3)) d1))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(/.f64 (+.f64 (pow.f64 (+.f64 3 d2) 3) (pow.f64 d3 3)) (/.f64 (+.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 (-.f64 (-.f64 d3 3) d2))) d1))
(*.f64 (/.f64 (+.f64 (pow.f64 (+.f64 3 d2) 3) (pow.f64 d3 3)) (+.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 (-.f64 (+.f64 d3 -3) d2)))) d1)
(*.f64 d1 (/.f64 (+.f64 (pow.f64 (+.f64 3 d2) 3) (pow.f64 d3 3)) (fma.f64 d3 (-.f64 (+.f64 d3 -3) d2) (pow.f64 (+.f64 3 d2) 2))))
(*.f64 d1 (/.f64 (+.f64 (pow.f64 (+.f64 3 d2) 3) (pow.f64 d3 3)) (fma.f64 d3 (+.f64 d3 (-.f64 -3 d2)) (pow.f64 (+.f64 3 d2) 2))))
(/.f64 (*.f64 d1 (-.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 d3))) (+.f64 3 (-.f64 d2 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(/.f64 (*.f64 d1 (+.f64 (pow.f64 (+.f64 3 d2) 3) (pow.f64 d3 3))) (+.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 (-.f64 (-.f64 d3 3) d2))))
(*.f64 (/.f64 (+.f64 (pow.f64 (+.f64 3 d2) 3) (pow.f64 d3 3)) (+.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 (-.f64 (+.f64 d3 -3) d2)))) d1)
(*.f64 d1 (/.f64 (+.f64 (pow.f64 (+.f64 3 d2) 3) (pow.f64 d3 3)) (fma.f64 d3 (-.f64 (+.f64 d3 -3) d2) (pow.f64 (+.f64 3 d2) 2))))
(*.f64 d1 (/.f64 (+.f64 (pow.f64 (+.f64 3 d2) 3) (pow.f64 d3 3)) (fma.f64 d3 (+.f64 d3 (-.f64 -3 d2)) (pow.f64 (+.f64 3 d2) 2))))
(/.f64 (-.f64 (*.f64 (*.f64 d1 (+.f64 3 d2)) (*.f64 d1 (+.f64 3 d2))) (*.f64 (*.f64 d1 d3) (*.f64 d1 d3))) (-.f64 (*.f64 d1 (+.f64 3 d2)) (*.f64 d1 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(/.f64 (+.f64 (pow.f64 (*.f64 d1 (+.f64 3 d2)) 3) (pow.f64 (*.f64 d1 d3) 3)) (+.f64 (*.f64 (*.f64 d1 (+.f64 3 d2)) (*.f64 d1 (+.f64 3 d2))) (-.f64 (*.f64 (*.f64 d1 d3) (*.f64 d1 d3)) (*.f64 (*.f64 d1 (+.f64 3 d2)) (*.f64 d1 d3)))))
(/.f64 (+.f64 (pow.f64 (*.f64 d1 (+.f64 3 d2)) 3) (pow.f64 (*.f64 d1 d3) 3)) (+.f64 (*.f64 (*.f64 d1 d1) (pow.f64 (+.f64 3 d2) 2)) (*.f64 (*.f64 d1 d3) (-.f64 (*.f64 d1 d3) (*.f64 d1 (+.f64 3 d2))))))
(/.f64 (+.f64 (pow.f64 (*.f64 d1 (+.f64 3 d2)) 3) (pow.f64 (*.f64 d1 d3) 3)) (fma.f64 d1 (*.f64 (pow.f64 (+.f64 3 d2) 2) d1) (*.f64 (*.f64 d1 d3) (*.f64 d1 (-.f64 (+.f64 d3 -3) d2)))))
(/.f64 (+.f64 (pow.f64 (*.f64 d1 (+.f64 3 d2)) 3) (pow.f64 (*.f64 d1 d3) 3)) (*.f64 d1 (+.f64 (*.f64 d1 (pow.f64 (+.f64 3 d2) 2)) (*.f64 d3 (*.f64 d1 (+.f64 d3 (-.f64 -3 d2)))))))
(/.f64 (*.f64 d1 (-.f64 9 (*.f64 (+.f64 d2 d3) (+.f64 d2 d3)))) (-.f64 3 (+.f64 d2 d3)))
(/.f64 d1 (/.f64 (-.f64 3 (+.f64 d2 d3)) (-.f64 9 (*.f64 (+.f64 d2 d3) (+.f64 d2 d3)))))
(*.f64 (/.f64 d1 (-.f64 3 (+.f64 d2 d3))) (-.f64 9 (*.f64 (+.f64 d2 d3) (+.f64 d2 d3))))
(*.f64 d1 (/.f64 (-.f64 9 (*.f64 (+.f64 d2 d3) (+.f64 d2 d3))) (-.f64 3 (+.f64 d2 d3))))
(/.f64 (*.f64 d1 (-.f64 (*.f64 d3 d3) (pow.f64 (+.f64 3 d2) 2))) (-.f64 (-.f64 d3 3) d2))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(/.f64 (*.f64 d1 (+.f64 27 (pow.f64 (+.f64 d2 d3) 3))) (+.f64 9 (-.f64 (*.f64 (+.f64 d2 d3) (+.f64 d2 d3)) (*.f64 3 (+.f64 d2 d3)))))
(/.f64 (+.f64 27 (pow.f64 (+.f64 d2 d3) 3)) (/.f64 (+.f64 9 (*.f64 (+.f64 d2 d3) (-.f64 (+.f64 d2 d3) 3))) d1))
(/.f64 (*.f64 d1 (+.f64 27 (pow.f64 (+.f64 d2 d3) 3))) (fma.f64 (+.f64 d2 d3) (+.f64 d2 (+.f64 d3 -3)) 9))
(*.f64 d1 (/.f64 (+.f64 27 (pow.f64 (+.f64 d2 d3) 3)) (fma.f64 (+.f64 d2 d3) (+.f64 d3 (+.f64 d2 -3)) 9)))
(/.f64 (*.f64 d1 (neg.f64 (-.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 d3)))) (neg.f64 (+.f64 3 (-.f64 d2 d3))))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(/.f64 (*.f64 d1 (neg.f64 (+.f64 (pow.f64 (+.f64 3 d2) 3) (pow.f64 d3 3)))) (neg.f64 (+.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 (-.f64 (-.f64 d3 3) d2)))))
(*.f64 (/.f64 (+.f64 (pow.f64 (+.f64 3 d2) 3) (pow.f64 d3 3)) (+.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 (-.f64 (+.f64 d3 -3) d2)))) d1)
(*.f64 d1 (/.f64 (+.f64 (pow.f64 (+.f64 3 d2) 3) (pow.f64 d3 3)) (fma.f64 d3 (-.f64 (+.f64 d3 -3) d2) (pow.f64 (+.f64 3 d2) 2))))
(*.f64 d1 (/.f64 (+.f64 (pow.f64 (+.f64 3 d2) 3) (pow.f64 d3 3)) (fma.f64 d3 (+.f64 d3 (-.f64 -3 d2)) (pow.f64 (+.f64 3 d2) 2))))
(/.f64 (*.f64 1 (*.f64 d1 (-.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 d3)))) (+.f64 3 (-.f64 d2 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(/.f64 (*.f64 1 (*.f64 d1 (+.f64 (pow.f64 (+.f64 3 d2) 3) (pow.f64 d3 3)))) (+.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 (-.f64 (-.f64 d3 3) d2))))
(*.f64 (/.f64 (+.f64 (pow.f64 (+.f64 3 d2) 3) (pow.f64 d3 3)) (+.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 (-.f64 (+.f64 d3 -3) d2)))) d1)
(*.f64 d1 (/.f64 (+.f64 (pow.f64 (+.f64 3 d2) 3) (pow.f64 d3 3)) (fma.f64 d3 (-.f64 (+.f64 d3 -3) d2) (pow.f64 (+.f64 3 d2) 2))))
(*.f64 d1 (/.f64 (+.f64 (pow.f64 (+.f64 3 d2) 3) (pow.f64 d3 3)) (fma.f64 d3 (+.f64 d3 (-.f64 -3 d2)) (pow.f64 (+.f64 3 d2) 2))))
(/.f64 (*.f64 1 (-.f64 (*.f64 (*.f64 d1 (+.f64 3 d2)) (*.f64 d1 (+.f64 3 d2))) (*.f64 (*.f64 d1 d3) (*.f64 d1 d3)))) (-.f64 (*.f64 d1 (+.f64 3 d2)) (*.f64 d1 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(/.f64 (*.f64 1 (+.f64 (pow.f64 (*.f64 d1 (+.f64 3 d2)) 3) (pow.f64 (*.f64 d1 d3) 3))) (+.f64 (*.f64 (*.f64 d1 (+.f64 3 d2)) (*.f64 d1 (+.f64 3 d2))) (-.f64 (*.f64 (*.f64 d1 d3) (*.f64 d1 d3)) (*.f64 (*.f64 d1 (+.f64 3 d2)) (*.f64 d1 d3)))))
(/.f64 (+.f64 (pow.f64 (*.f64 d1 (+.f64 3 d2)) 3) (pow.f64 (*.f64 d1 d3) 3)) (+.f64 (*.f64 (*.f64 d1 d1) (pow.f64 (+.f64 3 d2) 2)) (*.f64 (*.f64 d1 d3) (-.f64 (*.f64 d1 d3) (*.f64 d1 (+.f64 3 d2))))))
(/.f64 (+.f64 (pow.f64 (*.f64 d1 (+.f64 3 d2)) 3) (pow.f64 (*.f64 d1 d3) 3)) (fma.f64 d1 (*.f64 (pow.f64 (+.f64 3 d2) 2) d1) (*.f64 (*.f64 d1 d3) (*.f64 d1 (-.f64 (+.f64 d3 -3) d2)))))
(/.f64 (+.f64 (pow.f64 (*.f64 d1 (+.f64 3 d2)) 3) (pow.f64 (*.f64 d1 d3) 3)) (*.f64 d1 (+.f64 (*.f64 d1 (pow.f64 (+.f64 3 d2) 2)) (*.f64 d3 (*.f64 d1 (+.f64 d3 (-.f64 -3 d2)))))))
(/.f64 (*.f64 (*.f64 d1 (sqrt.f64 (+.f64 3 (+.f64 d2 d3)))) (sqrt.f64 (+.f64 (pow.f64 (+.f64 3 d2) 3) (pow.f64 d3 3)))) (sqrt.f64 (+.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 (-.f64 (-.f64 d3 3) d2)))))
(/.f64 (*.f64 d1 (sqrt.f64 (+.f64 3 (+.f64 d2 d3)))) (/.f64 (sqrt.f64 (+.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 (-.f64 (+.f64 d3 -3) d2)))) (sqrt.f64 (+.f64 (pow.f64 (+.f64 3 d2) 3) (pow.f64 d3 3)))))
(*.f64 (/.f64 (*.f64 d1 (sqrt.f64 (+.f64 3 (+.f64 d2 d3)))) (sqrt.f64 (fma.f64 d3 (-.f64 (+.f64 d3 -3) d2) (pow.f64 (+.f64 3 d2) 2)))) (hypot.f64 (pow.f64 (+.f64 3 d2) 3/2) (pow.f64 d3 3/2)))
(*.f64 (*.f64 d1 (sqrt.f64 (+.f64 3 (+.f64 d2 d3)))) (/.f64 (hypot.f64 (pow.f64 (+.f64 3 d2) 3/2) (pow.f64 d3 3/2)) (sqrt.f64 (fma.f64 d3 (+.f64 d3 (-.f64 -3 d2)) (pow.f64 (+.f64 3 d2) 2)))))
(/.f64 (*.f64 (*.f64 d1 (sqrt.f64 (+.f64 3 (+.f64 d2 d3)))) (sqrt.f64 (-.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 d3)))) (sqrt.f64 (+.f64 3 (-.f64 d2 d3))))
(/.f64 (*.f64 d1 (sqrt.f64 (+.f64 3 (+.f64 d2 d3)))) (/.f64 (sqrt.f64 (+.f64 3 (-.f64 d2 d3))) (sqrt.f64 (-.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 d3)))))
(*.f64 (/.f64 (*.f64 d1 (sqrt.f64 (+.f64 3 (+.f64 d2 d3)))) (sqrt.f64 (-.f64 d2 (+.f64 d3 -3)))) (sqrt.f64 (-.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 d3))))
(*.f64 (*.f64 d1 (sqrt.f64 (+.f64 3 (+.f64 d2 d3)))) (/.f64 (sqrt.f64 (-.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 d3))) (sqrt.f64 (+.f64 3 (-.f64 d2 d3)))))
(/.f64 (*.f64 (*.f64 d1 (pow.f64 (cbrt.f64 (+.f64 3 (+.f64 d2 d3))) 2)) (cbrt.f64 (+.f64 (pow.f64 (+.f64 3 d2) 3) (pow.f64 d3 3)))) (cbrt.f64 (+.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 (-.f64 (-.f64 d3 3) d2)))))
(/.f64 (*.f64 (*.f64 d1 (pow.f64 (cbrt.f64 (+.f64 3 (+.f64 d2 d3))) 2)) (cbrt.f64 (+.f64 (pow.f64 (+.f64 3 d2) 3) (pow.f64 d3 3)))) (cbrt.f64 (+.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 (-.f64 (+.f64 d3 -3) d2)))))
(*.f64 (/.f64 (*.f64 d1 (pow.f64 (cbrt.f64 (+.f64 3 (+.f64 d2 d3))) 2)) (cbrt.f64 (fma.f64 d3 (-.f64 (+.f64 d3 -3) d2) (pow.f64 (+.f64 3 d2) 2)))) (cbrt.f64 (+.f64 (pow.f64 (+.f64 3 d2) 3) (pow.f64 d3 3))))
(*.f64 (cbrt.f64 (+.f64 (pow.f64 (+.f64 3 d2) 3) (pow.f64 d3 3))) (/.f64 d1 (/.f64 (cbrt.f64 (fma.f64 d3 (+.f64 d3 (-.f64 -3 d2)) (pow.f64 (+.f64 3 d2) 2))) (pow.f64 (cbrt.f64 (+.f64 3 (+.f64 d2 d3))) 2))))
(/.f64 (*.f64 (*.f64 d1 (pow.f64 (cbrt.f64 (+.f64 3 (+.f64 d2 d3))) 2)) (cbrt.f64 (-.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 d3)))) (cbrt.f64 (+.f64 3 (-.f64 d2 d3))))
(/.f64 (*.f64 d1 (pow.f64 (cbrt.f64 (+.f64 3 (+.f64 d2 d3))) 2)) (/.f64 (cbrt.f64 (+.f64 3 (-.f64 d2 d3))) (cbrt.f64 (-.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 d3)))))
(*.f64 (/.f64 (*.f64 d1 (pow.f64 (cbrt.f64 (+.f64 3 (+.f64 d2 d3))) 2)) (cbrt.f64 (-.f64 d2 (+.f64 d3 -3)))) (cbrt.f64 (-.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 d3))))
(*.f64 (cbrt.f64 (-.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 d3))) (/.f64 (pow.f64 (cbrt.f64 (+.f64 3 (+.f64 d2 d3))) 2) (/.f64 (cbrt.f64 (+.f64 3 (-.f64 d2 d3))) d1)))
(/.f64 (*.f64 (-.f64 9 (*.f64 (+.f64 d2 d3) (+.f64 d2 d3))) d1) (-.f64 3 (+.f64 d2 d3)))
(/.f64 d1 (/.f64 (-.f64 3 (+.f64 d2 d3)) (-.f64 9 (*.f64 (+.f64 d2 d3) (+.f64 d2 d3)))))
(*.f64 (/.f64 d1 (-.f64 3 (+.f64 d2 d3))) (-.f64 9 (*.f64 (+.f64 d2 d3) (+.f64 d2 d3))))
(*.f64 d1 (/.f64 (-.f64 9 (*.f64 (+.f64 d2 d3) (+.f64 d2 d3))) (-.f64 3 (+.f64 d2 d3))))
(/.f64 (*.f64 (-.f64 (*.f64 d3 d3) (pow.f64 (+.f64 3 d2) 2)) d1) (-.f64 (-.f64 d3 3) d2))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(/.f64 (*.f64 (+.f64 27 (pow.f64 (+.f64 d2 d3) 3)) d1) (+.f64 9 (-.f64 (*.f64 (+.f64 d2 d3) (+.f64 d2 d3)) (*.f64 3 (+.f64 d2 d3)))))
(/.f64 (+.f64 27 (pow.f64 (+.f64 d2 d3) 3)) (/.f64 (+.f64 9 (*.f64 (+.f64 d2 d3) (-.f64 (+.f64 d2 d3) 3))) d1))
(/.f64 (*.f64 d1 (+.f64 27 (pow.f64 (+.f64 d2 d3) 3))) (fma.f64 (+.f64 d2 d3) (+.f64 d2 (+.f64 d3 -3)) 9))
(*.f64 d1 (/.f64 (+.f64 27 (pow.f64 (+.f64 d2 d3) 3)) (fma.f64 (+.f64 d2 d3) (+.f64 d3 (+.f64 d2 -3)) 9)))
(/.f64 (*.f64 (neg.f64 (-.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 d3))) d1) (neg.f64 (+.f64 3 (-.f64 d2 d3))))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(/.f64 (*.f64 (neg.f64 (+.f64 (pow.f64 (+.f64 3 d2) 3) (pow.f64 d3 3))) d1) (neg.f64 (+.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 (-.f64 (-.f64 d3 3) d2)))))
(*.f64 (/.f64 (+.f64 (pow.f64 (+.f64 3 d2) 3) (pow.f64 d3 3)) (+.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 (-.f64 (+.f64 d3 -3) d2)))) d1)
(*.f64 d1 (/.f64 (+.f64 (pow.f64 (+.f64 3 d2) 3) (pow.f64 d3 3)) (fma.f64 d3 (-.f64 (+.f64 d3 -3) d2) (pow.f64 (+.f64 3 d2) 2))))
(*.f64 d1 (/.f64 (+.f64 (pow.f64 (+.f64 3 d2) 3) (pow.f64 d3 3)) (fma.f64 d3 (+.f64 d3 (-.f64 -3 d2)) (pow.f64 (+.f64 3 d2) 2))))
(/.f64 (*.f64 (*.f64 d1 (-.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 d3))) 1) (+.f64 3 (-.f64 d2 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(/.f64 (*.f64 (*.f64 d1 (+.f64 (pow.f64 (+.f64 3 d2) 3) (pow.f64 d3 3))) 1) (+.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 (-.f64 (-.f64 d3 3) d2))))
(*.f64 (/.f64 (+.f64 (pow.f64 (+.f64 3 d2) 3) (pow.f64 d3 3)) (+.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 (-.f64 (+.f64 d3 -3) d2)))) d1)
(*.f64 d1 (/.f64 (+.f64 (pow.f64 (+.f64 3 d2) 3) (pow.f64 d3 3)) (fma.f64 d3 (-.f64 (+.f64 d3 -3) d2) (pow.f64 (+.f64 3 d2) 2))))
(*.f64 d1 (/.f64 (+.f64 (pow.f64 (+.f64 3 d2) 3) (pow.f64 d3 3)) (fma.f64 d3 (+.f64 d3 (-.f64 -3 d2)) (pow.f64 (+.f64 3 d2) 2))))
(/.f64 (*.f64 (-.f64 (*.f64 (*.f64 d1 (+.f64 3 d2)) (*.f64 d1 (+.f64 3 d2))) (*.f64 (*.f64 d1 d3) (*.f64 d1 d3))) 1) (-.f64 (*.f64 d1 (+.f64 3 d2)) (*.f64 d1 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 d1 (+.f64 3 d2)) 3) (pow.f64 (*.f64 d1 d3) 3)) 1) (+.f64 (*.f64 (*.f64 d1 (+.f64 3 d2)) (*.f64 d1 (+.f64 3 d2))) (-.f64 (*.f64 (*.f64 d1 d3) (*.f64 d1 d3)) (*.f64 (*.f64 d1 (+.f64 3 d2)) (*.f64 d1 d3)))))
(/.f64 (+.f64 (pow.f64 (*.f64 d1 (+.f64 3 d2)) 3) (pow.f64 (*.f64 d1 d3) 3)) (+.f64 (*.f64 (*.f64 d1 d1) (pow.f64 (+.f64 3 d2) 2)) (*.f64 (*.f64 d1 d3) (-.f64 (*.f64 d1 d3) (*.f64 d1 (+.f64 3 d2))))))
(/.f64 (+.f64 (pow.f64 (*.f64 d1 (+.f64 3 d2)) 3) (pow.f64 (*.f64 d1 d3) 3)) (fma.f64 d1 (*.f64 (pow.f64 (+.f64 3 d2) 2) d1) (*.f64 (*.f64 d1 d3) (*.f64 d1 (-.f64 (+.f64 d3 -3) d2)))))
(/.f64 (+.f64 (pow.f64 (*.f64 d1 (+.f64 3 d2)) 3) (pow.f64 (*.f64 d1 d3) 3)) (*.f64 d1 (+.f64 (*.f64 d1 (pow.f64 (+.f64 3 d2) 2)) (*.f64 d3 (*.f64 d1 (+.f64 d3 (-.f64 -3 d2)))))))
(/.f64 (*.f64 (sqrt.f64 (+.f64 (pow.f64 (+.f64 3 d2) 3) (pow.f64 d3 3))) (*.f64 d1 (sqrt.f64 (+.f64 3 (+.f64 d2 d3))))) (sqrt.f64 (+.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 (-.f64 (-.f64 d3 3) d2)))))
(/.f64 (*.f64 d1 (sqrt.f64 (+.f64 3 (+.f64 d2 d3)))) (/.f64 (sqrt.f64 (+.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 (-.f64 (+.f64 d3 -3) d2)))) (sqrt.f64 (+.f64 (pow.f64 (+.f64 3 d2) 3) (pow.f64 d3 3)))))
(*.f64 (/.f64 (*.f64 d1 (sqrt.f64 (+.f64 3 (+.f64 d2 d3)))) (sqrt.f64 (fma.f64 d3 (-.f64 (+.f64 d3 -3) d2) (pow.f64 (+.f64 3 d2) 2)))) (hypot.f64 (pow.f64 (+.f64 3 d2) 3/2) (pow.f64 d3 3/2)))
(*.f64 (*.f64 d1 (sqrt.f64 (+.f64 3 (+.f64 d2 d3)))) (/.f64 (hypot.f64 (pow.f64 (+.f64 3 d2) 3/2) (pow.f64 d3 3/2)) (sqrt.f64 (fma.f64 d3 (+.f64 d3 (-.f64 -3 d2)) (pow.f64 (+.f64 3 d2) 2)))))
(/.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 d3))) (*.f64 d1 (sqrt.f64 (+.f64 3 (+.f64 d2 d3))))) (sqrt.f64 (+.f64 3 (-.f64 d2 d3))))
(/.f64 (*.f64 d1 (sqrt.f64 (+.f64 3 (+.f64 d2 d3)))) (/.f64 (sqrt.f64 (+.f64 3 (-.f64 d2 d3))) (sqrt.f64 (-.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 d3)))))
(*.f64 (/.f64 (*.f64 d1 (sqrt.f64 (+.f64 3 (+.f64 d2 d3)))) (sqrt.f64 (-.f64 d2 (+.f64 d3 -3)))) (sqrt.f64 (-.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 d3))))
(*.f64 (*.f64 d1 (sqrt.f64 (+.f64 3 (+.f64 d2 d3)))) (/.f64 (sqrt.f64 (-.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 d3))) (sqrt.f64 (+.f64 3 (-.f64 d2 d3)))))
(/.f64 (/.f64 (*.f64 d1 (-.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 d3))) 1) (+.f64 3 (-.f64 d2 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(/.f64 (/.f64 (*.f64 d1 (-.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 d3))) (sqrt.f64 (+.f64 3 (-.f64 d2 d3)))) (sqrt.f64 (+.f64 3 (-.f64 d2 d3))))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(/.f64 (/.f64 (*.f64 d1 (-.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 d3))) (*.f64 (cbrt.f64 (+.f64 3 (-.f64 d2 d3))) (cbrt.f64 (+.f64 3 (-.f64 d2 d3))))) (cbrt.f64 (+.f64 3 (-.f64 d2 d3))))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(/.f64 (/.f64 (*.f64 d1 (-.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 d3))) (+.f64 (sqrt.f64 (+.f64 3 d2)) (sqrt.f64 d3))) (-.f64 (sqrt.f64 (+.f64 3 d2)) (sqrt.f64 d3)))
(/.f64 (*.f64 d1 (-.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 d3))) (*.f64 (-.f64 (sqrt.f64 (+.f64 3 d2)) (sqrt.f64 d3)) (+.f64 (sqrt.f64 (+.f64 3 d2)) (sqrt.f64 d3))))
(*.f64 (/.f64 d1 (-.f64 (sqrt.f64 (+.f64 3 d2)) (sqrt.f64 d3))) (/.f64 (-.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 d3)) (+.f64 (sqrt.f64 (+.f64 3 d2)) (sqrt.f64 d3))))
(*.f64 (/.f64 d1 (+.f64 (sqrt.f64 d3) (sqrt.f64 (+.f64 3 d2)))) (/.f64 (-.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 d3)) (-.f64 (sqrt.f64 (+.f64 3 d2)) (sqrt.f64 d3))))
(/.f64 (/.f64 (*.f64 d1 (+.f64 (pow.f64 (+.f64 3 d2) 3) (pow.f64 d3 3))) 1) (+.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 (-.f64 (-.f64 d3 3) d2))))
(*.f64 (/.f64 (+.f64 (pow.f64 (+.f64 3 d2) 3) (pow.f64 d3 3)) (+.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 (-.f64 (+.f64 d3 -3) d2)))) d1)
(*.f64 d1 (/.f64 (+.f64 (pow.f64 (+.f64 3 d2) 3) (pow.f64 d3 3)) (fma.f64 d3 (-.f64 (+.f64 d3 -3) d2) (pow.f64 (+.f64 3 d2) 2))))
(*.f64 d1 (/.f64 (+.f64 (pow.f64 (+.f64 3 d2) 3) (pow.f64 d3 3)) (fma.f64 d3 (+.f64 d3 (-.f64 -3 d2)) (pow.f64 (+.f64 3 d2) 2))))
(/.f64 (/.f64 (*.f64 d1 (+.f64 (pow.f64 (+.f64 3 d2) 3) (pow.f64 d3 3))) (sqrt.f64 (+.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 (-.f64 (-.f64 d3 3) d2))))) (sqrt.f64 (+.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 (-.f64 (-.f64 d3 3) d2)))))
(*.f64 (/.f64 (+.f64 (pow.f64 (+.f64 3 d2) 3) (pow.f64 d3 3)) (+.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 (-.f64 (+.f64 d3 -3) d2)))) d1)
(*.f64 d1 (/.f64 (+.f64 (pow.f64 (+.f64 3 d2) 3) (pow.f64 d3 3)) (fma.f64 d3 (-.f64 (+.f64 d3 -3) d2) (pow.f64 (+.f64 3 d2) 2))))
(*.f64 d1 (/.f64 (+.f64 (pow.f64 (+.f64 3 d2) 3) (pow.f64 d3 3)) (fma.f64 d3 (+.f64 d3 (-.f64 -3 d2)) (pow.f64 (+.f64 3 d2) 2))))
(/.f64 (/.f64 (*.f64 d1 (+.f64 (pow.f64 (+.f64 3 d2) 3) (pow.f64 d3 3))) (*.f64 (cbrt.f64 (+.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 (-.f64 (-.f64 d3 3) d2)))) (cbrt.f64 (+.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 (-.f64 (-.f64 d3 3) d2)))))) (cbrt.f64 (+.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 (-.f64 (-.f64 d3 3) d2)))))
(*.f64 (/.f64 (+.f64 (pow.f64 (+.f64 3 d2) 3) (pow.f64 d3 3)) (+.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 (-.f64 (+.f64 d3 -3) d2)))) d1)
(*.f64 d1 (/.f64 (+.f64 (pow.f64 (+.f64 3 d2) 3) (pow.f64 d3 3)) (fma.f64 d3 (-.f64 (+.f64 d3 -3) d2) (pow.f64 (+.f64 3 d2) 2))))
(*.f64 d1 (/.f64 (+.f64 (pow.f64 (+.f64 3 d2) 3) (pow.f64 d3 3)) (fma.f64 d3 (+.f64 d3 (-.f64 -3 d2)) (pow.f64 (+.f64 3 d2) 2))))
(pow.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))) 1)
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(pow.f64 (sqrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))) 2)
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(pow.f64 (cbrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))) 3)
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(pow.f64 (pow.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))) 3) 1/3)
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(sqrt.f64 (pow.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))) 2))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(log.f64 (pow.f64 (exp.f64 d1) (+.f64 3 (+.f64 d2 d3))))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))))))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(cbrt.f64 (pow.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))) 3))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(cbrt.f64 (*.f64 (pow.f64 (+.f64 3 (+.f64 d2 d3)) 3) (pow.f64 d1 3)))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(expm1.f64 (log1p.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(exp.f64 (log.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(log1p.f64 (expm1.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(fma.f64 d1 (+.f64 3 d2) (*.f64 d1 d3))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(fma.f64 (+.f64 3 d2) d1 (*.f64 d1 d3))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))

eval34.0ms (0.9%)

Compiler

Compiled 2091 to 1249 computations (40.3% saved)

prune30.0ms (0.8%)

Pruning

7 alts after pruning (6 fresh and 1 done)

PrunedKeptTotal
New966102
Fresh000
Picked011
Done000
Total967103
Error
0%
Counts
103 → 7
Alt Table
Click to see full alt table
StatusErrorProgram
0.07%
(fma.f64 (+.f64 3 d2) d1 (*.f64 d1 d3))
0.51%
(/.f64 d1 (/.f64 1 (+.f64 3 (+.f64 d2 d3))))
36.66%
(*.f64 (+.f64 d2 3) d1)
65.77%
(*.f64 d2 d1)
0.04%
(*.f64 d1 (+.f64 (+.f64 3 d2) d3))
33.13%
(*.f64 d1 (+.f64 3 d3))
60.69%
(*.f64 d1 d3)
Compiler

Compiled 112 to 79 computations (29.5% saved)

localize8.0ms (0.2%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.09%
(fma.f64 (+.f64 3 d2) d1 (*.f64 d1 d3))
Compiler

Compiled 21 to 10 computations (52.4% saved)

series4.0ms (0.1%)

Counts
1 → 36
Calls

9 calls:

TimeVariablePointExpression
1.0ms
d1
@-inf
(fma.f64 (+.f64 3 d2) d1 (*.f64 d1 d3))
1.0ms
d1
@inf
(fma.f64 (+.f64 3 d2) d1 (*.f64 d1 d3))
1.0ms
d2
@-inf
(fma.f64 (+.f64 3 d2) d1 (*.f64 d1 d3))
0.0ms
d1
@0
(fma.f64 (+.f64 3 d2) d1 (*.f64 d1 d3))
0.0ms
d2
@0
(fma.f64 (+.f64 3 d2) d1 (*.f64 d1 d3))

rewrite108.0ms (2.8%)

Algorithm
batch-egg-rewrite
Rules
938×*-commutative
710×unswap-sqr
542×swap-sqr
386×associate-*r/
378×sqr-pow
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01021
120819
2256219
Stop Event
node limit
Counts
1 → 47
Calls
Call 1
Inputs
(fma.f64 (+.f64 3 d2) d1 (*.f64 d1 d3))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 d1 d3) (*.f64 (+.f64 3 d2) d1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (+.f64 3 d2) d1) (*.f64 d1 d3))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (exp.f64 (log1p.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 d1 d3))) (-.f64 1 (*.f64 (+.f64 3 d2) d1)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 (+.f64 3 d2) d1) (exp.f64 (log1p.f64 (*.f64 d1 d3)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 d1 (+.f64 3 (+.f64 d2 d3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))) (sqrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 d1) (+.f64 (*.f64 d3 (sqrt.f64 d1)) (*.f64 (+.f64 3 d2) (sqrt.f64 d1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 d1) (+.f64 (*.f64 (+.f64 3 d2) (sqrt.f64 d1)) (*.f64 d3 (sqrt.f64 d1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))) (pow.f64 (cbrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))) 2) (cbrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 d1) (+.f64 (*.f64 d3 (pow.f64 (cbrt.f64 d1) 2)) (*.f64 (+.f64 3 d2) (pow.f64 (cbrt.f64 d1) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 d1) (+.f64 (*.f64 (+.f64 3 d2) (pow.f64 (cbrt.f64 d1) 2)) (*.f64 d3 (pow.f64 (cbrt.f64 d1) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 3 (+.f64 d2 d3)) d1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (*.f64 (+.f64 3 d2) d1) 2) (pow.f64 (*.f64 d1 d3) 2)) (/.f64 1 (*.f64 d1 (-.f64 (+.f64 3 d2) d3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (*.f64 d1 d3) 3) (pow.f64 (*.f64 (+.f64 3 d2) d1) 3)) (/.f64 1 (+.f64 (pow.f64 (*.f64 (+.f64 3 d2) d1) 2) (*.f64 (*.f64 d1 d3) (-.f64 (*.f64 d1 d3) (*.f64 (+.f64 3 d2) d1))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (cbrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))))) (cbrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))))) (*.f64 (sqrt.f64 (cbrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))))) (cbrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (sqrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))))) (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))) 2))) (*.f64 (cbrt.f64 (sqrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))))) (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))) (sqrt.f64 (cbrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))))) (*.f64 (cbrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))) (sqrt.f64 (cbrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))) 2)) (cbrt.f64 (sqrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))))) (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))) 2)) (cbrt.f64 (sqrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))) 3/2) (pow.f64 (cbrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))) 3) 1/6) (pow.f64 (pow.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))) 3) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (*.f64 d1 (-.f64 (+.f64 3 d2) d3)) (-.f64 (pow.f64 (*.f64 (+.f64 3 d2) d1) 2) (pow.f64 (*.f64 d1 d3) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (pow.f64 (*.f64 (+.f64 3 d2) d1) 2) (*.f64 (*.f64 d1 d3) (-.f64 (*.f64 d1 d3) (*.f64 (+.f64 3 d2) d1)))) (+.f64 (pow.f64 (*.f64 d1 d3) 3) (pow.f64 (*.f64 (+.f64 3 d2) d1) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (+.f64 3 d2) d1) 2) (pow.f64 (*.f64 d1 d3) 2)) (*.f64 d1 (-.f64 (+.f64 3 d2) d3)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 d1 d3) 3) (pow.f64 (*.f64 (+.f64 3 d2) d1) 3)) (+.f64 (pow.f64 (*.f64 (+.f64 3 d2) d1) 2) (*.f64 (*.f64 d1 d3) (-.f64 (*.f64 d1 d3) (*.f64 (+.f64 3 d2) d1)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 d1 d3) 3) (pow.f64 (*.f64 (+.f64 3 d2) d1) 3)) (+.f64 (pow.f64 (*.f64 d1 d3) 2) (-.f64 (pow.f64 (*.f64 (+.f64 3 d2) d1) 2) (*.f64 (*.f64 d1 d3) (*.f64 (+.f64 3 d2) d1)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (-.f64 (pow.f64 (*.f64 (+.f64 3 d2) d1) 2) (pow.f64 (*.f64 d1 d3) 2))) (*.f64 d1 (-.f64 (+.f64 3 d2) d3)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (+.f64 (pow.f64 (*.f64 d1 d3) 3) (pow.f64 (*.f64 (+.f64 3 d2) d1) 3))) (+.f64 (pow.f64 (*.f64 (+.f64 3 d2) d1) 2) (*.f64 (*.f64 d1 d3) (-.f64 (*.f64 d1 d3) (*.f64 (+.f64 3 d2) d1)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 (*.f64 (+.f64 3 d2) d1) 2) (pow.f64 (*.f64 d1 d3) 2)) 1) (*.f64 d1 (-.f64 (+.f64 3 d2) d3)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (pow.f64 (*.f64 d1 d3) 3) (pow.f64 (*.f64 (+.f64 3 d2) d1) 3)) 1) (+.f64 (pow.f64 (*.f64 (+.f64 3 d2) d1) 2) (*.f64 (*.f64 d1 d3) (-.f64 (*.f64 d1 d3) (*.f64 (+.f64 3 d2) d1)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 d1 d3) 2) (pow.f64 (*.f64 (+.f64 3 d2) d1) 2)) (-.f64 (*.f64 d1 d3) (*.f64 (+.f64 3 d2) d1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (exp.f64 (log1p.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))))) (exp.f64 (log1p.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))))) 1) (+.f64 (exp.f64 (log1p.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))))))))

simplify78.0ms (2.1%)

Algorithm
egg-herbie
Rules
1216×distribute-lft-in
1130×distribute-rgt-in
898×associate--r+
612×fma-def
548×*-commutative
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01422837
14072413
215382413
364592413
Stop Event
node limit
Counts
83 → 75
Calls
Call 1
Inputs
(+.f64 (*.f64 3 d1) (*.f64 d1 d3))
(+.f64 (*.f64 3 d1) (+.f64 (*.f64 d2 d1) (*.f64 d1 d3)))
(+.f64 (*.f64 3 d1) (+.f64 (*.f64 d2 d1) (*.f64 d1 d3)))
(+.f64 (*.f64 3 d1) (+.f64 (*.f64 d2 d1) (*.f64 d1 d3)))
(*.f64 d2 d1)
(+.f64 (*.f64 3 d1) (+.f64 (*.f64 d2 d1) (*.f64 d1 d3)))
(+.f64 (*.f64 3 d1) (+.f64 (*.f64 d2 d1) (*.f64 d1 d3)))
(+.f64 (*.f64 3 d1) (+.f64 (*.f64 d2 d1) (*.f64 d1 d3)))
(*.f64 d2 d1)
(+.f64 (*.f64 3 d1) (+.f64 (*.f64 d2 d1) (*.f64 d1 d3)))
(+.f64 (*.f64 3 d1) (+.f64 (*.f64 d2 d1) (*.f64 d1 d3)))
(+.f64 (*.f64 3 d1) (+.f64 (*.f64 d2 d1) (*.f64 d1 d3)))
(*.f64 d1 (+.f64 d2 (+.f64 3 d3)))
(*.f64 d1 (+.f64 d2 (+.f64 3 d3)))
(*.f64 d1 (+.f64 d2 (+.f64 3 d3)))
(*.f64 d1 (+.f64 d2 (+.f64 3 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(*.f64 -1 (*.f64 (+.f64 (*.f64 -1 d3) (*.f64 -1 (+.f64 d2 3))) d1))
(*.f64 -1 (*.f64 (+.f64 (*.f64 -1 d3) (*.f64 -1 (+.f64 d2 3))) d1))
(*.f64 -1 (*.f64 (+.f64 (*.f64 -1 d3) (*.f64 -1 (+.f64 d2 3))) d1))
(*.f64 -1 (*.f64 (+.f64 (*.f64 -1 d3) (*.f64 -1 (+.f64 d2 3))) d1))
(*.f64 (+.f64 d2 3) d1)
(+.f64 (*.f64 (+.f64 d2 3) d1) (*.f64 d1 d3))
(+.f64 (*.f64 (+.f64 d2 3) d1) (*.f64 d1 d3))
(+.f64 (*.f64 (+.f64 d2 3) d1) (*.f64 d1 d3))
(*.f64 d1 d3)
(+.f64 (*.f64 (+.f64 d2 3) d1) (*.f64 d1 d3))
(+.f64 (*.f64 (+.f64 d2 3) d1) (*.f64 d1 d3))
(+.f64 (*.f64 (+.f64 d2 3) d1) (*.f64 d1 d3))
(*.f64 d1 d3)
(+.f64 (*.f64 (+.f64 d2 3) d1) (*.f64 d1 d3))
(+.f64 (*.f64 (+.f64 d2 3) d1) (*.f64 d1 d3))
(+.f64 (*.f64 (+.f64 d2 3) d1) (*.f64 d1 d3))
(+.f64 (*.f64 d1 d3) (*.f64 (+.f64 3 d2) d1))
(+.f64 (*.f64 (+.f64 3 d2) d1) (*.f64 d1 d3))
(+.f64 (exp.f64 (log1p.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))))) -1)
(-.f64 (exp.f64 (log1p.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))))) 1)
(-.f64 (exp.f64 (log1p.f64 (*.f64 d1 d3))) (-.f64 1 (*.f64 (+.f64 3 d2) d1)))
(-.f64 (+.f64 (*.f64 (+.f64 3 d2) d1) (exp.f64 (log1p.f64 (*.f64 d1 d3)))) 1)
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(*.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))) 1)
(*.f64 1 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))))
(*.f64 (sqrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))) (sqrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))))
(*.f64 (sqrt.f64 d1) (+.f64 (*.f64 d3 (sqrt.f64 d1)) (*.f64 (+.f64 3 d2) (sqrt.f64 d1))))
(*.f64 (sqrt.f64 d1) (+.f64 (*.f64 (+.f64 3 d2) (sqrt.f64 d1)) (*.f64 d3 (sqrt.f64 d1))))
(*.f64 (cbrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))) (pow.f64 (cbrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))) 2))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))) 2) (cbrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))))
(*.f64 (cbrt.f64 d1) (+.f64 (*.f64 d3 (pow.f64 (cbrt.f64 d1) 2)) (*.f64 (+.f64 3 d2) (pow.f64 (cbrt.f64 d1) 2))))
(*.f64 (cbrt.f64 d1) (+.f64 (*.f64 (+.f64 3 d2) (pow.f64 (cbrt.f64 d1) 2)) (*.f64 d3 (pow.f64 (cbrt.f64 d1) 2))))
(*.f64 (+.f64 3 (+.f64 d2 d3)) d1)
(*.f64 (-.f64 (pow.f64 (*.f64 (+.f64 3 d2) d1) 2) (pow.f64 (*.f64 d1 d3) 2)) (/.f64 1 (*.f64 d1 (-.f64 (+.f64 3 d2) d3))))
(*.f64 (+.f64 (pow.f64 (*.f64 d1 d3) 3) (pow.f64 (*.f64 (+.f64 3 d2) d1) 3)) (/.f64 1 (+.f64 (pow.f64 (*.f64 (+.f64 3 d2) d1) 2) (*.f64 (*.f64 d1 d3) (-.f64 (*.f64 d1 d3) (*.f64 (+.f64 3 d2) d1))))))
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))))) (cbrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))))) (*.f64 (sqrt.f64 (cbrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))))) (cbrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))))))
(*.f64 (*.f64 (cbrt.f64 (sqrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))))) (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))) 2))) (*.f64 (cbrt.f64 (sqrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))))) (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))) 2))))
(*.f64 (*.f64 (cbrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))) (sqrt.f64 (cbrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))))) (*.f64 (cbrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))) (sqrt.f64 (cbrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))))))
(*.f64 (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))) 2)) (cbrt.f64 (sqrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))))) (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))) 2)) (cbrt.f64 (sqrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))))))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))) 3/2) (pow.f64 (cbrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))) 3/2))
(*.f64 (pow.f64 (pow.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))) 3) 1/6) (pow.f64 (pow.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))) 3) 1/6))
(/.f64 1 (/.f64 (*.f64 d1 (-.f64 (+.f64 3 d2) d3)) (-.f64 (pow.f64 (*.f64 (+.f64 3 d2) d1) 2) (pow.f64 (*.f64 d1 d3) 2))))
(/.f64 1 (/.f64 (+.f64 (pow.f64 (*.f64 (+.f64 3 d2) d1) 2) (*.f64 (*.f64 d1 d3) (-.f64 (*.f64 d1 d3) (*.f64 (+.f64 3 d2) d1)))) (+.f64 (pow.f64 (*.f64 d1 d3) 3) (pow.f64 (*.f64 (+.f64 3 d2) d1) 3))))
(/.f64 (-.f64 (pow.f64 (*.f64 (+.f64 3 d2) d1) 2) (pow.f64 (*.f64 d1 d3) 2)) (*.f64 d1 (-.f64 (+.f64 3 d2) d3)))
(/.f64 (+.f64 (pow.f64 (*.f64 d1 d3) 3) (pow.f64 (*.f64 (+.f64 3 d2) d1) 3)) (+.f64 (pow.f64 (*.f64 (+.f64 3 d2) d1) 2) (*.f64 (*.f64 d1 d3) (-.f64 (*.f64 d1 d3) (*.f64 (+.f64 3 d2) d1)))))
(/.f64 (+.f64 (pow.f64 (*.f64 d1 d3) 3) (pow.f64 (*.f64 (+.f64 3 d2) d1) 3)) (+.f64 (pow.f64 (*.f64 d1 d3) 2) (-.f64 (pow.f64 (*.f64 (+.f64 3 d2) d1) 2) (*.f64 (*.f64 d1 d3) (*.f64 (+.f64 3 d2) d1)))))
(/.f64 (*.f64 1 (-.f64 (pow.f64 (*.f64 (+.f64 3 d2) d1) 2) (pow.f64 (*.f64 d1 d3) 2))) (*.f64 d1 (-.f64 (+.f64 3 d2) d3)))
(/.f64 (*.f64 1 (+.f64 (pow.f64 (*.f64 d1 d3) 3) (pow.f64 (*.f64 (+.f64 3 d2) d1) 3))) (+.f64 (pow.f64 (*.f64 (+.f64 3 d2) d1) 2) (*.f64 (*.f64 d1 d3) (-.f64 (*.f64 d1 d3) (*.f64 (+.f64 3 d2) d1)))))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 (+.f64 3 d2) d1) 2) (pow.f64 (*.f64 d1 d3) 2)) 1) (*.f64 d1 (-.f64 (+.f64 3 d2) d3)))
(/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 d1 d3) 3) (pow.f64 (*.f64 (+.f64 3 d2) d1) 3)) 1) (+.f64 (pow.f64 (*.f64 (+.f64 3 d2) d1) 2) (*.f64 (*.f64 d1 d3) (-.f64 (*.f64 d1 d3) (*.f64 (+.f64 3 d2) d1)))))
(/.f64 (-.f64 (pow.f64 (*.f64 d1 d3) 2) (pow.f64 (*.f64 (+.f64 3 d2) d1) 2)) (-.f64 (*.f64 d1 d3) (*.f64 (+.f64 3 d2) d1)))
(/.f64 (-.f64 (*.f64 (exp.f64 (log1p.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))))) (exp.f64 (log1p.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))))) 1) (+.f64 (exp.f64 (log1p.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))))) 1))
(pow.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))) 1)
(pow.f64 (sqrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))) 2)
(pow.f64 (cbrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))) 3)
(pow.f64 (pow.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))) 3) 1/3)
(sqrt.f64 (pow.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))) 2))
(log.f64 (exp.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))))))
(cbrt.f64 (pow.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))) 3))
(expm1.f64 (log1p.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))))
(exp.f64 (log.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))))
(log1p.f64 (expm1.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))))
Outputs
(+.f64 (*.f64 3 d1) (*.f64 d1 d3))
(fma.f64 3 d1 (*.f64 d1 d3))
(*.f64 d1 (+.f64 3 d3))
(+.f64 (*.f64 3 d1) (+.f64 (*.f64 d2 d1) (*.f64 d1 d3)))
(fma.f64 3 d1 (fma.f64 d2 d1 (*.f64 d1 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d3 d2)))
(+.f64 (*.f64 3 d1) (+.f64 (*.f64 d2 d1) (*.f64 d1 d3)))
(fma.f64 3 d1 (fma.f64 d2 d1 (*.f64 d1 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d3 d2)))
(+.f64 (*.f64 3 d1) (+.f64 (*.f64 d2 d1) (*.f64 d1 d3)))
(fma.f64 3 d1 (fma.f64 d2 d1 (*.f64 d1 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d3 d2)))
(*.f64 d2 d1)
(*.f64 d1 d2)
(+.f64 (*.f64 3 d1) (+.f64 (*.f64 d2 d1) (*.f64 d1 d3)))
(fma.f64 3 d1 (fma.f64 d2 d1 (*.f64 d1 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d3 d2)))
(+.f64 (*.f64 3 d1) (+.f64 (*.f64 d2 d1) (*.f64 d1 d3)))
(fma.f64 3 d1 (fma.f64 d2 d1 (*.f64 d1 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d3 d2)))
(+.f64 (*.f64 3 d1) (+.f64 (*.f64 d2 d1) (*.f64 d1 d3)))
(fma.f64 3 d1 (fma.f64 d2 d1 (*.f64 d1 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d3 d2)))
(*.f64 d2 d1)
(*.f64 d1 d2)
(+.f64 (*.f64 3 d1) (+.f64 (*.f64 d2 d1) (*.f64 d1 d3)))
(fma.f64 3 d1 (fma.f64 d2 d1 (*.f64 d1 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d3 d2)))
(+.f64 (*.f64 3 d1) (+.f64 (*.f64 d2 d1) (*.f64 d1 d3)))
(fma.f64 3 d1 (fma.f64 d2 d1 (*.f64 d1 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d3 d2)))
(+.f64 (*.f64 3 d1) (+.f64 (*.f64 d2 d1) (*.f64 d1 d3)))
(fma.f64 3 d1 (fma.f64 d2 d1 (*.f64 d1 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d3 d2)))
(*.f64 d1 (+.f64 d2 (+.f64 3 d3)))
(fma.f64 3 d1 (fma.f64 d2 d1 (*.f64 d1 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d3 d2)))
(*.f64 d1 (+.f64 d2 (+.f64 3 d3)))
(fma.f64 3 d1 (fma.f64 d2 d1 (*.f64 d1 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d3 d2)))
(*.f64 d1 (+.f64 d2 (+.f64 3 d3)))
(fma.f64 3 d1 (fma.f64 d2 d1 (*.f64 d1 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d3 d2)))
(*.f64 d1 (+.f64 d2 (+.f64 3 d3)))
(fma.f64 3 d1 (fma.f64 d2 d1 (*.f64 d1 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d3 d2)))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(fma.f64 3 d1 (fma.f64 d2 d1 (*.f64 d1 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d3 d2)))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(fma.f64 3 d1 (fma.f64 d2 d1 (*.f64 d1 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d3 d2)))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(fma.f64 3 d1 (fma.f64 d2 d1 (*.f64 d1 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d3 d2)))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(fma.f64 3 d1 (fma.f64 d2 d1 (*.f64 d1 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d3 d2)))
(*.f64 -1 (*.f64 (+.f64 (*.f64 -1 d3) (*.f64 -1 (+.f64 d2 3))) d1))
(fma.f64 3 d1 (fma.f64 d2 d1 (*.f64 d1 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d3 d2)))
(*.f64 -1 (*.f64 (+.f64 (*.f64 -1 d3) (*.f64 -1 (+.f64 d2 3))) d1))
(fma.f64 3 d1 (fma.f64 d2 d1 (*.f64 d1 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d3 d2)))
(*.f64 -1 (*.f64 (+.f64 (*.f64 -1 d3) (*.f64 -1 (+.f64 d2 3))) d1))
(fma.f64 3 d1 (fma.f64 d2 d1 (*.f64 d1 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d3 d2)))
(*.f64 -1 (*.f64 (+.f64 (*.f64 -1 d3) (*.f64 -1 (+.f64 d2 3))) d1))
(fma.f64 3 d1 (fma.f64 d2 d1 (*.f64 d1 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d3 d2)))
(*.f64 (+.f64 d2 3) d1)
(*.f64 d1 (+.f64 3 d2))
(+.f64 (*.f64 (+.f64 d2 3) d1) (*.f64 d1 d3))
(fma.f64 3 d1 (fma.f64 d2 d1 (*.f64 d1 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d3 d2)))
(+.f64 (*.f64 (+.f64 d2 3) d1) (*.f64 d1 d3))
(fma.f64 3 d1 (fma.f64 d2 d1 (*.f64 d1 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d3 d2)))
(+.f64 (*.f64 (+.f64 d2 3) d1) (*.f64 d1 d3))
(fma.f64 3 d1 (fma.f64 d2 d1 (*.f64 d1 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d3 d2)))
(*.f64 d1 d3)
(+.f64 (*.f64 (+.f64 d2 3) d1) (*.f64 d1 d3))
(fma.f64 3 d1 (fma.f64 d2 d1 (*.f64 d1 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d3 d2)))
(+.f64 (*.f64 (+.f64 d2 3) d1) (*.f64 d1 d3))
(fma.f64 3 d1 (fma.f64 d2 d1 (*.f64 d1 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d3 d2)))
(+.f64 (*.f64 (+.f64 d2 3) d1) (*.f64 d1 d3))
(fma.f64 3 d1 (fma.f64 d2 d1 (*.f64 d1 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d3 d2)))
(*.f64 d1 d3)
(+.f64 (*.f64 (+.f64 d2 3) d1) (*.f64 d1 d3))
(fma.f64 3 d1 (fma.f64 d2 d1 (*.f64 d1 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d3 d2)))
(+.f64 (*.f64 (+.f64 d2 3) d1) (*.f64 d1 d3))
(fma.f64 3 d1 (fma.f64 d2 d1 (*.f64 d1 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d3 d2)))
(+.f64 (*.f64 (+.f64 d2 3) d1) (*.f64 d1 d3))
(fma.f64 3 d1 (fma.f64 d2 d1 (*.f64 d1 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d3 d2)))
(+.f64 (*.f64 d1 d3) (*.f64 (+.f64 3 d2) d1))
(fma.f64 3 d1 (fma.f64 d2 d1 (*.f64 d1 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d3 d2)))
(+.f64 (*.f64 (+.f64 3 d2) d1) (*.f64 d1 d3))
(fma.f64 3 d1 (fma.f64 d2 d1 (*.f64 d1 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d3 d2)))
(+.f64 (exp.f64 (log1p.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))))) -1)
(fma.f64 3 d1 (fma.f64 d2 d1 (*.f64 d1 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d3 d2)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))))) 1)
(fma.f64 3 d1 (fma.f64 d2 d1 (*.f64 d1 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d3 d2)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 d1 d3))) (-.f64 1 (*.f64 (+.f64 3 d2) d1)))
(fma.f64 3 d1 (fma.f64 d2 d1 (*.f64 d1 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d3 d2)))
(-.f64 (+.f64 (*.f64 (+.f64 3 d2) d1) (exp.f64 (log1p.f64 (*.f64 d1 d3)))) 1)
(fma.f64 3 d1 (fma.f64 d2 d1 (*.f64 d1 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d3 d2)))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(fma.f64 3 d1 (fma.f64 d2 d1 (*.f64 d1 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d3 d2)))
(*.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))) 1)
(fma.f64 3 d1 (fma.f64 d2 d1 (*.f64 d1 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d3 d2)))
(*.f64 1 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))))
(fma.f64 3 d1 (fma.f64 d2 d1 (*.f64 d1 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d3 d2)))
(*.f64 (sqrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))) (sqrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))))
(fma.f64 3 d1 (fma.f64 d2 d1 (*.f64 d1 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d3 d2)))
(*.f64 (sqrt.f64 d1) (+.f64 (*.f64 d3 (sqrt.f64 d1)) (*.f64 (+.f64 3 d2) (sqrt.f64 d1))))
(fma.f64 3 d1 (fma.f64 d2 d1 (*.f64 d1 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d3 d2)))
(*.f64 (sqrt.f64 d1) (+.f64 (*.f64 (+.f64 3 d2) (sqrt.f64 d1)) (*.f64 d3 (sqrt.f64 d1))))
(fma.f64 3 d1 (fma.f64 d2 d1 (*.f64 d1 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d3 d2)))
(*.f64 (cbrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))) (pow.f64 (cbrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))) 2))
(fma.f64 3 d1 (fma.f64 d2 d1 (*.f64 d1 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d3 d2)))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))) 2) (cbrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))))
(fma.f64 3 d1 (fma.f64 d2 d1 (*.f64 d1 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d3 d2)))
(*.f64 (cbrt.f64 d1) (+.f64 (*.f64 d3 (pow.f64 (cbrt.f64 d1) 2)) (*.f64 (+.f64 3 d2) (pow.f64 (cbrt.f64 d1) 2))))
(fma.f64 3 d1 (fma.f64 d2 d1 (*.f64 d1 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d3 d2)))
(*.f64 (cbrt.f64 d1) (+.f64 (*.f64 (+.f64 3 d2) (pow.f64 (cbrt.f64 d1) 2)) (*.f64 d3 (pow.f64 (cbrt.f64 d1) 2))))
(fma.f64 3 d1 (fma.f64 d2 d1 (*.f64 d1 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d3 d2)))
(*.f64 (+.f64 3 (+.f64 d2 d3)) d1)
(fma.f64 3 d1 (fma.f64 d2 d1 (*.f64 d1 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d3 d2)))
(*.f64 (-.f64 (pow.f64 (*.f64 (+.f64 3 d2) d1) 2) (pow.f64 (*.f64 d1 d3) 2)) (/.f64 1 (*.f64 d1 (-.f64 (+.f64 3 d2) d3))))
(/.f64 (-.f64 (pow.f64 (*.f64 d1 (+.f64 3 d2)) 2) (pow.f64 (*.f64 d1 d3) 2)) (*.f64 d1 (-.f64 (+.f64 3 d2) d3)))
(/.f64 (-.f64 (pow.f64 (*.f64 d1 (+.f64 3 d2)) 2) (pow.f64 (*.f64 d1 d3) 2)) (*.f64 d1 (+.f64 3 (-.f64 d2 d3))))
(/.f64 (-.f64 (pow.f64 (*.f64 d1 (+.f64 3 d2)) 2) (pow.f64 (*.f64 d1 d3) 2)) (*.f64 d1 (-.f64 3 (-.f64 d3 d2))))
(*.f64 (+.f64 (pow.f64 (*.f64 d1 d3) 3) (pow.f64 (*.f64 (+.f64 3 d2) d1) 3)) (/.f64 1 (+.f64 (pow.f64 (*.f64 (+.f64 3 d2) d1) 2) (*.f64 (*.f64 d1 d3) (-.f64 (*.f64 d1 d3) (*.f64 (+.f64 3 d2) d1))))))
(/.f64 (+.f64 (pow.f64 (*.f64 d1 d3) 3) (pow.f64 (*.f64 d1 (+.f64 3 d2)) 3)) (+.f64 (pow.f64 (*.f64 d1 (+.f64 3 d2)) 2) (*.f64 (*.f64 d1 d3) (-.f64 (*.f64 d1 d3) (*.f64 d1 (+.f64 3 d2))))))
(/.f64 (+.f64 (pow.f64 (*.f64 d1 d3) 3) (pow.f64 (*.f64 d1 (+.f64 3 d2)) 3)) (fma.f64 d1 (*.f64 d3 (*.f64 d1 (-.f64 d3 (+.f64 3 d2)))) (pow.f64 (*.f64 d1 (+.f64 3 d2)) 2)))
(/.f64 (*.f64 (pow.f64 d1 3) (+.f64 (pow.f64 d3 3) (pow.f64 (+.f64 3 d2) 3))) (fma.f64 d1 (*.f64 d3 (*.f64 d1 (+.f64 d3 (-.f64 -3 d2)))) (pow.f64 (*.f64 d1 (+.f64 3 d2)) 2)))
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))))) (cbrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))))) (*.f64 (sqrt.f64 (cbrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))))) (cbrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))))))
(fma.f64 3 d1 (fma.f64 d2 d1 (*.f64 d1 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d3 d2)))
(*.f64 (*.f64 (cbrt.f64 (sqrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))))) (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))) 2))) (*.f64 (cbrt.f64 (sqrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))))) (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))) 2))))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 d1 (+.f64 d2 (+.f64 3 d3))))) (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 d1 (+.f64 d2 (+.f64 3 d3)))) 2)) (*.f64 (cbrt.f64 (sqrt.f64 (*.f64 d1 (+.f64 d2 (+.f64 3 d3))))) (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 d1 (+.f64 d2 (+.f64 3 d3)))) 2)))))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d3 d2)))) 2) (*.f64 (cbrt.f64 (sqrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d3 d2))))) (cbrt.f64 (sqrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d3 d2)))))))
(*.f64 (*.f64 (cbrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))) (sqrt.f64 (cbrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))))) (*.f64 (cbrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))) (sqrt.f64 (cbrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))))))
(fma.f64 3 d1 (fma.f64 d2 d1 (*.f64 d1 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d3 d2)))
(*.f64 (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))) 2)) (cbrt.f64 (sqrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))))) (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))) 2)) (cbrt.f64 (sqrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))))))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 d1 (+.f64 d2 (+.f64 3 d3))))) (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 d1 (+.f64 d2 (+.f64 3 d3)))) 2)) (*.f64 (cbrt.f64 (sqrt.f64 (*.f64 d1 (+.f64 d2 (+.f64 3 d3))))) (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 d1 (+.f64 d2 (+.f64 3 d3)))) 2)))))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d3 d2)))) 2) (*.f64 (cbrt.f64 (sqrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d3 d2))))) (cbrt.f64 (sqrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d3 d2)))))))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))) 3/2) (pow.f64 (cbrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))) 3/2))
(fma.f64 3 d1 (fma.f64 d2 d1 (*.f64 d1 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d3 d2)))
(*.f64 (pow.f64 (pow.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))) 3) 1/6) (pow.f64 (pow.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))) 3) 1/6))
(fma.f64 3 d1 (fma.f64 d2 d1 (*.f64 d1 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d3 d2)))
(/.f64 1 (/.f64 (*.f64 d1 (-.f64 (+.f64 3 d2) d3)) (-.f64 (pow.f64 (*.f64 (+.f64 3 d2) d1) 2) (pow.f64 (*.f64 d1 d3) 2))))
(/.f64 (-.f64 (pow.f64 (*.f64 d1 (+.f64 3 d2)) 2) (pow.f64 (*.f64 d1 d3) 2)) (*.f64 d1 (-.f64 (+.f64 3 d2) d3)))
(/.f64 (-.f64 (pow.f64 (*.f64 d1 (+.f64 3 d2)) 2) (pow.f64 (*.f64 d1 d3) 2)) (*.f64 d1 (+.f64 3 (-.f64 d2 d3))))
(/.f64 (-.f64 (pow.f64 (*.f64 d1 (+.f64 3 d2)) 2) (pow.f64 (*.f64 d1 d3) 2)) (*.f64 d1 (-.f64 3 (-.f64 d3 d2))))
(/.f64 1 (/.f64 (+.f64 (pow.f64 (*.f64 (+.f64 3 d2) d1) 2) (*.f64 (*.f64 d1 d3) (-.f64 (*.f64 d1 d3) (*.f64 (+.f64 3 d2) d1)))) (+.f64 (pow.f64 (*.f64 d1 d3) 3) (pow.f64 (*.f64 (+.f64 3 d2) d1) 3))))
(/.f64 (+.f64 (pow.f64 (*.f64 d1 d3) 3) (pow.f64 (*.f64 d1 (+.f64 3 d2)) 3)) (+.f64 (pow.f64 (*.f64 d1 (+.f64 3 d2)) 2) (*.f64 (*.f64 d1 d3) (-.f64 (*.f64 d1 d3) (*.f64 d1 (+.f64 3 d2))))))
(/.f64 (+.f64 (pow.f64 (*.f64 d1 d3) 3) (pow.f64 (*.f64 d1 (+.f64 3 d2)) 3)) (fma.f64 d1 (*.f64 d3 (*.f64 d1 (-.f64 d3 (+.f64 3 d2)))) (pow.f64 (*.f64 d1 (+.f64 3 d2)) 2)))
(/.f64 (*.f64 (pow.f64 d1 3) (+.f64 (pow.f64 d3 3) (pow.f64 (+.f64 3 d2) 3))) (fma.f64 d1 (*.f64 d3 (*.f64 d1 (+.f64 d3 (-.f64 -3 d2)))) (pow.f64 (*.f64 d1 (+.f64 3 d2)) 2)))
(/.f64 (-.f64 (pow.f64 (*.f64 (+.f64 3 d2) d1) 2) (pow.f64 (*.f64 d1 d3) 2)) (*.f64 d1 (-.f64 (+.f64 3 d2) d3)))
(/.f64 (-.f64 (pow.f64 (*.f64 d1 (+.f64 3 d2)) 2) (pow.f64 (*.f64 d1 d3) 2)) (*.f64 d1 (-.f64 (+.f64 3 d2) d3)))
(/.f64 (-.f64 (pow.f64 (*.f64 d1 (+.f64 3 d2)) 2) (pow.f64 (*.f64 d1 d3) 2)) (*.f64 d1 (+.f64 3 (-.f64 d2 d3))))
(/.f64 (-.f64 (pow.f64 (*.f64 d1 (+.f64 3 d2)) 2) (pow.f64 (*.f64 d1 d3) 2)) (*.f64 d1 (-.f64 3 (-.f64 d3 d2))))
(/.f64 (+.f64 (pow.f64 (*.f64 d1 d3) 3) (pow.f64 (*.f64 (+.f64 3 d2) d1) 3)) (+.f64 (pow.f64 (*.f64 (+.f64 3 d2) d1) 2) (*.f64 (*.f64 d1 d3) (-.f64 (*.f64 d1 d3) (*.f64 (+.f64 3 d2) d1)))))
(/.f64 (+.f64 (pow.f64 (*.f64 d1 d3) 3) (pow.f64 (*.f64 d1 (+.f64 3 d2)) 3)) (+.f64 (pow.f64 (*.f64 d1 (+.f64 3 d2)) 2) (*.f64 (*.f64 d1 d3) (-.f64 (*.f64 d1 d3) (*.f64 d1 (+.f64 3 d2))))))
(/.f64 (+.f64 (pow.f64 (*.f64 d1 d3) 3) (pow.f64 (*.f64 d1 (+.f64 3 d2)) 3)) (fma.f64 d1 (*.f64 d3 (*.f64 d1 (-.f64 d3 (+.f64 3 d2)))) (pow.f64 (*.f64 d1 (+.f64 3 d2)) 2)))
(/.f64 (*.f64 (pow.f64 d1 3) (+.f64 (pow.f64 d3 3) (pow.f64 (+.f64 3 d2) 3))) (fma.f64 d1 (*.f64 d3 (*.f64 d1 (+.f64 d3 (-.f64 -3 d2)))) (pow.f64 (*.f64 d1 (+.f64 3 d2)) 2)))
(/.f64 (+.f64 (pow.f64 (*.f64 d1 d3) 3) (pow.f64 (*.f64 (+.f64 3 d2) d1) 3)) (+.f64 (pow.f64 (*.f64 d1 d3) 2) (-.f64 (pow.f64 (*.f64 (+.f64 3 d2) d1) 2) (*.f64 (*.f64 d1 d3) (*.f64 (+.f64 3 d2) d1)))))
(/.f64 (+.f64 (pow.f64 (*.f64 d1 d3) 3) (pow.f64 (*.f64 d1 (+.f64 3 d2)) 3)) (+.f64 (pow.f64 (*.f64 d1 (+.f64 3 d2)) 2) (*.f64 (*.f64 d1 d3) (-.f64 (*.f64 d1 d3) (*.f64 d1 (+.f64 3 d2))))))
(/.f64 (+.f64 (pow.f64 (*.f64 d1 d3) 3) (pow.f64 (*.f64 d1 (+.f64 3 d2)) 3)) (fma.f64 d1 (*.f64 d3 (*.f64 d1 (-.f64 d3 (+.f64 3 d2)))) (pow.f64 (*.f64 d1 (+.f64 3 d2)) 2)))
(/.f64 (*.f64 (pow.f64 d1 3) (+.f64 (pow.f64 d3 3) (pow.f64 (+.f64 3 d2) 3))) (fma.f64 d1 (*.f64 d3 (*.f64 d1 (+.f64 d3 (-.f64 -3 d2)))) (pow.f64 (*.f64 d1 (+.f64 3 d2)) 2)))
(/.f64 (*.f64 1 (-.f64 (pow.f64 (*.f64 (+.f64 3 d2) d1) 2) (pow.f64 (*.f64 d1 d3) 2))) (*.f64 d1 (-.f64 (+.f64 3 d2) d3)))
(/.f64 (-.f64 (pow.f64 (*.f64 d1 (+.f64 3 d2)) 2) (pow.f64 (*.f64 d1 d3) 2)) (*.f64 d1 (-.f64 (+.f64 3 d2) d3)))
(/.f64 (-.f64 (pow.f64 (*.f64 d1 (+.f64 3 d2)) 2) (pow.f64 (*.f64 d1 d3) 2)) (*.f64 d1 (+.f64 3 (-.f64 d2 d3))))
(/.f64 (-.f64 (pow.f64 (*.f64 d1 (+.f64 3 d2)) 2) (pow.f64 (*.f64 d1 d3) 2)) (*.f64 d1 (-.f64 3 (-.f64 d3 d2))))
(/.f64 (*.f64 1 (+.f64 (pow.f64 (*.f64 d1 d3) 3) (pow.f64 (*.f64 (+.f64 3 d2) d1) 3))) (+.f64 (pow.f64 (*.f64 (+.f64 3 d2) d1) 2) (*.f64 (*.f64 d1 d3) (-.f64 (*.f64 d1 d3) (*.f64 (+.f64 3 d2) d1)))))
(/.f64 (+.f64 (pow.f64 (*.f64 d1 d3) 3) (pow.f64 (*.f64 d1 (+.f64 3 d2)) 3)) (+.f64 (pow.f64 (*.f64 d1 (+.f64 3 d2)) 2) (*.f64 (*.f64 d1 d3) (-.f64 (*.f64 d1 d3) (*.f64 d1 (+.f64 3 d2))))))
(/.f64 (+.f64 (pow.f64 (*.f64 d1 d3) 3) (pow.f64 (*.f64 d1 (+.f64 3 d2)) 3)) (fma.f64 d1 (*.f64 d3 (*.f64 d1 (-.f64 d3 (+.f64 3 d2)))) (pow.f64 (*.f64 d1 (+.f64 3 d2)) 2)))
(/.f64 (*.f64 (pow.f64 d1 3) (+.f64 (pow.f64 d3 3) (pow.f64 (+.f64 3 d2) 3))) (fma.f64 d1 (*.f64 d3 (*.f64 d1 (+.f64 d3 (-.f64 -3 d2)))) (pow.f64 (*.f64 d1 (+.f64 3 d2)) 2)))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 (+.f64 3 d2) d1) 2) (pow.f64 (*.f64 d1 d3) 2)) 1) (*.f64 d1 (-.f64 (+.f64 3 d2) d3)))
(/.f64 (-.f64 (pow.f64 (*.f64 d1 (+.f64 3 d2)) 2) (pow.f64 (*.f64 d1 d3) 2)) (*.f64 d1 (-.f64 (+.f64 3 d2) d3)))
(/.f64 (-.f64 (pow.f64 (*.f64 d1 (+.f64 3 d2)) 2) (pow.f64 (*.f64 d1 d3) 2)) (*.f64 d1 (+.f64 3 (-.f64 d2 d3))))
(/.f64 (-.f64 (pow.f64 (*.f64 d1 (+.f64 3 d2)) 2) (pow.f64 (*.f64 d1 d3) 2)) (*.f64 d1 (-.f64 3 (-.f64 d3 d2))))
(/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 d1 d3) 3) (pow.f64 (*.f64 (+.f64 3 d2) d1) 3)) 1) (+.f64 (pow.f64 (*.f64 (+.f64 3 d2) d1) 2) (*.f64 (*.f64 d1 d3) (-.f64 (*.f64 d1 d3) (*.f64 (+.f64 3 d2) d1)))))
(/.f64 (+.f64 (pow.f64 (*.f64 d1 d3) 3) (pow.f64 (*.f64 d1 (+.f64 3 d2)) 3)) (+.f64 (pow.f64 (*.f64 d1 (+.f64 3 d2)) 2) (*.f64 (*.f64 d1 d3) (-.f64 (*.f64 d1 d3) (*.f64 d1 (+.f64 3 d2))))))
(/.f64 (+.f64 (pow.f64 (*.f64 d1 d3) 3) (pow.f64 (*.f64 d1 (+.f64 3 d2)) 3)) (fma.f64 d1 (*.f64 d3 (*.f64 d1 (-.f64 d3 (+.f64 3 d2)))) (pow.f64 (*.f64 d1 (+.f64 3 d2)) 2)))
(/.f64 (*.f64 (pow.f64 d1 3) (+.f64 (pow.f64 d3 3) (pow.f64 (+.f64 3 d2) 3))) (fma.f64 d1 (*.f64 d3 (*.f64 d1 (+.f64 d3 (-.f64 -3 d2)))) (pow.f64 (*.f64 d1 (+.f64 3 d2)) 2)))
(/.f64 (-.f64 (pow.f64 (*.f64 d1 d3) 2) (pow.f64 (*.f64 (+.f64 3 d2) d1) 2)) (-.f64 (*.f64 d1 d3) (*.f64 (+.f64 3 d2) d1)))
(/.f64 (-.f64 (pow.f64 (*.f64 d1 d3) 2) (pow.f64 (*.f64 d1 (+.f64 3 d2)) 2)) (-.f64 (*.f64 d1 d3) (*.f64 d1 (+.f64 3 d2))))
(/.f64 (-.f64 (pow.f64 (*.f64 d1 d3) 2) (pow.f64 (*.f64 d1 (+.f64 3 d2)) 2)) (*.f64 d1 (-.f64 d3 (+.f64 3 d2))))
(/.f64 (-.f64 (pow.f64 (*.f64 d1 d3) 2) (pow.f64 (*.f64 d1 (+.f64 3 d2)) 2)) (*.f64 d1 (+.f64 d3 (-.f64 -3 d2))))
(/.f64 (-.f64 (*.f64 (exp.f64 (log1p.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))))) (exp.f64 (log1p.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))))) 1) (+.f64 (exp.f64 (log1p.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))))) 1))
(/.f64 (*.f64 (+.f64 (exp.f64 (log1p.f64 (*.f64 d1 (+.f64 d2 (+.f64 3 d3))))) 1) (*.f64 d1 (+.f64 d2 (+.f64 3 d3)))) (+.f64 (exp.f64 (log1p.f64 (*.f64 d1 (+.f64 d2 (+.f64 3 d3))))) 1))
(/.f64 (expm1.f64 (*.f64 2 (log1p.f64 (*.f64 d1 (+.f64 3 (+.f64 d3 d2)))))) (+.f64 (exp.f64 (log1p.f64 (*.f64 d1 (+.f64 3 (+.f64 d3 d2))))) 1))
(/.f64 (expm1.f64 (*.f64 (log1p.f64 (*.f64 d1 (+.f64 3 (+.f64 d3 d2)))) 2)) (+.f64 (exp.f64 (log1p.f64 (*.f64 d1 (+.f64 3 (+.f64 d3 d2))))) 1))
(pow.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))) 1)
(fma.f64 3 d1 (fma.f64 d2 d1 (*.f64 d1 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d3 d2)))
(pow.f64 (sqrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))) 2)
(fma.f64 3 d1 (fma.f64 d2 d1 (*.f64 d1 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d3 d2)))
(pow.f64 (cbrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))) 3)
(fma.f64 3 d1 (fma.f64 d2 d1 (*.f64 d1 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d3 d2)))
(pow.f64 (pow.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))) 3) 1/3)
(fma.f64 3 d1 (fma.f64 d2 d1 (*.f64 d1 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d3 d2)))
(sqrt.f64 (pow.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))) 2))
(fma.f64 3 d1 (fma.f64 d2 d1 (*.f64 d1 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d3 d2)))
(log.f64 (exp.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))))
(fma.f64 3 d1 (fma.f64 d2 d1 (*.f64 d1 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d3 d2)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))))))
(fma.f64 3 d1 (fma.f64 d2 d1 (*.f64 d1 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d3 d2)))
(cbrt.f64 (pow.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))) 3))
(fma.f64 3 d1 (fma.f64 d2 d1 (*.f64 d1 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d3 d2)))
(expm1.f64 (log1p.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))))
(fma.f64 3 d1 (fma.f64 d2 d1 (*.f64 d1 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d3 d2)))
(exp.f64 (log.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))))
(fma.f64 3 d1 (fma.f64 d2 d1 (*.f64 d1 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d3 d2)))
(log1p.f64 (expm1.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))))
(fma.f64 3 d1 (fma.f64 d2 d1 (*.f64 d1 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d3 d2)))

localize3.0ms (0.1%)

Compiler

Compiled 8 to 4 computations (50% saved)

localize15.0ms (0.4%)

Compiler

Compiled 8 to 4 computations (50% saved)

localize5.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.02%
(*.f64 d1 (+.f64 3 d3))
Compiler

Compiled 14 to 9 computations (35.7% saved)

series2.0ms (0.1%)

Counts
1 → 12
Calls

6 calls:

TimeVariablePointExpression
1.0ms
d3
@inf
(*.f64 d1 (+.f64 3 d3))
0.0ms
d1
@0
(*.f64 d1 (+.f64 3 d3))
0.0ms
d1
@inf
(*.f64 d1 (+.f64 3 d3))
0.0ms
d1
@-inf
(*.f64 d1 (+.f64 3 d3))
0.0ms
d3
@-inf
(*.f64 d1 (+.f64 3 d3))

rewrite56.0ms (1.5%)

Algorithm
batch-egg-rewrite
Rules
1668×add-sqr-sqrt
1648×*-un-lft-identity
1546×add-cube-cbrt
1526×add-cbrt-cube
158×pow1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0713
115513
2200913
Stop Event
node limit
Counts
1 → 24
Calls
Call 1
Inputs
(*.f64 d1 (+.f64 3 d3))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 d1 3) (*.f64 d1 d3))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 d1 d3) (*.f64 d1 3))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 d1 3) 1) (*.f64 (*.f64 d1 d3) 1))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 d1 (+.f64 3 d3)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 d1 (-.f64 9 (*.f64 d3 d3))) (-.f64 3 d3))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 d1 (+.f64 27 (pow.f64 d3 3))) (+.f64 9 (*.f64 d3 (-.f64 d3 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 9 (*.f64 d3 d3)) d1) (-.f64 3 d3))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 27 (pow.f64 d3 3)) d1) (+.f64 9 (*.f64 d3 (-.f64 d3 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 d1 3) (*.f64 d1 3)) (*.f64 (*.f64 d1 d3) (*.f64 d1 d3))) (-.f64 (*.f64 d1 3) (*.f64 d1 d3)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 d1 3) 3) (pow.f64 (*.f64 d1 d3) 3)) (+.f64 (*.f64 (*.f64 d1 3) (*.f64 d1 3)) (-.f64 (*.f64 (*.f64 d1 d3) (*.f64 d1 d3)) (*.f64 (*.f64 d1 3) (*.f64 d1 d3)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 d1 (+.f64 3 d3)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 d1 (+.f64 3 d3))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 d1 (+.f64 3 d3))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 d1 (+.f64 3 d3)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 d1 (+.f64 3 d3)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (+.f64 3 d3)) d1))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 d1 (+.f64 3 d3)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 d1 (+.f64 3 d3)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 d1 (+.f64 3 d3))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 d1 (+.f64 3 d3))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 d1 (+.f64 3 d3))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 d1 (+.f64 3 d3))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 d1 3 (*.f64 d1 d3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 3 d1 (*.f64 d1 d3))))))

simplify95.0ms (2.5%)

Algorithm
egg-herbie
Rules
1384×associate-/r*
720×associate-*r/
680×associate-+r+
586×associate-+l+
510×associate-*l/
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
078582
1225558
2854556
33458546
Stop Event
node limit
Counts
36 → 35
Calls
Call 1
Inputs
(*.f64 3 d1)
(+.f64 (*.f64 3 d1) (*.f64 d1 d3))
(+.f64 (*.f64 3 d1) (*.f64 d1 d3))
(+.f64 (*.f64 3 d1) (*.f64 d1 d3))
(*.f64 d1 d3)
(+.f64 (*.f64 3 d1) (*.f64 d1 d3))
(+.f64 (*.f64 3 d1) (*.f64 d1 d3))
(+.f64 (*.f64 3 d1) (*.f64 d1 d3))
(*.f64 d1 d3)
(+.f64 (*.f64 3 d1) (*.f64 d1 d3))
(+.f64 (*.f64 3 d1) (*.f64 d1 d3))
(+.f64 (*.f64 3 d1) (*.f64 d1 d3))
(+.f64 (*.f64 d1 3) (*.f64 d1 d3))
(+.f64 (*.f64 d1 d3) (*.f64 d1 3))
(+.f64 (*.f64 (*.f64 d1 3) 1) (*.f64 (*.f64 d1 d3) 1))
(-.f64 (exp.f64 (log1p.f64 (*.f64 d1 (+.f64 3 d3)))) 1)
(/.f64 (*.f64 d1 (-.f64 9 (*.f64 d3 d3))) (-.f64 3 d3))
(/.f64 (*.f64 d1 (+.f64 27 (pow.f64 d3 3))) (+.f64 9 (*.f64 d3 (-.f64 d3 3))))
(/.f64 (*.f64 (-.f64 9 (*.f64 d3 d3)) d1) (-.f64 3 d3))
(/.f64 (*.f64 (+.f64 27 (pow.f64 d3 3)) d1) (+.f64 9 (*.f64 d3 (-.f64 d3 3))))
(/.f64 (-.f64 (*.f64 (*.f64 d1 3) (*.f64 d1 3)) (*.f64 (*.f64 d1 d3) (*.f64 d1 d3))) (-.f64 (*.f64 d1 3) (*.f64 d1 d3)))
(/.f64 (+.f64 (pow.f64 (*.f64 d1 3) 3) (pow.f64 (*.f64 d1 d3) 3)) (+.f64 (*.f64 (*.f64 d1 3) (*.f64 d1 3)) (-.f64 (*.f64 (*.f64 d1 d3) (*.f64 d1 d3)) (*.f64 (*.f64 d1 3) (*.f64 d1 d3)))))
(pow.f64 (*.f64 d1 (+.f64 3 d3)) 1)
(pow.f64 (sqrt.f64 (*.f64 d1 (+.f64 3 d3))) 2)
(pow.f64 (cbrt.f64 (*.f64 d1 (+.f64 3 d3))) 3)
(pow.f64 (pow.f64 (*.f64 d1 (+.f64 3 d3)) 3) 1/3)
(sqrt.f64 (pow.f64 (*.f64 d1 (+.f64 3 d3)) 2))
(log.f64 (pow.f64 (exp.f64 (+.f64 3 d3)) d1))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 d1 (+.f64 3 d3)))))
(cbrt.f64 (pow.f64 (*.f64 d1 (+.f64 3 d3)) 3))
(expm1.f64 (log1p.f64 (*.f64 d1 (+.f64 3 d3))))
(exp.f64 (log.f64 (*.f64 d1 (+.f64 3 d3))))
(exp.f64 (*.f64 (log.f64 (*.f64 d1 (+.f64 3 d3))) 1))
(log1p.f64 (expm1.f64 (*.f64 d1 (+.f64 3 d3))))
(fma.f64 d1 3 (*.f64 d1 d3))
(fma.f64 3 d1 (*.f64 d1 d3))
Outputs
(*.f64 3 d1)
(+.f64 (*.f64 3 d1) (*.f64 d1 d3))
(*.f64 d1 (+.f64 3 d3))
(+.f64 (*.f64 3 d1) (*.f64 d1 d3))
(*.f64 d1 (+.f64 3 d3))
(+.f64 (*.f64 3 d1) (*.f64 d1 d3))
(*.f64 d1 (+.f64 3 d3))
(*.f64 d1 d3)
(+.f64 (*.f64 3 d1) (*.f64 d1 d3))
(*.f64 d1 (+.f64 3 d3))
(+.f64 (*.f64 3 d1) (*.f64 d1 d3))
(*.f64 d1 (+.f64 3 d3))
(+.f64 (*.f64 3 d1) (*.f64 d1 d3))
(*.f64 d1 (+.f64 3 d3))
(*.f64 d1 d3)
(+.f64 (*.f64 3 d1) (*.f64 d1 d3))
(*.f64 d1 (+.f64 3 d3))
(+.f64 (*.f64 3 d1) (*.f64 d1 d3))
(*.f64 d1 (+.f64 3 d3))
(+.f64 (*.f64 3 d1) (*.f64 d1 d3))
(*.f64 d1 (+.f64 3 d3))
(+.f64 (*.f64 d1 3) (*.f64 d1 d3))
(*.f64 d1 (+.f64 3 d3))
(+.f64 (*.f64 d1 d3) (*.f64 d1 3))
(*.f64 d1 (+.f64 3 d3))
(+.f64 (*.f64 (*.f64 d1 3) 1) (*.f64 (*.f64 d1 d3) 1))
(*.f64 d1 (+.f64 3 d3))
(-.f64 (exp.f64 (log1p.f64 (*.f64 d1 (+.f64 3 d3)))) 1)
(*.f64 d1 (+.f64 3 d3))
(/.f64 (*.f64 d1 (-.f64 9 (*.f64 d3 d3))) (-.f64 3 d3))
(*.f64 d1 (+.f64 3 d3))
(/.f64 (*.f64 d1 (+.f64 27 (pow.f64 d3 3))) (+.f64 9 (*.f64 d3 (-.f64 d3 3))))
(/.f64 (+.f64 27 (pow.f64 d3 3)) (/.f64 (+.f64 9 (*.f64 d3 (+.f64 d3 -3))) d1))
(*.f64 (/.f64 d1 (fma.f64 d3 (+.f64 d3 -3) 9)) (+.f64 27 (pow.f64 d3 3)))
(*.f64 d1 (/.f64 (+.f64 27 (pow.f64 d3 3)) (fma.f64 d3 (+.f64 d3 -3) 9)))
(/.f64 (*.f64 (-.f64 9 (*.f64 d3 d3)) d1) (-.f64 3 d3))
(*.f64 d1 (+.f64 3 d3))
(/.f64 (*.f64 (+.f64 27 (pow.f64 d3 3)) d1) (+.f64 9 (*.f64 d3 (-.f64 d3 3))))
(/.f64 (+.f64 27 (pow.f64 d3 3)) (/.f64 (+.f64 9 (*.f64 d3 (+.f64 d3 -3))) d1))
(*.f64 (/.f64 d1 (fma.f64 d3 (+.f64 d3 -3) 9)) (+.f64 27 (pow.f64 d3 3)))
(*.f64 d1 (/.f64 (+.f64 27 (pow.f64 d3 3)) (fma.f64 d3 (+.f64 d3 -3) 9)))
(/.f64 (-.f64 (*.f64 (*.f64 d1 3) (*.f64 d1 3)) (*.f64 (*.f64 d1 d3) (*.f64 d1 d3))) (-.f64 (*.f64 d1 3) (*.f64 d1 d3)))
(*.f64 d1 (+.f64 3 d3))
(/.f64 (+.f64 (pow.f64 (*.f64 d1 3) 3) (pow.f64 (*.f64 d1 d3) 3)) (+.f64 (*.f64 (*.f64 d1 3) (*.f64 d1 3)) (-.f64 (*.f64 (*.f64 d1 d3) (*.f64 d1 d3)) (*.f64 (*.f64 d1 3) (*.f64 d1 d3)))))
(/.f64 (+.f64 (*.f64 (pow.f64 d1 3) 27) (pow.f64 (*.f64 d1 d3) 3)) (+.f64 (*.f64 (*.f64 d1 d1) 9) (*.f64 (*.f64 d1 d3) (-.f64 (*.f64 d1 d3) (*.f64 3 d1)))))
(/.f64 (*.f64 (pow.f64 d1 3) (+.f64 27 (pow.f64 d3 3))) (fma.f64 d1 (*.f64 9 d1) (*.f64 d1 (*.f64 d3 (*.f64 d1 (+.f64 d3 -3))))))
(/.f64 (*.f64 (+.f64 27 (pow.f64 d3 3)) (pow.f64 d1 3)) (*.f64 d1 (+.f64 (*.f64 d1 9) (*.f64 d3 (*.f64 d1 (+.f64 d3 -3))))))
(*.f64 (/.f64 (pow.f64 d1 3) (*.f64 d1 (*.f64 d1 (fma.f64 d3 (+.f64 d3 -3) 9)))) (+.f64 27 (pow.f64 d3 3)))
(pow.f64 (*.f64 d1 (+.f64 3 d3)) 1)
(*.f64 d1 (+.f64 3 d3))
(pow.f64 (sqrt.f64 (*.f64 d1 (+.f64 3 d3))) 2)
(*.f64 d1 (+.f64 3 d3))
(pow.f64 (cbrt.f64 (*.f64 d1 (+.f64 3 d3))) 3)
(*.f64 d1 (+.f64 3 d3))
(pow.f64 (pow.f64 (*.f64 d1 (+.f64 3 d3)) 3) 1/3)
(*.f64 d1 (+.f64 3 d3))
(sqrt.f64 (pow.f64 (*.f64 d1 (+.f64 3 d3)) 2))
(*.f64 d1 (+.f64 3 d3))
(log.f64 (pow.f64 (exp.f64 (+.f64 3 d3)) d1))
(*.f64 d1 (+.f64 3 d3))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 d1 (+.f64 3 d3)))))
(*.f64 d1 (+.f64 3 d3))
(cbrt.f64 (pow.f64 (*.f64 d1 (+.f64 3 d3)) 3))
(*.f64 d1 (+.f64 3 d3))
(expm1.f64 (log1p.f64 (*.f64 d1 (+.f64 3 d3))))
(*.f64 d1 (+.f64 3 d3))
(exp.f64 (log.f64 (*.f64 d1 (+.f64 3 d3))))
(*.f64 d1 (+.f64 3 d3))
(exp.f64 (*.f64 (log.f64 (*.f64 d1 (+.f64 3 d3))) 1))
(*.f64 d1 (+.f64 3 d3))
(log1p.f64 (expm1.f64 (*.f64 d1 (+.f64 3 d3))))
(*.f64 d1 (+.f64 3 d3))
(fma.f64 d1 3 (*.f64 d1 d3))
(*.f64 d1 (+.f64 3 d3))
(fma.f64 3 d1 (*.f64 d1 d3))
(*.f64 d1 (+.f64 3 d3))

localize5.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.01%
(*.f64 (+.f64 d2 3) d1)
Compiler

Compiled 14 to 9 computations (35.7% saved)

series1.0ms (0%)

Counts
1 → 20
Calls

6 calls:

TimeVariablePointExpression
0.0ms
d1
@0
(*.f64 (+.f64 d2 3) d1)
0.0ms
d1
@inf
(*.f64 (+.f64 d2 3) d1)
0.0ms
d1
@-inf
(*.f64 (+.f64 d2 3) d1)
0.0ms
d2
@0
(*.f64 (+.f64 d2 3) d1)
0.0ms
d2
@inf
(*.f64 (+.f64 d2 3) d1)

rewrite64.0ms (1.7%)

Algorithm
batch-egg-rewrite
Rules
1544×add-sqr-sqrt
1524×*-un-lft-identity
1426×add-cube-cbrt
1410×add-cbrt-cube
1396×add-exp-log
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0713
114913
2185713
Stop Event
node limit
Counts
1 → 20
Calls
Call 1
Inputs
(*.f64 (+.f64 d2 3) d1)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 d1 d2) (*.f64 d1 3))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 d1 3) (*.f64 d1 d2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 d2 d1) (*.f64 3 d1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 3 d1) (*.f64 d2 d1))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 (+.f64 d2 3) d1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 d1 (fma.f64 d2 d2 -9)) (+.f64 d2 -3))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 d1 (+.f64 27 (pow.f64 d2 3))) (fma.f64 d2 d2 (-.f64 9 (*.f64 d2 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (fma.f64 d2 d2 -9) d1) (+.f64 d2 -3))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 27 (pow.f64 d2 3)) d1) (fma.f64 d2 d2 (-.f64 9 (*.f64 d2 3))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (+.f64 d2 3) d1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (+.f64 d2 3) d1)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (+.f64 d2 3) d1)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (+.f64 d2 3) d1) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (+.f64 d2 3) d1) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 d1) (+.f64 d2 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (+.f64 d2 3) d1) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (+.f64 d2 3) d1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (+.f64 d2 3) d1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (+.f64 d2 3) d1)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (+.f64 d2 3) d1)))))))

simplify76.0ms (2%)

Algorithm
egg-herbie
Rules
948×*-commutative
890×fma-def
886×+-commutative
872×log-prod
762×associate-+r-
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
064594
1146594
2424586
32366586
44615586
57300586
Stop Event
node limit
Counts
40 → 31
Calls
Call 1
Inputs
(*.f64 3 d1)
(+.f64 (*.f64 3 d1) (*.f64 d2 d1))
(+.f64 (*.f64 3 d1) (*.f64 d2 d1))
(+.f64 (*.f64 3 d1) (*.f64 d2 d1))
(*.f64 d2 d1)
(+.f64 (*.f64 3 d1) (*.f64 d2 d1))
(+.f64 (*.f64 3 d1) (*.f64 d2 d1))
(+.f64 (*.f64 3 d1) (*.f64 d2 d1))
(*.f64 d2 d1)
(+.f64 (*.f64 3 d1) (*.f64 d2 d1))
(+.f64 (*.f64 3 d1) (*.f64 d2 d1))
(+.f64 (*.f64 3 d1) (*.f64 d2 d1))
(*.f64 d1 (+.f64 3 d2))
(*.f64 d1 (+.f64 3 d2))
(*.f64 d1 (+.f64 3 d2))
(*.f64 d1 (+.f64 3 d2))
(*.f64 d1 (+.f64 3 d2))
(*.f64 d1 (+.f64 3 d2))
(*.f64 d1 (+.f64 3 d2))
(*.f64 d1 (+.f64 3 d2))
(+.f64 (*.f64 d1 d2) (*.f64 d1 3))
(+.f64 (*.f64 d1 3) (*.f64 d1 d2))
(+.f64 (*.f64 d2 d1) (*.f64 3 d1))
(+.f64 (*.f64 3 d1) (*.f64 d2 d1))
(-.f64 (+.f64 1 (*.f64 (+.f64 d2 3) d1)) 1)
(/.f64 (*.f64 d1 (fma.f64 d2 d2 -9)) (+.f64 d2 -3))
(/.f64 (*.f64 d1 (+.f64 27 (pow.f64 d2 3))) (fma.f64 d2 d2 (-.f64 9 (*.f64 d2 3))))
(/.f64 (*.f64 (fma.f64 d2 d2 -9) d1) (+.f64 d2 -3))
(/.f64 (*.f64 (+.f64 27 (pow.f64 d2 3)) d1) (fma.f64 d2 d2 (-.f64 9 (*.f64 d2 3))))
(pow.f64 (*.f64 (+.f64 d2 3) d1) 1)
(pow.f64 (sqrt.f64 (*.f64 (+.f64 d2 3) d1)) 2)
(pow.f64 (cbrt.f64 (*.f64 (+.f64 d2 3) d1)) 3)
(pow.f64 (pow.f64 (*.f64 (+.f64 d2 3) d1) 3) 1/3)
(sqrt.f64 (pow.f64 (*.f64 (+.f64 d2 3) d1) 2))
(log.f64 (pow.f64 (exp.f64 d1) (+.f64 d2 3)))
(cbrt.f64 (pow.f64 (*.f64 (+.f64 d2 3) d1) 3))
(expm1.f64 (log1p.f64 (*.f64 (+.f64 d2 3) d1)))
(exp.f64 (log.f64 (*.f64 (+.f64 d2 3) d1)))
(exp.f64 (*.f64 (log.f64 (*.f64 (+.f64 d2 3) d1)) 1))
(log1p.f64 (expm1.f64 (*.f64 (+.f64 d2 3) d1)))
Outputs
(*.f64 3 d1)
(+.f64 (*.f64 3 d1) (*.f64 d2 d1))
(*.f64 d1 (+.f64 3 d2))
(+.f64 (*.f64 3 d1) (*.f64 d2 d1))
(*.f64 d1 (+.f64 3 d2))
(+.f64 (*.f64 3 d1) (*.f64 d2 d1))
(*.f64 d1 (+.f64 3 d2))
(*.f64 d2 d1)
(*.f64 d1 d2)
(+.f64 (*.f64 3 d1) (*.f64 d2 d1))
(*.f64 d1 (+.f64 3 d2))
(+.f64 (*.f64 3 d1) (*.f64 d2 d1))
(*.f64 d1 (+.f64 3 d2))
(+.f64 (*.f64 3 d1) (*.f64 d2 d1))
(*.f64 d1 (+.f64 3 d2))
(*.f64 d2 d1)
(*.f64 d1 d2)
(+.f64 (*.f64 3 d1) (*.f64 d2 d1))
(*.f64 d1 (+.f64 3 d2))
(+.f64 (*.f64 3 d1) (*.f64 d2 d1))
(*.f64 d1 (+.f64 3 d2))
(+.f64 (*.f64 3 d1) (*.f64 d2 d1))
(*.f64 d1 (+.f64 3 d2))
(*.f64 d1 (+.f64 3 d2))
(*.f64 d1 (+.f64 3 d2))
(*.f64 d1 (+.f64 3 d2))
(*.f64 d1 (+.f64 3 d2))
(*.f64 d1 (+.f64 3 d2))
(*.f64 d1 (+.f64 3 d2))
(*.f64 d1 (+.f64 3 d2))
(*.f64 d1 (+.f64 3 d2))
(+.f64 (*.f64 d1 d2) (*.f64 d1 3))
(*.f64 d1 (+.f64 3 d2))
(+.f64 (*.f64 d1 3) (*.f64 d1 d2))
(*.f64 d1 (+.f64 3 d2))
(+.f64 (*.f64 d2 d1) (*.f64 3 d1))
(*.f64 d1 (+.f64 3 d2))
(+.f64 (*.f64 3 d1) (*.f64 d2 d1))
(*.f64 d1 (+.f64 3 d2))
(-.f64 (+.f64 1 (*.f64 (+.f64 d2 3) d1)) 1)
(*.f64 d1 (+.f64 3 d2))
(/.f64 (*.f64 d1 (fma.f64 d2 d2 -9)) (+.f64 d2 -3))
(/.f64 d1 (/.f64 (+.f64 d2 -3) (fma.f64 d2 d2 -9)))
(*.f64 (/.f64 d1 (+.f64 d2 -3)) (fma.f64 d2 d2 -9))
(*.f64 d1 (/.f64 (fma.f64 d2 d2 -9) (+.f64 d2 -3)))
(/.f64 (*.f64 d1 (+.f64 27 (pow.f64 d2 3))) (fma.f64 d2 d2 (-.f64 9 (*.f64 d2 3))))
(/.f64 d1 (/.f64 (fma.f64 d2 d2 (-.f64 9 (*.f64 3 d2))) (+.f64 27 (pow.f64 d2 3))))
(*.f64 (/.f64 d1 (fma.f64 d2 d2 (+.f64 9 (*.f64 d2 -3)))) (+.f64 27 (pow.f64 d2 3)))
(*.f64 (+.f64 27 (pow.f64 d2 3)) (/.f64 d1 (fma.f64 d2 d2 (fma.f64 d2 -3 9))))
(*.f64 d1 (/.f64 (+.f64 27 (pow.f64 d2 3)) (fma.f64 d2 -3 (fma.f64 d2 d2 9))))
(/.f64 (*.f64 (fma.f64 d2 d2 -9) d1) (+.f64 d2 -3))
(/.f64 d1 (/.f64 (+.f64 d2 -3) (fma.f64 d2 d2 -9)))
(*.f64 (/.f64 d1 (+.f64 d2 -3)) (fma.f64 d2 d2 -9))
(*.f64 d1 (/.f64 (fma.f64 d2 d2 -9) (+.f64 d2 -3)))
(/.f64 (*.f64 (+.f64 27 (pow.f64 d2 3)) d1) (fma.f64 d2 d2 (-.f64 9 (*.f64 d2 3))))
(/.f64 d1 (/.f64 (fma.f64 d2 d2 (-.f64 9 (*.f64 3 d2))) (+.f64 27 (pow.f64 d2 3))))
(*.f64 (/.f64 d1 (fma.f64 d2 d2 (+.f64 9 (*.f64 d2 -3)))) (+.f64 27 (pow.f64 d2 3)))
(*.f64 (+.f64 27 (pow.f64 d2 3)) (/.f64 d1 (fma.f64 d2 d2 (fma.f64 d2 -3 9))))
(*.f64 d1 (/.f64 (+.f64 27 (pow.f64 d2 3)) (fma.f64 d2 -3 (fma.f64 d2 d2 9))))
(pow.f64 (*.f64 (+.f64 d2 3) d1) 1)
(*.f64 d1 (+.f64 3 d2))
(pow.f64 (sqrt.f64 (*.f64 (+.f64 d2 3) d1)) 2)
(*.f64 d1 (+.f64 3 d2))
(pow.f64 (cbrt.f64 (*.f64 (+.f64 d2 3) d1)) 3)
(*.f64 d1 (+.f64 3 d2))
(pow.f64 (pow.f64 (*.f64 (+.f64 d2 3) d1) 3) 1/3)
(*.f64 d1 (+.f64 3 d2))
(sqrt.f64 (pow.f64 (*.f64 (+.f64 d2 3) d1) 2))
(*.f64 d1 (+.f64 3 d2))
(log.f64 (pow.f64 (exp.f64 d1) (+.f64 d2 3)))
(*.f64 d1 (+.f64 3 d2))
(cbrt.f64 (pow.f64 (*.f64 (+.f64 d2 3) d1) 3))
(*.f64 d1 (+.f64 3 d2))
(expm1.f64 (log1p.f64 (*.f64 (+.f64 d2 3) d1)))
(*.f64 d1 (+.f64 3 d2))
(exp.f64 (log.f64 (*.f64 (+.f64 d2 3) d1)))
(*.f64 d1 (+.f64 3 d2))
(exp.f64 (*.f64 (log.f64 (*.f64 (+.f64 d2 3) d1)) 1))
(*.f64 d1 (+.f64 3 d2))
(log1p.f64 (expm1.f64 (*.f64 (+.f64 d2 3) d1)))
(*.f64 d1 (+.f64 3 d2))

eval42.0ms (1.1%)

Compiler

Compiled 2077 to 1271 computations (38.8% saved)

prune28.0ms (0.7%)

Pruning

8 alts after pruning (3 fresh and 5 done)

PrunedKeptTotal
New1392141
Fresh011
Picked011
Done145
Total1408148
Error
0%
Counts
148 → 8
Alt Table
Click to see full alt table
StatusErrorProgram
33.15%
(fma.f64 d1 3 (*.f64 d1 d3))
0.51%
(/.f64 d1 (/.f64 1 (+.f64 3 (+.f64 d2 d3))))
36.66%
(*.f64 (+.f64 d2 3) d1)
65.77%
(*.f64 d2 d1)
0.04%
(*.f64 d1 (+.f64 (+.f64 3 d2) d3))
33.13%
(*.f64 d1 (+.f64 3 d3))
60.69%
(*.f64 d1 d3)
69.47%
(*.f64 3 d1)
Compiler

Compiled 65 to 47 computations (27.7% saved)

localize3.0ms (0.1%)

Compiler

Compiled 8 to 6 computations (25% saved)

localize16.0ms (0.4%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.01%
(/.f64 1 (+.f64 3 (+.f64 d2 d3)))
0.54%
(/.f64 d1 (/.f64 1 (+.f64 3 (+.f64 d2 d3))))
Compiler

Compiled 32 to 17 computations (46.9% saved)

series4.0ms (0.1%)

Counts
2 → 60
Calls

15 calls:

TimeVariablePointExpression
0.0ms
d3
@0
(/.f64 1 (+.f64 3 (+.f64 d2 d3)))
0.0ms
d1
@0
(/.f64 d1 (/.f64 1 (+.f64 3 (+.f64 d2 d3))))
0.0ms
d2
@0
(/.f64 1 (+.f64 3 (+.f64 d2 d3)))
0.0ms
d3
@inf
(/.f64 1 (+.f64 3 (+.f64 d2 d3)))
0.0ms
d1
@inf
(/.f64 d1 (/.f64 1 (+.f64 3 (+.f64 d2 d3))))

rewrite115.0ms (3%)

Algorithm
batch-egg-rewrite
Rules
1238×distribute-rgt-in
1210×distribute-lft-in
1208×associate-/r*
848×associate-/l*
626×associate-/r/
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01144
124738
2343738
Stop Event
node limit
Counts
2 → 138
Calls
Call 1
Inputs
(/.f64 d1 (/.f64 1 (+.f64 3 (+.f64 d2 d3))))
(/.f64 1 (+.f64 3 (+.f64 d2 d3)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 d1 3) (*.f64 d1 (+.f64 d2 d3)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 d1 (+.f64 d2 d3)) (*.f64 d1 3))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 d1 (+.f64 3 d2)) (*.f64 d1 d3))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 d1 d3) (*.f64 d1 (+.f64 3 d2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 3 d1) (*.f64 (+.f64 d2 d3) d1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (+.f64 d2 d3) d1) (*.f64 3 d1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (+.f64 3 d2) d1) (*.f64 d3 d1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 d3 d1) (*.f64 (+.f64 3 d2) d1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 d1 d2) (*.f64 d1 (+.f64 3 d3)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 d1 (+.f64 3 d3)) (*.f64 d1 d2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 d1 (*.f64 (+.f64 3 d2) 1)) (*.f64 d1 d3))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1 (*.f64 d1 3)) (*.f64 1 (*.f64 d1 (+.f64 d2 d3))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1 (*.f64 d1 (+.f64 d2 d3))) (*.f64 1 (*.f64 d1 3)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1 (*.f64 d1 (+.f64 3 d2))) (*.f64 1 (*.f64 d1 d3)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1 (*.f64 3 d1)) (*.f64 1 (*.f64 (+.f64 d2 d3) d1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1 (*.f64 (+.f64 d2 d3) d1)) (*.f64 1 (*.f64 3 d1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1 (*.f64 (+.f64 3 d2) d1)) (*.f64 1 (*.f64 d3 d1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (/.f64 d1 -1) -3) (*.f64 (/.f64 d1 -1) (neg.f64 (+.f64 d2 d3))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (/.f64 d1 -1) (neg.f64 (+.f64 d2 d3))) (*.f64 (/.f64 d1 -1) -3))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (/.f64 d1 -1) (neg.f64 (+.f64 3 d2))) (*.f64 (/.f64 d1 -1) (neg.f64 d3)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 d2 d1) (*.f64 (+.f64 3 d3) d1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (+.f64 3 d3) d1) (*.f64 d2 d1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (+.f64 3 d2) 1) d1) (*.f64 d3 d1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 d1 3) 1) (*.f64 (*.f64 d1 (+.f64 d2 d3)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 d1 (+.f64 d2 d3)) 1) (*.f64 (*.f64 d1 3) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 d1 (+.f64 3 d2)) 1) (*.f64 (*.f64 d1 d3) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 3 d1) 1) (*.f64 (*.f64 (+.f64 d2 d3) d1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (+.f64 d2 d3) d1) 1) (*.f64 (*.f64 3 d1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (+.f64 3 d2) d1) 1) (*.f64 (*.f64 d3 d1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 -3 (/.f64 d1 -1)) (*.f64 (neg.f64 (+.f64 d2 d3)) (/.f64 d1 -1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (neg.f64 (+.f64 d2 d3)) (/.f64 d1 -1)) (*.f64 -3 (/.f64 d1 -1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (neg.f64 (+.f64 3 d2)) (/.f64 d1 -1)) (*.f64 (neg.f64 d3) (/.f64 d1 -1)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 d1 (+.f64 3 (+.f64 d2 d3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 d1 (neg.f64 (-.f64 -3 (+.f64 d2 d3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 3 (+.f64 d2 d3)) d1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))) (sqrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (+.f64 3 (+.f64 d2 d3))) (*.f64 d1 (sqrt.f64 (+.f64 3 (+.f64 d2 d3)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 d1) (*.f64 (sqrt.f64 d1) (+.f64 3 (+.f64 d2 d3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))) (pow.f64 (cbrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))) 2) (cbrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 d1) 2) (*.f64 (cbrt.f64 d1) (+.f64 3 (+.f64 d2 d3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (*.f64 d1 (-.f64 -3 (+.f64 d2 d3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 -3 (+.f64 d2 d3)) (neg.f64 d1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 d1) (-.f64 -3 (+.f64 d2 d3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 d1 (pow.f64 (cbrt.f64 (+.f64 3 (+.f64 d2 d3))) 2)) (cbrt.f64 (+.f64 3 (+.f64 d2 d3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 d1 (sqrt.f64 (+.f64 3 (+.f64 d2 d3)))) (sqrt.f64 (+.f64 3 (+.f64 d2 d3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cbrt.f64 (pow.f64 (+.f64 3 (+.f64 d2 d3)) -2))) (*.f64 d1 (cbrt.f64 (+.f64 3 (+.f64 d2 d3)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 d1 -1) (-.f64 -3 (+.f64 d2 d3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 d1) 1) (*.f64 (/.f64 (sqrt.f64 d1) 1) (+.f64 3 (+.f64 d2 d3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (sqrt.f64 d1) 1) (+.f64 3 (+.f64 d2 d3))) (sqrt.f64 d1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 d1) (cbrt.f64 (pow.f64 (+.f64 3 (+.f64 d2 d3)) -2))) (*.f64 (/.f64 (sqrt.f64 d1) 1) (cbrt.f64 (+.f64 3 (+.f64 d2 d3)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 d1) 2) 1) (*.f64 (/.f64 (cbrt.f64 d1) 1) (+.f64 3 (+.f64 d2 d3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 d1) 2) (pow.f64 (+.f64 3 (+.f64 d2 d3)) -1/2)) (/.f64 (cbrt.f64 d1) (pow.f64 (+.f64 3 (+.f64 d2 d3)) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 d1) 2) (cbrt.f64 (pow.f64 (+.f64 3 (+.f64 d2 d3)) -2))) (cbrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 d1 (sqrt.f64 (+.f64 3 (+.f64 d2 d3)))) 1) (sqrt.f64 (+.f64 3 (+.f64 d2 d3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 d1 (cbrt.f64 (pow.f64 (+.f64 3 (+.f64 d2 d3)) -2))) 1) (cbrt.f64 (+.f64 3 (+.f64 d2 d3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 d1) 2) (/.f64 1 (+.f64 3 (+.f64 d2 d3)))) (cbrt.f64 d1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 d1 (/.f64 1 (pow.f64 (cbrt.f64 (+.f64 3 (+.f64 d2 d3))) 2))) (cbrt.f64 (+.f64 3 (+.f64 d2 d3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 1 (*.f64 (pow.f64 (cbrt.f64 d1) 2) (+.f64 3 (+.f64 d2 d3))))) (cbrt.f64 d1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 d1 (sqrt.f64 (+.f64 3 (+.f64 d2 d3)))) (sqrt.f64 -1)) (sqrt.f64 (-.f64 -3 (+.f64 d2 d3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 d1 (cbrt.f64 (pow.f64 (+.f64 3 (+.f64 d2 d3)) -2))) -1) (cbrt.f64 (-.f64 -3 (+.f64 d2 d3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 d1 (-.f64 9 (pow.f64 (+.f64 d2 d3) 2))) (-.f64 9 (pow.f64 (+.f64 d2 d3) 2))) (+.f64 3 (+.f64 d2 d3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 d1 (-.f64 9 (pow.f64 (+.f64 d2 d3) 2))) (-.f64 27 (pow.f64 (+.f64 d2 d3) 3))) (+.f64 9 (*.f64 (+.f64 d2 d3) (+.f64 3 (+.f64 d2 d3)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 d1 (+.f64 27 (pow.f64 (+.f64 d2 d3) 3))) (-.f64 81 (*.f64 (*.f64 (+.f64 d2 d3) (+.f64 d2 (-.f64 d3 3))) (*.f64 (+.f64 d2 d3) (+.f64 d2 (-.f64 d3 3)))))) (-.f64 9 (*.f64 (+.f64 d2 d3) (+.f64 d2 (-.f64 d3 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 d1 (+.f64 27 (pow.f64 (+.f64 d2 d3) 3))) (+.f64 729 (pow.f64 (*.f64 (+.f64 d2 d3) (+.f64 d2 (-.f64 d3 3))) 3))) (+.f64 81 (-.f64 (*.f64 (*.f64 (+.f64 d2 d3) (+.f64 d2 (-.f64 d3 3))) (*.f64 (+.f64 d2 d3) (+.f64 d2 (-.f64 d3 3)))) (*.f64 9 (*.f64 (+.f64 d2 d3) (+.f64 d2 (-.f64 d3 3)))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 1 d1) (+.f64 3 (+.f64 d2 d3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 d1 (-.f64 -3 (+.f64 d2 d3))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 d1) (+.f64 3 (+.f64 d2 d3))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 d1 3) (pow.f64 (/.f64 1 (+.f64 3 (+.f64 d2 d3))) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (/.f64 1 (-.f64 9 (pow.f64 (+.f64 d2 d3) 2))) 3) (*.f64 (/.f64 1 (-.f64 9 (pow.f64 (+.f64 d2 d3) 2))) (neg.f64 (+.f64 d2 d3))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (/.f64 1 (-.f64 9 (pow.f64 (+.f64 d2 d3) 2))) 3) (*.f64 (/.f64 1 (-.f64 9 (pow.f64 (+.f64 d2 d3) 2))) (*.f64 -1 (+.f64 d2 d3))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (/.f64 1 (-.f64 9 (pow.f64 (+.f64 d2 d3) 2))) 3) (*.f64 (/.f64 1 (-.f64 9 (pow.f64 (+.f64 d2 d3) 2))) (*.f64 (neg.f64 (sqrt.f64 (+.f64 d2 d3))) (sqrt.f64 (+.f64 d2 d3)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (/.f64 1 (-.f64 9 (pow.f64 (+.f64 d2 d3) 2))) 3) (*.f64 (/.f64 1 (-.f64 9 (pow.f64 (+.f64 d2 d3) 2))) (*.f64 (neg.f64 (pow.f64 (cbrt.f64 (+.f64 d2 d3)) 2)) (cbrt.f64 (+.f64 d2 d3)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (/.f64 1 (+.f64 27 (pow.f64 (+.f64 d2 d3) 3))) 9) (*.f64 (/.f64 1 (+.f64 27 (pow.f64 (+.f64 d2 d3) 3))) (*.f64 (+.f64 d2 d3) (+.f64 d2 (-.f64 d3 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (/.f64 1 (+.f64 27 (pow.f64 (+.f64 d2 d3) 3))) (*.f64 (+.f64 d2 d3) (+.f64 d2 (-.f64 d3 3)))) (*.f64 (/.f64 1 (+.f64 27 (pow.f64 (+.f64 d2 d3) 3))) 9))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 3 (/.f64 1 (-.f64 9 (pow.f64 (+.f64 d2 d3) 2)))) (*.f64 (neg.f64 (+.f64 d2 d3)) (/.f64 1 (-.f64 9 (pow.f64 (+.f64 d2 d3) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 3 (/.f64 1 (-.f64 9 (pow.f64 (+.f64 d2 d3) 2)))) (*.f64 (*.f64 -1 (+.f64 d2 d3)) (/.f64 1 (-.f64 9 (pow.f64 (+.f64 d2 d3) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 3 (/.f64 1 (-.f64 9 (pow.f64 (+.f64 d2 d3) 2)))) (*.f64 (*.f64 (neg.f64 (sqrt.f64 (+.f64 d2 d3))) (sqrt.f64 (+.f64 d2 d3))) (/.f64 1 (-.f64 9 (pow.f64 (+.f64 d2 d3) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 3 (/.f64 1 (-.f64 9 (pow.f64 (+.f64 d2 d3) 2)))) (*.f64 (*.f64 (neg.f64 (pow.f64 (cbrt.f64 (+.f64 d2 d3)) 2)) (cbrt.f64 (+.f64 d2 d3))) (/.f64 1 (-.f64 9 (pow.f64 (+.f64 d2 d3) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 9 (/.f64 1 (+.f64 27 (pow.f64 (+.f64 d2 d3) 3)))) (*.f64 (*.f64 (+.f64 d2 d3) (+.f64 d2 (-.f64 d3 3))) (/.f64 1 (+.f64 27 (pow.f64 (+.f64 d2 d3) 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (+.f64 d2 d3) (+.f64 d2 (-.f64 d3 3))) (/.f64 1 (+.f64 27 (pow.f64 (+.f64 d2 d3) 3)))) (*.f64 9 (/.f64 1 (+.f64 27 (pow.f64 (+.f64 d2 d3) 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 1 (+.f64 3 (+.f64 d2 d3))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 1 (+.f64 3 (+.f64 d2 d3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (+.f64 3 (+.f64 d2 d3))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (+.f64 3 (+.f64 d2 d3)) -1/2) (pow.f64 (+.f64 3 (+.f64 d2 d3)) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -1 (cbrt.f64 (-.f64 -3 (+.f64 d2 d3)))) (cbrt.f64 (pow.f64 (+.f64 3 (+.f64 d2 d3)) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (+.f64 3 (+.f64 d2 d3)) -2)) (/.f64 -1 (cbrt.f64 (-.f64 -3 (+.f64 d2 d3)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (/.f64 -1 (+.f64 3 (+.f64 d2 d3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -1 (+.f64 3 (+.f64 d2 d3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 (+.f64 3 (+.f64 d2 d3))) 2)) (/.f64 -1 (cbrt.f64 (-.f64 -3 (+.f64 d2 d3)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (-.f64 9 (pow.f64 (+.f64 d2 d3) 2))) (-.f64 3 (+.f64 d2 d3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (+.f64 27 (pow.f64 (+.f64 d2 d3) 3))) (+.f64 9 (*.f64 (+.f64 d2 d3) (+.f64 d2 (-.f64 d3 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (+.f64 3 (+.f64 d2 d3)) -2)) 1) (/.f64 -1 (cbrt.f64 (-.f64 -3 (+.f64 d2 d3)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (+.f64 3 (+.f64 d2 d3))) -1) (pow.f64 (sqrt.f64 (+.f64 3 (+.f64 d2 d3))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (+.f64 3 (+.f64 d2 d3))) 2) -1) (pow.f64 (cbrt.f64 (+.f64 3 (+.f64 d2 d3))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (neg.f64 (-.f64 9 (pow.f64 (+.f64 d2 d3) 2)))) (neg.f64 (-.f64 3 (+.f64 d2 d3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (neg.f64 (+.f64 27 (pow.f64 (+.f64 d2 d3) 3)))) (neg.f64 (+.f64 9 (*.f64 (+.f64 d2 d3) (+.f64 d2 (-.f64 d3 3))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -1 (neg.f64 (-.f64 9 (pow.f64 (+.f64 d2 d3) 2)))) (-.f64 3 (+.f64 d2 d3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -1 (neg.f64 (+.f64 27 (pow.f64 (+.f64 d2 d3) 3)))) (+.f64 9 (*.f64 (+.f64 d2 d3) (+.f64 d2 (-.f64 d3 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 3 (+.f64 d2 d3)) (-.f64 81 (*.f64 (pow.f64 (+.f64 d2 d3) 2) (pow.f64 (+.f64 d2 d3) 2)))) (+.f64 (pow.f64 (+.f64 d2 d3) 2) 9))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 3 (+.f64 d2 d3)) (-.f64 729 (pow.f64 (pow.f64 (+.f64 d2 d3) 2) 3))) (+.f64 81 (+.f64 (*.f64 (pow.f64 (+.f64 d2 d3) 2) (pow.f64 (+.f64 d2 d3) 2)) (*.f64 9 (pow.f64 (+.f64 d2 d3) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 9 (*.f64 (+.f64 d2 d3) (+.f64 d2 (-.f64 d3 3)))) (-.f64 729 (*.f64 (pow.f64 (+.f64 d2 d3) 3) (pow.f64 (+.f64 d2 d3) 3)))) (-.f64 27 (pow.f64 (+.f64 d2 d3) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 9 (*.f64 (+.f64 d2 d3) (+.f64 d2 (-.f64 d3 3)))) (+.f64 19683 (pow.f64 (pow.f64 (+.f64 d2 d3) 3) 3))) (+.f64 729 (-.f64 (*.f64 (pow.f64 (+.f64 d2 d3) 3) (pow.f64 (+.f64 d2 d3) 3)) (*.f64 27 (pow.f64 (+.f64 d2 d3) 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (-.f64 (pow.f64 (+.f64 d2 d3) 2) 9)) (+.f64 d2 (-.f64 d3 3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (-.f64 (*.f64 (+.f64 3 d2) (+.f64 3 d2)) (*.f64 d3 d3))) (-.f64 (+.f64 3 d2) d3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (+.f64 (pow.f64 d3 3) (pow.f64 (+.f64 3 d2) 3))) (+.f64 (*.f64 (+.f64 3 d2) (+.f64 3 d2)) (-.f64 (*.f64 d3 d3) (*.f64 (+.f64 3 d2) d3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (+.f64 3 (+.f64 d2 d3)) -1/2) (sqrt.f64 (-.f64 9 (pow.f64 (+.f64 d2 d3) 2)))) (sqrt.f64 (-.f64 3 (+.f64 d2 d3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (+.f64 3 (+.f64 d2 d3)) -1/2) (sqrt.f64 (+.f64 27 (pow.f64 (+.f64 d2 d3) 3)))) (sqrt.f64 (+.f64 9 (*.f64 (+.f64 d2 d3) (+.f64 d2 (-.f64 d3 3))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (pow.f64 (cbrt.f64 (+.f64 3 (+.f64 d2 d3))) 2)) (cbrt.f64 (-.f64 9 (pow.f64 (+.f64 d2 d3) 2)))) (cbrt.f64 (-.f64 3 (+.f64 d2 d3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (pow.f64 (cbrt.f64 (+.f64 3 (+.f64 d2 d3))) 2)) (cbrt.f64 (+.f64 27 (pow.f64 (+.f64 d2 d3) 3)))) (cbrt.f64 (+.f64 9 (*.f64 (+.f64 d2 d3) (+.f64 d2 (-.f64 d3 3))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 3 (+.f64 d2 d3)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1 (+.f64 3 (+.f64 d2 d3))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (+.f64 3 (+.f64 d2 d3)) -1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 -1 (cbrt.f64 (-.f64 -3 (+.f64 d2 d3)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 1 (+.f64 3 (+.f64 d2 d3))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (+.f64 3 (+.f64 d2 d3)) -2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 1 (+.f64 3 (+.f64 d2 d3)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 1 (+.f64 3 (+.f64 d2 d3))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 1 (+.f64 3 (+.f64 d2 d3))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 1 (+.f64 3 (+.f64 d2 d3)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (neg.f64 (log.f64 (+.f64 3 (+.f64 d2 d3)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (+.f64 3 (+.f64 d2 d3))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (neg.f64 (log.f64 (+.f64 3 (+.f64 d2 d3)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 1 (+.f64 3 (+.f64 d2 d3)))))))))

simplify113.0ms (3%)

Algorithm
egg-herbie
Rules
818×+-commutative
692×associate-+l+
688×associate-+r+
562×associate-/l/
560×*-commutative
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
04486494
114036160
250746160
Stop Event
node limit
Counts
198 → 246
Calls
Call 1
Inputs
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(*.f64 d1 (+.f64 d2 (+.f64 3 d3)))
(*.f64 d1 (+.f64 d2 (+.f64 3 d3)))
(*.f64 d1 (+.f64 d2 (+.f64 3 d3)))
(*.f64 d1 (+.f64 d2 (+.f64 3 d3)))
(*.f64 d1 (+.f64 3 d3))
(+.f64 (*.f64 d1 (+.f64 3 d3)) (*.f64 d2 d1))
(+.f64 (*.f64 d1 (+.f64 3 d3)) (*.f64 d2 d1))
(+.f64 (*.f64 d1 (+.f64 3 d3)) (*.f64 d2 d1))
(*.f64 d2 d1)
(+.f64 (*.f64 d1 (+.f64 3 d3)) (*.f64 d2 d1))
(+.f64 (*.f64 d1 (+.f64 3 d3)) (*.f64 d2 d1))
(+.f64 (*.f64 d1 (+.f64 3 d3)) (*.f64 d2 d1))
(*.f64 d2 d1)
(+.f64 (*.f64 d1 (+.f64 3 d3)) (*.f64 d2 d1))
(+.f64 (*.f64 d1 (+.f64 3 d3)) (*.f64 d2 d1))
(+.f64 (*.f64 d1 (+.f64 3 d3)) (*.f64 d2 d1))
(*.f64 d1 (+.f64 3 d2))
(+.f64 (*.f64 d1 d3) (*.f64 d1 (+.f64 3 d2)))
(+.f64 (*.f64 d1 d3) (*.f64 d1 (+.f64 3 d2)))
(+.f64 (*.f64 d1 d3) (*.f64 d1 (+.f64 3 d2)))
(*.f64 d1 d3)
(+.f64 (*.f64 d1 d3) (*.f64 d1 (+.f64 3 d2)))
(+.f64 (*.f64 d1 d3) (*.f64 d1 (+.f64 3 d2)))
(+.f64 (*.f64 d1 d3) (*.f64 d1 (+.f64 3 d2)))
(*.f64 d1 d3)
(+.f64 (*.f64 d1 d3) (*.f64 d1 (+.f64 3 d2)))
(+.f64 (*.f64 d1 d3) (*.f64 d1 (+.f64 3 d2)))
(+.f64 (*.f64 d1 d3) (*.f64 d1 (+.f64 3 d2)))
(/.f64 1 (+.f64 3 d3))
(+.f64 (/.f64 1 (+.f64 3 d3)) (*.f64 -1 (/.f64 d2 (pow.f64 (+.f64 3 d3) 2))))
(+.f64 (/.f64 (pow.f64 d2 2) (pow.f64 (+.f64 3 d3) 3)) (+.f64 (/.f64 1 (+.f64 3 d3)) (*.f64 -1 (/.f64 d2 (pow.f64 (+.f64 3 d3) 2)))))
(+.f64 (/.f64 (pow.f64 d2 2) (pow.f64 (+.f64 3 d3) 3)) (+.f64 (*.f64 -1 (/.f64 (pow.f64 d2 3) (pow.f64 (+.f64 3 d3) 4))) (+.f64 (/.f64 1 (+.f64 3 d3)) (*.f64 -1 (/.f64 d2 (pow.f64 (+.f64 3 d3) 2))))))
(/.f64 1 d2)
(+.f64 (/.f64 1 d2) (*.f64 -1 (/.f64 (+.f64 3 d3) (pow.f64 d2 2))))
(+.f64 (/.f64 1 d2) (+.f64 (/.f64 (pow.f64 (+.f64 3 d3) 2) (pow.f64 d2 3)) (*.f64 -1 (/.f64 (+.f64 3 d3) (pow.f64 d2 2)))))
(+.f64 (/.f64 1 d2) (+.f64 (/.f64 (pow.f64 (+.f64 3 d3) 2) (pow.f64 d2 3)) (+.f64 (*.f64 -1 (/.f64 (+.f64 3 d3) (pow.f64 d2 2))) (*.f64 -1 (/.f64 (pow.f64 (+.f64 3 d3) 3) (pow.f64 d2 4))))))
(/.f64 1 d2)
(+.f64 (/.f64 1 d2) (*.f64 -1 (/.f64 (+.f64 3 d3) (pow.f64 d2 2))))
(+.f64 (/.f64 1 d2) (+.f64 (/.f64 (pow.f64 (+.f64 3 d3) 2) (pow.f64 d2 3)) (*.f64 -1 (/.f64 (+.f64 3 d3) (pow.f64 d2 2)))))
(+.f64 (/.f64 1 d2) (+.f64 (/.f64 (pow.f64 (+.f64 3 d3) 2) (pow.f64 d2 3)) (+.f64 (*.f64 -1 (/.f64 (+.f64 3 d3) (pow.f64 d2 2))) (*.f64 -1 (/.f64 (pow.f64 (+.f64 3 d3) 3) (pow.f64 d2 4))))))
(/.f64 1 (+.f64 3 d2))
(+.f64 (*.f64 -1 (/.f64 d3 (*.f64 (+.f64 d2 3) (+.f64 3 d2)))) (/.f64 1 (+.f64 3 d2)))
(+.f64 (/.f64 (pow.f64 d3 2) (*.f64 (+.f64 d2 3) (pow.f64 (+.f64 3 d2) 2))) (+.f64 (*.f64 -1 (/.f64 d3 (*.f64 (+.f64 d2 3) (+.f64 3 d2)))) (/.f64 1 (+.f64 3 d2))))
(+.f64 (/.f64 (pow.f64 d3 2) (*.f64 (+.f64 d2 3) (pow.f64 (+.f64 3 d2) 2))) (+.f64 (*.f64 -1 (/.f64 d3 (*.f64 (+.f64 d2 3) (+.f64 3 d2)))) (+.f64 (/.f64 1 (+.f64 3 d2)) (*.f64 -1 (/.f64 (pow.f64 d3 3) (*.f64 (pow.f64 (+.f64 d2 3) 2) (pow.f64 (+.f64 3 d2) 2)))))))
(/.f64 1 d3)
(+.f64 (*.f64 -1 (/.f64 (+.f64 3 d2) (pow.f64 d3 2))) (/.f64 1 d3))
(+.f64 (*.f64 -1 (/.f64 (+.f64 3 d2) (pow.f64 d3 2))) (+.f64 (/.f64 (pow.f64 (+.f64 3 d2) 2) (pow.f64 d3 3)) (/.f64 1 d3)))
(+.f64 (*.f64 -1 (/.f64 (+.f64 3 d2) (pow.f64 d3 2))) (+.f64 (/.f64 (pow.f64 (+.f64 3 d2) 2) (pow.f64 d3 3)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 (+.f64 d2 3) 2) (+.f64 3 d2)) (pow.f64 d3 4))) (/.f64 1 d3))))
(/.f64 1 d3)
(+.f64 (*.f64 -1 (/.f64 (+.f64 3 d2) (pow.f64 d3 2))) (/.f64 1 d3))
(+.f64 (*.f64 -1 (/.f64 (+.f64 3 d2) (pow.f64 d3 2))) (+.f64 (/.f64 (pow.f64 (+.f64 3 d2) 2) (pow.f64 d3 3)) (/.f64 1 d3)))
(+.f64 (*.f64 -1 (/.f64 (+.f64 3 d2) (pow.f64 d3 2))) (+.f64 (/.f64 (pow.f64 (+.f64 3 d2) 2) (pow.f64 d3 3)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 (+.f64 d2 3) 2) (+.f64 3 d2)) (pow.f64 d3 4))) (/.f64 1 d3))))
(+.f64 (*.f64 d1 3) (*.f64 d1 (+.f64 d2 d3)))
(+.f64 (*.f64 d1 (+.f64 d2 d3)) (*.f64 d1 3))
(+.f64 (*.f64 d1 (+.f64 3 d2)) (*.f64 d1 d3))
(+.f64 (*.f64 d1 d3) (*.f64 d1 (+.f64 3 d2)))
(+.f64 (*.f64 3 d1) (*.f64 (+.f64 d2 d3) d1))
(+.f64 (*.f64 (+.f64 d2 d3) d1) (*.f64 3 d1))
(+.f64 (*.f64 (+.f64 3 d2) d1) (*.f64 d3 d1))
(+.f64 (*.f64 d3 d1) (*.f64 (+.f64 3 d2) d1))
(+.f64 (*.f64 d1 d2) (*.f64 d1 (+.f64 3 d3)))
(+.f64 (*.f64 d1 (+.f64 3 d3)) (*.f64 d1 d2))
(+.f64 (*.f64 d1 (*.f64 (+.f64 3 d2) 1)) (*.f64 d1 d3))
(+.f64 (*.f64 1 (*.f64 d1 3)) (*.f64 1 (*.f64 d1 (+.f64 d2 d3))))
(+.f64 (*.f64 1 (*.f64 d1 (+.f64 d2 d3))) (*.f64 1 (*.f64 d1 3)))
(+.f64 (*.f64 1 (*.f64 d1 (+.f64 3 d2))) (*.f64 1 (*.f64 d1 d3)))
(+.f64 (*.f64 1 (*.f64 3 d1)) (*.f64 1 (*.f64 (+.f64 d2 d3) d1)))
(+.f64 (*.f64 1 (*.f64 (+.f64 d2 d3) d1)) (*.f64 1 (*.f64 3 d1)))
(+.f64 (*.f64 1 (*.f64 (+.f64 3 d2) d1)) (*.f64 1 (*.f64 d3 d1)))
(+.f64 (*.f64 (/.f64 d1 -1) -3) (*.f64 (/.f64 d1 -1) (neg.f64 (+.f64 d2 d3))))
(+.f64 (*.f64 (/.f64 d1 -1) (neg.f64 (+.f64 d2 d3))) (*.f64 (/.f64 d1 -1) -3))
(+.f64 (*.f64 (/.f64 d1 -1) (neg.f64 (+.f64 3 d2))) (*.f64 (/.f64 d1 -1) (neg.f64 d3)))
(+.f64 (*.f64 d2 d1) (*.f64 (+.f64 3 d3) d1))
(+.f64 (*.f64 (+.f64 3 d3) d1) (*.f64 d2 d1))
(+.f64 (*.f64 (*.f64 (+.f64 3 d2) 1) d1) (*.f64 d3 d1))
(+.f64 (*.f64 (*.f64 d1 3) 1) (*.f64 (*.f64 d1 (+.f64 d2 d3)) 1))
(+.f64 (*.f64 (*.f64 d1 (+.f64 d2 d3)) 1) (*.f64 (*.f64 d1 3) 1))
(+.f64 (*.f64 (*.f64 d1 (+.f64 3 d2)) 1) (*.f64 (*.f64 d1 d3) 1))
(+.f64 (*.f64 (*.f64 3 d1) 1) (*.f64 (*.f64 (+.f64 d2 d3) d1) 1))
(+.f64 (*.f64 (*.f64 (+.f64 d2 d3) d1) 1) (*.f64 (*.f64 3 d1) 1))
(+.f64 (*.f64 (*.f64 (+.f64 3 d2) d1) 1) (*.f64 (*.f64 d3 d1) 1))
(+.f64 (*.f64 -3 (/.f64 d1 -1)) (*.f64 (neg.f64 (+.f64 d2 d3)) (/.f64 d1 -1)))
(+.f64 (*.f64 (neg.f64 (+.f64 d2 d3)) (/.f64 d1 -1)) (*.f64 -3 (/.f64 d1 -1)))
(+.f64 (*.f64 (neg.f64 (+.f64 3 d2)) (/.f64 d1 -1)) (*.f64 (neg.f64 d3) (/.f64 d1 -1)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))))) 1)
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(*.f64 d1 (neg.f64 (-.f64 -3 (+.f64 d2 d3))))
(*.f64 1 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))))
(*.f64 (+.f64 3 (+.f64 d2 d3)) d1)
(*.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))) 1)
(*.f64 (sqrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))) (sqrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))))
(*.f64 (sqrt.f64 (+.f64 3 (+.f64 d2 d3))) (*.f64 d1 (sqrt.f64 (+.f64 3 (+.f64 d2 d3)))))
(*.f64 (sqrt.f64 d1) (*.f64 (sqrt.f64 d1) (+.f64 3 (+.f64 d2 d3))))
(*.f64 (cbrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))) (pow.f64 (cbrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))) 2))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))) 2) (cbrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))))
(*.f64 (pow.f64 (cbrt.f64 d1) 2) (*.f64 (cbrt.f64 d1) (+.f64 3 (+.f64 d2 d3))))
(*.f64 -1 (*.f64 d1 (-.f64 -3 (+.f64 d2 d3))))
(*.f64 (-.f64 -3 (+.f64 d2 d3)) (neg.f64 d1))
(*.f64 (neg.f64 d1) (-.f64 -3 (+.f64 d2 d3)))
(*.f64 (*.f64 d1 (pow.f64 (cbrt.f64 (+.f64 3 (+.f64 d2 d3))) 2)) (cbrt.f64 (+.f64 3 (+.f64 d2 d3))))
(*.f64 (*.f64 d1 (sqrt.f64 (+.f64 3 (+.f64 d2 d3)))) (sqrt.f64 (+.f64 3 (+.f64 d2 d3))))
(*.f64 (/.f64 1 (cbrt.f64 (pow.f64 (+.f64 3 (+.f64 d2 d3)) -2))) (*.f64 d1 (cbrt.f64 (+.f64 3 (+.f64 d2 d3)))))
(*.f64 (/.f64 d1 -1) (-.f64 -3 (+.f64 d2 d3)))
(*.f64 (/.f64 (sqrt.f64 d1) 1) (*.f64 (/.f64 (sqrt.f64 d1) 1) (+.f64 3 (+.f64 d2 d3))))
(*.f64 (*.f64 (/.f64 (sqrt.f64 d1) 1) (+.f64 3 (+.f64 d2 d3))) (sqrt.f64 d1))
(*.f64 (/.f64 (sqrt.f64 d1) (cbrt.f64 (pow.f64 (+.f64 3 (+.f64 d2 d3)) -2))) (*.f64 (/.f64 (sqrt.f64 d1) 1) (cbrt.f64 (+.f64 3 (+.f64 d2 d3)))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 d1) 2) 1) (*.f64 (/.f64 (cbrt.f64 d1) 1) (+.f64 3 (+.f64 d2 d3))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 d1) 2) (pow.f64 (+.f64 3 (+.f64 d2 d3)) -1/2)) (/.f64 (cbrt.f64 d1) (pow.f64 (+.f64 3 (+.f64 d2 d3)) -1/2)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 d1) 2) (cbrt.f64 (pow.f64 (+.f64 3 (+.f64 d2 d3)) -2))) (cbrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))))
(*.f64 (/.f64 (*.f64 d1 (sqrt.f64 (+.f64 3 (+.f64 d2 d3)))) 1) (sqrt.f64 (+.f64 3 (+.f64 d2 d3))))
(*.f64 (/.f64 (/.f64 d1 (cbrt.f64 (pow.f64 (+.f64 3 (+.f64 d2 d3)) -2))) 1) (cbrt.f64 (+.f64 3 (+.f64 d2 d3))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 d1) 2) (/.f64 1 (+.f64 3 (+.f64 d2 d3)))) (cbrt.f64 d1))
(*.f64 (/.f64 d1 (/.f64 1 (pow.f64 (cbrt.f64 (+.f64 3 (+.f64 d2 d3))) 2))) (cbrt.f64 (+.f64 3 (+.f64 d2 d3))))
(*.f64 (/.f64 1 (/.f64 1 (*.f64 (pow.f64 (cbrt.f64 d1) 2) (+.f64 3 (+.f64 d2 d3))))) (cbrt.f64 d1))
(*.f64 (/.f64 (*.f64 d1 (sqrt.f64 (+.f64 3 (+.f64 d2 d3)))) (sqrt.f64 -1)) (sqrt.f64 (-.f64 -3 (+.f64 d2 d3))))
(*.f64 (/.f64 (/.f64 d1 (cbrt.f64 (pow.f64 (+.f64 3 (+.f64 d2 d3)) -2))) -1) (cbrt.f64 (-.f64 -3 (+.f64 d2 d3))))
(*.f64 (/.f64 (*.f64 d1 (-.f64 9 (pow.f64 (+.f64 d2 d3) 2))) (-.f64 9 (pow.f64 (+.f64 d2 d3) 2))) (+.f64 3 (+.f64 d2 d3)))
(*.f64 (/.f64 (*.f64 d1 (-.f64 9 (pow.f64 (+.f64 d2 d3) 2))) (-.f64 27 (pow.f64 (+.f64 d2 d3) 3))) (+.f64 9 (*.f64 (+.f64 d2 d3) (+.f64 3 (+.f64 d2 d3)))))
(*.f64 (/.f64 (*.f64 d1 (+.f64 27 (pow.f64 (+.f64 d2 d3) 3))) (-.f64 81 (*.f64 (*.f64 (+.f64 d2 d3) (+.f64 d2 (-.f64 d3 3))) (*.f64 (+.f64 d2 d3) (+.f64 d2 (-.f64 d3 3)))))) (-.f64 9 (*.f64 (+.f64 d2 d3) (+.f64 d2 (-.f64 d3 3)))))
(*.f64 (/.f64 (*.f64 d1 (+.f64 27 (pow.f64 (+.f64 d2 d3) 3))) (+.f64 729 (pow.f64 (*.f64 (+.f64 d2 d3) (+.f64 d2 (-.f64 d3 3))) 3))) (+.f64 81 (-.f64 (*.f64 (*.f64 (+.f64 d2 d3) (+.f64 d2 (-.f64 d3 3))) (*.f64 (+.f64 d2 d3) (+.f64 d2 (-.f64 d3 3)))) (*.f64 9 (*.f64 (+.f64 d2 d3) (+.f64 d2 (-.f64 d3 3)))))))
(pow.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))) 1)
(pow.f64 (sqrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))) 2)
(pow.f64 (cbrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))) 3)
(pow.f64 (pow.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))) 3) 1/3)
(pow.f64 (/.f64 (/.f64 1 d1) (+.f64 3 (+.f64 d2 d3))) -1)
(neg.f64 (*.f64 d1 (-.f64 -3 (+.f64 d2 d3))))
(sqrt.f64 (pow.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))) 2))
(log.f64 (pow.f64 (exp.f64 d1) (+.f64 3 (+.f64 d2 d3))))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))))))
(cbrt.f64 (pow.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))) 3))
(cbrt.f64 (/.f64 (pow.f64 d1 3) (pow.f64 (/.f64 1 (+.f64 3 (+.f64 d2 d3))) 3)))
(expm1.f64 (log1p.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))))
(exp.f64 (log.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))))
(exp.f64 (*.f64 (log.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))) 1))
(log1p.f64 (expm1.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))))
(+.f64 (*.f64 (/.f64 1 (-.f64 9 (pow.f64 (+.f64 d2 d3) 2))) 3) (*.f64 (/.f64 1 (-.f64 9 (pow.f64 (+.f64 d2 d3) 2))) (neg.f64 (+.f64 d2 d3))))
(+.f64 (*.f64 (/.f64 1 (-.f64 9 (pow.f64 (+.f64 d2 d3) 2))) 3) (*.f64 (/.f64 1 (-.f64 9 (pow.f64 (+.f64 d2 d3) 2))) (*.f64 -1 (+.f64 d2 d3))))
(+.f64 (*.f64 (/.f64 1 (-.f64 9 (pow.f64 (+.f64 d2 d3) 2))) 3) (*.f64 (/.f64 1 (-.f64 9 (pow.f64 (+.f64 d2 d3) 2))) (*.f64 (neg.f64 (sqrt.f64 (+.f64 d2 d3))) (sqrt.f64 (+.f64 d2 d3)))))
(+.f64 (*.f64 (/.f64 1 (-.f64 9 (pow.f64 (+.f64 d2 d3) 2))) 3) (*.f64 (/.f64 1 (-.f64 9 (pow.f64 (+.f64 d2 d3) 2))) (*.f64 (neg.f64 (pow.f64 (cbrt.f64 (+.f64 d2 d3)) 2)) (cbrt.f64 (+.f64 d2 d3)))))
(+.f64 (*.f64 (/.f64 1 (+.f64 27 (pow.f64 (+.f64 d2 d3) 3))) 9) (*.f64 (/.f64 1 (+.f64 27 (pow.f64 (+.f64 d2 d3) 3))) (*.f64 (+.f64 d2 d3) (+.f64 d2 (-.f64 d3 3)))))
(+.f64 (*.f64 (/.f64 1 (+.f64 27 (pow.f64 (+.f64 d2 d3) 3))) (*.f64 (+.f64 d2 d3) (+.f64 d2 (-.f64 d3 3)))) (*.f64 (/.f64 1 (+.f64 27 (pow.f64 (+.f64 d2 d3) 3))) 9))
(+.f64 (*.f64 3 (/.f64 1 (-.f64 9 (pow.f64 (+.f64 d2 d3) 2)))) (*.f64 (neg.f64 (+.f64 d2 d3)) (/.f64 1 (-.f64 9 (pow.f64 (+.f64 d2 d3) 2)))))
(+.f64 (*.f64 3 (/.f64 1 (-.f64 9 (pow.f64 (+.f64 d2 d3) 2)))) (*.f64 (*.f64 -1 (+.f64 d2 d3)) (/.f64 1 (-.f64 9 (pow.f64 (+.f64 d2 d3) 2)))))
(+.f64 (*.f64 3 (/.f64 1 (-.f64 9 (pow.f64 (+.f64 d2 d3) 2)))) (*.f64 (*.f64 (neg.f64 (sqrt.f64 (+.f64 d2 d3))) (sqrt.f64 (+.f64 d2 d3))) (/.f64 1 (-.f64 9 (pow.f64 (+.f64 d2 d3) 2)))))
(+.f64 (*.f64 3 (/.f64 1 (-.f64 9 (pow.f64 (+.f64 d2 d3) 2)))) (*.f64 (*.f64 (neg.f64 (pow.f64 (cbrt.f64 (+.f64 d2 d3)) 2)) (cbrt.f64 (+.f64 d2 d3))) (/.f64 1 (-.f64 9 (pow.f64 (+.f64 d2 d3) 2)))))
(+.f64 (*.f64 9 (/.f64 1 (+.f64 27 (pow.f64 (+.f64 d2 d3) 3)))) (*.f64 (*.f64 (+.f64 d2 d3) (+.f64 d2 (-.f64 d3 3))) (/.f64 1 (+.f64 27 (pow.f64 (+.f64 d2 d3) 3)))))
(+.f64 (*.f64 (*.f64 (+.f64 d2 d3) (+.f64 d2 (-.f64 d3 3))) (/.f64 1 (+.f64 27 (pow.f64 (+.f64 d2 d3) 3)))) (*.f64 9 (/.f64 1 (+.f64 27 (pow.f64 (+.f64 d2 d3) 3)))))
(-.f64 (exp.f64 (log1p.f64 (/.f64 1 (+.f64 3 (+.f64 d2 d3))))) 1)
(*.f64 1 (/.f64 1 (+.f64 3 (+.f64 d2 d3))))
(*.f64 (/.f64 1 (+.f64 3 (+.f64 d2 d3))) 1)
(*.f64 (pow.f64 (+.f64 3 (+.f64 d2 d3)) -1/2) (pow.f64 (+.f64 3 (+.f64 d2 d3)) -1/2))
(*.f64 (/.f64 -1 (cbrt.f64 (-.f64 -3 (+.f64 d2 d3)))) (cbrt.f64 (pow.f64 (+.f64 3 (+.f64 d2 d3)) -2)))
(*.f64 (cbrt.f64 (pow.f64 (+.f64 3 (+.f64 d2 d3)) -2)) (/.f64 -1 (cbrt.f64 (-.f64 -3 (+.f64 d2 d3)))))
(*.f64 -1 (/.f64 -1 (+.f64 3 (+.f64 d2 d3))))
(*.f64 (/.f64 -1 (+.f64 3 (+.f64 d2 d3))) -1)
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (+.f64 3 (+.f64 d2 d3))) 2)) (/.f64 -1 (cbrt.f64 (-.f64 -3 (+.f64 d2 d3)))))
(*.f64 (/.f64 1 (-.f64 9 (pow.f64 (+.f64 d2 d3) 2))) (-.f64 3 (+.f64 d2 d3)))
(*.f64 (/.f64 1 (+.f64 27 (pow.f64 (+.f64 d2 d3) 3))) (+.f64 9 (*.f64 (+.f64 d2 d3) (+.f64 d2 (-.f64 d3 3)))))
(*.f64 (/.f64 (cbrt.f64 (pow.f64 (+.f64 3 (+.f64 d2 d3)) -2)) 1) (/.f64 -1 (cbrt.f64 (-.f64 -3 (+.f64 d2 d3)))))
(*.f64 (pow.f64 (sqrt.f64 (+.f64 3 (+.f64 d2 d3))) -1) (pow.f64 (sqrt.f64 (+.f64 3 (+.f64 d2 d3))) -1))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (+.f64 3 (+.f64 d2 d3))) 2) -1) (pow.f64 (cbrt.f64 (+.f64 3 (+.f64 d2 d3))) -1))
(*.f64 (/.f64 1 (neg.f64 (-.f64 9 (pow.f64 (+.f64 d2 d3) 2)))) (neg.f64 (-.f64 3 (+.f64 d2 d3))))
(*.f64 (/.f64 1 (neg.f64 (+.f64 27 (pow.f64 (+.f64 d2 d3) 3)))) (neg.f64 (+.f64 9 (*.f64 (+.f64 d2 d3) (+.f64 d2 (-.f64 d3 3))))))
(*.f64 (/.f64 -1 (neg.f64 (-.f64 9 (pow.f64 (+.f64 d2 d3) 2)))) (-.f64 3 (+.f64 d2 d3)))
(*.f64 (/.f64 -1 (neg.f64 (+.f64 27 (pow.f64 (+.f64 d2 d3) 3)))) (+.f64 9 (*.f64 (+.f64 d2 d3) (+.f64 d2 (-.f64 d3 3)))))
(*.f64 (/.f64 (-.f64 3 (+.f64 d2 d3)) (-.f64 81 (*.f64 (pow.f64 (+.f64 d2 d3) 2) (pow.f64 (+.f64 d2 d3) 2)))) (+.f64 (pow.f64 (+.f64 d2 d3) 2) 9))
(*.f64 (/.f64 (-.f64 3 (+.f64 d2 d3)) (-.f64 729 (pow.f64 (pow.f64 (+.f64 d2 d3) 2) 3))) (+.f64 81 (+.f64 (*.f64 (pow.f64 (+.f64 d2 d3) 2) (pow.f64 (+.f64 d2 d3) 2)) (*.f64 9 (pow.f64 (+.f64 d2 d3) 2)))))
(*.f64 (/.f64 (+.f64 9 (*.f64 (+.f64 d2 d3) (+.f64 d2 (-.f64 d3 3)))) (-.f64 729 (*.f64 (pow.f64 (+.f64 d2 d3) 3) (pow.f64 (+.f64 d2 d3) 3)))) (-.f64 27 (pow.f64 (+.f64 d2 d3) 3)))
(*.f64 (/.f64 (+.f64 9 (*.f64 (+.f64 d2 d3) (+.f64 d2 (-.f64 d3 3)))) (+.f64 19683 (pow.f64 (pow.f64 (+.f64 d2 d3) 3) 3))) (+.f64 729 (-.f64 (*.f64 (pow.f64 (+.f64 d2 d3) 3) (pow.f64 (+.f64 d2 d3) 3)) (*.f64 27 (pow.f64 (+.f64 d2 d3) 3)))))
(*.f64 (/.f64 1 (-.f64 (pow.f64 (+.f64 d2 d3) 2) 9)) (+.f64 d2 (-.f64 d3 3)))
(*.f64 (/.f64 1 (-.f64 (*.f64 (+.f64 3 d2) (+.f64 3 d2)) (*.f64 d3 d3))) (-.f64 (+.f64 3 d2) d3))
(*.f64 (/.f64 1 (+.f64 (pow.f64 d3 3) (pow.f64 (+.f64 3 d2) 3))) (+.f64 (*.f64 (+.f64 3 d2) (+.f64 3 d2)) (-.f64 (*.f64 d3 d3) (*.f64 (+.f64 3 d2) d3))))
(*.f64 (/.f64 (pow.f64 (+.f64 3 (+.f64 d2 d3)) -1/2) (sqrt.f64 (-.f64 9 (pow.f64 (+.f64 d2 d3) 2)))) (sqrt.f64 (-.f64 3 (+.f64 d2 d3))))
(*.f64 (/.f64 (pow.f64 (+.f64 3 (+.f64 d2 d3)) -1/2) (sqrt.f64 (+.f64 27 (pow.f64 (+.f64 d2 d3) 3)))) (sqrt.f64 (+.f64 9 (*.f64 (+.f64 d2 d3) (+.f64 d2 (-.f64 d3 3))))))
(*.f64 (/.f64 (/.f64 1 (pow.f64 (cbrt.f64 (+.f64 3 (+.f64 d2 d3))) 2)) (cbrt.f64 (-.f64 9 (pow.f64 (+.f64 d2 d3) 2)))) (cbrt.f64 (-.f64 3 (+.f64 d2 d3))))
(*.f64 (/.f64 (/.f64 1 (pow.f64 (cbrt.f64 (+.f64 3 (+.f64 d2 d3))) 2)) (cbrt.f64 (+.f64 27 (pow.f64 (+.f64 d2 d3) 3)))) (cbrt.f64 (+.f64 9 (*.f64 (+.f64 d2 d3) (+.f64 d2 (-.f64 d3 3))))))
(pow.f64 (+.f64 3 (+.f64 d2 d3)) -1)
(pow.f64 (/.f64 1 (+.f64 3 (+.f64 d2 d3))) 1)
(pow.f64 (pow.f64 (+.f64 3 (+.f64 d2 d3)) -1/2) 2)
(pow.f64 (/.f64 -1 (cbrt.f64 (-.f64 -3 (+.f64 d2 d3)))) 3)
(pow.f64 (pow.f64 (/.f64 1 (+.f64 3 (+.f64 d2 d3))) 3) 1/3)
(sqrt.f64 (pow.f64 (+.f64 3 (+.f64 d2 d3)) -2))
(log.f64 (exp.f64 (/.f64 1 (+.f64 3 (+.f64 d2 d3)))))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 1 (+.f64 3 (+.f64 d2 d3))))))
(cbrt.f64 (pow.f64 (/.f64 1 (+.f64 3 (+.f64 d2 d3))) 3))
(expm1.f64 (log1p.f64 (/.f64 1 (+.f64 3 (+.f64 d2 d3)))))
(exp.f64 (neg.f64 (log.f64 (+.f64 3 (+.f64 d2 d3)))))
(exp.f64 (*.f64 (log.f64 (+.f64 3 (+.f64 d2 d3))) -1))
(exp.f64 (*.f64 (neg.f64 (log.f64 (+.f64 3 (+.f64 d2 d3)))) 1))
(log1p.f64 (expm1.f64 (/.f64 1 (+.f64 3 (+.f64 d2 d3)))))
Outputs
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(*.f64 d1 (+.f64 d2 (+.f64 3 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(*.f64 d1 (+.f64 d2 (+.f64 3 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(*.f64 d1 (+.f64 d2 (+.f64 3 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(*.f64 d1 (+.f64 d2 (+.f64 3 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(*.f64 d1 (+.f64 3 d3))
(+.f64 (*.f64 d1 (+.f64 3 d3)) (*.f64 d2 d1))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(+.f64 (*.f64 d1 (+.f64 3 d3)) (*.f64 d2 d1))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(+.f64 (*.f64 d1 (+.f64 3 d3)) (*.f64 d2 d1))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(*.f64 d2 d1)
(*.f64 d1 d2)
(+.f64 (*.f64 d1 (+.f64 3 d3)) (*.f64 d2 d1))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(+.f64 (*.f64 d1 (+.f64 3 d3)) (*.f64 d2 d1))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(+.f64 (*.f64 d1 (+.f64 3 d3)) (*.f64 d2 d1))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(*.f64 d2 d1)
(*.f64 d1 d2)
(+.f64 (*.f64 d1 (+.f64 3 d3)) (*.f64 d2 d1))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(+.f64 (*.f64 d1 (+.f64 3 d3)) (*.f64 d2 d1))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(+.f64 (*.f64 d1 (+.f64 3 d3)) (*.f64 d2 d1))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(*.f64 d1 (+.f64 3 d2))
(+.f64 (*.f64 d1 d3) (*.f64 d1 (+.f64 3 d2)))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(+.f64 (*.f64 d1 d3) (*.f64 d1 (+.f64 3 d2)))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(+.f64 (*.f64 d1 d3) (*.f64 d1 (+.f64 3 d2)))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(*.f64 d1 d3)
(+.f64 (*.f64 d1 d3) (*.f64 d1 (+.f64 3 d2)))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(+.f64 (*.f64 d1 d3) (*.f64 d1 (+.f64 3 d2)))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(+.f64 (*.f64 d1 d3) (*.f64 d1 (+.f64 3 d2)))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(*.f64 d1 d3)
(+.f64 (*.f64 d1 d3) (*.f64 d1 (+.f64 3 d2)))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(+.f64 (*.f64 d1 d3) (*.f64 d1 (+.f64 3 d2)))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(+.f64 (*.f64 d1 d3) (*.f64 d1 (+.f64 3 d2)))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(/.f64 1 (+.f64 3 d3))
(+.f64 (/.f64 1 (+.f64 3 d3)) (*.f64 -1 (/.f64 d2 (pow.f64 (+.f64 3 d3) 2))))
(+.f64 (/.f64 1 (+.f64 3 d3)) (neg.f64 (/.f64 d2 (pow.f64 (+.f64 3 d3) 2))))
(-.f64 (/.f64 1 (+.f64 3 d3)) (/.f64 d2 (pow.f64 (+.f64 3 d3) 2)))
(+.f64 (/.f64 (pow.f64 d2 2) (pow.f64 (+.f64 3 d3) 3)) (+.f64 (/.f64 1 (+.f64 3 d3)) (*.f64 -1 (/.f64 d2 (pow.f64 (+.f64 3 d3) 2)))))
(+.f64 (+.f64 (/.f64 1 (+.f64 3 d3)) (neg.f64 (/.f64 d2 (pow.f64 (+.f64 3 d3) 2)))) (/.f64 (*.f64 d2 d2) (pow.f64 (+.f64 3 d3) 3)))
(+.f64 (-.f64 (/.f64 1 (+.f64 3 d3)) (/.f64 d2 (pow.f64 (+.f64 3 d3) 2))) (/.f64 (*.f64 d2 d2) (pow.f64 (+.f64 3 d3) 3)))
(+.f64 (/.f64 1 (+.f64 3 d3)) (-.f64 (*.f64 (/.f64 d2 (pow.f64 (+.f64 3 d3) 3)) d2) (/.f64 d2 (pow.f64 (+.f64 3 d3) 2))))
(+.f64 (/.f64 (pow.f64 d2 2) (pow.f64 (+.f64 3 d3) 3)) (+.f64 (*.f64 -1 (/.f64 (pow.f64 d2 3) (pow.f64 (+.f64 3 d3) 4))) (+.f64 (/.f64 1 (+.f64 3 d3)) (*.f64 -1 (/.f64 d2 (pow.f64 (+.f64 3 d3) 2))))))
(+.f64 (/.f64 (*.f64 d2 d2) (pow.f64 (+.f64 3 d3) 3)) (fma.f64 -1 (/.f64 (pow.f64 d2 3) (pow.f64 (+.f64 3 d3) 4)) (+.f64 (/.f64 1 (+.f64 3 d3)) (neg.f64 (/.f64 d2 (pow.f64 (+.f64 3 d3) 2))))))
(+.f64 (-.f64 (/.f64 1 (+.f64 3 d3)) (/.f64 d2 (pow.f64 (+.f64 3 d3) 2))) (-.f64 (/.f64 (*.f64 d2 d2) (pow.f64 (+.f64 3 d3) 3)) (/.f64 (pow.f64 d2 3) (pow.f64 (+.f64 3 d3) 4))))
(+.f64 (-.f64 (/.f64 1 (+.f64 3 d3)) (/.f64 d2 (pow.f64 (+.f64 3 d3) 2))) (-.f64 (*.f64 (/.f64 d2 (pow.f64 (+.f64 3 d3) 3)) d2) (/.f64 (pow.f64 d2 3) (pow.f64 (+.f64 3 d3) 4))))
(/.f64 1 d2)
(+.f64 (/.f64 1 d2) (*.f64 -1 (/.f64 (+.f64 3 d3) (pow.f64 d2 2))))
(+.f64 (/.f64 1 d2) (neg.f64 (/.f64 (+.f64 3 d3) (*.f64 d2 d2))))
(-.f64 (/.f64 1 d2) (/.f64 (+.f64 3 d3) (*.f64 d2 d2)))
(+.f64 (/.f64 1 d2) (/.f64 (-.f64 -3 d3) (*.f64 d2 d2)))
(+.f64 (/.f64 1 d2) (+.f64 (/.f64 (pow.f64 (+.f64 3 d3) 2) (pow.f64 d2 3)) (*.f64 -1 (/.f64 (+.f64 3 d3) (pow.f64 d2 2)))))
(+.f64 (+.f64 (/.f64 1 d2) (/.f64 (pow.f64 (+.f64 3 d3) 2) (pow.f64 d2 3))) (neg.f64 (/.f64 (+.f64 3 d3) (*.f64 d2 d2))))
(+.f64 (/.f64 1 d2) (-.f64 (/.f64 (pow.f64 (+.f64 3 d3) 2) (pow.f64 d2 3)) (/.f64 (+.f64 3 d3) (*.f64 d2 d2))))
(+.f64 (/.f64 (-.f64 -3 d3) (*.f64 d2 d2)) (+.f64 (/.f64 1 d2) (/.f64 (pow.f64 (+.f64 3 d3) 2) (pow.f64 d2 3))))
(+.f64 (/.f64 1 d2) (+.f64 (/.f64 (pow.f64 (+.f64 3 d3) 2) (pow.f64 d2 3)) (+.f64 (*.f64 -1 (/.f64 (+.f64 3 d3) (pow.f64 d2 2))) (*.f64 -1 (/.f64 (pow.f64 (+.f64 3 d3) 3) (pow.f64 d2 4))))))
(+.f64 (+.f64 (/.f64 1 d2) (/.f64 (pow.f64 (+.f64 3 d3) 2) (pow.f64 d2 3))) (*.f64 -1 (+.f64 (/.f64 (+.f64 3 d3) (*.f64 d2 d2)) (/.f64 (pow.f64 (+.f64 3 d3) 3) (pow.f64 d2 4)))))
(+.f64 (/.f64 1 d2) (-.f64 (-.f64 (/.f64 (pow.f64 (+.f64 3 d3) 2) (pow.f64 d2 3)) (/.f64 (+.f64 3 d3) (*.f64 d2 d2))) (/.f64 (pow.f64 (+.f64 3 d3) 3) (pow.f64 d2 4))))
(+.f64 (/.f64 (pow.f64 (+.f64 3 d3) 2) (pow.f64 d2 3)) (-.f64 (+.f64 (/.f64 1 d2) (/.f64 (-.f64 -3 d3) (*.f64 d2 d2))) (/.f64 (pow.f64 (+.f64 3 d3) 3) (pow.f64 d2 4))))
(/.f64 1 d2)
(+.f64 (/.f64 1 d2) (*.f64 -1 (/.f64 (+.f64 3 d3) (pow.f64 d2 2))))
(+.f64 (/.f64 1 d2) (neg.f64 (/.f64 (+.f64 3 d3) (*.f64 d2 d2))))
(-.f64 (/.f64 1 d2) (/.f64 (+.f64 3 d3) (*.f64 d2 d2)))
(+.f64 (/.f64 1 d2) (/.f64 (-.f64 -3 d3) (*.f64 d2 d2)))
(+.f64 (/.f64 1 d2) (+.f64 (/.f64 (pow.f64 (+.f64 3 d3) 2) (pow.f64 d2 3)) (*.f64 -1 (/.f64 (+.f64 3 d3) (pow.f64 d2 2)))))
(+.f64 (+.f64 (/.f64 1 d2) (/.f64 (pow.f64 (+.f64 3 d3) 2) (pow.f64 d2 3))) (neg.f64 (/.f64 (+.f64 3 d3) (*.f64 d2 d2))))
(+.f64 (/.f64 1 d2) (-.f64 (/.f64 (pow.f64 (+.f64 3 d3) 2) (pow.f64 d2 3)) (/.f64 (+.f64 3 d3) (*.f64 d2 d2))))
(+.f64 (/.f64 (-.f64 -3 d3) (*.f64 d2 d2)) (+.f64 (/.f64 1 d2) (/.f64 (pow.f64 (+.f64 3 d3) 2) (pow.f64 d2 3))))
(+.f64 (/.f64 1 d2) (+.f64 (/.f64 (pow.f64 (+.f64 3 d3) 2) (pow.f64 d2 3)) (+.f64 (*.f64 -1 (/.f64 (+.f64 3 d3) (pow.f64 d2 2))) (*.f64 -1 (/.f64 (pow.f64 (+.f64 3 d3) 3) (pow.f64 d2 4))))))
(+.f64 (+.f64 (/.f64 1 d2) (/.f64 (pow.f64 (+.f64 3 d3) 2) (pow.f64 d2 3))) (*.f64 -1 (+.f64 (/.f64 (+.f64 3 d3) (*.f64 d2 d2)) (/.f64 (pow.f64 (+.f64 3 d3) 3) (pow.f64 d2 4)))))
(+.f64 (/.f64 1 d2) (-.f64 (-.f64 (/.f64 (pow.f64 (+.f64 3 d3) 2) (pow.f64 d2 3)) (/.f64 (+.f64 3 d3) (*.f64 d2 d2))) (/.f64 (pow.f64 (+.f64 3 d3) 3) (pow.f64 d2 4))))
(+.f64 (/.f64 (pow.f64 (+.f64 3 d3) 2) (pow.f64 d2 3)) (-.f64 (+.f64 (/.f64 1 d2) (/.f64 (-.f64 -3 d3) (*.f64 d2 d2))) (/.f64 (pow.f64 (+.f64 3 d3) 3) (pow.f64 d2 4))))
(/.f64 1 (+.f64 3 d2))
(+.f64 (*.f64 -1 (/.f64 d3 (*.f64 (+.f64 d2 3) (+.f64 3 d2)))) (/.f64 1 (+.f64 3 d2)))
(fma.f64 -1 (/.f64 d3 (pow.f64 (+.f64 3 d2) 2)) (/.f64 1 (+.f64 3 d2)))
(-.f64 (/.f64 1 (+.f64 3 d2)) (/.f64 d3 (pow.f64 (+.f64 3 d2) 2)))
(+.f64 (/.f64 (pow.f64 d3 2) (*.f64 (+.f64 d2 3) (pow.f64 (+.f64 3 d2) 2))) (+.f64 (*.f64 -1 (/.f64 d3 (*.f64 (+.f64 d2 3) (+.f64 3 d2)))) (/.f64 1 (+.f64 3 d2))))
(+.f64 (fma.f64 -1 (/.f64 d3 (pow.f64 (+.f64 3 d2) 2)) (/.f64 1 (+.f64 3 d2))) (/.f64 (*.f64 d3 d3) (pow.f64 (+.f64 3 d2) 3)))
(+.f64 (/.f64 1 (+.f64 3 d2)) (-.f64 (/.f64 d3 (/.f64 (pow.f64 (+.f64 3 d2) 3) d3)) (/.f64 d3 (pow.f64 (+.f64 3 d2) 2))))
(+.f64 (/.f64 (pow.f64 d3 2) (*.f64 (+.f64 d2 3) (pow.f64 (+.f64 3 d2) 2))) (+.f64 (*.f64 -1 (/.f64 d3 (*.f64 (+.f64 d2 3) (+.f64 3 d2)))) (+.f64 (/.f64 1 (+.f64 3 d2)) (*.f64 -1 (/.f64 (pow.f64 d3 3) (*.f64 (pow.f64 (+.f64 d2 3) 2) (pow.f64 (+.f64 3 d2) 2)))))))
(+.f64 (/.f64 (*.f64 d3 d3) (pow.f64 (+.f64 3 d2) 3)) (+.f64 (fma.f64 -1 (/.f64 d3 (pow.f64 (+.f64 3 d2) 2)) (/.f64 1 (+.f64 3 d2))) (neg.f64 (/.f64 (/.f64 (pow.f64 d3 3) (pow.f64 (+.f64 3 d2) 2)) (pow.f64 (+.f64 3 d2) 2)))))
(+.f64 (/.f64 d3 (/.f64 (pow.f64 (+.f64 3 d2) 3) d3)) (-.f64 (-.f64 (/.f64 1 (+.f64 3 d2)) (/.f64 (pow.f64 d3 3) (pow.f64 (+.f64 3 d2) 4))) (/.f64 d3 (pow.f64 (+.f64 3 d2) 2))))
(+.f64 (-.f64 (/.f64 1 (+.f64 3 d2)) (/.f64 (pow.f64 d3 3) (pow.f64 (+.f64 3 d2) 4))) (-.f64 (/.f64 d3 (/.f64 (pow.f64 (+.f64 3 d2) 3) d3)) (/.f64 d3 (pow.f64 (+.f64 3 d2) 2))))
(/.f64 1 d3)
(+.f64 (*.f64 -1 (/.f64 (+.f64 3 d2) (pow.f64 d3 2))) (/.f64 1 d3))
(fma.f64 -1 (/.f64 (+.f64 3 d2) (*.f64 d3 d3)) (/.f64 1 d3))
(+.f64 (/.f64 1 d3) (/.f64 (/.f64 (-.f64 -3 d2) d3) d3))
(+.f64 (/.f64 1 d3) (/.f64 (-.f64 -3 d2) (*.f64 d3 d3)))
(+.f64 (*.f64 -1 (/.f64 (+.f64 3 d2) (pow.f64 d3 2))) (+.f64 (/.f64 (pow.f64 (+.f64 3 d2) 2) (pow.f64 d3 3)) (/.f64 1 d3)))
(fma.f64 -1 (/.f64 (+.f64 3 d2) (*.f64 d3 d3)) (+.f64 (/.f64 1 d3) (/.f64 (pow.f64 (+.f64 3 d2) 2) (pow.f64 d3 3))))
(+.f64 (/.f64 (/.f64 (-.f64 -3 d2) d3) d3) (+.f64 (/.f64 1 d3) (/.f64 (pow.f64 (+.f64 3 d2) 2) (pow.f64 d3 3))))
(+.f64 (/.f64 1 d3) (-.f64 (/.f64 (pow.f64 (+.f64 3 d2) 2) (pow.f64 d3 3)) (/.f64 (+.f64 3 d2) (*.f64 d3 d3))))
(+.f64 (*.f64 -1 (/.f64 (+.f64 3 d2) (pow.f64 d3 2))) (+.f64 (/.f64 (pow.f64 (+.f64 3 d2) 2) (pow.f64 d3 3)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 (+.f64 d2 3) 2) (+.f64 3 d2)) (pow.f64 d3 4))) (/.f64 1 d3))))
(fma.f64 -1 (/.f64 (+.f64 3 d2) (*.f64 d3 d3)) (+.f64 (/.f64 (pow.f64 (+.f64 3 d2) 2) (pow.f64 d3 3)) (fma.f64 -1 (/.f64 (pow.f64 (+.f64 3 d2) 3) (pow.f64 d3 4)) (/.f64 1 d3))))
(+.f64 (/.f64 (/.f64 (-.f64 -3 d2) d3) d3) (+.f64 (/.f64 1 d3) (-.f64 (/.f64 (pow.f64 (+.f64 3 d2) 2) (pow.f64 d3 3)) (/.f64 (pow.f64 (+.f64 3 d2) 3) (pow.f64 d3 4)))))
(+.f64 (/.f64 1 d3) (+.f64 (/.f64 (-.f64 -3 d2) (*.f64 d3 d3)) (-.f64 (/.f64 (pow.f64 (+.f64 3 d2) 2) (pow.f64 d3 3)) (/.f64 (pow.f64 (+.f64 3 d2) 3) (pow.f64 d3 4)))))
(/.f64 1 d3)
(+.f64 (*.f64 -1 (/.f64 (+.f64 3 d2) (pow.f64 d3 2))) (/.f64 1 d3))
(fma.f64 -1 (/.f64 (+.f64 3 d2) (*.f64 d3 d3)) (/.f64 1 d3))
(+.f64 (/.f64 1 d3) (/.f64 (/.f64 (-.f64 -3 d2) d3) d3))
(+.f64 (/.f64 1 d3) (/.f64 (-.f64 -3 d2) (*.f64 d3 d3)))
(+.f64 (*.f64 -1 (/.f64 (+.f64 3 d2) (pow.f64 d3 2))) (+.f64 (/.f64 (pow.f64 (+.f64 3 d2) 2) (pow.f64 d3 3)) (/.f64 1 d3)))
(fma.f64 -1 (/.f64 (+.f64 3 d2) (*.f64 d3 d3)) (+.f64 (/.f64 1 d3) (/.f64 (pow.f64 (+.f64 3 d2) 2) (pow.f64 d3 3))))
(+.f64 (/.f64 (/.f64 (-.f64 -3 d2) d3) d3) (+.f64 (/.f64 1 d3) (/.f64 (pow.f64 (+.f64 3 d2) 2) (pow.f64 d3 3))))
(+.f64 (/.f64 1 d3) (-.f64 (/.f64 (pow.f64 (+.f64 3 d2) 2) (pow.f64 d3 3)) (/.f64 (+.f64 3 d2) (*.f64 d3 d3))))
(+.f64 (*.f64 -1 (/.f64 (+.f64 3 d2) (pow.f64 d3 2))) (+.f64 (/.f64 (pow.f64 (+.f64 3 d2) 2) (pow.f64 d3 3)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 (+.f64 d2 3) 2) (+.f64 3 d2)) (pow.f64 d3 4))) (/.f64 1 d3))))
(fma.f64 -1 (/.f64 (+.f64 3 d2) (*.f64 d3 d3)) (+.f64 (/.f64 (pow.f64 (+.f64 3 d2) 2) (pow.f64 d3 3)) (fma.f64 -1 (/.f64 (pow.f64 (+.f64 3 d2) 3) (pow.f64 d3 4)) (/.f64 1 d3))))
(+.f64 (/.f64 (/.f64 (-.f64 -3 d2) d3) d3) (+.f64 (/.f64 1 d3) (-.f64 (/.f64 (pow.f64 (+.f64 3 d2) 2) (pow.f64 d3 3)) (/.f64 (pow.f64 (+.f64 3 d2) 3) (pow.f64 d3 4)))))
(+.f64 (/.f64 1 d3) (+.f64 (/.f64 (-.f64 -3 d2) (*.f64 d3 d3)) (-.f64 (/.f64 (pow.f64 (+.f64 3 d2) 2) (pow.f64 d3 3)) (/.f64 (pow.f64 (+.f64 3 d2) 3) (pow.f64 d3 4)))))
(+.f64 (*.f64 d1 3) (*.f64 d1 (+.f64 d2 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(+.f64 (*.f64 d1 (+.f64 d2 d3)) (*.f64 d1 3))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(+.f64 (*.f64 d1 (+.f64 3 d2)) (*.f64 d1 d3))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(+.f64 (*.f64 d1 d3) (*.f64 d1 (+.f64 3 d2)))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(+.f64 (*.f64 3 d1) (*.f64 (+.f64 d2 d3) d1))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(+.f64 (*.f64 (+.f64 d2 d3) d1) (*.f64 3 d1))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(+.f64 (*.f64 (+.f64 3 d2) d1) (*.f64 d3 d1))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(+.f64 (*.f64 d3 d1) (*.f64 (+.f64 3 d2) d1))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(+.f64 (*.f64 d1 d2) (*.f64 d1 (+.f64 3 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(+.f64 (*.f64 d1 (+.f64 3 d3)) (*.f64 d1 d2))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(+.f64 (*.f64 d1 (*.f64 (+.f64 3 d2) 1)) (*.f64 d1 d3))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(+.f64 (*.f64 1 (*.f64 d1 3)) (*.f64 1 (*.f64 d1 (+.f64 d2 d3))))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(+.f64 (*.f64 1 (*.f64 d1 (+.f64 d2 d3))) (*.f64 1 (*.f64 d1 3)))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(+.f64 (*.f64 1 (*.f64 d1 (+.f64 3 d2))) (*.f64 1 (*.f64 d1 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(+.f64 (*.f64 1 (*.f64 3 d1)) (*.f64 1 (*.f64 (+.f64 d2 d3) d1)))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(+.f64 (*.f64 1 (*.f64 (+.f64 d2 d3) d1)) (*.f64 1 (*.f64 3 d1)))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(+.f64 (*.f64 1 (*.f64 (+.f64 3 d2) d1)) (*.f64 1 (*.f64 d3 d1)))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(+.f64 (*.f64 (/.f64 d1 -1) -3) (*.f64 (/.f64 d1 -1) (neg.f64 (+.f64 d2 d3))))
(*.f64 (/.f64 d1 -1) (-.f64 -3 (+.f64 d2 d3)))
(+.f64 (*.f64 (/.f64 d1 -1) (neg.f64 (+.f64 d2 d3))) (*.f64 (/.f64 d1 -1) -3))
(*.f64 (/.f64 d1 -1) (-.f64 -3 (+.f64 d2 d3)))
(+.f64 (*.f64 (/.f64 d1 -1) (neg.f64 (+.f64 3 d2))) (*.f64 (/.f64 d1 -1) (neg.f64 d3)))
(*.f64 (/.f64 d1 -1) (-.f64 -3 (+.f64 d2 d3)))
(+.f64 (*.f64 d2 d1) (*.f64 (+.f64 3 d3) d1))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(+.f64 (*.f64 (+.f64 3 d3) d1) (*.f64 d2 d1))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(+.f64 (*.f64 (*.f64 (+.f64 3 d2) 1) d1) (*.f64 d3 d1))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(+.f64 (*.f64 (*.f64 d1 3) 1) (*.f64 (*.f64 d1 (+.f64 d2 d3)) 1))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(+.f64 (*.f64 (*.f64 d1 (+.f64 d2 d3)) 1) (*.f64 (*.f64 d1 3) 1))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(+.f64 (*.f64 (*.f64 d1 (+.f64 3 d2)) 1) (*.f64 (*.f64 d1 d3) 1))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(+.f64 (*.f64 (*.f64 3 d1) 1) (*.f64 (*.f64 (+.f64 d2 d3) d1) 1))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(+.f64 (*.f64 (*.f64 (+.f64 d2 d3) d1) 1) (*.f64 (*.f64 3 d1) 1))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(+.f64 (*.f64 (*.f64 (+.f64 3 d2) d1) 1) (*.f64 (*.f64 d3 d1) 1))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(+.f64 (*.f64 -3 (/.f64 d1 -1)) (*.f64 (neg.f64 (+.f64 d2 d3)) (/.f64 d1 -1)))
(*.f64 (/.f64 d1 -1) (-.f64 -3 (+.f64 d2 d3)))
(+.f64 (*.f64 (neg.f64 (+.f64 d2 d3)) (/.f64 d1 -1)) (*.f64 -3 (/.f64 d1 -1)))
(*.f64 (/.f64 d1 -1) (-.f64 -3 (+.f64 d2 d3)))
(+.f64 (*.f64 (neg.f64 (+.f64 3 d2)) (/.f64 d1 -1)) (*.f64 (neg.f64 d3) (/.f64 d1 -1)))
(*.f64 (/.f64 d1 -1) (-.f64 -3 (+.f64 d2 d3)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))))) 1)
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(*.f64 d1 (neg.f64 (-.f64 -3 (+.f64 d2 d3))))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(*.f64 1 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(*.f64 (+.f64 3 (+.f64 d2 d3)) d1)
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(*.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))) 1)
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(*.f64 (sqrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))) (sqrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(*.f64 (sqrt.f64 (+.f64 3 (+.f64 d2 d3))) (*.f64 d1 (sqrt.f64 (+.f64 3 (+.f64 d2 d3)))))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(*.f64 (sqrt.f64 d1) (*.f64 (sqrt.f64 d1) (+.f64 3 (+.f64 d2 d3))))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(*.f64 (cbrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))) (pow.f64 (cbrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))) 2))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))) 2) (cbrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(*.f64 (pow.f64 (cbrt.f64 d1) 2) (*.f64 (cbrt.f64 d1) (+.f64 3 (+.f64 d2 d3))))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(*.f64 -1 (*.f64 d1 (-.f64 -3 (+.f64 d2 d3))))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(*.f64 (-.f64 -3 (+.f64 d2 d3)) (neg.f64 d1))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(*.f64 (neg.f64 d1) (-.f64 -3 (+.f64 d2 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(*.f64 (*.f64 d1 (pow.f64 (cbrt.f64 (+.f64 3 (+.f64 d2 d3))) 2)) (cbrt.f64 (+.f64 3 (+.f64 d2 d3))))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(*.f64 (*.f64 d1 (sqrt.f64 (+.f64 3 (+.f64 d2 d3)))) (sqrt.f64 (+.f64 3 (+.f64 d2 d3))))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(*.f64 (/.f64 1 (cbrt.f64 (pow.f64 (+.f64 3 (+.f64 d2 d3)) -2))) (*.f64 d1 (cbrt.f64 (+.f64 3 (+.f64 d2 d3)))))
(*.f64 (cbrt.f64 (+.f64 3 (+.f64 d2 d3))) (/.f64 d1 (cbrt.f64 (pow.f64 (+.f64 3 (+.f64 d2 d3)) -2))))
(*.f64 (/.f64 d1 -1) (-.f64 -3 (+.f64 d2 d3)))
(*.f64 (/.f64 (sqrt.f64 d1) 1) (*.f64 (/.f64 (sqrt.f64 d1) 1) (+.f64 3 (+.f64 d2 d3))))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(*.f64 (*.f64 (/.f64 (sqrt.f64 d1) 1) (+.f64 3 (+.f64 d2 d3))) (sqrt.f64 d1))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(*.f64 (/.f64 (sqrt.f64 d1) (cbrt.f64 (pow.f64 (+.f64 3 (+.f64 d2 d3)) -2))) (*.f64 (/.f64 (sqrt.f64 d1) 1) (cbrt.f64 (+.f64 3 (+.f64 d2 d3)))))
(*.f64 (/.f64 1 (cbrt.f64 (pow.f64 (+.f64 3 (+.f64 d2 d3)) -2))) (*.f64 d1 (cbrt.f64 (+.f64 3 (+.f64 d2 d3)))))
(*.f64 (cbrt.f64 (+.f64 3 (+.f64 d2 d3))) (/.f64 d1 (cbrt.f64 (pow.f64 (+.f64 3 (+.f64 d2 d3)) -2))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 d1) 2) 1) (*.f64 (/.f64 (cbrt.f64 d1) 1) (+.f64 3 (+.f64 d2 d3))))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 d1) 2) (pow.f64 (+.f64 3 (+.f64 d2 d3)) -1/2)) (/.f64 (cbrt.f64 d1) (pow.f64 (+.f64 3 (+.f64 d2 d3)) -1/2)))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 d1) 2) (cbrt.f64 (pow.f64 (+.f64 3 (+.f64 d2 d3)) -2))) (cbrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))))
(*.f64 (cbrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))) (/.f64 (pow.f64 (cbrt.f64 d1) 2) (cbrt.f64 (pow.f64 (+.f64 3 (+.f64 d2 d3)) -2))))
(/.f64 (*.f64 (cbrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))) (pow.f64 (cbrt.f64 d1) 2)) (cbrt.f64 (pow.f64 (+.f64 3 (+.f64 d2 d3)) -2)))
(*.f64 (/.f64 (*.f64 d1 (sqrt.f64 (+.f64 3 (+.f64 d2 d3)))) 1) (sqrt.f64 (+.f64 3 (+.f64 d2 d3))))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(*.f64 (/.f64 (/.f64 d1 (cbrt.f64 (pow.f64 (+.f64 3 (+.f64 d2 d3)) -2))) 1) (cbrt.f64 (+.f64 3 (+.f64 d2 d3))))
(*.f64 (/.f64 1 (cbrt.f64 (pow.f64 (+.f64 3 (+.f64 d2 d3)) -2))) (*.f64 d1 (cbrt.f64 (+.f64 3 (+.f64 d2 d3)))))
(*.f64 (cbrt.f64 (+.f64 3 (+.f64 d2 d3))) (/.f64 d1 (cbrt.f64 (pow.f64 (+.f64 3 (+.f64 d2 d3)) -2))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 d1) 2) (/.f64 1 (+.f64 3 (+.f64 d2 d3)))) (cbrt.f64 d1))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(*.f64 (/.f64 d1 (/.f64 1 (pow.f64 (cbrt.f64 (+.f64 3 (+.f64 d2 d3))) 2))) (cbrt.f64 (+.f64 3 (+.f64 d2 d3))))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(*.f64 (/.f64 1 (/.f64 1 (*.f64 (pow.f64 (cbrt.f64 d1) 2) (+.f64 3 (+.f64 d2 d3))))) (cbrt.f64 d1))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(*.f64 (/.f64 (*.f64 d1 (sqrt.f64 (+.f64 3 (+.f64 d2 d3)))) (sqrt.f64 -1)) (sqrt.f64 (-.f64 -3 (+.f64 d2 d3))))
(*.f64 (/.f64 d1 (/.f64 (sqrt.f64 -1) (sqrt.f64 (+.f64 3 (+.f64 d2 d3))))) (sqrt.f64 (-.f64 -3 (+.f64 d2 d3))))
(/.f64 (*.f64 d1 (sqrt.f64 (-.f64 -3 (+.f64 d2 d3)))) (/.f64 (sqrt.f64 -1) (sqrt.f64 (+.f64 3 (+.f64 d2 d3)))))
(*.f64 (/.f64 (/.f64 d1 (cbrt.f64 (pow.f64 (+.f64 3 (+.f64 d2 d3)) -2))) -1) (cbrt.f64 (-.f64 -3 (+.f64 d2 d3))))
(*.f64 (/.f64 d1 (*.f64 -1 (cbrt.f64 (pow.f64 (+.f64 3 (+.f64 d2 d3)) -2)))) (cbrt.f64 (-.f64 -3 (+.f64 d2 d3))))
(/.f64 (*.f64 (cbrt.f64 (-.f64 -3 (+.f64 d2 d3))) d1) (neg.f64 (cbrt.f64 (pow.f64 (+.f64 3 (+.f64 d2 d3)) -2))))
(*.f64 (/.f64 d1 (neg.f64 (cbrt.f64 (pow.f64 (+.f64 3 (+.f64 d2 d3)) -2)))) (cbrt.f64 (-.f64 -3 (+.f64 d2 d3))))
(*.f64 (/.f64 (*.f64 d1 (-.f64 9 (pow.f64 (+.f64 d2 d3) 2))) (-.f64 9 (pow.f64 (+.f64 d2 d3) 2))) (+.f64 3 (+.f64 d2 d3)))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(*.f64 (/.f64 (*.f64 d1 (-.f64 9 (pow.f64 (+.f64 d2 d3) 2))) (-.f64 27 (pow.f64 (+.f64 d2 d3) 3))) (+.f64 9 (*.f64 (+.f64 d2 d3) (+.f64 3 (+.f64 d2 d3)))))
(*.f64 (/.f64 d1 (/.f64 (-.f64 27 (pow.f64 (+.f64 d2 d3) 3)) (-.f64 9 (pow.f64 (+.f64 d2 d3) 2)))) (+.f64 9 (*.f64 (+.f64 d2 d3) (+.f64 3 (+.f64 d2 d3)))))
(/.f64 (*.f64 (fma.f64 (+.f64 d2 d3) (+.f64 3 (+.f64 d2 d3)) 9) d1) (/.f64 (-.f64 27 (pow.f64 (+.f64 d2 d3) 3)) (-.f64 9 (pow.f64 (+.f64 d2 d3) 2))))
(*.f64 (/.f64 (*.f64 d1 (fma.f64 (+.f64 d2 d3) (+.f64 3 (+.f64 d2 d3)) 9)) (-.f64 27 (pow.f64 (+.f64 d2 d3) 3))) (-.f64 9 (pow.f64 (+.f64 d2 d3) 2)))
(*.f64 (/.f64 (*.f64 d1 (+.f64 27 (pow.f64 (+.f64 d2 d3) 3))) (-.f64 81 (*.f64 (*.f64 (+.f64 d2 d3) (+.f64 d2 (-.f64 d3 3))) (*.f64 (+.f64 d2 d3) (+.f64 d2 (-.f64 d3 3)))))) (-.f64 9 (*.f64 (+.f64 d2 d3) (+.f64 d2 (-.f64 d3 3)))))
(*.f64 (/.f64 d1 (/.f64 (-.f64 81 (*.f64 (pow.f64 (+.f64 d2 d3) 2) (*.f64 (+.f64 d2 (+.f64 d3 -3)) (+.f64 d2 (+.f64 d3 -3))))) (+.f64 27 (pow.f64 (+.f64 d2 d3) 3)))) (-.f64 9 (*.f64 (+.f64 d2 d3) (+.f64 d2 (+.f64 d3 -3)))))
(*.f64 (*.f64 (/.f64 d1 (-.f64 81 (*.f64 (+.f64 d2 (+.f64 d3 -3)) (*.f64 (+.f64 d2 (+.f64 d3 -3)) (pow.f64 (+.f64 d2 d3) 2))))) (+.f64 27 (pow.f64 (+.f64 d2 d3) 3))) (-.f64 9 (*.f64 (+.f64 d2 d3) (+.f64 d2 (+.f64 d3 -3)))))
(*.f64 (/.f64 (*.f64 d1 (+.f64 27 (pow.f64 (+.f64 d2 d3) 3))) (+.f64 729 (pow.f64 (*.f64 (+.f64 d2 d3) (+.f64 d2 (-.f64 d3 3))) 3))) (+.f64 81 (-.f64 (*.f64 (*.f64 (+.f64 d2 d3) (+.f64 d2 (-.f64 d3 3))) (*.f64 (+.f64 d2 d3) (+.f64 d2 (-.f64 d3 3)))) (*.f64 9 (*.f64 (+.f64 d2 d3) (+.f64 d2 (-.f64 d3 3)))))))
(*.f64 (/.f64 d1 (/.f64 (+.f64 729 (pow.f64 (*.f64 (+.f64 d2 d3) (+.f64 d2 (+.f64 d3 -3))) 3)) (+.f64 27 (pow.f64 (+.f64 d2 d3) 3)))) (+.f64 81 (*.f64 (*.f64 (+.f64 d2 d3) (+.f64 d2 (+.f64 d3 -3))) (-.f64 (*.f64 (+.f64 d2 d3) (+.f64 d2 (+.f64 d3 -3))) 9))))
(*.f64 (/.f64 d1 (/.f64 (+.f64 729 (pow.f64 (*.f64 (+.f64 d2 d3) (+.f64 d2 (+.f64 d3 -3))) 3)) (+.f64 27 (pow.f64 (+.f64 d2 d3) 3)))) (fma.f64 (*.f64 (+.f64 d2 d3) (+.f64 d2 (+.f64 d3 -3))) (fma.f64 (+.f64 d2 d3) (+.f64 d2 (+.f64 d3 -3)) -9) 81))
(*.f64 (/.f64 (*.f64 d1 (fma.f64 (*.f64 (+.f64 d2 d3) (+.f64 d2 (+.f64 d3 -3))) (fma.f64 (+.f64 d2 d3) (+.f64 d2 (+.f64 d3 -3)) -9) 81)) (+.f64 729 (pow.f64 (*.f64 (+.f64 d2 d3) (+.f64 d2 (+.f64 d3 -3))) 3))) (+.f64 27 (pow.f64 (+.f64 d2 d3) 3)))
(pow.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))) 1)
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(pow.f64 (sqrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))) 2)
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(pow.f64 (cbrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))) 3)
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(pow.f64 (pow.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))) 3) 1/3)
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(pow.f64 (/.f64 (/.f64 1 d1) (+.f64 3 (+.f64 d2 d3))) -1)
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(neg.f64 (*.f64 d1 (-.f64 -3 (+.f64 d2 d3))))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(sqrt.f64 (pow.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))) 2))
(fabs.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))))
(log.f64 (pow.f64 (exp.f64 d1) (+.f64 3 (+.f64 d2 d3))))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))))))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(cbrt.f64 (pow.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))) 3))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(cbrt.f64 (/.f64 (pow.f64 d1 3) (pow.f64 (/.f64 1 (+.f64 3 (+.f64 d2 d3))) 3)))
(cbrt.f64 (/.f64 (pow.f64 d1 3) (/.f64 1 (pow.f64 (+.f64 3 (+.f64 d2 d3)) 3))))
(cbrt.f64 (*.f64 (/.f64 (pow.f64 d1 3) 1) (pow.f64 (+.f64 3 (+.f64 d2 d3)) 3)))
(expm1.f64 (log1p.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(exp.f64 (log.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(exp.f64 (*.f64 (log.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))) 1))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(log1p.f64 (expm1.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))))
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
(+.f64 (*.f64 (/.f64 1 (-.f64 9 (pow.f64 (+.f64 d2 d3) 2))) 3) (*.f64 (/.f64 1 (-.f64 9 (pow.f64 (+.f64 d2 d3) 2))) (neg.f64 (+.f64 d2 d3))))
(*.f64 (/.f64 1 (-.f64 9 (pow.f64 (+.f64 d2 d3) 2))) (-.f64 3 (+.f64 d2 d3)))
(/.f64 (-.f64 3 (+.f64 d2 d3)) (-.f64 9 (pow.f64 (+.f64 d2 d3) 2)))
(/.f64 (+.f64 d2 (+.f64 d3 -3)) (+.f64 (pow.f64 (+.f64 d2 d3) 2) -9))
(+.f64 (*.f64 (/.f64 1 (-.f64 9 (pow.f64 (+.f64 d2 d3) 2))) 3) (*.f64 (/.f64 1 (-.f64 9 (pow.f64 (+.f64 d2 d3) 2))) (*.f64 -1 (+.f64 d2 d3))))
(*.f64 (/.f64 1 (-.f64 9 (pow.f64 (+.f64 d2 d3) 2))) (-.f64 3 (+.f64 d2 d3)))
(/.f64 (-.f64 3 (+.f64 d2 d3)) (-.f64 9 (pow.f64 (+.f64 d2 d3) 2)))
(/.f64 (+.f64 d2 (+.f64 d3 -3)) (+.f64 (pow.f64 (+.f64 d2 d3) 2) -9))
(+.f64 (*.f64 (/.f64 1 (-.f64 9 (pow.f64 (+.f64 d2 d3) 2))) 3) (*.f64 (/.f64 1 (-.f64 9 (pow.f64 (+.f64 d2 d3) 2))) (*.f64 (neg.f64 (sqrt.f64 (+.f64 d2 d3))) (sqrt.f64 (+.f64 d2 d3)))))
(*.f64 (/.f64 1 (-.f64 9 (pow.f64 (+.f64 d2 d3) 2))) (-.f64 3 (+.f64 d2 d3)))
(/.f64 (-.f64 3 (+.f64 d2 d3)) (-.f64 9 (pow.f64 (+.f64 d2 d3) 2)))
(/.f64 (+.f64 d2 (+.f64 d3 -3)) (+.f64 (pow.f64 (+.f64 d2 d3) 2) -9))
(+.f64 (*.f64 (/.f64 1 (-.f64 9 (pow.f64 (+.f64 d2 d3) 2))) 3) (*.f64 (/.f64 1 (-.f64 9 (pow.f64 (+.f64 d2 d3) 2))) (*.f64 (neg.f64 (pow.f64 (cbrt.f64 (+.f64 d2 d3)) 2)) (cbrt.f64 (+.f64 d2 d3)))))
(*.f64 (/.f64 1 (-.f64 9 (pow.f64 (+.f64 d2 d3) 2))) (-.f64 3 (+.f64 d2 d3)))
(/.f64 (-.f64 3 (+.f64 d2 d3)) (-.f64 9 (pow.f64 (+.f64 d2 d3) 2)))
(/.f64 (+.f64 d2 (+.f64 d3 -3)) (+.f64 (pow.f64 (+.f64 d2 d3) 2) -9))
(+.f64 (*.f64 (/.f64 1 (+.f64 27 (pow.f64 (+.f64 d2 d3) 3))) 9) (*.f64 (/.f64 1 (+.f64 27 (pow.f64 (+.f64 d2 d3) 3))) (*.f64 (+.f64 d2 d3) (+.f64 d2 (-.f64 d3 3)))))
(*.f64 (/.f64 1 (+.f64 27 (pow.f64 (+.f64 d2 d3) 3))) (+.f64 9 (*.f64 (+.f64 d2 d3) (+.f64 d2 (+.f64 d3 -3)))))
(/.f64 (fma.f64 (+.f64 d2 d3) (+.f64 d2 (+.f64 d3 -3)) 9) (+.f64 27 (pow.f64 (+.f64 d2 d3) 3)))
(+.f64 (*.f64 (/.f64 1 (+.f64 27 (pow.f64 (+.f64 d2 d3) 3))) (*.f64 (+.f64 d2 d3) (+.f64 d2 (-.f64 d3 3)))) (*.f64 (/.f64 1 (+.f64 27 (pow.f64 (+.f64 d2 d3) 3))) 9))
(*.f64 (/.f64 1 (+.f64 27 (pow.f64 (+.f64 d2 d3) 3))) (+.f64 9 (*.f64 (+.f64 d2 d3) (+.f64 d2 (+.f64 d3 -3)))))
(/.f64 (fma.f64 (+.f64 d2 d3) (+.f64 d2 (+.f64 d3 -3)) 9) (+.f64 27 (pow.f64 (+.f64 d2 d3) 3)))
(+.f64 (*.f64 3 (/.f64 1 (-.f64 9 (pow.f64 (+.f64 d2 d3) 2)))) (*.f64 (neg.f64 (+.f64 d2 d3)) (/.f64 1 (-.f64 9 (pow.f64 (+.f64 d2 d3) 2)))))
(*.f64 (/.f64 1 (-.f64 9 (pow.f64 (+.f64 d2 d3) 2))) (-.f64 3 (+.f64 d2 d3)))
(/.f64 (-.f64 3 (+.f64 d2 d3)) (-.f64 9 (pow.f64 (+.f64 d2 d3) 2)))
(/.f64 (+.f64 d2 (+.f64 d3 -3)) (+.f64 (pow.f64 (+.f64 d2 d3) 2) -9))
(+.f64 (*.f64 3 (/.f64 1 (-.f64 9 (pow.f64 (+.f64 d2 d3) 2)))) (*.f64 (*.f64 -1 (+.f64 d2 d3)) (/.f64 1 (-.f64 9 (pow.f64 (+.f64 d2 d3) 2)))))
(*.f64 (/.f64 1 (-.f64 9 (pow.f64 (+.f64 d2 d3) 2))) (-.f64 3 (+.f64 d2 d3)))
(/.f64 (-.f64 3 (+.f64 d2 d3)) (-.f64 9 (pow.f64 (+.f64 d2 d3) 2)))
(/.f64 (+.f64 d2 (+.f64 d3 -3)) (+.f64 (pow.f64 (+.f64 d2 d3) 2) -9))
(+.f64 (*.f64 3 (/.f64 1 (-.f64 9 (pow.f64 (+.f64 d2 d3) 2)))) (*.f64 (*.f64 (neg.f64 (sqrt.f64 (+.f64 d2 d3))) (sqrt.f64 (+.f64 d2 d3))) (/.f64 1 (-.f64 9 (pow.f64 (+.f64 d2 d3) 2)))))
(*.f64 (/.f64 1 (-.f64 9 (pow.f64 (+.f64 d2 d3) 2))) (-.f64 3 (+.f64 d2 d3)))
(/.f64 (-.f64 3 (+.f64 d2 d3)) (-.f64 9 (pow.f64 (+.f64 d2 d3) 2)))
(/.f64 (+.f64 d2 (+.f64 d3 -3)) (+.f64 (pow.f64 (+.f64 d2 d3) 2) -9))
(+.f64 (*.f64 3 (/.f64 1 (-.f64 9 (pow.f64 (+.f64 d2 d3) 2)))) (*.f64 (*.f64 (neg.f64 (pow.f64 (cbrt.f64 (+.f64 d2 d3)) 2)) (cbrt.f64 (+.f64 d2 d3))) (/.f64 1 (-.f64 9 (pow.f64 (+.f64 d2 d3) 2)))))
(*.f64 (/.f64 1 (-.f64 9 (pow.f64 (+.f64 d2 d3) 2))) (-.f64 3 (+.f64 d2 d3)))
(/.f64 (-.f64 3 (+.f64 d2 d3)) (-.f64 9 (pow.f64 (+.f64 d2 d3) 2)))
(/.f64 (+.f64 d2 (+.f64 d3 -3)) (+.f64 (pow.f64 (+.f64 d2 d3) 2) -9))
(+.f64 (*.f64 9 (/.f64 1 (+.f64 27 (pow.f64 (+.f64 d2 d3) 3)))) (*.f64 (*.f64 (+.f64 d2 d3) (+.f64 d2 (-.f64 d3 3))) (/.f64 1 (+.f64 27 (pow.f64 (+.f64 d2 d3) 3)))))
(*.f64 (/.f64 1 (+.f64 27 (pow.f64 (+.f64 d2 d3) 3))) (+.f64 9 (*.f64 (+.f64 d2 d3) (+.f64 d2 (+.f64 d3 -3)))))
(/.f64 (fma.f64 (+.f64 d2 d3) (+.f64 d2 (+.f64 d3 -3)) 9) (+.f64 27 (pow.f64 (+.f64 d2 d3) 3)))
(+.f64 (*.f64 (*.f64 (+.f64 d2 d3) (+.f64 d2 (-.f64 d3 3))) (/.f64 1 (+.f64 27 (pow.f64 (+.f64 d2 d3) 3)))) (*.f64 9 (/.f64 1 (+.f64 27 (pow.f64 (+.f64 d2 d3) 3)))))
(*.f64 (/.f64 1 (+.f64 27 (pow.f64 (+.f64 d2 d3) 3))) (+.f64 9 (*.f64 (+.f64 d2 d3) (+.f64 d2 (+.f64 d3 -3)))))
(/.f64 (fma.f64 (+.f64 d2 d3) (+.f64 d2 (+.f64 d3 -3)) 9) (+.f64 27 (pow.f64 (+.f64 d2 d3) 3)))
(-.f64 (exp.f64 (log1p.f64 (/.f64 1 (+.f64 3 (+.f64 d2 d3))))) 1)
(/.f64 1 (+.f64 3 (+.f64 d2 d3)))
(*.f64 1 (/.f64 1 (+.f64 3 (+.f64 d2 d3))))
(/.f64 1 (+.f64 3 (+.f64 d2 d3)))
(*.f64 (/.f64 1 (+.f64 3 (+.f64 d2 d3))) 1)
(/.f64 1 (+.f64 3 (+.f64 d2 d3)))
(*.f64 (pow.f64 (+.f64 3 (+.f64 d2 d3)) -1/2) (pow.f64 (+.f64 3 (+.f64 d2 d3)) -1/2))
(/.f64 1 (+.f64 3 (+.f64 d2 d3)))
(*.f64 (/.f64 -1 (cbrt.f64 (-.f64 -3 (+.f64 d2 d3)))) (cbrt.f64 (pow.f64 (+.f64 3 (+.f64 d2 d3)) -2)))
(/.f64 (*.f64 (cbrt.f64 (pow.f64 (+.f64 3 (+.f64 d2 d3)) -2)) -1) (cbrt.f64 (-.f64 -3 (+.f64 d2 d3))))
(/.f64 (neg.f64 (cbrt.f64 (pow.f64 (+.f64 3 (+.f64 d2 d3)) -2))) (cbrt.f64 (-.f64 -3 (+.f64 d2 d3))))
(*.f64 (cbrt.f64 (pow.f64 (+.f64 3 (+.f64 d2 d3)) -2)) (/.f64 -1 (cbrt.f64 (-.f64 -3 (+.f64 d2 d3)))))
(/.f64 (*.f64 (cbrt.f64 (pow.f64 (+.f64 3 (+.f64 d2 d3)) -2)) -1) (cbrt.f64 (-.f64 -3 (+.f64 d2 d3))))
(/.f64 (neg.f64 (cbrt.f64 (pow.f64 (+.f64 3 (+.f64 d2 d3)) -2))) (cbrt.f64 (-.f64 -3 (+.f64 d2 d3))))
(*.f64 -1 (/.f64 -1 (+.f64 3 (+.f64 d2 d3))))
(/.f64 1 (+.f64 3 (+.f64 d2 d3)))
(*.f64 (/.f64 -1 (+.f64 3 (+.f64 d2 d3))) -1)
(/.f64 1 (+.f64 3 (+.f64 d2 d3)))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (+.f64 3 (+.f64 d2 d3))) 2)) (/.f64 -1 (cbrt.f64 (-.f64 -3 (+.f64 d2 d3)))))
(/.f64 (/.f64 -1 (cbrt.f64 (-.f64 -3 (+.f64 d2 d3)))) (pow.f64 (cbrt.f64 (+.f64 3 (+.f64 d2 d3))) 2))
(/.f64 -1 (*.f64 (pow.f64 (cbrt.f64 (+.f64 3 (+.f64 d2 d3))) 2) (cbrt.f64 (-.f64 -3 (+.f64 d2 d3)))))
(*.f64 (/.f64 1 (-.f64 9 (pow.f64 (+.f64 d2 d3) 2))) (-.f64 3 (+.f64 d2 d3)))
(/.f64 (-.f64 3 (+.f64 d2 d3)) (-.f64 9 (pow.f64 (+.f64 d2 d3) 2)))
(/.f64 (+.f64 d2 (+.f64 d3 -3)) (+.f64 (pow.f64 (+.f64 d2 d3) 2) -9))
(*.f64 (/.f64 1 (+.f64 27 (pow.f64 (+.f64 d2 d3) 3))) (+.f64 9 (*.f64 (+.f64 d2 d3) (+.f64 d2 (-.f64 d3 3)))))
(*.f64 (/.f64 1 (+.f64 27 (pow.f64 (+.f64 d2 d3) 3))) (+.f64 9 (*.f64 (+.f64 d2 d3) (+.f64 d2 (+.f64 d3 -3)))))
(/.f64 (fma.f64 (+.f64 d2 d3) (+.f64 d2 (+.f64 d3 -3)) 9) (+.f64 27 (pow.f64 (+.f64 d2 d3) 3)))
(*.f64 (/.f64 (cbrt.f64 (pow.f64 (+.f64 3 (+.f64 d2 d3)) -2)) 1) (/.f64 -1 (cbrt.f64 (-.f64 -3 (+.f64 d2 d3)))))
(/.f64 (*.f64 (cbrt.f64 (pow.f64 (+.f64 3 (+.f64 d2 d3)) -2)) -1) (cbrt.f64 (-.f64 -3 (+.f64 d2 d3))))
(/.f64 (neg.f64 (cbrt.f64 (pow.f64 (+.f64 3 (+.f64 d2 d3)) -2))) (cbrt.f64 (-.f64 -3 (+.f64 d2 d3))))
(*.f64 (pow.f64 (sqrt.f64 (+.f64 3 (+.f64 d2 d3))) -1) (pow.f64 (sqrt.f64 (+.f64 3 (+.f64 d2 d3))) -1))
(pow.f64 (sqrt.f64 (+.f64 3 (+.f64 d2 d3))) -2)
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (+.f64 3 (+.f64 d2 d3))) 2) -1) (pow.f64 (cbrt.f64 (+.f64 3 (+.f64 d2 d3))) -1))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (+.f64 3 (+.f64 d2 d3))) 2)) (/.f64 1 (cbrt.f64 (+.f64 3 (+.f64 d2 d3)))))
(/.f64 (*.f64 1 (/.f64 1 (cbrt.f64 (+.f64 3 (+.f64 d2 d3))))) (pow.f64 (cbrt.f64 (+.f64 3 (+.f64 d2 d3))) 2))
(*.f64 (/.f64 1 (neg.f64 (-.f64 9 (pow.f64 (+.f64 d2 d3) 2)))) (neg.f64 (-.f64 3 (+.f64 d2 d3))))
(*.f64 (/.f64 1 (-.f64 9 (pow.f64 (+.f64 d2 d3) 2))) (-.f64 3 (+.f64 d2 d3)))
(/.f64 (-.f64 3 (+.f64 d2 d3)) (-.f64 9 (pow.f64 (+.f64 d2 d3) 2)))
(/.f64 (+.f64 d2 (+.f64 d3 -3)) (+.f64 (pow.f64 (+.f64 d2 d3) 2) -9))
(*.f64 (/.f64 1 (neg.f64 (+.f64 27 (pow.f64 (+.f64 d2 d3) 3)))) (neg.f64 (+.f64 9 (*.f64 (+.f64 d2 d3) (+.f64 d2 (-.f64 d3 3))))))
(*.f64 (/.f64 1 (+.f64 27 (pow.f64 (+.f64 d2 d3) 3))) (+.f64 9 (*.f64 (+.f64 d2 d3) (+.f64 d2 (+.f64 d3 -3)))))
(/.f64 (fma.f64 (+.f64 d2 d3) (+.f64 d2 (+.f64 d3 -3)) 9) (+.f64 27 (pow.f64 (+.f64 d2 d3) 3)))
(*.f64 (/.f64 -1 (neg.f64 (-.f64 9 (pow.f64 (+.f64 d2 d3) 2)))) (-.f64 3 (+.f64 d2 d3)))
(*.f64 (/.f64 1 (-.f64 9 (pow.f64 (+.f64 d2 d3) 2))) (-.f64 3 (+.f64 d2 d3)))
(/.f64 (-.f64 3 (+.f64 d2 d3)) (-.f64 9 (pow.f64 (+.f64 d2 d3) 2)))
(/.f64 (+.f64 d2 (+.f64 d3 -3)) (+.f64 (pow.f64 (+.f64 d2 d3) 2) -9))
(*.f64 (/.f64 -1 (neg.f64 (+.f64 27 (pow.f64 (+.f64 d2 d3) 3)))) (+.f64 9 (*.f64 (+.f64 d2 d3) (+.f64 d2 (-.f64 d3 3)))))
(*.f64 (/.f64 1 (+.f64 27 (pow.f64 (+.f64 d2 d3) 3))) (+.f64 9 (*.f64 (+.f64 d2 d3) (+.f64 d2 (+.f64 d3 -3)))))
(/.f64 (fma.f64 (+.f64 d2 d3) (+.f64 d2 (+.f64 d3 -3)) 9) (+.f64 27 (pow.f64 (+.f64 d2 d3) 3)))
(*.f64 (/.f64 (-.f64 3 (+.f64 d2 d3)) (-.f64 81 (*.f64 (pow.f64 (+.f64 d2 d3) 2) (pow.f64 (+.f64 d2 d3) 2)))) (+.f64 (pow.f64 (+.f64 d2 d3) 2) 9))
(*.f64 (/.f64 (-.f64 3 (+.f64 d2 d3)) (-.f64 81 (pow.f64 (+.f64 d2 d3) 4))) (+.f64 9 (pow.f64 (+.f64 d2 d3) 2)))
(*.f64 (/.f64 (-.f64 3 (+.f64 d2 d3)) (-.f64 729 (pow.f64 (pow.f64 (+.f64 d2 d3) 2) 3))) (+.f64 81 (+.f64 (*.f64 (pow.f64 (+.f64 d2 d3) 2) (pow.f64 (+.f64 d2 d3) 2)) (*.f64 9 (pow.f64 (+.f64 d2 d3) 2)))))
(/.f64 (*.f64 (-.f64 3 (+.f64 d2 d3)) (+.f64 (+.f64 81 (pow.f64 (+.f64 d2 d3) 4)) (*.f64 9 (pow.f64 (+.f64 d2 d3) 2)))) (-.f64 729 (pow.f64 (pow.f64 (+.f64 d2 d3) 2) 3)))
(*.f64 (/.f64 (-.f64 3 (+.f64 d2 d3)) (-.f64 729 (pow.f64 (+.f64 d2 d3) 6))) (fma.f64 (pow.f64 (+.f64 d2 d3) 2) (+.f64 9 (pow.f64 (+.f64 d2 d3) 2)) 81))
(*.f64 (/.f64 (+.f64 9 (*.f64 (+.f64 d2 d3) (+.f64 d2 (-.f64 d3 3)))) (-.f64 729 (*.f64 (pow.f64 (+.f64 d2 d3) 3) (pow.f64 (+.f64 d2 d3) 3)))) (-.f64 27 (pow.f64 (+.f64 d2 d3) 3)))
(*.f64 (-.f64 27 (pow.f64 (+.f64 d2 d3) 3)) (/.f64 (+.f64 9 (*.f64 (+.f64 d2 d3) (+.f64 d2 (+.f64 d3 -3)))) (-.f64 729 (pow.f64 (+.f64 d2 d3) 6))))
(*.f64 (-.f64 27 (pow.f64 (+.f64 d2 d3) 3)) (/.f64 (fma.f64 (+.f64 d2 d3) (+.f64 d2 (+.f64 d3 -3)) 9) (-.f64 729 (pow.f64 (+.f64 d2 d3) 6))))
(*.f64 (/.f64 (+.f64 9 (*.f64 (+.f64 d2 d3) (+.f64 d2 (-.f64 d3 3)))) (+.f64 19683 (pow.f64 (pow.f64 (+.f64 d2 d3) 3) 3))) (+.f64 729 (-.f64 (*.f64 (pow.f64 (+.f64 d2 d3) 3) (pow.f64 (+.f64 d2 d3) 3)) (*.f64 27 (pow.f64 (+.f64 d2 d3) 3)))))
(/.f64 (*.f64 (+.f64 9 (*.f64 (+.f64 d2 d3) (+.f64 d2 (+.f64 d3 -3)))) (+.f64 729 (+.f64 (pow.f64 (+.f64 d2 d3) 6) (*.f64 -27 (pow.f64 (+.f64 d2 d3) 3))))) (+.f64 19683 (pow.f64 (pow.f64 (+.f64 d2 d3) 3) 3)))
(*.f64 (/.f64 (fma.f64 (+.f64 d2 d3) (+.f64 d2 (+.f64 d3 -3)) 9) (+.f64 19683 (pow.f64 (pow.f64 (+.f64 d2 d3) 3) 3))) (fma.f64 (pow.f64 (+.f64 d2 d3) 3) (+.f64 (pow.f64 (+.f64 d2 d3) 3) -27) 729))
(/.f64 (fma.f64 (+.f64 d2 d3) (+.f64 d2 (+.f64 d3 -3)) 9) (/.f64 (+.f64 19683 (pow.f64 (pow.f64 (+.f64 d2 d3) 3) 3)) (fma.f64 (pow.f64 (+.f64 d2 d3) 3) (+.f64 (pow.f64 (+.f64 d2 d3) 3) -27) 729)))
(*.f64 (/.f64 1 (-.f64 (pow.f64 (+.f64 d2 d3) 2) 9)) (+.f64 d2 (-.f64 d3 3)))
(*.f64 (/.f64 1 (-.f64 9 (pow.f64 (+.f64 d2 d3) 2))) (-.f64 3 (+.f64 d2 d3)))
(/.f64 (-.f64 3 (+.f64 d2 d3)) (-.f64 9 (pow.f64 (+.f64 d2 d3) 2)))
(/.f64 (+.f64 d2 (+.f64 d3 -3)) (+.f64 (pow.f64 (+.f64 d2 d3) 2) -9))
(*.f64 (/.f64 1 (-.f64 (*.f64 (+.f64 3 d2) (+.f64 3 d2)) (*.f64 d3 d3))) (-.f64 (+.f64 3 d2) d3))
(*.f64 (/.f64 1 (-.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 d3))) (+.f64 3 (-.f64 d2 d3)))
(/.f64 (+.f64 3 (-.f64 d2 d3)) (-.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 d3)))
(*.f64 (/.f64 1 (+.f64 (pow.f64 d3 3) (pow.f64 (+.f64 3 d2) 3))) (+.f64 (*.f64 (+.f64 3 d2) (+.f64 3 d2)) (-.f64 (*.f64 d3 d3) (*.f64 (+.f64 3 d2) d3))))
(*.f64 (/.f64 1 (+.f64 (pow.f64 d3 3) (pow.f64 (+.f64 3 d2) 3))) (+.f64 (pow.f64 (+.f64 3 d2) 2) (*.f64 d3 (-.f64 d3 (+.f64 3 d2)))))
(/.f64 (fma.f64 d3 (+.f64 d3 (-.f64 -3 d2)) (pow.f64 (+.f64 3 d2) 2)) (+.f64 (pow.f64 d3 3) (pow.f64 (+.f64 3 d2) 3)))
(*.f64 (/.f64 (pow.f64 (+.f64 3 (+.f64 d2 d3)) -1/2) (sqrt.f64 (-.f64 9 (pow.f64 (+.f64 d2 d3) 2)))) (sqrt.f64 (-.f64 3 (+.f64 d2 d3))))
(*.f64 (/.f64 (pow.f64 (+.f64 3 (+.f64 d2 d3)) -1/2) (sqrt.f64 (+.f64 27 (pow.f64 (+.f64 d2 d3) 3)))) (sqrt.f64 (+.f64 9 (*.f64 (+.f64 d2 d3) (+.f64 d2 (-.f64 d3 3))))))
(*.f64 (/.f64 (pow.f64 (+.f64 3 (+.f64 d2 d3)) -1/2) (sqrt.f64 (+.f64 27 (pow.f64 (+.f64 d2 d3) 3)))) (sqrt.f64 (+.f64 9 (*.f64 (+.f64 d2 d3) (+.f64 d2 (+.f64 d3 -3))))))
(*.f64 (/.f64 (pow.f64 (+.f64 3 (+.f64 d2 d3)) -1/2) (sqrt.f64 (+.f64 27 (pow.f64 (+.f64 d2 d3) 3)))) (sqrt.f64 (fma.f64 (+.f64 d2 d3) (+.f64 d2 (+.f64 d3 -3)) 9)))
(*.f64 (/.f64 (/.f64 1 (pow.f64 (cbrt.f64 (+.f64 3 (+.f64 d2 d3))) 2)) (cbrt.f64 (-.f64 9 (pow.f64 (+.f64 d2 d3) 2)))) (cbrt.f64 (-.f64 3 (+.f64 d2 d3))))
(*.f64 (/.f64 1 (*.f64 (cbrt.f64 (-.f64 9 (pow.f64 (+.f64 d2 d3) 2))) (pow.f64 (cbrt.f64 (+.f64 3 (+.f64 d2 d3))) 2))) (cbrt.f64 (-.f64 3 (+.f64 d2 d3))))
(*.f64 (/.f64 1 (*.f64 (pow.f64 (cbrt.f64 (+.f64 3 (+.f64 d2 d3))) 2) (cbrt.f64 (-.f64 9 (pow.f64 (+.f64 d2 d3) 2))))) (cbrt.f64 (-.f64 3 (+.f64 d2 d3))))
(*.f64 (/.f64 (/.f64 1 (pow.f64 (cbrt.f64 (+.f64 3 (+.f64 d2 d3))) 2)) (cbrt.f64 (+.f64 27 (pow.f64 (+.f64 d2 d3) 3)))) (cbrt.f64 (+.f64 9 (*.f64 (+.f64 d2 d3) (+.f64 d2 (-.f64 d3 3))))))
(*.f64 (/.f64 1 (*.f64 (cbrt.f64 (+.f64 27 (pow.f64 (+.f64 d2 d3) 3))) (pow.f64 (cbrt.f64 (+.f64 3 (+.f64 d2 d3))) 2))) (cbrt.f64 (+.f64 9 (*.f64 (+.f64 d2 d3) (+.f64 d2 (+.f64 d3 -3))))))
(*.f64 (/.f64 1 (*.f64 (pow.f64 (cbrt.f64 (+.f64 3 (+.f64 d2 d3))) 2) (cbrt.f64 (+.f64 27 (pow.f64 (+.f64 d2 d3) 3))))) (cbrt.f64 (fma.f64 (+.f64 d2 d3) (+.f64 d2 (+.f64 d3 -3)) 9)))
(pow.f64 (+.f64 3 (+.f64 d2 d3)) -1)
(/.f64 1 (+.f64 3 (+.f64 d2 d3)))
(pow.f64 (/.f64 1 (+.f64 3 (+.f64 d2 d3))) 1)
(/.f64 1 (+.f64 3 (+.f64 d2 d3)))
(pow.f64 (pow.f64 (+.f64 3 (+.f64 d2 d3)) -1/2) 2)
(/.f64 1 (+.f64 3 (+.f64 d2 d3)))
(pow.f64 (/.f64 -1 (cbrt.f64 (-.f64 -3 (+.f64 d2 d3)))) 3)
(/.f64 -1 (pow.f64 (cbrt.f64 (-.f64 -3 (+.f64 d2 d3))) 3))
(/.f64 -1 (-.f64 -3 (+.f64 d2 d3)))
(pow.f64 (pow.f64 (/.f64 1 (+.f64 3 (+.f64 d2 d3))) 3) 1/3)
(/.f64 1 (+.f64 3 (+.f64 d2 d3)))
(sqrt.f64 (pow.f64 (+.f64 3 (+.f64 d2 d3)) -2))
(fabs.f64 (/.f64 1 (+.f64 3 (+.f64 d2 d3))))
(log.f64 (exp.f64 (/.f64 1 (+.f64 3 (+.f64 d2 d3)))))
(/.f64 1 (+.f64 3 (+.f64 d2 d3)))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 1 (+.f64 3 (+.f64 d2 d3))))))
(/.f64 1 (+.f64 3 (+.f64 d2 d3)))
(cbrt.f64 (pow.f64 (/.f64 1 (+.f64 3 (+.f64 d2 d3))) 3))
(/.f64 1 (+.f64 3 (+.f64 d2 d3)))
(expm1.f64 (log1p.f64 (/.f64 1 (+.f64 3 (+.f64 d2 d3)))))
(/.f64 1 (+.f64 3 (+.f64 d2 d3)))
(exp.f64 (neg.f64 (log.f64 (+.f64 3 (+.f64 d2 d3)))))
(/.f64 1 (+.f64 3 (+.f64 d2 d3)))
(exp.f64 (*.f64 (log.f64 (+.f64 3 (+.f64 d2 d3))) -1))
(/.f64 1 (+.f64 3 (+.f64 d2 d3)))
(exp.f64 (*.f64 (neg.f64 (log.f64 (+.f64 3 (+.f64 d2 d3)))) 1))
(/.f64 1 (+.f64 3 (+.f64 d2 d3)))
(log1p.f64 (expm1.f64 (/.f64 1 (+.f64 3 (+.f64 d2 d3)))))
(/.f64 1 (+.f64 3 (+.f64 d2 d3)))

localize5.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.15%
(fma.f64 d1 3 (*.f64 d1 d3))
Compiler

Compiled 15 to 7 computations (53.3% saved)

series2.0ms (0.1%)

Counts
1 → 24
Calls

6 calls:

TimeVariablePointExpression
1.0ms
d1
@0
(fma.f64 d1 3 (*.f64 d1 d3))
0.0ms
d1
@-inf
(fma.f64 d1 3 (*.f64 d1 d3))
0.0ms
d1
@inf
(fma.f64 d1 3 (*.f64 d1 d3))
0.0ms
d3
@0
(fma.f64 d1 3 (*.f64 d1 d3))
0.0ms
d3
@inf
(fma.f64 d1 3 (*.f64 d1 d3))

rewrite57.0ms (1.5%)

Algorithm
batch-egg-rewrite
Rules
1490×add-sqr-sqrt
1476×*-un-lft-identity
1366×add-cube-cbrt
1348×add-cbrt-cube
1332×add-exp-log
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0815
115913
2182213
Stop Event
node limit
Counts
1 → 23
Calls
Call 1
Inputs
(fma.f64 d1 3 (*.f64 d1 d3))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 d1 d3) (*.f64 d1 3))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 d1 3) (*.f64 d1 d3))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 d1 3) 1) (*.f64 d1 d3))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 d1 (+.f64 3 d3))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 d1 (+.f64 3 d3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 d1 (+.f64 3 d3)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 d1 (+.f64 3 d3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 d1 (+.f64 3 d3))) (sqrt.f64 (*.f64 d1 (+.f64 3 d3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 d1 (+.f64 3 d3))) (pow.f64 (cbrt.f64 (*.f64 d1 (+.f64 3 d3))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 d1 (+.f64 3 d3))) 2) (cbrt.f64 (*.f64 d1 (+.f64 3 d3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 d1 3) (*.f64 d1 3)) (pow.f64 (*.f64 d1 d3) 2)) (-.f64 (*.f64 d1 3) (*.f64 d1 d3)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 d1 3) 3) (pow.f64 (*.f64 d1 d3) 3)) (+.f64 (*.f64 (*.f64 d1 3) (*.f64 d1 3)) (-.f64 (pow.f64 (*.f64 d1 d3) 2) (*.f64 (*.f64 d1 3) (*.f64 d1 d3)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 d1 (+.f64 3 d3)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 d1 (+.f64 3 d3))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 d1 (+.f64 3 d3))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 d1 (+.f64 3 d3)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 d1 (+.f64 3 d3)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (*.f64 d1 (+.f64 3 d3))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 d1 (+.f64 3 d3)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 d1 (+.f64 3 d3))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 d1 (+.f64 3 d3))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 d1 (+.f64 3 d3))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 d1 (+.f64 3 d3))))))))

simplify53.0ms (1.4%)

Algorithm
egg-herbie
Rules
1442×fma-def
1264×associate-/l*
1204×times-frac
610×associate-+r+
606×*-commutative
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
064671
1187655
2843649
32815647
Stop Event
node limit
Counts
47 → 33
Calls
Call 1
Inputs
(*.f64 d1 (+.f64 3 d3))
(*.f64 d1 (+.f64 3 d3))
(*.f64 d1 (+.f64 3 d3))
(*.f64 d1 (+.f64 3 d3))
(*.f64 d1 (+.f64 3 d3))
(*.f64 d1 (+.f64 3 d3))
(*.f64 d1 (+.f64 3 d3))
(*.f64 d1 (+.f64 3 d3))
(*.f64 -1 (*.f64 d1 (-.f64 (*.f64 -1 d3) 3)))
(*.f64 -1 (*.f64 d1 (-.f64 (*.f64 -1 d3) 3)))
(*.f64 -1 (*.f64 d1 (-.f64 (*.f64 -1 d3) 3)))
(*.f64 -1 (*.f64 d1 (-.f64 (*.f64 -1 d3) 3)))
(*.f64 3 d1)
(+.f64 (*.f64 3 d1) (*.f64 d1 d3))
(+.f64 (*.f64 3 d1) (*.f64 d1 d3))
(+.f64 (*.f64 3 d1) (*.f64 d1 d3))
(*.f64 d1 d3)
(+.f64 (*.f64 3 d1) (*.f64 d1 d3))
(+.f64 (*.f64 3 d1) (*.f64 d1 d3))
(+.f64 (*.f64 3 d1) (*.f64 d1 d3))
(*.f64 d1 d3)
(+.f64 (*.f64 3 d1) (*.f64 d1 d3))
(+.f64 (*.f64 3 d1) (*.f64 d1 d3))
(+.f64 (*.f64 3 d1) (*.f64 d1 d3))
(+.f64 (*.f64 d1 d3) (*.f64 d1 3))
(+.f64 (*.f64 d1 3) (*.f64 d1 d3))
(+.f64 (*.f64 (*.f64 d1 3) 1) (*.f64 d1 d3))
(-.f64 (+.f64 1 (*.f64 d1 (+.f64 3 d3))) 1)
(*.f64 d1 (+.f64 3 d3))
(*.f64 (*.f64 d1 (+.f64 3 d3)) 1)
(*.f64 1 (*.f64 d1 (+.f64 3 d3)))
(*.f64 (sqrt.f64 (*.f64 d1 (+.f64 3 d3))) (sqrt.f64 (*.f64 d1 (+.f64 3 d3))))
(*.f64 (cbrt.f64 (*.f64 d1 (+.f64 3 d3))) (pow.f64 (cbrt.f64 (*.f64 d1 (+.f64 3 d3))) 2))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 d1 (+.f64 3 d3))) 2) (cbrt.f64 (*.f64 d1 (+.f64 3 d3))))
(/.f64 (-.f64 (*.f64 (*.f64 d1 3) (*.f64 d1 3)) (pow.f64 (*.f64 d1 d3) 2)) (-.f64 (*.f64 d1 3) (*.f64 d1 d3)))
(/.f64 (+.f64 (pow.f64 (*.f64 d1 3) 3) (pow.f64 (*.f64 d1 d3) 3)) (+.f64 (*.f64 (*.f64 d1 3) (*.f64 d1 3)) (-.f64 (pow.f64 (*.f64 d1 d3) 2) (*.f64 (*.f64 d1 3) (*.f64 d1 d3)))))
(pow.f64 (*.f64 d1 (+.f64 3 d3)) 1)
(pow.f64 (sqrt.f64 (*.f64 d1 (+.f64 3 d3))) 2)
(pow.f64 (cbrt.f64 (*.f64 d1 (+.f64 3 d3))) 3)
(pow.f64 (pow.f64 (*.f64 d1 (+.f64 3 d3)) 3) 1/3)
(sqrt.f64 (pow.f64 (*.f64 d1 (+.f64 3 d3)) 2))
(log.f64 (exp.f64 (*.f64 d1 (+.f64 3 d3))))
(cbrt.f64 (pow.f64 (*.f64 d1 (+.f64 3 d3)) 3))
(expm1.f64 (log1p.f64 (*.f64 d1 (+.f64 3 d3))))
(exp.f64 (log.f64 (*.f64 d1 (+.f64 3 d3))))
(exp.f64 (*.f64 (log.f64 (*.f64 d1 (+.f64 3 d3))) 1))
(log1p.f64 (expm1.f64 (*.f64 d1 (+.f64 3 d3))))
Outputs
(*.f64 d1 (+.f64 3 d3))
(*.f64 d1 (+.f64 3 d3))
(*.f64 d1 (+.f64 3 d3))
(*.f64 d1 (+.f64 3 d3))
(*.f64 d1 (+.f64 3 d3))
(*.f64 d1 (+.f64 3 d3))
(*.f64 d1 (+.f64 3 d3))
(*.f64 d1 (+.f64 3 d3))
(*.f64 -1 (*.f64 d1 (-.f64 (*.f64 -1 d3) 3)))
(*.f64 d1 (+.f64 3 d3))
(*.f64 -1 (*.f64 d1 (-.f64 (*.f64 -1 d3) 3)))
(*.f64 d1 (+.f64 3 d3))
(*.f64 -1 (*.f64 d1 (-.f64 (*.f64 -1 d3) 3)))
(*.f64 d1 (+.f64 3 d3))
(*.f64 -1 (*.f64 d1 (-.f64 (*.f64 -1 d3) 3)))
(*.f64 d1 (+.f64 3 d3))
(*.f64 3 d1)
(*.f64 d1 3)
(/.f64 d1 1/3)
(+.f64 (*.f64 3 d1) (*.f64 d1 d3))
(*.f64 d1 (+.f64 3 d3))
(+.f64 (*.f64 3 d1) (*.f64 d1 d3))
(*.f64 d1 (+.f64 3 d3))
(+.f64 (*.f64 3 d1) (*.f64 d1 d3))
(*.f64 d1 (+.f64 3 d3))
(*.f64 d1 d3)
(+.f64 (*.f64 3 d1) (*.f64 d1 d3))
(*.f64 d1 (+.f64 3 d3))
(+.f64 (*.f64 3 d1) (*.f64 d1 d3))
(*.f64 d1 (+.f64 3 d3))
(+.f64 (*.f64 3 d1) (*.f64 d1 d3))
(*.f64 d1 (+.f64 3 d3))
(*.f64 d1 d3)
(+.f64 (*.f64 3 d1) (*.f64 d1 d3))
(*.f64 d1 (+.f64 3 d3))
(+.f64 (*.f64 3 d1) (*.f64 d1 d3))
(*.f64 d1 (+.f64 3 d3))
(+.f64 (*.f64 3 d1) (*.f64 d1 d3))
(*.f64 d1 (+.f64 3 d3))
(+.f64 (*.f64 d1 d3) (*.f64 d1 3))
(*.f64 d1 (+.f64 3 d3))
(+.f64 (*.f64 d1 3) (*.f64 d1 d3))
(*.f64 d1 (+.f64 3 d3))
(+.f64 (*.f64 (*.f64 d1 3) 1) (*.f64 d1 d3))
(*.f64 d1 (+.f64 3 d3))
(-.f64 (+.f64 1 (*.f64 d1 (+.f64 3 d3))) 1)
(*.f64 d1 (+.f64 3 d3))
(*.f64 d1 (+.f64 3 d3))
(*.f64 (*.f64 d1 (+.f64 3 d3)) 1)
(*.f64 d1 (+.f64 3 d3))
(*.f64 1 (*.f64 d1 (+.f64 3 d3)))
(*.f64 d1 (+.f64 3 d3))
(*.f64 (sqrt.f64 (*.f64 d1 (+.f64 3 d3))) (sqrt.f64 (*.f64 d1 (+.f64 3 d3))))
(*.f64 d1 (+.f64 3 d3))
(*.f64 (cbrt.f64 (*.f64 d1 (+.f64 3 d3))) (pow.f64 (cbrt.f64 (*.f64 d1 (+.f64 3 d3))) 2))
(*.f64 d1 (+.f64 3 d3))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 d1 (+.f64 3 d3))) 2) (cbrt.f64 (*.f64 d1 (+.f64 3 d3))))
(*.f64 d1 (+.f64 3 d3))
(/.f64 (-.f64 (*.f64 (*.f64 d1 3) (*.f64 d1 3)) (pow.f64 (*.f64 d1 d3) 2)) (-.f64 (*.f64 d1 3) (*.f64 d1 d3)))
(*.f64 d1 (+.f64 3 d3))
(/.f64 (+.f64 (pow.f64 (*.f64 d1 3) 3) (pow.f64 (*.f64 d1 d3) 3)) (+.f64 (*.f64 (*.f64 d1 3) (*.f64 d1 3)) (-.f64 (pow.f64 (*.f64 d1 d3) 2) (*.f64 (*.f64 d1 3) (*.f64 d1 d3)))))
(/.f64 (+.f64 (*.f64 (pow.f64 d1 3) 27) (pow.f64 (*.f64 d1 d3) 3)) (+.f64 (*.f64 (*.f64 d1 d1) 9) (-.f64 (pow.f64 (*.f64 d1 d3) 2) (*.f64 d1 (*.f64 3 (*.f64 d1 d3))))))
(/.f64 (*.f64 (pow.f64 d1 3) (+.f64 27 (pow.f64 d3 3))) (fma.f64 d1 (*.f64 9 d1) (*.f64 (*.f64 d1 d3) (-.f64 (*.f64 d1 d3) (*.f64 d1 3)))))
(/.f64 (pow.f64 d1 3) (/.f64 (fma.f64 d1 (*.f64 d1 9) (*.f64 (*.f64 d1 d3) (*.f64 d1 (+.f64 d3 -3)))) (+.f64 (pow.f64 d3 3) 27)))
(*.f64 (/.f64 (pow.f64 d1 3) (*.f64 d1 (+.f64 (*.f64 d1 9) (*.f64 d3 (*.f64 d1 (+.f64 d3 -3)))))) (+.f64 (pow.f64 d3 3) 27))
(pow.f64 (*.f64 d1 (+.f64 3 d3)) 1)
(*.f64 d1 (+.f64 3 d3))
(pow.f64 (sqrt.f64 (*.f64 d1 (+.f64 3 d3))) 2)
(*.f64 d1 (+.f64 3 d3))
(pow.f64 (cbrt.f64 (*.f64 d1 (+.f64 3 d3))) 3)
(*.f64 d1 (+.f64 3 d3))
(pow.f64 (pow.f64 (*.f64 d1 (+.f64 3 d3)) 3) 1/3)
(*.f64 d1 (+.f64 3 d3))
(sqrt.f64 (pow.f64 (*.f64 d1 (+.f64 3 d3)) 2))
(*.f64 d1 (+.f64 3 d3))
(log.f64 (exp.f64 (*.f64 d1 (+.f64 3 d3))))
(*.f64 d1 (+.f64 3 d3))
(cbrt.f64 (pow.f64 (*.f64 d1 (+.f64 3 d3)) 3))
(*.f64 d1 (+.f64 3 d3))
(expm1.f64 (log1p.f64 (*.f64 d1 (+.f64 3 d3))))
(*.f64 d1 (+.f64 3 d3))
(exp.f64 (log.f64 (*.f64 d1 (+.f64 3 d3))))
(*.f64 d1 (+.f64 3 d3))
(exp.f64 (*.f64 (log.f64 (*.f64 d1 (+.f64 3 d3))) 1))
(*.f64 d1 (+.f64 3 d3))
(log1p.f64 (expm1.f64 (*.f64 d1 (+.f64 3 d3))))
(*.f64 d1 (+.f64 3 d3))

eval104.0ms (2.7%)

Compiler

Compiled 5201 to 3269 computations (37.1% saved)

prune49.0ms (1.3%)

Pruning

9 alts after pruning (2 fresh and 7 done)

PrunedKeptTotal
New2772279
Fresh000
Picked011
Done167
Total2789287
Error
0%
Counts
287 → 9
Alt Table
Click to see full alt table
StatusErrorProgram
33.15%
(fma.f64 d1 3 (*.f64 d1 d3))
60.88%
(/.f64 d1 (/.f64 1 d3))
69.58%
(/.f64 d1 1/3)
36.66%
(*.f64 (+.f64 d2 3) d1)
65.77%
(*.f64 d2 d1)
0.04%
(*.f64 d1 (+.f64 (+.f64 3 d2) d3))
33.13%
(*.f64 d1 (+.f64 3 d3))
60.69%
(*.f64 d1 d3)
69.47%
(*.f64 3 d1)
Compiler

Compiled 67 to 49 computations (26.9% saved)

localize3.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.56%
(/.f64 d1 1/3)
Compiler

Compiled 8 to 6 computations (25% saved)

series1.0ms (0%)

Counts
1 → 12
Calls

3 calls:

TimeVariablePointExpression
0.0ms
d1
@inf
(/.f64 d1 1/3)
0.0ms
d1
@-inf
(/.f64 d1 1/3)
0.0ms
d1
@0
(/.f64 d1 1/3)

rewrite50.0ms (1.3%)

Algorithm
batch-egg-rewrite
Rules
1016×add-sqr-sqrt
988×*-un-lft-identity
944×pow1
934×add-cube-cbrt
926×add-cbrt-cube
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
057
11087
212577
Stop Event
node limit
Counts
1 → 23
Calls
Call 1
Inputs
(/.f64 d1 1/3)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 d1 3)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 d1 3)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 d1 3) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 d1 3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 d1) (*.f64 (sqrt.f64 d1) 3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 d1 3)) (sqrt.f64 (*.f64 d1 3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 d1) 2) (*.f64 (cbrt.f64 d1) 3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 d1 3)) (pow.f64 (cbrt.f64 (*.f64 d1 3)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 d1 3)) 2) (cbrt.f64 (*.f64 d1 3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 3 d1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 d1) -3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 d1 3) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 d1 3)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 d1 3)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 d1 3) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1/3 d1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 d1 -1/3))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (*.f64 d1 d1) 9))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 d1) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 d1 3) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 d1 3)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 d1 3)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 d1 3)))))))

simplify46.0ms (1.2%)

Algorithm
egg-herbie
Rules
1260×associate-*r*
1012×associate-*l*
970×associate-+r+
940×log-prod
930×associate-+l+
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
055245
1131245
2503245
33322245
Stop Event
node limit
Counts
35 → 23
Calls
Call 1
Inputs
(*.f64 3 d1)
(*.f64 3 d1)
(*.f64 3 d1)
(*.f64 3 d1)
(*.f64 3 d1)
(*.f64 3 d1)
(*.f64 3 d1)
(*.f64 3 d1)
(*.f64 3 d1)
(*.f64 3 d1)
(*.f64 3 d1)
(*.f64 3 d1)
(-.f64 (+.f64 1 (*.f64 d1 3)) 1)
(*.f64 d1 3)
(*.f64 (*.f64 d1 3) 1)
(*.f64 1 (*.f64 d1 3))
(*.f64 (sqrt.f64 d1) (*.f64 (sqrt.f64 d1) 3))
(*.f64 (sqrt.f64 (*.f64 d1 3)) (sqrt.f64 (*.f64 d1 3)))
(*.f64 (pow.f64 (cbrt.f64 d1) 2) (*.f64 (cbrt.f64 d1) 3))
(*.f64 (cbrt.f64 (*.f64 d1 3)) (pow.f64 (cbrt.f64 (*.f64 d1 3)) 2))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 d1 3)) 2) (cbrt.f64 (*.f64 d1 3)))
(*.f64 3 d1)
(*.f64 (neg.f64 d1) -3)
(pow.f64 (*.f64 d1 3) 1)
(pow.f64 (sqrt.f64 (*.f64 d1 3)) 2)
(pow.f64 (cbrt.f64 (*.f64 d1 3)) 3)
(pow.f64 (pow.f64 (*.f64 d1 3) 3) 1/3)
(pow.f64 (/.f64 1/3 d1) -1)
(neg.f64 (/.f64 d1 -1/3))
(sqrt.f64 (*.f64 (*.f64 d1 d1) 9))
(log.f64 (pow.f64 (exp.f64 d1) 3))
(cbrt.f64 (pow.f64 (*.f64 d1 3) 3))
(expm1.f64 (log1p.f64 (*.f64 d1 3)))
(exp.f64 (log.f64 (*.f64 d1 3)))
(log1p.f64 (expm1.f64 (*.f64 d1 3)))
Outputs
(*.f64 3 d1)
(*.f64 3 d1)
(*.f64 3 d1)
(*.f64 3 d1)
(*.f64 3 d1)
(*.f64 3 d1)
(*.f64 3 d1)
(*.f64 3 d1)
(*.f64 3 d1)
(*.f64 3 d1)
(*.f64 3 d1)
(*.f64 3 d1)
(-.f64 (+.f64 1 (*.f64 d1 3)) 1)
(*.f64 3 d1)
(*.f64 d1 3)
(*.f64 3 d1)
(*.f64 (*.f64 d1 3) 1)
(*.f64 3 d1)
(*.f64 1 (*.f64 d1 3))
(*.f64 3 d1)
(*.f64 (sqrt.f64 d1) (*.f64 (sqrt.f64 d1) 3))
(*.f64 3 d1)
(*.f64 (sqrt.f64 (*.f64 d1 3)) (sqrt.f64 (*.f64 d1 3)))
(*.f64 3 d1)
(*.f64 (pow.f64 (cbrt.f64 d1) 2) (*.f64 (cbrt.f64 d1) 3))
(*.f64 3 d1)
(*.f64 (cbrt.f64 (*.f64 d1 3)) (pow.f64 (cbrt.f64 (*.f64 d1 3)) 2))
(*.f64 3 d1)
(*.f64 (pow.f64 (cbrt.f64 (*.f64 d1 3)) 2) (cbrt.f64 (*.f64 d1 3)))
(*.f64 3 d1)
(*.f64 3 d1)
(*.f64 (neg.f64 d1) -3)
(*.f64 3 d1)
(pow.f64 (*.f64 d1 3) 1)
(*.f64 3 d1)
(pow.f64 (sqrt.f64 (*.f64 d1 3)) 2)
(*.f64 3 d1)
(pow.f64 (cbrt.f64 (*.f64 d1 3)) 3)
(*.f64 3 d1)
(pow.f64 (pow.f64 (*.f64 d1 3) 3) 1/3)
(*.f64 3 d1)
(pow.f64 (/.f64 1/3 d1) -1)
(*.f64 3 d1)
(neg.f64 (/.f64 d1 -1/3))
(*.f64 3 d1)
(sqrt.f64 (*.f64 (*.f64 d1 d1) 9))
(*.f64 3 d1)
(log.f64 (pow.f64 (exp.f64 d1) 3))
(*.f64 3 d1)
(cbrt.f64 (pow.f64 (*.f64 d1 3) 3))
(*.f64 3 d1)
(expm1.f64 (log1p.f64 (*.f64 d1 3)))
(*.f64 3 d1)
(exp.f64 (log.f64 (*.f64 d1 3)))
(*.f64 3 d1)
(log1p.f64 (expm1.f64 (*.f64 d1 3)))
(*.f64 3 d1)

localize5.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.4%
(/.f64 d1 (/.f64 1 d3))
Compiler

Compiled 14 to 9 computations (35.7% saved)

series1.0ms (0%)

Counts
1 → 24
Calls

6 calls:

TimeVariablePointExpression
0.0ms
d3
@inf
(/.f64 d1 (/.f64 1 d3))
0.0ms
d3
@-inf
(/.f64 d1 (/.f64 1 d3))
0.0ms
d3
@0
(/.f64 d1 (/.f64 1 d3))
0.0ms
d1
@0
(/.f64 d1 (/.f64 1 d3))
0.0ms
d1
@-inf
(/.f64 d1 (/.f64 1 d3))

rewrite54.0ms (1.4%)

Algorithm
batch-egg-rewrite
Rules
1414×add-sqr-sqrt
1398×*-un-lft-identity
1302×add-cube-cbrt
1286×add-cbrt-cube
1272×add-exp-log
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0713
11457
218947
Stop Event
node limit
Counts
1 → 34
Calls
Call 1
Inputs
(/.f64 d1 (/.f64 1 d3))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 d1 d3)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 d1 d3)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 d1 d3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 d1 d3) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 d1) (*.f64 (sqrt.f64 d1) d3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 d1 d3)) (sqrt.f64 (*.f64 d1 d3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 d1) 2) (*.f64 (cbrt.f64 d1) d3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 d1 d3)) (pow.f64 (cbrt.f64 (*.f64 d1 d3)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 d1 d3)) 2) (cbrt.f64 (*.f64 d1 d3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 d3 d1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 d1) (/.f64 1 (/.f64 -1 d3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 d1 (sqrt.f64 d3)) (sqrt.f64 d3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 d1 (pow.f64 (cbrt.f64 d3) 2)) (cbrt.f64 d3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 d3 -1/2)) (/.f64 d1 (pow.f64 d3 -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cbrt.f64 (pow.f64 d3 -2))) (/.f64 d1 (/.f64 1 (cbrt.f64 d3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 d1 -1) (neg.f64 d3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 d1) 1) (/.f64 (sqrt.f64 d1) (/.f64 1 d3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 d1) (cbrt.f64 (pow.f64 d3 -2))) (/.f64 (sqrt.f64 d1) (/.f64 1 (cbrt.f64 d3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 d1) 2) 1) (/.f64 (cbrt.f64 d1) (/.f64 1 d3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 d1) 2) (pow.f64 d3 -1/2)) (/.f64 (cbrt.f64 d1) (pow.f64 d3 -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 d1) 2) (cbrt.f64 (pow.f64 d3 -2))) (cbrt.f64 (*.f64 d1 d3)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 d1 d3) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 d1 d3)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 d1 d3)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 d1 d3) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1 (*.f64 d1 d3)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 d1 (/.f64 -1 d3)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 d1 d3) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (*.f64 d1 d3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 d1 d3) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 d1 d3)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 d1 d3)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 d1 d3)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 d1 d3)))))))

simplify49.0ms (1.3%)

Algorithm
egg-herbie
Rules
888×distribute-lft-in
854×associate-+r+
836×distribute-rgt-in
726×associate-+l+
636×*-commutative
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
092506
1238482
2896482
33256482
Stop Event
node limit
Counts
58 → 41
Calls
Call 1
Inputs
(*.f64 d1 d3)
(*.f64 d1 d3)
(*.f64 d1 d3)
(*.f64 d1 d3)
(*.f64 d1 d3)
(*.f64 d1 d3)
(*.f64 d1 d3)
(*.f64 d1 d3)
(*.f64 d1 d3)
(*.f64 d1 d3)
(*.f64 d1 d3)
(*.f64 d1 d3)
(*.f64 d1 d3)
(*.f64 d1 d3)
(*.f64 d1 d3)
(*.f64 d1 d3)
(*.f64 d1 d3)
(*.f64 d1 d3)
(*.f64 d1 d3)
(*.f64 d1 d3)
(*.f64 d1 d3)
(*.f64 d1 d3)
(*.f64 d1 d3)
(*.f64 d1 d3)
(-.f64 (+.f64 1 (*.f64 d1 d3)) 1)
(*.f64 d1 d3)
(*.f64 1 (*.f64 d1 d3))
(*.f64 (*.f64 d1 d3) 1)
(*.f64 (sqrt.f64 d1) (*.f64 (sqrt.f64 d1) d3))
(*.f64 (sqrt.f64 (*.f64 d1 d3)) (sqrt.f64 (*.f64 d1 d3)))
(*.f64 (pow.f64 (cbrt.f64 d1) 2) (*.f64 (cbrt.f64 d1) d3))
(*.f64 (cbrt.f64 (*.f64 d1 d3)) (pow.f64 (cbrt.f64 (*.f64 d1 d3)) 2))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 d1 d3)) 2) (cbrt.f64 (*.f64 d1 d3)))
(*.f64 d3 d1)
(*.f64 (neg.f64 d1) (/.f64 1 (/.f64 -1 d3)))
(*.f64 (*.f64 d1 (sqrt.f64 d3)) (sqrt.f64 d3))
(*.f64 (*.f64 d1 (pow.f64 (cbrt.f64 d3) 2)) (cbrt.f64 d3))
(*.f64 (/.f64 1 (pow.f64 d3 -1/2)) (/.f64 d1 (pow.f64 d3 -1/2)))
(*.f64 (/.f64 1 (cbrt.f64 (pow.f64 d3 -2))) (/.f64 d1 (/.f64 1 (cbrt.f64 d3))))
(*.f64 (/.f64 d1 -1) (neg.f64 d3))
(*.f64 (/.f64 (sqrt.f64 d1) 1) (/.f64 (sqrt.f64 d1) (/.f64 1 d3)))
(*.f64 (/.f64 (sqrt.f64 d1) (cbrt.f64 (pow.f64 d3 -2))) (/.f64 (sqrt.f64 d1) (/.f64 1 (cbrt.f64 d3))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 d1) 2) 1) (/.f64 (cbrt.f64 d1) (/.f64 1 d3)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 d1) 2) (pow.f64 d3 -1/2)) (/.f64 (cbrt.f64 d1) (pow.f64 d3 -1/2)))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 d1) 2) (cbrt.f64 (pow.f64 d3 -2))) (cbrt.f64 (*.f64 d1 d3)))
(pow.f64 (*.f64 d1 d3) 1)
(pow.f64 (sqrt.f64 (*.f64 d1 d3)) 2)
(pow.f64 (cbrt.f64 (*.f64 d1 d3)) 3)
(pow.f64 (pow.f64 (*.f64 d1 d3) 3) 1/3)
(pow.f64 (/.f64 1 (*.f64 d1 d3)) -1)
(neg.f64 (/.f64 d1 (/.f64 -1 d3)))
(sqrt.f64 (pow.f64 (*.f64 d1 d3) 2))
(log.f64 (exp.f64 (*.f64 d1 d3)))
(cbrt.f64 (pow.f64 (*.f64 d1 d3) 3))
(expm1.f64 (log1p.f64 (*.f64 d1 d3)))
(exp.f64 (log.f64 (*.f64 d1 d3)))
(exp.f64 (*.f64 (log.f64 (*.f64 d1 d3)) 1))
(log1p.f64 (expm1.f64 (*.f64 d1 d3)))
Outputs
(*.f64 d1 d3)
(*.f64 d1 d3)
(*.f64 d1 d3)
(*.f64 d1 d3)
(*.f64 d1 d3)
(*.f64 d1 d3)
(*.f64 d1 d3)
(*.f64 d1 d3)
(*.f64 d1 d3)
(*.f64 d1 d3)
(*.f64 d1 d3)
(*.f64 d1 d3)
(*.f64 d1 d3)
(*.f64 d1 d3)
(*.f64 d1 d3)
(*.f64 d1 d3)
(*.f64 d1 d3)
(*.f64 d1 d3)
(*.f64 d1 d3)
(*.f64 d1 d3)
(*.f64 d1 d3)
(*.f64 d1 d3)
(*.f64 d1 d3)
(*.f64 d1 d3)
(-.f64 (+.f64 1 (*.f64 d1 d3)) 1)
(*.f64 d1 d3)
(*.f64 d1 d3)
(*.f64 1 (*.f64 d1 d3))
(*.f64 d1 d3)
(*.f64 (*.f64 d1 d3) 1)
(*.f64 d1 d3)
(*.f64 (sqrt.f64 d1) (*.f64 (sqrt.f64 d1) d3))
(*.f64 d1 d3)
(*.f64 (sqrt.f64 (*.f64 d1 d3)) (sqrt.f64 (*.f64 d1 d3)))
(*.f64 d1 d3)
(*.f64 (pow.f64 (cbrt.f64 d1) 2) (*.f64 (cbrt.f64 d1) d3))
(*.f64 d1 d3)
(*.f64 (cbrt.f64 (*.f64 d1 d3)) (pow.f64 (cbrt.f64 (*.f64 d1 d3)) 2))
(*.f64 d1 d3)
(*.f64 (pow.f64 (cbrt.f64 (*.f64 d1 d3)) 2) (cbrt.f64 (*.f64 d1 d3)))
(*.f64 d1 d3)
(*.f64 d3 d1)
(*.f64 d1 d3)
(*.f64 (neg.f64 d1) (/.f64 1 (/.f64 -1 d3)))
(*.f64 d1 d3)
(*.f64 (*.f64 d1 (sqrt.f64 d3)) (sqrt.f64 d3))
(*.f64 d1 d3)
(*.f64 (*.f64 d1 (pow.f64 (cbrt.f64 d3) 2)) (cbrt.f64 d3))
(*.f64 d1 d3)
(*.f64 (/.f64 1 (pow.f64 d3 -1/2)) (/.f64 d1 (pow.f64 d3 -1/2)))
(*.f64 d1 d3)
(*.f64 (/.f64 1 (cbrt.f64 (pow.f64 d3 -2))) (/.f64 d1 (/.f64 1 (cbrt.f64 d3))))
(/.f64 (*.f64 1 (*.f64 (/.f64 d1 1) (cbrt.f64 d3))) (cbrt.f64 (pow.f64 d3 -2)))
(/.f64 (*.f64 d1 (cbrt.f64 d3)) (cbrt.f64 (pow.f64 d3 -2)))
(*.f64 (cbrt.f64 d3) (/.f64 d1 (cbrt.f64 (pow.f64 d3 -2))))
(/.f64 (cbrt.f64 d3) (/.f64 (cbrt.f64 (pow.f64 d3 -2)) d1))
(*.f64 (/.f64 d1 -1) (neg.f64 d3))
(*.f64 d1 d3)
(*.f64 (/.f64 (sqrt.f64 d1) 1) (/.f64 (sqrt.f64 d1) (/.f64 1 d3)))
(*.f64 d1 d3)
(*.f64 (/.f64 (sqrt.f64 d1) (cbrt.f64 (pow.f64 d3 -2))) (/.f64 (sqrt.f64 d1) (/.f64 1 (cbrt.f64 d3))))
(/.f64 (*.f64 1 (*.f64 (/.f64 d1 1) (cbrt.f64 d3))) (cbrt.f64 (pow.f64 d3 -2)))
(/.f64 (*.f64 d1 (cbrt.f64 d3)) (cbrt.f64 (pow.f64 d3 -2)))
(*.f64 (cbrt.f64 d3) (/.f64 d1 (cbrt.f64 (pow.f64 d3 -2))))
(/.f64 (cbrt.f64 d3) (/.f64 (cbrt.f64 (pow.f64 d3 -2)) d1))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 d1) 2) 1) (/.f64 (cbrt.f64 d1) (/.f64 1 d3)))
(*.f64 d1 d3)
(*.f64 (/.f64 (pow.f64 (cbrt.f64 d1) 2) (pow.f64 d3 -1/2)) (/.f64 (cbrt.f64 d1) (pow.f64 d3 -1/2)))
(*.f64 d1 d3)
(*.f64 (/.f64 (pow.f64 (cbrt.f64 d1) 2) (cbrt.f64 (pow.f64 d3 -2))) (cbrt.f64 (*.f64 d1 d3)))
(*.f64 (cbrt.f64 (*.f64 d1 d3)) (/.f64 (pow.f64 (cbrt.f64 d1) 2) (cbrt.f64 (pow.f64 d3 -2))))
(/.f64 (*.f64 (pow.f64 (cbrt.f64 d1) 2) (cbrt.f64 (*.f64 d1 d3))) (cbrt.f64 (pow.f64 d3 -2)))
(/.f64 (pow.f64 (cbrt.f64 d1) 2) (/.f64 (cbrt.f64 (pow.f64 d3 -2)) (cbrt.f64 (*.f64 d1 d3))))
(pow.f64 (*.f64 d1 d3) 1)
(*.f64 d1 d3)
(pow.f64 (sqrt.f64 (*.f64 d1 d3)) 2)
(*.f64 d1 d3)
(pow.f64 (cbrt.f64 (*.f64 d1 d3)) 3)
(*.f64 d1 d3)
(pow.f64 (pow.f64 (*.f64 d1 d3) 3) 1/3)
(*.f64 d1 d3)
(pow.f64 (/.f64 1 (*.f64 d1 d3)) -1)
(*.f64 d1 d3)
(neg.f64 (/.f64 d1 (/.f64 -1 d3)))
(*.f64 d1 d3)
(sqrt.f64 (pow.f64 (*.f64 d1 d3) 2))
(*.f64 d1 d3)
(log.f64 (exp.f64 (*.f64 d1 d3)))
(*.f64 d1 d3)
(cbrt.f64 (pow.f64 (*.f64 d1 d3) 3))
(*.f64 d1 d3)
(expm1.f64 (log1p.f64 (*.f64 d1 d3)))
(*.f64 d1 d3)
(exp.f64 (log.f64 (*.f64 d1 d3)))
(*.f64 d1 d3)
(exp.f64 (*.f64 (log.f64 (*.f64 d1 d3)) 1))
(*.f64 d1 d3)
(log1p.f64 (expm1.f64 (*.f64 d1 d3)))
(*.f64 d1 d3)

eval12.0ms (0.3%)

Compiler

Compiled 492 to 288 computations (41.5% saved)

prune16.0ms (0.4%)

Pruning

9 alts after pruning (0 fresh and 9 done)

PrunedKeptTotal
New64064
Fresh000
Picked011
Done088
Total64973
Error
0%
Counts
73 → 9
Alt Table
Click to see full alt table
StatusErrorProgram
33.15%
(fma.f64 d1 3 (*.f64 d1 d3))
60.88%
(/.f64 d1 (/.f64 1 d3))
69.58%
(/.f64 d1 1/3)
36.66%
(*.f64 (+.f64 d2 3) d1)
65.77%
(*.f64 d2 d1)
0.04%
(*.f64 d1 (+.f64 (+.f64 3 d2) d3))
33.13%
(*.f64 d1 (+.f64 3 d3))
60.69%
(*.f64 d1 d3)
69.47%
(*.f64 3 d1)
Compiler

Compiled 67 to 49 computations (26.9% saved)

regimes34.0ms (0.9%)

Counts
12 → 1
Calls
Call 1
Inputs
(*.f64 3 d1)
(*.f64 d1 d3)
(*.f64 d2 d1)
(/.f64 d1 1/3)
(*.f64 d1 (+.f64 3 d3))
(*.f64 (+.f64 d2 3) d1)
(/.f64 d1 (/.f64 1 d3))
(*.f64 d1 (+.f64 (+.f64 3 d2) d3))
(/.f64 d1 (/.f64 1 (+.f64 3 (+.f64 d2 d3))))
(+.f64 (+.f64 (*.f64 d1 3) (*.f64 d1 d2)) (*.f64 d1 d3))
(fma.f64 d1 3 (*.f64 d1 d3))
(fma.f64 (+.f64 3 d2) d1 (*.f64 d1 d3))
Outputs
(*.f64 d1 (+.f64 (+.f64 3 d2) d3))
Calls

4 calls:

8.0ms
(+.f64 (+.f64 (*.f64 d1 3) (*.f64 d1 d2)) (*.f64 d1 d3))
8.0ms
d2
8.0ms
d1
7.0ms
d3
Results
ErrorSegmentsBranch
0.04%1d1
0.04%1d2
0.04%1d3
0.04%1(+.f64 (+.f64 (*.f64 d1 3) (*.f64 d1 d2)) (*.f64 d1 d3))
Compiler

Compiled 97 to 56 computations (42.3% saved)

regimes49.0ms (1.3%)

Counts
7 → 2
Calls
Call 1
Inputs
(*.f64 3 d1)
(*.f64 d1 d3)
(*.f64 d2 d1)
(/.f64 d1 1/3)
(*.f64 d1 (+.f64 3 d3))
(*.f64 (+.f64 d2 3) d1)
(/.f64 d1 (/.f64 1 d3))
Outputs
(*.f64 (+.f64 d2 3) d1)
(*.f64 d1 (+.f64 3 d3))
Calls

3 calls:

23.0ms
d1
14.0ms
d3
10.0ms
d2
Results
ErrorSegmentsBranch
25.19%5d1
6.02%2d2
6.87%2d3
Compiler

Compiled 42 to 27 computations (35.7% saved)

bsearch15.0ms (0.4%)

Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
14.0ms
-2.572982215870297e-10
-3.899994154136565e-11
Results
13.0ms96×body256valid
Compiler

Compiled 128 to 98 computations (23.4% saved)

regimes27.0ms (0.7%)

Counts
5 → 2
Calls
Call 1
Inputs
(*.f64 3 d1)
(*.f64 d1 d3)
(*.f64 d2 d1)
(/.f64 d1 1/3)
(*.f64 d1 (+.f64 3 d3))
Outputs
(*.f64 d2 d1)
(*.f64 d1 (+.f64 3 d3))
Calls

3 calls:

12.0ms
d3
9.0ms
d2
4.0ms
d1
Results
ErrorSegmentsBranch
33.13%1d1
7.61%2d2
21.12%2d3
Compiler

Compiled 32 to 21 computations (34.4% saved)

bsearch16.0ms (0.4%)

Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
16.0ms
-311.2839577091998
-0.01423809060819503
Results
14.0ms128×body256valid
Compiler

Compiled 148 to 110 computations (25.7% saved)

regimes98.0ms (2.6%)

Counts
4 → 3
Calls
Call 1
Inputs
(*.f64 3 d1)
(*.f64 d1 d3)
(*.f64 d2 d1)
(/.f64 d1 1/3)
Outputs
(*.f64 d2 d1)
(*.f64 3 d1)
(*.f64 d1 d3)
Calls

3 calls:

70.0ms
d1
16.0ms
d2
11.0ms
d3
Results
ErrorSegmentsBranch
47.02%13d1
25.68%3d2
22.82%3d3
Compiler

Compiled 27 to 18 computations (33.3% saved)

bsearch34.0ms (0.9%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
14.0ms
2.0000888827047474
15757.503806393945
20.0ms
-4.191097388870352e-228
-1.2695829865971495e-236
Results
27.0ms258×body256valid
3.0msbody1024valid
1.0msbody512valid
Compiler

Compiled 258 to 201 computations (22.1% saved)

regimes45.0ms (1.2%)

Accuracy

Total -38.8b remaining (-172.6%)

Threshold costs -38.8b (-172.6%)

Counts
2 → 2
Calls
Call 1
Inputs
(*.f64 3 d1)
(*.f64 d1 d3)
Outputs
(*.f64 3 d1)
(*.f64 d1 d3)
Calls

3 calls:

25.0ms
d1
12.0ms
d2
7.0ms
d3
Results
ErrorSegmentsBranch
50.31%9d1
50.21%3d2
35.12%2d3
Compiler

Compiled 21 to 15 computations (28.6% saved)

bsearch15.0ms (0.4%)

Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
15.0ms
2.0000888827047474
15757.503806393945
Results
14.0ms128×body256valid
Compiler

Compiled 132 to 102 computations (22.7% saved)

simplify6.0ms (0.2%)

Algorithm
egg-herbie
Rules
12×*-commutative
+-commutative
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
030152
139152
Stop Event
done
saturated
Calls
Call 1
Inputs
(*.f64 d1 (+.f64 (+.f64 3 d2) d3))
(if (<=.f64 d2 -4835703278458517/19342813113834066795298816) (*.f64 (+.f64 d2 3) d1) (*.f64 d1 (+.f64 3 d3)))
(if (<=.f64 d2 -300) (*.f64 d2 d1) (*.f64 d1 (+.f64 3 d3)))
(if (<=.f64 d3 -7647412392781247/27312187117075883106631072934794271937104930088205959824983071996985496526101020964951786294769886374883040913790702552866360531575272919369168306390347079868805765445689403631464768659094790245289840706092591521717005303961503585448607241732096) (*.f64 d2 d1) (if (<=.f64 d3 3) (*.f64 3 d1) (*.f64 d1 d3)))
(if (<=.f64 d3 3) (*.f64 3 d1) (*.f64 d1 d3))
(*.f64 3 d1)
Outputs
(*.f64 d1 (+.f64 (+.f64 3 d2) d3))
(if (<=.f64 d2 -4835703278458517/19342813113834066795298816) (*.f64 (+.f64 d2 3) d1) (*.f64 d1 (+.f64 3 d3)))
(if (<=.f64 d2 -4835703278458517/19342813113834066795298816) (*.f64 d1 (+.f64 3 d2)) (*.f64 d1 (+.f64 3 d3)))
(if (<=.f64 d2 -300) (*.f64 d2 d1) (*.f64 d1 (+.f64 3 d3)))
(if (<=.f64 d2 -300) (*.f64 d1 d2) (*.f64 d1 (+.f64 3 d3)))
(if (<=.f64 d3 -7647412392781247/27312187117075883106631072934794271937104930088205959824983071996985496526101020964951786294769886374883040913790702552866360531575272919369168306390347079868805765445689403631464768659094790245289840706092591521717005303961503585448607241732096) (*.f64 d2 d1) (if (<=.f64 d3 3) (*.f64 3 d1) (*.f64 d1 d3)))
(if (<=.f64 d3 -7647412392781247/27312187117075883106631072934794271937104930088205959824983071996985496526101020964951786294769886374883040913790702552866360531575272919369168306390347079868805765445689403631464768659094790245289840706092591521717005303961503585448607241732096) (*.f64 d1 d2) (if (<=.f64 d3 3) (*.f64 d1 3) (*.f64 d1 d3)))
(if (<=.f64 d3 3) (*.f64 3 d1) (*.f64 d1 d3))
(if (<=.f64 d3 3) (*.f64 d1 3) (*.f64 d1 d3))
(*.f64 3 d1)
(*.f64 d1 3)
Compiler

Compiled 81 to 56 computations (30.9% saved)

soundness15.0ms (0.4%)

Algorithm
egg-herbie
Rules
48×fma-def
22×+-commutative
14×*-commutative
12×distribute-lft-out
associate-+l+
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01125
12219
24619
36819
47219
57319
Stop Event
saturated
Compiler

Compiled 30 to 17 computations (43.3% saved)

end43.0ms (1.1%)

Remove

(sort d2 d3)

Compiler

Compiled 86 to 53 computations (38.4% saved)

Profiling

Loading profile data...