Details

Time bar (total: 4.5s)

analyze481.0ms (10.6%)

Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%99.7%0.3%0%0%0%0
0%0%99.7%0.3%0%0%0%1
0%0%99.7%0.3%0%0%0%2
0%0%99.7%0.3%0%0%0%3
0%0%99.7%0.3%0%0%0%4
0%0%99.7%0.3%0%0%0%5
0%0%99.7%0.3%0%0%0%6
0%0%99.7%0.3%0%0%0%7
0%0%99.7%0.3%0%0%0%8
0%0%99.7%0.3%0%0%0%9
0%0%99.7%0.3%0%0%0%10
0%0%99.7%0.3%0%0%0%11
0%0%99.7%0.3%0%0%0%12
Compiler

Compiled 18 to 12 computations (33.3% saved)

sample1.7s (37%)

Results
1.1s8256×body256valid
566.0ms4106×body256infinite
Bogosity

preprocess21.0ms (0.5%)

Algorithm
egg-herbie
Rules
135×fma-def_binary64
40×+-commutative_binary64
24×associate-+l+_binary64
15×*-commutative_binary64
15×associate-+r+_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
062224
1144192
2267192
3301192
066
166
Stop Event
unsound
saturated
Calls
Call 1
Inputs
0
1
2
3
4
5
Outputs
0
1
0
2
3
2
4
5
4
Call 2
Inputs
(+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a b))
(+.f64 (+.f64 (*.f64 y x) (*.f64 z t)) (*.f64 a b))
(+.f64 (+.f64 (*.f64 z y) (*.f64 x t)) (*.f64 a b))
(+.f64 (+.f64 (*.f64 t y) (*.f64 z x)) (*.f64 a b))
(+.f64 (+.f64 (*.f64 a y) (*.f64 z t)) (*.f64 x b))
(+.f64 (+.f64 (*.f64 b y) (*.f64 z t)) (*.f64 a x))
(+.f64 (+.f64 (*.f64 x z) (*.f64 y t)) (*.f64 a b))
(+.f64 (+.f64 (*.f64 x t) (*.f64 z y)) (*.f64 a b))
(+.f64 (+.f64 (*.f64 x a) (*.f64 z t)) (*.f64 y b))
(+.f64 (+.f64 (*.f64 x b) (*.f64 z t)) (*.f64 a y))
(+.f64 (+.f64 (*.f64 x y) (*.f64 t z)) (*.f64 a b))
(+.f64 (+.f64 (*.f64 x y) (*.f64 a t)) (*.f64 z b))
(+.f64 (+.f64 (*.f64 x y) (*.f64 b t)) (*.f64 a z))
(+.f64 (+.f64 (*.f64 x y) (*.f64 z a)) (*.f64 t b))
(+.f64 (+.f64 (*.f64 x y) (*.f64 z b)) (*.f64 a t))
(+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 b a))
Outputs
(+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a b))
(+.f64 (fma.f64 x y (*.f64 z t)) (*.f64 a b))
(fma.f64 x y (fma.f64 z t (*.f64 a b)))
(+.f64 (+.f64 (*.f64 y x) (*.f64 z t)) (*.f64 a b))
(+.f64 (fma.f64 x y (*.f64 z t)) (*.f64 a b))
(fma.f64 x y (fma.f64 z t (*.f64 a b)))
(+.f64 (+.f64 (*.f64 z y) (*.f64 x t)) (*.f64 a b))
(+.f64 (*.f64 a b) (fma.f64 x t (*.f64 y z)))
(fma.f64 x t (fma.f64 y z (*.f64 a b)))
(+.f64 (+.f64 (*.f64 t y) (*.f64 z x)) (*.f64 a b))
(+.f64 (*.f64 a b) (fma.f64 x z (*.f64 y t)))
(fma.f64 y t (fma.f64 x z (*.f64 a b)))
(+.f64 (+.f64 (*.f64 a y) (*.f64 z t)) (*.f64 x b))
(+.f64 (*.f64 y a) (fma.f64 x b (*.f64 z t)))
(fma.f64 x b (fma.f64 z t (*.f64 y a)))
(+.f64 (+.f64 (*.f64 b y) (*.f64 z t)) (*.f64 a x))
(+.f64 (fma.f64 b y (*.f64 z t)) (*.f64 x a))
(fma.f64 x a (fma.f64 y b (*.f64 z t)))
(+.f64 (+.f64 (*.f64 x z) (*.f64 y t)) (*.f64 a b))
(+.f64 (*.f64 a b) (fma.f64 x z (*.f64 y t)))
(fma.f64 y t (fma.f64 x z (*.f64 a b)))
(+.f64 (+.f64 (*.f64 x t) (*.f64 z y)) (*.f64 a b))
(+.f64 (*.f64 a b) (fma.f64 x t (*.f64 y z)))
(fma.f64 x t (fma.f64 y z (*.f64 a b)))
(+.f64 (+.f64 (*.f64 x a) (*.f64 z t)) (*.f64 y b))
(+.f64 (fma.f64 b y (*.f64 z t)) (*.f64 x a))
(fma.f64 x a (fma.f64 y b (*.f64 z t)))
(+.f64 (+.f64 (*.f64 x b) (*.f64 z t)) (*.f64 a y))
(+.f64 (*.f64 y a) (fma.f64 x b (*.f64 z t)))
(fma.f64 x b (fma.f64 z t (*.f64 y a)))
(+.f64 (+.f64 (*.f64 x y) (*.f64 t z)) (*.f64 a b))
(+.f64 (fma.f64 x y (*.f64 z t)) (*.f64 a b))
(fma.f64 x y (fma.f64 z t (*.f64 a b)))
(+.f64 (+.f64 (*.f64 x y) (*.f64 a t)) (*.f64 z b))
(+.f64 (fma.f64 x y (*.f64 t a)) (*.f64 z b))
(fma.f64 x y (fma.f64 t a (*.f64 z b)))
(+.f64 (+.f64 (*.f64 x y) (*.f64 b t)) (*.f64 a z))
(+.f64 (fma.f64 x y (*.f64 t b)) (*.f64 z a))
(fma.f64 t b (fma.f64 x y (*.f64 z a)))
(+.f64 (+.f64 (*.f64 x y) (*.f64 z a)) (*.f64 t b))
(+.f64 (fma.f64 x y (*.f64 t b)) (*.f64 z a))
(fma.f64 t b (fma.f64 x y (*.f64 z a)))
(+.f64 (+.f64 (*.f64 x y) (*.f64 z b)) (*.f64 a t))
(+.f64 (fma.f64 x y (*.f64 t a)) (*.f64 z b))
(fma.f64 x y (fma.f64 t a (*.f64 z b)))
(+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 b a))
(+.f64 (fma.f64 x y (*.f64 z t)) (*.f64 a b))
(fma.f64 x y (fma.f64 z t (*.f64 a b)))
Symmetry

(sort x y)

(sort z t)

(sort a b)

Compiler

Compiled 23 to 17 computations (26.1% saved)

simplify7.0ms (0.1%)

Algorithm
egg-herbie
Rules
18×fma-def_binary64
+-commutative_binary64
*-commutative_binary64
associate-+r+_binary64
associate-+l+_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01214
12012
23612
34612
Stop Event
saturated
Counts
1 → 4
Calls
Call 1
Inputs
(+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a b))
Outputs
(+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a b))
(+.f64 (fma.f64 x y (*.f64 z t)) (*.f64 a b))
(fma.f64 a b (fma.f64 x y (*.f64 z t)))
(fma.f64 x y (fma.f64 a b (*.f64 z t)))

eval1.0ms (0%)

Compiler

Compiled 45 to 16 computations (64.4% saved)

prune3.0ms (0.1%)

Pruning

4 alts after pruning (4 fresh and 0 done)

PrunedKeptTotal
New134
Fresh011
Picked000
Done000
Total145
Error
0.0b
Counts
5 → 3
Alt Table
Click to see full alt table
StatusErrorProgram
0.0b
(fma.f64 x y (fma.f64 a b (*.f64 z t)))
0.0b
(fma.f64 a b (fma.f64 x y (*.f64 z t)))
0.0b
(+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a b))
Compiler

Compiled 47 to 29 computations (38.3% saved)

localize12.0ms (0.3%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (*.f64 x y) (*.f64 z t))
0.0b
(+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a b))
Compiler

Compiled 39 to 11 computations (71.8% saved)

series12.0ms (0.3%)

Counts
2 → 120
Calls

30 calls:

TimeVariablePointExpression
1.0ms
t
@inf
(+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a b))
1.0ms
a
@inf
(+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a b))
1.0ms
x
@0
(+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a b))
1.0ms
y
@-inf
(+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a b))
0.0ms
x
@inf
(+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a b))

rewrite66.0ms (1.4%)

Algorithm
batch-egg-rewrite
Rules
736×fma-def_binary64
681×log-prod_binary64
358×pow2_binary64
338×fma-neg_binary64
245×pow1/3_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01222
125820
2365920
Stop Event
node limit
Counts
2 → 183
Calls
Call 1
Inputs
(+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a b))
(+.f64 (*.f64 x y) (*.f64 z t))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 2) (-.f64 (fma.f64 x y (*.f64 z t)) (*.f64 a b))) (/.f64 (pow.f64 (*.f64 a b) 2) (-.f64 (fma.f64 x y (*.f64 z t)) (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 x y (fma.f64 a b (*.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t)))) (pow.f64 (cbrt.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t)))) 2) (cbrt.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t)))) (sqrt.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 3) (pow.f64 (*.f64 a b) 3)) (/.f64 1 (fma.f64 (*.f64 a b) (-.f64 (*.f64 a b) (fma.f64 x y (*.f64 z t))) (pow.f64 (fma.f64 x y (*.f64 z t)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 2) (pow.f64 (*.f64 a b) 2)) (/.f64 1 (-.f64 (fma.f64 x y (*.f64 z t)) (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (*.f64 a b) (-.f64 (*.f64 a b) (fma.f64 x y (*.f64 z t))) (pow.f64 (fma.f64 x y (*.f64 z t)) 2)) (+.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 3) (pow.f64 (*.f64 a b) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 (fma.f64 x y (*.f64 z t)) (*.f64 a b)) (-.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 2) (pow.f64 (*.f64 a b) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 3) (pow.f64 (*.f64 a b) 3)) (fma.f64 (*.f64 a b) (-.f64 (*.f64 a b) (fma.f64 x y (*.f64 z t))) (pow.f64 (fma.f64 x y (*.f64 z t)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 3) (pow.f64 (*.f64 a b) 3)) (+.f64 (pow.f64 (*.f64 a b) 2) (-.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 2) (*.f64 (fma.f64 x y (*.f64 z t)) (*.f64 a b)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 2) (pow.f64 (*.f64 a b) 2)) (-.f64 (fma.f64 x y (*.f64 z t)) (*.f64 a b)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 3) (pow.f64 (*.f64 a b) 3))) (neg.f64 (fma.f64 (*.f64 a b) (-.f64 (*.f64 a b) (fma.f64 x y (*.f64 z t))) (pow.f64 (fma.f64 x y (*.f64 z t)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 2) (pow.f64 (*.f64 a b) 2))) (neg.f64 (-.f64 (fma.f64 x y (*.f64 z t)) (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 x y) 3) (pow.f64 (fma.f64 a b (*.f64 z t)) 3)) (+.f64 (pow.f64 (*.f64 x y) 2) (-.f64 (pow.f64 (fma.f64 a b (*.f64 z t)) 2) (*.f64 (*.f64 x y) (fma.f64 a b (*.f64 z t))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 x y) 2) (pow.f64 (fma.f64 a b (*.f64 z t)) 2)) (-.f64 (*.f64 x y) (fma.f64 a b (*.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 a b) 2) (pow.f64 (fma.f64 x y (*.f64 z t)) 2)) (-.f64 (*.f64 a b) (fma.f64 x y (*.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (*.f64 a b) (-.f64 (*.f64 a b) (fma.f64 x y (*.f64 z t))) (pow.f64 (fma.f64 x y (*.f64 z t)) 2)) (+.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 3) (pow.f64 (*.f64 a b) 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (-.f64 (fma.f64 x y (*.f64 z t)) (*.f64 a b)) (-.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 2) (pow.f64 (*.f64 a b) 2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x y))) (exp.f64 (fma.f64 a b (*.f64 z t)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 x) y) (*.f64 (pow.f64 (exp.f64 z) t) (pow.f64 (exp.f64 a) b))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x y))) (*.f64 (pow.f64 (exp.f64 z) t) (pow.f64 (exp.f64 a) b))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 x y (*.f64 z t)))) (pow.f64 (exp.f64 a) b)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 x y (*.f64 z t))) (+.f64 1 (expm1.f64 (*.f64 a b)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 x y (*.f64 z t)))) (+.f64 1 (expm1.f64 (*.f64 a b)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 a b))) (exp.f64 (fma.f64 x y (*.f64 z t)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 a) b) (+.f64 1 (expm1.f64 (fma.f64 x y (*.f64 z t))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 a b))) (+.f64 1 (expm1.f64 (fma.f64 x y (*.f64 z t))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 a b (*.f64 z t))) (pow.f64 (exp.f64 x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (*.f64 (pow.f64 (exp.f64 z) t) (pow.f64 (exp.f64 a) b)) (pow.f64 (exp.f64 x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 a b (*.f64 z t))) (+.f64 1 (expm1.f64 (*.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (*.f64 (pow.f64 (exp.f64 z) t) (pow.f64 (exp.f64 a) b)) (+.f64 1 (expm1.f64 (*.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x y (fma.f64 a b (*.f64 z t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x y (*.f64 (fma.f64 a b (*.f64 z t)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y x (fma.f64 a b (*.f64 z t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y x (*.f64 (fma.f64 a b (*.f64 z t)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x y) 1 (fma.f64 a b (*.f64 z t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x y) 1 (*.f64 (fma.f64 a b (*.f64 z t)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 z t (fma.f64 x y (*.f64 a b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 t z (fma.f64 x y (*.f64 a b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 z t) 1 (fma.f64 x y (*.f64 a b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 x y (*.f64 z t)) 1 (*.f64 a b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 a b (fma.f64 x y (*.f64 z t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 b a (fma.f64 x y (*.f64 z t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 a b) 1 (fma.f64 x y (*.f64 z t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 x y) (fma.f64 a b (*.f64 z t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 x y) (*.f64 (fma.f64 a b (*.f64 z t)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 z t) (fma.f64 x y (*.f64 a b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 x y (*.f64 z t)) (*.f64 a b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 a b) (fma.f64 x y (*.f64 z t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 a b (*.f64 z t)) (*.f64 x y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 a b)) (pow.f64 (cbrt.f64 (*.f64 a b)) 2) (fma.f64 x y (*.f64 z t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 a b)) 2) (cbrt.f64 (*.f64 a b)) (fma.f64 x y (*.f64 z t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 x y (*.f64 z t))) (pow.f64 (cbrt.f64 (fma.f64 x y (*.f64 z t))) 2) (*.f64 a b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 x y (*.f64 z t))) 2) (cbrt.f64 (fma.f64 x y (*.f64 z t))) (*.f64 a b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 z) 2) (*.f64 (cbrt.f64 z) t) (fma.f64 x y (*.f64 a b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (*.f64 (cbrt.f64 x) y) (fma.f64 a b (*.f64 z t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (*.f64 (cbrt.f64 x) y) (*.f64 (fma.f64 a b (*.f64 z t)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 a) 2) (*.f64 (cbrt.f64 a) b) (fma.f64 x y (*.f64 z t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 t) 2) (*.f64 (cbrt.f64 t) z) (fma.f64 x y (*.f64 a b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 y) 2) (*.f64 (cbrt.f64 y) x) (fma.f64 a b (*.f64 z t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 y) 2) (*.f64 (cbrt.f64 y) x) (*.f64 (fma.f64 a b (*.f64 z t)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 b) 2) (*.f64 (cbrt.f64 b) a) (fma.f64 x y (*.f64 z t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 z t)) (pow.f64 (cbrt.f64 (*.f64 z t)) 2) (fma.f64 x y (*.f64 a b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 z t)) 2) (cbrt.f64 (*.f64 z t)) (fma.f64 x y (*.f64 a b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 x y)) (pow.f64 (cbrt.f64 (*.f64 x y)) 2) (fma.f64 a b (*.f64 z t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 x y)) (pow.f64 (cbrt.f64 (*.f64 x y)) 2) (*.f64 (fma.f64 a b (*.f64 z t)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 x y)) 2) (cbrt.f64 (*.f64 x y)) (fma.f64 a b (*.f64 z t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 x y)) 2) (cbrt.f64 (*.f64 x y)) (*.f64 (fma.f64 a b (*.f64 z t)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 a b)) (sqrt.f64 (*.f64 a b)) (fma.f64 x y (*.f64 z t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 x y (*.f64 z t))) (sqrt.f64 (fma.f64 x y (*.f64 z t))) (*.f64 a b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 z) (*.f64 (sqrt.f64 z) t) (fma.f64 x y (*.f64 a b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) y) (fma.f64 a b (*.f64 z t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) y) (*.f64 (fma.f64 a b (*.f64 z t)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 a) (*.f64 (sqrt.f64 a) b) (fma.f64 x y (*.f64 z t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 t) (*.f64 (sqrt.f64 t) z) (fma.f64 x y (*.f64 a b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 y) (*.f64 (sqrt.f64 y) x) (fma.f64 a b (*.f64 z t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 y) (*.f64 (sqrt.f64 y) x) (*.f64 (fma.f64 a b (*.f64 z t)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 b) (*.f64 (sqrt.f64 b) a) (fma.f64 x y (*.f64 z t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 z t)) (sqrt.f64 (*.f64 z t)) (fma.f64 x y (*.f64 a b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 x y)) (sqrt.f64 (*.f64 x y)) (fma.f64 a b (*.f64 z t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 x y)) (sqrt.f64 (*.f64 x y)) (*.f64 (fma.f64 a b (*.f64 z t)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (pow.f64 (*.f64 x y) 3) (pow.f64 (*.f64 z t) 3)) (/.f64 1 (fma.f64 (*.f64 z t) (-.f64 (*.f64 z t) (*.f64 x y)) (pow.f64 (*.f64 x y) 2))) (*.f64 a b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 x y) 2) (pow.f64 (*.f64 z t) 2)) (/.f64 1 (-.f64 (*.f64 x y) (*.f64 z t))) (*.f64 a b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 a b (*.f64 z t))) 2) (cbrt.f64 (fma.f64 a b (*.f64 z t))) (*.f64 x y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 a b (*.f64 z t))) (sqrt.f64 (fma.f64 a b (*.f64 z t))) (*.f64 x y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (pow.f64 (cbrt.f64 y) 2)) (cbrt.f64 y) (fma.f64 a b (*.f64 z t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (pow.f64 (cbrt.f64 y) 2)) (cbrt.f64 y) (*.f64 (fma.f64 a b (*.f64 z t)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (sqrt.f64 y)) (sqrt.f64 y) (fma.f64 a b (*.f64 z t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (sqrt.f64 y)) (sqrt.f64 y) (*.f64 (fma.f64 a b (*.f64 z t)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x) (fma.f64 a b (*.f64 z t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x) (*.f64 (fma.f64 a b (*.f64 z t)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y (sqrt.f64 x)) (sqrt.f64 x) (fma.f64 a b (*.f64 z t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y (sqrt.f64 x)) (sqrt.f64 x) (*.f64 (fma.f64 a b (*.f64 z t)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 a (pow.f64 (cbrt.f64 b) 2)) (cbrt.f64 b) (fma.f64 x y (*.f64 z t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 a (sqrt.f64 b)) (sqrt.f64 b) (fma.f64 x y (*.f64 z t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 b (pow.f64 (cbrt.f64 a) 2)) (cbrt.f64 a) (fma.f64 x y (*.f64 z t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 b (sqrt.f64 a)) (sqrt.f64 a) (fma.f64 x y (*.f64 z t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 z (pow.f64 (cbrt.f64 t) 2)) (cbrt.f64 t) (fma.f64 x y (*.f64 a b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 z (sqrt.f64 t)) (sqrt.f64 t) (fma.f64 x y (*.f64 a b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 t (pow.f64 (cbrt.f64 z) 2)) (cbrt.f64 z) (fma.f64 x y (*.f64 a b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 t (sqrt.f64 z)) (sqrt.f64 z) (fma.f64 x y (*.f64 a b)))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 x y (*.f64 z t)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (*.f64 x y) 2) (-.f64 (*.f64 x y) (*.f64 z t))) (/.f64 (pow.f64 (*.f64 z t) 2) (-.f64 (*.f64 x y) (*.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 x y (*.f64 z t)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 x y (*.f64 z t)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 x y (*.f64 z t))) (pow.f64 (cbrt.f64 (fma.f64 x y (*.f64 z t))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 x y (*.f64 z t))) 2) (cbrt.f64 (fma.f64 x y (*.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 x y (*.f64 z t))) (sqrt.f64 (fma.f64 x y (*.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (*.f64 x y) 3) (pow.f64 (*.f64 z t) 3)) (/.f64 1 (fma.f64 (*.f64 z t) (-.f64 (*.f64 z t) (*.f64 x y)) (pow.f64 (*.f64 x y) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (*.f64 x y) 2) (pow.f64 (*.f64 z t) 2)) (/.f64 1 (-.f64 (*.f64 x y) (*.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (*.f64 z t) (-.f64 (*.f64 z t) (*.f64 x y)) (pow.f64 (*.f64 x y) 2)) (+.f64 (pow.f64 (*.f64 x y) 3) (pow.f64 (*.f64 z t) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (-.f64 (pow.f64 (*.f64 x y) 2) (pow.f64 (*.f64 z t) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 x y) 3) (pow.f64 (*.f64 z t) 3)) (fma.f64 (*.f64 z t) (-.f64 (*.f64 z t) (*.f64 x y)) (pow.f64 (*.f64 x y) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 x y) 3) (pow.f64 (*.f64 z t) 3)) (+.f64 (pow.f64 (*.f64 z t) 2) (-.f64 (pow.f64 (*.f64 x y) 2) (*.f64 (*.f64 x y) (*.f64 z t)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 x y) 2) (pow.f64 (*.f64 z t) 2)) (-.f64 (*.f64 x y) (*.f64 z t)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 x y) 3) (pow.f64 (*.f64 z t) 3))) (neg.f64 (fma.f64 (*.f64 z t) (-.f64 (*.f64 z t) (*.f64 x y)) (pow.f64 (*.f64 x y) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 x y) 2) (pow.f64 (*.f64 z t) 2))) (neg.f64 (-.f64 (*.f64 x y) (*.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 z t) 2) (pow.f64 (*.f64 x y) 2)) (-.f64 (*.f64 z t) (*.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 x y (*.f64 z t)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 x y (*.f64 z t))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 x y (*.f64 z t))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (*.f64 z t) (-.f64 (*.f64 z t) (*.f64 x y)) (pow.f64 (*.f64 x y) 2)) (+.f64 (pow.f64 (*.f64 x y) 3) (pow.f64 (*.f64 z t) 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (-.f64 (pow.f64 (*.f64 x y) 2) (pow.f64 (*.f64 z t) 2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 x y (*.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 x y (*.f64 z t)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x y))) (pow.f64 (exp.f64 z) t)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 x) y) (+.f64 1 (expm1.f64 (*.f64 z t)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x y))) (+.f64 1 (expm1.f64 (*.f64 z t)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 z t))) (pow.f64 (exp.f64 x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 z) t) (+.f64 1 (expm1.f64 (*.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 z t))) (+.f64 1 (expm1.f64 (*.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 x y (*.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 x y (*.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 x y (*.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 x y (*.f64 z t))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x y (*.f64 z t))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y x (*.f64 z t))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x y) 1 (*.f64 z t))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 z t (*.f64 x y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 t z (*.f64 x y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 z t) 1 (*.f64 x y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 x y) (*.f64 z t))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 z t) (*.f64 x y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 z) 2) (*.f64 (cbrt.f64 z) t) (*.f64 x y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (*.f64 (cbrt.f64 x) y) (*.f64 z t))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 t) 2) (*.f64 (cbrt.f64 t) z) (*.f64 x y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 y) 2) (*.f64 (cbrt.f64 y) x) (*.f64 z t))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 z t)) (pow.f64 (cbrt.f64 (*.f64 z t)) 2) (*.f64 x y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 z t)) 2) (cbrt.f64 (*.f64 z t)) (*.f64 x y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 x y)) (pow.f64 (cbrt.f64 (*.f64 x y)) 2) (*.f64 z t))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 x y)) 2) (cbrt.f64 (*.f64 x y)) (*.f64 z t))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 z) (*.f64 (sqrt.f64 z) t) (*.f64 x y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) y) (*.f64 z t))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 t) (*.f64 (sqrt.f64 t) z) (*.f64 x y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 y) (*.f64 (sqrt.f64 y) x) (*.f64 z t))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 z t)) (sqrt.f64 (*.f64 z t)) (*.f64 x y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 x y)) (sqrt.f64 (*.f64 x y)) (*.f64 z t))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (pow.f64 (cbrt.f64 y) 2)) (cbrt.f64 y) (*.f64 z t))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (sqrt.f64 y)) (sqrt.f64 y) (*.f64 z t))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x) (*.f64 z t))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y (sqrt.f64 x)) (sqrt.f64 x) (*.f64 z t))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 z (pow.f64 (cbrt.f64 t) 2)) (cbrt.f64 t) (*.f64 x y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 z (sqrt.f64 t)) (sqrt.f64 t) (*.f64 x y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 t (pow.f64 (cbrt.f64 z) 2)) (cbrt.f64 z) (*.f64 x y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 t (sqrt.f64 z)) (sqrt.f64 z) (*.f64 x y))))))

simplify82.0ms (1.8%)

