Expression, p14

Time bar (total: 3.8s)

analyze0.0ms (0%)

Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%0%100%0%0%0%0
100%0%0%100%0%0%0%1
Compiler

Compiled 42 to 30 computations (28.6% saved)

sample1.6s (40.6%)

Results
1.5s8256×body256valid
Bogosity

preprocess405.0ms (10.5%)

Algorithm
egg-herbie
Rules
4204×fma-def
1182×unsub-neg
744×distribute-lft-in
696×distribute-rgt-in
512×sub-neg
Problems
256×No Errors
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
049520
1177512
2608500
31812500
43738500
54571500
65027500
75049500
85049500
95068500
105068500
115068500
126951500
136951500
146951500
Stop Event
saturated
Calls
Call 1
Inputs
(*.f64 a (+.f64 (+.f64 b c) d))
(*.f64 a (+.f64 (+.f64 b c) d))
(*.f64 (neg.f64 a) (+.f64 (+.f64 b c) d))
(*.f64 a (+.f64 (+.f64 (neg.f64 b) c) d))
(*.f64 a (+.f64 (+.f64 b (neg.f64 c)) d))
(*.f64 a (+.f64 (+.f64 b c) (neg.f64 d)))
(neg.f64 (*.f64 (neg.f64 a) (+.f64 (+.f64 b c) d)))
(neg.f64 (*.f64 a (+.f64 (+.f64 (neg.f64 b) c) d)))
(neg.f64 (*.f64 a (+.f64 (+.f64 b (neg.f64 c)) d)))
(neg.f64 (*.f64 a (+.f64 (+.f64 b c) (neg.f64 d))))
(*.f64 b (+.f64 (+.f64 a c) d))
(*.f64 c (+.f64 (+.f64 b a) d))
(*.f64 d (+.f64 (+.f64 b c) a))
(*.f64 a (+.f64 (+.f64 c b) d))
(*.f64 a (+.f64 (+.f64 d c) b))
(*.f64 a (+.f64 (+.f64 b d) c))
Outputs
(*.f64 a (+.f64 (+.f64 b c) d))
(*.f64 a (+.f64 c (+.f64 b d)))
(*.f64 a (+.f64 (+.f64 b c) d))
(*.f64 a (+.f64 c (+.f64 b d)))
(*.f64 (neg.f64 a) (+.f64 (+.f64 b c) d))
(*.f64 (+.f64 c (+.f64 b d)) (neg.f64 a))
(*.f64 a (+.f64 (+.f64 (neg.f64 b) c) d))
(*.f64 a (+.f64 d (+.f64 c (neg.f64 b))))
(*.f64 a (+.f64 d (-.f64 c b)))
(*.f64 a (-.f64 (+.f64 c d) b))
(*.f64 a (-.f64 d (-.f64 b c)))
(*.f64 a (+.f64 (+.f64 b (neg.f64 c)) d))
(*.f64 a (+.f64 d (-.f64 b c)))
(*.f64 a (+.f64 b (-.f64 d c)))
(*.f64 a (+.f64 (+.f64 b c) (neg.f64 d)))
(*.f64 a (-.f64 (+.f64 b c) d))
(*.f64 a (+.f64 b (-.f64 c d)))
(neg.f64 (*.f64 (neg.f64 a) (+.f64 (+.f64 b c) d)))
(*.f64 a (+.f64 c (+.f64 b d)))
(neg.f64 (*.f64 a (+.f64 (+.f64 (neg.f64 b) c) d)))
(*.f64 a (neg.f64 (+.f64 d (+.f64 c (neg.f64 b)))))
(*.f64 a (neg.f64 (+.f64 d (-.f64 c b))))
(*.f64 a (-.f64 b (+.f64 c d)))
(neg.f64 (*.f64 a (+.f64 (+.f64 b (neg.f64 c)) d)))
(*.f64 (neg.f64 a) (+.f64 d (-.f64 b c)))
(*.f64 a (-.f64 (-.f64 c d) b))
(*.f64 a (-.f64 c (+.f64 b d)))
(neg.f64 (*.f64 a (+.f64 (+.f64 b c) (neg.f64 d))))
(*.f64 a (neg.f64 (-.f64 (+.f64 b c) d)))
(*.f64 a (neg.f64 (+.f64 b (-.f64 c d))))
(*.f64 a (-.f64 d (+.f64 b c)))
(*.f64 b (+.f64 (+.f64 a c) d))
(*.f64 b (+.f64 a (+.f64 c d)))
(*.f64 c (+.f64 (+.f64 b a) d))
(*.f64 c (+.f64 b (+.f64 a d)))
(*.f64 c (+.f64 a (+.f64 b d)))
(*.f64 d (+.f64 (+.f64 b c) a))
(*.f64 d (+.f64 a (+.f64 b c)))
(*.f64 d (+.f64 b (+.f64 a c)))
(*.f64 a (+.f64 (+.f64 c b) d))
(*.f64 a (+.f64 c (+.f64 b d)))
(*.f64 a (+.f64 (+.f64 d c) b))
(*.f64 a (+.f64 c (+.f64 b d)))
(*.f64 a (+.f64 (+.f64 b d) c))
(*.f64 a (+.f64 c (+.f64 b d)))
Symmetry

(negabs a)

(sort b c d)

Compiler

Compiled 35 to 15 computations (57.1% saved)

eval0.0ms (0%)

Compiler

Compiled 11 to 7 computations (36.4% saved)

prune1.0ms (0%)

Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(*.f64 a (+.f64 (+.f64 b c) d))
100.0%
(*.f64 a (+.f64 (+.f64 b c) d))
Compiler

Compiled 22 to 14 computations (36.4% saved)

localize31.0ms (0.8%)

Localize:

Found 1 expressions with local error:

NewAccuracyProgram
100.0%
(*.f64 a (+.f64 (+.f64 b c) d))
Compiler

Compiled 24 to 8 computations (66.7% saved)

series5.0ms (0.1%)

Counts
1 → 48
Calls

12 calls:

TimeVariablePointExpression
1.0ms
a
@0
(*.f64 a (+.f64 (+.f64 b c) d))
1.0ms
b
@-inf
(*.f64 a (+.f64 (+.f64 b c) d))
0.0ms
a
@-inf
(*.f64 a (+.f64 (+.f64 b c) d))
0.0ms
b
@inf
(*.f64 a (+.f64 (+.f64 b c) d))
0.0ms
a
@inf
(*.f64 a (+.f64 (+.f64 b c) d))

rewrite279.0ms (7.3%)

Algorithm
batch-egg-rewrite
Rules
990×log1p-expm1-u
990×expm1-log1p-u
978×fma-def
862×log-prod
370×fma-neg
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01431
117431
2261231
Stop Event
node limit
Counts
1 → 63
Calls
Call 1
Inputs
(*.f64 a (+.f64 (+.f64 b c) d))
Outputs
(+.f64 (*.f64 a (+.f64 b c)) (*.f64 a d))
(+.f64 (*.f64 a d) (*.f64 a (+.f64 b c)))
(+.f64 0 (*.f64 a (+.f64 b (+.f64 c d))))
(+.f64 (*.f64 a b) (*.f64 a (+.f64 c d)))
(+.f64 (*.f64 b a) (*.f64 (+.f64 c d) a))
(+.f64 (*.f64 (*.f64 a (+.f64 b c)) 1) (*.f64 (*.f64 a d) 1))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (+.f64 b (+.f64 c d))) a)) (cbrt.f64 (pow.f64 (exp.f64 (+.f64 b (+.f64 c d))) a)))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (+.f64 b (+.f64 c d))) a))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (+.f64 b (+.f64 c d))) a))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (+.f64 b (+.f64 c d))) a))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 a (+.f64 b (+.f64 c d))))) 1)
(/.f64 (+.f64 (pow.f64 (*.f64 a (+.f64 b c)) 3) (pow.f64 (*.f64 a d) 3)) (fma.f64 (*.f64 a (+.f64 b c)) (*.f64 a (+.f64 b c)) (-.f64 (*.f64 (*.f64 a d) (*.f64 a d)) (*.f64 (*.f64 a (+.f64 b c)) (*.f64 a d)))))
(/.f64 (fma.f64 (*.f64 a (+.f64 b c)) (*.f64 a (+.f64 b c)) (neg.f64 (*.f64 (*.f64 a d) (*.f64 a d)))) (-.f64 (*.f64 a (+.f64 b c)) (*.f64 a d)))
(/.f64 (*.f64 a (+.f64 (pow.f64 (+.f64 b c) 3) (pow.f64 d 3))) (fma.f64 d (-.f64 d (+.f64 b c)) (pow.f64 (+.f64 b c) 2)))
(/.f64 (*.f64 a (-.f64 (pow.f64 (+.f64 b c) 2) (pow.f64 d 2))) (+.f64 b (-.f64 c d)))
(/.f64 (*.f64 (+.f64 (pow.f64 (+.f64 b c) 3) (pow.f64 d 3)) a) (fma.f64 d (-.f64 d (+.f64 b c)) (pow.f64 (+.f64 b c) 2)))
(/.f64 (*.f64 (-.f64 (pow.f64 (+.f64 b c) 2) (pow.f64 d 2)) a) (+.f64 b (-.f64 c d)))
(pow.f64 (*.f64 a (+.f64 b (+.f64 c d))) 1)
(pow.f64 (cbrt.f64 (*.f64 a (+.f64 b (+.f64 c d)))) 3)
(pow.f64 (pow.f64 (*.f64 a (+.f64 b (+.f64 c d))) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 a (+.f64 b (+.f64 c d)))) 2)
(sqrt.f64 (pow.f64 (*.f64 a (+.f64 b (+.f64 c d))) 2))
(log.f64 (pow.f64 (exp.f64 (+.f64 b (+.f64 c d))) a))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 a (+.f64 b (+.f64 c d))))))
(log.f64 (*.f64 (exp.f64 (*.f64 a d)) (exp.f64 (*.f64 a (+.f64 b c)))))
(cbrt.f64 (pow.f64 (*.f64 a (+.f64 b (+.f64 c d))) 3))
(cbrt.f64 (*.f64 (pow.f64 a 3) (pow.f64 (+.f64 b (+.f64 c d)) 3)))
(cbrt.f64 (*.f64 (pow.f64 (+.f64 b (+.f64 c d)) 3) (pow.f64 a 3)))
(expm1.f64 (log1p.f64 (*.f64 a (+.f64 b (+.f64 c d)))))
(exp.f64 (log.f64 (*.f64 a (+.f64 b (+.f64 c d)))))
(exp.f64 (*.f64 (log.f64 (*.f64 a (+.f64 b (+.f64 c d)))) 1))
(log1p.f64 (expm1.f64 (*.f64 a (+.f64 b (+.f64 c d)))))
(fma.f64 a b (*.f64 a (+.f64 c d)))
(fma.f64 a (+.f64 b c) (*.f64 a d))
(fma.f64 a d (*.f64 a (+.f64 b c)))
(fma.f64 b a (*.f64 (+.f64 c d) a))
(fma.f64 (+.f64 b c) a (*.f64 a d))
(fma.f64 d a (*.f64 a (+.f64 b c)))
(fma.f64 1 (*.f64 a (+.f64 b c)) (*.f64 a d))
(fma.f64 1 (*.f64 a d) (*.f64 a (+.f64 b c)))
(fma.f64 (pow.f64 (cbrt.f64 (+.f64 b c)) 2) (*.f64 (cbrt.f64 (+.f64 b c)) a) (*.f64 a d))
(fma.f64 (pow.f64 (cbrt.f64 a) 2) (*.f64 (cbrt.f64 a) (+.f64 b c)) (*.f64 a d))
(fma.f64 (pow.f64 (cbrt.f64 a) 2) (*.f64 (cbrt.f64 a) d) (*.f64 a (+.f64 b c)))
(fma.f64 (pow.f64 (cbrt.f64 d) 2) (*.f64 (cbrt.f64 d) a) (*.f64 a (+.f64 b c)))
(fma.f64 (sqrt.f64 (+.f64 b c)) (*.f64 (sqrt.f64 (+.f64 b c)) a) (*.f64 a d))
(fma.f64 (sqrt.f64 a) (*.f64 (sqrt.f64 a) (+.f64 b c)) (*.f64 a d))
(fma.f64 (sqrt.f64 a) (*.f64 (sqrt.f64 a) d) (*.f64 a (+.f64 b c)))
(fma.f64 (sqrt.f64 d) (*.f64 (sqrt.f64 d) a) (*.f64 a (+.f64 b c)))
(fma.f64 (*.f64 a (+.f64 b c)) 1 (*.f64 (*.f64 a d) 1))
(fma.f64 (*.f64 (cbrt.f64 (*.f64 a (+.f64 b c))) (cbrt.f64 (*.f64 a (+.f64 b c)))) (cbrt.f64 (*.f64 a (+.f64 b c))) (*.f64 a d))
(fma.f64 (*.f64 (cbrt.f64 (*.f64 a d)) (cbrt.f64 (*.f64 a d))) (cbrt.f64 (*.f64 a d)) (*.f64 a (+.f64 b c)))
(fma.f64 (sqrt.f64 (*.f64 a (+.f64 b c))) (sqrt.f64 (*.f64 a (+.f64 b c))) (*.f64 a d))
(fma.f64 (sqrt.f64 (*.f64 a d)) (sqrt.f64 (*.f64 a d)) (*.f64 a (+.f64 b c)))
(fma.f64 (*.f64 (sqrt.f64 (+.f64 b c)) (sqrt.f64 a)) (*.f64 (sqrt.f64 (+.f64 b c)) (sqrt.f64 a)) (*.f64 a d))
(fma.f64 (*.f64 (sqrt.f64 a) (sqrt.f64 (+.f64 b c))) (*.f64 (sqrt.f64 a) (sqrt.f64 (+.f64 b c))) (*.f64 a d))
(fma.f64 (*.f64 (sqrt.f64 d) (sqrt.f64 a)) (*.f64 (sqrt.f64 d) (sqrt.f64 a)) (*.f64 a (+.f64 b c)))
(fma.f64 (*.f64 (sqrt.f64 a) (sqrt.f64 d)) (*.f64 (sqrt.f64 a) (sqrt.f64 d)) (*.f64 a (+.f64 b c)))
(fma.f64 (*.f64 (+.f64 b c) (pow.f64 (cbrt.f64 a) 2)) (cbrt.f64 a) (*.f64 a d))
(fma.f64 (*.f64 (+.f64 b c) (sqrt.f64 a)) (sqrt.f64 a) (*.f64 a d))
(fma.f64 (*.f64 a (pow.f64 (cbrt.f64 (+.f64 b c)) 2)) (cbrt.f64 (+.f64 b c)) (*.f64 a d))
(fma.f64 (*.f64 a (sqrt.f64 (+.f64 b c))) (sqrt.f64 (+.f64 b c)) (*.f64 a d))
(fma.f64 (*.f64 d (pow.f64 (cbrt.f64 a) 2)) (cbrt.f64 a) (*.f64 a (+.f64 b c)))
(fma.f64 (*.f64 d (sqrt.f64 a)) (sqrt.f64 a) (*.f64 a (+.f64 b c)))
(fma.f64 (*.f64 a (pow.f64 (cbrt.f64 d) 2)) (cbrt.f64 d) (*.f64 a (+.f64 b c)))
(fma.f64 (*.f64 a (sqrt.f64 d)) (sqrt.f64 d) (*.f64 a (+.f64 b c)))

simplify85.0ms (2.2%)