Algorithm
egg-herbie
Rules
522×distribute-rgt-in_binary64
447×times-frac_binary64
422×unswap-sqr_binary64
385×cancel-sign-sub-inv_binary64
345×fma-neg_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
03703925
19323884
226983884
Stop Event
node limit
Counts
303 → 212
Calls
Call 1
Inputs
(+.f64 (*.f64 a b) (*.f64 t z))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(*.f64 y x)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(*.f64 y x)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (*.f64 t z))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(*.f64 y x)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(*.f64 y x)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (*.f64 y x))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(*.f64 t z)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(*.f64 t z)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (*.f64 y x))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(*.f64 t z)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(*.f64 t z)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(*.f64 a b)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(*.f64 a b)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(*.f64 a b)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(*.f64 a b)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(*.f64 t z)
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(*.f64 y x)
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(*.f64 y x)
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(*.f64 t z)
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(*.f64 y x)
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(*.f64 y x)
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(*.f64 y x)
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(*.f64 t z)
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(*.f64 t z)
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(*.f64 y x)
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(*.f64 t z)
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(*.f64 t z)
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(-.f64 (exp.f64 (log1p.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t))))) 1)
(-.f64 (/.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 2) (-.f64 (fma.f64 x y (*.f64 z t)) (*.f64 a b))) (/.f64 (pow.f64 (*.f64 a b) 2) (-.f64 (fma.f64 x y (*.f64 z t)) (*.f64 a b))))
(*.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t))) 1)
(*.f64 1 (fma.f64 x y (fma.f64 a b (*.f64 z t))))
(*.f64 (cbrt.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t)))) (pow.f64 (cbrt.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t)))) 2))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t)))) 2) (cbrt.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t)))))
(*.f64 (sqrt.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t)))) (sqrt.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t)))))
(*.f64 (+.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 3) (pow.f64 (*.f64 a b) 3)) (/.f64 1 (fma.f64 (*.f64 a b) (-.f64 (*.f64 a b) (fma.f64 x y (*.f64 z t))) (pow.f64 (fma.f64 x y (*.f64 z t)) 2))))
(*.f64 (-.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 2) (pow.f64 (*.f64 a b) 2)) (/.f64 1 (-.f64 (fma.f64 x y (*.f64 z t)) (*.f64 a b))))
(/.f64 1 (/.f64 (fma.f64 (*.f64 a b) (-.f64 (*.f64 a b) (fma.f64 x y (*.f64 z t))) (pow.f64 (fma.f64 x y (*.f64 z t)) 2)) (+.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 3) (pow.f64 (*.f64 a b) 3))))
(/.f64 1 (/.f64 (-.f64 (fma.f64 x y (*.f64 z t)) (*.f64 a b)) (-.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 2) (pow.f64 (*.f64 a b) 2))))
(/.f64 (+.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 3) (pow.f64 (*.f64 a b) 3)) (fma.f64 (*.f64 a b) (-.f64 (*.f64 a b) (fma.f64 x y (*.f64 z t))) (pow.f64 (fma.f64 x y (*.f64 z t)) 2)))
(/.f64 (+.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 3) (pow.f64 (*.f64 a b) 3)) (+.f64 (pow.f64 (*.f64 a b) 2) (-.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 2) (*.f64 (fma.f64 x y (*.f64 z t)) (*.f64 a b)))))
(/.f64 (-.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 2) (pow.f64 (*.f64 a b) 2)) (-.f64 (fma.f64 x y (*.f64 z t)) (*.f64 a b)))
(/.f64 (neg.f64 (+.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 3) (pow.f64 (*.f64 a b) 3))) (neg.f64 (fma.f64 (*.f64 a b) (-.f64 (*.f64 a b) (fma.f64 x y (*.f64 z t))) (pow.f64 (fma.f64 x y (*.f64 z t)) 2))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 2) (pow.f64 (*.f64 a b) 2))) (neg.f64 (-.f64 (fma.f64 x y (*.f64 z t)) (*.f64 a b))))
(/.f64 (+.f64 (pow.f64 (*.f64 x y) 3) (pow.f64 (fma.f64 a b (*.f64 z t)) 3)) (+.f64 (pow.f64 (*.f64 x y) 2) (-.f64 (pow.f64 (fma.f64 a b (*.f64 z t)) 2) (*.f64 (*.f64 x y) (fma.f64 a b (*.f64 z t))))))
(/.f64 (-.f64 (pow.f64 (*.f64 x y) 2) (pow.f64 (fma.f64 a b (*.f64 z t)) 2)) (-.f64 (*.f64 x y) (fma.f64 a b (*.f64 z t))))
(/.f64 (-.f64 (pow.f64 (*.f64 a b) 2) (pow.f64 (fma.f64 x y (*.f64 z t)) 2)) (-.f64 (*.f64 a b) (fma.f64 x y (*.f64 z t))))
(pow.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t))) 1)
(pow.f64 (pow.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t))) 3) 1/3)
(pow.f64 (cbrt.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t)))) 3)
(pow.f64 (sqrt.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t)))) 2)
(pow.f64 (/.f64 (fma.f64 (*.f64 a b) (-.f64 (*.f64 a b) (fma.f64 x y (*.f64 z t))) (pow.f64 (fma.f64 x y (*.f64 z t)) 2)) (+.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 3) (pow.f64 (*.f64 a b) 3))) -1)
(pow.f64 (/.f64 (-.f64 (fma.f64 x y (*.f64 z t)) (*.f64 a b)) (-.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 2) (pow.f64 (*.f64 a b) 2))) -1)
(sqrt.f64 (pow.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t))) 2))
(log.f64 (exp.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t)))))
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t))))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x y))) (exp.f64 (fma.f64 a b (*.f64 z t)))))
(log.f64 (*.f64 (pow.f64 (exp.f64 x) y) (*.f64 (pow.f64 (exp.f64 z) t) (pow.f64 (exp.f64 a) b))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x y))) (*.f64 (pow.f64 (exp.f64 z) t) (pow.f64 (exp.f64 a) b))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 x y (*.f64 z t)))) (pow.f64 (exp.f64 a) b)))
(log.f64 (*.f64 (exp.f64 (fma.f64 x y (*.f64 z t))) (+.f64 1 (expm1.f64 (*.f64 a b)))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 x y (*.f64 z t)))) (+.f64 1 (expm1.f64 (*.f64 a b)))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 a b))) (exp.f64 (fma.f64 x y (*.f64 z t)))))
(log.f64 (*.f64 (pow.f64 (exp.f64 a) b) (+.f64 1 (expm1.f64 (fma.f64 x y (*.f64 z t))))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 a b))) (+.f64 1 (expm1.f64 (fma.f64 x y (*.f64 z t))))))
(log.f64 (*.f64 (exp.f64 (fma.f64 a b (*.f64 z t))) (pow.f64 (exp.f64 x) y)))
(log.f64 (*.f64 (*.f64 (pow.f64 (exp.f64 z) t) (pow.f64 (exp.f64 a) b)) (pow.f64 (exp.f64 x) y)))
(log.f64 (*.f64 (exp.f64 (fma.f64 a b (*.f64 z t))) (+.f64 1 (expm1.f64 (*.f64 x y)))))
(log.f64 (*.f64 (*.f64 (pow.f64 (exp.f64 z) t) (pow.f64 (exp.f64 a) b)) (+.f64 1 (expm1.f64 (*.f64 x y)))))
(cbrt.f64 (pow.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t))) 3))
(expm1.f64 (log1p.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t)))))
(log1p.f64 (expm1.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t)))))
(exp.f64 (log.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t)))))
(exp.f64 (*.f64 (log.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t)))) 1))
(fma.f64 x y (fma.f64 a b (*.f64 z t)))
(fma.f64 x y (*.f64 (fma.f64 a b (*.f64 z t)) 1))
(fma.f64 y x (fma.f64 a b (*.f64 z t)))
(fma.f64 y x (*.f64 (fma.f64 a b (*.f64 z t)) 1))
(fma.f64 (*.f64 x y) 1 (fma.f64 a b (*.f64 z t)))
(fma.f64 (*.f64 x y) 1 (*.f64 (fma.f64 a b (*.f64 z t)) 1))
(fma.f64 z t (fma.f64 x y (*.f64 a b)))
(fma.f64 t z (fma.f64 x y (*.f64 a b)))
(fma.f64 (*.f64 z t) 1 (fma.f64 x y (*.f64 a b)))
(fma.f64 (fma.f64 x y (*.f64 z t)) 1 (*.f64 a b))
(fma.f64 a b (fma.f64 x y (*.f64 z t)))
(fma.f64 b a (fma.f64 x y (*.f64 z t)))
(fma.f64 (*.f64 a b) 1 (fma.f64 x y (*.f64 z t)))
(fma.f64 1 (*.f64 x y) (fma.f64 a b (*.f64 z t)))
(fma.f64 1 (*.f64 x y) (*.f64 (fma.f64 a b (*.f64 z t)) 1))
(fma.f64 1 (*.f64 z t) (fma.f64 x y (*.f64 a b)))
(fma.f64 1 (fma.f64 x y (*.f64 z t)) (*.f64 a b))
(fma.f64 1 (*.f64 a b) (fma.f64 x y (*.f64 z t)))
(fma.f64 1 (fma.f64 a b (*.f64 z t)) (*.f64 x y))
(fma.f64 (cbrt.f64 (*.f64 a b)) (pow.f64 (cbrt.f64 (*.f64 a b)) 2) (fma.f64 x y (*.f64 z t)))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 a b)) 2) (cbrt.f64 (*.f64 a b)) (fma.f64 x y (*.f64 z t)))
(fma.f64 (cbrt.f64 (fma.f64 x y (*.f64 z t))) (pow.f64 (cbrt.f64 (fma.f64 x y (*.f64 z t))) 2) (*.f64 a b))
(fma.f64 (pow.f64 (cbrt.f64 (fma.f64 x y (*.f64 z t))) 2) (cbrt.f64 (fma.f64 x y (*.f64 z t))) (*.f64 a b))
(fma.f64 (pow.f64 (cbrt.f64 z) 2) (*.f64 (cbrt.f64 z) t) (fma.f64 x y (*.f64 a b)))
(fma.f64 (pow.f64 (cbrt.f64 x) 2) (*.f64 (cbrt.f64 x) y) (fma.f64 a b (*.f64 z t)))
(fma.f64 (pow.f64 (cbrt.f64 x) 2) (*.f64 (cbrt.f64 x) y) (*.f64 (fma.f64 a b (*.f64 z t)) 1))
(fma.f64 (pow.f64 (cbrt.f64 a) 2) (*.f64 (cbrt.f64 a) b) (fma.f64 x y (*.f64 z t)))
(fma.f64 (pow.f64 (cbrt.f64 t) 2) (*.f64 (cbrt.f64 t) z) (fma.f64 x y (*.f64 a b)))
(fma.f64 (pow.f64 (cbrt.f64 y) 2) (*.f64 (cbrt.f64 y) x) (fma.f64 a b (*.f64 z t)))
(fma.f64 (pow.f64 (cbrt.f64 y) 2) (*.f64 (cbrt.f64 y) x) (*.f64 (fma.f64 a b (*.f64 z t)) 1))
(fma.f64 (pow.f64 (cbrt.f64 b) 2) (*.f64 (cbrt.f64 b) a) (fma.f64 x y (*.f64 z t)))
(fma.f64 (cbrt.f64 (*.f64 z t)) (pow.f64 (cbrt.f64 (*.f64 z t)) 2) (fma.f64 x y (*.f64 a b)))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 z t)) 2) (cbrt.f64 (*.f64 z t)) (fma.f64 x y (*.f64 a b)))
(fma.f64 (cbrt.f64 (*.f64 x y)) (pow.f64 (cbrt.f64 (*.f64 x y)) 2) (fma.f64 a b (*.f64 z t)))
(fma.f64 (cbrt.f64 (*.f64 x y)) (pow.f64 (cbrt.f64 (*.f64 x y)) 2) (*.f64 (fma.f64 a b (*.f64 z t)) 1))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 x y)) 2) (cbrt.f64 (*.f64 x y)) (fma.f64 a b (*.f64 z t)))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 x y)) 2) (cbrt.f64 (*.f64 x y)) (*.f64 (fma.f64 a b (*.f64 z t)) 1))
(fma.f64 (sqrt.f64 (*.f64 a b)) (sqrt.f64 (*.f64 a b)) (fma.f64 x y (*.f64 z t)))
(fma.f64 (sqrt.f64 (fma.f64 x y (*.f64 z t))) (sqrt.f64 (fma.f64 x y (*.f64 z t))) (*.f64 a b))
(fma.f64 (sqrt.f64 z) (*.f64 (sqrt.f64 z) t) (fma.f64 x y (*.f64 a b)))
(fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) y) (fma.f64 a b (*.f64 z t)))
(fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) y) (*.f64 (fma.f64 a b (*.f64 z t)) 1))
(fma.f64 (sqrt.f64 a) (*.f64 (sqrt.f64 a) b) (fma.f64 x y (*.f64 z t)))
(fma.f64 (sqrt.f64 t) (*.f64 (sqrt.f64 t) z) (fma.f64 x y (*.f64 a b)))
(fma.f64 (sqrt.f64 y) (*.f64 (sqrt.f64 y) x) (fma.f64 a b (*.f64 z t)))
(fma.f64 (sqrt.f64 y) (*.f64 (sqrt.f64 y) x) (*.f64 (fma.f64 a b (*.f64 z t)) 1))
(fma.f64 (sqrt.f64 b) (*.f64 (sqrt.f64 b) a) (fma.f64 x y (*.f64 z t)))
(fma.f64 (sqrt.f64 (*.f64 z t)) (sqrt.f64 (*.f64 z t)) (fma.f64 x y (*.f64 a b)))
(fma.f64 (sqrt.f64 (*.f64 x y)) (sqrt.f64 (*.f64 x y)) (fma.f64 a b (*.f64 z t)))
(fma.f64 (sqrt.f64 (*.f64 x y)) (sqrt.f64 (*.f64 x y)) (*.f64 (fma.f64 a b (*.f64 z t)) 1))
(fma.f64 (+.f64 (pow.f64 (*.f64 x y) 3) (pow.f64 (*.f64 z t) 3)) (/.f64 1 (fma.f64 (*.f64 z t) (-.f64 (*.f64 z t) (*.f64 x y)) (pow.f64 (*.f64 x y) 2))) (*.f64 a b))
(fma.f64 (-.f64 (pow.f64 (*.f64 x y) 2) (pow.f64 (*.f64 z t) 2)) (/.f64 1 (-.f64 (*.f64 x y) (*.f64 z t))) (*.f64 a b))
(fma.f64 (pow.f64 (cbrt.f64 (fma.f64 a b (*.f64 z t))) 2) (cbrt.f64 (fma.f64 a b (*.f64 z t))) (*.f64 x y))
(fma.f64 (sqrt.f64 (fma.f64 a b (*.f64 z t))) (sqrt.f64 (fma.f64 a b (*.f64 z t))) (*.f64 x y))
(fma.f64 (*.f64 x (pow.f64 (cbrt.f64 y) 2)) (cbrt.f64 y) (fma.f64 a b (*.f64 z t)))
(fma.f64 (*.f64 x (pow.f64 (cbrt.f64 y) 2)) (cbrt.f64 y) (*.f64 (fma.f64 a b (*.f64 z t)) 1))
(fma.f64 (*.f64 x (sqrt.f64 y)) (sqrt.f64 y) (fma.f64 a b (*.f64 z t)))
(fma.f64 (*.f64 x (sqrt.f64 y)) (sqrt.f64 y) (*.f64 (fma.f64 a b (*.f64 z t)) 1))
(fma.f64 (*.f64 y (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x) (fma.f64 a b (*.f64 z t)))
(fma.f64 (*.f64 y (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x) (*.f64 (fma.f64 a b (*.f64 z t)) 1))
(fma.f64 (*.f64 y (sqrt.f64 x)) (sqrt.f64 x) (fma.f64 a b (*.f64 z t)))
(fma.f64 (*.f64 y (sqrt.f64 x)) (sqrt.f64 x) (*.f64 (fma.f64 a b (*.f64 z t)) 1))
(fma.f64 (*.f64 a (pow.f64 (cbrt.f64 b) 2)) (cbrt.f64 b) (fma.f64 x y (*.f64 z t)))
(fma.f64 (*.f64 a (sqrt.f64 b)) (sqrt.f64 b) (fma.f64 x y (*.f64 z t)))
(fma.f64 (*.f64 b (pow.f64 (cbrt.f64 a) 2)) (cbrt.f64 a) (fma.f64 x y (*.f64 z t)))
(fma.f64 (*.f64 b (sqrt.f64 a)) (sqrt.f64 a) (fma.f64 x y (*.f64 z t)))
(fma.f64 (*.f64 z (pow.f64 (cbrt.f64 t) 2)) (cbrt.f64 t) (fma.f64 x y (*.f64 a b)))
(fma.f64 (*.f64 z (sqrt.f64 t)) (sqrt.f64 t) (fma.f64 x y (*.f64 a b)))
(fma.f64 (*.f64 t (pow.f64 (cbrt.f64 z) 2)) (cbrt.f64 z) (fma.f64 x y (*.f64 a b)))
(fma.f64 (*.f64 t (sqrt.f64 z)) (sqrt.f64 z) (fma.f64 x y (*.f64 a b)))
(-.f64 (exp.f64 (log1p.f64 (fma.f64 x y (*.f64 z t)))) 1)
(-.f64 (/.f64 (pow.f64 (*.f64 x y) 2) (-.f64 (*.f64 x y) (*.f64 z t))) (/.f64 (pow.f64 (*.f64 z t) 2) (-.f64 (*.f64 x y) (*.f64 z t))))
(*.f64 (fma.f64 x y (*.f64 z t)) 1)
(*.f64 1 (fma.f64 x y (*.f64 z t)))
(*.f64 (cbrt.f64 (fma.f64 x y (*.f64 z t))) (pow.f64 (cbrt.f64 (fma.f64 x y (*.f64 z t))) 2))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 x y (*.f64 z t))) 2) (cbrt.f64 (fma.f64 x y (*.f64 z t))))
(*.f64 (sqrt.f64 (fma.f64 x y (*.f64 z t))) (sqrt.f64 (fma.f64 x y (*.f64 z t))))
(*.f64 (+.f64 (pow.f64 (*.f64 x y) 3) (pow.f64 (*.f64 z t) 3)) (/.f64 1 (fma.f64 (*.f64 z t) (-.f64 (*.f64 z t) (*.f64 x y)) (pow.f64 (*.f64 x y) 2))))
(*.f64 (-.f64 (pow.f64 (*.f64 x y) 2) (pow.f64 (*.f64 z t) 2)) (/.f64 1 (-.f64 (*.f64 x y) (*.f64 z t))))
(/.f64 1 (/.f64 (fma.f64 (*.f64 z t) (-.f64 (*.f64 z t) (*.f64 x y)) (pow.f64 (*.f64 x y) 2)) (+.f64 (pow.f64 (*.f64 x y) 3) (pow.f64 (*.f64 z t) 3))))
(/.f64 1 (/.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (-.f64 (pow.f64 (*.f64 x y) 2) (pow.f64 (*.f64 z t) 2))))
(/.f64 (+.f64 (pow.f64 (*.f64 x y) 3) (pow.f64 (*.f64 z t) 3)) (fma.f64 (*.f64 z t) (-.f64 (*.f64 z t) (*.f64 x y)) (pow.f64 (*.f64 x y) 2)))
(/.f64 (+.f64 (pow.f64 (*.f64 x y) 3) (pow.f64 (*.f64 z t) 3)) (+.f64 (pow.f64 (*.f64 z t) 2) (-.f64 (pow.f64 (*.f64 x y) 2) (*.f64 (*.f64 x y) (*.f64 z t)))))
(/.f64 (-.f64 (pow.f64 (*.f64 x y) 2) (pow.f64 (*.f64 z t) 2)) (-.f64 (*.f64 x y) (*.f64 z t)))
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 x y) 3) (pow.f64 (*.f64 z t) 3))) (neg.f64 (fma.f64 (*.f64 z t) (-.f64 (*.f64 z t) (*.f64 x y)) (pow.f64 (*.f64 x y) 2))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 x y) 2) (pow.f64 (*.f64 z t) 2))) (neg.f64 (-.f64 (*.f64 x y) (*.f64 z t))))
(/.f64 (-.f64 (pow.f64 (*.f64 z t) 2) (pow.f64 (*.f64 x y) 2)) (-.f64 (*.f64 z t) (*.f64 x y)))
(pow.f64 (fma.f64 x y (*.f64 z t)) 1)
(pow.f64 (cbrt.f64 (fma.f64 x y (*.f64 z t))) 3)
(pow.f64 (sqrt.f64 (fma.f64 x y (*.f64 z t))) 2)
(pow.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 3) 1/3)
(pow.f64 (/.f64 (fma.f64 (*.f64 z t) (-.f64 (*.f64 z t) (*.f64 x y)) (pow.f64 (*.f64 x y) 2)) (+.f64 (pow.f64 (*.f64 x y) 3) (pow.f64 (*.f64 z t) 3))) -1)
(pow.f64 (/.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (-.f64 (pow.f64 (*.f64 x y) 2) (pow.f64 (*.f64 z t) 2))) -1)
(sqrt.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 2))
(log.f64 (exp.f64 (fma.f64 x y (*.f64 z t))))
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 x y (*.f64 z t)))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x y))) (pow.f64 (exp.f64 z) t)))
(log.f64 (*.f64 (pow.f64 (exp.f64 x) y) (+.f64 1 (expm1.f64 (*.f64 z t)))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x y))) (+.f64 1 (expm1.f64 (*.f64 z t)))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 z t))) (pow.f64 (exp.f64 x) y)))
(log.f64 (*.f64 (pow.f64 (exp.f64 z) t) (+.f64 1 (expm1.f64 (*.f64 x y)))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 z t))) (+.f64 1 (expm1.f64 (*.f64 x y)))))
(cbrt.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 3))
(expm1.f64 (log1p.f64 (fma.f64 x y (*.f64 z t))))
(log1p.f64 (expm1.f64 (fma.f64 x y (*.f64 z t))))
(exp.f64 (log.f64 (fma.f64 x y (*.f64 z t))))
(exp.f64 (*.f64 (log.f64 (fma.f64 x y (*.f64 z t))) 1))
(fma.f64 x y (*.f64 z t))
(fma.f64 y x (*.f64 z t))
(fma.f64 (*.f64 x y) 1 (*.f64 z t))
(fma.f64 z t (*.f64 x y))
(fma.f64 t z (*.f64 x y))
(fma.f64 (*.f64 z t) 1 (*.f64 x y))
(fma.f64 1 (*.f64 x y) (*.f64 z t))
(fma.f64 1 (*.f64 z t) (*.f64 x y))
(fma.f64 (pow.f64 (cbrt.f64 z) 2) (*.f64 (cbrt.f64 z) t) (*.f64 x y))
(fma.f64 (pow.f64 (cbrt.f64 x) 2) (*.f64 (cbrt.f64 x) y) (*.f64 z t))
(fma.f64 (pow.f64 (cbrt.f64 t) 2) (*.f64 (cbrt.f64 t) z) (*.f64 x y))
(fma.f64 (pow.f64 (cbrt.f64 y) 2) (*.f64 (cbrt.f64 y) x) (*.f64 z t))
(fma.f64 (cbrt.f64 (*.f64 z t)) (pow.f64 (cbrt.f64 (*.f64 z t)) 2) (*.f64 x y))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 z t)) 2) (cbrt.f64 (*.f64 z t)) (*.f64 x y))
(fma.f64 (cbrt.f64 (*.f64 x y)) (pow.f64 (cbrt.f64 (*.f64 x y)) 2) (*.f64 z t))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 x y)) 2) (cbrt.f64 (*.f64 x y)) (*.f64 z t))
(fma.f64 (sqrt.f64 z) (*.f64 (sqrt.f64 z) t) (*.f64 x y))
(fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) y) (*.f64 z t))
(fma.f64 (sqrt.f64 t) (*.f64 (sqrt.f64 t) z) (*.f64 x y))
(fma.f64 (sqrt.f64 y) (*.f64 (sqrt.f64 y) x) (*.f64 z t))
(fma.f64 (sqrt.f64 (*.f64 z t)) (sqrt.f64 (*.f64 z t)) (*.f64 x y))
(fma.f64 (sqrt.f64 (*.f64 x y)) (sqrt.f64 (*.f64 x y)) (*.f64 z t))
(fma.f64 (*.f64 x (pow.f64 (cbrt.f64 y) 2)) (cbrt.f64 y) (*.f64 z t))
(fma.f64 (*.f64 x (sqrt.f64 y)) (sqrt.f64 y) (*.f64 z t))
(fma.f64 (*.f64 y (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x) (*.f64 z t))
(fma.f64 (*.f64 y (sqrt.f64 x)) (sqrt.f64 x) (*.f64 z t))
(fma.f64 (*.f64 z (pow.f64 (cbrt.f64 t) 2)) (cbrt.f64 t) (*.f64 x y))
(fma.f64 (*.f64 z (sqrt.f64 t)) (sqrt.f64 t) (*.f64 x y))
(fma.f64 (*.f64 t (pow.f64 (cbrt.f64 z) 2)) (cbrt.f64 z) (*.f64 x y))
(fma.f64 (*.f64 t (sqrt.f64 z)) (sqrt.f64 z) (*.f64 x y))
Outputs
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(*.f64 y x)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(*.f64 y x)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(*.f64 y x)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(*.f64 y x)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (*.f64 y x))
(fma.f64 x y (*.f64 a b))
(fma.f64 y x (*.f64 a b))
(fma.f64 a b (*.f64 y x))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(*.f64 t z)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(*.f64 t z)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (*.f64 y x))
(fma.f64 x y (*.f64 a b))
(fma.f64 y x (*.f64 a b))
(fma.f64 a b (*.f64 y x))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(*.f64 t z)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(*.f64 t z)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 t z (*.f64 y x))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(*.f64 a b)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(*.f64 a b)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 t z (*.f64 y x))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(*.f64 a b)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(*.f64 a b)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(*.f64 t z)
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 t z (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 t z (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 t z (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 t z (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 t z (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 t z (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 t z (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 t z (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 t z (*.f64 y x))
(*.f64 t z)
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 t z (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 t z (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 t z (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 t z (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 t z (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 t z (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 t z (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 t z (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 t z (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 t z (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 t z (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 t z (*.f64 y x))
(*.f64 t z)
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 t z (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 t z (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 t z (*.f64 y x))
(*.f64 t z)
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 t z (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 t z (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 t z (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 t z (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 t z (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 t z (*.f64 y x))
(*.f64 t z)
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 t z (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 t z (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 t z (*.f64 y x))
(*.f64 t z)
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 t z (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 t z (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 t z (*.f64 y x))
(-.f64 (exp.f64 (log1p.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t))))) 1)
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(-.f64 (/.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 2) (-.f64 (fma.f64 x y (*.f64 z t)) (*.f64 a b))) (/.f64 (pow.f64 (*.f64 a b) 2) (-.f64 (fma.f64 x y (*.f64 z t)) (*.f64 a b))))
(/.f64 (-.f64 (pow.f64 (fma.f64 t z (*.f64 y x)) 2) (pow.f64 (*.f64 a b) 2)) (-.f64 (fma.f64 t z (*.f64 y x)) (*.f64 a b)))
(/.f64 (-.f64 (pow.f64 (*.f64 a b) 2) (pow.f64 (fma.f64 t z (*.f64 y x)) 2)) (-.f64 (*.f64 a b) (fma.f64 t z (*.f64 y x))))
(*.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t))) 1)
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(*.f64 1 (fma.f64 x y (fma.f64 a b (*.f64 z t))))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(*.f64 (cbrt.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t)))) (pow.f64 (cbrt.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t)))) 2))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t)))) 2) (cbrt.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t)))))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(*.f64 (sqrt.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t)))) (sqrt.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t)))))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(*.f64 (+.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 3) (pow.f64 (*.f64 a b) 3)) (/.f64 1 (fma.f64 (*.f64 a b) (-.f64 (*.f64 a b) (fma.f64 x y (*.f64 z t))) (pow.f64 (fma.f64 x y (*.f64 z t)) 2))))
(/.f64 (*.f64 (+.f64 (pow.f64 (fma.f64 t z (*.f64 y x)) 3) (pow.f64 (*.f64 a b) 3)) 1) (fma.f64 (*.f64 a b) (-.f64 (*.f64 a b) (fma.f64 t z (*.f64 y x))) (pow.f64 (fma.f64 t z (*.f64 y x)) 2)))
(/.f64 (+.f64 (pow.f64 (fma.f64 t z (*.f64 y x)) 3) (pow.f64 (*.f64 a b) 3)) (fma.f64 (*.f64 a b) (-.f64 (*.f64 a b) (fma.f64 t z (*.f64 y x))) (pow.f64 (fma.f64 t z (*.f64 y x)) 2)))
(*.f64 (-.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 2) (pow.f64 (*.f64 a b) 2)) (/.f64 1 (-.f64 (fma.f64 x y (*.f64 z t)) (*.f64 a b))))
(/.f64 (-.f64 (pow.f64 (fma.f64 t z (*.f64 y x)) 2) (pow.f64 (*.f64 a b) 2)) (-.f64 (fma.f64 t z (*.f64 y x)) (*.f64 a b)))
(/.f64 (-.f64 (pow.f64 (*.f64 a b) 2) (pow.f64 (fma.f64 t z (*.f64 y x)) 2)) (-.f64 (*.f64 a b) (fma.f64 t z (*.f64 y x))))
(/.f64 1 (/.f64 (fma.f64 (*.f64 a b) (-.f64 (*.f64 a b) (fma.f64 x y (*.f64 z t))) (pow.f64 (fma.f64 x y (*.f64 z t)) 2)) (+.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 3) (pow.f64 (*.f64 a b) 3))))
(/.f64 (*.f64 (+.f64 (pow.f64 (fma.f64 t z (*.f64 y x)) 3) (pow.f64 (*.f64 a b) 3)) 1) (fma.f64 (*.f64 a b) (-.f64 (*.f64 a b) (fma.f64 t z (*.f64 y x))) (pow.f64 (fma.f64 t z (*.f64 y x)) 2)))
(/.f64 (+.f64 (pow.f64 (fma.f64 t z (*.f64 y x)) 3) (pow.f64 (*.f64 a b) 3)) (fma.f64 (*.f64 a b) (-.f64 (*.f64 a b) (fma.f64 t z (*.f64 y x))) (pow.f64 (fma.f64 t z (*.f64 y x)) 2)))
(/.f64 1 (/.f64 (-.f64 (fma.f64 x y (*.f64 z t)) (*.f64 a b)) (-.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 2) (pow.f64 (*.f64 a b) 2))))
(/.f64 (-.f64 (pow.f64 (fma.f64 t z (*.f64 y x)) 2) (pow.f64 (*.f64 a b) 2)) (-.f64 (fma.f64 t z (*.f64 y x)) (*.f64 a b)))
(/.f64 (-.f64 (pow.f64 (*.f64 a b) 2) (pow.f64 (fma.f64 t z (*.f64 y x)) 2)) (-.f64 (*.f64 a b) (fma.f64 t z (*.f64 y x))))
(/.f64 (+.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 3) (pow.f64 (*.f64 a b) 3)) (fma.f64 (*.f64 a b) (-.f64 (*.f64 a b) (fma.f64 x y (*.f64 z t))) (pow.f64 (fma.f64 x y (*.f64 z t)) 2)))
(/.f64 (*.f64 (+.f64 (pow.f64 (fma.f64 t z (*.f64 y x)) 3) (pow.f64 (*.f64 a b) 3)) 1) (fma.f64 (*.f64 a b) (-.f64 (*.f64 a b) (fma.f64 t z (*.f64 y x))) (pow.f64 (fma.f64 t z (*.f64 y x)) 2)))
(/.f64 (+.f64 (pow.f64 (fma.f64 t z (*.f64 y x)) 3) (pow.f64 (*.f64 a b) 3)) (fma.f64 (*.f64 a b) (-.f64 (*.f64 a b) (fma.f64 t z (*.f64 y x))) (pow.f64 (fma.f64 t z (*.f64 y x)) 2)))
(/.f64 (+.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 3) (pow.f64 (*.f64 a b) 3)) (+.f64 (pow.f64 (*.f64 a b) 2) (-.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 2) (*.f64 (fma.f64 x y (*.f64 z t)) (*.f64 a b)))))
(/.f64 (*.f64 (+.f64 (pow.f64 (fma.f64 t z (*.f64 y x)) 3) (pow.f64 (*.f64 a b) 3)) 1) (fma.f64 (*.f64 a b) (-.f64 (*.f64 a b) (fma.f64 t z (*.f64 y x))) (pow.f64 (fma.f64 t z (*.f64 y x)) 2)))
(/.f64 (+.f64 (pow.f64 (fma.f64 t z (*.f64 y x)) 3) (pow.f64 (*.f64 a b) 3)) (fma.f64 (*.f64 a b) (-.f64 (*.f64 a b) (fma.f64 t z (*.f64 y x))) (pow.f64 (fma.f64 t z (*.f64 y x)) 2)))
(/.f64 (-.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 2) (pow.f64 (*.f64 a b) 2)) (-.f64 (fma.f64 x y (*.f64 z t)) (*.f64 a b)))
(/.f64 (-.f64 (pow.f64 (fma.f64 t z (*.f64 y x)) 2) (pow.f64 (*.f64 a b) 2)) (-.f64 (fma.f64 t z (*.f64 y x)) (*.f64 a b)))
(/.f64 (-.f64 (pow.f64 (*.f64 a b) 2) (pow.f64 (fma.f64 t z (*.f64 y x)) 2)) (-.f64 (*.f64 a b) (fma.f64 t z (*.f64 y x))))
(/.f64 (neg.f64 (+.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 3) (pow.f64 (*.f64 a b) 3))) (neg.f64 (fma.f64 (*.f64 a b) (-.f64 (*.f64 a b) (fma.f64 x y (*.f64 z t))) (pow.f64 (fma.f64 x y (*.f64 z t)) 2))))
(/.f64 (*.f64 (+.f64 (pow.f64 (fma.f64 t z (*.f64 y x)) 3) (pow.f64 (*.f64 a b) 3)) 1) (fma.f64 (*.f64 a b) (-.f64 (*.f64 a b) (fma.f64 t z (*.f64 y x))) (pow.f64 (fma.f64 t z (*.f64 y x)) 2)))
(/.f64 (+.f64 (pow.f64 (fma.f64 t z (*.f64 y x)) 3) (pow.f64 (*.f64 a b) 3)) (fma.f64 (*.f64 a b) (-.f64 (*.f64 a b) (fma.f64 t z (*.f64 y x))) (pow.f64 (fma.f64 t z (*.f64 y x)) 2)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 2) (pow.f64 (*.f64 a b) 2))) (neg.f64 (-.f64 (fma.f64 x y (*.f64 z t)) (*.f64 a b))))
(/.f64 (-.f64 (pow.f64 (fma.f64 t z (*.f64 y x)) 2) (pow.f64 (*.f64 a b) 2)) (-.f64 (fma.f64 t z (*.f64 y x)) (*.f64 a b)))
(/.f64 (-.f64 (pow.f64 (*.f64 a b) 2) (pow.f64 (fma.f64 t z (*.f64 y x)) 2)) (-.f64 (*.f64 a b) (fma.f64 t z (*.f64 y x))))
(/.f64 (+.f64 (pow.f64 (*.f64 x y) 3) (pow.f64 (fma.f64 a b (*.f64 z t)) 3)) (+.f64 (pow.f64 (*.f64 x y) 2) (-.f64 (pow.f64 (fma.f64 a b (*.f64 z t)) 2) (*.f64 (*.f64 x y) (fma.f64 a b (*.f64 z t))))))
(/.f64 (+.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (fma.f64 a b (*.f64 t z)) 3)) (+.f64 (pow.f64 (*.f64 y x) 2) (-.f64 (pow.f64 (fma.f64 a b (*.f64 t z)) 2) (*.f64 x (*.f64 y (fma.f64 a b (*.f64 t z)))))))
(/.f64 (+.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (fma.f64 a b (*.f64 t z)) 3)) (+.f64 (pow.f64 (*.f64 y x) 2) (*.f64 (fma.f64 a b (*.f64 t z)) (-.f64 (fma.f64 a b (*.f64 t z)) (*.f64 y x)))))
(/.f64 (-.f64 (pow.f64 (*.f64 x y) 2) (pow.f64 (fma.f64 a b (*.f64 z t)) 2)) (-.f64 (*.f64 x y) (fma.f64 a b (*.f64 z t))))
(/.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (fma.f64 a b (*.f64 t z)) 2)) (-.f64 (*.f64 y x) (fma.f64 a b (*.f64 t z))))
(/.f64 (-.f64 (pow.f64 (*.f64 a b) 2) (pow.f64 (fma.f64 x y (*.f64 z t)) 2)) (-.f64 (*.f64 a b) (fma.f64 x y (*.f64 z t))))
(/.f64 (-.f64 (pow.f64 (fma.f64 t z (*.f64 y x)) 2) (pow.f64 (*.f64 a b) 2)) (-.f64 (fma.f64 t z (*.f64 y x)) (*.f64 a b)))
(/.f64 (-.f64 (pow.f64 (*.f64 a b) 2) (pow.f64 (fma.f64 t z (*.f64 y x)) 2)) (-.f64 (*.f64 a b) (fma.f64 t z (*.f64 y x))))
(pow.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t))) 1)
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(pow.f64 (pow.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t))) 3) 1/3)
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(pow.f64 (cbrt.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t)))) 3)
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(pow.f64 (sqrt.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t)))) 2)
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(pow.f64 (/.f64 (fma.f64 (*.f64 a b) (-.f64 (*.f64 a b) (fma.f64 x y (*.f64 z t))) (pow.f64 (fma.f64 x y (*.f64 z t)) 2)) (+.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 3) (pow.f64 (*.f64 a b) 3))) -1)
(/.f64 (*.f64 (+.f64 (pow.f64 (fma.f64 t z (*.f64 y x)) 3) (pow.f64 (*.f64 a b) 3)) 1) (fma.f64 (*.f64 a b) (-.f64 (*.f64 a b) (fma.f64 t z (*.f64 y x))) (pow.f64 (fma.f64 t z (*.f64 y x)) 2)))
(/.f64 (+.f64 (pow.f64 (fma.f64 t z (*.f64 y x)) 3) (pow.f64 (*.f64 a b) 3)) (fma.f64 (*.f64 a b) (-.f64 (*.f64 a b) (fma.f64 t z (*.f64 y x))) (pow.f64 (fma.f64 t z (*.f64 y x)) 2)))
(pow.f64 (/.f64 (-.f64 (fma.f64 x y (*.f64 z t)) (*.f64 a b)) (-.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 2) (pow.f64 (*.f64 a b) 2))) -1)
(/.f64 (-.f64 (pow.f64 (fma.f64 t z (*.f64 y x)) 2) (pow.f64 (*.f64 a b) 2)) (-.f64 (fma.f64 t z (*.f64 y x)) (*.f64 a b)))
(/.f64 (-.f64 (pow.f64 (*.f64 a b) 2) (pow.f64 (fma.f64 t z (*.f64 y x)) 2)) (-.f64 (*.f64 a b) (fma.f64 t z (*.f64 y x))))
(sqrt.f64 (pow.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t))) 2))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(log.f64 (exp.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t)))))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t))))))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x y))) (exp.f64 (fma.f64 a b (*.f64 z t)))))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(log.f64 (*.f64 (pow.f64 (exp.f64 x) y) (*.f64 (pow.f64 (exp.f64 z) t) (pow.f64 (exp.f64 a) b))))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x y))) (*.f64 (pow.f64 (exp.f64 z) t) (pow.f64 (exp.f64 a) b))))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 x y (*.f64 z t)))) (pow.f64 (exp.f64 a) b)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(log.f64 (*.f64 (exp.f64 (fma.f64 x y (*.f64 z t))) (+.f64 1 (expm1.f64 (*.f64 a b)))))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 x y (*.f64 z t)))) (+.f64 1 (expm1.f64 (*.f64 a b)))))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 a b))) (exp.f64 (fma.f64 x y (*.f64 z t)))))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(log.f64 (*.f64 (pow.f64 (exp.f64 a) b) (+.f64 1 (expm1.f64 (fma.f64 x y (*.f64 z t))))))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 a b))) (+.f64 1 (expm1.f64 (fma.f64 x y (*.f64 z t))))))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(log.f64 (*.f64 (exp.f64 (fma.f64 a b (*.f64 z t))) (pow.f64 (exp.f64 x) y)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(log.f64 (*.f64 (*.f64 (pow.f64 (exp.f64 z) t) (pow.f64 (exp.f64 a) b)) (pow.f64 (exp.f64 x) y)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(log.f64 (*.f64 (exp.f64 (fma.f64 a b (*.f64 z t))) (+.f64 1 (expm1.f64 (*.f64 x y)))))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(log.f64 (*.f64 (*.f64 (pow.f64 (exp.f64 z) t) (pow.f64 (exp.f64 a) b)) (+.f64 1 (expm1.f64 (*.f64 x y)))))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(cbrt.f64 (pow.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t))) 3))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(expm1.f64 (log1p.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t)))))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(log1p.f64 (expm1.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t)))))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(exp.f64 (log.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t)))))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(exp.f64 (*.f64 (log.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t)))) 1))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(fma.f64 x y (fma.f64 a b (*.f64 z t)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(fma.f64 x y (*.f64 (fma.f64 a b (*.f64 z t)) 1))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(fma.f64 y x (fma.f64 a b (*.f64 z t)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(fma.f64 y x (*.f64 (fma.f64 a b (*.f64 z t)) 1))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(fma.f64 (*.f64 x y) 1 (fma.f64 a b (*.f64 z t)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(fma.f64 (*.f64 x y) 1 (*.f64 (fma.f64 a b (*.f64 z t)) 1))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(fma.f64 z t (fma.f64 x y (*.f64 a b)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(fma.f64 t z (fma.f64 x y (*.f64 a b)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(fma.f64 (*.f64 z t) 1 (fma.f64 x y (*.f64 a b)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(fma.f64 (fma.f64 x y (*.f64 z t)) 1 (*.f64 a b))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(fma.f64 a b (fma.f64 x y (*.f64 z t)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(fma.f64 b a (fma.f64 x y (*.f64 z t)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(fma.f64 (*.f64 a b) 1 (fma.f64 x y (*.f64 z t)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(fma.f64 1 (*.f64 x y) (fma.f64 a b (*.f64 z t)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(fma.f64 1 (*.f64 x y) (*.f64 (fma.f64 a b (*.f64 z t)) 1))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(fma.f64 1 (*.f64 z t) (fma.f64 x y (*.f64 a b)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(fma.f64 1 (fma.f64 x y (*.f64 z t)) (*.f64 a b))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(fma.f64 1 (*.f64 a b) (fma.f64 x y (*.f64 z t)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(fma.f64 1 (fma.f64 a b (*.f64 z t)) (*.f64 x y))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(fma.f64 (cbrt.f64 (*.f64 a b)) (pow.f64 (cbrt.f64 (*.f64 a b)) 2) (fma.f64 x y (*.f64 z t)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 a b)) 2) (cbrt.f64 (*.f64 a b)) (fma.f64 x y (*.f64 z t)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(fma.f64 (cbrt.f64 (fma.f64 x y (*.f64 z t))) (pow.f64 (cbrt.f64 (fma.f64 x y (*.f64 z t))) 2) (*.f64 a b))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(fma.f64 (pow.f64 (cbrt.f64 (fma.f64 x y (*.f64 z t))) 2) (cbrt.f64 (fma.f64 x y (*.f64 z t))) (*.f64 a b))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(fma.f64 (pow.f64 (cbrt.f64 z) 2) (*.f64 (cbrt.f64 z) t) (fma.f64 x y (*.f64 a b)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(fma.f64 (pow.f64 (cbrt.f64 x) 2) (*.f64 (cbrt.f64 x) y) (fma.f64 a b (*.f64 z t)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(fma.f64 (pow.f64 (cbrt.f64 x) 2) (*.f64 (cbrt.f64 x) y) (*.f64 (fma.f64 a b (*.f64 z t)) 1))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(fma.f64 (pow.f64 (cbrt.f64 a) 2) (*.f64 (cbrt.f64 a) b) (fma.f64 x y (*.f64 z t)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(fma.f64 (pow.f64 (cbrt.f64 t) 2) (*.f64 (cbrt.f64 t) z) (fma.f64 x y (*.f64 a b)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(fma.f64 (pow.f64 (cbrt.f64 y) 2) (*.f64 (cbrt.f64 y) x) (fma.f64 a b (*.f64 z t)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(fma.f64 (pow.f64 (cbrt.f64 y) 2) (*.f64 (cbrt.f64 y) x) (*.f64 (fma.f64 a b (*.f64 z t)) 1))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(fma.f64 (pow.f64 (cbrt.f64 b) 2) (*.f64 (cbrt.f64 b) a) (fma.f64 x y (*.f64 z t)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(fma.f64 (cbrt.f64 (*.f64 z t)) (pow.f64 (cbrt.f64 (*.f64 z t)) 2) (fma.f64 x y (*.f64 a b)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 z t)) 2) (cbrt.f64 (*.f64 z t)) (fma.f64 x y (*.f64 a b)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(fma.f64 (cbrt.f64 (*.f64 x y)) (pow.f64 (cbrt.f64 (*.f64 x y)) 2) (fma.f64 a b (*.f64 z t)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(fma.f64 (cbrt.f64 (*.f64 x y)) (pow.f64 (cbrt.f64 (*.f64 x y)) 2) (*.f64 (fma.f64 a b (*.f64 z t)) 1))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 x y)) 2) (cbrt.f64 (*.f64 x y)) (fma.f64 a b (*.f64 z t)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 x y)) 2) (cbrt.f64 (*.f64 x y)) (*.f64 (fma.f64 a b (*.f64 z t)) 1))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(fma.f64 (sqrt.f64 (*.f64 a b)) (sqrt.f64 (*.f64 a b)) (fma.f64 x y (*.f64 z t)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(fma.f64 (sqrt.f64 (fma.f64 x y (*.f64 z t))) (sqrt.f64 (fma.f64 x y (*.f64 z t))) (*.f64 a b))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(fma.f64 (sqrt.f64 z) (*.f64 (sqrt.f64 z) t) (fma.f64 x y (*.f64 a b)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) y) (fma.f64 a b (*.f64 z t)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) y) (*.f64 (fma.f64 a b (*.f64 z t)) 1))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(fma.f64 (sqrt.f64 a) (*.f64 (sqrt.f64 a) b) (fma.f64 x y (*.f64 z t)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(fma.f64 (sqrt.f64 t) (*.f64 (sqrt.f64 t) z) (fma.f64 x y (*.f64 a b)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(fma.f64 (sqrt.f64 y) (*.f64 (sqrt.f64 y) x) (fma.f64 a b (*.f64 z t)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(fma.f64 (sqrt.f64 y) (*.f64 (sqrt.f64 y) x) (*.f64 (fma.f64 a b (*.f64 z t)) 1))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(fma.f64 (sqrt.f64 b) (*.f64 (sqrt.f64 b) a) (fma.f64 x y (*.f64 z t)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(fma.f64 (sqrt.f64 (*.f64 z t)) (sqrt.f64 (*.f64 z t)) (fma.f64 x y (*.f64 a b)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(fma.f64 (sqrt.f64 (*.f64 x y)) (sqrt.f64 (*.f64 x y)) (fma.f64 a b (*.f64 z t)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(fma.f64 (sqrt.f64 (*.f64 x y)) (sqrt.f64 (*.f64 x y)) (*.f64 (fma.f64 a b (*.f64 z t)) 1))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(fma.f64 (+.f64 (pow.f64 (*.f64 x y) 3) (pow.f64 (*.f64 z t) 3)) (/.f64 1 (fma.f64 (*.f64 z t) (-.f64 (*.f64 z t) (*.f64 x y)) (pow.f64 (*.f64 x y) 2))) (*.f64 a b))
(fma.f64 (+.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (*.f64 t z) 3)) (/.f64 1 (fma.f64 (*.f64 t z) (-.f64 (*.f64 t z) (*.f64 y x)) (pow.f64 (*.f64 y x) 2))) (*.f64 a b))
(+.f64 (*.f64 a b) (/.f64 (+.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (*.f64 t z) 3)) (fma.f64 (*.f64 t z) (-.f64 (*.f64 t z) (*.f64 y x)) (pow.f64 (*.f64 y x) 2))))
(fma.f64 (-.f64 (pow.f64 (*.f64 x y) 2) (pow.f64 (*.f64 z t) 2)) (/.f64 1 (-.f64 (*.f64 x y) (*.f64 z t))) (*.f64 a b))
(fma.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 t z) 2)) (/.f64 1 (-.f64 (*.f64 y x) (*.f64 t z))) (*.f64 a b))
(+.f64 (*.f64 a b) (/.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 t z) 2)) (-.f64 (*.f64 y x) (*.f64 t z))))
(fma.f64 (pow.f64 (cbrt.f64 (fma.f64 a b (*.f64 z t))) 2) (cbrt.f64 (fma.f64 a b (*.f64 z t))) (*.f64 x y))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(fma.f64 (sqrt.f64 (fma.f64 a b (*.f64 z t))) (sqrt.f64 (fma.f64 a b (*.f64 z t))) (*.f64 x y))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(fma.f64 (*.f64 x (pow.f64 (cbrt.f64 y) 2)) (cbrt.f64 y) (fma.f64 a b (*.f64 z t)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(fma.f64 (*.f64 x (pow.f64 (cbrt.f64 y) 2)) (cbrt.f64 y) (*.f64 (fma.f64 a b (*.f64 z t)) 1))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(fma.f64 (*.f64 x (sqrt.f64 y)) (sqrt.f64 y) (fma.f64 a b (*.f64 z t)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(fma.f64 (*.f64 x (sqrt.f64 y)) (sqrt.f64 y) (*.f64 (fma.f64 a b (*.f64 z t)) 1))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(fma.f64 (*.f64 y (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x) (fma.f64 a b (*.f64 z t)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(fma.f64 (*.f64 y (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x) (*.f64 (fma.f64 a b (*.f64 z t)) 1))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(fma.f64 (*.f64 y (sqrt.f64 x)) (sqrt.f64 x) (fma.f64 a b (*.f64 z t)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(fma.f64 (*.f64 y (sqrt.f64 x)) (sqrt.f64 x) (*.f64 (fma.f64 a b (*.f64 z t)) 1))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(fma.f64 (*.f64 a (pow.f64 (cbrt.f64 b) 2)) (cbrt.f64 b) (fma.f64 x y (*.f64 z t)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(fma.f64 (*.f64 a (sqrt.f64 b)) (sqrt.f64 b) (fma.f64 x y (*.f64 z t)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(fma.f64 (*.f64 b (pow.f64 (cbrt.f64 a) 2)) (cbrt.f64 a) (fma.f64 x y (*.f64 z t)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(fma.f64 (*.f64 b (sqrt.f64 a)) (sqrt.f64 a) (fma.f64 x y (*.f64 z t)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(fma.f64 (*.f64 z (pow.f64 (cbrt.f64 t) 2)) (cbrt.f64 t) (fma.f64 x y (*.f64 a b)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(fma.f64 (*.f64 z (sqrt.f64 t)) (sqrt.f64 t) (fma.f64 x y (*.f64 a b)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(fma.f64 (*.f64 t (pow.f64 (cbrt.f64 z) 2)) (cbrt.f64 z) (fma.f64 x y (*.f64 a b)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(fma.f64 (*.f64 t (sqrt.f64 z)) (sqrt.f64 z) (fma.f64 x y (*.f64 a b)))
(fma.f64 a b (fma.f64 t z (*.f64 y x)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(-.f64 (exp.f64 (log1p.f64 (fma.f64 x y (*.f64 z t)))) 1)
(fma.f64 t z (*.f64 y x))
(-.f64 (/.f64 (pow.f64 (*.f64 x y) 2) (-.f64 (*.f64 x y) (*.f64 z t))) (/.f64 (pow.f64 (*.f64 z t) 2) (-.f64 (*.f64 x y) (*.f64 z t))))
(/.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 t z) 2)) (-.f64 (*.f64 y x) (*.f64 t z)))
(*.f64 (fma.f64 x y (*.f64 z t)) 1)
(fma.f64 t z (*.f64 y x))
(*.f64 1 (fma.f64 x y (*.f64 z t)))
(fma.f64 t z (*.f64 y x))
(*.f64 (cbrt.f64 (fma.f64 x y (*.f64 z t))) (pow.f64 (cbrt.f64 (fma.f64 x y (*.f64 z t))) 2))
(fma.f64 t z (*.f64 y x))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 x y (*.f64 z t))) 2) (cbrt.f64 (fma.f64 x y (*.f64 z t))))
(fma.f64 t z (*.f64 y x))
(*.f64 (sqrt.f64 (fma.f64 x y (*.f64 z t))) (sqrt.f64 (fma.f64 x y (*.f64 z t))))
(fma.f64 t z (*.f64 y x))
(*.f64 (+.f64 (pow.f64 (*.f64 x y) 3) (pow.f64 (*.f64 z t) 3)) (/.f64 1 (fma.f64 (*.f64 z t) (-.f64 (*.f64 z t) (*.f64 x y)) (pow.f64 (*.f64 x y) 2))))
(*.f64 (+.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (*.f64 t z) 3)) (/.f64 1 (fma.f64 (*.f64 t z) (-.f64 (*.f64 t z) (*.f64 y x)) (pow.f64 (*.f64 y x) 2))))
(/.f64 (+.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (*.f64 t z) 3)) (fma.f64 (*.f64 t z) (-.f64 (*.f64 t z) (*.f64 y x)) (pow.f64 (*.f64 y x) 2)))
(*.f64 (-.f64 (pow.f64 (*.f64 x y) 2) (pow.f64 (*.f64 z t) 2)) (/.f64 1 (-.f64 (*.f64 x y) (*.f64 z t))))
(/.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 t z) 2)) (-.f64 (*.f64 y x) (*.f64 t z)))
(/.f64 1 (/.f64 (fma.f64 (*.f64 z t) (-.f64 (*.f64 z t) (*.f64 x y)) (pow.f64 (*.f64 x y) 2)) (+.f64 (pow.f64 (*.f64 x y) 3) (pow.f64 (*.f64 z t) 3))))
(*.f64 (+.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (*.f64 t z) 3)) (/.f64 1 (fma.f64 (*.f64 t z) (-.f64 (*.f64 t z) (*.f64 y x)) (pow.f64 (*.f64 y x) 2))))
(/.f64 (+.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (*.f64 t z) 3)) (fma.f64 (*.f64 t z) (-.f64 (*.f64 t z) (*.f64 y x)) (pow.f64 (*.f64 y x) 2)))
(/.f64 1 (/.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (-.f64 (pow.f64 (*.f64 x y) 2) (pow.f64 (*.f64 z t) 2))))
(/.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 t z) 2)) (-.f64 (*.f64 y x) (*.f64 t z)))
(/.f64 (+.f64 (pow.f64 (*.f64 x y) 3) (pow.f64 (*.f64 z t) 3)) (fma.f64 (*.f64 z t) (-.f64 (*.f64 z t) (*.f64 x y)) (pow.f64 (*.f64 x y) 2)))
(*.f64 (+.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (*.f64 t z) 3)) (/.f64 1 (fma.f64 (*.f64 t z) (-.f64 (*.f64 t z) (*.f64 y x)) (pow.f64 (*.f64 y x) 2))))
(/.f64 (+.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (*.f64 t z) 3)) (fma.f64 (*.f64 t z) (-.f64 (*.f64 t z) (*.f64 y x)) (pow.f64 (*.f64 y x) 2)))
(/.f64 (+.f64 (pow.f64 (*.f64 x y) 3) (pow.f64 (*.f64 z t) 3)) (+.f64 (pow.f64 (*.f64 z t) 2) (-.f64 (pow.f64 (*.f64 x y) 2) (*.f64 (*.f64 x y) (*.f64 z t)))))
(*.f64 (+.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (*.f64 t z) 3)) (/.f64 1 (fma.f64 (*.f64 t z) (-.f64 (*.f64 t z) (*.f64 y x)) (pow.f64 (*.f64 y x) 2))))
(/.f64 (+.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (*.f64 t z) 3)) (fma.f64 (*.f64 t z) (-.f64 (*.f64 t z) (*.f64 y x)) (pow.f64 (*.f64 y x) 2)))
(/.f64 (-.f64 (pow.f64 (*.f64 x y) 2) (pow.f64 (*.f64 z t) 2)) (-.f64 (*.f64 x y) (*.f64 z t)))
(/.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 t z) 2)) (-.f64 (*.f64 y x) (*.f64 t z)))
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 x y) 3) (pow.f64 (*.f64 z t) 3))) (neg.f64 (fma.f64 (*.f64 z t) (-.f64 (*.f64 z t) (*.f64 x y)) (pow.f64 (*.f64 x y) 2))))
(*.f64 (+.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (*.f64 t z) 3)) (/.f64 1 (fma.f64 (*.f64 t z) (-.f64 (*.f64 t z) (*.f64 y x)) (pow.f64 (*.f64 y x) 2))))
(/.f64 (+.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (*.f64 t z) 3)) (fma.f64 (*.f64 t z) (-.f64 (*.f64 t z) (*.f64 y x)) (pow.f64 (*.f64 y x) 2)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 x y) 2) (pow.f64 (*.f64 z t) 2))) (neg.f64 (-.f64 (*.f64 x y) (*.f64 z t))))
(/.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 t z) 2)) (-.f64 (*.f64 y x) (*.f64 t z)))
(/.f64 (-.f64 (pow.f64 (*.f64 z t) 2) (pow.f64 (*.f64 x y) 2)) (-.f64 (*.f64 z t) (*.f64 x y)))
(/.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 t z) 2)) (-.f64 (*.f64 y x) (*.f64 t z)))
(pow.f64 (fma.f64 x y (*.f64 z t)) 1)
(fma.f64 t z (*.f64 y x))
(pow.f64 (cbrt.f64 (fma.f64 x y (*.f64 z t))) 3)
(fma.f64 t z (*.f64 y x))
(pow.f64 (sqrt.f64 (fma.f64 x y (*.f64 z t))) 2)
(fma.f64 t z (*.f64 y x))
(pow.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 3) 1/3)
(fma.f64 t z (*.f64 y x))
(pow.f64 (/.f64 (fma.f64 (*.f64 z t) (-.f64 (*.f64 z t) (*.f64 x y)) (pow.f64 (*.f64 x y) 2)) (+.f64 (pow.f64 (*.f64 x y) 3) (pow.f64 (*.f64 z t) 3))) -1)
(*.f64 (+.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (*.f64 t z) 3)) (/.f64 1 (fma.f64 (*.f64 t z) (-.f64 (*.f64 t z) (*.f64 y x)) (pow.f64 (*.f64 y x) 2))))
(/.f64 (+.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (*.f64 t z) 3)) (fma.f64 (*.f64 t z) (-.f64 (*.f64 t z) (*.f64 y x)) (pow.f64 (*.f64 y x) 2)))
(pow.f64 (/.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (-.f64 (pow.f64 (*.f64 x y) 2) (pow.f64 (*.f64 z t) 2))) -1)
(/.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 t z) 2)) (-.f64 (*.f64 y x) (*.f64 t z)))
(sqrt.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 2))
(fma.f64 t z (*.f64 y x))
(log.f64 (exp.f64 (fma.f64 x y (*.f64 z t))))
(fma.f64 t z (*.f64 y x))
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 x y (*.f64 z t)))))
(fma.f64 t z (*.f64 y x))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x y))) (pow.f64 (exp.f64 z) t)))
(fma.f64 t z (*.f64 y x))
(log.f64 (*.f64 (pow.f64 (exp.f64 x) y) (+.f64 1 (expm1.f64 (*.f64 z t)))))
(fma.f64 t z (*.f64 y x))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x y))) (+.f64 1 (expm1.f64 (*.f64 z t)))))
(fma.f64 t z (*.f64 y x))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 z t))) (pow.f64 (exp.f64 x) y)))
(fma.f64 t z (*.f64 y x))
(log.f64 (*.f64 (pow.f64 (exp.f64 z) t) (+.f64 1 (expm1.f64 (*.f64 x y)))))
(fma.f64 t z (*.f64 y x))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 z t))) (+.f64 1 (expm1.f64 (*.f64 x y)))))
(fma.f64 t z (*.f64 y x))
(cbrt.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 3))
(fma.f64 t z (*.f64 y x))
(expm1.f64 (log1p.f64 (fma.f64 x y (*.f64 z t))))
(fma.f64 t z (*.f64 y x))
(log1p.f64 (expm1.f64 (fma.f64 x y (*.f64 z t))))
(fma.f64 t z (*.f64 y x))
(exp.f64 (log.f64 (fma.f64 x y (*.f64 z t))))
(fma.f64 t z (*.f64 y x))
(exp.f64 (*.f64 (log.f64 (fma.f64 x y (*.f64 z t))) 1))
(fma.f64 t z (*.f64 y x))
(fma.f64 x y (*.f64 z t))
(fma.f64 t z (*.f64 y x))
(fma.f64 y x (*.f64 z t))
(fma.f64 t z (*.f64 y x))
(fma.f64 (*.f64 x y) 1 (*.f64 z t))
(fma.f64 t z (*.f64 y x))
(fma.f64 z t (*.f64 x y))
(fma.f64 t z (*.f64 y x))
(fma.f64 t z (*.f64 x y))
(fma.f64 t z (*.f64 y x))
(fma.f64 (*.f64 z t) 1 (*.f64 x y))
(fma.f64 t z (*.f64 y x))
(fma.f64 1 (*.f64 x y) (*.f64 z t))
(fma.f64 t z (*.f64 y x))
(fma.f64 1 (*.f64 z t) (*.f64 x y))
(fma.f64 t z (*.f64 y x))
(fma.f64 (pow.f64 (cbrt.f64 z) 2) (*.f64 (cbrt.f64 z) t) (*.f64 x y))
(fma.f64 t z (*.f64 y x))
(fma.f64 (pow.f64 (cbrt.f64 x) 2) (*.f64 (cbrt.f64 x) y) (*.f64 z t))
(fma.f64 t z (*.f64 y x))
(fma.f64 (pow.f64 (cbrt.f64 t) 2) (*.f64 (cbrt.f64 t) z) (*.f64 x y))
(fma.f64 t z (*.f64 y x))
(fma.f64 (pow.f64 (cbrt.f64 y) 2) (*.f64 (cbrt.f64 y) x) (*.f64 z t))
(fma.f64 t z (*.f64 y x))
(fma.f64 (cbrt.f64 (*.f64 z t)) (pow.f64 (cbrt.f64 (*.f64 z t)) 2) (*.f64 x y))
(fma.f64 t z (*.f64 y x))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 z t)) 2) (cbrt.f64 (*.f64 z t)) (*.f64 x y))
(fma.f64 t z (*.f64 y x))
(fma.f64 (cbrt.f64 (*.f64 x y)) (pow.f64 (cbrt.f64 (*.f64 x y)) 2) (*.f64 z t))
(fma.f64 t z (*.f64 y x))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 x y)) 2) (cbrt.f64 (*.f64 x y)) (*.f64 z t))
(fma.f64 t z (*.f64 y x))
(fma.f64 (sqrt.f64 z) (*.f64 (sqrt.f64 z) t) (*.f64 x y))
(fma.f64 t z (*.f64 y x))
(fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) y) (*.f64 z t))
(fma.f64 t z (*.f64 y x))
(fma.f64 (sqrt.f64 t) (*.f64 (sqrt.f64 t) z) (*.f64 x y))
(fma.f64 t z (*.f64 y x))
(fma.f64 (sqrt.f64 y) (*.f64 (sqrt.f64 y) x) (*.f64 z t))
(fma.f64 t z (*.f64 y x))
(fma.f64 (sqrt.f64 (*.f64 z t)) (sqrt.f64 (*.f64 z t)) (*.f64 x y))
(fma.f64 t z (*.f64 y x))
(fma.f64 (sqrt.f64 (*.f64 x y)) (sqrt.f64 (*.f64 x y)) (*.f64 z t))
(fma.f64 t z (*.f64 y x))
(fma.f64 (*.f64 x (pow.f64 (cbrt.f64 y) 2)) (cbrt.f64 y) (*.f64 z t))
(fma.f64 t z (*.f64 y x))
(fma.f64 (*.f64 x (sqrt.f64 y)) (sqrt.f64 y) (*.f64 z t))
(fma.f64 t z (*.f64 y x))
(fma.f64 (*.f64 y (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x) (*.f64 z t))
(fma.f64 t z (*.f64 y x))
(fma.f64 (*.f64 y (sqrt.f64 x)) (sqrt.f64 x) (*.f64 z t))
(fma.f64 t z (*.f64 y x))
(fma.f64 (*.f64 z (pow.f64 (cbrt.f64 t) 2)) (cbrt.f64 t) (*.f64 x y))
(fma.f64 t z (*.f64 y x))
(fma.f64 (*.f64 z (sqrt.f64 t)) (sqrt.f64 t) (*.f64 x y))
(fma.f64 t z (*.f64 y x))
(fma.f64 (*.f64 t (pow.f64 (cbrt.f64 z) 2)) (cbrt.f64 z) (*.f64 x y))
(fma.f64 t z (*.f64 y x))
(fma.f64 (*.f64 t (sqrt.f64 z)) (sqrt.f64 z) (*.f64 x y))
(fma.f64 t z (*.f64 y x))

localize10.0ms (0.2%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(fma.f64 a b (fma.f64 x y (*.f64 z t)))
Compiler

Compiled 30 to 9 computations (70% saved)

series7.0ms (0.2%)

Counts
1 → 72
Calls

18 calls:

TimeVariablePointExpression
1.0ms
t
@0
(fma.f64 a b (fma.f64 x y (*.f64 z t)))
0.0ms
a
@-inf
(fma.f64 a b (fma.f64 x y (*.f64 z t)))
0.0ms
y
@inf
(fma.f64 a b (fma.f64 x y (*.f64 z t)))
0.0ms
y
@-inf
(fma.f64 a b (fma.f64 x y (*.f64 z t)))
0.0ms
a
@inf
(fma.f64 a b (fma.f64 x y (*.f64 z t)))

rewrite44.0ms (1%)

Algorithm
batch-egg-rewrite
Rules
956×pow1_binary64
869×add-log-exp_binary64
869×log1p-expm1-u_binary64
869×expm1-log1p-u_binary64
847×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01012
119612
2233212
Stop Event
node limit
Counts
1 → 22
Calls
Call 1
Inputs
(fma.f64 a b (fma.f64 x y (*.f64 z t)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x y (*.f64 z t)) (*.f64 a b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 a b) (fma.f64 x y (*.f64 z t)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 a b) 1) (fma.f64 x y (*.f64 z t)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (*.f64 a b) (*.f64 x y)) (*.f64 z t))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (fma.f64 a b (fma.f64 x y (*.f64 z t)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 a b (fma.f64 x y (*.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t)))) (pow.f64 (cbrt.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t)))) 2) (cbrt.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t)))) (sqrt.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (fma.f64 x y (*.f64 z t)) 3)) (+.f64 (*.f64 (*.f64 a b) (*.f64 a b)) (-.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 2) (*.f64 (*.f64 a b) (fma.f64 x y (*.f64 z t))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 a b) (*.f64 a b)) (pow.f64 (fma.f64 x y (*.f64 z t)) 2)) (-.f64 (*.f64 a b) (fma.f64 x y (*.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t)))))))))

simplify44.0ms (1%)

Algorithm
egg-herbie
Rules
459×associate-*l*_binary64
402×associate-*r*_binary64
380×times-frac_binary64
344×fma-neg_binary64
258×cancel-sign-sub-inv_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0661082
11641079
26671078
345801054
Stop Event
node limit
Counts
94 → 45
Calls
Call 1
Inputs
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(*.f64 a b)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(*.f64 a b)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(*.f64 a b)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(*.f64 a b)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (*.f64 t z))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(*.f64 y x)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(*.f64 y x)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (*.f64 t z))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(*.f64 y x)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(*.f64 y x)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (*.f64 y x))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(*.f64 t z)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(*.f64 t z)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (*.f64 y x))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(*.f64 t z)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(*.f64 t z)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (fma.f64 x y (*.f64 z t)) (*.f64 a b))
(+.f64 (*.f64 a b) (fma.f64 x y (*.f64 z t)))
(+.f64 (*.f64 (*.f64 a b) 1) (fma.f64 x y (*.f64 z t)))
(+.f64 (+.f64 (*.f64 a b) (*.f64 x y)) (*.f64 z t))
(-.f64 (+.f64 1 (fma.f64 a b (fma.f64 x y (*.f64 z t)))) 1)
(*.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t))) 1)
(*.f64 1 (fma.f64 a b (fma.f64 x y (*.f64 z t))))
(*.f64 (cbrt.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t)))) (pow.f64 (cbrt.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t)))) 2))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t)))) 2) (cbrt.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t)))))
(*.f64 (sqrt.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t)))) (sqrt.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t)))))
(/.f64 (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (fma.f64 x y (*.f64 z t)) 3)) (+.f64 (*.f64 (*.f64 a b) (*.f64 a b)) (-.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 2) (*.f64 (*.f64 a b) (fma.f64 x y (*.f64 z t))))))
(/.f64 (-.f64 (*.f64 (*.f64 a b) (*.f64 a b)) (pow.f64 (fma.f64 x y (*.f64 z t)) 2)) (-.f64 (*.f64 a b) (fma.f64 x y (*.f64 z t))))
(pow.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t))) 1)
(pow.f64 (pow.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t))) 3) 1/3)
(pow.f64 (cbrt.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t)))) 3)
(pow.f64 (sqrt.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t)))) 2)
(sqrt.f64 (pow.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t))) 2))
(log.f64 (exp.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t)))))
(cbrt.f64 (pow.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t))) 3))
(expm1.f64 (log1p.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t)))))
(log1p.f64 (expm1.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t)))))
(exp.f64 (log.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t)))))
Outputs
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 y x (*.f64 t z))
(fma.f64 t z (*.f64 y x))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(*.f64 a b)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(*.f64 a b)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 y x (*.f64 t z))
(fma.f64 t z (*.f64 y x))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(*.f64 a b)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(*.f64 a b)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(fma.f64 t z (*.f64 a b))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(*.f64 y x)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(*.f64 y x)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 a b (*.f64 t z))
(fma.f64 t z (*.f64 a b))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(*.f64 y x)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(*.f64 y x)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (*.f64 y x))
(fma.f64 a b (*.f64 y x))
(fma.f64 y x (*.f64 a b))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(*.f64 t z)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(*.f64 t z)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (*.f64 y x))
(fma.f64 a b (*.f64 y x))
(fma.f64 y x (*.f64 a b))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(*.f64 t z)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(*.f64 t z)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (fma.f64 x y (*.f64 z t)) (*.f64 a b))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (fma.f64 x y (*.f64 z t)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 (*.f64 a b) 1) (fma.f64 x y (*.f64 z t)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (+.f64 (*.f64 a b) (*.f64 x y)) (*.f64 z t))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(-.f64 (+.f64 1 (fma.f64 a b (fma.f64 x y (*.f64 z t)))) 1)
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(*.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t))) 1)
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(*.f64 1 (fma.f64 a b (fma.f64 x y (*.f64 z t))))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(*.f64 (cbrt.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t)))) (pow.f64 (cbrt.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t)))) 2))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t)))) 2) (cbrt.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t)))))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(*.f64 (sqrt.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t)))) (sqrt.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t)))))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(/.f64 (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (fma.f64 x y (*.f64 z t)) 3)) (+.f64 (*.f64 (*.f64 a b) (*.f64 a b)) (-.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 2) (*.f64 (*.f64 a b) (fma.f64 x y (*.f64 z t))))))
(/.f64 (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (fma.f64 y x (*.f64 t z)) 3)) (fma.f64 (*.f64 a b) (*.f64 a b) (-.f64 (pow.f64 (fma.f64 y x (*.f64 t z)) 2) (*.f64 (*.f64 a b) (fma.f64 y x (*.f64 t z))))))
(/.f64 (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (fma.f64 y x (*.f64 t z)) 3)) (fma.f64 a (*.f64 b (*.f64 a b)) (*.f64 (fma.f64 y x (*.f64 t z)) (-.f64 (fma.f64 y x (*.f64 t z)) (*.f64 a b)))))
(/.f64 (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (fma.f64 t z (*.f64 y x)) 3)) (+.f64 (pow.f64 (fma.f64 t z (*.f64 y x)) 2) (*.f64 (*.f64 a b) (-.f64 (*.f64 a b) (fma.f64 t z (*.f64 y x))))))
(/.f64 (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (fma.f64 t z (*.f64 y x)) 3)) (+.f64 (pow.f64 (fma.f64 t z (*.f64 y x)) 2) (*.f64 a (*.f64 b (-.f64 (*.f64 a b) (fma.f64 t z (*.f64 y x)))))))
(/.f64 (-.f64 (*.f64 (*.f64 a b) (*.f64 a b)) (pow.f64 (fma.f64 x y (*.f64 z t)) 2)) (-.f64 (*.f64 a b) (fma.f64 x y (*.f64 z t))))
(/.f64 (-.f64 (*.f64 a (*.f64 b (*.f64 a b))) (pow.f64 (fma.f64 y x (*.f64 t z)) 2)) (-.f64 (*.f64 a b) (fma.f64 y x (*.f64 t z))))
(/.f64 (fma.f64 b (*.f64 a (*.f64 a b)) (neg.f64 (pow.f64 (fma.f64 t z (*.f64 y x)) 2))) (-.f64 (*.f64 a b) (fma.f64 t z (*.f64 y x))))
(/.f64 (fma.f64 t z (fma.f64 a b (*.f64 y x))) 1)
(pow.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t))) 1)
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(pow.f64 (pow.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t))) 3) 1/3)
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(pow.f64 (cbrt.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t)))) 3)
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(pow.f64 (sqrt.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t)))) 2)
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(sqrt.f64 (pow.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t))) 2))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(log.f64 (exp.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t)))))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(cbrt.f64 (pow.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t))) 3))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(expm1.f64 (log1p.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t)))))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(log1p.f64 (expm1.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t)))))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(exp.f64 (log.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t)))))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 y x (*.f64 a b)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))