Algorithm
egg-herbie
Rules
1454×fma-def
1388×times-frac
620×cancel-sign-sub-inv
582×associate-+r+
504×log-prod
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01813845
14613775
214293705
342253601
Stop Event
node limit
Counts
111 → 92
Calls
Call 1
Inputs
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 c d))
(+.f64 (*.f64 a b) (*.f64 a (+.f64 c d)))
(+.f64 (*.f64 a b) (*.f64 a (+.f64 c d)))
(+.f64 (*.f64 a b) (*.f64 a (+.f64 c d)))
(*.f64 a b)
(+.f64 (*.f64 a b) (*.f64 a (+.f64 c d)))
(+.f64 (*.f64 a b) (*.f64 a (+.f64 c d)))
(+.f64 (*.f64 a b) (*.f64 a (+.f64 c d)))
(*.f64 a b)
(+.f64 (*.f64 a b) (*.f64 a (+.f64 c d)))
(+.f64 (*.f64 a b) (*.f64 a (+.f64 c d)))
(+.f64 (*.f64 a b) (*.f64 a (+.f64 c d)))
(*.f64 a (+.f64 b d))
(+.f64 (*.f64 a c) (*.f64 a (+.f64 b d)))
(+.f64 (*.f64 a c) (*.f64 a (+.f64 b d)))
(+.f64 (*.f64 a c) (*.f64 a (+.f64 b d)))
(*.f64 a c)
(+.f64 (*.f64 a c) (*.f64 a (+.f64 b d)))
(+.f64 (*.f64 a c) (*.f64 a (+.f64 b d)))
(+.f64 (*.f64 a c) (*.f64 a (+.f64 b d)))
(*.f64 a c)
(+.f64 (*.f64 a c) (*.f64 a (+.f64 b d)))
(+.f64 (*.f64 a c) (*.f64 a (+.f64 b d)))
(+.f64 (*.f64 a c) (*.f64 a (+.f64 b d)))
(*.f64 a (+.f64 b c))
(+.f64 (*.f64 a d) (*.f64 a (+.f64 b c)))
(+.f64 (*.f64 a d) (*.f64 a (+.f64 b c)))
(+.f64 (*.f64 a d) (*.f64 a (+.f64 b c)))
(*.f64 a d)
(+.f64 (*.f64 a d) (*.f64 a (+.f64 b c)))
(+.f64 (*.f64 a d) (*.f64 a (+.f64 b c)))
(+.f64 (*.f64 a d) (*.f64 a (+.f64 b c)))
(*.f64 a d)
(+.f64 (*.f64 a d) (*.f64 a (+.f64 b c)))
(+.f64 (*.f64 a d) (*.f64 a (+.f64 b c)))
(+.f64 (*.f64 a d) (*.f64 a (+.f64 b c)))
(+.f64 (*.f64 a (+.f64 b c)) (*.f64 a d))
(+.f64 (*.f64 a d) (*.f64 a (+.f64 b c)))
(+.f64 0 (*.f64 a (+.f64 b (+.f64 c d))))
(+.f64 (*.f64 a b) (*.f64 a (+.f64 c d)))
(+.f64 (*.f64 b a) (*.f64 (+.f64 c d) a))
(+.f64 (*.f64 (*.f64 a (+.f64 b c)) 1) (*.f64 (*.f64 a d) 1))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (+.f64 b (+.f64 c d))) a)) (cbrt.f64 (pow.f64 (exp.f64 (+.f64 b (+.f64 c d))) a)))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (+.f64 b (+.f64 c d))) a))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (+.f64 b (+.f64 c d))) a))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (+.f64 b (+.f64 c d))) a))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 a (+.f64 b (+.f64 c d))))) 1)
(/.f64 (+.f64 (pow.f64 (*.f64 a (+.f64 b c)) 3) (pow.f64 (*.f64 a d) 3)) (fma.f64 (*.f64 a (+.f64 b c)) (*.f64 a (+.f64 b c)) (-.f64 (*.f64 (*.f64 a d) (*.f64 a d)) (*.f64 (*.f64 a (+.f64 b c)) (*.f64 a d)))))
(/.f64 (fma.f64 (*.f64 a (+.f64 b c)) (*.f64 a (+.f64 b c)) (neg.f64 (*.f64 (*.f64 a d) (*.f64 a d)))) (-.f64 (*.f64 a (+.f64 b c)) (*.f64 a d)))
(/.f64 (*.f64 a (+.f64 (pow.f64 (+.f64 b c) 3) (pow.f64 d 3))) (fma.f64 d (-.f64 d (+.f64 b c)) (pow.f64 (+.f64 b c) 2)))
(/.f64 (*.f64 a (-.f64 (pow.f64 (+.f64 b c) 2) (pow.f64 d 2))) (+.f64 b (-.f64 c d)))
(/.f64 (*.f64 (+.f64 (pow.f64 (+.f64 b c) 3) (pow.f64 d 3)) a) (fma.f64 d (-.f64 d (+.f64 b c)) (pow.f64 (+.f64 b c) 2)))
(/.f64 (*.f64 (-.f64 (pow.f64 (+.f64 b c) 2) (pow.f64 d 2)) a) (+.f64 b (-.f64 c d)))
(pow.f64 (*.f64 a (+.f64 b (+.f64 c d))) 1)
(pow.f64 (cbrt.f64 (*.f64 a (+.f64 b (+.f64 c d)))) 3)
(pow.f64 (pow.f64 (*.f64 a (+.f64 b (+.f64 c d))) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 a (+.f64 b (+.f64 c d)))) 2)
(sqrt.f64 (pow.f64 (*.f64 a (+.f64 b (+.f64 c d))) 2))
(log.f64 (pow.f64 (exp.f64 (+.f64 b (+.f64 c d))) a))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 a (+.f64 b (+.f64 c d))))))
(log.f64 (*.f64 (exp.f64 (*.f64 a d)) (exp.f64 (*.f64 a (+.f64 b c)))))
(cbrt.f64 (pow.f64 (*.f64 a (+.f64 b (+.f64 c d))) 3))
(cbrt.f64 (*.f64 (pow.f64 a 3) (pow.f64 (+.f64 b (+.f64 c d)) 3)))
(cbrt.f64 (*.f64 (pow.f64 (+.f64 b (+.f64 c d)) 3) (pow.f64 a 3)))
(expm1.f64 (log1p.f64 (*.f64 a (+.f64 b (+.f64 c d)))))
(exp.f64 (log.f64 (*.f64 a (+.f64 b (+.f64 c d)))))
(exp.f64 (*.f64 (log.f64 (*.f64 a (+.f64 b (+.f64 c d)))) 1))
(log1p.f64 (expm1.f64 (*.f64 a (+.f64 b (+.f64 c d)))))
(fma.f64 a b (*.f64 a (+.f64 c d)))
(fma.f64 a (+.f64 b c) (*.f64 a d))
(fma.f64 a d (*.f64 a (+.f64 b c)))
(fma.f64 b a (*.f64 (+.f64 c d) a))
(fma.f64 (+.f64 b c) a (*.f64 a d))
(fma.f64 d a (*.f64 a (+.f64 b c)))
(fma.f64 1 (*.f64 a (+.f64 b c)) (*.f64 a d))
(fma.f64 1 (*.f64 a d) (*.f64 a (+.f64 b c)))
(fma.f64 (pow.f64 (cbrt.f64 (+.f64 b c)) 2) (*.f64 (cbrt.f64 (+.f64 b c)) a) (*.f64 a d))
(fma.f64 (pow.f64 (cbrt.f64 a) 2) (*.f64 (cbrt.f64 a) (+.f64 b c)) (*.f64 a d))
(fma.f64 (pow.f64 (cbrt.f64 a) 2) (*.f64 (cbrt.f64 a) d) (*.f64 a (+.f64 b c)))
(fma.f64 (pow.f64 (cbrt.f64 d) 2) (*.f64 (cbrt.f64 d) a) (*.f64 a (+.f64 b c)))
(fma.f64 (sqrt.f64 (+.f64 b c)) (*.f64 (sqrt.f64 (+.f64 b c)) a) (*.f64 a d))
(fma.f64 (sqrt.f64 a) (*.f64 (sqrt.f64 a) (+.f64 b c)) (*.f64 a d))
(fma.f64 (sqrt.f64 a) (*.f64 (sqrt.f64 a) d) (*.f64 a (+.f64 b c)))
(fma.f64 (sqrt.f64 d) (*.f64 (sqrt.f64 d) a) (*.f64 a (+.f64 b c)))
(fma.f64 (*.f64 a (+.f64 b c)) 1 (*.f64 (*.f64 a d) 1))
(fma.f64 (*.f64 (cbrt.f64 (*.f64 a (+.f64 b c))) (cbrt.f64 (*.f64 a (+.f64 b c)))) (cbrt.f64 (*.f64 a (+.f64 b c))) (*.f64 a d))
(fma.f64 (*.f64 (cbrt.f64 (*.f64 a d)) (cbrt.f64 (*.f64 a d))) (cbrt.f64 (*.f64 a d)) (*.f64 a (+.f64 b c)))
(fma.f64 (sqrt.f64 (*.f64 a (+.f64 b c))) (sqrt.f64 (*.f64 a (+.f64 b c))) (*.f64 a d))
(fma.f64 (sqrt.f64 (*.f64 a d)) (sqrt.f64 (*.f64 a d)) (*.f64 a (+.f64 b c)))
(fma.f64 (*.f64 (sqrt.f64 (+.f64 b c)) (sqrt.f64 a)) (*.f64 (sqrt.f64 (+.f64 b c)) (sqrt.f64 a)) (*.f64 a d))
(fma.f64 (*.f64 (sqrt.f64 a) (sqrt.f64 (+.f64 b c))) (*.f64 (sqrt.f64 a) (sqrt.f64 (+.f64 b c))) (*.f64 a d))
(fma.f64 (*.f64 (sqrt.f64 d) (sqrt.f64 a)) (*.f64 (sqrt.f64 d) (sqrt.f64 a)) (*.f64 a (+.f64 b c)))
(fma.f64 (*.f64 (sqrt.f64 a) (sqrt.f64 d)) (*.f64 (sqrt.f64 a) (sqrt.f64 d)) (*.f64 a (+.f64 b c)))
(fma.f64 (*.f64 (+.f64 b c) (pow.f64 (cbrt.f64 a) 2)) (cbrt.f64 a) (*.f64 a d))
(fma.f64 (*.f64 (+.f64 b c) (sqrt.f64 a)) (sqrt.f64 a) (*.f64 a d))
(fma.f64 (*.f64 a (pow.f64 (cbrt.f64 (+.f64 b c)) 2)) (cbrt.f64 (+.f64 b c)) (*.f64 a d))
(fma.f64 (*.f64 a (sqrt.f64 (+.f64 b c))) (sqrt.f64 (+.f64 b c)) (*.f64 a d))
(fma.f64 (*.f64 d (pow.f64 (cbrt.f64 a) 2)) (cbrt.f64 a) (*.f64 a (+.f64 b c)))
(fma.f64 (*.f64 d (sqrt.f64 a)) (sqrt.f64 a) (*.f64 a (+.f64 b c)))
(fma.f64 (*.f64 a (pow.f64 (cbrt.f64 d) 2)) (cbrt.f64 d) (*.f64 a (+.f64 b c)))
(fma.f64 (*.f64 a (sqrt.f64 d)) (sqrt.f64 d) (*.f64 a (+.f64 b c)))
Outputs
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(*.f64 a (+.f64 c d))
(+.f64 (*.f64 a b) (*.f64 a (+.f64 c d)))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(+.f64 (*.f64 a b) (*.f64 a (+.f64 c d)))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(+.f64 (*.f64 a b) (*.f64 a (+.f64 c d)))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(*.f64 a b)
(+.f64 (*.f64 a b) (*.f64 a (+.f64 c d)))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(+.f64 (*.f64 a b) (*.f64 a (+.f64 c d)))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(+.f64 (*.f64 a b) (*.f64 a (+.f64 c d)))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(*.f64 a b)
(+.f64 (*.f64 a b) (*.f64 a (+.f64 c d)))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(+.f64 (*.f64 a b) (*.f64 a (+.f64 c d)))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(+.f64 (*.f64 a b) (*.f64 a (+.f64 c d)))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(*.f64 a (+.f64 b d))
(+.f64 (*.f64 a c) (*.f64 a (+.f64 b d)))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(+.f64 (*.f64 a c) (*.f64 a (+.f64 b d)))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(+.f64 (*.f64 a c) (*.f64 a (+.f64 b d)))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(*.f64 a c)
(+.f64 (*.f64 a c) (*.f64 a (+.f64 b d)))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(+.f64 (*.f64 a c) (*.f64 a (+.f64 b d)))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(+.f64 (*.f64 a c) (*.f64 a (+.f64 b d)))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(*.f64 a c)
(+.f64 (*.f64 a c) (*.f64 a (+.f64 b d)))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(+.f64 (*.f64 a c) (*.f64 a (+.f64 b d)))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(+.f64 (*.f64 a c) (*.f64 a (+.f64 b d)))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(*.f64 a (+.f64 b c))
(+.f64 (*.f64 a d) (*.f64 a (+.f64 b c)))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(+.f64 (*.f64 a d) (*.f64 a (+.f64 b c)))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(+.f64 (*.f64 a d) (*.f64 a (+.f64 b c)))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(*.f64 a d)
(+.f64 (*.f64 a d) (*.f64 a (+.f64 b c)))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(+.f64 (*.f64 a d) (*.f64 a (+.f64 b c)))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(+.f64 (*.f64 a d) (*.f64 a (+.f64 b c)))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(*.f64 a d)
(+.f64 (*.f64 a d) (*.f64 a (+.f64 b c)))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(+.f64 (*.f64 a d) (*.f64 a (+.f64 b c)))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(+.f64 (*.f64 a d) (*.f64 a (+.f64 b c)))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(+.f64 (*.f64 a (+.f64 b c)) (*.f64 a d))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(+.f64 (*.f64 a d) (*.f64 a (+.f64 b c)))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(+.f64 0 (*.f64 a (+.f64 b (+.f64 c d))))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(+.f64 (*.f64 a b) (*.f64 a (+.f64 c d)))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(+.f64 (*.f64 b a) (*.f64 (+.f64 c d) a))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(+.f64 (*.f64 (*.f64 a (+.f64 b c)) 1) (*.f64 (*.f64 a d) 1))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (+.f64 b (+.f64 c d))) a)) (cbrt.f64 (pow.f64 (exp.f64 (+.f64 b (+.f64 c d))) a)))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (+.f64 b (+.f64 c d))) a))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (+.f64 d (+.f64 b c))) a)))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (+.f64 d (+.f64 b c))) a))))
(*.f64 3 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (+.f64 c (+.f64 b d))) a))))
(*.f64 3 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (+.f64 d (+.f64 b c))) a))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (+.f64 b (+.f64 c d))) a))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (+.f64 b (+.f64 c d))) a))))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 a (+.f64 b (+.f64 c d))))) 1)
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(/.f64 (+.f64 (pow.f64 (*.f64 a (+.f64 b c)) 3) (pow.f64 (*.f64 a d) 3)) (fma.f64 (*.f64 a (+.f64 b c)) (*.f64 a (+.f64 b c)) (-.f64 (*.f64 (*.f64 a d) (*.f64 a d)) (*.f64 (*.f64 a (+.f64 b c)) (*.f64 a d)))))
(/.f64 (+.f64 (pow.f64 (*.f64 a (+.f64 b c)) 3) (pow.f64 (*.f64 a d) 3)) (fma.f64 (*.f64 a (+.f64 b c)) (*.f64 a (+.f64 b c)) (*.f64 (*.f64 a d) (-.f64 (*.f64 a d) (*.f64 a (+.f64 b c))))))
(/.f64 (*.f64 (pow.f64 a 3) (+.f64 (pow.f64 (+.f64 b c) 3) (pow.f64 d 3))) (+.f64 (*.f64 a (*.f64 d (*.f64 a (-.f64 d (+.f64 b c))))) (*.f64 (pow.f64 (+.f64 b c) 2) (*.f64 a a))))
(/.f64 (*.f64 (+.f64 (pow.f64 (+.f64 b c) 3) (pow.f64 d 3)) (pow.f64 a 3)) (fma.f64 a (*.f64 d (*.f64 a (-.f64 d (+.f64 b c)))) (*.f64 (pow.f64 (+.f64 b c) 2) (*.f64 a a))))
(/.f64 (*.f64 (+.f64 (pow.f64 (+.f64 b c) 3) (pow.f64 d 3)) (pow.f64 a 3)) (fma.f64 a (*.f64 a (*.f64 d (-.f64 d (+.f64 b c)))) (pow.f64 (cbrt.f64 (*.f64 a (+.f64 b c))) 6)))
(/.f64 (fma.f64 (*.f64 a (+.f64 b c)) (*.f64 a (+.f64 b c)) (neg.f64 (*.f64 (*.f64 a d) (*.f64 a d)))) (-.f64 (*.f64 a (+.f64 b c)) (*.f64 a d)))
(/.f64 (fma.f64 (*.f64 a (+.f64 b c)) (*.f64 a (+.f64 b c)) (neg.f64 (*.f64 (*.f64 a a) (pow.f64 d 2)))) (*.f64 a (+.f64 b (-.f64 c d))))
(/.f64 (-.f64 (*.f64 (pow.f64 (+.f64 b c) 2) (*.f64 a a)) (*.f64 (pow.f64 d 2) (*.f64 a a))) (*.f64 a (-.f64 c (-.f64 d b))))
(/.f64 (*.f64 (*.f64 a a) (-.f64 (pow.f64 (+.f64 b c) 2) (pow.f64 d 2))) (*.f64 a (+.f64 b (-.f64 c d))))
(*.f64 (/.f64 (*.f64 a a) a) (/.f64 (+.f64 d (+.f64 b c)) 1))
(/.f64 (*.f64 a (+.f64 (pow.f64 (+.f64 b c) 3) (pow.f64 d 3))) (fma.f64 d (-.f64 d (+.f64 b c)) (pow.f64 (+.f64 b c) 2)))
(/.f64 a (/.f64 (fma.f64 d (-.f64 (-.f64 d b) c) (pow.f64 (+.f64 b c) 2)) (+.f64 (pow.f64 (+.f64 b c) 3) (pow.f64 d 3))))
(*.f64 (/.f64 a (fma.f64 d (-.f64 d (+.f64 b c)) (pow.f64 (+.f64 b c) 2))) (+.f64 (pow.f64 (+.f64 b c) 3) (pow.f64 d 3)))
(*.f64 (+.f64 (pow.f64 (+.f64 b c) 3) (pow.f64 d 3)) (/.f64 a (fma.f64 d (-.f64 d (+.f64 b c)) (pow.f64 (+.f64 b c) 2))))
(*.f64 a (/.f64 (+.f64 (pow.f64 (+.f64 b c) 3) (pow.f64 d 3)) (fma.f64 d (-.f64 d (+.f64 b c)) (pow.f64 (+.f64 b c) 2))))
(/.f64 (*.f64 a (-.f64 (pow.f64 (+.f64 b c) 2) (pow.f64 d 2))) (+.f64 b (-.f64 c d)))
(/.f64 (-.f64 (pow.f64 (+.f64 b c) 2) (pow.f64 d 2)) (/.f64 (+.f64 b (-.f64 c d)) a))
(*.f64 (/.f64 a (-.f64 c (-.f64 d b))) (-.f64 (pow.f64 (+.f64 b c) 2) (pow.f64 d 2)))
(*.f64 (-.f64 (pow.f64 (+.f64 b c) 2) (pow.f64 d 2)) (/.f64 a (+.f64 b (-.f64 c d))))
(*.f64 a (/.f64 (+.f64 d (+.f64 b c)) 1))
(/.f64 (*.f64 (+.f64 (pow.f64 (+.f64 b c) 3) (pow.f64 d 3)) a) (fma.f64 d (-.f64 d (+.f64 b c)) (pow.f64 (+.f64 b c) 2)))
(/.f64 a (/.f64 (fma.f64 d (-.f64 (-.f64 d b) c) (pow.f64 (+.f64 b c) 2)) (+.f64 (pow.f64 (+.f64 b c) 3) (pow.f64 d 3))))
(*.f64 (/.f64 a (fma.f64 d (-.f64 d (+.f64 b c)) (pow.f64 (+.f64 b c) 2))) (+.f64 (pow.f64 (+.f64 b c) 3) (pow.f64 d 3)))
(*.f64 (+.f64 (pow.f64 (+.f64 b c) 3) (pow.f64 d 3)) (/.f64 a (fma.f64 d (-.f64 d (+.f64 b c)) (pow.f64 (+.f64 b c) 2))))
(*.f64 a (/.f64 (+.f64 (pow.f64 (+.f64 b c) 3) (pow.f64 d 3)) (fma.f64 d (-.f64 d (+.f64 b c)) (pow.f64 (+.f64 b c) 2))))
(/.f64 (*.f64 (-.f64 (pow.f64 (+.f64 b c) 2) (pow.f64 d 2)) a) (+.f64 b (-.f64 c d)))
(/.f64 (-.f64 (pow.f64 (+.f64 b c) 2) (pow.f64 d 2)) (/.f64 (+.f64 b (-.f64 c d)) a))
(*.f64 (/.f64 a (-.f64 c (-.f64 d b))) (-.f64 (pow.f64 (+.f64 b c) 2) (pow.f64 d 2)))
(*.f64 (-.f64 (pow.f64 (+.f64 b c) 2) (pow.f64 d 2)) (/.f64 a (+.f64 b (-.f64 c d))))
(*.f64 a (/.f64 (+.f64 d (+.f64 b c)) 1))
(pow.f64 (*.f64 a (+.f64 b (+.f64 c d))) 1)
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(pow.f64 (cbrt.f64 (*.f64 a (+.f64 b (+.f64 c d)))) 3)
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(pow.f64 (pow.f64 (*.f64 a (+.f64 b (+.f64 c d))) 3) 1/3)
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(pow.f64 (sqrt.f64 (*.f64 a (+.f64 b (+.f64 c d)))) 2)
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(sqrt.f64 (pow.f64 (*.f64 a (+.f64 b (+.f64 c d))) 2))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(log.f64 (pow.f64 (exp.f64 (+.f64 b (+.f64 c d))) a))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 a (+.f64 b (+.f64 c d))))))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(log.f64 (*.f64 (exp.f64 (*.f64 a d)) (exp.f64 (*.f64 a (+.f64 b c)))))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(cbrt.f64 (pow.f64 (*.f64 a (+.f64 b (+.f64 c d))) 3))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(cbrt.f64 (*.f64 (pow.f64 a 3) (pow.f64 (+.f64 b (+.f64 c d)) 3)))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(cbrt.f64 (*.f64 (pow.f64 (+.f64 b (+.f64 c d)) 3) (pow.f64 a 3)))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(expm1.f64 (log1p.f64 (*.f64 a (+.f64 b (+.f64 c d)))))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(exp.f64 (log.f64 (*.f64 a (+.f64 b (+.f64 c d)))))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(exp.f64 (*.f64 (log.f64 (*.f64 a (+.f64 b (+.f64 c d)))) 1))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(log1p.f64 (expm1.f64 (*.f64 a (+.f64 b (+.f64 c d)))))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(fma.f64 a b (*.f64 a (+.f64 c d)))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(fma.f64 a (+.f64 b c) (*.f64 a d))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(fma.f64 a d (*.f64 a (+.f64 b c)))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(fma.f64 b a (*.f64 (+.f64 c d) a))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(fma.f64 (+.f64 b c) a (*.f64 a d))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(fma.f64 d a (*.f64 a (+.f64 b c)))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(fma.f64 1 (*.f64 a (+.f64 b c)) (*.f64 a d))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(fma.f64 1 (*.f64 a d) (*.f64 a (+.f64 b c)))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(fma.f64 (pow.f64 (cbrt.f64 (+.f64 b c)) 2) (*.f64 (cbrt.f64 (+.f64 b c)) a) (*.f64 a d))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(fma.f64 (pow.f64 (cbrt.f64 a) 2) (*.f64 (cbrt.f64 a) (+.f64 b c)) (*.f64 a d))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(fma.f64 (pow.f64 (cbrt.f64 a) 2) (*.f64 (cbrt.f64 a) d) (*.f64 a (+.f64 b c)))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(fma.f64 (pow.f64 (cbrt.f64 d) 2) (*.f64 (cbrt.f64 d) a) (*.f64 a (+.f64 b c)))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(fma.f64 (sqrt.f64 (+.f64 b c)) (*.f64 (sqrt.f64 (+.f64 b c)) a) (*.f64 a d))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(fma.f64 (sqrt.f64 a) (*.f64 (sqrt.f64 a) (+.f64 b c)) (*.f64 a d))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(fma.f64 (sqrt.f64 a) (*.f64 (sqrt.f64 a) d) (*.f64 a (+.f64 b c)))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(fma.f64 (sqrt.f64 d) (*.f64 (sqrt.f64 d) a) (*.f64 a (+.f64 b c)))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(fma.f64 (*.f64 a (+.f64 b c)) 1 (*.f64 (*.f64 a d) 1))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(fma.f64 (*.f64 (cbrt.f64 (*.f64 a (+.f64 b c))) (cbrt.f64 (*.f64 a (+.f64 b c)))) (cbrt.f64 (*.f64 a (+.f64 b c))) (*.f64 a d))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(fma.f64 (*.f64 (cbrt.f64 (*.f64 a d)) (cbrt.f64 (*.f64 a d))) (cbrt.f64 (*.f64 a d)) (*.f64 a (+.f64 b c)))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(fma.f64 (sqrt.f64 (*.f64 a (+.f64 b c))) (sqrt.f64 (*.f64 a (+.f64 b c))) (*.f64 a d))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(fma.f64 (sqrt.f64 (*.f64 a d)) (sqrt.f64 (*.f64 a d)) (*.f64 a (+.f64 b c)))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(fma.f64 (*.f64 (sqrt.f64 (+.f64 b c)) (sqrt.f64 a)) (*.f64 (sqrt.f64 (+.f64 b c)) (sqrt.f64 a)) (*.f64 a d))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(fma.f64 (*.f64 (sqrt.f64 a) (sqrt.f64 (+.f64 b c))) (*.f64 (sqrt.f64 a) (sqrt.f64 (+.f64 b c))) (*.f64 a d))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(fma.f64 (*.f64 (sqrt.f64 d) (sqrt.f64 a)) (*.f64 (sqrt.f64 d) (sqrt.f64 a)) (*.f64 a (+.f64 b c)))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(fma.f64 (*.f64 (sqrt.f64 a) (sqrt.f64 d)) (*.f64 (sqrt.f64 a) (sqrt.f64 d)) (*.f64 a (+.f64 b c)))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(fma.f64 (*.f64 (+.f64 b c) (pow.f64 (cbrt.f64 a) 2)) (cbrt.f64 a) (*.f64 a d))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(fma.f64 (*.f64 (+.f64 b c) (sqrt.f64 a)) (sqrt.f64 a) (*.f64 a d))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(fma.f64 (*.f64 a (pow.f64 (cbrt.f64 (+.f64 b c)) 2)) (cbrt.f64 (+.f64 b c)) (*.f64 a d))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(fma.f64 (*.f64 a (sqrt.f64 (+.f64 b c))) (sqrt.f64 (+.f64 b c)) (*.f64 a d))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(fma.f64 (*.f64 d (pow.f64 (cbrt.f64 a) 2)) (cbrt.f64 a) (*.f64 a (+.f64 b c)))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(fma.f64 (*.f64 d (sqrt.f64 a)) (sqrt.f64 a) (*.f64 a (+.f64 b c)))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(fma.f64 (*.f64 a (pow.f64 (cbrt.f64 d) 2)) (cbrt.f64 d) (*.f64 a (+.f64 b c)))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))
(fma.f64 (*.f64 a (sqrt.f64 d)) (sqrt.f64 d) (*.f64 a (+.f64 b c)))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c (+.f64 b d)))

eval20.0ms (0.5%)

Compiler

Compiled 1351 to 392 computations (71% saved)

prune17.0ms (0.4%)

Pruning

5 alts after pruning (4 fresh and 1 done)

PrunedKeptTotal
New88492
Fresh000
Picked011
Done000
Total88593
Accuracy
100.0%
Counts
93 → 5
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(fma.f64 d a (*.f64 a (+.f64 b c)))
99.9%
(+.f64 (*.f64 a c) (*.f64 a (+.f64 b d)))
100.0%
(*.f64 a (+.f64 (+.f64 b c) d))
99.9%
(*.f64 a (+.f64 c d))
93.3%
(*.f64 a d)
100.0%
(fma.f64 d a (*.f64 a (+.f64 b c)))
99.9%
(+.f64 (*.f64 a c) (*.f64 a (+.f64 b d)))
100.0%
(*.f64 a (+.f64 (+.f64 b c) d))
99.9%
(*.f64 a (+.f64 c d))
93.3%
(*.f64 a d)
Compiler

Compiled 104 to 66 computations (36.5% saved)

localize203.0ms (5.3%)

Localize:

Found 3 expressions with local error:

NewAccuracyProgram
99.9%
(*.f64 a (+.f64 b c))
99.9%
(+.f64 (*.f64 a c) (*.f64 a (+.f64 b d)))
99.9%
(*.f64 a (+.f64 c d))
Compiler

Compiled 65 to 15 computations (76.9% saved)

series13.0ms (0.3%)

Counts
3 → 87
Calls

30 calls:

TimeVariablePointExpression
3.0ms
a
@-inf
(+.f64 (*.f64 a c) (*.f64 a (+.f64 b d)))
1.0ms
a
@inf
(+.f64 (*.f64 a c) (*.f64 a (+.f64 b d)))
1.0ms
a
@0
(*.f64 a (+.f64 c d))
1.0ms
a
@0
(+.f64 (*.f64 a c) (*.f64 a (+.f64 b d)))
0.0ms
a
@0
(*.f64 a (+.f64 b c))

rewrite145.0ms (3.8%)

Algorithm
batch-egg-rewrite
Rules
1039×log1p-expm1-u
585×expm1-log1p-u
540×expm1-udef
540×log1p-udef
280×associate-*r*
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01975
129975
2462375
Stop Event
node limit
Counts
3 → 98
Calls
Call 1
Inputs
(*.f64 a (+.f64 c d))
(+.f64 (*.f64 a c) (*.f64 a (+.f64 b d)))
(*.f64 a (+.f64 b c))
Outputs
(+.f64 (*.f64 a c) (*.f64 a d))
(+.f64 (*.f64 a c) (*.f64 (*.f64 a d) 1))
(+.f64 (*.f64 a d) (*.f64 a c))
(-.f64 (exp.f64 (log1p.f64 (*.f64 a (+.f64 c d)))) 1)
(/.f64 (+.f64 (pow.f64 (*.f64 a c) 3) (pow.f64 (*.f64 a d) 3)) (+.f64 (pow.f64 (*.f64 a c) 2) (-.f64 (*.f64 (*.f64 a d) (*.f64 a d)) (*.f64 (*.f64 a c) (*.f64 a d)))))
(/.f64 (-.f64 (pow.f64 (*.f64 a c) 2) (*.f64 (*.f64 a d) (*.f64 a d))) (-.f64 (*.f64 a c) (*.f64 a d)))
(/.f64 (*.f64 a (+.f64 (pow.f64 c 3) (pow.f64 d 3))) (fma.f64 c c (*.f64 d (-.f64 d c))))
(/.f64 (*.f64 a (-.f64 (pow.f64 c 2) (pow.f64 d 2))) (-.f64 c d))
(/.f64 (*.f64 (+.f64 (pow.f64 c 3) (pow.f64 d 3)) a) (fma.f64 c c (*.f64 d (-.f64 d c))))
(/.f64 (*.f64 (-.f64 (pow.f64 c 2) (pow.f64 d 2)) a) (-.f64 c d))
(pow.f64 (*.f64 a (+.f64 c d)) 1)
(pow.f64 (cbrt.f64 (*.f64 a (+.f64 c d))) 3)
(pow.f64 (pow.f64 (*.f64 a (+.f64 c d)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 a (+.f64 c d))) 2)
(sqrt.f64 (pow.f64 (*.f64 a (+.f64 c d)) 2))
(log.f64 (pow.f64 (exp.f64 (+.f64 c d)) a))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 a (+.f64 c d)))))
(cbrt.f64 (pow.f64 (*.f64 a (+.f64 c d)) 3))
(cbrt.f64 (*.f64 (pow.f64 a 3) (pow.f64 (+.f64 c d) 3)))
(cbrt.f64 (*.f64 (pow.f64 (+.f64 c d) 3) (pow.f64 a 3)))
(expm1.f64 (log1p.f64 (*.f64 a (+.f64 c d))))
(exp.f64 (log.f64 (*.f64 a (+.f64 c d))))
(exp.f64 (*.f64 (log.f64 (*.f64 a (+.f64 c d))) 1))
(log1p.f64 (expm1.f64 (*.f64 a (+.f64 c d))))
(fma.f64 a c (*.f64 a d))
(fma.f64 c a (*.f64 a d))
(fma.f64 1 (*.f64 a c) (*.f64 a d))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 a c)) 2) (cbrt.f64 (*.f64 a c)) (*.f64 a d))
(fma.f64 (sqrt.f64 (*.f64 a c)) (sqrt.f64 (*.f64 a c)) (*.f64 a d))
(-.f64 (exp.f64 (log1p.f64 (*.f64 a (+.f64 (+.f64 c d) b)))) 1)
(-.f64 (/.f64 (pow.f64 (*.f64 a c) 2) (*.f64 a (-.f64 c (+.f64 d b)))) (/.f64 (pow.f64 (*.f64 a (+.f64 d b)) 2) (*.f64 a (-.f64 c (+.f64 d b)))))
(*.f64 a (+.f64 (+.f64 c d) b))
(*.f64 (*.f64 a (+.f64 (+.f64 c d) b)) 1)
(*.f64 1 (*.f64 a (+.f64 (+.f64 c d) b)))
(*.f64 (cbrt.f64 (*.f64 a (+.f64 (+.f64 c d) b))) (pow.f64 (cbrt.f64 (*.f64 a (+.f64 (+.f64 c d) b))) 2))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 a (+.f64 (+.f64 c d) b))) 2) (cbrt.f64 (*.f64 a (+.f64 (+.f64 c d) b))))
(*.f64 (pow.f64 (cbrt.f64 a) 2) (*.f64 (cbrt.f64 a) (+.f64 (+.f64 c d) b)))
(*.f64 (sqrt.f64 (*.f64 a (+.f64 (+.f64 c d) b))) (sqrt.f64 (*.f64 a (+.f64 (+.f64 c d) b))))
(*.f64 (sqrt.f64 a) (*.f64 (sqrt.f64 a) (+.f64 (+.f64 c d) b)))
(*.f64 (+.f64 (pow.f64 (*.f64 a (+.f64 d b)) 3) (pow.f64 (*.f64 a c) 3)) (/.f64 1 (+.f64 (pow.f64 (*.f64 a c) 2) (*.f64 (*.f64 a (+.f64 d b)) (-.f64 (*.f64 a (+.f64 d b)) (*.f64 a c))))))
(*.f64 (-.f64 (pow.f64 (*.f64 a c) 2) (pow.f64 (*.f64 a (+.f64 d b)) 2)) (/.f64 1 (*.f64 a (-.f64 c (+.f64 d b)))))
(*.f64 (+.f64 (+.f64 c d) b) a)
(/.f64 1 (/.f64 (+.f64 (pow.f64 (*.f64 a c) 2) (*.f64 (*.f64 a (+.f64 d b)) (-.f64 (*.f64 a (+.f64 d b)) (*.f64 a c)))) (+.f64 (pow.f64 (*.f64 a (+.f64 d b)) 3) (pow.f64 (*.f64 a c) 3))))
(/.f64 1 (/.f64 (*.f64 a (-.f64 c (+.f64 d b))) (-.f64 (pow.f64 (*.f64 a c) 2) (pow.f64 (*.f64 a (+.f64 d b)) 2))))
(/.f64 (+.f64 (pow.f64 (*.f64 a (+.f64 d b)) 3) (pow.f64 (*.f64 a c) 3)) (+.f64 (pow.f64 (*.f64 a c) 2) (*.f64 (*.f64 a (+.f64 d b)) (-.f64 (*.f64 a (+.f64 d b)) (*.f64 a c)))))
(/.f64 (+.f64 (pow.f64 (*.f64 a (+.f64 d b)) 3) (pow.f64 (*.f64 a c) 3)) (+.f64 (pow.f64 (*.f64 a (+.f64 d b)) 2) (-.f64 (pow.f64 (*.f64 a c) 2) (*.f64 c (*.f64 a (*.f64 a (+.f64 d b)))))))
(/.f64 (-.f64 (pow.f64 (*.f64 a c) 2) (pow.f64 (*.f64 a (+.f64 d b)) 2)) (*.f64 a (-.f64 c (+.f64 d b))))
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 a (+.f64 d b)) 3) (pow.f64 (*.f64 a c) 3))) (neg.f64 (+.f64 (pow.f64 (*.f64 a c) 2) (*.f64 (*.f64 a (+.f64 d b)) (-.f64 (*.f64 a (+.f64 d b)) (*.f64 a c))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 a c) 2) (pow.f64 (*.f64 a (+.f64 d b)) 2))) (neg.f64 (*.f64 a (-.f64 c (+.f64 d b)))))
(/.f64 (-.f64 (pow.f64 (*.f64 a (+.f64 d b)) 2) (pow.f64 (*.f64 a c) 2)) (-.f64 (*.f64 a (+.f64 d b)) (*.f64 a c)))
(pow.f64 (*.f64 a (+.f64 (+.f64 c d) b)) 1)
(pow.f64 (cbrt.f64 (*.f64 a (+.f64 (+.f64 c d) b))) 3)
(pow.f64 (pow.f64 (*.f64 a (+.f64 (+.f64 c d) b)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 a (+.f64 (+.f64 c d) b))) 2)
(sqrt.f64 (pow.f64 (*.f64 a (+.f64 (+.f64 c d) b)) 2))
(log.f64 (pow.f64 (exp.f64 a) (+.f64 (+.f64 c d) b)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 a (+.f64 (+.f64 c d) b)))))
(cbrt.f64 (pow.f64 (*.f64 a (+.f64 (+.f64 c d) b)) 3))
(expm1.f64 (log1p.f64 (*.f64 a (+.f64 (+.f64 c d) b))))
(exp.f64 (log.f64 (*.f64 a (+.f64 (+.f64 c d) b))))
(exp.f64 (*.f64 (log.f64 (*.f64 a (+.f64 (+.f64 c d) b))) 1))
(log1p.f64 (expm1.f64 (*.f64 a (+.f64 (+.f64 c d) b))))
(fma.f64 a c (*.f64 a (+.f64 d b)))
(fma.f64 a (+.f64 d b) (*.f64 a c))
(fma.f64 c a (*.f64 a (+.f64 d b)))
(fma.f64 (+.f64 d b) a (*.f64 a c))
(fma.f64 1 (*.f64 a c) (*.f64 a (+.f64 d b)))
(fma.f64 1 (*.f64 a (+.f64 d b)) (*.f64 a c))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 a (+.f64 d b))) 2) (cbrt.f64 (*.f64 a (+.f64 d b))) (*.f64 a c))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 a c)) 2) (cbrt.f64 (*.f64 a c)) (*.f64 a (+.f64 d b)))
(fma.f64 (sqrt.f64 (*.f64 a (+.f64 d b))) (sqrt.f64 (*.f64 a (+.f64 d b))) (*.f64 a c))
(fma.f64 (sqrt.f64 (*.f64 a c)) (sqrt.f64 (*.f64 a c)) (*.f64 a (+.f64 d b)))
(+.f64 (*.f64 a c) (*.f64 a b))
(+.f64 (*.f64 a b) (*.f64 a c))
(+.f64 (*.f64 (*.f64 a b) 1) (*.f64 a c))
(-.f64 (exp.f64 (log1p.f64 (*.f64 a (+.f64 c b)))) 1)
(/.f64 (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (*.f64 a c) 3)) (+.f64 (*.f64 (*.f64 a b) (*.f64 a b)) (-.f64 (pow.f64 (*.f64 a c) 2) (*.f64 (*.f64 a b) (*.f64 a c)))))
(/.f64 (-.f64 (*.f64 (*.f64 a b) (*.f64 a b)) (pow.f64 (*.f64 a c) 2)) (-.f64 (*.f64 a b) (*.f64 a c)))
(/.f64 (*.f64 a (+.f64 (pow.f64 b 3) (pow.f64 c 3))) (fma.f64 b b (*.f64 c (-.f64 c b))))
(/.f64 (*.f64 a (-.f64 (pow.f64 b 2) (pow.f64 c 2))) (-.f64 b c))
(/.f64 (*.f64 (+.f64 (pow.f64 b 3) (pow.f64 c 3)) a) (fma.f64 b b (*.f64 c (-.f64 c b))))
(/.f64 (*.f64 (-.f64 (pow.f64 b 2) (pow.f64 c 2)) a) (-.f64 b c))
(pow.f64 (*.f64 a (+.f64 c b)) 1)
(pow.f64 (cbrt.f64 (*.f64 a (+.f64 c b))) 3)
(pow.f64 (pow.f64 (*.f64 a (+.f64 c b)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 a (+.f64 c b))) 2)
(sqrt.f64 (pow.f64 (*.f64 a (+.f64 c b)) 2))
(log.f64 (pow.f64 (exp.f64 a) (+.f64 c b)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 a (+.f64 c b)))))
(cbrt.f64 (pow.f64 (*.f64 a (+.f64 c b)) 3))
(cbrt.f64 (*.f64 (pow.f64 a 3) (pow.f64 (+.f64 c b) 3)))
(cbrt.f64 (*.f64 (pow.f64 (+.f64 c b) 3) (pow.f64 a 3)))
(expm1.f64 (log1p.f64 (*.f64 a (+.f64 c b))))
(exp.f64 (log.f64 (*.f64 a (+.f64 c b))))
(exp.f64 (*.f64 (log.f64 (*.f64 a (+.f64 c b))) 1))
(log1p.f64 (expm1.f64 (*.f64 a (+.f64 c b))))
(fma.f64 a b (*.f64 a c))
(fma.f64 b a (*.f64 a c))

simplify242.0ms (6.3%)