localize11.0ms (0.2%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(fma.f64 x y (fma.f64 a b (*.f64 z t)))
0.0b
(fma.f64 a b (*.f64 z t))
Compiler

Compiled 30 to 9 computations (70% saved)

series8.0ms (0.2%)

Counts
2 → 120
Calls

30 calls:

TimeVariablePointExpression
0.0ms
a
@0
(fma.f64 a b (*.f64 z t))
0.0ms
x
@0
(fma.f64 x y (fma.f64 a b (*.f64 z t)))
0.0ms
a
@-inf
(fma.f64 x y (fma.f64 a b (*.f64 z t)))
0.0ms
y
@0
(fma.f64 x y (fma.f64 a b (*.f64 z t)))
0.0ms
b
@inf
(fma.f64 x y (fma.f64 a b (*.f64 z t)))

rewrite52.0ms (1.2%)

Algorithm
batch-egg-rewrite
Rules
956×pow1_binary64
869×add-log-exp_binary64
869×log1p-expm1-u_binary64
869×expm1-log1p-u_binary64
847×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01020
119620
2233220
Stop Event
node limit
Counts
2 → 43
Calls
Call 1
Inputs
(fma.f64 a b (*.f64 z t))
(fma.f64 x y (fma.f64 a b (*.f64 z t)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 z t) (*.f64 a b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 a b) (*.f64 z t))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 a b) 1) (*.f64 z t))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (fma.f64 a b (*.f64 z t))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 a b (*.f64 z t)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 a b (*.f64 z t)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 a b (*.f64 z t))) (pow.f64 (cbrt.f64 (fma.f64 a b (*.f64 z t))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 a b (*.f64 z t))) 2) (cbrt.f64 (fma.f64 a b (*.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 a b (*.f64 z t))) (sqrt.f64 (fma.f64 a b (*.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (*.f64 z t) 3)) (+.f64 (*.f64 (*.f64 a b) (*.f64 a b)) (-.f64 (pow.f64 (*.f64 z t) 2) (*.f64 (*.f64 a b) (*.f64 z t)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 a b) (*.f64 a b)) (pow.f64 (*.f64 z t) 2)) (-.f64 (*.f64 a b) (*.f64 z t)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 a b (*.f64 z t)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 a b (*.f64 z t)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 a b (*.f64 z t))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 a b (*.f64 z t))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 a b (*.f64 z t)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 a b (*.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 a b (*.f64 z t)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 a b (*.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 a b (*.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 a b (*.f64 z t))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 a b (*.f64 z t)) (*.f64 x y))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x y) (fma.f64 a b (*.f64 z t)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 x y) 1) (fma.f64 a b (*.f64 z t)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (*.f64 x y) (*.f64 a b)) (*.f64 z t))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (fma.f64 x y (fma.f64 a b (*.f64 z t)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 x y (fma.f64 a b (*.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t)))) (pow.f64 (cbrt.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t)))) 2) (cbrt.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t)))) (sqrt.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 x y) 3) (pow.f64 (fma.f64 a b (*.f64 z t)) 3)) (+.f64 (*.f64 (*.f64 x y) (*.f64 x y)) (-.f64 (pow.f64 (fma.f64 a b (*.f64 z t)) 2) (*.f64 (*.f64 x y) (fma.f64 a b (*.f64 z t))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 x y) (*.f64 x y)) (pow.f64 (fma.f64 a b (*.f64 z t)) 2)) (-.f64 (*.f64 x y) (fma.f64 a b (*.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t)))))))))

simplify60.0ms (1.3%)

Algorithm
egg-herbie
Rules
615×fma-def_binary64
581×fma-neg_binary64
330×distribute-rgt-in_binary64
324×unswap-sqr_binary64
314×distribute-lft-in_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01061648
12731642
212871640
365331640
Stop Event
node limit
Counts
163 → 69
Calls
Call 1
Inputs
(*.f64 t z)
(+.f64 (*.f64 a b) (*.f64 t z))
(+.f64 (*.f64 a b) (*.f64 t z))
(+.f64 (*.f64 a b) (*.f64 t z))
(*.f64 a b)
(+.f64 (*.f64 a b) (*.f64 t z))
(+.f64 (*.f64 a b) (*.f64 t z))
(+.f64 (*.f64 a b) (*.f64 t z))
(*.f64 a b)
(+.f64 (*.f64 a b) (*.f64 t z))
(+.f64 (*.f64 a b) (*.f64 t z))
(+.f64 (*.f64 a b) (*.f64 t z))
(*.f64 t z)
(+.f64 (*.f64 a b) (*.f64 t z))
(+.f64 (*.f64 a b) (*.f64 t z))
(+.f64 (*.f64 a b) (*.f64 t z))
(*.f64 a b)
(+.f64 (*.f64 a b) (*.f64 t z))
(+.f64 (*.f64 a b) (*.f64 t z))
(+.f64 (*.f64 a b) (*.f64 t z))
(*.f64 a b)
(+.f64 (*.f64 a b) (*.f64 t z))
(+.f64 (*.f64 a b) (*.f64 t z))
(+.f64 (*.f64 a b) (*.f64 t z))
(*.f64 a b)
(+.f64 (*.f64 a b) (*.f64 t z))
(+.f64 (*.f64 a b) (*.f64 t z))
(+.f64 (*.f64 a b) (*.f64 t z))
(*.f64 t z)
(+.f64 (*.f64 a b) (*.f64 t z))
(+.f64 (*.f64 a b) (*.f64 t z))
(+.f64 (*.f64 a b) (*.f64 t z))
(*.f64 t z)
(+.f64 (*.f64 a b) (*.f64 t z))
(+.f64 (*.f64 a b) (*.f64 t z))
(+.f64 (*.f64 a b) (*.f64 t z))
(*.f64 a b)
(+.f64 (*.f64 a b) (*.f64 t z))
(+.f64 (*.f64 a b) (*.f64 t z))
(+.f64 (*.f64 a b) (*.f64 t z))
(*.f64 t z)
(+.f64 (*.f64 a b) (*.f64 t z))
(+.f64 (*.f64 a b) (*.f64 t z))
(+.f64 (*.f64 a b) (*.f64 t z))
(*.f64 t z)
(+.f64 (*.f64 a b) (*.f64 t z))
(+.f64 (*.f64 a b) (*.f64 t z))
(+.f64 (*.f64 a b) (*.f64 t z))
(+.f64 (*.f64 a b) (*.f64 t z))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(*.f64 y x)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(*.f64 y x)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (*.f64 t z))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(*.f64 y x)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(*.f64 y x)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(*.f64 a b)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(*.f64 a b)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(*.f64 a b)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(*.f64 a b)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (*.f64 y x))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(*.f64 t z)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(*.f64 t z)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (*.f64 y x))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(*.f64 t z)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(*.f64 t z)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(+.f64 (*.f64 z t) (*.f64 a b))
(+.f64 (*.f64 a b) (*.f64 z t))
(+.f64 (*.f64 (*.f64 a b) 1) (*.f64 z t))
(-.f64 (+.f64 1 (fma.f64 a b (*.f64 z t))) 1)
(*.f64 (fma.f64 a b (*.f64 z t)) 1)
(*.f64 1 (fma.f64 a b (*.f64 z t)))
(*.f64 (cbrt.f64 (fma.f64 a b (*.f64 z t))) (pow.f64 (cbrt.f64 (fma.f64 a b (*.f64 z t))) 2))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 a b (*.f64 z t))) 2) (cbrt.f64 (fma.f64 a b (*.f64 z t))))
(*.f64 (sqrt.f64 (fma.f64 a b (*.f64 z t))) (sqrt.f64 (fma.f64 a b (*.f64 z t))))
(/.f64 (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (*.f64 z t) 3)) (+.f64 (*.f64 (*.f64 a b) (*.f64 a b)) (-.f64 (pow.f64 (*.f64 z t) 2) (*.f64 (*.f64 a b) (*.f64 z t)))))
(/.f64 (-.f64 (*.f64 (*.f64 a b) (*.f64 a b)) (pow.f64 (*.f64 z t) 2)) (-.f64 (*.f64 a b) (*.f64 z t)))
(pow.f64 (fma.f64 a b (*.f64 z t)) 1)
(pow.f64 (pow.f64 (fma.f64 a b (*.f64 z t)) 3) 1/3)
(pow.f64 (cbrt.f64 (fma.f64 a b (*.f64 z t))) 3)
(pow.f64 (sqrt.f64 (fma.f64 a b (*.f64 z t))) 2)
(sqrt.f64 (pow.f64 (fma.f64 a b (*.f64 z t)) 2))
(log.f64 (exp.f64 (fma.f64 a b (*.f64 z t))))
(cbrt.f64 (pow.f64 (fma.f64 a b (*.f64 z t)) 3))
(expm1.f64 (log1p.f64 (fma.f64 a b (*.f64 z t))))
(log1p.f64 (expm1.f64 (fma.f64 a b (*.f64 z t))))
(exp.f64 (log.f64 (fma.f64 a b (*.f64 z t))))
(+.f64 (fma.f64 a b (*.f64 z t)) (*.f64 x y))
(+.f64 (*.f64 x y) (fma.f64 a b (*.f64 z t)))
(+.f64 (*.f64 (*.f64 x y) 1) (fma.f64 a b (*.f64 z t)))
(+.f64 (+.f64 (*.f64 x y) (*.f64 a b)) (*.f64 z t))
(-.f64 (+.f64 1 (fma.f64 x y (fma.f64 a b (*.f64 z t)))) 1)
(*.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t))) 1)
(*.f64 1 (fma.f64 x y (fma.f64 a b (*.f64 z t))))
(*.f64 (cbrt.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t)))) (pow.f64 (cbrt.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t)))) 2))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t)))) 2) (cbrt.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t)))))
(*.f64 (sqrt.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t)))) (sqrt.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t)))))
(/.f64 (+.f64 (pow.f64 (*.f64 x y) 3) (pow.f64 (fma.f64 a b (*.f64 z t)) 3)) (+.f64 (*.f64 (*.f64 x y) (*.f64 x y)) (-.f64 (pow.f64 (fma.f64 a b (*.f64 z t)) 2) (*.f64 (*.f64 x y) (fma.f64 a b (*.f64 z t))))))
(/.f64 (-.f64 (*.f64 (*.f64 x y) (*.f64 x y)) (pow.f64 (fma.f64 a b (*.f64 z t)) 2)) (-.f64 (*.f64 x y) (fma.f64 a b (*.f64 z t))))
(pow.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t))) 1)
(pow.f64 (pow.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t))) 3) 1/3)
(pow.f64 (cbrt.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t)))) 3)
(pow.f64 (sqrt.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t)))) 2)
(sqrt.f64 (pow.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t))) 2))
(log.f64 (exp.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t)))))
(cbrt.f64 (pow.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t))) 3))
(expm1.f64 (log1p.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t)))))
(log1p.f64 (expm1.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t)))))
(exp.f64 (log.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t)))))
Outputs
(*.f64 t z)
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 z t (*.f64 a b))
(fma.f64 t z (*.f64 a b))
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 z t (*.f64 a b))
(fma.f64 t z (*.f64 a b))
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 z t (*.f64 a b))
(fma.f64 t z (*.f64 a b))
(*.f64 a b)
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 z t (*.f64 a b))
(fma.f64 t z (*.f64 a b))
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 z t (*.f64 a b))
(fma.f64 t z (*.f64 a b))
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 z t (*.f64 a b))
(fma.f64 t z (*.f64 a b))
(*.f64 a b)
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 z t (*.f64 a b))
(fma.f64 t z (*.f64 a b))
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 z t (*.f64 a b))
(fma.f64 t z (*.f64 a b))
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 z t (*.f64 a b))
(fma.f64 t z (*.f64 a b))
(*.f64 t z)
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 z t (*.f64 a b))
(fma.f64 t z (*.f64 a b))
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 z t (*.f64 a b))
(fma.f64 t z (*.f64 a b))
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 z t (*.f64 a b))
(fma.f64 t z (*.f64 a b))
(*.f64 a b)
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 z t (*.f64 a b))
(fma.f64 t z (*.f64 a b))
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 z t (*.f64 a b))
(fma.f64 t z (*.f64 a b))
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 z t (*.f64 a b))
(fma.f64 t z (*.f64 a b))
(*.f64 a b)
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 z t (*.f64 a b))
(fma.f64 t z (*.f64 a b))
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 z t (*.f64 a b))
(fma.f64 t z (*.f64 a b))
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 z t (*.f64 a b))
(fma.f64 t z (*.f64 a b))
(*.f64 a b)
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 z t (*.f64 a b))
(fma.f64 t z (*.f64 a b))
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 z t (*.f64 a b))
(fma.f64 t z (*.f64 a b))
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 z t (*.f64 a b))
(fma.f64 t z (*.f64 a b))
(*.f64 t z)
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 z t (*.f64 a b))
(fma.f64 t z (*.f64 a b))
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 z t (*.f64 a b))
(fma.f64 t z (*.f64 a b))
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 z t (*.f64 a b))
(fma.f64 t z (*.f64 a b))
(*.f64 t z)
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 z t (*.f64 a b))
(fma.f64 t z (*.f64 a b))
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 z t (*.f64 a b))
(fma.f64 t z (*.f64 a b))
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 z t (*.f64 a b))
(fma.f64 t z (*.f64 a b))
(*.f64 a b)
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 z t (*.f64 a b))
(fma.f64 t z (*.f64 a b))
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 z t (*.f64 a b))
(fma.f64 t z (*.f64 a b))
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 z t (*.f64 a b))
(fma.f64 t z (*.f64 a b))
(*.f64 t z)
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 z t (*.f64 a b))
(fma.f64 t z (*.f64 a b))
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 z t (*.f64 a b))
(fma.f64 t z (*.f64 a b))
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 z t (*.f64 a b))
(fma.f64 t z (*.f64 a b))
(*.f64 t z)
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 z t (*.f64 a b))
(fma.f64 t z (*.f64 a b))
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 z t (*.f64 a b))
(fma.f64 t z (*.f64 a b))
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 z t (*.f64 a b))
(fma.f64 t z (*.f64 a b))
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 z t (*.f64 a b))
(fma.f64 t z (*.f64 a b))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(*.f64 y x)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(*.f64 y x)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (*.f64 t z))
(fma.f64 z t (*.f64 a b))
(fma.f64 t z (*.f64 a b))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(*.f64 y x)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(*.f64 y x)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 y x (*.f64 t z))
(fma.f64 t z (*.f64 y x))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(*.f64 a b)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(*.f64 a b)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 y x) (*.f64 t z))
(fma.f64 y x (*.f64 t z))
(fma.f64 t z (*.f64 y x))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(*.f64 a b)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(*.f64 a b)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (*.f64 y x))
(fma.f64 a b (*.f64 y x))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(*.f64 t z)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(*.f64 t z)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (*.f64 y x))
(fma.f64 a b (*.f64 y x))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(*.f64 t z)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(*.f64 t z)
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 z t) (*.f64 a b))
(fma.f64 z t (*.f64 a b))
(fma.f64 t z (*.f64 a b))
(+.f64 (*.f64 a b) (*.f64 z t))
(fma.f64 z t (*.f64 a b))
(fma.f64 t z (*.f64 a b))
(+.f64 (*.f64 (*.f64 a b) 1) (*.f64 z t))
(fma.f64 z t (*.f64 a b))
(fma.f64 t z (*.f64 a b))
(-.f64 (+.f64 1 (fma.f64 a b (*.f64 z t))) 1)
(fma.f64 z t (*.f64 a b))
(fma.f64 t z (*.f64 a b))
(*.f64 (fma.f64 a b (*.f64 z t)) 1)
(fma.f64 z t (*.f64 a b))
(fma.f64 t z (*.f64 a b))
(*.f64 1 (fma.f64 a b (*.f64 z t)))
(fma.f64 z t (*.f64 a b))
(fma.f64 t z (*.f64 a b))
(*.f64 (cbrt.f64 (fma.f64 a b (*.f64 z t))) (pow.f64 (cbrt.f64 (fma.f64 a b (*.f64 z t))) 2))
(fma.f64 z t (*.f64 a b))
(fma.f64 t z (*.f64 a b))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 a b (*.f64 z t))) 2) (cbrt.f64 (fma.f64 a b (*.f64 z t))))
(fma.f64 z t (*.f64 a b))
(fma.f64 t z (*.f64 a b))
(*.f64 (sqrt.f64 (fma.f64 a b (*.f64 z t))) (sqrt.f64 (fma.f64 a b (*.f64 z t))))
(fma.f64 z t (*.f64 a b))
(fma.f64 t z (*.f64 a b))
(/.f64 (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (*.f64 z t) 3)) (+.f64 (*.f64 (*.f64 a b) (*.f64 a b)) (-.f64 (pow.f64 (*.f64 z t) 2) (*.f64 (*.f64 a b) (*.f64 z t)))))
(/.f64 (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (*.f64 t z) 3)) (fma.f64 (*.f64 a b) (*.f64 a b) (-.f64 (pow.f64 (*.f64 t z) 2) (*.f64 a (*.f64 b (*.f64 t z))))))
(/.f64 (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (*.f64 t z) 3)) (fma.f64 a (*.f64 (*.f64 b b) a) (*.f64 (*.f64 t z) (-.f64 (*.f64 t z) (*.f64 a b)))))
(/.f64 (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (*.f64 t z) 3)) (+.f64 (pow.f64 (*.f64 t z) 2) (*.f64 (*.f64 a b) (-.f64 (*.f64 a b) (*.f64 t z)))))
(/.f64 (-.f64 (*.f64 (*.f64 a b) (*.f64 a b)) (pow.f64 (*.f64 z t) 2)) (-.f64 (*.f64 a b) (*.f64 z t)))
(/.f64 (-.f64 (*.f64 a (*.f64 b (*.f64 a b))) (pow.f64 (*.f64 t z) 2)) (-.f64 (*.f64 a b) (*.f64 t z)))
(/.f64 (-.f64 (*.f64 a (*.f64 (*.f64 b b) a)) (pow.f64 (*.f64 t z) 2)) (-.f64 (*.f64 a b) (*.f64 t z)))
(/.f64 (-.f64 (*.f64 a (*.f64 a (*.f64 b b))) (pow.f64 (*.f64 t z) 2)) (-.f64 (*.f64 a b) (*.f64 t z)))
(pow.f64 (fma.f64 a b (*.f64 z t)) 1)
(fma.f64 z t (*.f64 a b))
(fma.f64 t z (*.f64 a b))
(pow.f64 (pow.f64 (fma.f64 a b (*.f64 z t)) 3) 1/3)
(fma.f64 z t (*.f64 a b))
(fma.f64 t z (*.f64 a b))
(pow.f64 (cbrt.f64 (fma.f64 a b (*.f64 z t))) 3)
(fma.f64 z t (*.f64 a b))
(fma.f64 t z (*.f64 a b))
(pow.f64 (sqrt.f64 (fma.f64 a b (*.f64 z t))) 2)
(fma.f64 z t (*.f64 a b))
(fma.f64 t z (*.f64 a b))
(sqrt.f64 (pow.f64 (fma.f64 a b (*.f64 z t)) 2))
(fma.f64 z t (*.f64 a b))
(fma.f64 t z (*.f64 a b))
(log.f64 (exp.f64 (fma.f64 a b (*.f64 z t))))
(fma.f64 z t (*.f64 a b))
(fma.f64 t z (*.f64 a b))
(cbrt.f64 (pow.f64 (fma.f64 a b (*.f64 z t)) 3))
(fma.f64 z t (*.f64 a b))
(fma.f64 t z (*.f64 a b))
(expm1.f64 (log1p.f64 (fma.f64 a b (*.f64 z t))))
(fma.f64 z t (*.f64 a b))
(fma.f64 t z (*.f64 a b))
(log1p.f64 (expm1.f64 (fma.f64 a b (*.f64 z t))))
(fma.f64 z t (*.f64 a b))
(fma.f64 t z (*.f64 a b))
(exp.f64 (log.f64 (fma.f64 a b (*.f64 z t))))
(fma.f64 z t (*.f64 a b))
(fma.f64 t z (*.f64 a b))
(+.f64 (fma.f64 a b (*.f64 z t)) (*.f64 x y))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 x y) (fma.f64 a b (*.f64 z t)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (*.f64 (*.f64 x y) 1) (fma.f64 a b (*.f64 z t)))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(+.f64 (+.f64 (*.f64 x y) (*.f64 a b)) (*.f64 z t))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(-.f64 (+.f64 1 (fma.f64 x y (fma.f64 a b (*.f64 z t)))) 1)
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(*.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t))) 1)
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(*.f64 1 (fma.f64 x y (fma.f64 a b (*.f64 z t))))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(*.f64 (cbrt.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t)))) (pow.f64 (cbrt.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t)))) 2))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t)))) 2) (cbrt.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t)))))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(*.f64 (sqrt.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t)))) (sqrt.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t)))))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(/.f64 (+.f64 (pow.f64 (*.f64 x y) 3) (pow.f64 (fma.f64 a b (*.f64 z t)) 3)) (+.f64 (*.f64 (*.f64 x y) (*.f64 x y)) (-.f64 (pow.f64 (fma.f64 a b (*.f64 z t)) 2) (*.f64 (*.f64 x y) (fma.f64 a b (*.f64 z t))))))
(/.f64 (+.f64 (pow.f64 (fma.f64 z t (*.f64 a b)) 3) (pow.f64 (*.f64 y x) 3)) (fma.f64 (*.f64 y x) (*.f64 y x) (-.f64 (pow.f64 (fma.f64 z t (*.f64 a b)) 2) (*.f64 (fma.f64 z t (*.f64 a b)) (*.f64 y x)))))
(/.f64 (+.f64 (pow.f64 (fma.f64 t z (*.f64 a b)) 3) (pow.f64 (*.f64 y x) 3)) (fma.f64 x (*.f64 y (*.f64 y x)) (*.f64 (fma.f64 t z (*.f64 a b)) (-.f64 (fma.f64 t z (*.f64 a b)) (*.f64 y x)))))
(/.f64 (+.f64 (pow.f64 (fma.f64 t z (*.f64 a b)) 3) (pow.f64 (*.f64 y x) 3)) (-.f64 (pow.f64 (fma.f64 t z (*.f64 a b)) 2) (*.f64 (*.f64 y x) (-.f64 (fma.f64 t z (*.f64 a b)) (*.f64 y x)))))
(/.f64 (-.f64 (*.f64 (*.f64 x y) (*.f64 x y)) (pow.f64 (fma.f64 a b (*.f64 z t)) 2)) (-.f64 (*.f64 x y) (fma.f64 a b (*.f64 z t))))
(/.f64 (-.f64 (*.f64 x (*.f64 y (*.f64 y x))) (pow.f64 (fma.f64 z t (*.f64 a b)) 2)) (-.f64 (*.f64 y x) (fma.f64 z t (*.f64 a b))))
(/.f64 (-.f64 (*.f64 y (*.f64 x (*.f64 y x))) (pow.f64 (fma.f64 t z (*.f64 a b)) 2)) (-.f64 (*.f64 y x) (fma.f64 t z (*.f64 a b))))
(/.f64 (-.f64 (*.f64 x (*.f64 y (*.f64 y x))) (pow.f64 (fma.f64 t z (*.f64 a b)) 2)) (-.f64 (*.f64 y x) (fma.f64 t z (*.f64 a b))))
(pow.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t))) 1)
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(pow.f64 (pow.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t))) 3) 1/3)
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(pow.f64 (cbrt.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t)))) 3)
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(pow.f64 (sqrt.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t)))) 2)
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(sqrt.f64 (pow.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t))) 2))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(log.f64 (exp.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t)))))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(cbrt.f64 (pow.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t))) 3))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(expm1.f64 (log1p.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t)))))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(log1p.f64 (expm1.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t)))))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))
(exp.f64 (log.f64 (fma.f64 x y (fma.f64 a b (*.f64 z t)))))
(fma.f64 a b (fma.f64 y x (*.f64 t z)))
(fma.f64 t z (fma.f64 a b (*.f64 y x)))