Algorithm
egg-herbie
Rules
1916×fma-def
962×log-prod
940×associate-/l*
626×associate-/r*
556×cancel-sign-sub-inv
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02606135
17266036
226375998
378765998
Stop Event
node limit
Counts
185 → 135
Calls
Call 1
Inputs
(*.f64 a d)
(+.f64 (*.f64 a c) (*.f64 a d))
(+.f64 (*.f64 a c) (*.f64 a d))
(+.f64 (*.f64 a c) (*.f64 a d))
(*.f64 a c)
(+.f64 (*.f64 a c) (*.f64 a d))
(+.f64 (*.f64 a c) (*.f64 a d))
(+.f64 (*.f64 a c) (*.f64 a d))
(*.f64 a c)
(+.f64 (*.f64 a c) (*.f64 a d))
(+.f64 (*.f64 a c) (*.f64 a d))
(+.f64 (*.f64 a c) (*.f64 a d))
(*.f64 a c)
(+.f64 (*.f64 a c) (*.f64 a d))
(+.f64 (*.f64 a c) (*.f64 a d))
(+.f64 (*.f64 a c) (*.f64 a d))
(*.f64 a d)
(+.f64 (*.f64 a c) (*.f64 a d))
(+.f64 (*.f64 a c) (*.f64 a d))
(+.f64 (*.f64 a c) (*.f64 a d))
(*.f64 a d)
(+.f64 (*.f64 a c) (*.f64 a d))
(+.f64 (*.f64 a c) (*.f64 a d))
(+.f64 (*.f64 a c) (*.f64 a d))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 -1 (*.f64 a (+.f64 (*.f64 -1 c) (*.f64 -1 (+.f64 b d)))))
(*.f64 -1 (*.f64 a (+.f64 (*.f64 -1 c) (*.f64 -1 (+.f64 b d)))))
(*.f64 -1 (*.f64 a (+.f64 (*.f64 -1 c) (*.f64 -1 (+.f64 b d)))))
(*.f64 -1 (*.f64 a (+.f64 (*.f64 -1 c) (*.f64 -1 (+.f64 b d)))))
(*.f64 a (+.f64 b d))
(*.f64 a c)
(*.f64 a c)
(+.f64 (*.f64 a c) (*.f64 a d))
(+.f64 (*.f64 a b) (+.f64 (*.f64 a c) (*.f64 a d)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 a c) (*.f64 a d)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 a c) (*.f64 a d)))
(*.f64 a b)
(+.f64 (*.f64 a b) (+.f64 (*.f64 a c) (*.f64 a d)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 a c) (*.f64 a d)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 a c) (*.f64 a d)))
(*.f64 a b)
(+.f64 (*.f64 a b) (+.f64 (*.f64 a c) (*.f64 a d)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 a c) (*.f64 a d)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 a c) (*.f64 a d)))
(+.f64 (*.f64 a b) (*.f64 a c))
(+.f64 (*.f64 a b) (+.f64 (*.f64 a c) (*.f64 a d)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 a c) (*.f64 a d)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 a c) (*.f64 a d)))
(*.f64 a d)
(+.f64 (*.f64 a b) (+.f64 (*.f64 a c) (*.f64 a d)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 a c) (*.f64 a d)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 a c) (*.f64 a d)))
(*.f64 a d)
(+.f64 (*.f64 a b) (+.f64 (*.f64 a c) (*.f64 a d)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 a c) (*.f64 a d)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 a c) (*.f64 a d)))
(*.f64 a c)
(+.f64 (*.f64 a b) (*.f64 a c))
(+.f64 (*.f64 a b) (*.f64 a c))
(+.f64 (*.f64 a b) (*.f64 a c))
(*.f64 a b)
(+.f64 (*.f64 a b) (*.f64 a c))
(+.f64 (*.f64 a b) (*.f64 a c))
(+.f64 (*.f64 a b) (*.f64 a c))
(*.f64 a b)
(+.f64 (*.f64 a b) (*.f64 a c))
(+.f64 (*.f64 a b) (*.f64 a c))
(+.f64 (*.f64 a b) (*.f64 a c))
(*.f64 a b)
(+.f64 (*.f64 a b) (*.f64 a c))
(+.f64 (*.f64 a b) (*.f64 a c))
(+.f64 (*.f64 a b) (*.f64 a c))
(*.f64 a c)
(+.f64 (*.f64 a b) (*.f64 a c))
(+.f64 (*.f64 a b) (*.f64 a c))
(+.f64 (*.f64 a b) (*.f64 a c))
(*.f64 a c)
(+.f64 (*.f64 a b) (*.f64 a c))
(+.f64 (*.f64 a b) (*.f64 a c))
(+.f64 (*.f64 a b) (*.f64 a c))
(+.f64 (*.f64 a c) (*.f64 a d))
(+.f64 (*.f64 a c) (*.f64 (*.f64 a d) 1))
(+.f64 (*.f64 a d) (*.f64 a c))
(-.f64 (exp.f64 (log1p.f64 (*.f64 a (+.f64 c d)))) 1)
(/.f64 (+.f64 (pow.f64 (*.f64 a c) 3) (pow.f64 (*.f64 a d) 3)) (+.f64 (pow.f64 (*.f64 a c) 2) (-.f64 (*.f64 (*.f64 a d) (*.f64 a d)) (*.f64 (*.f64 a c) (*.f64 a d)))))
(/.f64 (-.f64 (pow.f64 (*.f64 a c) 2) (*.f64 (*.f64 a d) (*.f64 a d))) (-.f64 (*.f64 a c) (*.f64 a d)))
(/.f64 (*.f64 a (+.f64 (pow.f64 c 3) (pow.f64 d 3))) (fma.f64 c c (*.f64 d (-.f64 d c))))
(/.f64 (*.f64 a (-.f64 (pow.f64 c 2) (pow.f64 d 2))) (-.f64 c d))
(/.f64 (*.f64 (+.f64 (pow.f64 c 3) (pow.f64 d 3)) a) (fma.f64 c c (*.f64 d (-.f64 d c))))
(/.f64 (*.f64 (-.f64 (pow.f64 c 2) (pow.f64 d 2)) a) (-.f64 c d))
(pow.f64 (*.f64 a (+.f64 c d)) 1)
(pow.f64 (cbrt.f64 (*.f64 a (+.f64 c d))) 3)
(pow.f64 (pow.f64 (*.f64 a (+.f64 c d)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 a (+.f64 c d))) 2)
(sqrt.f64 (pow.f64 (*.f64 a (+.f64 c d)) 2))
(log.f64 (pow.f64 (exp.f64 (+.f64 c d)) a))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 a (+.f64 c d)))))
(cbrt.f64 (pow.f64 (*.f64 a (+.f64 c d)) 3))
(cbrt.f64 (*.f64 (pow.f64 a 3) (pow.f64 (+.f64 c d) 3)))
(cbrt.f64 (*.f64 (pow.f64 (+.f64 c d) 3) (pow.f64 a 3)))
(expm1.f64 (log1p.f64 (*.f64 a (+.f64 c d))))
(exp.f64 (log.f64 (*.f64 a (+.f64 c d))))
(exp.f64 (*.f64 (log.f64 (*.f64 a (+.f64 c d))) 1))
(log1p.f64 (expm1.f64 (*.f64 a (+.f64 c d))))
(fma.f64 a c (*.f64 a d))
(fma.f64 c a (*.f64 a d))
(fma.f64 1 (*.f64 a c) (*.f64 a d))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 a c)) 2) (cbrt.f64 (*.f64 a c)) (*.f64 a d))
(fma.f64 (sqrt.f64 (*.f64 a c)) (sqrt.f64 (*.f64 a c)) (*.f64 a d))
(-.f64 (exp.f64 (log1p.f64 (*.f64 a (+.f64 (+.f64 c d) b)))) 1)
(-.f64 (/.f64 (pow.f64 (*.f64 a c) 2) (*.f64 a (-.f64 c (+.f64 d b)))) (/.f64 (pow.f64 (*.f64 a (+.f64 d b)) 2) (*.f64 a (-.f64 c (+.f64 d b)))))
(*.f64 a (+.f64 (+.f64 c d) b))
(*.f64 (*.f64 a (+.f64 (+.f64 c d) b)) 1)
(*.f64 1 (*.f64 a (+.f64 (+.f64 c d) b)))
(*.f64 (cbrt.f64 (*.f64 a (+.f64 (+.f64 c d) b))) (pow.f64 (cbrt.f64 (*.f64 a (+.f64 (+.f64 c d) b))) 2))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 a (+.f64 (+.f64 c d) b))) 2) (cbrt.f64 (*.f64 a (+.f64 (+.f64 c d) b))))
(*.f64 (pow.f64 (cbrt.f64 a) 2) (*.f64 (cbrt.f64 a) (+.f64 (+.f64 c d) b)))
(*.f64 (sqrt.f64 (*.f64 a (+.f64 (+.f64 c d) b))) (sqrt.f64 (*.f64 a (+.f64 (+.f64 c d) b))))
(*.f64 (sqrt.f64 a) (*.f64 (sqrt.f64 a) (+.f64 (+.f64 c d) b)))
(*.f64 (+.f64 (pow.f64 (*.f64 a (+.f64 d b)) 3) (pow.f64 (*.f64 a c) 3)) (/.f64 1 (+.f64 (pow.f64 (*.f64 a c) 2) (*.f64 (*.f64 a (+.f64 d b)) (-.f64 (*.f64 a (+.f64 d b)) (*.f64 a c))))))
(*.f64 (-.f64 (pow.f64 (*.f64 a c) 2) (pow.f64 (*.f64 a (+.f64 d b)) 2)) (/.f64 1 (*.f64 a (-.f64 c (+.f64 d b)))))
(*.f64 (+.f64 (+.f64 c d) b) a)
(/.f64 1 (/.f64 (+.f64 (pow.f64 (*.f64 a c) 2) (*.f64 (*.f64 a (+.f64 d b)) (-.f64 (*.f64 a (+.f64 d b)) (*.f64 a c)))) (+.f64 (pow.f64 (*.f64 a (+.f64 d b)) 3) (pow.f64 (*.f64 a c) 3))))
(/.f64 1 (/.f64 (*.f64 a (-.f64 c (+.f64 d b))) (-.f64 (pow.f64 (*.f64 a c) 2) (pow.f64 (*.f64 a (+.f64 d b)) 2))))
(/.f64 (+.f64 (pow.f64 (*.f64 a (+.f64 d b)) 3) (pow.f64 (*.f64 a c) 3)) (+.f64 (pow.f64 (*.f64 a c) 2) (*.f64 (*.f64 a (+.f64 d b)) (-.f64 (*.f64 a (+.f64 d b)) (*.f64 a c)))))
(/.f64 (+.f64 (pow.f64 (*.f64 a (+.f64 d b)) 3) (pow.f64 (*.f64 a c) 3)) (+.f64 (pow.f64 (*.f64 a (+.f64 d b)) 2) (-.f64 (pow.f64 (*.f64 a c) 2) (*.f64 c (*.f64 a (*.f64 a (+.f64 d b)))))))
(/.f64 (-.f64 (pow.f64 (*.f64 a c) 2) (pow.f64 (*.f64 a (+.f64 d b)) 2)) (*.f64 a (-.f64 c (+.f64 d b))))
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 a (+.f64 d b)) 3) (pow.f64 (*.f64 a c) 3))) (neg.f64 (+.f64 (pow.f64 (*.f64 a c) 2) (*.f64 (*.f64 a (+.f64 d b)) (-.f64 (*.f64 a (+.f64 d b)) (*.f64 a c))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 a c) 2) (pow.f64 (*.f64 a (+.f64 d b)) 2))) (neg.f64 (*.f64 a (-.f64 c (+.f64 d b)))))
(/.f64 (-.f64 (pow.f64 (*.f64 a (+.f64 d b)) 2) (pow.f64 (*.f64 a c) 2)) (-.f64 (*.f64 a (+.f64 d b)) (*.f64 a c)))
(pow.f64 (*.f64 a (+.f64 (+.f64 c d) b)) 1)
(pow.f64 (cbrt.f64 (*.f64 a (+.f64 (+.f64 c d) b))) 3)
(pow.f64 (pow.f64 (*.f64 a (+.f64 (+.f64 c d) b)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 a (+.f64 (+.f64 c d) b))) 2)
(sqrt.f64 (pow.f64 (*.f64 a (+.f64 (+.f64 c d) b)) 2))
(log.f64 (pow.f64 (exp.f64 a) (+.f64 (+.f64 c d) b)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 a (+.f64 (+.f64 c d) b)))))
(cbrt.f64 (pow.f64 (*.f64 a (+.f64 (+.f64 c d) b)) 3))
(expm1.f64 (log1p.f64 (*.f64 a (+.f64 (+.f64 c d) b))))
(exp.f64 (log.f64 (*.f64 a (+.f64 (+.f64 c d) b))))
(exp.f64 (*.f64 (log.f64 (*.f64 a (+.f64 (+.f64 c d) b))) 1))
(log1p.f64 (expm1.f64 (*.f64 a (+.f64 (+.f64 c d) b))))
(fma.f64 a c (*.f64 a (+.f64 d b)))
(fma.f64 a (+.f64 d b) (*.f64 a c))
(fma.f64 c a (*.f64 a (+.f64 d b)))
(fma.f64 (+.f64 d b) a (*.f64 a c))
(fma.f64 1 (*.f64 a c) (*.f64 a (+.f64 d b)))
(fma.f64 1 (*.f64 a (+.f64 d b)) (*.f64 a c))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 a (+.f64 d b))) 2) (cbrt.f64 (*.f64 a (+.f64 d b))) (*.f64 a c))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 a c)) 2) (cbrt.f64 (*.f64 a c)) (*.f64 a (+.f64 d b)))
(fma.f64 (sqrt.f64 (*.f64 a (+.f64 d b))) (sqrt.f64 (*.f64 a (+.f64 d b))) (*.f64 a c))
(fma.f64 (sqrt.f64 (*.f64 a c)) (sqrt.f64 (*.f64 a c)) (*.f64 a (+.f64 d b)))
(+.f64 (*.f64 a c) (*.f64 a b))
(+.f64 (*.f64 a b) (*.f64 a c))
(+.f64 (*.f64 (*.f64 a b) 1) (*.f64 a c))
(-.f64 (exp.f64 (log1p.f64 (*.f64 a (+.f64 c b)))) 1)
(/.f64 (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (*.f64 a c) 3)) (+.f64 (*.f64 (*.f64 a b) (*.f64 a b)) (-.f64 (pow.f64 (*.f64 a c) 2) (*.f64 (*.f64 a b) (*.f64 a c)))))
(/.f64 (-.f64 (*.f64 (*.f64 a b) (*.f64 a b)) (pow.f64 (*.f64 a c) 2)) (-.f64 (*.f64 a b) (*.f64 a c)))
(/.f64 (*.f64 a (+.f64 (pow.f64 b 3) (pow.f64 c 3))) (fma.f64 b b (*.f64 c (-.f64 c b))))
(/.f64 (*.f64 a (-.f64 (pow.f64 b 2) (pow.f64 c 2))) (-.f64 b c))
(/.f64 (*.f64 (+.f64 (pow.f64 b 3) (pow.f64 c 3)) a) (fma.f64 b b (*.f64 c (-.f64 c b))))
(/.f64 (*.f64 (-.f64 (pow.f64 b 2) (pow.f64 c 2)) a) (-.f64 b c))
(pow.f64 (*.f64 a (+.f64 c b)) 1)
(pow.f64 (cbrt.f64 (*.f64 a (+.f64 c b))) 3)
(pow.f64 (pow.f64 (*.f64 a (+.f64 c b)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 a (+.f64 c b))) 2)
(sqrt.f64 (pow.f64 (*.f64 a (+.f64 c b)) 2))
(log.f64 (pow.f64 (exp.f64 a) (+.f64 c b)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 a (+.f64 c b)))))
(cbrt.f64 (pow.f64 (*.f64 a (+.f64 c b)) 3))
(cbrt.f64 (*.f64 (pow.f64 a 3) (pow.f64 (+.f64 c b) 3)))
(cbrt.f64 (*.f64 (pow.f64 (+.f64 c b) 3) (pow.f64 a 3)))
(expm1.f64 (log1p.f64 (*.f64 a (+.f64 c b))))
(exp.f64 (log.f64 (*.f64 a (+.f64 c b))))
(exp.f64 (*.f64 (log.f64 (*.f64 a (+.f64 c b))) 1))
(log1p.f64 (expm1.f64 (*.f64 a (+.f64 c b))))
(fma.f64 a b (*.f64 a c))
(fma.f64 b a (*.f64 a c))
Outputs
(*.f64 a d)
(+.f64 (*.f64 a c) (*.f64 a d))
(*.f64 a (+.f64 d c))
(+.f64 (*.f64 a c) (*.f64 a d))
(*.f64 a (+.f64 d c))
(+.f64 (*.f64 a c) (*.f64 a d))
(*.f64 a (+.f64 d c))
(*.f64 a c)
(+.f64 (*.f64 a c) (*.f64 a d))
(*.f64 a (+.f64 d c))
(+.f64 (*.f64 a c) (*.f64 a d))
(*.f64 a (+.f64 d c))
(+.f64 (*.f64 a c) (*.f64 a d))
(*.f64 a (+.f64 d c))
(*.f64 a c)
(+.f64 (*.f64 a c) (*.f64 a d))
(*.f64 a (+.f64 d c))
(+.f64 (*.f64 a c) (*.f64 a d))
(*.f64 a (+.f64 d c))
(+.f64 (*.f64 a c) (*.f64 a d))
(*.f64 a (+.f64 d c))
(*.f64 a c)
(+.f64 (*.f64 a c) (*.f64 a d))
(*.f64 a (+.f64 d c))
(+.f64 (*.f64 a c) (*.f64 a d))
(*.f64 a (+.f64 d c))
(+.f64 (*.f64 a c) (*.f64 a d))
(*.f64 a (+.f64 d c))
(*.f64 a d)
(+.f64 (*.f64 a c) (*.f64 a d))
(*.f64 a (+.f64 d c))
(+.f64 (*.f64 a c) (*.f64 a d))
(*.f64 a (+.f64 d c))
(+.f64 (*.f64 a c) (*.f64 a d))
(*.f64 a (+.f64 d c))
(*.f64 a d)
(+.f64 (*.f64 a c) (*.f64 a d))
(*.f64 a (+.f64 d c))
(+.f64 (*.f64 a c) (*.f64 a d))
(*.f64 a (+.f64 d c))
(+.f64 (*.f64 a c) (*.f64 a d))
(*.f64 a (+.f64 d c))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 b (+.f64 d c)))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 b (+.f64 d c)))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 b (+.f64 d c)))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 b (+.f64 d c)))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 b (+.f64 d c)))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 b (+.f64 d c)))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 b (+.f64 d c)))
(*.f64 a (+.f64 b (+.f64 c d)))
(*.f64 a (+.f64 b (+.f64 d c)))
(*.f64 -1 (*.f64 a (+.f64 (*.f64 -1 c) (*.f64 -1 (+.f64 b d)))))
(*.f64 a (+.f64 b (+.f64 d c)))
(*.f64 -1 (*.f64 a (+.f64 (*.f64 -1 c) (*.f64 -1 (+.f64 b d)))))
(*.f64 a (+.f64 b (+.f64 d c)))
(*.f64 -1 (*.f64 a (+.f64 (*.f64 -1 c) (*.f64 -1 (+.f64 b d)))))
(*.f64 a (+.f64 b (+.f64 d c)))
(*.f64 -1 (*.f64 a (+.f64 (*.f64 -1 c) (*.f64 -1 (+.f64 b d)))))
(*.f64 a (+.f64 b (+.f64 d c)))
(*.f64 a (+.f64 b d))
(*.f64 a (+.f64 d b))
(*.f64 a c)
(*.f64 a c)
(+.f64 (*.f64 a c) (*.f64 a d))
(*.f64 a (+.f64 d c))
(+.f64 (*.f64 a b) (+.f64 (*.f64 a c) (*.f64 a d)))
(*.f64 a (+.f64 b (+.f64 d c)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 a c) (*.f64 a d)))
(*.f64 a (+.f64 b (+.f64 d c)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 a c) (*.f64 a d)))
(*.f64 a (+.f64 b (+.f64 d c)))
(*.f64 a b)
(+.f64 (*.f64 a b) (+.f64 (*.f64 a c) (*.f64 a d)))
(*.f64 a (+.f64 b (+.f64 d c)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 a c) (*.f64 a d)))
(*.f64 a (+.f64 b (+.f64 d c)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 a c) (*.f64 a d)))
(*.f64 a (+.f64 b (+.f64 d c)))
(*.f64 a b)
(+.f64 (*.f64 a b) (+.f64 (*.f64 a c) (*.f64 a d)))
(*.f64 a (+.f64 b (+.f64 d c)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 a c) (*.f64 a d)))
(*.f64 a (+.f64 b (+.f64 d c)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 a c) (*.f64 a d)))
(*.f64 a (+.f64 b (+.f64 d c)))
(+.f64 (*.f64 a b) (*.f64 a c))
(*.f64 a (+.f64 c b))
(+.f64 (*.f64 a b) (+.f64 (*.f64 a c) (*.f64 a d)))
(*.f64 a (+.f64 b (+.f64 d c)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 a c) (*.f64 a d)))
(*.f64 a (+.f64 b (+.f64 d c)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 a c) (*.f64 a d)))
(*.f64 a (+.f64 b (+.f64 d c)))
(*.f64 a d)
(+.f64 (*.f64 a b) (+.f64 (*.f64 a c) (*.f64 a d)))
(*.f64 a (+.f64 b (+.f64 d c)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 a c) (*.f64 a d)))
(*.f64 a (+.f64 b (+.f64 d c)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 a c) (*.f64 a d)))
(*.f64 a (+.f64 b (+.f64 d c)))
(*.f64 a d)
(+.f64 (*.f64 a b) (+.f64 (*.f64 a c) (*.f64 a d)))
(*.f64 a (+.f64 b (+.f64 d c)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 a c) (*.f64 a d)))
(*.f64 a (+.f64 b (+.f64 d c)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 a c) (*.f64 a d)))
(*.f64 a (+.f64 b (+.f64 d c)))
(*.f64 a c)
(+.f64 (*.f64 a b) (*.f64 a c))
(*.f64 a (+.f64 c b))
(+.f64 (*.f64 a b) (*.f64 a c))
(*.f64 a (+.f64 c b))
(+.f64 (*.f64 a b) (*.f64 a c))
(*.f64 a (+.f64 c b))
(*.f64 a b)
(+.f64 (*.f64 a b) (*.f64 a c))
(*.f64 a (+.f64 c b))
(+.f64 (*.f64 a b) (*.f64 a c))
(*.f64 a (+.f64 c b))
(+.f64 (*.f64 a b) (*.f64 a c))
(*.f64 a (+.f64 c b))
(*.f64 a b)
(+.f64 (*.f64 a b) (*.f64 a c))
(*.f64 a (+.f64 c b))
(+.f64 (*.f64 a b) (*.f64 a c))
(*.f64 a (+.f64 c b))
(+.f64 (*.f64 a b) (*.f64 a c))
(*.f64 a (+.f64 c b))
(*.f64 a b)
(+.f64 (*.f64 a b) (*.f64 a c))
(*.f64 a (+.f64 c b))
(+.f64 (*.f64 a b) (*.f64 a c))
(*.f64 a (+.f64 c b))
(+.f64 (*.f64 a b) (*.f64 a c))
(*.f64 a (+.f64 c b))
(*.f64 a c)
(+.f64 (*.f64 a b) (*.f64 a c))
(*.f64 a (+.f64 c b))
(+.f64 (*.f64 a b) (*.f64 a c))
(*.f64 a (+.f64 c b))
(+.f64 (*.f64 a b) (*.f64 a c))
(*.f64 a (+.f64 c b))
(*.f64 a c)
(+.f64 (*.f64 a b) (*.f64 a c))
(*.f64 a (+.f64 c b))
(+.f64 (*.f64 a b) (*.f64 a c))
(*.f64 a (+.f64 c b))
(+.f64 (*.f64 a b) (*.f64 a c))
(*.f64 a (+.f64 c b))
(+.f64 (*.f64 a c) (*.f64 a d))
(*.f64 a (+.f64 d c))
(+.f64 (*.f64 a c) (*.f64 (*.f64 a d) 1))
(*.f64 a (+.f64 d c))
(+.f64 (*.f64 a d) (*.f64 a c))
(*.f64 a (+.f64 d c))
(-.f64 (exp.f64 (log1p.f64 (*.f64 a (+.f64 c d)))) 1)
(*.f64 a (+.f64 d c))
(/.f64 (+.f64 (pow.f64 (*.f64 a c) 3) (pow.f64 (*.f64 a d) 3)) (+.f64 (pow.f64 (*.f64 a c) 2) (-.f64 (*.f64 (*.f64 a d) (*.f64 a d)) (*.f64 (*.f64 a c) (*.f64 a d)))))
(/.f64 (+.f64 (pow.f64 (*.f64 a c) 3) (pow.f64 (*.f64 a d) 3)) (+.f64 (pow.f64 (*.f64 a c) 2) (*.f64 (*.f64 a d) (-.f64 (*.f64 a d) (*.f64 a c)))))
(/.f64 (*.f64 (pow.f64 a 3) (+.f64 (pow.f64 c 3) (pow.f64 d 3))) (fma.f64 (*.f64 a d) (*.f64 a (-.f64 d c)) (pow.f64 (*.f64 a c) 2)))
(/.f64 (*.f64 (pow.f64 a 3) (+.f64 (pow.f64 c 3) (pow.f64 d 3))) (fma.f64 a (*.f64 d (*.f64 a (-.f64 d c))) (pow.f64 (*.f64 a c) 2)))
(/.f64 (-.f64 (pow.f64 (*.f64 a c) 2) (*.f64 (*.f64 a d) (*.f64 a d))) (-.f64 (*.f64 a c) (*.f64 a d)))
(/.f64 (-.f64 (pow.f64 (*.f64 a c) 2) (*.f64 (*.f64 a a) (pow.f64 d 2))) (*.f64 a (-.f64 c d)))
(/.f64 (*.f64 (*.f64 a (+.f64 d c)) (*.f64 a (-.f64 c d))) (*.f64 a (-.f64 c d)))
(/.f64 (*.f64 (*.f64 a a) (-.f64 (pow.f64 c 2) (pow.f64 d 2))) (*.f64 a (-.f64 c d)))
(/.f64 (*.f64 a (+.f64 (pow.f64 c 3) (pow.f64 d 3))) (fma.f64 c c (*.f64 d (-.f64 d c))))
(/.f64 a (/.f64 (fma.f64 c c (*.f64 d (-.f64 d c))) (+.f64 (pow.f64 c 3) (pow.f64 d 3))))
(*.f64 (/.f64 a (fma.f64 c c (*.f64 d (-.f64 d c)))) (+.f64 (pow.f64 c 3) (pow.f64 d 3)))
(*.f64 (/.f64 a (fma.f64 d (-.f64 d c) (pow.f64 c 2))) (+.f64 (pow.f64 c 3) (pow.f64 d 3)))
(/.f64 (*.f64 a (-.f64 (pow.f64 c 2) (pow.f64 d 2))) (-.f64 c d))
(/.f64 a (/.f64 (-.f64 c d) (-.f64 (pow.f64 c 2) (pow.f64 d 2))))
(*.f64 (/.f64 a (-.f64 c d)) (-.f64 (pow.f64 c 2) (pow.f64 d 2)))
(/.f64 (*.f64 (+.f64 (pow.f64 c 3) (pow.f64 d 3)) a) (fma.f64 c c (*.f64 d (-.f64 d c))))
(/.f64 a (/.f64 (fma.f64 c c (*.f64 d (-.f64 d c))) (+.f64 (pow.f64 c 3) (pow.f64 d 3))))
(*.f64 (/.f64 a (fma.f64 c c (*.f64 d (-.f64 d c)))) (+.f64 (pow.f64 c 3) (pow.f64 d 3)))
(*.f64 (/.f64 a (fma.f64 d (-.f64 d c) (pow.f64 c 2))) (+.f64 (pow.f64 c 3) (pow.f64 d 3)))
(/.f64 (*.f64 (-.f64 (pow.f64 c 2) (pow.f64 d 2)) a) (-.f64 c d))
(/.f64 a (/.f64 (-.f64 c d) (-.f64 (pow.f64 c 2) (pow.f64 d 2))))
(*.f64 (/.f64 a (-.f64 c d)) (-.f64 (pow.f64 c 2) (pow.f64 d 2)))
(pow.f64 (*.f64 a (+.f64 c d)) 1)
(*.f64 a (+.f64 d c))
(pow.f64 (cbrt.f64 (*.f64 a (+.f64 c d))) 3)
(*.f64 a (+.f64 d c))
(pow.f64 (pow.f64 (*.f64 a (+.f64 c d)) 3) 1/3)
(*.f64 a (+.f64 d c))
(pow.f64 (sqrt.f64 (*.f64 a (+.f64 c d))) 2)
(*.f64 a (+.f64 d c))
(sqrt.f64 (pow.f64 (*.f64 a (+.f64 c d)) 2))
(*.f64 a (+.f64 d c))
(log.f64 (pow.f64 (exp.f64 (+.f64 c d)) a))
(*.f64 a (+.f64 d c))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 a (+.f64 c d)))))
(*.f64 a (+.f64 d c))
(cbrt.f64 (pow.f64 (*.f64 a (+.f64 c d)) 3))
(*.f64 a (+.f64 d c))
(cbrt.f64 (*.f64 (pow.f64 a 3) (pow.f64 (+.f64 c d) 3)))
(*.f64 a (+.f64 d c))
(cbrt.f64 (*.f64 (pow.f64 (+.f64 c d) 3) (pow.f64 a 3)))
(*.f64 a (+.f64 d c))
(expm1.f64 (log1p.f64 (*.f64 a (+.f64 c d))))
(*.f64 a (+.f64 d c))
(exp.f64 (log.f64 (*.f64 a (+.f64 c d))))
(*.f64 a (+.f64 d c))
(exp.f64 (*.f64 (log.f64 (*.f64 a (+.f64 c d))) 1))
(*.f64 a (+.f64 d c))
(log1p.f64 (expm1.f64 (*.f64 a (+.f64 c d))))
(*.f64 a (+.f64 d c))
(fma.f64 a c (*.f64 a d))
(*.f64 a (+.f64 d c))
(fma.f64 c a (*.f64 a d))
(*.f64 a (+.f64 d c))
(fma.f64 1 (*.f64 a c) (*.f64 a d))
(*.f64 a (+.f64 d c))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 a c)) 2) (cbrt.f64 (*.f64 a c)) (*.f64 a d))
(*.f64 a (+.f64 d c))
(fma.f64 (sqrt.f64 (*.f64 a c)) (sqrt.f64 (*.f64 a c)) (*.f64 a d))
(*.f64 a (+.f64 d c))
(-.f64 (exp.f64 (log1p.f64 (*.f64 a (+.f64 (+.f64 c d) b)))) 1)
(*.f64 a (+.f64 b (+.f64 d c)))
(-.f64 (/.f64 (pow.f64 (*.f64 a c) 2) (*.f64 a (-.f64 c (+.f64 d b)))) (/.f64 (pow.f64 (*.f64 a (+.f64 d b)) 2) (*.f64 a (-.f64 c (+.f64 d b)))))
(/.f64 (-.f64 (pow.f64 (*.f64 a c) 2) (pow.f64 (*.f64 a (+.f64 d b)) 2)) (*.f64 a (-.f64 c (+.f64 d b))))
(/.f64 (-.f64 (pow.f64 (*.f64 a c) 2) (pow.f64 (*.f64 a (+.f64 d b)) 2)) (*.f64 a (-.f64 (-.f64 c d) b)))
(*.f64 a (+.f64 (+.f64 c d) b))
(*.f64 a (+.f64 b (+.f64 d c)))
(*.f64 (*.f64 a (+.f64 (+.f64 c d) b)) 1)
(*.f64 a (+.f64 b (+.f64 d c)))
(*.f64 1 (*.f64 a (+.f64 (+.f64 c d) b)))
(*.f64 a (+.f64 b (+.f64 d c)))
(*.f64 (cbrt.f64 (*.f64 a (+.f64 (+.f64 c d) b))) (pow.f64 (cbrt.f64 (*.f64 a (+.f64 (+.f64 c d) b))) 2))
(*.f64 a (+.f64 b (+.f64 d c)))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 a (+.f64 (+.f64 c d) b))) 2) (cbrt.f64 (*.f64 a (+.f64 (+.f64 c d) b))))
(*.f64 a (+.f64 b (+.f64 d c)))
(*.f64 (pow.f64 (cbrt.f64 a) 2) (*.f64 (cbrt.f64 a) (+.f64 (+.f64 c d) b)))
(*.f64 a (+.f64 b (+.f64 d c)))
(*.f64 (sqrt.f64 (*.f64 a (+.f64 (+.f64 c d) b))) (sqrt.f64 (*.f64 a (+.f64 (+.f64 c d) b))))
(*.f64 a (+.f64 b (+.f64 d c)))
(*.f64 (sqrt.f64 a) (*.f64 (sqrt.f64 a) (+.f64 (+.f64 c d) b)))
(*.f64 a (+.f64 b (+.f64 d c)))
(*.f64 (+.f64 (pow.f64 (*.f64 a (+.f64 d b)) 3) (pow.f64 (*.f64 a c) 3)) (/.f64 1 (+.f64 (pow.f64 (*.f64 a c) 2) (*.f64 (*.f64 a (+.f64 d b)) (-.f64 (*.f64 a (+.f64 d b)) (*.f64 a c))))))
(*.f64 (+.f64 (pow.f64 (*.f64 a c) 3) (pow.f64 (*.f64 a (+.f64 d b)) 3)) (/.f64 1 (+.f64 (pow.f64 (*.f64 a c) 2) (*.f64 (*.f64 a (+.f64 d b)) (*.f64 a (-.f64 (+.f64 d b) c))))))
(/.f64 (*.f64 (pow.f64 a 3) (+.f64 (pow.f64 c 3) (pow.f64 (+.f64 d b) 3))) (fma.f64 a (*.f64 (+.f64 d b) (*.f64 a (+.f64 b (-.f64 d c)))) (pow.f64 (*.f64 a c) 2)))
(/.f64 (pow.f64 a 3) (/.f64 (fma.f64 a (*.f64 (+.f64 d b) (*.f64 a (+.f64 b (-.f64 d c)))) (pow.f64 (*.f64 a c) 2)) (+.f64 (pow.f64 c 3) (pow.f64 (+.f64 d b) 3))))
(*.f64 (-.f64 (pow.f64 (*.f64 a c) 2) (pow.f64 (*.f64 a (+.f64 d b)) 2)) (/.f64 1 (*.f64 a (-.f64 c (+.f64 d b)))))
(/.f64 (-.f64 (pow.f64 (*.f64 a c) 2) (pow.f64 (*.f64 a (+.f64 d b)) 2)) (*.f64 a (-.f64 c (+.f64 d b))))
(/.f64 (-.f64 (pow.f64 (*.f64 a c) 2) (pow.f64 (*.f64 a (+.f64 d b)) 2)) (*.f64 a (-.f64 (-.f64 c d) b)))
(*.f64 (+.f64 (+.f64 c d) b) a)
(*.f64 a (+.f64 b (+.f64 d c)))
(/.f64 1 (/.f64 (+.f64 (pow.f64 (*.f64 a c) 2) (*.f64 (*.f64 a (+.f64 d b)) (-.f64 (*.f64 a (+.f64 d b)) (*.f64 a c)))) (+.f64 (pow.f64 (*.f64 a (+.f64 d b)) 3) (pow.f64 (*.f64 a c) 3))))
(*.f64 (+.f64 (pow.f64 (*.f64 a c) 3) (pow.f64 (*.f64 a (+.f64 d b)) 3)) (/.f64 1 (+.f64 (pow.f64 (*.f64 a c) 2) (*.f64 (*.f64 a (+.f64 d b)) (*.f64 a (-.f64 (+.f64 d b) c))))))
(/.f64 (*.f64 (pow.f64 a 3) (+.f64 (pow.f64 c 3) (pow.f64 (+.f64 d b) 3))) (fma.f64 a (*.f64 (+.f64 d b) (*.f64 a (+.f64 b (-.f64 d c)))) (pow.f64 (*.f64 a c) 2)))
(/.f64 (pow.f64 a 3) (/.f64 (fma.f64 a (*.f64 (+.f64 d b) (*.f64 a (+.f64 b (-.f64 d c)))) (pow.f64 (*.f64 a c) 2)) (+.f64 (pow.f64 c 3) (pow.f64 (+.f64 d b) 3))))
(/.f64 1 (/.f64 (*.f64 a (-.f64 c (+.f64 d b))) (-.f64 (pow.f64 (*.f64 a c) 2) (pow.f64 (*.f64 a (+.f64 d b)) 2))))
(/.f64 (-.f64 (pow.f64 (*.f64 a c) 2) (pow.f64 (*.f64 a (+.f64 d b)) 2)) (*.f64 a (-.f64 c (+.f64 d b))))
(/.f64 (-.f64 (pow.f64 (*.f64 a c) 2) (pow.f64 (*.f64 a (+.f64 d b)) 2)) (*.f64 a (-.f64 (-.f64 c d) b)))
(/.f64 (+.f64 (pow.f64 (*.f64 a (+.f64 d b)) 3) (pow.f64 (*.f64 a c) 3)) (+.f64 (pow.f64 (*.f64 a c) 2) (*.f64 (*.f64 a (+.f64 d b)) (-.f64 (*.f64 a (+.f64 d b)) (*.f64 a c)))))
(*.f64 (+.f64 (pow.f64 (*.f64 a c) 3) (pow.f64 (*.f64 a (+.f64 d b)) 3)) (/.f64 1 (+.f64 (pow.f64 (*.f64 a c) 2) (*.f64 (*.f64 a (+.f64 d b)) (*.f64 a (-.f64 (+.f64 d b) c))))))
(/.f64 (*.f64 (pow.f64 a 3) (+.f64 (pow.f64 c 3) (pow.f64 (+.f64 d b) 3))) (fma.f64 a (*.f64 (+.f64 d b) (*.f64 a (+.f64 b (-.f64 d c)))) (pow.f64 (*.f64 a c) 2)))
(/.f64 (pow.f64 a 3) (/.f64 (fma.f64 a (*.f64 (+.f64 d b) (*.f64 a (+.f64 b (-.f64 d c)))) (pow.f64 (*.f64 a c) 2)) (+.f64 (pow.f64 c 3) (pow.f64 (+.f64 d b) 3))))
(/.f64 (+.f64 (pow.f64 (*.f64 a (+.f64 d b)) 3) (pow.f64 (*.f64 a c) 3)) (+.f64 (pow.f64 (*.f64 a (+.f64 d b)) 2) (-.f64 (pow.f64 (*.f64 a c) 2) (*.f64 c (*.f64 a (*.f64 a (+.f64 d b)))))))
(*.f64 (+.f64 (pow.f64 (*.f64 a c) 3) (pow.f64 (*.f64 a (+.f64 d b)) 3)) (/.f64 1 (+.f64 (pow.f64 (*.f64 a c) 2) (*.f64 (*.f64 a (+.f64 d b)) (*.f64 a (-.f64 (+.f64 d b) c))))))
(/.f64 (*.f64 (pow.f64 a 3) (+.f64 (pow.f64 c 3) (pow.f64 (+.f64 d b) 3))) (fma.f64 a (*.f64 (+.f64 d b) (*.f64 a (+.f64 b (-.f64 d c)))) (pow.f64 (*.f64 a c) 2)))
(/.f64 (pow.f64 a 3) (/.f64 (fma.f64 a (*.f64 (+.f64 d b) (*.f64 a (+.f64 b (-.f64 d c)))) (pow.f64 (*.f64 a c) 2)) (+.f64 (pow.f64 c 3) (pow.f64 (+.f64 d b) 3))))
(/.f64 (-.f64 (pow.f64 (*.f64 a c) 2) (pow.f64 (*.f64 a (+.f64 d b)) 2)) (*.f64 a (-.f64 c (+.f64 d b))))
(/.f64 (-.f64 (pow.f64 (*.f64 a c) 2) (pow.f64 (*.f64 a (+.f64 d b)) 2)) (*.f64 a (-.f64 (-.f64 c d) b)))
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 a (+.f64 d b)) 3) (pow.f64 (*.f64 a c) 3))) (neg.f64 (+.f64 (pow.f64 (*.f64 a c) 2) (*.f64 (*.f64 a (+.f64 d b)) (-.f64 (*.f64 a (+.f64 d b)) (*.f64 a c))))))
(*.f64 (+.f64 (pow.f64 (*.f64 a c) 3) (pow.f64 (*.f64 a (+.f64 d b)) 3)) (/.f64 1 (+.f64 (pow.f64 (*.f64 a c) 2) (*.f64 (*.f64 a (+.f64 d b)) (*.f64 a (-.f64 (+.f64 d b) c))))))
(/.f64 (*.f64 (pow.f64 a 3) (+.f64 (pow.f64 c 3) (pow.f64 (+.f64 d b) 3))) (fma.f64 a (*.f64 (+.f64 d b) (*.f64 a (+.f64 b (-.f64 d c)))) (pow.f64 (*.f64 a c) 2)))
(/.f64 (pow.f64 a 3) (/.f64 (fma.f64 a (*.f64 (+.f64 d b) (*.f64 a (+.f64 b (-.f64 d c)))) (pow.f64 (*.f64 a c) 2)) (+.f64 (pow.f64 c 3) (pow.f64 (+.f64 d b) 3))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 a c) 2) (pow.f64 (*.f64 a (+.f64 d b)) 2))) (neg.f64 (*.f64 a (-.f64 c (+.f64 d b)))))
(/.f64 (-.f64 (pow.f64 (*.f64 a c) 2) (pow.f64 (*.f64 a (+.f64 d b)) 2)) (*.f64 a (-.f64 c (+.f64 d b))))
(/.f64 (-.f64 (pow.f64 (*.f64 a c) 2) (pow.f64 (*.f64 a (+.f64 d b)) 2)) (*.f64 a (-.f64 (-.f64 c d) b)))
(/.f64 (-.f64 (pow.f64 (*.f64 a (+.f64 d b)) 2) (pow.f64 (*.f64 a c) 2)) (-.f64 (*.f64 a (+.f64 d b)) (*.f64 a c)))
(/.f64 (-.f64 (pow.f64 (*.f64 a c) 2) (pow.f64 (*.f64 a (+.f64 d b)) 2)) (*.f64 a (-.f64 c (+.f64 d b))))
(/.f64 (-.f64 (pow.f64 (*.f64 a c) 2) (pow.f64 (*.f64 a (+.f64 d b)) 2)) (*.f64 a (-.f64 (-.f64 c d) b)))
(pow.f64 (*.f64 a (+.f64 (+.f64 c d) b)) 1)
(*.f64 a (+.f64 b (+.f64 d c)))
(pow.f64 (cbrt.f64 (*.f64 a (+.f64 (+.f64 c d) b))) 3)
(*.f64 a (+.f64 b (+.f64 d c)))
(pow.f64 (pow.f64 (*.f64 a (+.f64 (+.f64 c d) b)) 3) 1/3)
(*.f64 a (+.f64 b (+.f64 d c)))
(pow.f64 (sqrt.f64 (*.f64 a (+.f64 (+.f64 c d) b))) 2)
(*.f64 a (+.f64 b (+.f64 d c)))
(sqrt.f64 (pow.f64 (*.f64 a (+.f64 (+.f64 c d) b)) 2))
(*.f64 a (+.f64 b (+.f64 d c)))
(log.f64 (pow.f64 (exp.f64 a) (+.f64 (+.f64 c d) b)))
(*.f64 a (+.f64 b (+.f64 d c)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 a (+.f64 (+.f64 c d) b)))))
(*.f64 a (+.f64 b (+.f64 d c)))
(cbrt.f64 (pow.f64 (*.f64 a (+.f64 (+.f64 c d) b)) 3))
(*.f64 a (+.f64 b (+.f64 d c)))
(expm1.f64 (log1p.f64 (*.f64 a (+.f64 (+.f64 c d) b))))
(*.f64 a (+.f64 b (+.f64 d c)))
(exp.f64 (log.f64 (*.f64 a (+.f64 (+.f64 c d) b))))
(*.f64 a (+.f64 b (+.f64 d c)))
(exp.f64 (*.f64 (log.f64 (*.f64 a (+.f64 (+.f64 c d) b))) 1))
(*.f64 a (+.f64 b (+.f64 d c)))
(log1p.f64 (expm1.f64 (*.f64 a (+.f64 (+.f64 c d) b))))
(*.f64 a (+.f64 b (+.f64 d c)))
(fma.f64 a c (*.f64 a (+.f64 d b)))
(*.f64 a (+.f64 b (+.f64 d c)))
(fma.f64 a (+.f64 d b) (*.f64 a c))
(*.f64 a (+.f64 b (+.f64 d c)))
(fma.f64 c a (*.f64 a (+.f64 d b)))
(*.f64 a (+.f64 b (+.f64 d c)))
(fma.f64 (+.f64 d b) a (*.f64 a c))
(*.f64 a (+.f64 b (+.f64 d c)))
(fma.f64 1 (*.f64 a c) (*.f64 a (+.f64 d b)))
(*.f64 a (+.f64 b (+.f64 d c)))
(fma.f64 1 (*.f64 a (+.f64 d b)) (*.f64 a c))
(*.f64 a (+.f64 b (+.f64 d c)))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 a (+.f64 d b))) 2) (cbrt.f64 (*.f64 a (+.f64 d b))) (*.f64 a c))
(*.f64 a (+.f64 b (+.f64 d c)))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 a c)) 2) (cbrt.f64 (*.f64 a c)) (*.f64 a (+.f64 d b)))
(*.f64 a (+.f64 b (+.f64 d c)))
(fma.f64 (sqrt.f64 (*.f64 a (+.f64 d b))) (sqrt.f64 (*.f64 a (+.f64 d b))) (*.f64 a c))
(*.f64 a (+.f64 b (+.f64 d c)))
(fma.f64 (sqrt.f64 (*.f64 a c)) (sqrt.f64 (*.f64 a c)) (*.f64 a (+.f64 d b)))
(*.f64 a (+.f64 b (+.f64 d c)))
(+.f64 (*.f64 a c) (*.f64 a b))
(*.f64 a (+.f64 c b))
(+.f64 (*.f64 a b) (*.f64 a c))
(*.f64 a (+.f64 c b))
(+.f64 (*.f64 (*.f64 a b) 1) (*.f64 a c))
(*.f64 a (+.f64 c b))
(-.f64 (exp.f64 (log1p.f64 (*.f64 a (+.f64 c b)))) 1)
(*.f64 a (+.f64 c b))
(/.f64 (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (*.f64 a c) 3)) (+.f64 (*.f64 (*.f64 a b) (*.f64 a b)) (-.f64 (pow.f64 (*.f64 a c) 2) (*.f64 (*.f64 a b) (*.f64 a c)))))
(/.f64 (+.f64 (pow.f64 (*.f64 a c) 3) (pow.f64 (*.f64 a b) 3)) (fma.f64 (*.f64 a b) (*.f64 a b) (-.f64 (pow.f64 (*.f64 a c) 2) (*.f64 (*.f64 (*.f64 a b) a) c))))
(/.f64 (*.f64 (pow.f64 a 3) (+.f64 (pow.f64 c 3) (pow.f64 b 3))) (fma.f64 a (*.f64 (pow.f64 b 2) a) (*.f64 (*.f64 a c) (-.f64 (*.f64 a c) (*.f64 a b)))))
(/.f64 (*.f64 (pow.f64 a 3) (+.f64 (pow.f64 c 3) (pow.f64 b 3))) (+.f64 (pow.f64 (*.f64 a c) 2) (*.f64 (*.f64 a b) (*.f64 a (-.f64 b c)))))
(/.f64 (-.f64 (*.f64 (*.f64 a b) (*.f64 a b)) (pow.f64 (*.f64 a c) 2)) (-.f64 (*.f64 a b) (*.f64 a c)))
(/.f64 (-.f64 (*.f64 (*.f64 a a) (pow.f64 b 2)) (pow.f64 (*.f64 a c) 2)) (*.f64 a (-.f64 b c)))
(/.f64 (*.f64 (*.f64 a (+.f64 c b)) (*.f64 a (-.f64 b c))) (*.f64 a (-.f64 b c)))
(/.f64 (*.f64 (*.f64 a a) (-.f64 (pow.f64 b 2) (pow.f64 c 2))) (*.f64 a (-.f64 b c)))
(/.f64 (*.f64 a (+.f64 (pow.f64 b 3) (pow.f64 c 3))) (fma.f64 b b (*.f64 c (-.f64 c b))))
(/.f64 (*.f64 a (+.f64 (pow.f64 c 3) (pow.f64 b 3))) (fma.f64 b b (*.f64 c (-.f64 c b))))
(/.f64 a (/.f64 (fma.f64 b b (*.f64 c (-.f64 c b))) (+.f64 (pow.f64 c 3) (pow.f64 b 3))))
(*.f64 (/.f64 a (fma.f64 c (-.f64 c b) (pow.f64 b 2))) (+.f64 (pow.f64 c 3) (pow.f64 b 3)))
(/.f64 (*.f64 a (-.f64 (pow.f64 b 2) (pow.f64 c 2))) (-.f64 b c))
(/.f64 a (/.f64 (-.f64 b c) (-.f64 (pow.f64 b 2) (pow.f64 c 2))))
(*.f64 (/.f64 a (-.f64 b c)) (-.f64 (pow.f64 b 2) (pow.f64 c 2)))
(/.f64 (*.f64 (+.f64 (pow.f64 b 3) (pow.f64 c 3)) a) (fma.f64 b b (*.f64 c (-.f64 c b))))
(/.f64 (*.f64 a (+.f64 (pow.f64 c 3) (pow.f64 b 3))) (fma.f64 b b (*.f64 c (-.f64 c b))))
(/.f64 a (/.f64 (fma.f64 b b (*.f64 c (-.f64 c b))) (+.f64 (pow.f64 c 3) (pow.f64 b 3))))
(*.f64 (/.f64 a (fma.f64 c (-.f64 c b) (pow.f64 b 2))) (+.f64 (pow.f64 c 3) (pow.f64 b 3)))
(/.f64 (*.f64 (-.f64 (pow.f64 b 2) (pow.f64 c 2)) a) (-.f64 b c))
(/.f64 a (/.f64 (-.f64 b c) (-.f64 (pow.f64 b 2) (pow.f64 c 2))))
(*.f64 (/.f64 a (-.f64 b c)) (-.f64 (pow.f64 b 2) (pow.f64 c 2)))
(pow.f64 (*.f64 a (+.f64 c b)) 1)
(*.f64 a (+.f64 c b))
(pow.f64 (cbrt.f64 (*.f64 a (+.f64 c b))) 3)
(*.f64 a (+.f64 c b))
(pow.f64 (pow.f64 (*.f64 a (+.f64 c b)) 3) 1/3)
(*.f64 a (+.f64 c b))
(pow.f64 (sqrt.f64 (*.f64 a (+.f64 c b))) 2)
(*.f64 a (+.f64 c b))
(sqrt.f64 (pow.f64 (*.f64 a (+.f64 c b)) 2))
(*.f64 a (+.f64 c b))
(log.f64 (pow.f64 (exp.f64 a) (+.f64 c b)))
(*.f64 a (+.f64 c b))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 a (+.f64 c b)))))
(*.f64 a (+.f64 c b))
(cbrt.f64 (pow.f64 (*.f64 a (+.f64 c b)) 3))
(*.f64 a (+.f64 c b))
(cbrt.f64 (*.f64 (pow.f64 a 3) (pow.f64 (+.f64 c b) 3)))
(*.f64 a (+.f64 c b))
(cbrt.f64 (*.f64 (pow.f64 (+.f64 c b) 3) (pow.f64 a 3)))
(*.f64 a (+.f64 c b))
(expm1.f64 (log1p.f64 (*.f64 a (+.f64 c b))))
(*.f64 a (+.f64 c b))
(exp.f64 (log.f64 (*.f64 a (+.f64 c b))))
(*.f64 a (+.f64 c b))
(exp.f64 (*.f64 (log.f64 (*.f64 a (+.f64 c b))) 1))
(*.f64 a (+.f64 c b))
(log1p.f64 (expm1.f64 (*.f64 a (+.f64 c b))))
(*.f64 a (+.f64 c b))
(fma.f64 a b (*.f64 a c))
(*.f64 a (+.f64 c b))
(fma.f64 b a (*.f64 a c))
(*.f64 a (+.f64 c b))

eval50.0ms (1.3%)

Compiler

Compiled 1998 to 697 computations (65.1% saved)

prune23.0ms (0.6%)

Pruning

6 alts after pruning (1 fresh and 5 done)

PrunedKeptTotal
New1341135
Fresh000
Picked044
Done011
Total1346140
Accuracy
100.0%
Counts
140 → 6
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(fma.f64 d a (*.f64 a (+.f64 b c)))
99.8%
(+.f64 (*.f64 a d) (*.f64 a c))
99.9%
(+.f64 (*.f64 a c) (*.f64 a (+.f64 b d)))
100.0%
(*.f64 a (+.f64 (+.f64 b c) d))
99.9%
(*.f64 a (+.f64 c d))
93.3%
(*.f64 a d)
100.0%
(fma.f64 d a (*.f64 a (+.f64 b c)))
99.8%
(+.f64 (*.f64 a d) (*.f64 a c))
99.9%
(+.f64 (*.f64 a c) (*.f64 a (+.f64 b d)))
100.0%
(*.f64 a (+.f64 (+.f64 b c) d))
99.9%
(*.f64 a (+.f64 c d))
93.3%
(*.f64 a d)
Compiler

Compiled 126 to 80 computations (36.5% saved)

localize29.0ms (0.8%)

Localize:

Found 1 expressions with local error:

NewAccuracyProgram
99.9%
(+.f64 (*.f64 a d) (*.f64 a c))
Compiler

Compiled 21 to 8 computations (61.9% saved)

series2.0ms (0.1%)

Counts
1 → 36
Calls

9 calls:

TimeVariablePointExpression
0.0ms
a
@0
(+.f64 (*.f64 a d) (*.f64 a c))
0.0ms
a
@-inf
(+.f64 (*.f64 a d) (*.f64 a c))
0.0ms
d
@inf
(+.f64 (*.f64 a d) (*.f64 a c))
0.0ms
c
@0
(+.f64 (*.f64 a d) (*.f64 a c))
0.0ms
d
@-inf
(+.f64 (*.f64 a d) (*.f64 a c))

rewrite99.0ms (2.6%)

Algorithm
batch-egg-rewrite
Rules
1122×unpow-prod-down
756×fma-def
732×log-prod
679×log1p-expm1-u
679×expm1-log1p-u
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01222
114022
2185622
Stop Event
node limit
Counts
1 → 94
Calls
Call 1
Inputs
(+.f64 (*.f64 a d) (*.f64 a c))
Outputs
(-.f64 (exp.f64 (log1p.f64 (*.f64 a (+.f64 d c)))) 1)
(-.f64 (/.f64 (pow.f64 (*.f64 a d) 2) (*.f64 a (-.f64 d c))) (/.f64 (pow.f64 (*.f64 a c) 2) (*.f64 a (-.f64 d c))))
(*.f64 a (+.f64 d c))
(*.f64 a (pow.f64 (cbrt.f64 (+.f64 d c)) 3))
(*.f64 a (pow.f64 (sqrt.f64 (+.f64 d c)) 2))
(*.f64 (*.f64 a (+.f64 d c)) 1)
(*.f64 (*.f64 a (+.f64 d c)) (log.f64 (exp.f64 1)))
(*.f64 1 (*.f64 a (+.f64 d c)))
(*.f64 (cbrt.f64 (*.f64 a (+.f64 d c))) (pow.f64 (cbrt.f64 (*.f64 a (+.f64 d c))) 2))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 a (+.f64 d c))) 2) (cbrt.f64 (*.f64 a (+.f64 d c))))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 a (+.f64 d c))) 2) (pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 a (+.f64 d c)))) 2))
(*.f64 (pow.f64 (cbrt.f64 a) 2) (*.f64 (cbrt.f64 a) (+.f64 d c)))
(*.f64 (sqrt.f64 (*.f64 a (+.f64 d c))) (sqrt.f64 (*.f64 a (+.f64 d c))))
(*.f64 (sqrt.f64 a) (*.f64 (sqrt.f64 a) (+.f64 d c)))
(*.f64 (+.f64 (pow.f64 (*.f64 a c) 3) (pow.f64 (*.f64 a d) 3)) (/.f64 1 (fma.f64 (*.f64 a c) (-.f64 (*.f64 a c) (*.f64 a d)) (pow.f64 (*.f64 a d) 2))))
(*.f64 (+.f64 (pow.f64 (*.f64 a c) 3) (pow.f64 (*.f64 a d) 3)) (pow.f64 (/.f64 1 (fma.f64 (*.f64 a c) (-.f64 (*.f64 a c) (*.f64 a d)) (pow.f64 (*.f64 a d) 2))) 1))
(*.f64 (-.f64 (pow.f64 (*.f64 a d) 2) (pow.f64 (*.f64 a c) 2)) (/.f64 1 (*.f64 a (-.f64 d c))))
(*.f64 (-.f64 (pow.f64 (*.f64 a d) 2) (pow.f64 (*.f64 a c) 2)) (pow.f64 (/.f64 1 (*.f64 a (-.f64 d c))) 1))
(*.f64 (+.f64 d c) a)
(*.f64 (pow.f64 1 1/3) (*.f64 a (+.f64 d c)))
(*.f64 (pow.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (*.f64 a (+.f64 d c))) 2)) 3) (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 a (+.f64 d c)))) 3))
(*.f64 (pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 a (+.f64 d c)))) 3) (pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 a (+.f64 d c)))) 3))
(*.f64 (pow.f64 (*.f64 (cbrt.f64 (cbrt.f64 (*.f64 a (+.f64 d c)))) (cbrt.f64 (cbrt.f64 (*.f64 a (+.f64 d c))))) 3) (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 a (+.f64 d c)))) 3))
(*.f64 (pow.f64 (sqrt.f64 (cbrt.f64 (*.f64 a (+.f64 d c)))) 3) (pow.f64 (sqrt.f64 (cbrt.f64 (*.f64 a (+.f64 d c)))) 3))
(*.f64 (pow.f64 (pow.f64 (*.f64 a (+.f64 d c)) 3/2) 1/3) (pow.f64 (pow.f64 (*.f64 a (+.f64 d c)) 3/2) 1/3))
(*.f64 (pow.f64 (sqrt.f64 (pow.f64 (*.f64 a (+.f64 d c)) 3)) 1/3) (pow.f64 (sqrt.f64 (pow.f64 (*.f64 a (+.f64 d c)) 3)) 1/3))
(*.f64 (pow.f64 (*.f64 (pow.f64 (*.f64 a (+.f64 d c)) 2) a) 1/3) (pow.f64 (+.f64 d c) 1/3))
(*.f64 (pow.f64 (pow.f64 (*.f64 (*.f64 a (+.f64 d c)) (cbrt.f64 (*.f64 a (+.f64 d c)))) 2) 1/3) (pow.f64 (cbrt.f64 (*.f64 a (+.f64 d c))) 1/3))
(*.f64 (pow.f64 (pow.f64 (*.f64 a (+.f64 d c)) 5/2) 1/3) (pow.f64 (sqrt.f64 (*.f64 a (+.f64 d c))) 1/3))
(*.f64 (pow.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 a (+.f64 d c))) 2)) 2) (pow.f64 (sqrt.f64 (cbrt.f64 (*.f64 a (+.f64 d c)))) 2))
(*.f64 (pow.f64 (sqrt.f64 (sqrt.f64 (*.f64 a (+.f64 d c)))) 2) (pow.f64 (sqrt.f64 (sqrt.f64 (*.f64 a (+.f64 d c)))) 2))
(/.f64 1 (/.f64 (fma.f64 (*.f64 a c) (-.f64 (*.f64 a c) (*.f64 a d)) (pow.f64 (*.f64 a d) 2)) (+.f64 (pow.f64 (*.f64 a c) 3) (pow.f64 (*.f64 a d) 3))))
(/.f64 1 (/.f64 (*.f64 a (-.f64 d c)) (-.f64 (pow.f64 (*.f64 a d) 2) (pow.f64 (*.f64 a c) 2))))
(/.f64 (+.f64 (pow.f64 (*.f64 a c) 3) (pow.f64 (*.f64 a d) 3)) (fma.f64 (*.f64 a c) (-.f64 (*.f64 a c) (*.f64 a d)) (pow.f64 (*.f64 a d) 2)))
(/.f64 (+.f64 (pow.f64 (*.f64 a c) 3) (pow.f64 (*.f64 a d) 3)) (+.f64 (pow.f64 (*.f64 a c) 2) (-.f64 (pow.f64 (*.f64 a d) 2) (*.f64 (*.f64 a d) (*.f64 a c)))))
(/.f64 (-.f64 (pow.f64 (*.f64 a d) 2) (pow.f64 (*.f64 a c) 2)) (*.f64 a (-.f64 d c)))
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 a c) 3) (pow.f64 (*.f64 a d) 3))) (neg.f64 (fma.f64 (*.f64 a c) (-.f64 (*.f64 a c) (*.f64 a d)) (pow.f64 (*.f64 a d) 2))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 a d) 2) (pow.f64 (*.f64 a c) 2))) (neg.f64 (*.f64 a (-.f64 d c))))
(/.f64 (-.f64 (pow.f64 (*.f64 a c) 2) (pow.f64 (*.f64 a d) 2)) (-.f64 (*.f64 a c) (*.f64 a d)))
(pow.f64 (*.f64 a (+.f64 d c)) 1)
(pow.f64 (cbrt.f64 (*.f64 a (+.f64 d c))) 3)
(pow.f64 (pow.f64 (*.f64 a (+.f64 d c)) 2) 1/2)
(pow.f64 (pow.f64 (*.f64 a (+.f64 d c)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 a (+.f64 d c))) 2)
(pow.f64 (/.f64 (fma.f64 (*.f64 a c) (-.f64 (*.f64 a c) (*.f64 a d)) (pow.f64 (*.f64 a d) 2)) (+.f64 (pow.f64 (*.f64 a c) 3) (pow.f64 (*.f64 a d) 3))) -1)
(pow.f64 (/.f64 (*.f64 a (-.f64 d c)) (-.f64 (pow.f64 (*.f64 a d) 2) (pow.f64 (*.f64 a c) 2))) -1)
(sqrt.f64 (pow.f64 (*.f64 a (+.f64 d c)) 2))
(log.f64 (pow.f64 (exp.f64 a) (+.f64 d c)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 a (+.f64 d c)))))
(log.f64 (*.f64 (pow.f64 (exp.f64 d) a) (+.f64 1 (expm1.f64 (*.f64 a c)))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 a d))) (pow.f64 (exp.f64 c) a)))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 a d))) (+.f64 1 (expm1.f64 (*.f64 a c)))))
(log.f64 (*.f64 (pow.f64 (exp.f64 c) a) (+.f64 1 (expm1.f64 (*.f64 a d)))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 a c))) (pow.f64 (exp.f64 d) a)))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 a c))) (+.f64 1 (expm1.f64 (*.f64 a d)))))
(cbrt.f64 (pow.f64 (*.f64 a (+.f64 d c)) 3))
(expm1.f64 (log1p.f64 (*.f64 a (+.f64 d c))))
(exp.f64 (log.f64 (*.f64 a (+.f64 d c))))
(exp.f64 (*.f64 (log.f64 (*.f64 a (+.f64 d c))) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 a (+.f64 d c))) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 a (+.f64 d c)))) 3))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 a (+.f64 d c)))) 1/3))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 a (+.f64 d c)))) 2))
(log1p.f64 (expm1.f64 (*.f64 a (+.f64 d c))))
(fma.f64 a d (*.f64 a c))
(fma.f64 a c (*.f64 a d))
(fma.f64 d a (*.f64 a c))
(fma.f64 (*.f64 a d) 1 (*.f64 a c))
(fma.f64 c a (*.f64 a d))
(fma.f64 (*.f64 a c) 1 (*.f64 a d))
(fma.f64 1 (*.f64 a d) (*.f64 a c))
(fma.f64 1 (*.f64 a c) (*.f64 a d))
(fma.f64 (cbrt.f64 (*.f64 a c)) (pow.f64 (cbrt.f64 (*.f64 a c)) 2) (*.f64 a d))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 a c)) 2) (cbrt.f64 (*.f64 a c)) (*.f64 a d))
(fma.f64 (cbrt.f64 (*.f64 a d)) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a c))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (cbrt.f64 (*.f64 a d)) (*.f64 a c))
(fma.f64 (pow.f64 (cbrt.f64 a) 2) (*.f64 (cbrt.f64 a) d) (*.f64 a c))
(fma.f64 (pow.f64 (cbrt.f64 a) 2) (*.f64 (cbrt.f64 a) c) (*.f64 a d))
(fma.f64 (pow.f64 (cbrt.f64 c) 2) (*.f64 (cbrt.f64 c) a) (*.f64 a d))
(fma.f64 (pow.f64 (cbrt.f64 d) 2) (*.f64 (cbrt.f64 d) a) (*.f64 a c))
(fma.f64 (sqrt.f64 (*.f64 a c)) (sqrt.f64 (*.f64 a c)) (*.f64 a d))
(fma.f64 (sqrt.f64 (*.f64 a d)) (sqrt.f64 (*.f64 a d)) (*.f64 a c))
(fma.f64 (sqrt.f64 a) (*.f64 (sqrt.f64 a) d) (*.f64 a c))
(fma.f64 (sqrt.f64 a) (*.f64 (sqrt.f64 a) c) (*.f64 a d))
(fma.f64 (sqrt.f64 c) (*.f64 (sqrt.f64 c) a) (*.f64 a d))
(fma.f64 (sqrt.f64 d) (*.f64 (sqrt.f64 d) a) (*.f64 a c))
(fma.f64 (*.f64 a (pow.f64 (cbrt.f64 d) 2)) (cbrt.f64 d) (*.f64 a c))
(fma.f64 (*.f64 a (sqrt.f64 d)) (sqrt.f64 d) (*.f64 a c))
(fma.f64 (*.f64 d (pow.f64 (cbrt.f64 a) 2)) (cbrt.f64 a) (*.f64 a c))
(fma.f64 (*.f64 d (sqrt.f64 a)) (sqrt.f64 a) (*.f64 a c))
(fma.f64 (*.f64 a (pow.f64 (cbrt.f64 c) 2)) (cbrt.f64 c) (*.f64 a d))
(fma.f64 (*.f64 a (sqrt.f64 c)) (sqrt.f64 c) (*.f64 a d))
(fma.f64 (*.f64 c (pow.f64 (cbrt.f64 a) 2)) (cbrt.f64 a) (*.f64 a d))
(fma.f64 (*.f64 c (sqrt.f64 a)) (sqrt.f64 a) (*.f64 a d))

simplify72.0ms (1.9%)