eval60.0ms (1.3%)

Compiler

Compiled 5417 to 1315 computations (75.7% saved)

prune66.0ms (1.5%)

Pruning

9 alts after pruning (9 fresh and 0 done)

PrunedKeptTotal
New3179326
Fresh000
Picked101
Done202
Total3209329
Error
0b
Counts
329 → 9
Alt Table
Click to see full alt table
StatusErrorProgram
22.6b
(fma.f64 y x (*.f64 a b))
21.0b
(fma.f64 t z (*.f64 a b))
22.6b
(fma.f64 a b (*.f64 y x))
19.3b
(+.f64 (*.f64 y x) (*.f64 t z))
22.6b
(+.f64 (*.f64 a b) (*.f64 y x))
21.0b
(+.f64 (*.f64 a b) (*.f64 t z))
41.4b
(*.f64 y x)
40.0b
(*.f64 t z)
43.5b
(*.f64 a b)
Compiler

Compiled 204 to 144 computations (29.4% saved)

localize8.0ms (0.2%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (*.f64 y x) (*.f64 t z))
Compiler

Compiled 23 to 9 computations (60.9% saved)

series3.0ms (0.1%)

Counts
1 → 12
Calls

12 calls:

TimeVariablePointExpression
0.0ms
t
@-inf
(+.f64 (*.f64 y x) (*.f64 t z))
0.0ms
z
@inf
(+.f64 (*.f64 y x) (*.f64 t z))
0.0ms
y
@0
(+.f64 (*.f64 y x) (*.f64 t z))
0.0ms
y
@-inf
(+.f64 (*.f64 y x) (*.f64 t z))
0.0ms
x
@-inf
(+.f64 (*.f64 y x) (*.f64 t z))

rewrite45.0ms (1%)

Algorithm
batch-egg-rewrite
Rules
903×pow1_binary64
833×add-log-exp_binary64
833×log1p-expm1-u_binary64
833×expm1-log1p-u_binary64
814×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
088
11688
222708
Stop Event
node limit
Counts
1 → 37
Calls
Call 1
Inputs
(+.f64 (*.f64 y x) (*.f64 t z))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (fma.f64 y x (*.f64 t z))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (*.f64 y x) 2) (-.f64 (*.f64 y x) (*.f64 t z))) (/.f64 (pow.f64 (*.f64 t z) 2) (-.f64 (*.f64 y x) (*.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 y x (*.f64 t z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 y x (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 y x (*.f64 t z))) (pow.f64 (cbrt.f64 (fma.f64 y x (*.f64 t z))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 y x (*.f64 t z))) 2) (cbrt.f64 (fma.f64 y x (*.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 y x (*.f64 t z))) (sqrt.f64 (fma.f64 y x (*.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (*.f64 t z) 3)) (/.f64 1 (+.f64 (pow.f64 (*.f64 y x) 2) (*.f64 (*.f64 t z) (-.f64 (*.f64 t z) (*.f64 y x))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 t z) 2)) (/.f64 1 (-.f64 (*.f64 y x) (*.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (pow.f64 (*.f64 y x) 2) (*.f64 (*.f64 t z) (-.f64 (*.f64 t z) (*.f64 y x)))) (+.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (*.f64 t z) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 (*.f64 y x) (*.f64 t z)) (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 t z) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (*.f64 t z) 3)) (+.f64 (pow.f64 (*.f64 y x) 2) (*.f64 (*.f64 t z) (-.f64 (*.f64 t z) (*.f64 y x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (*.f64 t z) 3)) (+.f64 (pow.f64 (*.f64 t z) 2) (-.f64 (pow.f64 (*.f64 y x) 2) (*.f64 (*.f64 y x) (*.f64 t z)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 t z) 2)) (-.f64 (*.f64 y x) (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (*.f64 t z) 3))) (neg.f64 (+.f64 (pow.f64 (*.f64 y x) 2) (*.f64 (*.f64 t z) (-.f64 (*.f64 t z) (*.f64 y x))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 t z) 2))) (neg.f64 (-.f64 (*.f64 y x) (*.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 t z) 2) (pow.f64 (*.f64 y x) 2)) (-.f64 (*.f64 t z) (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 y x (*.f64 t z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 y x (*.f64 t z)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 y x (*.f64 t z))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 y x (*.f64 t z))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 y x (*.f64 t z)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 y x (*.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 y x (*.f64 t z)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 y x (*.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 y x (*.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 y x (*.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y x (*.f64 t z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x y (*.f64 t z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 t z (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 z t (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 y x) (*.f64 t z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 t z) (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 t z)) 2) (cbrt.f64 (*.f64 t z)) (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 y x)) 2) (cbrt.f64 (*.f64 y x)) (*.f64 t z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 t z)) (sqrt.f64 (*.f64 t z)) (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 y x)) (sqrt.f64 (*.f64 y x)) (*.f64 t z))))))

simplify45.0ms (1%)

Algorithm
egg-herbie
Rules
530×fma-neg_binary64
518×div-sub_binary64
516×distribute-rgt-in_binary64
437×cancel-sign-sub-inv_binary64
286×distribute-rgt-neg-in_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
088810
1232707
2824629
33589527
Stop Event
node limit
Counts
49 → 44
Calls
Call 1
Inputs
(*.f64 t z)
(*.f64 y x)
(*.f64 y x)
(*.f64 t z)
(*.f64 y x)
(*.f64 y x)
(*.f64 y x)
(*.f64 t z)
(*.f64 t z)
(*.f64 y x)
(*.f64 t z)
(*.f64 t z)
(-.f64 (+.f64 1 (fma.f64 y x (*.f64 t z))) 1)
(-.f64 (/.f64 (pow.f64 (*.f64 y x) 2) (-.f64 (*.f64 y x) (*.f64 t z))) (/.f64 (pow.f64 (*.f64 t z) 2) (-.f64 (*.f64 y x) (*.f64 t z))))
(*.f64 (fma.f64 y x (*.f64 t z)) 1)
(*.f64 1 (fma.f64 y x (*.f64 t z)))
(*.f64 (cbrt.f64 (fma.f64 y x (*.f64 t z))) (pow.f64 (cbrt.f64 (fma.f64 y x (*.f64 t z))) 2))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 y x (*.f64 t z))) 2) (cbrt.f64 (fma.f64 y x (*.f64 t z))))
(*.f64 (sqrt.f64 (fma.f64 y x (*.f64 t z))) (sqrt.f64 (fma.f64 y x (*.f64 t z))))
(*.f64 (+.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (*.f64 t z) 3)) (/.f64 1 (+.f64 (pow.f64 (*.f64 y x) 2) (*.f64 (*.f64 t z) (-.f64 (*.f64 t z) (*.f64 y x))))))
(*.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 t z) 2)) (/.f64 1 (-.f64 (*.f64 y x) (*.f64 t z))))
(/.f64 1 (/.f64 (+.f64 (pow.f64 (*.f64 y x) 2) (*.f64 (*.f64 t z) (-.f64 (*.f64 t z) (*.f64 y x)))) (+.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (*.f64 t z) 3))))
(/.f64 1 (/.f64 (-.f64 (*.f64 y x) (*.f64 t z)) (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 t z) 2))))
(/.f64 (+.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (*.f64 t z) 3)) (+.f64 (pow.f64 (*.f64 y x) 2) (*.f64 (*.f64 t z) (-.f64 (*.f64 t z) (*.f64 y x)))))
(/.f64 (+.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (*.f64 t z) 3)) (+.f64 (pow.f64 (*.f64 t z) 2) (-.f64 (pow.f64 (*.f64 y x) 2) (*.f64 (*.f64 y x) (*.f64 t z)))))
(/.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 t z) 2)) (-.f64 (*.f64 y x) (*.f64 t z)))
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (*.f64 t z) 3))) (neg.f64 (+.f64 (pow.f64 (*.f64 y x) 2) (*.f64 (*.f64 t z) (-.f64 (*.f64 t z) (*.f64 y x))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 t z) 2))) (neg.f64 (-.f64 (*.f64 y x) (*.f64 t z))))
(/.f64 (-.f64 (pow.f64 (*.f64 t z) 2) (pow.f64 (*.f64 y x) 2)) (-.f64 (*.f64 t z) (*.f64 y x)))
(pow.f64 (fma.f64 y x (*.f64 t z)) 1)
(pow.f64 (pow.f64 (fma.f64 y x (*.f64 t z)) 3) 1/3)
(pow.f64 (cbrt.f64 (fma.f64 y x (*.f64 t z))) 3)
(pow.f64 (sqrt.f64 (fma.f64 y x (*.f64 t z))) 2)
(sqrt.f64 (pow.f64 (fma.f64 y x (*.f64 t z)) 2))
(log.f64 (exp.f64 (fma.f64 y x (*.f64 t z))))
(cbrt.f64 (pow.f64 (fma.f64 y x (*.f64 t z)) 3))
(expm1.f64 (log1p.f64 (fma.f64 y x (*.f64 t z))))
(log1p.f64 (expm1.f64 (fma.f64 y x (*.f64 t z))))
(exp.f64 (log.f64 (fma.f64 y x (*.f64 t z))))
(fma.f64 y x (*.f64 t z))
(fma.f64 x y (*.f64 t z))
(fma.f64 t z (*.f64 y x))
(fma.f64 z t (*.f64 y x))
(fma.f64 1 (*.f64 y x) (*.f64 t z))
(fma.f64 1 (*.f64 t z) (*.f64 y x))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 t z)) 2) (cbrt.f64 (*.f64 t z)) (*.f64 y x))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 y x)) 2) (cbrt.f64 (*.f64 y x)) (*.f64 t z))
(fma.f64 (sqrt.f64 (*.f64 t z)) (sqrt.f64 (*.f64 t z)) (*.f64 y x))
(fma.f64 (sqrt.f64 (*.f64 y x)) (sqrt.f64 (*.f64 y x)) (*.f64 t z))
Outputs
(*.f64 t z)
(*.f64 y x)
(*.f64 y x)
(*.f64 t z)
(*.f64 y x)
(*.f64 y x)
(*.f64 y x)
(*.f64 t z)
(*.f64 t z)
(*.f64 y x)
(*.f64 t z)
(*.f64 t z)
(-.f64 (+.f64 1 (fma.f64 y x (*.f64 t z))) 1)
(+.f64 1 (-.f64 (fma.f64 y x (*.f64 t z)) 1))
(+.f64 (fma.f64 t z (*.f64 y x)) 0)
(fma.f64 t z (*.f64 y x))
(-.f64 (/.f64 (pow.f64 (*.f64 y x) 2) (-.f64 (*.f64 y x) (*.f64 t z))) (/.f64 (pow.f64 (*.f64 t z) 2) (-.f64 (*.f64 y x) (*.f64 t z))))
(/.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 t z) 2)) (-.f64 (*.f64 y x) (*.f64 t z)))
(/.f64 (fma.f64 t z (*.f64 y x)) 1)
(*.f64 (fma.f64 y x (*.f64 t z)) 1)
(+.f64 1 (-.f64 (fma.f64 y x (*.f64 t z)) 1))
(+.f64 (fma.f64 t z (*.f64 y x)) 0)
(fma.f64 t z (*.f64 y x))
(*.f64 1 (fma.f64 y x (*.f64 t z)))
(+.f64 1 (-.f64 (fma.f64 y x (*.f64 t z)) 1))
(+.f64 (fma.f64 t z (*.f64 y x)) 0)
(fma.f64 t z (*.f64 y x))
(*.f64 (cbrt.f64 (fma.f64 y x (*.f64 t z))) (pow.f64 (cbrt.f64 (fma.f64 y x (*.f64 t z))) 2))
(+.f64 1 (-.f64 (fma.f64 y x (*.f64 t z)) 1))
(+.f64 (fma.f64 t z (*.f64 y x)) 0)
(fma.f64 t z (*.f64 y x))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 y x (*.f64 t z))) 2) (cbrt.f64 (fma.f64 y x (*.f64 t z))))
(+.f64 1 (-.f64 (fma.f64 y x (*.f64 t z)) 1))
(+.f64 (fma.f64 t z (*.f64 y x)) 0)
(fma.f64 t z (*.f64 y x))
(*.f64 (sqrt.f64 (fma.f64 y x (*.f64 t z))) (sqrt.f64 (fma.f64 y x (*.f64 t z))))
(+.f64 1 (-.f64 (fma.f64 y x (*.f64 t z)) 1))
(+.f64 (fma.f64 t z (*.f64 y x)) 0)
(fma.f64 t z (*.f64 y x))
(*.f64 (+.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (*.f64 t z) 3)) (/.f64 1 (+.f64 (pow.f64 (*.f64 y x) 2) (*.f64 (*.f64 t z) (-.f64 (*.f64 t z) (*.f64 y x))))))
(/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (*.f64 t z) 3)) 1) (+.f64 (pow.f64 (*.f64 y x) 2) (*.f64 t (*.f64 z (-.f64 (*.f64 t z) (*.f64 y x))))))
(/.f64 (+.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (*.f64 t z) 3)) (fma.f64 t (*.f64 z (-.f64 (*.f64 t z) (*.f64 y x))) (pow.f64 (*.f64 y x) 2)))
(*.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 t z) 2)) (/.f64 1 (-.f64 (*.f64 y x) (*.f64 t z))))
(/.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 t z) 2)) (-.f64 (*.f64 y x) (*.f64 t z)))
(/.f64 (fma.f64 t z (*.f64 y x)) 1)
(/.f64 1 (/.f64 (+.f64 (pow.f64 (*.f64 y x) 2) (*.f64 (*.f64 t z) (-.f64 (*.f64 t z) (*.f64 y x)))) (+.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (*.f64 t z) 3))))
(/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (*.f64 t z) 3)) 1) (+.f64 (pow.f64 (*.f64 y x) 2) (*.f64 t (*.f64 z (-.f64 (*.f64 t z) (*.f64 y x))))))
(/.f64 (+.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (*.f64 t z) 3)) (fma.f64 t (*.f64 z (-.f64 (*.f64 t z) (*.f64 y x))) (pow.f64 (*.f64 y x) 2)))
(/.f64 1 (/.f64 (-.f64 (*.f64 y x) (*.f64 t z)) (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 t z) 2))))
(/.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 t z) 2)) (-.f64 (*.f64 y x) (*.f64 t z)))
(/.f64 (fma.f64 t z (*.f64 y x)) 1)
(/.f64 (+.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (*.f64 t z) 3)) (+.f64 (pow.f64 (*.f64 y x) 2) (*.f64 (*.f64 t z) (-.f64 (*.f64 t z) (*.f64 y x)))))
(/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (*.f64 t z) 3)) 1) (+.f64 (pow.f64 (*.f64 y x) 2) (*.f64 t (*.f64 z (-.f64 (*.f64 t z) (*.f64 y x))))))
(/.f64 (+.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (*.f64 t z) 3)) (fma.f64 t (*.f64 z (-.f64 (*.f64 t z) (*.f64 y x))) (pow.f64 (*.f64 y x) 2)))
(/.f64 (+.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (*.f64 t z) 3)) (+.f64 (pow.f64 (*.f64 t z) 2) (-.f64 (pow.f64 (*.f64 y x) 2) (*.f64 (*.f64 y x) (*.f64 t z)))))
(/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (*.f64 t z) 3)) 1) (+.f64 (pow.f64 (*.f64 y x) 2) (*.f64 t (*.f64 z (-.f64 (*.f64 t z) (*.f64 y x))))))
(/.f64 (+.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (*.f64 t z) 3)) (fma.f64 t (*.f64 z (-.f64 (*.f64 t z) (*.f64 y x))) (pow.f64 (*.f64 y x) 2)))
(/.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 t z) 2)) (-.f64 (*.f64 y x) (*.f64 t z)))
(/.f64 (fma.f64 t z (*.f64 y x)) 1)
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (*.f64 t z) 3))) (neg.f64 (+.f64 (pow.f64 (*.f64 y x) 2) (*.f64 (*.f64 t z) (-.f64 (*.f64 t z) (*.f64 y x))))))
(/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (*.f64 t z) 3)) 1) (+.f64 (pow.f64 (*.f64 y x) 2) (*.f64 t (*.f64 z (-.f64 (*.f64 t z) (*.f64 y x))))))
(/.f64 (+.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (*.f64 t z) 3)) (fma.f64 t (*.f64 z (-.f64 (*.f64 t z) (*.f64 y x))) (pow.f64 (*.f64 y x) 2)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 t z) 2))) (neg.f64 (-.f64 (*.f64 y x) (*.f64 t z))))
(/.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 t z) 2)) (-.f64 (*.f64 y x) (*.f64 t z)))
(/.f64 (fma.f64 t z (*.f64 y x)) 1)
(/.f64 (-.f64 (pow.f64 (*.f64 t z) 2) (pow.f64 (*.f64 y x) 2)) (-.f64 (*.f64 t z) (*.f64 y x)))
(/.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 t z) 2)) (-.f64 (*.f64 y x) (*.f64 t z)))
(/.f64 (fma.f64 t z (*.f64 y x)) 1)
(pow.f64 (fma.f64 y x (*.f64 t z)) 1)
(+.f64 1 (-.f64 (fma.f64 y x (*.f64 t z)) 1))
(+.f64 (fma.f64 t z (*.f64 y x)) 0)
(fma.f64 t z (*.f64 y x))
(pow.f64 (pow.f64 (fma.f64 y x (*.f64 t z)) 3) 1/3)
(+.f64 1 (-.f64 (fma.f64 y x (*.f64 t z)) 1))
(+.f64 (fma.f64 t z (*.f64 y x)) 0)
(fma.f64 t z (*.f64 y x))
(pow.f64 (cbrt.f64 (fma.f64 y x (*.f64 t z))) 3)
(+.f64 1 (-.f64 (fma.f64 y x (*.f64 t z)) 1))
(+.f64 (fma.f64 t z (*.f64 y x)) 0)
(fma.f64 t z (*.f64 y x))
(pow.f64 (sqrt.f64 (fma.f64 y x (*.f64 t z))) 2)
(+.f64 1 (-.f64 (fma.f64 y x (*.f64 t z)) 1))
(+.f64 (fma.f64 t z (*.f64 y x)) 0)
(fma.f64 t z (*.f64 y x))
(sqrt.f64 (pow.f64 (fma.f64 y x (*.f64 t z)) 2))
(+.f64 1 (-.f64 (fma.f64 y x (*.f64 t z)) 1))
(+.f64 (fma.f64 t z (*.f64 y x)) 0)
(fma.f64 t z (*.f64 y x))
(log.f64 (exp.f64 (fma.f64 y x (*.f64 t z))))
(+.f64 1 (-.f64 (fma.f64 y x (*.f64 t z)) 1))
(+.f64 (fma.f64 t z (*.f64 y x)) 0)
(fma.f64 t z (*.f64 y x))
(cbrt.f64 (pow.f64 (fma.f64 y x (*.f64 t z)) 3))
(+.f64 1 (-.f64 (fma.f64 y x (*.f64 t z)) 1))
(+.f64 (fma.f64 t z (*.f64 y x)) 0)
(fma.f64 t z (*.f64 y x))
(expm1.f64 (log1p.f64 (fma.f64 y x (*.f64 t z))))
(+.f64 1 (-.f64 (fma.f64 y x (*.f64 t z)) 1))
(+.f64 (fma.f64 t z (*.f64 y x)) 0)
(fma.f64 t z (*.f64 y x))
(log1p.f64 (expm1.f64 (fma.f64 y x (*.f64 t z))))
(+.f64 1 (-.f64 (fma.f64 y x (*.f64 t z)) 1))
(+.f64 (fma.f64 t z (*.f64 y x)) 0)
(fma.f64 t z (*.f64 y x))
(exp.f64 (log.f64 (fma.f64 y x (*.f64 t z))))
(+.f64 1 (-.f64 (fma.f64 y x (*.f64 t z)) 1))
(+.f64 (fma.f64 t z (*.f64 y x)) 0)
(fma.f64 t z (*.f64 y x))
(fma.f64 y x (*.f64 t z))
(+.f64 1 (-.f64 (fma.f64 y x (*.f64 t z)) 1))
(+.f64 (fma.f64 t z (*.f64 y x)) 0)
(fma.f64 t z (*.f64 y x))
(fma.f64 x y (*.f64 t z))
(+.f64 1 (-.f64 (fma.f64 y x (*.f64 t z)) 1))
(+.f64 (fma.f64 t z (*.f64 y x)) 0)
(fma.f64 t z (*.f64 y x))
(fma.f64 t z (*.f64 y x))
(+.f64 1 (-.f64 (fma.f64 y x (*.f64 t z)) 1))
(+.f64 (fma.f64 t z (*.f64 y x)) 0)
(fma.f64 z t (*.f64 y x))
(+.f64 1 (-.f64 (fma.f64 y x (*.f64 t z)) 1))
(+.f64 (fma.f64 t z (*.f64 y x)) 0)
(fma.f64 t z (*.f64 y x))
(fma.f64 1 (*.f64 y x) (*.f64 t z))
(+.f64 1 (-.f64 (fma.f64 y x (*.f64 t z)) 1))
(+.f64 (fma.f64 t z (*.f64 y x)) 0)
(fma.f64 t z (*.f64 y x))
(fma.f64 1 (*.f64 t z) (*.f64 y x))
(+.f64 1 (-.f64 (fma.f64 y x (*.f64 t z)) 1))
(+.f64 (fma.f64 t z (*.f64 y x)) 0)
(fma.f64 t z (*.f64 y x))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 t z)) 2) (cbrt.f64 (*.f64 t z)) (*.f64 y x))
(+.f64 1 (-.f64 (fma.f64 y x (*.f64 t z)) 1))
(+.f64 (fma.f64 t z (*.f64 y x)) 0)
(fma.f64 t z (*.f64 y x))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 y x)) 2) (cbrt.f64 (*.f64 y x)) (*.f64 t z))
(+.f64 1 (-.f64 (fma.f64 y x (*.f64 t z)) 1))
(+.f64 (fma.f64 t z (*.f64 y x)) 0)
(fma.f64 t z (*.f64 y x))
(fma.f64 (sqrt.f64 (*.f64 t z)) (sqrt.f64 (*.f64 t z)) (*.f64 y x))
(+.f64 1 (-.f64 (fma.f64 y x (*.f64 t z)) 1))
(+.f64 (fma.f64 t z (*.f64 y x)) 0)
(fma.f64 t z (*.f64 y x))
(fma.f64 (sqrt.f64 (*.f64 y x)) (sqrt.f64 (*.f64 y x)) (*.f64 t z))
(+.f64 1 (-.f64 (fma.f64 y x (*.f64 t z)) 1))
(+.f64 (fma.f64 t z (*.f64 y x)) 0)
(fma.f64 t z (*.f64 y x))

localize4.0ms (0.1%)

Compiler

Compiled 11 to 7 computations (36.4% saved)

localize6.0ms (0.1%)

Compiler

Compiled 11 to 7 computations (36.4% saved)

localize8.0ms (0.2%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (*.f64 a b) (*.f64 y x))
Compiler

Compiled 23 to 9 computations (60.9% saved)

series3.0ms (0.1%)

Counts
1 → 12
Calls

12 calls:

TimeVariablePointExpression
0.0ms
a
@0
(+.f64 (*.f64 a b) (*.f64 y x))
0.0ms
y
@-inf
(+.f64 (*.f64 a b) (*.f64 y x))
0.0ms
x
@-inf
(+.f64 (*.f64 a b) (*.f64 y x))
0.0ms
a
@inf
(+.f64 (*.f64 a b) (*.f64 y x))
0.0ms
x
@inf
(+.f64 (*.f64 a b) (*.f64 y x))

rewrite53.0ms (1.2%)

Algorithm
batch-egg-rewrite
Rules
903×pow1_binary64
833×add-log-exp_binary64
833×log1p-expm1-u_binary64
833×expm1-log1p-u_binary64
814×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
088
11688
222708
Stop Event
node limit
Counts
1 → 37
Calls
Call 1
Inputs
(+.f64 (*.f64 a b) (*.f64 y x))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (fma.f64 a b (*.f64 y x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (*.f64 a b) 2) (-.f64 (*.f64 a b) (*.f64 y x))) (/.f64 (pow.f64 (*.f64 y x) 2) (-.f64 (*.f64 a b) (*.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 a b (*.f64 y x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 a b (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 a b (*.f64 y x))) (pow.f64 (cbrt.f64 (fma.f64 a b (*.f64 y x))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 a b (*.f64 y x))) 2) (cbrt.f64 (fma.f64 a b (*.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 a b (*.f64 y x))) (sqrt.f64 (fma.f64 a b (*.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (*.f64 y x) 3)) (/.f64 1 (+.f64 (pow.f64 (*.f64 a b) 2) (*.f64 (*.f64 y x) (-.f64 (*.f64 y x) (*.f64 a b))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (*.f64 a b) 2) (pow.f64 (*.f64 y x) 2)) (/.f64 1 (-.f64 (*.f64 a b) (*.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (pow.f64 (*.f64 a b) 2) (*.f64 (*.f64 y x) (-.f64 (*.f64 y x) (*.f64 a b)))) (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (*.f64 y x) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 (*.f64 a b) (*.f64 y x)) (-.f64 (pow.f64 (*.f64 a b) 2) (pow.f64 (*.f64 y x) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (*.f64 y x) 3)) (+.f64 (pow.f64 (*.f64 a b) 2) (*.f64 (*.f64 y x) (-.f64 (*.f64 y x) (*.f64 a b)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (*.f64 y x) 3)) (+.f64 (pow.f64 (*.f64 y x) 2) (-.f64 (pow.f64 (*.f64 a b) 2) (*.f64 (*.f64 a b) (*.f64 y x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 a b) 2) (pow.f64 (*.f64 y x) 2)) (-.f64 (*.f64 a b) (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (*.f64 y x) 3))) (neg.f64 (+.f64 (pow.f64 (*.f64 a b) 2) (*.f64 (*.f64 y x) (-.f64 (*.f64 y x) (*.f64 a b))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 a b) 2) (pow.f64 (*.f64 y x) 2))) (neg.f64 (-.f64 (*.f64 a b) (*.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 a b) 2)) (-.f64 (*.f64 y x) (*.f64 a b)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 a b (*.f64 y x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 a b (*.f64 y x)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 a b (*.f64 y x))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 a b (*.f64 y x))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 a b (*.f64 y x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 a b (*.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 a b (*.f64 y x)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 a b (*.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 a b (*.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 a b (*.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 a b (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 b a (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y x (*.f64 a b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x y (*.f64 a b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 a b) (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 y x) (*.f64 a b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 y x)) 2) (cbrt.f64 (*.f64 y x)) (*.f64 a b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 a b)) 2) (cbrt.f64 (*.f64 a b)) (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 y x)) (sqrt.f64 (*.f64 y x)) (*.f64 a b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 a b)) (sqrt.f64 (*.f64 a b)) (*.f64 y x))))))

simplify43.0ms (0.9%)

Algorithm
egg-herbie
Rules
530×fma-neg_binary64
518×div-sub_binary64
516×distribute-rgt-in_binary64
437×cancel-sign-sub-inv_binary64
286×distribute-rgt-neg-in_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
088810
1232707
2824629
33589527
Stop Event
node limit
Counts
49 → 44
Calls
Call 1
Inputs
(*.f64 y x)
(*.f64 a b)
(*.f64 a b)
(*.f64 y x)
(*.f64 a b)
(*.f64 a b)
(*.f64 a b)
(*.f64 y x)
(*.f64 y x)
(*.f64 a b)
(*.f64 y x)
(*.f64 y x)
(-.f64 (+.f64 1 (fma.f64 a b (*.f64 y x))) 1)
(-.f64 (/.f64 (pow.f64 (*.f64 a b) 2) (-.f64 (*.f64 a b) (*.f64 y x))) (/.f64 (pow.f64 (*.f64 y x) 2) (-.f64 (*.f64 a b) (*.f64 y x))))
(*.f64 (fma.f64 a b (*.f64 y x)) 1)
(*.f64 1 (fma.f64 a b (*.f64 y x)))
(*.f64 (cbrt.f64 (fma.f64 a b (*.f64 y x))) (pow.f64 (cbrt.f64 (fma.f64 a b (*.f64 y x))) 2))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 a b (*.f64 y x))) 2) (cbrt.f64 (fma.f64 a b (*.f64 y x))))
(*.f64 (sqrt.f64 (fma.f64 a b (*.f64 y x))) (sqrt.f64 (fma.f64 a b (*.f64 y x))))
(*.f64 (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (*.f64 y x) 3)) (/.f64 1 (+.f64 (pow.f64 (*.f64 a b) 2) (*.f64 (*.f64 y x) (-.f64 (*.f64 y x) (*.f64 a b))))))
(*.f64 (-.f64 (pow.f64 (*.f64 a b) 2) (pow.f64 (*.f64 y x) 2)) (/.f64 1 (-.f64 (*.f64 a b) (*.f64 y x))))
(/.f64 1 (/.f64 (+.f64 (pow.f64 (*.f64 a b) 2) (*.f64 (*.f64 y x) (-.f64 (*.f64 y x) (*.f64 a b)))) (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (*.f64 y x) 3))))
(/.f64 1 (/.f64 (-.f64 (*.f64 a b) (*.f64 y x)) (-.f64 (pow.f64 (*.f64 a b) 2) (pow.f64 (*.f64 y x) 2))))
(/.f64 (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (*.f64 y x) 3)) (+.f64 (pow.f64 (*.f64 a b) 2) (*.f64 (*.f64 y x) (-.f64 (*.f64 y x) (*.f64 a b)))))
(/.f64 (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (*.f64 y x) 3)) (+.f64 (pow.f64 (*.f64 y x) 2) (-.f64 (pow.f64 (*.f64 a b) 2) (*.f64 (*.f64 a b) (*.f64 y x)))))
(/.f64 (-.f64 (pow.f64 (*.f64 a b) 2) (pow.f64 (*.f64 y x) 2)) (-.f64 (*.f64 a b) (*.f64 y x)))
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (*.f64 y x) 3))) (neg.f64 (+.f64 (pow.f64 (*.f64 a b) 2) (*.f64 (*.f64 y x) (-.f64 (*.f64 y x) (*.f64 a b))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 a b) 2) (pow.f64 (*.f64 y x) 2))) (neg.f64 (-.f64 (*.f64 a b) (*.f64 y x))))
(/.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 a b) 2)) (-.f64 (*.f64 y x) (*.f64 a b)))
(pow.f64 (fma.f64 a b (*.f64 y x)) 1)
(pow.f64 (pow.f64 (fma.f64 a b (*.f64 y x)) 3) 1/3)
(pow.f64 (cbrt.f64 (fma.f64 a b (*.f64 y x))) 3)
(pow.f64 (sqrt.f64 (fma.f64 a b (*.f64 y x))) 2)
(sqrt.f64 (pow.f64 (fma.f64 a b (*.f64 y x)) 2))
(log.f64 (exp.f64 (fma.f64 a b (*.f64 y x))))
(cbrt.f64 (pow.f64 (fma.f64 a b (*.f64 y x)) 3))
(expm1.f64 (log1p.f64 (fma.f64 a b (*.f64 y x))))
(log1p.f64 (expm1.f64 (fma.f64 a b (*.f64 y x))))
(exp.f64 (log.f64 (fma.f64 a b (*.f64 y x))))
(fma.f64 a b (*.f64 y x))
(fma.f64 b a (*.f64 y x))
(fma.f64 y x (*.f64 a b))
(fma.f64 x y (*.f64 a b))
(fma.f64 1 (*.f64 a b) (*.f64 y x))
(fma.f64 1 (*.f64 y x) (*.f64 a b))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 y x)) 2) (cbrt.f64 (*.f64 y x)) (*.f64 a b))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 a b)) 2) (cbrt.f64 (*.f64 a b)) (*.f64 y x))
(fma.f64 (sqrt.f64 (*.f64 y x)) (sqrt.f64 (*.f64 y x)) (*.f64 a b))
(fma.f64 (sqrt.f64 (*.f64 a b)) (sqrt.f64 (*.f64 a b)) (*.f64 y x))
Outputs
(*.f64 y x)
(*.f64 a b)
(*.f64 a b)
(*.f64 y x)
(*.f64 a b)
(*.f64 a b)
(*.f64 a b)
(*.f64 y x)
(*.f64 y x)
(*.f64 a b)
(*.f64 y x)
(*.f64 y x)
(-.f64 (+.f64 1 (fma.f64 a b (*.f64 y x))) 1)
(+.f64 1 (-.f64 (fma.f64 a b (*.f64 y x)) 1))
(+.f64 (fma.f64 y x (*.f64 a b)) 0)
(fma.f64 y x (*.f64 a b))
(-.f64 (/.f64 (pow.f64 (*.f64 a b) 2) (-.f64 (*.f64 a b) (*.f64 y x))) (/.f64 (pow.f64 (*.f64 y x) 2) (-.f64 (*.f64 a b) (*.f64 y x))))
(/.f64 (-.f64 (pow.f64 (*.f64 a b) 2) (pow.f64 (*.f64 y x) 2)) (-.f64 (*.f64 a b) (*.f64 y x)))
(/.f64 (fma.f64 y x (*.f64 a b)) 1)
(*.f64 (fma.f64 a b (*.f64 y x)) 1)
(+.f64 1 (-.f64 (fma.f64 a b (*.f64 y x)) 1))
(+.f64 (fma.f64 y x (*.f64 a b)) 0)
(fma.f64 y x (*.f64 a b))
(*.f64 1 (fma.f64 a b (*.f64 y x)))
(+.f64 1 (-.f64 (fma.f64 a b (*.f64 y x)) 1))
(+.f64 (fma.f64 y x (*.f64 a b)) 0)
(fma.f64 y x (*.f64 a b))
(*.f64 (cbrt.f64 (fma.f64 a b (*.f64 y x))) (pow.f64 (cbrt.f64 (fma.f64 a b (*.f64 y x))) 2))
(+.f64 1 (-.f64 (fma.f64 a b (*.f64 y x)) 1))
(+.f64 (fma.f64 y x (*.f64 a b)) 0)
(fma.f64 y x (*.f64 a b))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 a b (*.f64 y x))) 2) (cbrt.f64 (fma.f64 a b (*.f64 y x))))
(+.f64 1 (-.f64 (fma.f64 a b (*.f64 y x)) 1))
(+.f64 (fma.f64 y x (*.f64 a b)) 0)
(fma.f64 y x (*.f64 a b))
(*.f64 (sqrt.f64 (fma.f64 a b (*.f64 y x))) (sqrt.f64 (fma.f64 a b (*.f64 y x))))
(+.f64 1 (-.f64 (fma.f64 a b (*.f64 y x)) 1))
(+.f64 (fma.f64 y x (*.f64 a b)) 0)
(fma.f64 y x (*.f64 a b))
(*.f64 (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (*.f64 y x) 3)) (/.f64 1 (+.f64 (pow.f64 (*.f64 a b) 2) (*.f64 (*.f64 y x) (-.f64 (*.f64 y x) (*.f64 a b))))))
(/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (*.f64 y x) 3)) 1) (+.f64 (pow.f64 (*.f64 a b) 2) (*.f64 y (*.f64 x (-.f64 (*.f64 y x) (*.f64 a b))))))
(/.f64 (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (*.f64 y x) 3)) (fma.f64 y (*.f64 x (-.f64 (*.f64 y x) (*.f64 a b))) (pow.f64 (*.f64 a b) 2)))
(*.f64 (-.f64 (pow.f64 (*.f64 a b) 2) (pow.f64 (*.f64 y x) 2)) (/.f64 1 (-.f64 (*.f64 a b) (*.f64 y x))))
(/.f64 (-.f64 (pow.f64 (*.f64 a b) 2) (pow.f64 (*.f64 y x) 2)) (-.f64 (*.f64 a b) (*.f64 y x)))
(/.f64 (fma.f64 y x (*.f64 a b)) 1)
(/.f64 1 (/.f64 (+.f64 (pow.f64 (*.f64 a b) 2) (*.f64 (*.f64 y x) (-.f64 (*.f64 y x) (*.f64 a b)))) (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (*.f64 y x) 3))))
(/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (*.f64 y x) 3)) 1) (+.f64 (pow.f64 (*.f64 a b) 2) (*.f64 y (*.f64 x (-.f64 (*.f64 y x) (*.f64 a b))))))
(/.f64 (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (*.f64 y x) 3)) (fma.f64 y (*.f64 x (-.f64 (*.f64 y x) (*.f64 a b))) (pow.f64 (*.f64 a b) 2)))
(/.f64 1 (/.f64 (-.f64 (*.f64 a b) (*.f64 y x)) (-.f64 (pow.f64 (*.f64 a b) 2) (pow.f64 (*.f64 y x) 2))))
(/.f64 (-.f64 (pow.f64 (*.f64 a b) 2) (pow.f64 (*.f64 y x) 2)) (-.f64 (*.f64 a b) (*.f64 y x)))
(/.f64 (fma.f64 y x (*.f64 a b)) 1)
(/.f64 (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (*.f64 y x) 3)) (+.f64 (pow.f64 (*.f64 a b) 2) (*.f64 (*.f64 y x) (-.f64 (*.f64 y x) (*.f64 a b)))))
(/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (*.f64 y x) 3)) 1) (+.f64 (pow.f64 (*.f64 a b) 2) (*.f64 y (*.f64 x (-.f64 (*.f64 y x) (*.f64 a b))))))
(/.f64 (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (*.f64 y x) 3)) (fma.f64 y (*.f64 x (-.f64 (*.f64 y x) (*.f64 a b))) (pow.f64 (*.f64 a b) 2)))
(/.f64 (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (*.f64 y x) 3)) (+.f64 (pow.f64 (*.f64 y x) 2) (-.f64 (pow.f64 (*.f64 a b) 2) (*.f64 (*.f64 a b) (*.f64 y x)))))
(/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (*.f64 y x) 3)) 1) (+.f64 (pow.f64 (*.f64 a b) 2) (*.f64 y (*.f64 x (-.f64 (*.f64 y x) (*.f64 a b))))))
(/.f64 (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (*.f64 y x) 3)) (fma.f64 y (*.f64 x (-.f64 (*.f64 y x) (*.f64 a b))) (pow.f64 (*.f64 a b) 2)))
(/.f64 (-.f64 (pow.f64 (*.f64 a b) 2) (pow.f64 (*.f64 y x) 2)) (-.f64 (*.f64 a b) (*.f64 y x)))
(/.f64 (fma.f64 y x (*.f64 a b)) 1)
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (*.f64 y x) 3))) (neg.f64 (+.f64 (pow.f64 (*.f64 a b) 2) (*.f64 (*.f64 y x) (-.f64 (*.f64 y x) (*.f64 a b))))))
(/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (*.f64 y x) 3)) 1) (+.f64 (pow.f64 (*.f64 a b) 2) (*.f64 y (*.f64 x (-.f64 (*.f64 y x) (*.f64 a b))))))
(/.f64 (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (*.f64 y x) 3)) (fma.f64 y (*.f64 x (-.f64 (*.f64 y x) (*.f64 a b))) (pow.f64 (*.f64 a b) 2)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 a b) 2) (pow.f64 (*.f64 y x) 2))) (neg.f64 (-.f64 (*.f64 a b) (*.f64 y x))))
(/.f64 (-.f64 (pow.f64 (*.f64 a b) 2) (pow.f64 (*.f64 y x) 2)) (-.f64 (*.f64 a b) (*.f64 y x)))
(/.f64 (fma.f64 y x (*.f64 a b)) 1)
(/.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 a b) 2)) (-.f64 (*.f64 y x) (*.f64 a b)))
(/.f64 (-.f64 (pow.f64 (*.f64 a b) 2) (pow.f64 (*.f64 y x) 2)) (-.f64 (*.f64 a b) (*.f64 y x)))
(/.f64 (fma.f64 y x (*.f64 a b)) 1)
(pow.f64 (fma.f64 a b (*.f64 y x)) 1)
(+.f64 1 (-.f64 (fma.f64 a b (*.f64 y x)) 1))
(+.f64 (fma.f64 y x (*.f64 a b)) 0)
(fma.f64 y x (*.f64 a b))
(pow.f64 (pow.f64 (fma.f64 a b (*.f64 y x)) 3) 1/3)
(+.f64 1 (-.f64 (fma.f64 a b (*.f64 y x)) 1))
(+.f64 (fma.f64 y x (*.f64 a b)) 0)
(fma.f64 y x (*.f64 a b))
(pow.f64 (cbrt.f64 (fma.f64 a b (*.f64 y x))) 3)
(+.f64 1 (-.f64 (fma.f64 a b (*.f64 y x)) 1))
(+.f64 (fma.f64 y x (*.f64 a b)) 0)
(fma.f64 y x (*.f64 a b))
(pow.f64 (sqrt.f64 (fma.f64 a b (*.f64 y x))) 2)
(+.f64 1 (-.f64 (fma.f64 a b (*.f64 y x)) 1))
(+.f64 (fma.f64 y x (*.f64 a b)) 0)
(fma.f64 y x (*.f64 a b))
(sqrt.f64 (pow.f64 (fma.f64 a b (*.f64 y x)) 2))
(+.f64 1 (-.f64 (fma.f64 a b (*.f64 y x)) 1))
(+.f64 (fma.f64 y x (*.f64 a b)) 0)
(fma.f64 y x (*.f64 a b))
(log.f64 (exp.f64 (fma.f64 a b (*.f64 y x))))
(+.f64 1 (-.f64 (fma.f64 a b (*.f64 y x)) 1))
(+.f64 (fma.f64 y x (*.f64 a b)) 0)
(fma.f64 y x (*.f64 a b))
(cbrt.f64 (pow.f64 (fma.f64 a b (*.f64 y x)) 3))
(+.f64 1 (-.f64 (fma.f64 a b (*.f64 y x)) 1))
(+.f64 (fma.f64 y x (*.f64 a b)) 0)
(fma.f64 y x (*.f64 a b))
(expm1.f64 (log1p.f64 (fma.f64 a b (*.f64 y x))))
(+.f64 1 (-.f64 (fma.f64 a b (*.f64 y x)) 1))
(+.f64 (fma.f64 y x (*.f64 a b)) 0)
(fma.f64 y x (*.f64 a b))
(log1p.f64 (expm1.f64 (fma.f64 a b (*.f64 y x))))
(+.f64 1 (-.f64 (fma.f64 a b (*.f64 y x)) 1))
(+.f64 (fma.f64 y x (*.f64 a b)) 0)
(fma.f64 y x (*.f64 a b))
(exp.f64 (log.f64 (fma.f64 a b (*.f64 y x))))
(+.f64 1 (-.f64 (fma.f64 a b (*.f64 y x)) 1))
(+.f64 (fma.f64 y x (*.f64 a b)) 0)
(fma.f64 y x (*.f64 a b))
(fma.f64 a b (*.f64 y x))
(+.f64 1 (-.f64 (fma.f64 a b (*.f64 y x)) 1))
(+.f64 (fma.f64 y x (*.f64 a b)) 0)
(fma.f64 y x (*.f64 a b))
(fma.f64 b a (*.f64 y x))
(+.f64 1 (-.f64 (fma.f64 a b (*.f64 y x)) 1))
(+.f64 (fma.f64 y x (*.f64 a b)) 0)
(fma.f64 y x (*.f64 a b))
(fma.f64 y x (*.f64 a b))
(+.f64 1 (-.f64 (fma.f64 a b (*.f64 y x)) 1))
(+.f64 (fma.f64 y x (*.f64 a b)) 0)
(fma.f64 x y (*.f64 a b))
(+.f64 1 (-.f64 (fma.f64 a b (*.f64 y x)) 1))
(+.f64 (fma.f64 y x (*.f64 a b)) 0)
(fma.f64 y x (*.f64 a b))
(fma.f64 1 (*.f64 a b) (*.f64 y x))
(+.f64 1 (-.f64 (fma.f64 a b (*.f64 y x)) 1))
(+.f64 (fma.f64 y x (*.f64 a b)) 0)
(fma.f64 y x (*.f64 a b))
(fma.f64 1 (*.f64 y x) (*.f64 a b))
(+.f64 1 (-.f64 (fma.f64 a b (*.f64 y x)) 1))
(+.f64 (fma.f64 y x (*.f64 a b)) 0)
(fma.f64 y x (*.f64 a b))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 y x)) 2) (cbrt.f64 (*.f64 y x)) (*.f64 a b))
(+.f64 1 (-.f64 (fma.f64 a b (*.f64 y x)) 1))
(+.f64 (fma.f64 y x (*.f64 a b)) 0)
(fma.f64 y x (*.f64 a b))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 a b)) 2) (cbrt.f64 (*.f64 a b)) (*.f64 y x))
(+.f64 1 (-.f64 (fma.f64 a b (*.f64 y x)) 1))
(+.f64 (fma.f64 y x (*.f64 a b)) 0)
(fma.f64 y x (*.f64 a b))
(fma.f64 (sqrt.f64 (*.f64 y x)) (sqrt.f64 (*.f64 y x)) (*.f64 a b))
(+.f64 1 (-.f64 (fma.f64 a b (*.f64 y x)) 1))
(+.f64 (fma.f64 y x (*.f64 a b)) 0)
(fma.f64 y x (*.f64 a b))
(fma.f64 (sqrt.f64 (*.f64 a b)) (sqrt.f64 (*.f64 a b)) (*.f64 y x))
(+.f64 1 (-.f64 (fma.f64 a b (*.f64 y x)) 1))
(+.f64 (fma.f64 y x (*.f64 a b)) 0)
(fma.f64 y x (*.f64 a b))

localize8.0ms (0.2%)

Compiler

Compiled 19 to 8 computations (57.9% saved)

eval17.0ms (0.4%)

Compiler

Compiled 1256 to 391 computations (68.9% saved)

prune19.0ms (0.4%)

Pruning

9 alts after pruning (4 fresh and 5 done)

PrunedKeptTotal
New87188
Fresh134
Picked011
Done044
Total88997
Error
0b
Counts
97 → 9
Alt Table
Click to see full alt table
StatusErrorProgram
22.6b
(fma.f64 y x (*.f64 a b))
21.0b
(fma.f64 t z (*.f64 a b))
22.6b
(fma.f64 b a (*.f64 y x))
19.3b
(+.f64 (*.f64 y x) (*.f64 t z))
22.6b
(+.f64 (*.f64 a b) (*.f64 y x))
21.0b
(+.f64 (*.f64 a b) (*.f64 t z))
41.4b
(*.f64 y x)
40.0b
(*.f64 t z)
43.5b
(*.f64 a b)
Compiler

Compiled 102 to 72 computations (29.4% saved)

localize4.0ms (0.1%)

Compiler

Compiled 11 to 7 computations (36.4% saved)

localize9.0ms (0.2%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (*.f64 a b) (*.f64 t z))
Compiler

Compiled 23 to 9 computations (60.9% saved)

series3.0ms (0.1%)

Counts
1 → 12
Calls

12 calls:

TimeVariablePointExpression
0.0ms
a
@0
(+.f64 (*.f64 a b) (*.f64 t z))
0.0ms
a
@inf
(+.f64 (*.f64 a b) (*.f64 t z))
0.0ms
b
@inf
(+.f64 (*.f64 a b) (*.f64 t z))
0.0ms
b
@-inf
(+.f64 (*.f64 a b) (*.f64 t z))
0.0ms
t
@inf
(+.f64 (*.f64 a b) (*.f64 t z))

rewrite47.0ms (1%)