Algorithm
egg-herbie
Rules
1570×times-frac
858×fma-def
656×distribute-lft-in
636×distribute-rgt-in
620×associate-/l*
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02544141
16844057
220264051
Stop Event
node limit
Counts
130 → 109
Calls
Call 1
Inputs
(*.f64 a (+.f64 c d))
(*.f64 a (+.f64 c d))
(*.f64 a (+.f64 c d))
(*.f64 a (+.f64 c d))
(*.f64 a (+.f64 c d))
(*.f64 a (+.f64 c d))
(*.f64 a (+.f64 c d))
(*.f64 a (+.f64 c d))
(*.f64 -1 (*.f64 a (+.f64 (*.f64 -1 c) (*.f64 -1 d))))
(*.f64 -1 (*.f64 a (+.f64 (*.f64 -1 c) (*.f64 -1 d))))
(*.f64 -1 (*.f64 a (+.f64 (*.f64 -1 c) (*.f64 -1 d))))
(*.f64 -1 (*.f64 a (+.f64 (*.f64 -1 c) (*.f64 -1 d))))
(*.f64 a c)
(+.f64 (*.f64 a c) (*.f64 a d))
(+.f64 (*.f64 a c) (*.f64 a d))
(+.f64 (*.f64 a c) (*.f64 a d))
(*.f64 a d)
(+.f64 (*.f64 a c) (*.f64 a d))
(+.f64 (*.f64 a c) (*.f64 a d))
(+.f64 (*.f64 a c) (*.f64 a d))
(*.f64 a d)
(+.f64 (*.f64 a c) (*.f64 a d))
(+.f64 (*.f64 a c) (*.f64 a d))
(+.f64 (*.f64 a c) (*.f64 a d))
(*.f64 a d)
(+.f64 (*.f64 a c) (*.f64 a d))
(+.f64 (*.f64 a c) (*.f64 a d))
(+.f64 (*.f64 a c) (*.f64 a d))
(*.f64 a c)
(+.f64 (*.f64 a c) (*.f64 a d))
(+.f64 (*.f64 a c) (*.f64 a d))
(+.f64 (*.f64 a c) (*.f64 a d))
(*.f64 a c)
(+.f64 (*.f64 a c) (*.f64 a d))
(+.f64 (*.f64 a c) (*.f64 a d))
(+.f64 (*.f64 a c) (*.f64 a d))
(-.f64 (exp.f64 (log1p.f64 (*.f64 a (+.f64 d c)))) 1)
(-.f64 (/.f64 (pow.f64 (*.f64 a d) 2) (*.f64 a (-.f64 d c))) (/.f64 (pow.f64 (*.f64 a c) 2) (*.f64 a (-.f64 d c))))
(*.f64 a (+.f64 d c))
(*.f64 a (pow.f64 (cbrt.f64 (+.f64 d c)) 3))
(*.f64 a (pow.f64 (sqrt.f64 (+.f64 d c)) 2))
(*.f64 (*.f64 a (+.f64 d c)) 1)
(*.f64 (*.f64 a (+.f64 d c)) (log.f64 (exp.f64 1)))
(*.f64 1 (*.f64 a (+.f64 d c)))
(*.f64 (cbrt.f64 (*.f64 a (+.f64 d c))) (pow.f64 (cbrt.f64 (*.f64 a (+.f64 d c))) 2))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 a (+.f64 d c))) 2) (cbrt.f64 (*.f64 a (+.f64 d c))))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 a (+.f64 d c))) 2) (pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 a (+.f64 d c)))) 2))
(*.f64 (pow.f64 (cbrt.f64 a) 2) (*.f64 (cbrt.f64 a) (+.f64 d c)))
(*.f64 (sqrt.f64 (*.f64 a (+.f64 d c))) (sqrt.f64 (*.f64 a (+.f64 d c))))
(*.f64 (sqrt.f64 a) (*.f64 (sqrt.f64 a) (+.f64 d c)))
(*.f64 (+.f64 (pow.f64 (*.f64 a c) 3) (pow.f64 (*.f64 a d) 3)) (/.f64 1 (fma.f64 (*.f64 a c) (-.f64 (*.f64 a c) (*.f64 a d)) (pow.f64 (*.f64 a d) 2))))
(*.f64 (+.f64 (pow.f64 (*.f64 a c) 3) (pow.f64 (*.f64 a d) 3)) (pow.f64 (/.f64 1 (fma.f64 (*.f64 a c) (-.f64 (*.f64 a c) (*.f64 a d)) (pow.f64 (*.f64 a d) 2))) 1))
(*.f64 (-.f64 (pow.f64 (*.f64 a d) 2) (pow.f64 (*.f64 a c) 2)) (/.f64 1 (*.f64 a (-.f64 d c))))
(*.f64 (-.f64 (pow.f64 (*.f64 a d) 2) (pow.f64 (*.f64 a c) 2)) (pow.f64 (/.f64 1 (*.f64 a (-.f64 d c))) 1))
(*.f64 (+.f64 d c) a)
(*.f64 (pow.f64 1 1/3) (*.f64 a (+.f64 d c)))
(*.f64 (pow.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (*.f64 a (+.f64 d c))) 2)) 3) (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 a (+.f64 d c)))) 3))
(*.f64 (pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 a (+.f64 d c)))) 3) (pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 a (+.f64 d c)))) 3))
(*.f64 (pow.f64 (*.f64 (cbrt.f64 (cbrt.f64 (*.f64 a (+.f64 d c)))) (cbrt.f64 (cbrt.f64 (*.f64 a (+.f64 d c))))) 3) (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 a (+.f64 d c)))) 3))
(*.f64 (pow.f64 (sqrt.f64 (cbrt.f64 (*.f64 a (+.f64 d c)))) 3) (pow.f64 (sqrt.f64 (cbrt.f64 (*.f64 a (+.f64 d c)))) 3))
(*.f64 (pow.f64 (pow.f64 (*.f64 a (+.f64 d c)) 3/2) 1/3) (pow.f64 (pow.f64 (*.f64 a (+.f64 d c)) 3/2) 1/3))
(*.f64 (pow.f64 (sqrt.f64 (pow.f64 (*.f64 a (+.f64 d c)) 3)) 1/3) (pow.f64 (sqrt.f64 (pow.f64 (*.f64 a (+.f64 d c)) 3)) 1/3))
(*.f64 (pow.f64 (*.f64 (pow.f64 (*.f64 a (+.f64 d c)) 2) a) 1/3) (pow.f64 (+.f64 d c) 1/3))
(*.f64 (pow.f64 (pow.f64 (*.f64 (*.f64 a (+.f64 d c)) (cbrt.f64 (*.f64 a (+.f64 d c)))) 2) 1/3) (pow.f64 (cbrt.f64 (*.f64 a (+.f64 d c))) 1/3))
(*.f64 (pow.f64 (pow.f64 (*.f64 a (+.f64 d c)) 5/2) 1/3) (pow.f64 (sqrt.f64 (*.f64 a (+.f64 d c))) 1/3))
(*.f64 (pow.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 a (+.f64 d c))) 2)) 2) (pow.f64 (sqrt.f64 (cbrt.f64 (*.f64 a (+.f64 d c)))) 2))
(*.f64 (pow.f64 (sqrt.f64 (sqrt.f64 (*.f64 a (+.f64 d c)))) 2) (pow.f64 (sqrt.f64 (sqrt.f64 (*.f64 a (+.f64 d c)))) 2))
(/.f64 1 (/.f64 (fma.f64 (*.f64 a c) (-.f64 (*.f64 a c) (*.f64 a d)) (pow.f64 (*.f64 a d) 2)) (+.f64 (pow.f64 (*.f64 a c) 3) (pow.f64 (*.f64 a d) 3))))
(/.f64 1 (/.f64 (*.f64 a (-.f64 d c)) (-.f64 (pow.f64 (*.f64 a d) 2) (pow.f64 (*.f64 a c) 2))))
(/.f64 (+.f64 (pow.f64 (*.f64 a c) 3) (pow.f64 (*.f64 a d) 3)) (fma.f64 (*.f64 a c) (-.f64 (*.f64 a c) (*.f64 a d)) (pow.f64 (*.f64 a d) 2)))
(/.f64 (+.f64 (pow.f64 (*.f64 a c) 3) (pow.f64 (*.f64 a d) 3)) (+.f64 (pow.f64 (*.f64 a c) 2) (-.f64 (pow.f64 (*.f64 a d) 2) (*.f64 (*.f64 a d) (*.f64 a c)))))
(/.f64 (-.f64 (pow.f64 (*.f64 a d) 2) (pow.f64 (*.f64 a c) 2)) (*.f64 a (-.f64 d c)))
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 a c) 3) (pow.f64 (*.f64 a d) 3))) (neg.f64 (fma.f64 (*.f64 a c) (-.f64 (*.f64 a c) (*.f64 a d)) (pow.f64 (*.f64 a d) 2))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 a d) 2) (pow.f64 (*.f64 a c) 2))) (neg.f64 (*.f64 a (-.f64 d c))))
(/.f64 (-.f64 (pow.f64 (*.f64 a c) 2) (pow.f64 (*.f64 a d) 2)) (-.f64 (*.f64 a c) (*.f64 a d)))
(pow.f64 (*.f64 a (+.f64 d c)) 1)
(pow.f64 (cbrt.f64 (*.f64 a (+.f64 d c))) 3)
(pow.f64 (pow.f64 (*.f64 a (+.f64 d c)) 2) 1/2)
(pow.f64 (pow.f64 (*.f64 a (+.f64 d c)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 a (+.f64 d c))) 2)
(pow.f64 (/.f64 (fma.f64 (*.f64 a c) (-.f64 (*.f64 a c) (*.f64 a d)) (pow.f64 (*.f64 a d) 2)) (+.f64 (pow.f64 (*.f64 a c) 3) (pow.f64 (*.f64 a d) 3))) -1)
(pow.f64 (/.f64 (*.f64 a (-.f64 d c)) (-.f64 (pow.f64 (*.f64 a d) 2) (pow.f64 (*.f64 a c) 2))) -1)
(sqrt.f64 (pow.f64 (*.f64 a (+.f64 d c)) 2))
(log.f64 (pow.f64 (exp.f64 a) (+.f64 d c)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 a (+.f64 d c)))))
(log.f64 (*.f64 (pow.f64 (exp.f64 d) a) (+.f64 1 (expm1.f64 (*.f64 a c)))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 a d))) (pow.f64 (exp.f64 c) a)))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 a d))) (+.f64 1 (expm1.f64 (*.f64 a c)))))
(log.f64 (*.f64 (pow.f64 (exp.f64 c) a) (+.f64 1 (expm1.f64 (*.f64 a d)))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 a c))) (pow.f64 (exp.f64 d) a)))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 a c))) (+.f64 1 (expm1.f64 (*.f64 a d)))))
(cbrt.f64 (pow.f64 (*.f64 a (+.f64 d c)) 3))
(expm1.f64 (log1p.f64 (*.f64 a (+.f64 d c))))
(exp.f64 (log.f64 (*.f64 a (+.f64 d c))))
(exp.f64 (*.f64 (log.f64 (*.f64 a (+.f64 d c))) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 a (+.f64 d c))) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 a (+.f64 d c)))) 3))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 a (+.f64 d c)))) 1/3))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 a (+.f64 d c)))) 2))
(log1p.f64 (expm1.f64 (*.f64 a (+.f64 d c))))
(fma.f64 a d (*.f64 a c))
(fma.f64 a c (*.f64 a d))
(fma.f64 d a (*.f64 a c))
(fma.f64 (*.f64 a d) 1 (*.f64 a c))
(fma.f64 c a (*.f64 a d))
(fma.f64 (*.f64 a c) 1 (*.f64 a d))
(fma.f64 1 (*.f64 a d) (*.f64 a c))
(fma.f64 1 (*.f64 a c) (*.f64 a d))
(fma.f64 (cbrt.f64 (*.f64 a c)) (pow.f64 (cbrt.f64 (*.f64 a c)) 2) (*.f64 a d))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 a c)) 2) (cbrt.f64 (*.f64 a c)) (*.f64 a d))
(fma.f64 (cbrt.f64 (*.f64 a d)) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a c))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (cbrt.f64 (*.f64 a d)) (*.f64 a c))
(fma.f64 (pow.f64 (cbrt.f64 a) 2) (*.f64 (cbrt.f64 a) d) (*.f64 a c))
(fma.f64 (pow.f64 (cbrt.f64 a) 2) (*.f64 (cbrt.f64 a) c) (*.f64 a d))
(fma.f64 (pow.f64 (cbrt.f64 c) 2) (*.f64 (cbrt.f64 c) a) (*.f64 a d))
(fma.f64 (pow.f64 (cbrt.f64 d) 2) (*.f64 (cbrt.f64 d) a) (*.f64 a c))
(fma.f64 (sqrt.f64 (*.f64 a c)) (sqrt.f64 (*.f64 a c)) (*.f64 a d))
(fma.f64 (sqrt.f64 (*.f64 a d)) (sqrt.f64 (*.f64 a d)) (*.f64 a c))
(fma.f64 (sqrt.f64 a) (*.f64 (sqrt.f64 a) d) (*.f64 a c))
(fma.f64 (sqrt.f64 a) (*.f64 (sqrt.f64 a) c) (*.f64 a d))
(fma.f64 (sqrt.f64 c) (*.f64 (sqrt.f64 c) a) (*.f64 a d))
(fma.f64 (sqrt.f64 d) (*.f64 (sqrt.f64 d) a) (*.f64 a c))
(fma.f64 (*.f64 a (pow.f64 (cbrt.f64 d) 2)) (cbrt.f64 d) (*.f64 a c))
(fma.f64 (*.f64 a (sqrt.f64 d)) (sqrt.f64 d) (*.f64 a c))
(fma.f64 (*.f64 d (pow.f64 (cbrt.f64 a) 2)) (cbrt.f64 a) (*.f64 a c))
(fma.f64 (*.f64 d (sqrt.f64 a)) (sqrt.f64 a) (*.f64 a c))
(fma.f64 (*.f64 a (pow.f64 (cbrt.f64 c) 2)) (cbrt.f64 c) (*.f64 a d))
(fma.f64 (*.f64 a (sqrt.f64 c)) (sqrt.f64 c) (*.f64 a d))
(fma.f64 (*.f64 c (pow.f64 (cbrt.f64 a) 2)) (cbrt.f64 a) (*.f64 a d))
(fma.f64 (*.f64 c (sqrt.f64 a)) (sqrt.f64 a) (*.f64 a d))
Outputs
(*.f64 a (+.f64 c d))
(*.f64 a (+.f64 c d))
(*.f64 a (+.f64 c d))
(*.f64 a (+.f64 c d))
(*.f64 a (+.f64 c d))
(*.f64 a (+.f64 c d))
(*.f64 a (+.f64 c d))
(*.f64 a (+.f64 c d))
(*.f64 -1 (*.f64 a (+.f64 (*.f64 -1 c) (*.f64 -1 d))))
(*.f64 a (+.f64 c d))
(*.f64 -1 (*.f64 a (+.f64 (*.f64 -1 c) (*.f64 -1 d))))
(*.f64 a (+.f64 c d))
(*.f64 -1 (*.f64 a (+.f64 (*.f64 -1 c) (*.f64 -1 d))))
(*.f64 a (+.f64 c d))
(*.f64 -1 (*.f64 a (+.f64 (*.f64 -1 c) (*.f64 -1 d))))
(*.f64 a (+.f64 c d))
(*.f64 a c)
(+.f64 (*.f64 a c) (*.f64 a d))
(*.f64 a (+.f64 c d))
(+.f64 (*.f64 a c) (*.f64 a d))
(*.f64 a (+.f64 c d))
(+.f64 (*.f64 a c) (*.f64 a d))
(*.f64 a (+.f64 c d))
(*.f64 a d)
(+.f64 (*.f64 a c) (*.f64 a d))
(*.f64 a (+.f64 c d))
(+.f64 (*.f64 a c) (*.f64 a d))
(*.f64 a (+.f64 c d))
(+.f64 (*.f64 a c) (*.f64 a d))
(*.f64 a (+.f64 c d))
(*.f64 a d)
(+.f64 (*.f64 a c) (*.f64 a d))
(*.f64 a (+.f64 c d))
(+.f64 (*.f64 a c) (*.f64 a d))
(*.f64 a (+.f64 c d))
(+.f64 (*.f64 a c) (*.f64 a d))
(*.f64 a (+.f64 c d))
(*.f64 a d)
(+.f64 (*.f64 a c) (*.f64 a d))
(*.f64 a (+.f64 c d))
(+.f64 (*.f64 a c) (*.f64 a d))
(*.f64 a (+.f64 c d))
(+.f64 (*.f64 a c) (*.f64 a d))
(*.f64 a (+.f64 c d))
(*.f64 a c)
(+.f64 (*.f64 a c) (*.f64 a d))
(*.f64 a (+.f64 c d))
(+.f64 (*.f64 a c) (*.f64 a d))
(*.f64 a (+.f64 c d))
(+.f64 (*.f64 a c) (*.f64 a d))
(*.f64 a (+.f64 c d))
(*.f64 a c)
(+.f64 (*.f64 a c) (*.f64 a d))
(*.f64 a (+.f64 c d))
(+.f64 (*.f64 a c) (*.f64 a d))
(*.f64 a (+.f64 c d))
(+.f64 (*.f64 a c) (*.f64 a d))
(*.f64 a (+.f64 c d))
(-.f64 (exp.f64 (log1p.f64 (*.f64 a (+.f64 d c)))) 1)
(*.f64 a (+.f64 c d))
(-.f64 (/.f64 (pow.f64 (*.f64 a d) 2) (*.f64 a (-.f64 d c))) (/.f64 (pow.f64 (*.f64 a c) 2) (*.f64 a (-.f64 d c))))
(/.f64 (-.f64 (pow.f64 (*.f64 a d) 2) (pow.f64 (*.f64 a c) 2)) (*.f64 a (-.f64 d c)))
(*.f64 a (+.f64 d c))
(*.f64 a (+.f64 c d))
(*.f64 a (pow.f64 (cbrt.f64 (+.f64 d c)) 3))
(*.f64 a (+.f64 c d))
(*.f64 a (pow.f64 (sqrt.f64 (+.f64 d c)) 2))
(*.f64 a (+.f64 c d))
(*.f64 (*.f64 a (+.f64 d c)) 1)
(*.f64 a (+.f64 c d))
(*.f64 (*.f64 a (+.f64 d c)) (log.f64 (exp.f64 1)))
(*.f64 a (+.f64 c d))
(*.f64 1 (*.f64 a (+.f64 d c)))
(*.f64 a (+.f64 c d))
(*.f64 (cbrt.f64 (*.f64 a (+.f64 d c))) (pow.f64 (cbrt.f64 (*.f64 a (+.f64 d c))) 2))
(*.f64 a (+.f64 c d))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 a (+.f64 d c))) 2) (cbrt.f64 (*.f64 a (+.f64 d c))))
(*.f64 a (+.f64 c d))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 a (+.f64 d c))) 2) (pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 a (+.f64 d c)))) 2))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 a (+.f64 c d))) 2) (pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 a (+.f64 c d)))) 2))
(*.f64 (pow.f64 (cbrt.f64 a) 2) (*.f64 (cbrt.f64 a) (+.f64 d c)))
(*.f64 a (+.f64 c d))
(*.f64 (sqrt.f64 (*.f64 a (+.f64 d c))) (sqrt.f64 (*.f64 a (+.f64 d c))))
(*.f64 a (+.f64 c d))
(*.f64 (sqrt.f64 a) (*.f64 (sqrt.f64 a) (+.f64 d c)))
(*.f64 a (+.f64 c d))
(*.f64 (+.f64 (pow.f64 (*.f64 a c) 3) (pow.f64 (*.f64 a d) 3)) (/.f64 1 (fma.f64 (*.f64 a c) (-.f64 (*.f64 a c) (*.f64 a d)) (pow.f64 (*.f64 a d) 2))))
(*.f64 (+.f64 (pow.f64 (*.f64 a c) 3) (pow.f64 (*.f64 a d) 3)) (/.f64 1 (fma.f64 (*.f64 a c) (*.f64 a (-.f64 c d)) (pow.f64 (*.f64 a d) 2))))
(/.f64 (*.f64 (pow.f64 a 3) (+.f64 (pow.f64 c 3) (pow.f64 d 3))) (fma.f64 (*.f64 a c) (*.f64 a (-.f64 c d)) (pow.f64 (*.f64 a d) 2)))
(/.f64 (*.f64 (pow.f64 a 3) (+.f64 (pow.f64 d 3) (pow.f64 c 3))) (fma.f64 a (*.f64 c (*.f64 a (-.f64 c d))) (pow.f64 (*.f64 a d) 2)))
(*.f64 (+.f64 (pow.f64 (*.f64 a c) 3) (pow.f64 (*.f64 a d) 3)) (pow.f64 (/.f64 1 (fma.f64 (*.f64 a c) (-.f64 (*.f64 a c) (*.f64 a d)) (pow.f64 (*.f64 a d) 2))) 1))
(*.f64 (+.f64 (pow.f64 (*.f64 a c) 3) (pow.f64 (*.f64 a d) 3)) (/.f64 1 (fma.f64 (*.f64 a c) (*.f64 a (-.f64 c d)) (pow.f64 (*.f64 a d) 2))))
(/.f64 (*.f64 (pow.f64 a 3) (+.f64 (pow.f64 c 3) (pow.f64 d 3))) (fma.f64 (*.f64 a c) (*.f64 a (-.f64 c d)) (pow.f64 (*.f64 a d) 2)))
(/.f64 (*.f64 (pow.f64 a 3) (+.f64 (pow.f64 d 3) (pow.f64 c 3))) (fma.f64 a (*.f64 c (*.f64 a (-.f64 c d))) (pow.f64 (*.f64 a d) 2)))
(*.f64 (-.f64 (pow.f64 (*.f64 a d) 2) (pow.f64 (*.f64 a c) 2)) (/.f64 1 (*.f64 a (-.f64 d c))))
(/.f64 (-.f64 (pow.f64 (*.f64 a d) 2) (pow.f64 (*.f64 a c) 2)) (*.f64 a (-.f64 d c)))
(*.f64 (-.f64 (pow.f64 (*.f64 a d) 2) (pow.f64 (*.f64 a c) 2)) (pow.f64 (/.f64 1 (*.f64 a (-.f64 d c))) 1))
(/.f64 (-.f64 (pow.f64 (*.f64 a d) 2) (pow.f64 (*.f64 a c) 2)) (*.f64 a (-.f64 d c)))
(*.f64 (+.f64 d c) a)
(*.f64 a (+.f64 c d))
(*.f64 (pow.f64 1 1/3) (*.f64 a (+.f64 d c)))
(*.f64 a (+.f64 c d))
(*.f64 (pow.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (*.f64 a (+.f64 d c))) 2)) 3) (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 a (+.f64 d c)))) 3))
(*.f64 a (+.f64 c d))
(*.f64 (pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 a (+.f64 d c)))) 3) (pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 a (+.f64 d c)))) 3))
(*.f64 a (+.f64 c d))
(*.f64 (pow.f64 (*.f64 (cbrt.f64 (cbrt.f64 (*.f64 a (+.f64 d c)))) (cbrt.f64 (cbrt.f64 (*.f64 a (+.f64 d c))))) 3) (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 a (+.f64 d c)))) 3))
(*.f64 a (+.f64 c d))
(*.f64 (pow.f64 (sqrt.f64 (cbrt.f64 (*.f64 a (+.f64 d c)))) 3) (pow.f64 (sqrt.f64 (cbrt.f64 (*.f64 a (+.f64 d c)))) 3))
(*.f64 a (+.f64 c d))
(*.f64 (pow.f64 (pow.f64 (*.f64 a (+.f64 d c)) 3/2) 1/3) (pow.f64 (pow.f64 (*.f64 a (+.f64 d c)) 3/2) 1/3))
(*.f64 (cbrt.f64 (pow.f64 (*.f64 a (+.f64 c d)) 3/2)) (cbrt.f64 (pow.f64 (*.f64 a (+.f64 c d)) 3/2)))
(*.f64 (pow.f64 (sqrt.f64 (pow.f64 (*.f64 a (+.f64 d c)) 3)) 1/3) (pow.f64 (sqrt.f64 (pow.f64 (*.f64 a (+.f64 d c)) 3)) 1/3))
(*.f64 (cbrt.f64 (pow.f64 (*.f64 a (+.f64 c d)) 3/2)) (cbrt.f64 (pow.f64 (*.f64 a (+.f64 c d)) 3/2)))
(*.f64 (pow.f64 (*.f64 (pow.f64 (*.f64 a (+.f64 d c)) 2) a) 1/3) (pow.f64 (+.f64 d c) 1/3))
(*.f64 (cbrt.f64 (+.f64 c d)) (cbrt.f64 (*.f64 a (pow.f64 (*.f64 a (+.f64 c d)) 2))))
(*.f64 (pow.f64 (pow.f64 (*.f64 (*.f64 a (+.f64 d c)) (cbrt.f64 (*.f64 a (+.f64 d c)))) 2) 1/3) (pow.f64 (cbrt.f64 (*.f64 a (+.f64 d c))) 1/3))
(*.f64 (cbrt.f64 (cbrt.f64 (*.f64 a (+.f64 c d)))) (cbrt.f64 (pow.f64 (*.f64 a (*.f64 (+.f64 c d) (cbrt.f64 (*.f64 a (+.f64 c d))))) 2)))
(*.f64 (cbrt.f64 (cbrt.f64 (*.f64 a (+.f64 c d)))) (cbrt.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 a (+.f64 c d))) 4) 2)))
(*.f64 (cbrt.f64 (cbrt.f64 (*.f64 a (+.f64 c d)))) (cbrt.f64 (pow.f64 (cbrt.f64 (*.f64 a (+.f64 c d))) 8)))
(*.f64 (pow.f64 (pow.f64 (*.f64 a (+.f64 d c)) 5/2) 1/3) (pow.f64 (sqrt.f64 (*.f64 a (+.f64 d c))) 1/3))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 a (+.f64 c d)))) (cbrt.f64 (pow.f64 (*.f64 a (+.f64 c d)) 5/2)))
(*.f64 (pow.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 a (+.f64 d c))) 2)) 2) (pow.f64 (sqrt.f64 (cbrt.f64 (*.f64 a (+.f64 d c)))) 2))
(*.f64 a (+.f64 c d))
(*.f64 (pow.f64 (sqrt.f64 (sqrt.f64 (*.f64 a (+.f64 d c)))) 2) (pow.f64 (sqrt.f64 (sqrt.f64 (*.f64 a (+.f64 d c)))) 2))
(*.f64 a (+.f64 c d))
(/.f64 1 (/.f64 (fma.f64 (*.f64 a c) (-.f64 (*.f64 a c) (*.f64 a d)) (pow.f64 (*.f64 a d) 2)) (+.f64 (pow.f64 (*.f64 a c) 3) (pow.f64 (*.f64 a d) 3))))
(*.f64 (+.f64 (pow.f64 (*.f64 a c) 3) (pow.f64 (*.f64 a d) 3)) (/.f64 1 (fma.f64 (*.f64 a c) (*.f64 a (-.f64 c d)) (pow.f64 (*.f64 a d) 2))))
(/.f64 (*.f64 (pow.f64 a 3) (+.f64 (pow.f64 c 3) (pow.f64 d 3))) (fma.f64 (*.f64 a c) (*.f64 a (-.f64 c d)) (pow.f64 (*.f64 a d) 2)))
(/.f64 (*.f64 (pow.f64 a 3) (+.f64 (pow.f64 d 3) (pow.f64 c 3))) (fma.f64 a (*.f64 c (*.f64 a (-.f64 c d))) (pow.f64 (*.f64 a d) 2)))
(/.f64 1 (/.f64 (*.f64 a (-.f64 d c)) (-.f64 (pow.f64 (*.f64 a d) 2) (pow.f64 (*.f64 a c) 2))))
(/.f64 (-.f64 (pow.f64 (*.f64 a d) 2) (pow.f64 (*.f64 a c) 2)) (*.f64 a (-.f64 d c)))
(/.f64 (+.f64 (pow.f64 (*.f64 a c) 3) (pow.f64 (*.f64 a d) 3)) (fma.f64 (*.f64 a c) (-.f64 (*.f64 a c) (*.f64 a d)) (pow.f64 (*.f64 a d) 2)))
(*.f64 (+.f64 (pow.f64 (*.f64 a c) 3) (pow.f64 (*.f64 a d) 3)) (/.f64 1 (fma.f64 (*.f64 a c) (*.f64 a (-.f64 c d)) (pow.f64 (*.f64 a d) 2))))
(/.f64 (*.f64 (pow.f64 a 3) (+.f64 (pow.f64 c 3) (pow.f64 d 3))) (fma.f64 (*.f64 a c) (*.f64 a (-.f64 c d)) (pow.f64 (*.f64 a d) 2)))
(/.f64 (*.f64 (pow.f64 a 3) (+.f64 (pow.f64 d 3) (pow.f64 c 3))) (fma.f64 a (*.f64 c (*.f64 a (-.f64 c d))) (pow.f64 (*.f64 a d) 2)))
(/.f64 (+.f64 (pow.f64 (*.f64 a c) 3) (pow.f64 (*.f64 a d) 3)) (+.f64 (pow.f64 (*.f64 a c) 2) (-.f64 (pow.f64 (*.f64 a d) 2) (*.f64 (*.f64 a d) (*.f64 a c)))))
(*.f64 (+.f64 (pow.f64 (*.f64 a c) 3) (pow.f64 (*.f64 a d) 3)) (/.f64 1 (fma.f64 (*.f64 a c) (*.f64 a (-.f64 c d)) (pow.f64 (*.f64 a d) 2))))
(/.f64 (*.f64 (pow.f64 a 3) (+.f64 (pow.f64 c 3) (pow.f64 d 3))) (fma.f64 (*.f64 a c) (*.f64 a (-.f64 c d)) (pow.f64 (*.f64 a d) 2)))
(/.f64 (*.f64 (pow.f64 a 3) (+.f64 (pow.f64 d 3) (pow.f64 c 3))) (fma.f64 a (*.f64 c (*.f64 a (-.f64 c d))) (pow.f64 (*.f64 a d) 2)))
(/.f64 (-.f64 (pow.f64 (*.f64 a d) 2) (pow.f64 (*.f64 a c) 2)) (*.f64 a (-.f64 d c)))
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 a c) 3) (pow.f64 (*.f64 a d) 3))) (neg.f64 (fma.f64 (*.f64 a c) (-.f64 (*.f64 a c) (*.f64 a d)) (pow.f64 (*.f64 a d) 2))))
(*.f64 (+.f64 (pow.f64 (*.f64 a c) 3) (pow.f64 (*.f64 a d) 3)) (/.f64 1 (fma.f64 (*.f64 a c) (*.f64 a (-.f64 c d)) (pow.f64 (*.f64 a d) 2))))
(/.f64 (*.f64 (pow.f64 a 3) (+.f64 (pow.f64 c 3) (pow.f64 d 3))) (fma.f64 (*.f64 a c) (*.f64 a (-.f64 c d)) (pow.f64 (*.f64 a d) 2)))
(/.f64 (*.f64 (pow.f64 a 3) (+.f64 (pow.f64 d 3) (pow.f64 c 3))) (fma.f64 a (*.f64 c (*.f64 a (-.f64 c d))) (pow.f64 (*.f64 a d) 2)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 a d) 2) (pow.f64 (*.f64 a c) 2))) (neg.f64 (*.f64 a (-.f64 d c))))
(/.f64 (-.f64 (pow.f64 (*.f64 a d) 2) (pow.f64 (*.f64 a c) 2)) (*.f64 a (-.f64 d c)))
(/.f64 (-.f64 (pow.f64 (*.f64 a c) 2) (pow.f64 (*.f64 a d) 2)) (-.f64 (*.f64 a c) (*.f64 a d)))
(/.f64 (-.f64 (pow.f64 (*.f64 a d) 2) (pow.f64 (*.f64 a c) 2)) (*.f64 a (-.f64 d c)))
(pow.f64 (*.f64 a (+.f64 d c)) 1)
(*.f64 a (+.f64 c d))
(pow.f64 (cbrt.f64 (*.f64 a (+.f64 d c))) 3)
(*.f64 a (+.f64 c d))
(pow.f64 (pow.f64 (*.f64 a (+.f64 d c)) 2) 1/2)
(*.f64 a (+.f64 c d))
(pow.f64 (pow.f64 (*.f64 a (+.f64 d c)) 3) 1/3)
(*.f64 a (+.f64 c d))
(pow.f64 (sqrt.f64 (*.f64 a (+.f64 d c))) 2)
(*.f64 a (+.f64 c d))
(pow.f64 (/.f64 (fma.f64 (*.f64 a c) (-.f64 (*.f64 a c) (*.f64 a d)) (pow.f64 (*.f64 a d) 2)) (+.f64 (pow.f64 (*.f64 a c) 3) (pow.f64 (*.f64 a d) 3))) -1)
(*.f64 (+.f64 (pow.f64 (*.f64 a c) 3) (pow.f64 (*.f64 a d) 3)) (/.f64 1 (fma.f64 (*.f64 a c) (*.f64 a (-.f64 c d)) (pow.f64 (*.f64 a d) 2))))
(/.f64 (*.f64 (pow.f64 a 3) (+.f64 (pow.f64 c 3) (pow.f64 d 3))) (fma.f64 (*.f64 a c) (*.f64 a (-.f64 c d)) (pow.f64 (*.f64 a d) 2)))
(/.f64 (*.f64 (pow.f64 a 3) (+.f64 (pow.f64 d 3) (pow.f64 c 3))) (fma.f64 a (*.f64 c (*.f64 a (-.f64 c d))) (pow.f64 (*.f64 a d) 2)))
(pow.f64 (/.f64 (*.f64 a (-.f64 d c)) (-.f64 (pow.f64 (*.f64 a d) 2) (pow.f64 (*.f64 a c) 2))) -1)
(/.f64 (-.f64 (pow.f64 (*.f64 a d) 2) (pow.f64 (*.f64 a c) 2)) (*.f64 a (-.f64 d c)))
(sqrt.f64 (pow.f64 (*.f64 a (+.f64 d c)) 2))
(*.f64 a (+.f64 c d))
(log.f64 (pow.f64 (exp.f64 a) (+.f64 d c)))
(*.f64 a (+.f64 c d))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 a (+.f64 d c)))))
(*.f64 a (+.f64 c d))
(log.f64 (*.f64 (pow.f64 (exp.f64 d) a) (+.f64 1 (expm1.f64 (*.f64 a c)))))
(*.f64 a (+.f64 c d))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 a d))) (pow.f64 (exp.f64 c) a)))
(*.f64 a (+.f64 c d))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 a d))) (+.f64 1 (expm1.f64 (*.f64 a c)))))
(*.f64 a (+.f64 c d))
(log.f64 (*.f64 (pow.f64 (exp.f64 c) a) (+.f64 1 (expm1.f64 (*.f64 a d)))))
(*.f64 a (+.f64 c d))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 a c))) (pow.f64 (exp.f64 d) a)))
(*.f64 a (+.f64 c d))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 a c))) (+.f64 1 (expm1.f64 (*.f64 a d)))))
(*.f64 a (+.f64 c d))
(cbrt.f64 (pow.f64 (*.f64 a (+.f64 d c)) 3))
(*.f64 a (+.f64 c d))
(expm1.f64 (log1p.f64 (*.f64 a (+.f64 d c))))
(*.f64 a (+.f64 c d))
(exp.f64 (log.f64 (*.f64 a (+.f64 d c))))
(*.f64 a (+.f64 c d))
(exp.f64 (*.f64 (log.f64 (*.f64 a (+.f64 d c))) 1))
(*.f64 a (+.f64 c d))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 a (+.f64 d c))) 1) 1))
(*.f64 a (+.f64 c d))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 a (+.f64 d c)))) 3))
(*.f64 a (+.f64 c d))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 a (+.f64 d c)))) 1/3))
(*.f64 a (+.f64 c d))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 a (+.f64 d c)))) 2))
(*.f64 a (+.f64 c d))
(log1p.f64 (expm1.f64 (*.f64 a (+.f64 d c))))
(*.f64 a (+.f64 c d))
(fma.f64 a d (*.f64 a c))
(*.f64 a (+.f64 c d))
(fma.f64 a c (*.f64 a d))
(*.f64 a (+.f64 c d))
(fma.f64 d a (*.f64 a c))
(*.f64 a (+.f64 c d))
(fma.f64 (*.f64 a d) 1 (*.f64 a c))
(*.f64 a (+.f64 c d))
(fma.f64 c a (*.f64 a d))
(*.f64 a (+.f64 c d))
(fma.f64 (*.f64 a c) 1 (*.f64 a d))
(*.f64 a (+.f64 c d))
(fma.f64 1 (*.f64 a d) (*.f64 a c))
(*.f64 a (+.f64 c d))
(fma.f64 1 (*.f64 a c) (*.f64 a d))
(*.f64 a (+.f64 c d))
(fma.f64 (cbrt.f64 (*.f64 a c)) (pow.f64 (cbrt.f64 (*.f64 a c)) 2) (*.f64 a d))
(*.f64 a (+.f64 c d))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 a c)) 2) (cbrt.f64 (*.f64 a c)) (*.f64 a d))
(*.f64 a (+.f64 c d))
(fma.f64 (cbrt.f64 (*.f64 a d)) (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (*.f64 a c))
(*.f64 a (+.f64 c d))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 a d)) 2) (cbrt.f64 (*.f64 a d)) (*.f64 a c))
(*.f64 a (+.f64 c d))
(fma.f64 (pow.f64 (cbrt.f64 a) 2) (*.f64 (cbrt.f64 a) d) (*.f64 a c))
(*.f64 a (+.f64 c d))
(fma.f64 (pow.f64 (cbrt.f64 a) 2) (*.f64 (cbrt.f64 a) c) (*.f64 a d))
(*.f64 a (+.f64 c d))
(fma.f64 (pow.f64 (cbrt.f64 c) 2) (*.f64 (cbrt.f64 c) a) (*.f64 a d))
(*.f64 a (+.f64 c d))
(fma.f64 (pow.f64 (cbrt.f64 d) 2) (*.f64 (cbrt.f64 d) a) (*.f64 a c))
(*.f64 a (+.f64 c d))
(fma.f64 (sqrt.f64 (*.f64 a c)) (sqrt.f64 (*.f64 a c)) (*.f64 a d))
(*.f64 a (+.f64 c d))
(fma.f64 (sqrt.f64 (*.f64 a d)) (sqrt.f64 (*.f64 a d)) (*.f64 a c))
(*.f64 a (+.f64 c d))
(fma.f64 (sqrt.f64 a) (*.f64 (sqrt.f64 a) d) (*.f64 a c))
(*.f64 a (+.f64 c d))
(fma.f64 (sqrt.f64 a) (*.f64 (sqrt.f64 a) c) (*.f64 a d))
(*.f64 a (+.f64 c d))
(fma.f64 (sqrt.f64 c) (*.f64 (sqrt.f64 c) a) (*.f64 a d))
(*.f64 a (+.f64 c d))
(fma.f64 (sqrt.f64 d) (*.f64 (sqrt.f64 d) a) (*.f64 a c))
(*.f64 a (+.f64 c d))
(fma.f64 (*.f64 a (pow.f64 (cbrt.f64 d) 2)) (cbrt.f64 d) (*.f64 a c))
(*.f64 a (+.f64 c d))
(fma.f64 (*.f64 a (sqrt.f64 d)) (sqrt.f64 d) (*.f64 a c))
(*.f64 a (+.f64 c d))
(fma.f64 (*.f64 d (pow.f64 (cbrt.f64 a) 2)) (cbrt.f64 a) (*.f64 a c))
(*.f64 a (+.f64 c d))
(fma.f64 (*.f64 d (sqrt.f64 a)) (sqrt.f64 a) (*.f64 a c))
(*.f64 a (+.f64 c d))
(fma.f64 (*.f64 a (pow.f64 (cbrt.f64 c) 2)) (cbrt.f64 c) (*.f64 a d))
(*.f64 a (+.f64 c d))
(fma.f64 (*.f64 a (sqrt.f64 c)) (sqrt.f64 c) (*.f64 a d))
(*.f64 a (+.f64 c d))
(fma.f64 (*.f64 c (pow.f64 (cbrt.f64 a) 2)) (cbrt.f64 a) (*.f64 a d))
(*.f64 a (+.f64 c d))
(fma.f64 (*.f64 c (sqrt.f64 a)) (sqrt.f64 a) (*.f64 a d))
(*.f64 a (+.f64 c d))

eval31.0ms (0.8%)

Compiler

Compiled 1512 to 541 computations (64.2% saved)

prune19.0ms (0.5%)

Pruning

6 alts after pruning (1 fresh and 5 done)

PrunedKeptTotal
New1081109
Fresh000
Picked011
Done145
Total1096115
Accuracy
100.0%
Counts
115 → 6
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.9%
(fma.f64 d a (*.f64 a c))
99.8%
(+.f64 (*.f64 a d) (*.f64 a c))
99.9%
(+.f64 (*.f64 a c) (*.f64 a (+.f64 b d)))
100.0%
(*.f64 a (+.f64 (+.f64 b c) d))
99.9%
(*.f64 a (+.f64 c d))
93.3%
(*.f64 a d)
99.9%
(fma.f64 d a (*.f64 a c))
99.8%
(+.f64 (*.f64 a d) (*.f64 a c))
99.9%
(+.f64 (*.f64 a c) (*.f64 a (+.f64 b d)))
100.0%
(*.f64 a (+.f64 (+.f64 b c) d))
99.9%
(*.f64 a (+.f64 c d))
93.3%
(*.f64 a d)
Compiler

Compiled 122 to 78 computations (36.1% saved)

localize31.0ms (0.8%)

Compiler

Compiled 17 to 7 computations (58.8% saved)

eval0.0ms (0%)

Compiler

Compiled 4 to 4 computations (0% saved)

prune3.0ms (0.1%)

Pruning

6 alts after pruning (0 fresh and 6 done)

PrunedKeptTotal
New000
Fresh000
Picked011
Done055
Total066
Accuracy
100.0%
Counts
6 → 6
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.9%
(fma.f64 d a (*.f64 a c))
99.8%
(+.f64 (*.f64 a d) (*.f64 a c))
99.9%
(+.f64 (*.f64 a c) (*.f64 a (+.f64 b d)))
100.0%
(*.f64 a (+.f64 (+.f64 b c) d))
99.9%
(*.f64 a (+.f64 c d))
93.3%
(*.f64 a d)
Compiler

Compiled 110 to 57 computations (48.2% saved)

regimes38.0ms (1%)

Counts
7 → 1
Calls
Call 1
Inputs
(*.f64 a d)
(*.f64 a (+.f64 c d))
(*.f64 a (+.f64 (+.f64 b c) d))
(+.f64 (*.f64 a d) (*.f64 a c))
(+.f64 (*.f64 a c) (*.f64 a (+.f64 b d)))
(fma.f64 d a (*.f64 a c))
(fma.f64 d a (*.f64 a (+.f64 b c)))
Outputs
(fma.f64 d a (*.f64 a (+.f64 b c)))
Calls

7 calls:

6.0ms
d
5.0ms
(+.f64 b c)
5.0ms
b
5.0ms
(+.f64 (+.f64 b c) d)
5.0ms
(*.f64 a (+.f64 (+.f64 b c) d))
Results
AccuracySegmentsBranch
100.0%1a
100.0%1b
100.0%1c
100.0%1d
100.0%1(*.f64 a (+.f64 (+.f64 b c) d))
100.0%1(+.f64 (+.f64 b c) d)
100.0%1(+.f64 b c)
Compiler

Compiled 96 to 52 computations (45.8% saved)

regimes217.0ms (5.6%)

Counts
6 → 1
Calls
Call 1
Inputs
(*.f64 a d)
(*.f64 a (+.f64 c d))
(*.f64 a (+.f64 (+.f64 b c) d))
(+.f64 (*.f64 a d) (*.f64 a c))
(+.f64 (*.f64 a c) (*.f64 a (+.f64 b d)))
(fma.f64 d a (*.f64 a c))
Outputs
(*.f64 a (+.f64 (+.f64 b c) d))
Calls

7 calls:

177.0ms
d
16.0ms
(+.f64 (+.f64 b c) d)
5.0ms
a
5.0ms
(*.f64 a (+.f64 (+.f64 b c) d))
4.0ms
c
Results
AccuracySegmentsBranch
100.0%1a
100.0%1b
100.0%1c
100.0%1d
100.0%1(*.f64 a (+.f64 (+.f64 b c) d))
100.0%1(+.f64 (+.f64 b c) d)
100.0%1(+.f64 b c)
Compiler

Compiled 88 to 50 computations (43.2% saved)

regimes12.0ms (0.3%)

Counts
2 → 1
Calls
Call 1
Inputs
(*.f64 a d)
(*.f64 a (+.f64 c d))
Outputs
(*.f64 a (+.f64 c d))
Calls

4 calls:

3.0ms
a
3.0ms
d
3.0ms
c
3.0ms
b
Results
AccuracySegmentsBranch
99.9%1a
99.9%1b
99.9%1c
99.9%1d
Compiler

Compiled 32 to 23 computations (28.1% saved)

regimes10.0ms (0.3%)

Accuracy

Total 0.0b remaining (0%)

Threshold costs 0b (0%)

Counts
1 → 1
Calls
Call 1
Inputs
(*.f64 a d)
Outputs
(*.f64 a d)
Calls

4 calls:

3.0ms
a
2.0ms
d
2.0ms
c
2.0ms
b
Results
AccuracySegmentsBranch
93.3%1a
93.3%1b
93.3%1c
93.3%1d
Compiler

Compiled 27 to 21 computations (22.2% saved)

simplify3.0ms (0.1%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
020102
127102
Stop Event
done
saturated
Calls
Call 1
Inputs
(fma.f64 d a (*.f64 a (+.f64 b c)))
(*.f64 a (+.f64 (+.f64 b c) d))
(*.f64 a (+.f64 c d))
(*.f64 a d)
Outputs
(fma.f64 d a (*.f64 a (+.f64 b c)))
(*.f64 a (+.f64 (+.f64 b c) d))
(*.f64 a (+.f64 d (+.f64 b c)))
(*.f64 a (+.f64 c d))
(*.f64 a (+.f64 d c))
(*.f64 a d)
(*.f64 d a)
Compiler

Compiled 39 to 25 computations (35.9% saved)

soundness124.0ms (3.2%)

Rules
990×log1p-expm1-u
990×expm1-log1p-u
978×fma-def
862×log-prod
370×fma-neg
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01431
117431
2261231
Stop Event
node limit
Compiler

Compiled 43 to 15 computations (65.1% saved)

end0.0ms (0%)

preprocess76.0ms (2%)

Remove

(negabs a)

Compiler

Compiled 462 to 264 computations (42.9% saved)

Profiling

Loading profile data...