Algorithm
batch-egg-rewrite
Rules
903×pow1_binary64
833×add-log-exp_binary64
833×log1p-expm1-u_binary64
833×expm1-log1p-u_binary64
814×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
088
11688
222708
Stop Event
node limit
Counts
1 → 37
Calls
Call 1
Inputs
(+.f64 (*.f64 a b) (*.f64 t z))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (fma.f64 a b (*.f64 t z))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (*.f64 a b) 2) (-.f64 (*.f64 a b) (*.f64 t z))) (/.f64 (pow.f64 (*.f64 t z) 2) (-.f64 (*.f64 a b) (*.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 a b (*.f64 t z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 a b (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 a b (*.f64 t z))) (pow.f64 (cbrt.f64 (fma.f64 a b (*.f64 t z))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 a b (*.f64 t z))) 2) (cbrt.f64 (fma.f64 a b (*.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 a b (*.f64 t z))) (sqrt.f64 (fma.f64 a b (*.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (*.f64 t z) 3)) (/.f64 1 (+.f64 (pow.f64 (*.f64 a b) 2) (*.f64 (*.f64 t z) (-.f64 (*.f64 t z) (*.f64 a b))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (*.f64 a b) 2) (pow.f64 (*.f64 t z) 2)) (/.f64 1 (-.f64 (*.f64 a b) (*.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (pow.f64 (*.f64 a b) 2) (*.f64 (*.f64 t z) (-.f64 (*.f64 t z) (*.f64 a b)))) (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (*.f64 t z) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 (*.f64 a b) (*.f64 t z)) (-.f64 (pow.f64 (*.f64 a b) 2) (pow.f64 (*.f64 t z) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (*.f64 t z) 3)) (+.f64 (pow.f64 (*.f64 a b) 2) (*.f64 (*.f64 t z) (-.f64 (*.f64 t z) (*.f64 a b)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (*.f64 t z) 3)) (+.f64 (pow.f64 (*.f64 t z) 2) (-.f64 (pow.f64 (*.f64 a b) 2) (*.f64 (*.f64 a b) (*.f64 t z)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 a b) 2) (pow.f64 (*.f64 t z) 2)) (-.f64 (*.f64 a b) (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (*.f64 t z) 3))) (neg.f64 (+.f64 (pow.f64 (*.f64 a b) 2) (*.f64 (*.f64 t z) (-.f64 (*.f64 t z) (*.f64 a b))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 a b) 2) (pow.f64 (*.f64 t z) 2))) (neg.f64 (-.f64 (*.f64 a b) (*.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 t z) 2) (pow.f64 (*.f64 a b) 2)) (-.f64 (*.f64 t z) (*.f64 a b)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 a b (*.f64 t z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 a b (*.f64 t z)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 a b (*.f64 t z))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 a b (*.f64 t z))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 a b (*.f64 t z)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 a b (*.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 a b (*.f64 t z)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 a b (*.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 a b (*.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 a b (*.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 a b (*.f64 t z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 b a (*.f64 t z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 t z (*.f64 a b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 z t (*.f64 a b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 a b) (*.f64 t z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 t z) (*.f64 a b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 t z)) 2) (cbrt.f64 (*.f64 t z)) (*.f64 a b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 a b)) 2) (cbrt.f64 (*.f64 a b)) (*.f64 t z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 t z)) (sqrt.f64 (*.f64 t z)) (*.f64 a b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 a b)) (sqrt.f64 (*.f64 a b)) (*.f64 t z))))))

simplify42.0ms (0.9%)

Algorithm
egg-herbie
Rules
530×fma-neg_binary64
518×div-sub_binary64
516×distribute-rgt-in_binary64
437×cancel-sign-sub-inv_binary64
286×distribute-rgt-neg-in_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
088810
1232707
2824629
33589527
Stop Event
node limit
Counts
49 → 44
Calls
Call 1
Inputs
(*.f64 t z)
(*.f64 a b)
(*.f64 a b)
(*.f64 t z)
(*.f64 a b)
(*.f64 a b)
(*.f64 a b)
(*.f64 t z)
(*.f64 t z)
(*.f64 a b)
(*.f64 t z)
(*.f64 t z)
(-.f64 (+.f64 1 (fma.f64 a b (*.f64 t z))) 1)
(-.f64 (/.f64 (pow.f64 (*.f64 a b) 2) (-.f64 (*.f64 a b) (*.f64 t z))) (/.f64 (pow.f64 (*.f64 t z) 2) (-.f64 (*.f64 a b) (*.f64 t z))))
(*.f64 (fma.f64 a b (*.f64 t z)) 1)
(*.f64 1 (fma.f64 a b (*.f64 t z)))
(*.f64 (cbrt.f64 (fma.f64 a b (*.f64 t z))) (pow.f64 (cbrt.f64 (fma.f64 a b (*.f64 t z))) 2))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 a b (*.f64 t z))) 2) (cbrt.f64 (fma.f64 a b (*.f64 t z))))
(*.f64 (sqrt.f64 (fma.f64 a b (*.f64 t z))) (sqrt.f64 (fma.f64 a b (*.f64 t z))))
(*.f64 (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (*.f64 t z) 3)) (/.f64 1 (+.f64 (pow.f64 (*.f64 a b) 2) (*.f64 (*.f64 t z) (-.f64 (*.f64 t z) (*.f64 a b))))))
(*.f64 (-.f64 (pow.f64 (*.f64 a b) 2) (pow.f64 (*.f64 t z) 2)) (/.f64 1 (-.f64 (*.f64 a b) (*.f64 t z))))
(/.f64 1 (/.f64 (+.f64 (pow.f64 (*.f64 a b) 2) (*.f64 (*.f64 t z) (-.f64 (*.f64 t z) (*.f64 a b)))) (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (*.f64 t z) 3))))
(/.f64 1 (/.f64 (-.f64 (*.f64 a b) (*.f64 t z)) (-.f64 (pow.f64 (*.f64 a b) 2) (pow.f64 (*.f64 t z) 2))))
(/.f64 (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (*.f64 t z) 3)) (+.f64 (pow.f64 (*.f64 a b) 2) (*.f64 (*.f64 t z) (-.f64 (*.f64 t z) (*.f64 a b)))))
(/.f64 (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (*.f64 t z) 3)) (+.f64 (pow.f64 (*.f64 t z) 2) (-.f64 (pow.f64 (*.f64 a b) 2) (*.f64 (*.f64 a b) (*.f64 t z)))))
(/.f64 (-.f64 (pow.f64 (*.f64 a b) 2) (pow.f64 (*.f64 t z) 2)) (-.f64 (*.f64 a b) (*.f64 t z)))
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (*.f64 t z) 3))) (neg.f64 (+.f64 (pow.f64 (*.f64 a b) 2) (*.f64 (*.f64 t z) (-.f64 (*.f64 t z) (*.f64 a b))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 a b) 2) (pow.f64 (*.f64 t z) 2))) (neg.f64 (-.f64 (*.f64 a b) (*.f64 t z))))
(/.f64 (-.f64 (pow.f64 (*.f64 t z) 2) (pow.f64 (*.f64 a b) 2)) (-.f64 (*.f64 t z) (*.f64 a b)))
(pow.f64 (fma.f64 a b (*.f64 t z)) 1)
(pow.f64 (pow.f64 (fma.f64 a b (*.f64 t z)) 3) 1/3)
(pow.f64 (cbrt.f64 (fma.f64 a b (*.f64 t z))) 3)
(pow.f64 (sqrt.f64 (fma.f64 a b (*.f64 t z))) 2)
(sqrt.f64 (pow.f64 (fma.f64 a b (*.f64 t z)) 2))
(log.f64 (exp.f64 (fma.f64 a b (*.f64 t z))))
(cbrt.f64 (pow.f64 (fma.f64 a b (*.f64 t z)) 3))
(expm1.f64 (log1p.f64 (fma.f64 a b (*.f64 t z))))
(log1p.f64 (expm1.f64 (fma.f64 a b (*.f64 t z))))
(exp.f64 (log.f64 (fma.f64 a b (*.f64 t z))))
(fma.f64 a b (*.f64 t z))
(fma.f64 b a (*.f64 t z))
(fma.f64 t z (*.f64 a b))
(fma.f64 z t (*.f64 a b))
(fma.f64 1 (*.f64 a b) (*.f64 t z))
(fma.f64 1 (*.f64 t z) (*.f64 a b))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 t z)) 2) (cbrt.f64 (*.f64 t z)) (*.f64 a b))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 a b)) 2) (cbrt.f64 (*.f64 a b)) (*.f64 t z))
(fma.f64 (sqrt.f64 (*.f64 t z)) (sqrt.f64 (*.f64 t z)) (*.f64 a b))
(fma.f64 (sqrt.f64 (*.f64 a b)) (sqrt.f64 (*.f64 a b)) (*.f64 t z))
Outputs
(*.f64 t z)
(*.f64 a b)
(*.f64 a b)
(*.f64 t z)
(*.f64 a b)
(*.f64 a b)
(*.f64 a b)
(*.f64 t z)
(*.f64 t z)
(*.f64 a b)
(*.f64 t z)
(*.f64 t z)
(-.f64 (+.f64 1 (fma.f64 a b (*.f64 t z))) 1)
(+.f64 1 (-.f64 (fma.f64 a b (*.f64 t z)) 1))
(+.f64 (fma.f64 t z (*.f64 a b)) 0)
(fma.f64 t z (*.f64 a b))
(-.f64 (/.f64 (pow.f64 (*.f64 a b) 2) (-.f64 (*.f64 a b) (*.f64 t z))) (/.f64 (pow.f64 (*.f64 t z) 2) (-.f64 (*.f64 a b) (*.f64 t z))))
(/.f64 (-.f64 (pow.f64 (*.f64 a b) 2) (pow.f64 (*.f64 t z) 2)) (-.f64 (*.f64 a b) (*.f64 t z)))
(/.f64 (fma.f64 t z (*.f64 a b)) 1)
(*.f64 (fma.f64 a b (*.f64 t z)) 1)
(+.f64 1 (-.f64 (fma.f64 a b (*.f64 t z)) 1))
(+.f64 (fma.f64 t z (*.f64 a b)) 0)
(fma.f64 t z (*.f64 a b))
(*.f64 1 (fma.f64 a b (*.f64 t z)))
(+.f64 1 (-.f64 (fma.f64 a b (*.f64 t z)) 1))
(+.f64 (fma.f64 t z (*.f64 a b)) 0)
(fma.f64 t z (*.f64 a b))
(*.f64 (cbrt.f64 (fma.f64 a b (*.f64 t z))) (pow.f64 (cbrt.f64 (fma.f64 a b (*.f64 t z))) 2))
(+.f64 1 (-.f64 (fma.f64 a b (*.f64 t z)) 1))
(+.f64 (fma.f64 t z (*.f64 a b)) 0)
(fma.f64 t z (*.f64 a b))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 a b (*.f64 t z))) 2) (cbrt.f64 (fma.f64 a b (*.f64 t z))))
(+.f64 1 (-.f64 (fma.f64 a b (*.f64 t z)) 1))
(+.f64 (fma.f64 t z (*.f64 a b)) 0)
(fma.f64 t z (*.f64 a b))
(*.f64 (sqrt.f64 (fma.f64 a b (*.f64 t z))) (sqrt.f64 (fma.f64 a b (*.f64 t z))))
(+.f64 1 (-.f64 (fma.f64 a b (*.f64 t z)) 1))
(+.f64 (fma.f64 t z (*.f64 a b)) 0)
(fma.f64 t z (*.f64 a b))
(*.f64 (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (*.f64 t z) 3)) (/.f64 1 (+.f64 (pow.f64 (*.f64 a b) 2) (*.f64 (*.f64 t z) (-.f64 (*.f64 t z) (*.f64 a b))))))
(/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (*.f64 t z) 3)) 1) (+.f64 (pow.f64 (*.f64 a b) 2) (*.f64 t (*.f64 z (-.f64 (*.f64 t z) (*.f64 a b))))))
(/.f64 (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (*.f64 t z) 3)) (fma.f64 t (*.f64 z (-.f64 (*.f64 t z) (*.f64 a b))) (pow.f64 (*.f64 a b) 2)))
(*.f64 (-.f64 (pow.f64 (*.f64 a b) 2) (pow.f64 (*.f64 t z) 2)) (/.f64 1 (-.f64 (*.f64 a b) (*.f64 t z))))
(/.f64 (-.f64 (pow.f64 (*.f64 a b) 2) (pow.f64 (*.f64 t z) 2)) (-.f64 (*.f64 a b) (*.f64 t z)))
(/.f64 (fma.f64 t z (*.f64 a b)) 1)
(/.f64 1 (/.f64 (+.f64 (pow.f64 (*.f64 a b) 2) (*.f64 (*.f64 t z) (-.f64 (*.f64 t z) (*.f64 a b)))) (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (*.f64 t z) 3))))
(/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (*.f64 t z) 3)) 1) (+.f64 (pow.f64 (*.f64 a b) 2) (*.f64 t (*.f64 z (-.f64 (*.f64 t z) (*.f64 a b))))))
(/.f64 (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (*.f64 t z) 3)) (fma.f64 t (*.f64 z (-.f64 (*.f64 t z) (*.f64 a b))) (pow.f64 (*.f64 a b) 2)))
(/.f64 1 (/.f64 (-.f64 (*.f64 a b) (*.f64 t z)) (-.f64 (pow.f64 (*.f64 a b) 2) (pow.f64 (*.f64 t z) 2))))
(/.f64 (-.f64 (pow.f64 (*.f64 a b) 2) (pow.f64 (*.f64 t z) 2)) (-.f64 (*.f64 a b) (*.f64 t z)))
(/.f64 (fma.f64 t z (*.f64 a b)) 1)
(/.f64 (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (*.f64 t z) 3)) (+.f64 (pow.f64 (*.f64 a b) 2) (*.f64 (*.f64 t z) (-.f64 (*.f64 t z) (*.f64 a b)))))
(/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (*.f64 t z) 3)) 1) (+.f64 (pow.f64 (*.f64 a b) 2) (*.f64 t (*.f64 z (-.f64 (*.f64 t z) (*.f64 a b))))))
(/.f64 (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (*.f64 t z) 3)) (fma.f64 t (*.f64 z (-.f64 (*.f64 t z) (*.f64 a b))) (pow.f64 (*.f64 a b) 2)))
(/.f64 (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (*.f64 t z) 3)) (+.f64 (pow.f64 (*.f64 t z) 2) (-.f64 (pow.f64 (*.f64 a b) 2) (*.f64 (*.f64 a b) (*.f64 t z)))))
(/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (*.f64 t z) 3)) 1) (+.f64 (pow.f64 (*.f64 a b) 2) (*.f64 t (*.f64 z (-.f64 (*.f64 t z) (*.f64 a b))))))
(/.f64 (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (*.f64 t z) 3)) (fma.f64 t (*.f64 z (-.f64 (*.f64 t z) (*.f64 a b))) (pow.f64 (*.f64 a b) 2)))
(/.f64 (-.f64 (pow.f64 (*.f64 a b) 2) (pow.f64 (*.f64 t z) 2)) (-.f64 (*.f64 a b) (*.f64 t z)))
(/.f64 (fma.f64 t z (*.f64 a b)) 1)
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (*.f64 t z) 3))) (neg.f64 (+.f64 (pow.f64 (*.f64 a b) 2) (*.f64 (*.f64 t z) (-.f64 (*.f64 t z) (*.f64 a b))))))
(/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (*.f64 t z) 3)) 1) (+.f64 (pow.f64 (*.f64 a b) 2) (*.f64 t (*.f64 z (-.f64 (*.f64 t z) (*.f64 a b))))))
(/.f64 (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (*.f64 t z) 3)) (fma.f64 t (*.f64 z (-.f64 (*.f64 t z) (*.f64 a b))) (pow.f64 (*.f64 a b) 2)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 a b) 2) (pow.f64 (*.f64 t z) 2))) (neg.f64 (-.f64 (*.f64 a b) (*.f64 t z))))
(/.f64 (-.f64 (pow.f64 (*.f64 a b) 2) (pow.f64 (*.f64 t z) 2)) (-.f64 (*.f64 a b) (*.f64 t z)))
(/.f64 (fma.f64 t z (*.f64 a b)) 1)
(/.f64 (-.f64 (pow.f64 (*.f64 t z) 2) (pow.f64 (*.f64 a b) 2)) (-.f64 (*.f64 t z) (*.f64 a b)))
(/.f64 (-.f64 (pow.f64 (*.f64 a b) 2) (pow.f64 (*.f64 t z) 2)) (-.f64 (*.f64 a b) (*.f64 t z)))
(/.f64 (fma.f64 t z (*.f64 a b)) 1)
(pow.f64 (fma.f64 a b (*.f64 t z)) 1)
(+.f64 1 (-.f64 (fma.f64 a b (*.f64 t z)) 1))
(+.f64 (fma.f64 t z (*.f64 a b)) 0)
(fma.f64 t z (*.f64 a b))
(pow.f64 (pow.f64 (fma.f64 a b (*.f64 t z)) 3) 1/3)
(+.f64 1 (-.f64 (fma.f64 a b (*.f64 t z)) 1))
(+.f64 (fma.f64 t z (*.f64 a b)) 0)
(fma.f64 t z (*.f64 a b))
(pow.f64 (cbrt.f64 (fma.f64 a b (*.f64 t z))) 3)
(+.f64 1 (-.f64 (fma.f64 a b (*.f64 t z)) 1))
(+.f64 (fma.f64 t z (*.f64 a b)) 0)
(fma.f64 t z (*.f64 a b))
(pow.f64 (sqrt.f64 (fma.f64 a b (*.f64 t z))) 2)
(+.f64 1 (-.f64 (fma.f64 a b (*.f64 t z)) 1))
(+.f64 (fma.f64 t z (*.f64 a b)) 0)
(fma.f64 t z (*.f64 a b))
(sqrt.f64 (pow.f64 (fma.f64 a b (*.f64 t z)) 2))
(+.f64 1 (-.f64 (fma.f64 a b (*.f64 t z)) 1))
(+.f64 (fma.f64 t z (*.f64 a b)) 0)
(fma.f64 t z (*.f64 a b))
(log.f64 (exp.f64 (fma.f64 a b (*.f64 t z))))
(+.f64 1 (-.f64 (fma.f64 a b (*.f64 t z)) 1))
(+.f64 (fma.f64 t z (*.f64 a b)) 0)
(fma.f64 t z (*.f64 a b))
(cbrt.f64 (pow.f64 (fma.f64 a b (*.f64 t z)) 3))
(+.f64 1 (-.f64 (fma.f64 a b (*.f64 t z)) 1))
(+.f64 (fma.f64 t z (*.f64 a b)) 0)
(fma.f64 t z (*.f64 a b))
(expm1.f64 (log1p.f64 (fma.f64 a b (*.f64 t z))))
(+.f64 1 (-.f64 (fma.f64 a b (*.f64 t z)) 1))
(+.f64 (fma.f64 t z (*.f64 a b)) 0)
(fma.f64 t z (*.f64 a b))
(log1p.f64 (expm1.f64 (fma.f64 a b (*.f64 t z))))
(+.f64 1 (-.f64 (fma.f64 a b (*.f64 t z)) 1))
(+.f64 (fma.f64 t z (*.f64 a b)) 0)
(fma.f64 t z (*.f64 a b))
(exp.f64 (log.f64 (fma.f64 a b (*.f64 t z))))
(+.f64 1 (-.f64 (fma.f64 a b (*.f64 t z)) 1))
(+.f64 (fma.f64 t z (*.f64 a b)) 0)
(fma.f64 t z (*.f64 a b))
(fma.f64 a b (*.f64 t z))
(+.f64 1 (-.f64 (fma.f64 a b (*.f64 t z)) 1))
(+.f64 (fma.f64 t z (*.f64 a b)) 0)
(fma.f64 t z (*.f64 a b))
(fma.f64 b a (*.f64 t z))
(+.f64 1 (-.f64 (fma.f64 a b (*.f64 t z)) 1))
(+.f64 (fma.f64 t z (*.f64 a b)) 0)
(fma.f64 t z (*.f64 a b))
(fma.f64 t z (*.f64 a b))
(+.f64 1 (-.f64 (fma.f64 a b (*.f64 t z)) 1))
(+.f64 (fma.f64 t z (*.f64 a b)) 0)
(fma.f64 z t (*.f64 a b))
(+.f64 1 (-.f64 (fma.f64 a b (*.f64 t z)) 1))
(+.f64 (fma.f64 t z (*.f64 a b)) 0)
(fma.f64 t z (*.f64 a b))
(fma.f64 1 (*.f64 a b) (*.f64 t z))
(+.f64 1 (-.f64 (fma.f64 a b (*.f64 t z)) 1))
(+.f64 (fma.f64 t z (*.f64 a b)) 0)
(fma.f64 t z (*.f64 a b))
(fma.f64 1 (*.f64 t z) (*.f64 a b))
(+.f64 1 (-.f64 (fma.f64 a b (*.f64 t z)) 1))
(+.f64 (fma.f64 t z (*.f64 a b)) 0)
(fma.f64 t z (*.f64 a b))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 t z)) 2) (cbrt.f64 (*.f64 t z)) (*.f64 a b))
(+.f64 1 (-.f64 (fma.f64 a b (*.f64 t z)) 1))
(+.f64 (fma.f64 t z (*.f64 a b)) 0)
(fma.f64 t z (*.f64 a b))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 a b)) 2) (cbrt.f64 (*.f64 a b)) (*.f64 t z))
(+.f64 1 (-.f64 (fma.f64 a b (*.f64 t z)) 1))
(+.f64 (fma.f64 t z (*.f64 a b)) 0)
(fma.f64 t z (*.f64 a b))
(fma.f64 (sqrt.f64 (*.f64 t z)) (sqrt.f64 (*.f64 t z)) (*.f64 a b))
(+.f64 1 (-.f64 (fma.f64 a b (*.f64 t z)) 1))
(+.f64 (fma.f64 t z (*.f64 a b)) 0)
(fma.f64 t z (*.f64 a b))
(fma.f64 (sqrt.f64 (*.f64 a b)) (sqrt.f64 (*.f64 a b)) (*.f64 t z))
(+.f64 1 (-.f64 (fma.f64 a b (*.f64 t z)) 1))
(+.f64 (fma.f64 t z (*.f64 a b)) 0)
(fma.f64 t z (*.f64 a b))

localize8.0ms (0.2%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(fma.f64 b a (*.f64 y x))
Compiler

Compiled 19 to 8 computations (57.9% saved)

series4.0ms (0.1%)

Counts
1 → 48
Calls

12 calls:

TimeVariablePointExpression
0.0ms
b
@0
(fma.f64 b a (*.f64 y x))
0.0ms
a
@-inf
(fma.f64 b a (*.f64 y x))
0.0ms
a
@inf
(fma.f64 b a (*.f64 y x))
0.0ms
y
@0
(fma.f64 b a (*.f64 y x))
0.0ms
a
@0
(fma.f64 b a (*.f64 y x))

rewrite41.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
661×pow1_binary64
602×add-log-exp_binary64
602×log1p-expm1-u_binary64
602×expm1-log1p-u_binary64
587×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
078
11378
216268
Stop Event
node limit
Counts
1 → 21
Calls
Call 1
Inputs
(fma.f64 b a (*.f64 y x))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y x) (*.f64 b a))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 b a) (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 b a) 1) (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (fma.f64 b a (*.f64 y x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 b a (*.f64 y x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 b a (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 b a (*.f64 y x))) (pow.f64 (cbrt.f64 (fma.f64 b a (*.f64 y x))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 b a (*.f64 y x))) 2) (cbrt.f64 (fma.f64 b a (*.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 b a (*.f64 y x))) (sqrt.f64 (fma.f64 b a (*.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 b a) 3) (pow.f64 (*.f64 y x) 3)) (+.f64 (*.f64 (*.f64 b a) (*.f64 b a)) (-.f64 (pow.f64 (*.f64 y x) 2) (*.f64 (*.f64 b a) (*.f64 y x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 b a) (*.f64 b a)) (pow.f64 (*.f64 y x) 2)) (-.f64 (*.f64 b a) (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 b a (*.f64 y x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 b a (*.f64 y x)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 b a (*.f64 y x))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 b a (*.f64 y x))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 b a (*.f64 y x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 b a (*.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 b a (*.f64 y x)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 b a (*.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 b a (*.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 b a (*.f64 y x))))))))

simplify50.0ms (1.1%)

Algorithm
egg-herbie
Rules
594×fma-neg_binary64
520×div-sub_binary64
441×associate-*l*_binary64
378×log-prod_binary64
365×associate-*r*_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
056566
1149563
2613562
33456542
46867542
Stop Event
node limit
Counts
69 → 33
Calls
Call 1
Inputs
(*.f64 y x)
(+.f64 (*.f64 a b) (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(*.f64 a b)
(+.f64 (*.f64 a b) (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(*.f64 a b)
(+.f64 (*.f64 a b) (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 a b) (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(*.f64 a b)
(+.f64 (*.f64 a b) (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(*.f64 a b)
(+.f64 (*.f64 a b) (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(*.f64 a b)
(+.f64 (*.f64 a b) (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 a b) (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 a b) (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(*.f64 a b)
(+.f64 (*.f64 a b) (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 a b) (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 a b) (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 b a))
(+.f64 (*.f64 b a) (*.f64 y x))
(+.f64 (*.f64 (*.f64 b a) 1) (*.f64 y x))
(-.f64 (+.f64 1 (fma.f64 b a (*.f64 y x))) 1)
(*.f64 (fma.f64 b a (*.f64 y x)) 1)
(*.f64 1 (fma.f64 b a (*.f64 y x)))
(*.f64 (cbrt.f64 (fma.f64 b a (*.f64 y x))) (pow.f64 (cbrt.f64 (fma.f64 b a (*.f64 y x))) 2))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 b a (*.f64 y x))) 2) (cbrt.f64 (fma.f64 b a (*.f64 y x))))
(*.f64 (sqrt.f64 (fma.f64 b a (*.f64 y x))) (sqrt.f64 (fma.f64 b a (*.f64 y x))))
(/.f64 (+.f64 (pow.f64 (*.f64 b a) 3) (pow.f64 (*.f64 y x) 3)) (+.f64 (*.f64 (*.f64 b a) (*.f64 b a)) (-.f64 (pow.f64 (*.f64 y x) 2) (*.f64 (*.f64 b a) (*.f64 y x)))))
(/.f64 (-.f64 (*.f64 (*.f64 b a) (*.f64 b a)) (pow.f64 (*.f64 y x) 2)) (-.f64 (*.f64 b a) (*.f64 y x)))
(pow.f64 (fma.f64 b a (*.f64 y x)) 1)
(pow.f64 (pow.f64 (fma.f64 b a (*.f64 y x)) 3) 1/3)
(pow.f64 (cbrt.f64 (fma.f64 b a (*.f64 y x))) 3)
(pow.f64 (sqrt.f64 (fma.f64 b a (*.f64 y x))) 2)
(sqrt.f64 (pow.f64 (fma.f64 b a (*.f64 y x)) 2))
(log.f64 (exp.f64 (fma.f64 b a (*.f64 y x))))
(cbrt.f64 (pow.f64 (fma.f64 b a (*.f64 y x)) 3))
(expm1.f64 (log1p.f64 (fma.f64 b a (*.f64 y x))))
(log1p.f64 (expm1.f64 (fma.f64 b a (*.f64 y x))))
(exp.f64 (log.f64 (fma.f64 b a (*.f64 y x))))
Outputs
(*.f64 y x)
(+.f64 (*.f64 a b) (*.f64 y x))
(fma.f64 a b (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(fma.f64 a b (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(fma.f64 a b (*.f64 y x))
(*.f64 a b)
(+.f64 (*.f64 a b) (*.f64 y x))
(fma.f64 a b (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(fma.f64 a b (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(fma.f64 a b (*.f64 y x))
(*.f64 a b)
(+.f64 (*.f64 a b) (*.f64 y x))
(fma.f64 a b (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(fma.f64 a b (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(fma.f64 a b (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 a b) (*.f64 y x))
(fma.f64 a b (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(fma.f64 a b (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(fma.f64 a b (*.f64 y x))
(*.f64 a b)
(+.f64 (*.f64 a b) (*.f64 y x))
(fma.f64 a b (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(fma.f64 a b (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(fma.f64 a b (*.f64 y x))
(*.f64 a b)
(+.f64 (*.f64 a b) (*.f64 y x))
(fma.f64 a b (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(fma.f64 a b (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(fma.f64 a b (*.f64 y x))
(*.f64 a b)
(+.f64 (*.f64 a b) (*.f64 y x))
(fma.f64 a b (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(fma.f64 a b (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(fma.f64 a b (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 a b) (*.f64 y x))
(fma.f64 a b (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(fma.f64 a b (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(fma.f64 a b (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 a b) (*.f64 y x))
(fma.f64 a b (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(fma.f64 a b (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(fma.f64 a b (*.f64 y x))
(*.f64 a b)
(+.f64 (*.f64 a b) (*.f64 y x))
(fma.f64 a b (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(fma.f64 a b (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(fma.f64 a b (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 a b) (*.f64 y x))
(fma.f64 a b (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(fma.f64 a b (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(fma.f64 a b (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 a b) (*.f64 y x))
(fma.f64 a b (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(fma.f64 a b (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(fma.f64 a b (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 b a))
(fma.f64 a b (*.f64 y x))
(+.f64 (*.f64 b a) (*.f64 y x))
(fma.f64 a b (*.f64 y x))
(+.f64 (*.f64 (*.f64 b a) 1) (*.f64 y x))
(fma.f64 a b (*.f64 y x))
(-.f64 (+.f64 1 (fma.f64 b a (*.f64 y x))) 1)
(fma.f64 a b (*.f64 y x))
(*.f64 (fma.f64 b a (*.f64 y x)) 1)
(fma.f64 a b (*.f64 y x))
(*.f64 1 (fma.f64 b a (*.f64 y x)))
(fma.f64 a b (*.f64 y x))
(*.f64 (cbrt.f64 (fma.f64 b a (*.f64 y x))) (pow.f64 (cbrt.f64 (fma.f64 b a (*.f64 y x))) 2))
(fma.f64 a b (*.f64 y x))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 b a (*.f64 y x))) 2) (cbrt.f64 (fma.f64 b a (*.f64 y x))))
(fma.f64 a b (*.f64 y x))
(*.f64 (sqrt.f64 (fma.f64 b a (*.f64 y x))) (sqrt.f64 (fma.f64 b a (*.f64 y x))))
(fma.f64 a b (*.f64 y x))
(/.f64 (+.f64 (pow.f64 (*.f64 b a) 3) (pow.f64 (*.f64 y x) 3)) (+.f64 (*.f64 (*.f64 b a) (*.f64 b a)) (-.f64 (pow.f64 (*.f64 y x) 2) (*.f64 (*.f64 b a) (*.f64 y x)))))
(/.f64 (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (*.f64 y x) 3)) (fma.f64 (*.f64 a b) (*.f64 a b) (-.f64 (pow.f64 (*.f64 y x) 2) (*.f64 (*.f64 y x) (*.f64 a b)))))
(/.f64 (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (*.f64 y x) 3)) (fma.f64 b (*.f64 (*.f64 a a) b) (*.f64 (*.f64 y x) (-.f64 (*.f64 y x) (*.f64 a b)))))
(/.f64 (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (*.f64 y x) 3)) (-.f64 (pow.f64 (*.f64 y x) 2) (*.f64 (*.f64 a b) (-.f64 (*.f64 y x) (*.f64 a b)))))
(/.f64 (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (*.f64 y x) 3)) (+.f64 (pow.f64 (*.f64 y x) 2) (*.f64 b (*.f64 a (-.f64 (*.f64 a b) (*.f64 y x))))))
(/.f64 (-.f64 (*.f64 (*.f64 b a) (*.f64 b a)) (pow.f64 (*.f64 y x) 2)) (-.f64 (*.f64 b a) (*.f64 y x)))
(/.f64 (fma.f64 (*.f64 a b) (*.f64 a b) (neg.f64 (pow.f64 (*.f64 y x) 2))) (-.f64 (*.f64 a b) (*.f64 y x)))
(/.f64 (-.f64 (*.f64 b (*.f64 (*.f64 a a) b)) (pow.f64 (*.f64 y x) 2)) (-.f64 (*.f64 a b) (*.f64 y x)))
(/.f64 (-.f64 (*.f64 b (*.f64 b (*.f64 a a))) (pow.f64 (*.f64 y x) 2)) (-.f64 (*.f64 a b) (*.f64 y x)))
(/.f64 (fma.f64 a b (*.f64 y x)) 1)
(pow.f64 (fma.f64 b a (*.f64 y x)) 1)
(fma.f64 a b (*.f64 y x))
(pow.f64 (pow.f64 (fma.f64 b a (*.f64 y x)) 3) 1/3)
(fma.f64 a b (*.f64 y x))
(pow.f64 (cbrt.f64 (fma.f64 b a (*.f64 y x))) 3)
(fma.f64 a b (*.f64 y x))
(pow.f64 (sqrt.f64 (fma.f64 b a (*.f64 y x))) 2)
(fma.f64 a b (*.f64 y x))
(sqrt.f64 (pow.f64 (fma.f64 b a (*.f64 y x)) 2))
(fma.f64 a b (*.f64 y x))
(log.f64 (exp.f64 (fma.f64 b a (*.f64 y x))))
(fma.f64 a b (*.f64 y x))
(cbrt.f64 (pow.f64 (fma.f64 b a (*.f64 y x)) 3))
(fma.f64 a b (*.f64 y x))
(expm1.f64 (log1p.f64 (fma.f64 b a (*.f64 y x))))
(fma.f64 a b (*.f64 y x))
(log1p.f64 (expm1.f64 (fma.f64 b a (*.f64 y x))))
(fma.f64 a b (*.f64 y x))
(exp.f64 (log.f64 (fma.f64 b a (*.f64 y x))))
(fma.f64 a b (*.f64 y x))

localize9.0ms (0.2%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(fma.f64 y x (*.f64 a b))
Compiler

Compiled 19 to 8 computations (57.9% saved)

series4.0ms (0.1%)

Counts
1 → 48
Calls

12 calls:

TimeVariablePointExpression
1.0ms
x
@inf
(fma.f64 y x (*.f64 a b))
0.0ms
x
@-inf
(fma.f64 y x (*.f64 a b))
0.0ms
y
@-inf
(fma.f64 y x (*.f64 a b))
0.0ms
y
@inf
(fma.f64 y x (*.f64 a b))
0.0ms
y
@0
(fma.f64 y x (*.f64 a b))

rewrite40.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
661×pow1_binary64
602×add-log-exp_binary64
602×log1p-expm1-u_binary64
602×expm1-log1p-u_binary64
587×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
078
11378
216268
Stop Event
node limit
Counts
1 → 21
Calls
Call 1
Inputs
(fma.f64 y x (*.f64 a b))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 a b) (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y x) (*.f64 a b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 y x) 1) (*.f64 a b))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (fma.f64 y x (*.f64 a b))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 y x (*.f64 a b)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 y x (*.f64 a b)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 y x (*.f64 a b))) (pow.f64 (cbrt.f64 (fma.f64 y x (*.f64 a b))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 y x (*.f64 a b))) 2) (cbrt.f64 (fma.f64 y x (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 y x (*.f64 a b))) (sqrt.f64 (fma.f64 y x (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (*.f64 a b) 3)) (+.f64 (*.f64 (*.f64 y x) (*.f64 y x)) (-.f64 (pow.f64 (*.f64 a b) 2) (*.f64 (*.f64 y x) (*.f64 a b)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 y x) (*.f64 y x)) (pow.f64 (*.f64 a b) 2)) (-.f64 (*.f64 y x) (*.f64 a b)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 y x (*.f64 a b)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 y x (*.f64 a b)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 y x (*.f64 a b))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 y x (*.f64 a b))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 y x (*.f64 a b)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 y x (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 y x (*.f64 a b)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 y x (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 y x (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 y x (*.f64 a b))))))))

simplify50.0ms (1.1%)

Algorithm
egg-herbie
Rules
594×fma-neg_binary64
500×div-sub_binary64
449×associate-*l*_binary64
379×log-prod_binary64
364×associate-*r*_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
054566
1147563
2613562
33467542
46866542
Stop Event
node limit
Counts
69 → 32
Calls
Call 1
Inputs
(*.f64 a b)
(+.f64 (*.f64 a b) (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 a b) (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 a b) (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(*.f64 a b)
(+.f64 (*.f64 a b) (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 a b) (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 a b) (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 a b) (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(*.f64 a b)
(+.f64 (*.f64 a b) (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(*.f64 a b)
(+.f64 (*.f64 a b) (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 a b) (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(*.f64 a b)
(+.f64 (*.f64 a b) (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(*.f64 a b)
(+.f64 (*.f64 a b) (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 a b))
(+.f64 (*.f64 (*.f64 y x) 1) (*.f64 a b))
(-.f64 (+.f64 1 (fma.f64 y x (*.f64 a b))) 1)
(*.f64 (fma.f64 y x (*.f64 a b)) 1)
(*.f64 1 (fma.f64 y x (*.f64 a b)))
(*.f64 (cbrt.f64 (fma.f64 y x (*.f64 a b))) (pow.f64 (cbrt.f64 (fma.f64 y x (*.f64 a b))) 2))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 y x (*.f64 a b))) 2) (cbrt.f64 (fma.f64 y x (*.f64 a b))))
(*.f64 (sqrt.f64 (fma.f64 y x (*.f64 a b))) (sqrt.f64 (fma.f64 y x (*.f64 a b))))
(/.f64 (+.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (*.f64 a b) 3)) (+.f64 (*.f64 (*.f64 y x) (*.f64 y x)) (-.f64 (pow.f64 (*.f64 a b) 2) (*.f64 (*.f64 y x) (*.f64 a b)))))
(/.f64 (-.f64 (*.f64 (*.f64 y x) (*.f64 y x)) (pow.f64 (*.f64 a b) 2)) (-.f64 (*.f64 y x) (*.f64 a b)))
(pow.f64 (fma.f64 y x (*.f64 a b)) 1)
(pow.f64 (pow.f64 (fma.f64 y x (*.f64 a b)) 3) 1/3)
(pow.f64 (cbrt.f64 (fma.f64 y x (*.f64 a b))) 3)
(pow.f64 (sqrt.f64 (fma.f64 y x (*.f64 a b))) 2)
(sqrt.f64 (pow.f64 (fma.f64 y x (*.f64 a b)) 2))
(log.f64 (exp.f64 (fma.f64 y x (*.f64 a b))))
(cbrt.f64 (pow.f64 (fma.f64 y x (*.f64 a b)) 3))
(expm1.f64 (log1p.f64 (fma.f64 y x (*.f64 a b))))
(log1p.f64 (expm1.f64 (fma.f64 y x (*.f64 a b))))
(exp.f64 (log.f64 (fma.f64 y x (*.f64 a b))))
Outputs
(*.f64 a b)
(+.f64 (*.f64 a b) (*.f64 y x))
(fma.f64 y x (*.f64 a b))
(fma.f64 a b (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(fma.f64 y x (*.f64 a b))
(fma.f64 a b (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(fma.f64 y x (*.f64 a b))
(fma.f64 a b (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 a b) (*.f64 y x))
(fma.f64 y x (*.f64 a b))
(fma.f64 a b (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(fma.f64 y x (*.f64 a b))
(fma.f64 a b (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(fma.f64 y x (*.f64 a b))
(fma.f64 a b (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 a b) (*.f64 y x))
(fma.f64 y x (*.f64 a b))
(fma.f64 a b (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(fma.f64 y x (*.f64 a b))
(fma.f64 a b (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(fma.f64 y x (*.f64 a b))
(fma.f64 a b (*.f64 y x))
(*.f64 a b)
(+.f64 (*.f64 a b) (*.f64 y x))
(fma.f64 y x (*.f64 a b))
(fma.f64 a b (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(fma.f64 y x (*.f64 a b))
(fma.f64 a b (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(fma.f64 y x (*.f64 a b))
(fma.f64 a b (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 a b) (*.f64 y x))
(fma.f64 y x (*.f64 a b))
(fma.f64 a b (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(fma.f64 y x (*.f64 a b))
(fma.f64 a b (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(fma.f64 y x (*.f64 a b))
(fma.f64 a b (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 a b) (*.f64 y x))
(fma.f64 y x (*.f64 a b))
(fma.f64 a b (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(fma.f64 y x (*.f64 a b))
(fma.f64 a b (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(fma.f64 y x (*.f64 a b))
(fma.f64 a b (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 a b) (*.f64 y x))
(fma.f64 y x (*.f64 a b))
(fma.f64 a b (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(fma.f64 y x (*.f64 a b))
(fma.f64 a b (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(fma.f64 y x (*.f64 a b))
(fma.f64 a b (*.f64 y x))
(*.f64 a b)
(+.f64 (*.f64 a b) (*.f64 y x))
(fma.f64 y x (*.f64 a b))
(fma.f64 a b (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(fma.f64 y x (*.f64 a b))
(fma.f64 a b (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(fma.f64 y x (*.f64 a b))
(fma.f64 a b (*.f64 y x))
(*.f64 a b)
(+.f64 (*.f64 a b) (*.f64 y x))
(fma.f64 y x (*.f64 a b))
(fma.f64 a b (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(fma.f64 y x (*.f64 a b))
(fma.f64 a b (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(fma.f64 y x (*.f64 a b))
(fma.f64 a b (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 a b) (*.f64 y x))
(fma.f64 y x (*.f64 a b))
(fma.f64 a b (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(fma.f64 y x (*.f64 a b))
(fma.f64 a b (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(fma.f64 y x (*.f64 a b))
(fma.f64 a b (*.f64 y x))
(*.f64 a b)
(+.f64 (*.f64 a b) (*.f64 y x))
(fma.f64 y x (*.f64 a b))
(fma.f64 a b (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(fma.f64 y x (*.f64 a b))
(fma.f64 a b (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(fma.f64 y x (*.f64 a b))
(fma.f64 a b (*.f64 y x))
(*.f64 a b)
(+.f64 (*.f64 a b) (*.f64 y x))
(fma.f64 y x (*.f64 a b))
(fma.f64 a b (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(fma.f64 y x (*.f64 a b))
(fma.f64 a b (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(fma.f64 y x (*.f64 a b))
(fma.f64 a b (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 y x))
(fma.f64 y x (*.f64 a b))
(fma.f64 a b (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 a b))
(fma.f64 y x (*.f64 a b))
(fma.f64 a b (*.f64 y x))
(+.f64 (*.f64 (*.f64 y x) 1) (*.f64 a b))
(fma.f64 y x (*.f64 a b))
(fma.f64 a b (*.f64 y x))
(-.f64 (+.f64 1 (fma.f64 y x (*.f64 a b))) 1)
(fma.f64 y x (*.f64 a b))
(fma.f64 a b (*.f64 y x))
(*.f64 (fma.f64 y x (*.f64 a b)) 1)
(fma.f64 y x (*.f64 a b))
(fma.f64 a b (*.f64 y x))
(*.f64 1 (fma.f64 y x (*.f64 a b)))
(fma.f64 y x (*.f64 a b))
(fma.f64 a b (*.f64 y x))
(*.f64 (cbrt.f64 (fma.f64 y x (*.f64 a b))) (pow.f64 (cbrt.f64 (fma.f64 y x (*.f64 a b))) 2))
(fma.f64 y x (*.f64 a b))
(fma.f64 a b (*.f64 y x))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 y x (*.f64 a b))) 2) (cbrt.f64 (fma.f64 y x (*.f64 a b))))
(fma.f64 y x (*.f64 a b))
(fma.f64 a b (*.f64 y x))
(*.f64 (sqrt.f64 (fma.f64 y x (*.f64 a b))) (sqrt.f64 (fma.f64 y x (*.f64 a b))))
(fma.f64 y x (*.f64 a b))
(fma.f64 a b (*.f64 y x))
(/.f64 (+.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (*.f64 a b) 3)) (+.f64 (*.f64 (*.f64 y x) (*.f64 y x)) (-.f64 (pow.f64 (*.f64 a b) 2) (*.f64 (*.f64 y x) (*.f64 a b)))))
(/.f64 (+.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (*.f64 a b) 3)) (fma.f64 (*.f64 y x) (*.f64 y x) (-.f64 (pow.f64 (*.f64 a b) 2) (*.f64 (*.f64 a b) (*.f64 y x)))))
(/.f64 (+.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (*.f64 a b) 3)) (fma.f64 y (*.f64 x (*.f64 y x)) (*.f64 (*.f64 a b) (-.f64 (*.f64 a b) (*.f64 y x)))))
(/.f64 (+.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (*.f64 a b) 3)) (+.f64 (pow.f64 (*.f64 a b) 2) (*.f64 (*.f64 y x) (-.f64 (*.f64 y x) (*.f64 a b)))))
(/.f64 (+.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (*.f64 a b) 3)) (+.f64 (pow.f64 (*.f64 a b) 2) (*.f64 y (*.f64 x (-.f64 (*.f64 y x) (*.f64 a b))))))
(/.f64 (-.f64 (*.f64 (*.f64 y x) (*.f64 y x)) (pow.f64 (*.f64 a b) 2)) (-.f64 (*.f64 y x) (*.f64 a b)))
(/.f64 (fma.f64 (*.f64 y x) (*.f64 y x) (neg.f64 (pow.f64 (*.f64 a b) 2))) (fma.f64 y x (*.f64 a (neg.f64 b))))
(/.f64 (-.f64 (*.f64 x (*.f64 x (*.f64 y y))) (pow.f64 (*.f64 a b) 2)) (-.f64 (*.f64 y x) (*.f64 a b)))
(/.f64 (fma.f64 a b (*.f64 y x)) 1)
(pow.f64 (fma.f64 y x (*.f64 a b)) 1)
(fma.f64 y x (*.f64 a b))
(fma.f64 a b (*.f64 y x))
(pow.f64 (pow.f64 (fma.f64 y x (*.f64 a b)) 3) 1/3)
(fma.f64 y x (*.f64 a b))
(fma.f64 a b (*.f64 y x))
(pow.f64 (cbrt.f64 (fma.f64 y x (*.f64 a b))) 3)
(fma.f64 y x (*.f64 a b))
(fma.f64 a b (*.f64 y x))
(pow.f64 (sqrt.f64 (fma.f64 y x (*.f64 a b))) 2)
(fma.f64 y x (*.f64 a b))
(fma.f64 a b (*.f64 y x))
(sqrt.f64 (pow.f64 (fma.f64 y x (*.f64 a b)) 2))
(fma.f64 y x (*.f64 a b))
(fma.f64 a b (*.f64 y x))
(log.f64 (exp.f64 (fma.f64 y x (*.f64 a b))))
(fma.f64 y x (*.f64 a b))
(fma.f64 a b (*.f64 y x))
(cbrt.f64 (pow.f64 (fma.f64 y x (*.f64 a b)) 3))
(fma.f64 y x (*.f64 a b))
(fma.f64 a b (*.f64 y x))
(expm1.f64 (log1p.f64 (fma.f64 y x (*.f64 a b))))
(fma.f64 y x (*.f64 a b))
(fma.f64 a b (*.f64 y x))
(log1p.f64 (expm1.f64 (fma.f64 y x (*.f64 a b))))
(fma.f64 y x (*.f64 a b))
(fma.f64 a b (*.f64 y x))
(exp.f64 (log.f64 (fma.f64 y x (*.f64 a b))))
(fma.f64 y x (*.f64 a b))
(fma.f64 a b (*.f64 y x))

eval20.0ms (0.4%)

Compiler

Compiled 1505 to 448 computations (70.2% saved)

prune21.0ms (0.5%)

Pruning

9 alts after pruning (0 fresh and 9 done)

PrunedKeptTotal
New1090109
Fresh000
Picked011
Done088
Total1099118
Error
0b
Counts
118 → 9
Alt Table
Click to see full alt table
StatusErrorProgram
22.6b
(fma.f64 y x (*.f64 a b))
21.0b
(fma.f64 t z (*.f64 a b))
22.6b
(fma.f64 b a (*.f64 y x))
19.3b
(+.f64 (*.f64 y x) (*.f64 t z))
22.6b
(+.f64 (*.f64 a b) (*.f64 y x))
21.0b
(+.f64 (*.f64 a b) (*.f64 t z))
41.4b
(*.f64 y x)
40.0b
(*.f64 t z)
43.5b
(*.f64 a b)
Compiler

Compiled 102 to 72 computations (29.4% saved)

regimes84.0ms (1.8%)

Counts
13 → 1
Calls
Call 1
Inputs
(*.f64 a b)
(*.f64 t z)
(*.f64 y x)
(+.f64 (*.f64 a b) (*.f64 t z))
(+.f64 (*.f64 a b) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a b))
(fma.f64 a b (*.f64 y x))
(fma.f64 b a (*.f64 y x))
(fma.f64 t z (*.f64 a b))
(fma.f64 y x (*.f64 a b))
(fma.f64 a b (fma.f64 x y (*.f64 z t)))
(fma.f64 x y (fma.f64 a b (*.f64 z t)))
Outputs
(fma.f64 a b (fma.f64 x y (*.f64 z t)))
Calls

11 calls:

8.0ms
t
8.0ms
(+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a b))
7.0ms
a
7.0ms
z
7.0ms
b
Results
ErrorSegmentsBranch
0.0b1x
0.0b1y
0.0b1z
0.0b1t
0.0b1a
0.0b1b
0.0b1(+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a b))
0.0b1(+.f64 (*.f64 x y) (*.f64 z t))
0.0b1(*.f64 x y)
0.0b1(*.f64 z t)
0.0b1(*.f64 a b)
Compiler

Compiled 188 to 101 computations (46.3% saved)

regimes73.0ms (1.6%)

Counts
11 → 1
Calls
Call 1
Inputs
(*.f64 a b)
(*.f64 t z)
(*.f64 y x)
(+.f64 (*.f64 a b) (*.f64 t z))
(+.f64 (*.f64 a b) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a b))
(fma.f64 a b (*.f64 y x))
(fma.f64 b a (*.f64 y x))
(fma.f64 t z (*.f64 a b))
(fma.f64 y x (*.f64 a b))
Outputs
(+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a b))
Calls

11 calls:

7.0ms
(+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a b))
7.0ms
y
7.0ms
t
7.0ms
a
6.0ms
(*.f64 a b)
Results
ErrorSegmentsBranch
0.0b1x
0.0b1y
0.0b1z
0.0b1t
0.0b1a
0.0b1b
0.0b1(+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a b))
0.0b1(+.f64 (*.f64 x y) (*.f64 z t))
0.0b1(*.f64 x y)
0.0b1(*.f64 z t)
0.0b1(*.f64 a b)
Compiler

Compiled 170 to 97 computations (42.9% saved)

regimes142.0ms (3.1%)

Counts
6 → 3
Calls
Call 1
Inputs
(*.f64 a b)
(*.f64 t z)
(*.f64 y x)
(+.f64 (*.f64 a b) (*.f64 t z))
(+.f64 (*.f64 a b) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 t z))
Outputs
(+.f64 (*.f64 a b) (*.f64 t z))
(+.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (*.f64 a b) (*.f64 t z))
Calls

7 calls:

25.0ms
z
21.0ms
b
21.0ms
y
21.0ms
x
18.0ms
t
Results
ErrorSegmentsBranch
10.2b5x
8.5b5y
11.7b6z
9.8b3t
9.9b3a
9.1b4b
7.9b3(*.f64 a b)
Compiler

Compiled 87 to 55 computations (36.8% saved)

bsearch33.0ms (0.7%)

Algorithm
binary-search
Steps
TimeLeftRight
15.0ms
8.863307866719545e-62
8.18238541511002e-58
19.0ms
-7.988048542114591e-61
-4.388901817952023e-71
Results
29.0ms288×body256valid
Compiler

Compiled 494 to 361 computations (26.9% saved)

regimes146.0ms (3.2%)

Counts
5 → 5
Calls
Call 1
Inputs
(*.f64 a b)
(*.f64 t z)
(*.f64 y x)
(+.f64 (*.f64 a b) (*.f64 t z))
(+.f64 (*.f64 a b) (*.f64 y x))
Outputs
(+.f64 (*.f64 a b) (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 t z))
(+.f64 (*.f64 a b) (*.f64 y x))
(+.f64 (*.f64 a b) (*.f64 t z))
(+.f64 (*.f64 a b) (*.f64 y x))
Calls

7 calls:

28.0ms
(*.f64 a b)
25.0ms
b
23.0ms
a
22.0ms
y
18.0ms
x
Results
ErrorSegmentsBranch
11.9b5x
8.9b5y
14.6b3z
9.8b3t
15.8b6a
12.8b5b
15.0b7(*.f64 a b)
Compiler

Compiled 80 to 54 computations (32.5% saved)

bsearch49.0ms (1.1%)

Algorithm
binary-search
Steps
TimeLeftRight
12.0ms
6.919787247246071e+46
3.783544504153638e+47
15.0ms
1.8179068929575407e-172
1.3620385977524985e-169
7.0ms
8.924329514678397e-205
1.4127105268355153e-204
14.0ms
-7.12694002290963e-85
-1.1557987400875613e-86
Results
43.0ms400×body256valid
1.0msbody256infinite
Compiler

Compiled 726 to 519 computations (28.5% saved)

regimes110.0ms (2.4%)

Counts
4 → 5
Calls
Call 1
Inputs
(*.f64 a b)
(*.f64 t z)
(*.f64 y x)
(+.f64 (*.f64 a b) (*.f64 t z))
Outputs
(*.f64 y x)
(+.f64 (*.f64 a b) (*.f64 t z))
(*.f64 y x)
(+.f64 (*.f64 a b) (*.f64 t z))
(*.f64 y x)
Calls

7 calls:

21.0ms
x
21.0ms
t
17.0ms
b
16.0ms
(*.f64 a b)
14.0ms
a
Results
ErrorSegmentsBranch
14.1b5x
14.2b3y
19.8b3z
16.8b5t
18.4b3a
16.7b5b
17.0b5(*.f64 a b)
Compiler

Compiled 73 to 53 computations (27.4% saved)

bsearch72.0ms (1.6%)

Algorithm
binary-search
Steps
TimeLeftRight
13.0ms
1.2260486971679467e-70
3.457010675449507e-69
18.0ms
-3.739750758711863e+161
-7.167325562361284e+158
19.0ms
-5.8618308912426045e+209
-9.526955441542562e+205
22.0ms
-1.5006889723803556e+242
-1.9851439619666922e+239
Results
54.0ms496×body256valid
12.0ms109×body256infinite
Compiler

Compiled 770 to 577 computations (25.1% saved)

regimes173.0ms (3.8%)

Counts
3 → 9
Calls
Call 1
Inputs
(*.f64 a b)
(*.f64 t z)
(*.f64 y x)
Outputs
(*.f64 a b)
(*.f64 t z)
(*.f64 y x)
(*.f64 t z)
(*.f64 y x)
(*.f64 t z)
(*.f64 y x)
(*.f64 t z)
(*.f64 a b)
Calls

7 calls:

32.0ms
x
28.0ms
(*.f64 a b)
26.0ms
y
21.0ms
a
21.0ms
b
Results
ErrorSegmentsBranch
26.0b11x
26.3b8y
29.9b6z
26.6b6t
28.9b6a
26.7b6b
24.6b9(*.f64 a b)
Compiler

Compiled 66 to 52 computations (21.2% saved)

bsearch114.0ms (2.5%)

Algorithm
binary-search
Steps
TimeLeftRight
18.0ms
0.0017916419727570217
23227852412564016.0
15.0ms
8.863307866719545e-62
8.18238541511002e-58
15.0ms
5.891472416348406e-188
9.565969507067575e-184
13.0ms
1.3384200056598264e-278
2.759429562882041e-277
15.0ms
-3.761349891242108e-245
-3.0134765896804295e-249
13.0ms
-3.5575586012768076e-123
-3.129675000536317e-125
15.0ms
-4.033264760259173e-88
-2.4901766242751414e-91
11.0ms
-4.352479309077012e+46
-5.169216606781516e+45
Results
103.0ms992×body256valid
Compiler

Compiled 1234 to 995 computations (19.4% saved)

regimes86.0ms (1.9%)

Accuracy

Total -31.4b remaining (-103.3%)

Threshold costs -31.4b (-103.3%)

Counts
2 → 3
Calls
Call 1
Inputs
(*.f64 a b)
(*.f64 t z)
Outputs
(*.f64 a b)
(*.f64 t z)
(*.f64 a b)
Calls

7 calls:

18.0ms
x
13.0ms
y
11.0ms
a
11.0ms
b
10.0ms
z
Results
ErrorSegmentsBranch
35.1b6x
36.4b4y
33.8b3z
32.1b3t
32.7b3a
33.6b3b
30.4b3(*.f64 a b)
Compiler

Compiled 63 to 51 computations (19% saved)

bsearch30.0ms (0.7%)

Algorithm
binary-search
Steps
TimeLeftRight
18.0ms
0.0017916419727570217
23227852412564016.0
11.0ms
-4.352479309077012e+46
-5.169216606781516e+45
Results
26.0ms256×body256valid
Compiler

Compiled 314 to 259 computations (17.5% saved)

simplify10.0ms (0.2%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
080348
187348
Stop Event
done
saturated
Calls
Call 1
Inputs
(fma.f64 a b (fma.f64 x y (*.f64 z t)))
(+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a b))
(if (<=.f64 (*.f64 a b) -7740321367461889/30354201441027016733116592294117482916287606860189680019559568902170379456331382784) (+.f64 (*.f64 a b) (*.f64 t z)) (if (<=.f64 (*.f64 a b) 5300541194335153/7067388259113537318333190002971674063309935587502475832486424805170479104) (+.f64 (*.f64 y x) (*.f64 t z)) (+.f64 (*.f64 a b) (*.f64 t z))))
(if (<=.f64 y -46479077901639/68351585149469122636640694597425667667286544715412888638305331450311031224980497600734786781970432) (+.f64 (*.f64 a b) (*.f64 y x)) (if (<=.f64 y 7907239084383009/5648027917416434993898217684409255726702707823703155049366803861725387660722396999811747841990459993941795730996567993156246593731756781895253106176973892212861592182965432241145264144985407055447514718957669060731469824) (+.f64 (*.f64 a b) (*.f64 t z)) (if (<=.f64 y 7614394265021173/1087770609288739018116276647019455748771006705104961378712461595034426490595025393129804804639189577049885346787832834079429794483512744426310696916513970896780966442670885312576979206144) (+.f64 (*.f64 a b) (*.f64 y x)) (if (<=.f64 y 169999999999999991227865634741617211129987072000) (+.f64 (*.f64 a b) (*.f64 t z)) (+.f64 (*.f64 a b) (*.f64 y x))))))
(if (<=.f64 x -719999999999999965623303027469927544127768117176981601778068610949773634550471045575453441444234947871527721725223508698072148510089199116912001808930226778586382408015914666716860207563603642556275431321822299562379714329611060697643352064) (*.f64 y x) (if (<=.f64 x -36000000000000000259558637433633178866772508321199893577041730710628883299380433359889995816666625872959322882955986840226564026708795694523270431855797318964431121123988552613045255500689903118237458577227776) (+.f64 (*.f64 a b) (*.f64 t z)) (if (<=.f64 x -38000000000000001184604059407390278574614409103717706774685052072469290013532176229150804183887380772193932305758859331684329783486452283987893988658151061192704) (*.f64 y x) (if (<=.f64 x 3205403672172453/971334446112864535459730953411759453321203419526069760625906204869452142602604249088) (+.f64 (*.f64 a b) (*.f64 t z)) (*.f64 y x)))))
(if (<=.f64 (*.f64 a b) -5200000000000000141798143018876626942321229824) (*.f64 a b) (if (<=.f64 (*.f64 a b) -103028258140179/1119872371088902105278721140284222139060822748617324767449994550481895935590080472690438746635803557888) (*.f64 t z) (if (<=.f64 (*.f64 a b) -6668774368961165/47634102635436893179040485073748265163400240214004076398607741693502376385799646303105256699577209032590132615988260237052123652332890095616) (*.f64 y x) (if (<=.f64 (*.f64 a b) -615015778615681/246006311446272417135694895366447328831463738361430131889861407236509911043906984606020737387080298687645418100644428599105378407753391907201399550988776412284181771799458695654166637769167516870901097035133833253825096549816225533764062867857067136321933279232) (*.f64 t z) (if (<=.f64 (*.f64 a b) 4550515905739161/79833612381388792466254908521473542642698050417418301660101889697488475674758562631398318619705428043573697873767699809758897519535743746429566871931393256812800226918043427060701508857774519487306134269781756959733232418204834815555554210737921766300284836275030241665694339809213760397115392) (*.f64 y x) (if (<=.f64 (*.f64 a b) 7103380800453147/1224720827664335609236962600350409901130557945655466490308353887654080091579137561403602952202220552420938147431280980285494456125931768646260680344573194358953094033321469230156313571586348749061881856) (*.f64 t z) (if (<=.f64 (*.f64 a b) 5500124238772519/28948022309329048855892746252171976963317496166410141009864396001978282409984) (*.f64 y x) (if (<=.f64 (*.f64 a b) 480000) (*.f64 t z) (*.f64 a b)))))))))
(if (<=.f64 (*.f64 a b) -10199999999999999473671938084497032667799224320) (*.f64 a b) (if (<=.f64 (*.f64 a b) 2100) (*.f64 t z) (*.f64 a b)))
(*.f64 a b)
Outputs
(fma.f64 a b (fma.f64 x y (*.f64 z t)))
(+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a b))
(+.f64 (+.f64 (*.f64 z t) (*.f64 x y)) (*.f64 a b))
(if (<=.f64 (*.f64 a b) -7740321367461889/30354201441027016733116592294117482916287606860189680019559568902170379456331382784) (+.f64 (*.f64 a b) (*.f64 t z)) (if (<=.f64 (*.f64 a b) 5300541194335153/7067388259113537318333190002971674063309935587502475832486424805170479104) (+.f64 (*.f64 y x) (*.f64 t z)) (+.f64 (*.f64 a b) (*.f64 t z))))
(if (<=.f64 (*.f64 a b) -7740321367461889/30354201441027016733116592294117482916287606860189680019559568902170379456331382784) (+.f64 (*.f64 a b) (*.f64 z t)) (if (<=.f64 (*.f64 a b) 5300541194335153/7067388259113537318333190002971674063309935587502475832486424805170479104) (+.f64 (*.f64 z t) (*.f64 x y)) (+.f64 (*.f64 a b) (*.f64 z t))))
(if (<=.f64 y -46479077901639/68351585149469122636640694597425667667286544715412888638305331450311031224980497600734786781970432) (+.f64 (*.f64 a b) (*.f64 y x)) (if (<=.f64 y 7907239084383009/5648027917416434993898217684409255726702707823703155049366803861725387660722396999811747841990459993941795730996567993156246593731756781895253106176973892212861592182965432241145264144985407055447514718957669060731469824) (+.f64 (*.f64 a b) (*.f64 t z)) (if (<=.f64 y 7614394265021173/1087770609288739018116276647019455748771006705104961378712461595034426490595025393129804804639189577049885346787832834079429794483512744426310696916513970896780966442670885312576979206144) (+.f64 (*.f64 a b) (*.f64 y x)) (if (<=.f64 y 169999999999999991227865634741617211129987072000) (+.f64 (*.f64 a b) (*.f64 t z)) (+.f64 (*.f64 a b) (*.f64 y x))))))
(if (<=.f64 y -46479077901639/68351585149469122636640694597425667667286544715412888638305331450311031224980497600734786781970432) (+.f64 (*.f64 a b) (*.f64 x y)) (if (<=.f64 y 7907239084383009/5648027917416434993898217684409255726702707823703155049366803861725387660722396999811747841990459993941795730996567993156246593731756781895253106176973892212861592182965432241145264144985407055447514718957669060731469824) (+.f64 (*.f64 a b) (*.f64 z t)) (if (<=.f64 y 7614394265021173/1087770609288739018116276647019455748771006705104961378712461595034426490595025393129804804639189577049885346787832834079429794483512744426310696916513970896780966442670885312576979206144) (+.f64 (*.f64 a b) (*.f64 x y)) (if (<=.f64 y 169999999999999991227865634741617211129987072000) (+.f64 (*.f64 a b) (*.f64 z t)) (+.f64 (*.f64 a b) (*.f64 x y))))))
(if (<=.f64 x -719999999999999965623303027469927544127768117176981601778068610949773634550471045575453441444234947871527721725223508698072148510089199116912001808930226778586382408015914666716860207563603642556275431321822299562379714329611060697643352064) (*.f64 y x) (if (<=.f64 x -36000000000000000259558637433633178866772508321199893577041730710628883299380433359889995816666625872959322882955986840226564026708795694523270431855797318964431121123988552613045255500689903118237458577227776) (+.f64 (*.f64 a b) (*.f64 t z)) (if (<=.f64 x -38000000000000001184604059407390278574614409103717706774685052072469290013532176229150804183887380772193932305758859331684329783486452283987893988658151061192704) (*.f64 y x) (if (<=.f64 x 3205403672172453/971334446112864535459730953411759453321203419526069760625906204869452142602604249088) (+.f64 (*.f64 a b) (*.f64 t z)) (*.f64 y x)))))
(if (<=.f64 x -719999999999999965623303027469927544127768117176981601778068610949773634550471045575453441444234947871527721725223508698072148510089199116912001808930226778586382408015914666716860207563603642556275431321822299562379714329611060697643352064) (*.f64 x y) (if (<=.f64 x -36000000000000000259558637433633178866772508321199893577041730710628883299380433359889995816666625872959322882955986840226564026708795694523270431855797318964431121123988552613045255500689903118237458577227776) (+.f64 (*.f64 a b) (*.f64 z t)) (if (<=.f64 x -38000000000000001184604059407390278574614409103717706774685052072469290013532176229150804183887380772193932305758859331684329783486452283987893988658151061192704) (*.f64 x y) (if (<=.f64 x 3205403672172453/971334446112864535459730953411759453321203419526069760625906204869452142602604249088) (+.f64 (*.f64 a b) (*.f64 z t)) (*.f64 x y)))))
(if (<=.f64 (*.f64 a b) -5200000000000000141798143018876626942321229824) (*.f64 a b) (if (<=.f64 (*.f64 a b) -103028258140179/1119872371088902105278721140284222139060822748617324767449994550481895935590080472690438746635803557888) (*.f64 t z) (if (<=.f64 (*.f64 a b) -6668774368961165/47634102635436893179040485073748265163400240214004076398607741693502376385799646303105256699577209032590132615988260237052123652332890095616) (*.f64 y x) (if (<=.f64 (*.f64 a b) -615015778615681/246006311446272417135694895366447328831463738361430131889861407236509911043906984606020737387080298687645418100644428599105378407753391907201399550988776412284181771799458695654166637769167516870901097035133833253825096549816225533764062867857067136321933279232) (*.f64 t z) (if (<=.f64 (*.f64 a b) 4550515905739161/79833612381388792466254908521473542642698050417418301660101889697488475674758562631398318619705428043573697873767699809758897519535743746429566871931393256812800226918043427060701508857774519487306134269781756959733232418204834815555554210737921766300284836275030241665694339809213760397115392) (*.f64 y x) (if (<=.f64 (*.f64 a b) 7103380800453147/1224720827664335609236962600350409901130557945655466490308353887654080091579137561403602952202220552420938147431280980285494456125931768646260680344573194358953094033321469230156313571586348749061881856) (*.f64 t z) (if (<=.f64 (*.f64 a b) 5500124238772519/28948022309329048855892746252171976963317496166410141009864396001978282409984) (*.f64 y x) (if (<=.f64 (*.f64 a b) 480000) (*.f64 t z) (*.f64 a b)))))))))
(if (<=.f64 (*.f64 a b) -5200000000000000141798143018876626942321229824) (*.f64 a b) (if (<=.f64 (*.f64 a b) -103028258140179/1119872371088902105278721140284222139060822748617324767449994550481895935590080472690438746635803557888) (*.f64 z t) (if (<=.f64 (*.f64 a b) -6668774368961165/47634102635436893179040485073748265163400240214004076398607741693502376385799646303105256699577209032590132615988260237052123652332890095616) (*.f64 x y) (if (<=.f64 (*.f64 a b) -615015778615681/246006311446272417135694895366447328831463738361430131889861407236509911043906984606020737387080298687645418100644428599105378407753391907201399550988776412284181771799458695654166637769167516870901097035133833253825096549816225533764062867857067136321933279232) (*.f64 z t) (if (<=.f64 (*.f64 a b) 4550515905739161/79833612381388792466254908521473542642698050417418301660101889697488475674758562631398318619705428043573697873767699809758897519535743746429566871931393256812800226918043427060701508857774519487306134269781756959733232418204834815555554210737921766300284836275030241665694339809213760397115392) (*.f64 x y) (if (<=.f64 (*.f64 a b) 7103380800453147/1224720827664335609236962600350409901130557945655466490308353887654080091579137561403602952202220552420938147431280980285494456125931768646260680344573194358953094033321469230156313571586348749061881856) (*.f64 z t) (if (<=.f64 (*.f64 a b) 5500124238772519/28948022309329048855892746252171976963317496166410141009864396001978282409984) (*.f64 x y) (if (<=.f64 (*.f64 a b) 480000) (*.f64 z t) (*.f64 a b)))))))))
(if (<=.f64 (*.f64 a b) -10199999999999999473671938084497032667799224320) (*.f64 a b) (if (<=.f64 (*.f64 a b) 2100) (*.f64 t z) (*.f64 a b)))
(if (<=.f64 (*.f64 a b) -10199999999999999473671938084497032667799224320) (*.f64 a b) (if (<=.f64 (*.f64 a b) 2100) (*.f64 z t) (*.f64 a b)))
(*.f64 a b)
Compiler

Compiled 290 to 136 computations (53.1% saved)

soundness10.0ms (0.2%)

Algorithm
egg-herbie
Rules
18×fma-def_binary64
+-commutative_binary64
*-commutative_binary64
associate-+r+_binary64
associate-+l+_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01214
12012
23612
34612
Stop Event
saturated
Compiler

Compiled 65 to 41 computations (36.9% saved)

end72.0ms (1.6%)

Remove

(sort a b)

(sort z t)

(sort x y)

Compiler

Compiled 338 to 129 computations (61.8% saved)

Profiling

Loading profile data...