Details

Time bar (total: 38.9s)

analyze737.0ms (1.9%)

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 28 to 20 computations (28.6% saved)

sample2.8s (7.3%)

Results
1.7s8254×body256valid
1.1s4719×body256infinite
0.0msbody1024valid
0.0msbody512valid
Bogosity

preprocess70.0ms (0.2%)

Algorithm
egg-herbie
Rules
853×sub-neg_binary64
619×fma-neg_binary64
567×fma-def_binary64
428×associate-+l+_binary64
390×associate--r+_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0111496
1369432
21332400
37029400
066
Stop Event
saturated
node limit
Calls
Call 1
Inputs
0
1
2
3
4
5
Outputs
0
1
2
3
4
5
Call 2
Inputs
(+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 y 1) z)) (*.f64 (-.f64 t 1) a)) (*.f64 (-.f64 (+.f64 y t) 2) b))
(+.f64 (-.f64 (-.f64 y (*.f64 (-.f64 x 1) z)) (*.f64 (-.f64 t 1) a)) (*.f64 (-.f64 (+.f64 x t) 2) b))
(+.f64 (-.f64 (-.f64 z (*.f64 (-.f64 y 1) x)) (*.f64 (-.f64 t 1) a)) (*.f64 (-.f64 (+.f64 y t) 2) b))
(+.f64 (-.f64 (-.f64 t (*.f64 (-.f64 y 1) z)) (*.f64 (-.f64 x 1) a)) (*.f64 (-.f64 (+.f64 y x) 2) b))
(+.f64 (-.f64 (-.f64 a (*.f64 (-.f64 y 1) z)) (*.f64 (-.f64 t 1) x)) (*.f64 (-.f64 (+.f64 y t) 2) b))
(+.f64 (-.f64 (-.f64 b (*.f64 (-.f64 y 1) z)) (*.f64 (-.f64 t 1) a)) (*.f64 (-.f64 (+.f64 y t) 2) x))
(+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 z 1) y)) (*.f64 (-.f64 t 1) a)) (*.f64 (-.f64 (+.f64 z t) 2) b))
(+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 t 1) z)) (*.f64 (-.f64 y 1) a)) (*.f64 (-.f64 (+.f64 t y) 2) b))
(+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 a 1) z)) (*.f64 (-.f64 t 1) y)) (*.f64 (-.f64 (+.f64 a t) 2) b))
(+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 b 1) z)) (*.f64 (-.f64 t 1) a)) (*.f64 (-.f64 (+.f64 b t) 2) y))
(+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 y 1) t)) (*.f64 (-.f64 z 1) a)) (*.f64 (-.f64 (+.f64 y z) 2) b))
(+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 y 1) a)) (*.f64 (-.f64 t 1) z)) (*.f64 (-.f64 (+.f64 y t) 2) b))
(+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 y 1) b)) (*.f64 (-.f64 t 1) a)) (*.f64 (-.f64 (+.f64 y t) 2) z))
(+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 y 1) z)) (*.f64 (-.f64 a 1) t)) (*.f64 (-.f64 (+.f64 y a) 2) b))
(+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 y 1) z)) (*.f64 (-.f64 b 1) a)) (*.f64 (-.f64 (+.f64 y b) 2) t))
(+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 y 1) z)) (*.f64 (-.f64 t 1) b)) (*.f64 (-.f64 (+.f64 y t) 2) a))
Outputs
(+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 y 1) z)) (*.f64 (-.f64 t 1) a)) (*.f64 (-.f64 (+.f64 y t) 2) b))
(+.f64 (-.f64 x (+.f64 (*.f64 (+.f64 y -1) z) (*.f64 (+.f64 t -1) a))) (*.f64 (+.f64 y (-.f64 t 2)) b))
(fma.f64 (-.f64 (+.f64 y t) 2) b (-.f64 x (fma.f64 (+.f64 y -1) z (*.f64 (+.f64 t -1) a))))
(fma.f64 (+.f64 t (-.f64 y 2)) b (fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)))
(+.f64 (-.f64 (-.f64 y (*.f64 (-.f64 x 1) z)) (*.f64 (-.f64 t 1) a)) (*.f64 (-.f64 (+.f64 x t) 2) b))
(+.f64 (-.f64 y (+.f64 (*.f64 z (+.f64 x -1)) (*.f64 (+.f64 t -1) a))) (*.f64 b (+.f64 x (-.f64 t 2))))
(fma.f64 b (+.f64 x (+.f64 t -2)) (-.f64 y (fma.f64 z (+.f64 x -1) (*.f64 (+.f64 t -1) a))))
(fma.f64 b (+.f64 x (+.f64 t -2)) (fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 x) y)))
(+.f64 (-.f64 (-.f64 z (*.f64 (-.f64 y 1) x)) (*.f64 (-.f64 t 1) a)) (*.f64 (-.f64 (+.f64 y t) 2) b))
(+.f64 (*.f64 (+.f64 y (-.f64 t 2)) b) (-.f64 z (+.f64 (*.f64 x (+.f64 y -1)) (*.f64 (+.f64 t -1) a))))
(fma.f64 (-.f64 (+.f64 y t) 2) b (-.f64 z (fma.f64 x (+.f64 y -1) (*.f64 (+.f64 t -1) a))))
(fma.f64 (+.f64 t (-.f64 y 2)) b (fma.f64 a (-.f64 1 t) (fma.f64 x (-.f64 1 y) z)))
(+.f64 (-.f64 (-.f64 t (*.f64 (-.f64 y 1) z)) (*.f64 (-.f64 x 1) a)) (*.f64 (-.f64 (+.f64 y x) 2) b))
(+.f64 (-.f64 (-.f64 t (*.f64 (+.f64 y -1) z)) (*.f64 a (+.f64 x -1))) (*.f64 b (+.f64 y (-.f64 x 2))))
(fma.f64 b (+.f64 x (+.f64 y -2)) (-.f64 t (fma.f64 (+.f64 y -1) z (*.f64 a (+.f64 x -1)))))
(fma.f64 b (+.f64 x (-.f64 y 2)) (fma.f64 a (-.f64 1 x) (fma.f64 z (-.f64 1 y) t)))
(+.f64 (-.f64 (-.f64 a (*.f64 (-.f64 y 1) z)) (*.f64 (-.f64 t 1) x)) (*.f64 (-.f64 (+.f64 y t) 2) b))
(+.f64 (*.f64 (+.f64 y (-.f64 t 2)) b) (-.f64 a (+.f64 (*.f64 (+.f64 y -1) z) (*.f64 x (+.f64 t -1)))))
(fma.f64 (-.f64 (+.f64 y t) 2) b (-.f64 a (fma.f64 (+.f64 y -1) z (*.f64 x (+.f64 t -1)))))
(fma.f64 (+.f64 t (-.f64 y 2)) b (fma.f64 x (-.f64 1 t) (fma.f64 z (-.f64 1 y) a)))
(+.f64 (-.f64 (-.f64 b (*.f64 (-.f64 y 1) z)) (*.f64 (-.f64 t 1) a)) (*.f64 (-.f64 (+.f64 y t) 2) x))
(+.f64 (-.f64 b (+.f64 (*.f64 (+.f64 y -1) z) (*.f64 (+.f64 t -1) a))) (*.f64 x (+.f64 y (-.f64 t 2))))
(fma.f64 x (-.f64 (+.f64 y t) 2) (-.f64 b (fma.f64 (+.f64 y -1) z (*.f64 (+.f64 t -1) a))))
(fma.f64 x (+.f64 t (-.f64 y 2)) (fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) b)))
(+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 z 1) y)) (*.f64 (-.f64 t 1) a)) (*.f64 (-.f64 (+.f64 z t) 2) b))
(+.f64 (-.f64 x (+.f64 (*.f64 y (+.f64 z -1)) (*.f64 (+.f64 t -1) a))) (*.f64 b (+.f64 z (-.f64 t 2))))
(fma.f64 b (+.f64 t (+.f64 z -2)) (-.f64 x (fma.f64 y (+.f64 z -1) (*.f64 (+.f64 t -1) a))))
(fma.f64 b (+.f64 z (+.f64 t -2)) (fma.f64 a (-.f64 1 t) (fma.f64 y (-.f64 1 z) x)))
(+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 t 1) z)) (*.f64 (-.f64 y 1) a)) (*.f64 (-.f64 (+.f64 t y) 2) b))
(+.f64 (*.f64 (+.f64 y (-.f64 t 2)) b) (-.f64 (-.f64 x (*.f64 z (+.f64 t -1))) (*.f64 (+.f64 y -1) a)))
(fma.f64 (-.f64 (+.f64 y t) 2) b (-.f64 x (fma.f64 (+.f64 y -1) a (*.f64 z (+.f64 t -1)))))
(fma.f64 (+.f64 t (-.f64 y 2)) b (fma.f64 z (-.f64 1 t) (fma.f64 a (-.f64 1 y) x)))
(+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 a 1) z)) (*.f64 (-.f64 t 1) y)) (*.f64 (-.f64 (+.f64 a t) 2) b))
(+.f64 (-.f64 x (+.f64 (*.f64 z (+.f64 a -1)) (*.f64 y (+.f64 t -1)))) (*.f64 b (+.f64 a (-.f64 t 2))))
(fma.f64 b (+.f64 t (+.f64 a -2)) (-.f64 x (fma.f64 z (+.f64 a -1) (*.f64 y (+.f64 t -1)))))
(fma.f64 b (+.f64 t (+.f64 a -2)) (fma.f64 y (-.f64 1 t) (fma.f64 z (-.f64 1 a) x)))
(+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 b 1) z)) (*.f64 (-.f64 t 1) a)) (*.f64 (-.f64 (+.f64 b t) 2) y))
(+.f64 (-.f64 x (+.f64 (*.f64 z (+.f64 b -1)) (*.f64 (+.f64 t -1) a))) (*.f64 y (+.f64 b (-.f64 t 2))))
(fma.f64 y (+.f64 t (-.f64 b 2)) (-.f64 x (fma.f64 z (+.f64 b -1) (*.f64 (+.f64 t -1) a))))
(fma.f64 y (+.f64 t (-.f64 b 2)) (fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 b) x)))
(+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 y 1) t)) (*.f64 (-.f64 z 1) a)) (*.f64 (-.f64 (+.f64 y z) 2) b))
(+.f64 (-.f64 (-.f64 x (*.f64 (+.f64 y -1) t)) (*.f64 a (+.f64 z -1))) (*.f64 b (+.f64 y (-.f64 z 2))))
(fma.f64 b (+.f64 y (+.f64 z -2)) (-.f64 x (fma.f64 (+.f64 y -1) t (*.f64 a (+.f64 z -1)))))
(fma.f64 b (+.f64 y (+.f64 z -2)) (fma.f64 a (-.f64 1 z) (fma.f64 t (-.f64 1 y) x)))
(+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 y 1) a)) (*.f64 (-.f64 t 1) z)) (*.f64 (-.f64 (+.f64 y t) 2) b))
(+.f64 (*.f64 (+.f64 y (-.f64 t 2)) b) (-.f64 (-.f64 x (*.f64 z (+.f64 t -1))) (*.f64 (+.f64 y -1) a)))
(fma.f64 (-.f64 (+.f64 y t) 2) b (-.f64 x (fma.f64 (+.f64 y -1) a (*.f64 z (+.f64 t -1)))))
(fma.f64 (+.f64 t (-.f64 y 2)) b (fma.f64 z (-.f64 1 t) (fma.f64 a (-.f64 1 y) x)))
(+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 y 1) b)) (*.f64 (-.f64 t 1) a)) (*.f64 (-.f64 (+.f64 y t) 2) z))
(+.f64 (-.f64 x (+.f64 (*.f64 (+.f64 y -1) b) (*.f64 (+.f64 t -1) a))) (*.f64 z (+.f64 y (-.f64 t 2))))
(fma.f64 z (-.f64 (+.f64 y t) 2) (-.f64 x (fma.f64 (+.f64 y -1) b (*.f64 (+.f64 t -1) a))))
(fma.f64 z (+.f64 t (-.f64 y 2)) (fma.f64 a (-.f64 1 t) (fma.f64 b (-.f64 1 y) x)))
(+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 y 1) z)) (*.f64 (-.f64 a 1) t)) (*.f64 (-.f64 (+.f64 y a) 2) b))
(+.f64 (-.f64 x (+.f64 (*.f64 (+.f64 y -1) z) (*.f64 t (+.f64 a -1)))) (*.f64 b (+.f64 y (-.f64 a 2))))
(fma.f64 b (+.f64 y (+.f64 a -2)) (-.f64 x (fma.f64 (+.f64 y -1) z (*.f64 t (+.f64 a -1)))))
(fma.f64 b (+.f64 a (-.f64 y 2)) (fma.f64 t (-.f64 1 a) (fma.f64 z (-.f64 1 y) x)))
(+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 y 1) z)) (*.f64 (-.f64 b 1) a)) (*.f64 (-.f64 (+.f64 y b) 2) t))
(+.f64 (-.f64 (-.f64 x (*.f64 (+.f64 y -1) z)) (*.f64 a (+.f64 b -1))) (*.f64 t (+.f64 y (-.f64 b 2))))
(fma.f64 t (+.f64 y (-.f64 b 2)) (-.f64 x (fma.f64 (+.f64 y -1) z (*.f64 a (+.f64 b -1)))))
(fma.f64 t (+.f64 y (-.f64 b 2)) (fma.f64 a (-.f64 1 b) (fma.f64 z (-.f64 1 y) x)))
(+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 y 1) z)) (*.f64 (-.f64 t 1) b)) (*.f64 (-.f64 (+.f64 y t) 2) a))
(+.f64 (-.f64 x (+.f64 (*.f64 (+.f64 y -1) z) (*.f64 (+.f64 t -1) b))) (*.f64 a (+.f64 y (-.f64 t 2))))
(fma.f64 a (-.f64 (+.f64 y t) 2) (-.f64 x (fma.f64 (+.f64 y -1) z (*.f64 (+.f64 t -1) b))))
(fma.f64 a (+.f64 t (-.f64 y 2)) (fma.f64 b (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)))
Compiler

Compiled 33 to 25 computations (24.2% saved)

simplify82.0ms (0.2%)

Algorithm
egg-herbie
Rules
494×fma-neg_binary64
471×distribute-neg-in_binary64
457×associate--l-_binary64
369×associate--r-_binary64
344×+-commutative_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01931
14927
214525
361625
4223125
5556325
6704025
Stop Event
node limit
Counts
1 → 2
Calls
Call 1
Inputs
(+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 y 1) z)) (*.f64 (-.f64 t 1) a)) (*.f64 (-.f64 (+.f64 y t) 2) b))
Outputs
(+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 y 1) z)) (*.f64 (-.f64 t 1) a)) (*.f64 (-.f64 (+.f64 y t) 2) b))
(-.f64 (-.f64 x (*.f64 (+.f64 y -1) z)) (-.f64 (*.f64 (+.f64 t -1) a) (*.f64 (+.f64 y (-.f64 t 2)) b)))
(fma.f64 (+.f64 t (-.f64 y 2)) b (-.f64 x (fma.f64 (-.f64 y 1) z (*.f64 (+.f64 t -1) a))))
(fma.f64 (+.f64 y (+.f64 t -2)) b (fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 (+.f64 (+.f64 y t) -2) b (fma.f64 z (-.f64 1 y) x)))
(fma.f64 (+.f64 y (+.f64 t -2)) b (fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x)))

eval2.0ms (0%)

Compiler

Compiled 45 to 29 computations (35.6% saved)

prune3.0ms (0%)

Pruning

3 alts after pruning (3 fresh and 0 done)

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

Compiled 51 to 35 computations (31.4% saved)

localize61.0ms (0.2%)

Local error

Found 4 expressions with local error:

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

Compiled 86 to 48 computations (44.2% saved)

series35.0ms (0.1%)

Counts
4 → 120
Calls

36 calls:

TimeVariablePointExpression
3.0ms
a
@0
(-.f64 (-.f64 x (*.f64 (-.f64 y 1) z)) (*.f64 (-.f64 t 1) a))
2.0ms
t
@inf
(*.f64 (-.f64 (+.f64 y t) 2) b)
2.0ms
z
@inf
(*.f64 (-.f64 y 1) z)
1.0ms
a
@inf
(*.f64 (-.f64 t 1) a)
1.0ms
t
@-inf
(*.f64 (-.f64 t 1) a)

rewrite130.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
575×fma-neg_binary64
382×expm1-udef_binary64
382×log1p-udef_binary64
227×add-sqr-sqrt_binary64
221×*-un-lft-identity_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify459.0ms (1.2%)

Algorithm
egg-herbie
Rules
2214×fma-neg_binary64
529×fma-def_binary64
467×sub-neg_binary64
422×unsub-neg_binary64
345×distribute-rgt-in_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0601369
11791321
24451223
312151223
432331223
538111223
644141223
748421223
849861223
950191223
1054321223
1155611223
1257011223
1357571223
1457571223
1578261223
1678261223
1778261223
Stop Event
saturated
Counts
238 → 168
Calls
Call 1
Inputs
(*.f64 -1 a)
(+.f64 (*.f64 a t) (*.f64 -1 a))
(+.f64 (*.f64 a t) (*.f64 -1 a))
(+.f64 (*.f64 a t) (*.f64 -1 a))
(*.f64 a t)
(+.f64 (*.f64 a t) (*.f64 -1 a))
(+.f64 (*.f64 a t) (*.f64 -1 a))
(+.f64 (*.f64 a t) (*.f64 -1 a))
(*.f64 a t)
(+.f64 (*.f64 a t) (*.f64 -1 a))
(+.f64 (*.f64 a t) (*.f64 -1 a))
(+.f64 (*.f64 a t) (*.f64 -1 a))
(*.f64 -1 z)
(+.f64 (*.f64 y z) (*.f64 -1 z))
(+.f64 (*.f64 y z) (*.f64 -1 z))
(+.f64 (*.f64 y z) (*.f64 -1 z))
(*.f64 y z)
(+.f64 (*.f64 -1 z) (*.f64 y z))
(+.f64 (*.f64 -1 z) (*.f64 y z))
(+.f64 (*.f64 -1 z) (*.f64 y z))
(*.f64 y z)
(+.f64 (*.f64 -1 z) (*.f64 y z))
(+.f64 (*.f64 -1 z) (*.f64 y z))
(+.f64 (*.f64 -1 z) (*.f64 y z))
(*.f64 z (-.f64 y 1))
(*.f64 z (-.f64 y 1))
(*.f64 z (-.f64 y 1))
(*.f64 z (-.f64 y 1))
(*.f64 z (-.f64 y 1))
(*.f64 z (-.f64 y 1))
(*.f64 z (-.f64 y 1))
(*.f64 z (-.f64 y 1))
(*.f64 z (-.f64 y 1))
(*.f64 z (-.f64 y 1))
(*.f64 z (-.f64 y 1))
(*.f64 z (-.f64 y 1))
(*.f64 b (-.f64 t 2))
(+.f64 (*.f64 y b) (*.f64 b (-.f64 t 2)))
(+.f64 (*.f64 y b) (*.f64 b (-.f64 t 2)))
(+.f64 (*.f64 y b) (*.f64 b (-.f64 t 2)))
(*.f64 y b)
(+.f64 (*.f64 y b) (*.f64 (-.f64 t 2) b))
(+.f64 (*.f64 y b) (*.f64 (-.f64 t 2) b))
(+.f64 (*.f64 y b) (*.f64 (-.f64 t 2) b))
(*.f64 y b)
(+.f64 (*.f64 y b) (*.f64 (-.f64 t 2) b))
(+.f64 (*.f64 y b) (*.f64 (-.f64 t 2) b))
(+.f64 (*.f64 y b) (*.f64 (-.f64 t 2) b))
(*.f64 (-.f64 y 2) b)
(+.f64 (*.f64 t b) (*.f64 (-.f64 y 2) b))
(+.f64 (*.f64 t b) (*.f64 (-.f64 y 2) b))
(+.f64 (*.f64 t b) (*.f64 (-.f64 y 2) b))
(*.f64 t b)
(+.f64 (*.f64 t b) (*.f64 (-.f64 y 2) b))
(+.f64 (*.f64 t b) (*.f64 (-.f64 y 2) b))
(+.f64 (*.f64 t b) (*.f64 (-.f64 y 2) b))
(*.f64 t b)
(+.f64 (*.f64 t b) (*.f64 (-.f64 y 2) b))
(+.f64 (*.f64 t b) (*.f64 (-.f64 y 2) b))
(+.f64 (*.f64 t b) (*.f64 (-.f64 y 2) b))
(*.f64 -1 (+.f64 (*.f64 (-.f64 t 1) a) (*.f64 z (-.f64 y 1))))
(+.f64 (*.f64 -1 (+.f64 (*.f64 (-.f64 t 1) a) (*.f64 z (-.f64 y 1)))) x)
(+.f64 (*.f64 -1 (+.f64 (*.f64 (-.f64 t 1) a) (*.f64 z (-.f64 y 1)))) x)
(+.f64 (*.f64 -1 (+.f64 (*.f64 (-.f64 t 1) a) (*.f64 z (-.f64 y 1)))) x)
x
(+.f64 (*.f64 -1 (+.f64 (*.f64 (-.f64 t 1) a) (*.f64 z (-.f64 y 1)))) x)
(+.f64 (*.f64 -1 (+.f64 (*.f64 (-.f64 t 1) a) (*.f64 z (-.f64 y 1)))) x)
(+.f64 (*.f64 -1 (+.f64 (*.f64 (-.f64 t 1) a) (*.f64 z (-.f64 y 1)))) x)
x
(+.f64 (*.f64 -1 (+.f64 (*.f64 (-.f64 t 1) a) (*.f64 z (-.f64 y 1)))) x)
(+.f64 (*.f64 -1 (+.f64 (*.f64 (-.f64 t 1) a) (*.f64 z (-.f64 y 1)))) x)
(+.f64 (*.f64 -1 (+.f64 (*.f64 (-.f64 t 1) a) (*.f64 z (-.f64 y 1)))) x)
(-.f64 x (+.f64 (*.f64 -1 z) (*.f64 (-.f64 t 1) a)))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y z)) x) (+.f64 (*.f64 -1 z) (*.f64 (-.f64 t 1) a)))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y z)) x) (+.f64 (*.f64 -1 z) (*.f64 (-.f64 t 1) a)))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y z)) x) (+.f64 (*.f64 -1 z) (*.f64 (-.f64 t 1) a)))
(*.f64 -1 (*.f64 y z))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y z)) x) (+.f64 (*.f64 -1 z) (*.f64 (-.f64 t 1) a)))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y z)) x) (+.f64 (*.f64 -1 z) (*.f64 (-.f64 t 1) a)))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y z)) x) (+.f64 (*.f64 -1 z) (*.f64 (-.f64 t 1) a)))
(*.f64 -1 (*.f64 y z))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y z)) x) (+.f64 (*.f64 -1 z) (*.f64 (-.f64 t 1) a)))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y z)) x) (+.f64 (*.f64 -1 z) (*.f64 (-.f64 t 1) a)))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y z)) x) (+.f64 (*.f64 -1 z) (*.f64 (-.f64 t 1) a)))
(-.f64 x (*.f64 (-.f64 t 1) a))
(-.f64 (+.f64 (*.f64 z (-.f64 1 y)) x) (*.f64 (-.f64 t 1) a))
(-.f64 (+.f64 (*.f64 z (-.f64 1 y)) x) (*.f64 (-.f64 t 1) a))
(-.f64 (+.f64 (*.f64 z (-.f64 1 y)) x) (*.f64 (-.f64 t 1) a))
(*.f64 z (-.f64 1 y))
(-.f64 (+.f64 (*.f64 z (-.f64 1 y)) x) (*.f64 (-.f64 t 1) a))
(-.f64 (+.f64 (*.f64 z (-.f64 1 y)) x) (*.f64 (-.f64 t 1) a))
(-.f64 (+.f64 (*.f64 z (-.f64 1 y)) x) (*.f64 (-.f64 t 1) a))
(*.f64 -1 (*.f64 z (-.f64 y 1)))
(-.f64 (+.f64 (*.f64 -1 (*.f64 z (-.f64 y 1))) x) (*.f64 (-.f64 t 1) a))
(-.f64 (+.f64 (*.f64 -1 (*.f64 z (-.f64 y 1))) x) (*.f64 (-.f64 t 1) a))
(-.f64 (+.f64 (*.f64 -1 (*.f64 z (-.f64 y 1))) x) (*.f64 (-.f64 t 1) a))
(-.f64 x (+.f64 (*.f64 z (-.f64 y 1)) (*.f64 -1 a)))
(-.f64 (+.f64 (*.f64 -1 (*.f64 a t)) x) (+.f64 (*.f64 z (-.f64 y 1)) (*.f64 -1 a)))
(-.f64 (+.f64 (*.f64 -1 (*.f64 a t)) x) (+.f64 (*.f64 z (-.f64 y 1)) (*.f64 -1 a)))
(-.f64 (+.f64 (*.f64 -1 (*.f64 a t)) x) (+.f64 (*.f64 z (-.f64 y 1)) (*.f64 -1 a)))
(*.f64 -1 (*.f64 a t))
(-.f64 (+.f64 (*.f64 -1 (*.f64 a t)) x) (+.f64 (*.f64 z (-.f64 y 1)) (*.f64 -1 a)))
(-.f64 (+.f64 (*.f64 -1 (*.f64 a t)) x) (+.f64 (*.f64 z (-.f64 y 1)) (*.f64 -1 a)))
(-.f64 (+.f64 (*.f64 -1 (*.f64 a t)) x) (+.f64 (*.f64 z (-.f64 y 1)) (*.f64 -1 a)))
(*.f64 -1 (*.f64 a t))
(-.f64 (+.f64 (*.f64 -1 (*.f64 a t)) x) (+.f64 (*.f64 z (-.f64 y 1)) (*.f64 -1 a)))
(-.f64 (+.f64 (*.f64 -1 (*.f64 a t)) x) (+.f64 (*.f64 z (-.f64 y 1)) (*.f64 -1 a)))
(-.f64 (+.f64 (*.f64 -1 (*.f64 a t)) x) (+.f64 (*.f64 z (-.f64 y 1)) (*.f64 -1 a)))
(-.f64 x (*.f64 z (-.f64 y 1)))
(-.f64 (+.f64 (*.f64 a (-.f64 1 t)) x) (*.f64 z (-.f64 y 1)))
(-.f64 (+.f64 (*.f64 a (-.f64 1 t)) x) (*.f64 z (-.f64 y 1)))
(-.f64 (+.f64 (*.f64 a (-.f64 1 t)) x) (*.f64 z (-.f64 y 1)))
(*.f64 a (-.f64 1 t))
(-.f64 (+.f64 (*.f64 a (-.f64 1 t)) x) (*.f64 z (-.f64 y 1)))
(-.f64 (+.f64 (*.f64 a (-.f64 1 t)) x) (*.f64 z (-.f64 y 1)))
(-.f64 (+.f64 (*.f64 a (-.f64 1 t)) x) (*.f64 z (-.f64 y 1)))
(*.f64 -1 (*.f64 (-.f64 t 1) a))
(-.f64 (+.f64 (*.f64 -1 (*.f64 (-.f64 t 1) a)) x) (*.f64 z (-.f64 y 1)))
(-.f64 (+.f64 (*.f64 -1 (*.f64 (-.f64 t 1) a)) x) (*.f64 z (-.f64 y 1)))
(-.f64 (+.f64 (*.f64 -1 (*.f64 (-.f64 t 1) a)) x) (*.f64 z (-.f64 y 1)))
Outputs
(*.f64 -1 a)
(neg.f64 a)
(+.f64 (*.f64 a t) (*.f64 -1 a))
(fma.f64 a t (neg.f64 a))
(*.f64 a (+.f64 -1 t))
(+.f64 (*.f64 a t) (*.f64 -1 a))
(fma.f64 a t (neg.f64 a))
(*.f64 a (+.f64 -1 t))
(+.f64 (*.f64 a t) (*.f64 -1 a))
(fma.f64 a t (neg.f64 a))
(*.f64 a (+.f64 -1 t))
(*.f64 a t)
(+.f64 (*.f64 a t) (*.f64 -1 a))
(fma.f64 a t (neg.f64 a))
(*.f64 a (+.f64 -1 t))
(+.f64 (*.f64 a t) (*.f64 -1 a))
(fma.f64 a t (neg.f64 a))
(*.f64 a (+.f64 -1 t))
(+.f64 (*.f64 a t) (*.f64 -1 a))
(fma.f64 a t (neg.f64 a))
(*.f64 a (+.f64 -1 t))
(*.f64 a t)
(+.f64 (*.f64 a t) (*.f64 -1 a))
(fma.f64 a t (neg.f64 a))
(*.f64 a (+.f64 -1 t))
(+.f64 (*.f64 a t) (*.f64 -1 a))
(fma.f64 a t (neg.f64 a))
(*.f64 a (+.f64 -1 t))
(+.f64 (*.f64 a t) (*.f64 -1 a))
(fma.f64 a t (neg.f64 a))
(*.f64 a (+.f64 -1 t))
(*.f64 -1 z)
(neg.f64 z)
(+.f64 (*.f64 y z) (*.f64 -1 z))
(*.f64 z (+.f64 y -1))
(fma.f64 z y (neg.f64 z))
(-.f64 (*.f64 z y) z)
(+.f64 (*.f64 y z) (*.f64 -1 z))
(*.f64 z (+.f64 y -1))
(fma.f64 z y (neg.f64 z))
(-.f64 (*.f64 z y) z)
(+.f64 (*.f64 y z) (*.f64 -1 z))
(*.f64 z (+.f64 y -1))
(fma.f64 z y (neg.f64 z))
(-.f64 (*.f64 z y) z)
(*.f64 y z)
(*.f64 z y)
(+.f64 (*.f64 -1 z) (*.f64 y z))
(*.f64 z (+.f64 y -1))
(fma.f64 z y (neg.f64 z))
(-.f64 (*.f64 z y) z)
(+.f64 (*.f64 -1 z) (*.f64 y z))
(*.f64 z (+.f64 y -1))
(fma.f64 z y (neg.f64 z))
(-.f64 (*.f64 z y) z)
(+.f64 (*.f64 -1 z) (*.f64 y z))
(*.f64 z (+.f64 y -1))
(fma.f64 z y (neg.f64 z))
(-.f64 (*.f64 z y) z)
(*.f64 y z)
(*.f64 z y)
(+.f64 (*.f64 -1 z) (*.f64 y z))
(*.f64 z (+.f64 y -1))
(fma.f64 z y (neg.f64 z))
(-.f64 (*.f64 z y) z)
(+.f64 (*.f64 -1 z) (*.f64 y z))
(*.f64 z (+.f64 y -1))
(fma.f64 z y (neg.f64 z))
(-.f64 (*.f64 z y) z)
(+.f64 (*.f64 -1 z) (*.f64 y z))
(*.f64 z (+.f64 y -1))
(fma.f64 z y (neg.f64 z))
(-.f64 (*.f64 z y) z)
(*.f64 z (-.f64 y 1))
(*.f64 z (+.f64 y -1))
(fma.f64 z y (neg.f64 z))
(-.f64 (*.f64 z y) z)
(*.f64 z (-.f64 y 1))
(*.f64 z (+.f64 y -1))
(fma.f64 z y (neg.f64 z))
(-.f64 (*.f64 z y) z)
(*.f64 z (-.f64 y 1))
(*.f64 z (+.f64 y -1))
(fma.f64 z y (neg.f64 z))
(-.f64 (*.f64 z y) z)
(*.f64 z (-.f64 y 1))
(*.f64 z (+.f64 y -1))
(fma.f64 z y (neg.f64 z))
(-.f64 (*.f64 z y) z)
(*.f64 z (-.f64 y 1))
(*.f64 z (+.f64 y -1))
(fma.f64 z y (neg.f64 z))
(-.f64 (*.f64 z y) z)
(*.f64 z (-.f64 y 1))
(*.f64 z (+.f64 y -1))
(fma.f64 z y (neg.f64 z))
(-.f64 (*.f64 z y) z)
(*.f64 z (-.f64 y 1))
(*.f64 z (+.f64 y -1))
(fma.f64 z y (neg.f64 z))
(-.f64 (*.f64 z y) z)
(*.f64 z (-.f64 y 1))
(*.f64 z (+.f64 y -1))
(fma.f64 z y (neg.f64 z))
(-.f64 (*.f64 z y) z)
(*.f64 z (-.f64 y 1))
(*.f64 z (+.f64 y -1))
(fma.f64 z y (neg.f64 z))
(-.f64 (*.f64 z y) z)
(*.f64 z (-.f64 y 1))
(*.f64 z (+.f64 y -1))
(fma.f64 z y (neg.f64 z))
(-.f64 (*.f64 z y) z)
(*.f64 z (-.f64 y 1))
(*.f64 z (+.f64 y -1))
(fma.f64 z y (neg.f64 z))
(-.f64 (*.f64 z y) z)
(*.f64 z (-.f64 y 1))
(*.f64 z (+.f64 y -1))
(fma.f64 z y (neg.f64 z))
(-.f64 (*.f64 z y) z)
(*.f64 b (-.f64 t 2))
(*.f64 b (+.f64 t -2))
(+.f64 (*.f64 y b) (*.f64 b (-.f64 t 2)))
(*.f64 b (+.f64 y (+.f64 t -2)))
(*.f64 b (+.f64 t (+.f64 y -2)))
(+.f64 (*.f64 y b) (*.f64 b (-.f64 t 2)))
(*.f64 b (+.f64 y (+.f64 t -2)))
(*.f64 b (+.f64 t (+.f64 y -2)))
(+.f64 (*.f64 y b) (*.f64 b (-.f64 t 2)))
(*.f64 b (+.f64 y (+.f64 t -2)))
(*.f64 b (+.f64 t (+.f64 y -2)))
(*.f64 y b)
(+.f64 (*.f64 y b) (*.f64 (-.f64 t 2) b))
(*.f64 b (+.f64 y (+.f64 t -2)))
(*.f64 b (+.f64 t (+.f64 y -2)))
(+.f64 (*.f64 y b) (*.f64 (-.f64 t 2) b))
(*.f64 b (+.f64 y (+.f64 t -2)))
(*.f64 b (+.f64 t (+.f64 y -2)))
(+.f64 (*.f64 y b) (*.f64 (-.f64 t 2) b))
(*.f64 b (+.f64 y (+.f64 t -2)))
(*.f64 b (+.f64 t (+.f64 y -2)))
(*.f64 y b)
(+.f64 (*.f64 y b) (*.f64 (-.f64 t 2) b))
(*.f64 b (+.f64 y (+.f64 t -2)))
(*.f64 b (+.f64 t (+.f64 y -2)))
(+.f64 (*.f64 y b) (*.f64 (-.f64 t 2) b))
(*.f64 b (+.f64 y (+.f64 t -2)))
(*.f64 b (+.f64 t (+.f64 y -2)))
(+.f64 (*.f64 y b) (*.f64 (-.f64 t 2) b))
(*.f64 b (+.f64 y (+.f64 t -2)))
(*.f64 b (+.f64 t (+.f64 y -2)))
(*.f64 (-.f64 y 2) b)
(*.f64 b (+.f64 y -2))
(+.f64 (*.f64 t b) (*.f64 (-.f64 y 2) b))
(*.f64 b (+.f64 y (+.f64 t -2)))
(*.f64 b (+.f64 t (+.f64 y -2)))
(+.f64 (*.f64 t b) (*.f64 (-.f64 y 2) b))
(*.f64 b (+.f64 y (+.f64 t -2)))
(*.f64 b (+.f64 t (+.f64 y -2)))
(+.f64 (*.f64 t b) (*.f64 (-.f64 y 2) b))
(*.f64 b (+.f64 y (+.f64 t -2)))
(*.f64 b (+.f64 t (+.f64 y -2)))
(*.f64 t b)
(+.f64 (*.f64 t b) (*.f64 (-.f64 y 2) b))
(*.f64 b (+.f64 y (+.f64 t -2)))
(*.f64 b (+.f64 t (+.f64 y -2)))
(+.f64 (*.f64 t b) (*.f64 (-.f64 y 2) b))
(*.f64 b (+.f64 y (+.f64 t -2)))
(*.f64 b (+.f64 t (+.f64 y -2)))
(+.f64 (*.f64 t b) (*.f64 (-.f64 y 2) b))
(*.f64 b (+.f64 y (+.f64 t -2)))
(*.f64 b (+.f64 t (+.f64 y -2)))
(*.f64 t b)
(+.f64 (*.f64 t b) (*.f64 (-.f64 y 2) b))
(*.f64 b (+.f64 y (+.f64 t -2)))
(*.f64 b (+.f64 t (+.f64 y -2)))
(+.f64 (*.f64 t b) (*.f64 (-.f64 y 2) b))
(*.f64 b (+.f64 y (+.f64 t -2)))
(*.f64 b (+.f64 t (+.f64 y -2)))
(+.f64 (*.f64 t b) (*.f64 (-.f64 y 2) b))
(*.f64 b (+.f64 y (+.f64 t -2)))
(*.f64 b (+.f64 t (+.f64 y -2)))
(*.f64 -1 (+.f64 (*.f64 (-.f64 t 1) a) (*.f64 z (-.f64 y 1))))
(neg.f64 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))))
(-.f64 (*.f64 a (-.f64 1 t)) (fma.f64 z y (neg.f64 z)))
(fma.f64 a (-.f64 1 t) (fma.f64 (neg.f64 z) y z))
(+.f64 (*.f64 -1 (+.f64 (*.f64 (-.f64 t 1) a) (*.f64 z (-.f64 y 1)))) x)
(fma.f64 -1 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))) x)
(-.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 z y (neg.f64 z)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(+.f64 (*.f64 -1 (+.f64 (*.f64 (-.f64 t 1) a) (*.f64 z (-.f64 y 1)))) x)
(fma.f64 -1 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))) x)
(-.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 z y (neg.f64 z)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(+.f64 (*.f64 -1 (+.f64 (*.f64 (-.f64 t 1) a) (*.f64 z (-.f64 y 1)))) x)
(fma.f64 -1 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))) x)
(-.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 z y (neg.f64 z)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
x
(+.f64 (*.f64 -1 (+.f64 (*.f64 (-.f64 t 1) a) (*.f64 z (-.f64 y 1)))) x)
(fma.f64 -1 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))) x)
(-.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 z y (neg.f64 z)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(+.f64 (*.f64 -1 (+.f64 (*.f64 (-.f64 t 1) a) (*.f64 z (-.f64 y 1)))) x)
(fma.f64 -1 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))) x)
(-.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 z y (neg.f64 z)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(+.f64 (*.f64 -1 (+.f64 (*.f64 (-.f64 t 1) a) (*.f64 z (-.f64 y 1)))) x)
(fma.f64 -1 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))) x)
(-.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 z y (neg.f64 z)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
x
(+.f64 (*.f64 -1 (+.f64 (*.f64 (-.f64 t 1) a) (*.f64 z (-.f64 y 1)))) x)
(fma.f64 -1 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))) x)
(-.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 z y (neg.f64 z)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(+.f64 (*.f64 -1 (+.f64 (*.f64 (-.f64 t 1) a) (*.f64 z (-.f64 y 1)))) x)
(fma.f64 -1 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))) x)
(-.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 z y (neg.f64 z)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(+.f64 (*.f64 -1 (+.f64 (*.f64 (-.f64 t 1) a) (*.f64 z (-.f64 y 1)))) x)
(fma.f64 -1 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))) x)
(-.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 z y (neg.f64 z)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(-.f64 x (+.f64 (*.f64 -1 z) (*.f64 (-.f64 t 1) a)))
(-.f64 x (fma.f64 -1 z (*.f64 a (+.f64 t -1))))
(-.f64 (fma.f64 a (-.f64 1 t) x) (neg.f64 z))
(+.f64 x (fma.f64 a (-.f64 1 t) z))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y z)) x) (+.f64 (*.f64 -1 z) (*.f64 (-.f64 t 1) a)))
(fma.f64 -1 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))) x)
(-.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 z y (neg.f64 z)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y z)) x) (+.f64 (*.f64 -1 z) (*.f64 (-.f64 t 1) a)))
(fma.f64 -1 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))) x)
(-.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 z y (neg.f64 z)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y z)) x) (+.f64 (*.f64 -1 z) (*.f64 (-.f64 t 1) a)))
(fma.f64 -1 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))) x)
(-.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 z y (neg.f64 z)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(*.f64 -1 (*.f64 y z))
(neg.f64 (*.f64 z y))
(*.f64 z (neg.f64 y))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y z)) x) (+.f64 (*.f64 -1 z) (*.f64 (-.f64 t 1) a)))
(fma.f64 -1 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))) x)
(-.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 z y (neg.f64 z)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y z)) x) (+.f64 (*.f64 -1 z) (*.f64 (-.f64 t 1) a)))
(fma.f64 -1 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))) x)
(-.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 z y (neg.f64 z)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y z)) x) (+.f64 (*.f64 -1 z) (*.f64 (-.f64 t 1) a)))
(fma.f64 -1 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))) x)
(-.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 z y (neg.f64 z)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(*.f64 -1 (*.f64 y z))
(neg.f64 (*.f64 z y))
(*.f64 z (neg.f64 y))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y z)) x) (+.f64 (*.f64 -1 z) (*.f64 (-.f64 t 1) a)))
(fma.f64 -1 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))) x)
(-.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 z y (neg.f64 z)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y z)) x) (+.f64 (*.f64 -1 z) (*.f64 (-.f64 t 1) a)))
(fma.f64 -1 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))) x)
(-.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 z y (neg.f64 z)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y z)) x) (+.f64 (*.f64 -1 z) (*.f64 (-.f64 t 1) a)))
(fma.f64 -1 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))) x)
(-.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 z y (neg.f64 z)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(-.f64 x (*.f64 (-.f64 t 1) a))
(-.f64 x (*.f64 a (+.f64 t -1)))
(fma.f64 a (-.f64 1 t) x)
(-.f64 (+.f64 (*.f64 z (-.f64 1 y)) x) (*.f64 (-.f64 t 1) a))
(fma.f64 -1 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))) x)
(-.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 z y (neg.f64 z)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(-.f64 (+.f64 (*.f64 z (-.f64 1 y)) x) (*.f64 (-.f64 t 1) a))
(fma.f64 -1 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))) x)
(-.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 z y (neg.f64 z)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(-.f64 (+.f64 (*.f64 z (-.f64 1 y)) x) (*.f64 (-.f64 t 1) a))
(fma.f64 -1 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))) x)
(-.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 z y (neg.f64 z)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(*.f64 z (-.f64 1 y))
(fma.f64 (neg.f64 z) y z)
(-.f64 (+.f64 (*.f64 z (-.f64 1 y)) x) (*.f64 (-.f64 t 1) a))
(fma.f64 -1 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))) x)
(-.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 z y (neg.f64 z)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(-.f64 (+.f64 (*.f64 z (-.f64 1 y)) x) (*.f64 (-.f64 t 1) a))
(fma.f64 -1 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))) x)
(-.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 z y (neg.f64 z)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(-.f64 (+.f64 (*.f64 z (-.f64 1 y)) x) (*.f64 (-.f64 t 1) a))
(fma.f64 -1 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))) x)
(-.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 z y (neg.f64 z)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(*.f64 -1 (*.f64 z (-.f64 y 1)))
(*.f64 z (-.f64 1 y))
(fma.f64 (neg.f64 z) y z)
(-.f64 (+.f64 (*.f64 -1 (*.f64 z (-.f64 y 1))) x) (*.f64 (-.f64 t 1) a))
(fma.f64 -1 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))) x)
(-.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 z y (neg.f64 z)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(-.f64 (+.f64 (*.f64 -1 (*.f64 z (-.f64 y 1))) x) (*.f64 (-.f64 t 1) a))
(fma.f64 -1 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))) x)
(-.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 z y (neg.f64 z)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(-.f64 (+.f64 (*.f64 -1 (*.f64 z (-.f64 y 1))) x) (*.f64 (-.f64 t 1) a))
(fma.f64 -1 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))) x)
(-.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 z y (neg.f64 z)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(-.f64 x (+.f64 (*.f64 z (-.f64 y 1)) (*.f64 -1 a)))
(-.f64 x (fma.f64 z (+.f64 y -1) (neg.f64 a)))
(-.f64 x (-.f64 (fma.f64 z y (neg.f64 z)) a))
(+.f64 a (fma.f64 z (-.f64 1 y) x))
(-.f64 (+.f64 (*.f64 -1 (*.f64 a t)) x) (+.f64 (*.f64 z (-.f64 y 1)) (*.f64 -1 a)))
(fma.f64 -1 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))) x)
(-.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 z y (neg.f64 z)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(-.f64 (+.f64 (*.f64 -1 (*.f64 a t)) x) (+.f64 (*.f64 z (-.f64 y 1)) (*.f64 -1 a)))
(fma.f64 -1 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))) x)
(-.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 z y (neg.f64 z)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(-.f64 (+.f64 (*.f64 -1 (*.f64 a t)) x) (+.f64 (*.f64 z (-.f64 y 1)) (*.f64 -1 a)))
(fma.f64 -1 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))) x)
(-.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 z y (neg.f64 z)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(*.f64 -1 (*.f64 a t))
(*.f64 (neg.f64 a) t)
(*.f64 a (neg.f64 t))
(-.f64 (+.f64 (*.f64 -1 (*.f64 a t)) x) (+.f64 (*.f64 z (-.f64 y 1)) (*.f64 -1 a)))
(fma.f64 -1 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))) x)
(-.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 z y (neg.f64 z)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(-.f64 (+.f64 (*.f64 -1 (*.f64 a t)) x) (+.f64 (*.f64 z (-.f64 y 1)) (*.f64 -1 a)))
(fma.f64 -1 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))) x)
(-.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 z y (neg.f64 z)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(-.f64 (+.f64 (*.f64 -1 (*.f64 a t)) x) (+.f64 (*.f64 z (-.f64 y 1)) (*.f64 -1 a)))
(fma.f64 -1 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))) x)
(-.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 z y (neg.f64 z)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(*.f64 -1 (*.f64 a t))
(*.f64 (neg.f64 a) t)
(*.f64 a (neg.f64 t))
(-.f64 (+.f64 (*.f64 -1 (*.f64 a t)) x) (+.f64 (*.f64 z (-.f64 y 1)) (*.f64 -1 a)))
(fma.f64 -1 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))) x)
(-.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 z y (neg.f64 z)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(-.f64 (+.f64 (*.f64 -1 (*.f64 a t)) x) (+.f64 (*.f64 z (-.f64 y 1)) (*.f64 -1 a)))
(fma.f64 -1 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))) x)
(-.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 z y (neg.f64 z)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(-.f64 (+.f64 (*.f64 -1 (*.f64 a t)) x) (+.f64 (*.f64 z (-.f64 y 1)) (*.f64 -1 a)))
(fma.f64 -1 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))) x)
(-.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 z y (neg.f64 z)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(-.f64 x (*.f64 z (-.f64 y 1)))
(-.f64 x (*.f64 z (+.f64 y -1)))
(-.f64 x (fma.f64 z y (neg.f64 z)))
(fma.f64 z (-.f64 1 y) x)
(-.f64 (+.f64 (*.f64 a (-.f64 1 t)) x) (*.f64 z (-.f64 y 1)))
(fma.f64 -1 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))) x)
(-.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 z y (neg.f64 z)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(-.f64 (+.f64 (*.f64 a (-.f64 1 t)) x) (*.f64 z (-.f64 y 1)))
(fma.f64 -1 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))) x)
(-.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 z y (neg.f64 z)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(-.f64 (+.f64 (*.f64 a (-.f64 1 t)) x) (*.f64 z (-.f64 y 1)))
(fma.f64 -1 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))) x)
(-.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 z y (neg.f64 z)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(*.f64 a (-.f64 1 t))
(-.f64 (+.f64 (*.f64 a (-.f64 1 t)) x) (*.f64 z (-.f64 y 1)))
(fma.f64 -1 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))) x)
(-.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 z y (neg.f64 z)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(-.f64 (+.f64 (*.f64 a (-.f64 1 t)) x) (*.f64 z (-.f64 y 1)))
(fma.f64 -1 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))) x)
(-.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 z y (neg.f64 z)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(-.f64 (+.f64 (*.f64 a (-.f64 1 t)) x) (*.f64 z (-.f64 y 1)))
(fma.f64 -1 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))) x)
(-.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 z y (neg.f64 z)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(*.f64 -1 (*.f64 (-.f64 t 1) a))
(*.f64 a (-.f64 1 t))
(-.f64 (+.f64 (*.f64 -1 (*.f64 (-.f64 t 1) a)) x) (*.f64 z (-.f64 y 1)))
(fma.f64 -1 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))) x)
(-.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 z y (neg.f64 z)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(-.f64 (+.f64 (*.f64 -1 (*.f64 (-.f64 t 1) a)) x) (*.f64 z (-.f64 y 1)))
(fma.f64 -1 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))) x)
(-.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 z y (neg.f64 z)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(-.f64 (+.f64 (*.f64 -1 (*.f64 (-.f64 t 1) a)) x) (*.f64 z (-.f64 y 1)))
(fma.f64 -1 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))) x)
(-.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 z y (neg.f64 z)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))

localize51.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(fma.f64 (+.f64 y (+.f64 t -2)) b (fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x)))
0.0b
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x))
0.0b
(fma.f64 a (-.f64 1 t) x)
Compiler

Compiled 63 to 36 computations (42.9% saved)

series32.0ms (0.1%)

Counts
3 → 168
Calls

42 calls:

TimeVariablePointExpression
2.0ms
z
@inf
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x))
1.0ms
z
@0
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x))
1.0ms
y
@0
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x))
1.0ms
b
@inf
(fma.f64 (+.f64 y (+.f64 t -2)) b (fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x)))
1.0ms
a
@0
(fma.f64 a (-.f64 1 t) x)

rewrite116.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
788×log-prod_binary64
507×fma-def_binary64
328×expm1-udef_binary64
326×log1p-udef_binary64
289×fma-neg_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify199.0ms (0.5%)

Algorithm
egg-herbie
Rules
670×associate--r-_binary64
587×sub-neg_binary64
456×associate-+l+_binary64
437×fma-def_binary64
396×associate-+r+_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0792636
12622576
27542574
324902574
440202574
573132574
Stop Event
node limit
Counts
257 → 141
Calls
Call 1
Inputs
x
(+.f64 (*.f64 a (-.f64 1 t)) x)
(+.f64 (*.f64 a (-.f64 1 t)) x)
(+.f64 (*.f64 a (-.f64 1 t)) x)
(*.f64 a (-.f64 1 t))
(+.f64 (*.f64 a (-.f64 1 t)) x)
(+.f64 (*.f64 a (-.f64 1 t)) x)
(+.f64 (*.f64 a (-.f64 1 t)) x)
(*.f64 a (-.f64 1 t))
(+.f64 (*.f64 a (-.f64 1 t)) x)
(+.f64 (*.f64 a (-.f64 1 t)) x)
(+.f64 (*.f64 a (-.f64 1 t)) x)
(+.f64 a x)
(+.f64 a (+.f64 (*.f64 -1 (*.f64 a t)) x))
(+.f64 a (+.f64 (*.f64 -1 (*.f64 a t)) x))
(+.f64 a (+.f64 (*.f64 -1 (*.f64 a t)) x))
(*.f64 -1 (*.f64 a t))
(+.f64 a (+.f64 (*.f64 -1 (*.f64 a t)) x))
(+.f64 a (+.f64 (*.f64 -1 (*.f64 a t)) x))
(+.f64 a (+.f64 (*.f64 -1 (*.f64 a t)) x))
(*.f64 -1 (*.f64 a t))
(+.f64 a (+.f64 (*.f64 -1 (*.f64 a t)) x))
(+.f64 a (+.f64 (*.f64 -1 (*.f64 a t)) x))
(+.f64 a (+.f64 (*.f64 -1 (*.f64 a t)) x))
(*.f64 a (-.f64 1 t))
(+.f64 (*.f64 a (-.f64 1 t)) x)
(+.f64 (*.f64 a (-.f64 1 t)) x)
(+.f64 (*.f64 a (-.f64 1 t)) x)
x
(+.f64 (*.f64 a (-.f64 1 t)) x)
(+.f64 (*.f64 a (-.f64 1 t)) x)
(+.f64 (*.f64 a (-.f64 1 t)) x)
x
(+.f64 (*.f64 a (-.f64 1 t)) x)
(+.f64 (*.f64 a (-.f64 1 t)) x)
(+.f64 (*.f64 a (-.f64 1 t)) x)
(+.f64 (*.f64 a (-.f64 1 t)) x)
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(*.f64 z (-.f64 1 y))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(*.f64 z (-.f64 1 y))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 z x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 z x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 z x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 z x)))
(*.f64 -1 (*.f64 y z))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 z x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 z x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 z x)))
(*.f64 -1 (*.f64 y z))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 z x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 z x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 z x)))
(+.f64 (*.f64 z (-.f64 1 y)) x)
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(*.f64 a (-.f64 1 t))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(*.f64 a (-.f64 1 t))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) x))
(+.f64 a (+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(+.f64 a (+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(+.f64 a (+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(*.f64 -1 (*.f64 a t))
(+.f64 a (+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(+.f64 a (+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(+.f64 a (+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(*.f64 -1 (*.f64 a t))
(+.f64 a (+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(+.f64 a (+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(+.f64 a (+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (*.f64 z (-.f64 1 y)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
x
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
x
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 z (+.f64 (*.f64 b (-.f64 t 2)) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (+.f64 (*.f64 -1 z) b) y) (+.f64 z (+.f64 (*.f64 b (-.f64 t 2)) x))))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (+.f64 (*.f64 -1 z) b) y) (+.f64 z (+.f64 (*.f64 b (-.f64 t 2)) x))))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (+.f64 (*.f64 -1 z) b) y) (+.f64 z (+.f64 (*.f64 b (-.f64 t 2)) x))))
(*.f64 (+.f64 (*.f64 -1 z) b) y)
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 z (+.f64 (*.f64 (+.f64 (*.f64 -1 z) b) y) (+.f64 (*.f64 b (-.f64 t 2)) x))))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 z (+.f64 (*.f64 (+.f64 (*.f64 -1 z) b) y) (+.f64 (*.f64 b (-.f64 t 2)) x))))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 z (+.f64 (*.f64 (+.f64 (*.f64 -1 z) b) y) (+.f64 (*.f64 b (-.f64 t 2)) x))))
(*.f64 -1 (*.f64 y (+.f64 z (*.f64 -1 b))))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 -1 (*.f64 y (+.f64 z (*.f64 -1 b)))) (+.f64 z (+.f64 (*.f64 b (-.f64 t 2)) x))))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 -1 (*.f64 y (+.f64 z (*.f64 -1 b)))) (+.f64 z (+.f64 (*.f64 b (-.f64 t 2)) x))))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 -1 (*.f64 y (+.f64 z (*.f64 -1 b)))) (+.f64 z (+.f64 (*.f64 b (-.f64 t 2)) x))))
(+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 y 2) b) x)))
(+.f64 (*.f64 t (+.f64 b (*.f64 -1 a))) (+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 y 2) b) x))))
(+.f64 (*.f64 t (+.f64 b (*.f64 -1 a))) (+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 y 2) b) x))))
(+.f64 (*.f64 t (+.f64 b (*.f64 -1 a))) (+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 y 2) b) x))))
(*.f64 t (+.f64 b (*.f64 -1 a)))
(+.f64 a (+.f64 (*.f64 t (+.f64 b (*.f64 -1 a))) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 y 2) b) x))))
(+.f64 a (+.f64 (*.f64 t (+.f64 b (*.f64 -1 a))) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 y 2) b) x))))
(+.f64 a (+.f64 (*.f64 t (+.f64 b (*.f64 -1 a))) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 y 2) b) x))))
(*.f64 -1 (*.f64 (+.f64 a (*.f64 -1 b)) t))
(+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 -1 (*.f64 (+.f64 a (*.f64 -1 b)) t)) (+.f64 (*.f64 (-.f64 y 2) b) x))))
(+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 -1 (*.f64 (+.f64 a (*.f64 -1 b)) t)) (+.f64 (*.f64 (-.f64 y 2) b) x))))
(+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 -1 (*.f64 (+.f64 a (*.f64 -1 b)) t)) (+.f64 (*.f64 (-.f64 y 2) b) x))))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(*.f64 (-.f64 (+.f64 y t) 2) b)
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(*.f64 (-.f64 (+.f64 y t) 2) b)
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(*.f64 z (-.f64 1 y))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(*.f64 z (-.f64 1 y))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(*.f64 a (-.f64 1 t))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(*.f64 a (-.f64 1 t))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) (*.f64 (-.f64 (+.f64 y t) 2) b)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
x
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
x
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
Outputs
x
(+.f64 (*.f64 a (-.f64 1 t)) x)
(fma.f64 a (-.f64 1 t) x)
(+.f64 (*.f64 a (-.f64 1 t)) x)
(fma.f64 a (-.f64 1 t) x)
(+.f64 (*.f64 a (-.f64 1 t)) x)
(fma.f64 a (-.f64 1 t) x)
(*.f64 a (-.f64 1 t))
(fma.f64 a (neg.f64 t) a)
(+.f64 (*.f64 a (-.f64 1 t)) x)
(fma.f64 a (-.f64 1 t) x)
(+.f64 (*.f64 a (-.f64 1 t)) x)
(fma.f64 a (-.f64 1 t) x)
(+.f64 (*.f64 a (-.f64 1 t)) x)
(fma.f64 a (-.f64 1 t) x)
(*.f64 a (-.f64 1 t))
(fma.f64 a (neg.f64 t) a)
(+.f64 (*.f64 a (-.f64 1 t)) x)
(fma.f64 a (-.f64 1 t) x)
(+.f64 (*.f64 a (-.f64 1 t)) x)
(fma.f64 a (-.f64 1 t) x)
(+.f64 (*.f64 a (-.f64 1 t)) x)
(fma.f64 a (-.f64 1 t) x)
(+.f64 a x)
(+.f64 x a)
(+.f64 a (+.f64 (*.f64 -1 (*.f64 a t)) x))
(fma.f64 a (-.f64 1 t) x)
(+.f64 a (+.f64 (*.f64 -1 (*.f64 a t)) x))
(fma.f64 a (-.f64 1 t) x)
(+.f64 a (+.f64 (*.f64 -1 (*.f64 a t)) x))
(fma.f64 a (-.f64 1 t) x)
(*.f64 -1 (*.f64 a t))
(*.f64 (neg.f64 a) t)
(*.f64 a (neg.f64 t))
(+.f64 a (+.f64 (*.f64 -1 (*.f64 a t)) x))
(fma.f64 a (-.f64 1 t) x)
(+.f64 a (+.f64 (*.f64 -1 (*.f64 a t)) x))
(fma.f64 a (-.f64 1 t) x)
(+.f64 a (+.f64 (*.f64 -1 (*.f64 a t)) x))
(fma.f64 a (-.f64 1 t) x)
(*.f64 -1 (*.f64 a t))
(*.f64 (neg.f64 a) t)
(*.f64 a (neg.f64 t))
(+.f64 a (+.f64 (*.f64 -1 (*.f64 a t)) x))
(fma.f64 a (-.f64 1 t) x)
(+.f64 a (+.f64 (*.f64 -1 (*.f64 a t)) x))
(fma.f64 a (-.f64 1 t) x)
(+.f64 a (+.f64 (*.f64 -1 (*.f64 a t)) x))
(fma.f64 a (-.f64 1 t) x)
(*.f64 a (-.f64 1 t))
(fma.f64 a (neg.f64 t) a)
(+.f64 (*.f64 a (-.f64 1 t)) x)
(fma.f64 a (-.f64 1 t) x)
(+.f64 (*.f64 a (-.f64 1 t)) x)
(fma.f64 a (-.f64 1 t) x)
(+.f64 (*.f64 a (-.f64 1 t)) x)
(fma.f64 a (-.f64 1 t) x)
x
(+.f64 (*.f64 a (-.f64 1 t)) x)
(fma.f64 a (-.f64 1 t) x)
(+.f64 (*.f64 a (-.f64 1 t)) x)
(fma.f64 a (-.f64 1 t) x)
(+.f64 (*.f64 a (-.f64 1 t)) x)
(fma.f64 a (-.f64 1 t) x)
x
(+.f64 (*.f64 a (-.f64 1 t)) x)
(fma.f64 a (-.f64 1 t) x)
(+.f64 (*.f64 a (-.f64 1 t)) x)
(fma.f64 a (-.f64 1 t) x)
(+.f64 (*.f64 a (-.f64 1 t)) x)
(fma.f64 a (-.f64 1 t) x)
(+.f64 (*.f64 a (-.f64 1 t)) x)
(fma.f64 a (-.f64 1 t) x)
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(*.f64 z (-.f64 1 y))
(fma.f64 y (neg.f64 z) z)
(-.f64 z (*.f64 z y))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(*.f64 z (-.f64 1 y))
(fma.f64 y (neg.f64 z) z)
(-.f64 z (*.f64 z y))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 z x))
(fma.f64 a (-.f64 1 t) (+.f64 x z))
(+.f64 x (fma.f64 a (-.f64 1 t) z))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 z x)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 z x)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 z x)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(*.f64 -1 (*.f64 y z))
(neg.f64 (*.f64 z y))
(*.f64 z (neg.f64 y))
(*.f64 y (neg.f64 z))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 z x)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 z x)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 z x)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(*.f64 -1 (*.f64 y z))
(neg.f64 (*.f64 z y))
(*.f64 z (neg.f64 y))
(*.f64 y (neg.f64 z))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 z x)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 z x)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 z x)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(+.f64 (*.f64 z (-.f64 1 y)) x)
(fma.f64 z (-.f64 1 y) x)
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(*.f64 a (-.f64 1 t))
(fma.f64 a (neg.f64 t) a)
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(*.f64 a (-.f64 1 t))
(fma.f64 a (neg.f64 t) a)
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) x))
(+.f64 a (fma.f64 z (-.f64 1 y) x))
(+.f64 x (fma.f64 z (-.f64 1 y) a))
(+.f64 a (+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(+.f64 a (+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(+.f64 a (+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(*.f64 -1 (*.f64 a t))
(*.f64 (neg.f64 a) t)
(*.f64 a (neg.f64 t))
(+.f64 a (+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(+.f64 a (+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(+.f64 a (+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(*.f64 -1 (*.f64 a t))
(*.f64 (neg.f64 a) t)
(*.f64 a (neg.f64 t))
(+.f64 a (+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(+.f64 a (+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(+.f64 a (+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(+.f64 (*.f64 a (-.f64 1 t)) (*.f64 z (-.f64 1 y)))
(fma.f64 a (-.f64 1 t) (*.f64 z (-.f64 1 y)))
(fma.f64 a (-.f64 1 t) (fma.f64 y (neg.f64 z) z))
(-.f64 (fma.f64 z (-.f64 1 y) a) (*.f64 a t))
(fma.f64 z (-.f64 1 y) (fma.f64 a (neg.f64 t) a))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
x
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
x
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 z (+.f64 (*.f64 b (-.f64 t 2)) x)))
(fma.f64 a (-.f64 1 t) (+.f64 z (fma.f64 b (-.f64 t 2) x)))
(+.f64 x (fma.f64 a (-.f64 1 t) (fma.f64 b (-.f64 t 2) z)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (+.f64 (*.f64 -1 z) b) y) (+.f64 z (+.f64 (*.f64 b (-.f64 t 2)) x))))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) x)) (fma.f64 a (-.f64 1 t) z))
(+.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) z)))
(fma.f64 y (-.f64 b z) (fma.f64 a (-.f64 1 t) (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (+.f64 (*.f64 -1 z) b) y) (+.f64 z (+.f64 (*.f64 b (-.f64 t 2)) x))))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) x)) (fma.f64 a (-.f64 1 t) z))
(+.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) z)))
(fma.f64 y (-.f64 b z) (fma.f64 a (-.f64 1 t) (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (+.f64 (*.f64 -1 z) b) y) (+.f64 z (+.f64 (*.f64 b (-.f64 t 2)) x))))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) x)) (fma.f64 a (-.f64 1 t) z))
(+.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) z)))
(fma.f64 y (-.f64 b z) (fma.f64 a (-.f64 1 t) (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(*.f64 (+.f64 (*.f64 -1 z) b) y)
(*.f64 y (fma.f64 -1 z b))
(*.f64 y (-.f64 b z))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 z (+.f64 (*.f64 (+.f64 (*.f64 -1 z) b) y) (+.f64 (*.f64 b (-.f64 t 2)) x))))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) x)) (fma.f64 a (-.f64 1 t) z))
(+.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) z)))
(fma.f64 y (-.f64 b z) (fma.f64 a (-.f64 1 t) (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 z (+.f64 (*.f64 (+.f64 (*.f64 -1 z) b) y) (+.f64 (*.f64 b (-.f64 t 2)) x))))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) x)) (fma.f64 a (-.f64 1 t) z))
(+.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) z)))
(fma.f64 y (-.f64 b z) (fma.f64 a (-.f64 1 t) (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 z (+.f64 (*.f64 (+.f64 (*.f64 -1 z) b) y) (+.f64 (*.f64 b (-.f64 t 2)) x))))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) x)) (fma.f64 a (-.f64 1 t) z))
(+.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) z)))
(fma.f64 y (-.f64 b z) (fma.f64 a (-.f64 1 t) (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(*.f64 -1 (*.f64 y (+.f64 z (*.f64 -1 b))))
(*.f64 y (fma.f64 -1 z b))
(*.f64 y (-.f64 b z))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 -1 (*.f64 y (+.f64 z (*.f64 -1 b)))) (+.f64 z (+.f64 (*.f64 b (-.f64 t 2)) x))))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) x)) (fma.f64 a (-.f64 1 t) z))
(+.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) z)))
(fma.f64 y (-.f64 b z) (fma.f64 a (-.f64 1 t) (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 -1 (*.f64 y (+.f64 z (*.f64 -1 b)))) (+.f64 z (+.f64 (*.f64 b (-.f64 t 2)) x))))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) x)) (fma.f64 a (-.f64 1 t) z))
(+.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) z)))
(fma.f64 y (-.f64 b z) (fma.f64 a (-.f64 1 t) (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 -1 (*.f64 y (+.f64 z (*.f64 -1 b)))) (+.f64 z (+.f64 (*.f64 b (-.f64 t 2)) x))))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) x)) (fma.f64 a (-.f64 1 t) z))
(+.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) z)))
(fma.f64 y (-.f64 b z) (fma.f64 a (-.f64 1 t) (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 y 2) b) x)))
(+.f64 a (fma.f64 z (-.f64 1 y) (fma.f64 (+.f64 y -2) b x)))
(+.f64 a (fma.f64 z (-.f64 1 y) (fma.f64 b (-.f64 y 2) x)))
(+.f64 a (fma.f64 z (-.f64 1 y) (fma.f64 b (+.f64 y -2) x)))
(+.f64 (*.f64 t (+.f64 b (*.f64 -1 a))) (+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 y 2) b) x))))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) x)) (fma.f64 a (-.f64 1 t) z))
(+.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) z)))
(fma.f64 y (-.f64 b z) (fma.f64 a (-.f64 1 t) (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 (*.f64 t (+.f64 b (*.f64 -1 a))) (+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 y 2) b) x))))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) x)) (fma.f64 a (-.f64 1 t) z))
(+.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) z)))
(fma.f64 y (-.f64 b z) (fma.f64 a (-.f64 1 t) (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 (*.f64 t (+.f64 b (*.f64 -1 a))) (+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 y 2) b) x))))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) x)) (fma.f64 a (-.f64 1 t) z))
(+.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) z)))
(fma.f64 y (-.f64 b z) (fma.f64 a (-.f64 1 t) (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(*.f64 t (+.f64 b (*.f64 -1 a)))
(*.f64 t (+.f64 b (neg.f64 a)))
(*.f64 t (-.f64 b a))
(+.f64 a (+.f64 (*.f64 t (+.f64 b (*.f64 -1 a))) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 y 2) b) x))))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) x)) (fma.f64 a (-.f64 1 t) z))
(+.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) z)))
(fma.f64 y (-.f64 b z) (fma.f64 a (-.f64 1 t) (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 a (+.f64 (*.f64 t (+.f64 b (*.f64 -1 a))) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 y 2) b) x))))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) x)) (fma.f64 a (-.f64 1 t) z))
(+.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) z)))
(fma.f64 y (-.f64 b z) (fma.f64 a (-.f64 1 t) (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 a (+.f64 (*.f64 t (+.f64 b (*.f64 -1 a))) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 y 2) b) x))))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) x)) (fma.f64 a (-.f64 1 t) z))
(+.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) z)))
(fma.f64 y (-.f64 b z) (fma.f64 a (-.f64 1 t) (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(*.f64 -1 (*.f64 (+.f64 a (*.f64 -1 b)) t))
(*.f64 t (+.f64 b (neg.f64 a)))
(*.f64 t (-.f64 b a))
(+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 -1 (*.f64 (+.f64 a (*.f64 -1 b)) t)) (+.f64 (*.f64 (-.f64 y 2) b) x))))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) x)) (fma.f64 a (-.f64 1 t) z))
(+.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) z)))
(fma.f64 y (-.f64 b z) (fma.f64 a (-.f64 1 t) (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 -1 (*.f64 (+.f64 a (*.f64 -1 b)) t)) (+.f64 (*.f64 (-.f64 y 2) b) x))))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) x)) (fma.f64 a (-.f64 1 t) z))
(+.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) z)))
(fma.f64 y (-.f64 b z) (fma.f64 a (-.f64 1 t) (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 -1 (*.f64 (+.f64 a (*.f64 -1 b)) t)) (+.f64 (*.f64 (-.f64 y 2) b) x))))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) x)) (fma.f64 a (-.f64 1 t) z))
(+.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) z)))
(fma.f64 y (-.f64 b z) (fma.f64 a (-.f64 1 t) (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) x)) (fma.f64 a (-.f64 1 t) z))
(+.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) z)))
(fma.f64 y (-.f64 b z) (fma.f64 a (-.f64 1 t) (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) x)) (fma.f64 a (-.f64 1 t) z))
(+.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) z)))
(fma.f64 y (-.f64 b z) (fma.f64 a (-.f64 1 t) (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) x)) (fma.f64 a (-.f64 1 t) z))
(+.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) z)))
(fma.f64 y (-.f64 b z) (fma.f64 a (-.f64 1 t) (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(*.f64 (-.f64 (+.f64 y t) 2) b)
(*.f64 b (+.f64 y (-.f64 t 2)))
(*.f64 b (+.f64 t (-.f64 y 2)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) x)) (fma.f64 a (-.f64 1 t) z))
(+.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) z)))
(fma.f64 y (-.f64 b z) (fma.f64 a (-.f64 1 t) (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) x)) (fma.f64 a (-.f64 1 t) z))
(+.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) z)))
(fma.f64 y (-.f64 b z) (fma.f64 a (-.f64 1 t) (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) x)) (fma.f64 a (-.f64 1 t) z))
(+.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) z)))
(fma.f64 y (-.f64 b z) (fma.f64 a (-.f64 1 t) (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(*.f64 (-.f64 (+.f64 y t) 2) b)
(*.f64 b (+.f64 y (-.f64 t 2)))
(*.f64 b (+.f64 t (-.f64 y 2)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) x)) (fma.f64 a (-.f64 1 t) z))
(+.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) z)))
(fma.f64 y (-.f64 b z) (fma.f64 a (-.f64 1 t) (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) x)) (fma.f64 a (-.f64 1 t) z))
(+.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) z)))
(fma.f64 y (-.f64 b z) (fma.f64 a (-.f64 1 t) (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) x)) (fma.f64 a (-.f64 1 t) z))
(+.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) z)))
(fma.f64 y (-.f64 b z) (fma.f64 a (-.f64 1 t) (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x))
(fma.f64 a (-.f64 1 t) (fma.f64 (+.f64 y (-.f64 t 2)) b x))
(fma.f64 a (-.f64 1 t) (fma.f64 b (+.f64 t (-.f64 y 2)) x))
(fma.f64 b (+.f64 t (-.f64 y 2)) (fma.f64 a (-.f64 1 t) x))
(+.f64 (fma.f64 b (+.f64 y -2) x) (fma.f64 t (-.f64 b a) a))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) x)) (fma.f64 a (-.f64 1 t) z))
(+.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) z)))
(fma.f64 y (-.f64 b z) (fma.f64 a (-.f64 1 t) (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) x)) (fma.f64 a (-.f64 1 t) z))
(+.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) z)))
(fma.f64 y (-.f64 b z) (fma.f64 a (-.f64 1 t) (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) x)) (fma.f64 a (-.f64 1 t) z))
(+.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) z)))
(fma.f64 y (-.f64 b z) (fma.f64 a (-.f64 1 t) (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(*.f64 z (-.f64 1 y))
(fma.f64 y (neg.f64 z) z)
(-.f64 z (*.f64 z y))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) x)) (fma.f64 a (-.f64 1 t) z))
(+.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) z)))
(fma.f64 y (-.f64 b z) (fma.f64 a (-.f64 1 t) (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) x)) (fma.f64 a (-.f64 1 t) z))
(+.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) z)))
(fma.f64 y (-.f64 b z) (fma.f64 a (-.f64 1 t) (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) x)) (fma.f64 a (-.f64 1 t) z))
(+.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) z)))
(fma.f64 y (-.f64 b z) (fma.f64 a (-.f64 1 t) (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(*.f64 z (-.f64 1 y))
(fma.f64 y (neg.f64 z) z)
(-.f64 z (*.f64 z y))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) x)) (fma.f64 a (-.f64 1 t) z))
(+.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) z)))
(fma.f64 y (-.f64 b z) (fma.f64 a (-.f64 1 t) (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) x)) (fma.f64 a (-.f64 1 t) z))
(+.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) z)))
(fma.f64 y (-.f64 b z) (fma.f64 a (-.f64 1 t) (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) x)) (fma.f64 a (-.f64 1 t) z))
(+.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) z)))
(fma.f64 y (-.f64 b z) (fma.f64 a (-.f64 1 t) (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 z (-.f64 1 y) (fma.f64 (+.f64 y (-.f64 t 2)) b x))
(fma.f64 z (-.f64 1 y) (fma.f64 b (+.f64 t (-.f64 y 2)) x))
(+.f64 x (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) z)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) x)) (fma.f64 a (-.f64 1 t) z))
(+.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) z)))
(fma.f64 y (-.f64 b z) (fma.f64 a (-.f64 1 t) (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) x)) (fma.f64 a (-.f64 1 t) z))
(+.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) z)))
(fma.f64 y (-.f64 b z) (fma.f64 a (-.f64 1 t) (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) x)) (fma.f64 a (-.f64 1 t) z))
(+.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) z)))
(fma.f64 y (-.f64 b z) (fma.f64 a (-.f64 1 t) (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(*.f64 a (-.f64 1 t))
(fma.f64 a (neg.f64 t) a)
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) x)) (fma.f64 a (-.f64 1 t) z))
(+.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) z)))
(fma.f64 y (-.f64 b z) (fma.f64 a (-.f64 1 t) (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) x)) (fma.f64 a (-.f64 1 t) z))
(+.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) z)))
(fma.f64 y (-.f64 b z) (fma.f64 a (-.f64 1 t) (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) x)) (fma.f64 a (-.f64 1 t) z))
(+.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) z)))
(fma.f64 y (-.f64 b z) (fma.f64 a (-.f64 1 t) (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(*.f64 a (-.f64 1 t))
(fma.f64 a (neg.f64 t) a)
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) x)) (fma.f64 a (-.f64 1 t) z))
(+.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) z)))
(fma.f64 y (-.f64 b z) (fma.f64 a (-.f64 1 t) (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) x)) (fma.f64 a (-.f64 1 t) z))
(+.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) z)))
(fma.f64 y (-.f64 b z) (fma.f64 a (-.f64 1 t) (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) x)) (fma.f64 a (-.f64 1 t) z))
(+.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) z)))
(fma.f64 y (-.f64 b z) (fma.f64 a (-.f64 1 t) (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) (*.f64 (-.f64 (+.f64 y t) 2) b)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) (*.f64 b (+.f64 y (-.f64 t 2)))))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) (*.f64 b (+.f64 t (-.f64 y 2)))))
(fma.f64 a (-.f64 1 t) (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) z)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) x)) (fma.f64 a (-.f64 1 t) z))
(+.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) z)))
(fma.f64 y (-.f64 b z) (fma.f64 a (-.f64 1 t) (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) x)) (fma.f64 a (-.f64 1 t) z))
(+.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) z)))
(fma.f64 y (-.f64 b z) (fma.f64 a (-.f64 1 t) (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) x)) (fma.f64 a (-.f64 1 t) z))
(+.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) z)))
(fma.f64 y (-.f64 b z) (fma.f64 a (-.f64 1 t) (+.f64 z (fma.f64 b (-.f64 t 2) x))))
x
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) x)) (fma.f64 a (-.f64 1 t) z))
(+.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) z)))
(fma.f64 y (-.f64 b z) (fma.f64 a (-.f64 1 t) (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) x)) (fma.f64 a (-.f64 1 t) z))
(+.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) z)))
(fma.f64 y (-.f64 b z) (fma.f64 a (-.f64 1 t) (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) x)) (fma.f64 a (-.f64 1 t) z))
(+.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) z)))
(fma.f64 y (-.f64 b z) (fma.f64 a (-.f64 1 t) (+.f64 z (fma.f64 b (-.f64 t 2) x))))
x
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) x)) (fma.f64 a (-.f64 1 t) z))
(+.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) z)))
(fma.f64 y (-.f64 b z) (fma.f64 a (-.f64 1 t) (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) x)) (fma.f64 a (-.f64 1 t) z))
(+.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) z)))
(fma.f64 y (-.f64 b z) (fma.f64 a (-.f64 1 t) (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (-.f64 t 2) x))))
(+.f64 (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) x)) (fma.f64 a (-.f64 1 t) z))
(+.f64 (fma.f64 a (-.f64 1 t) x) (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) z)))
(fma.f64 y (-.f64 b z) (fma.f64 a (-.f64 1 t) (+.f64 z (fma.f64 b (-.f64 t 2) x))))

eval364.0ms (0.9%)

Compiler

Compiled 7363 to 4404 computations (40.2% saved)

prune165.0ms (0.4%)

Pruning

14 alts after pruning (14 fresh and 0 done)

PrunedKeptTotal
New29514309
Fresh000
Picked101
Done101
Total29714311
Error
0b
Counts
311 → 14
Alt Table
Click to see full alt table
StatusErrorProgram
30.5b
(+.f64 (*.f64 a (-.f64 1 t)) (*.f64 (-.f64 (+.f64 y t) 2) b))
37.0b
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 (-.f64 (+.f64 y t) 2) b))
51.2b
(*.f64 t (-.f64 b a))
0.0b
(+.f64 (-.f64 (-.f64 x (-.f64 (*.f64 z y) z)) (*.f64 (-.f64 t 1) a)) (*.f64 (-.f64 (+.f64 y t) 2) b))
12.5b
(+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 y 2) b) x)))
27.2b
(+.f64 (*.f64 z (-.f64 1 y)) (*.f64 (-.f64 (+.f64 y t) 2) b))
0.0b
(fma.f64 (+.f64 y (+.f64 t -2)) b (fma.f64 z (-.f64 1 y) (+.f64 (*.f64 a (-.f64 1 t)) x)))
14.3b
(+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 y 1) z)) (*.f64 (-.f64 t 1) a)) (*.f64 y b))
50.8b
(*.f64 y (-.f64 b z))
43.4b
(*.f64 (-.f64 (+.f64 y t) 2) b)
38.4b
(+.f64 (*.f64 a (neg.f64 t)) (*.f64 (-.f64 (+.f64 y t) 2) b))
30.1b
(+.f64 x (*.f64 (-.f64 (+.f64 y t) 2) b))
12.7b
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 z (+.f64 (*.f64 b (-.f64 t 2)) x)))
13.6b
(+.f64 x (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) z)))
Compiler

Compiled 520 to 368 computations (29.2% saved)

localize74.0ms (0.2%)

Local error

Found 4 expressions with local error:

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

Compiled 86 to 34 computations (60.5% saved)

series16.0ms (0%)

Counts
2 → 84
Calls

21 calls:

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

rewrite94.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
761×log-prod_binary64
483×fma-neg_binary64
278×expm1-udef_binary64
278×log1p-udef_binary64
220×log-pow_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify333.0ms (0.9%)

Algorithm
egg-herbie
Rules
1862×fma-neg_binary64
403×sub-neg_binary64
363×fma-def_binary64
333×associate-+l-_binary64
327×distribute-rgt-in_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0501037
1165943
2396939
3936939
42355939
52930939
63463939
73668939
83691939
93691939
105627939
115699939
125699939
135699939
145837939
155837939
Stop Event
saturated
Counts
222 → 175
Calls
Call 1
Inputs
(*.f64 z (-.f64 y 1))
(*.f64 z (-.f64 y 1))
(*.f64 z (-.f64 y 1))
(*.f64 z (-.f64 y 1))
(*.f64 z (-.f64 y 1))
(*.f64 z (-.f64 y 1))
(*.f64 z (-.f64 y 1))
(*.f64 z (-.f64 y 1))
(*.f64 -1 (*.f64 (+.f64 1 (*.f64 -1 y)) z))
(*.f64 -1 (*.f64 (+.f64 1 (*.f64 -1 y)) z))
(*.f64 -1 (*.f64 (+.f64 1 (*.f64 -1 y)) z))
(*.f64 -1 (*.f64 (+.f64 1 (*.f64 -1 y)) z))
(*.f64 -1 z)
(+.f64 (*.f64 y z) (*.f64 -1 z))
(+.f64 (*.f64 y z) (*.f64 -1 z))
(+.f64 (*.f64 y z) (*.f64 -1 z))
(*.f64 y z)
(+.f64 (*.f64 -1 z) (*.f64 y z))
(+.f64 (*.f64 -1 z) (*.f64 y z))
(+.f64 (*.f64 -1 z) (*.f64 y z))
(*.f64 y z)
(+.f64 (*.f64 -1 z) (*.f64 y z))
(+.f64 (*.f64 -1 z) (*.f64 y z))
(+.f64 (*.f64 -1 z) (*.f64 y z))
(-.f64 z (+.f64 (*.f64 y z) (*.f64 (-.f64 t 1) a)))
(-.f64 (+.f64 z x) (+.f64 (*.f64 y z) (*.f64 (-.f64 t 1) a)))
(-.f64 (+.f64 z x) (+.f64 (*.f64 y z) (*.f64 (-.f64 t 1) a)))
(-.f64 (+.f64 z x) (+.f64 (*.f64 y z) (*.f64 (-.f64 t 1) a)))
x
(-.f64 (+.f64 z x) (+.f64 (*.f64 y z) (*.f64 (-.f64 t 1) a)))
(-.f64 (+.f64 z x) (+.f64 (*.f64 y z) (*.f64 (-.f64 t 1) a)))
(-.f64 (+.f64 z x) (+.f64 (*.f64 y z) (*.f64 (-.f64 t 1) a)))
x
(-.f64 (+.f64 z x) (+.f64 (*.f64 y z) (*.f64 (-.f64 t 1) a)))
(-.f64 (+.f64 z x) (+.f64 (*.f64 y z) (*.f64 (-.f64 t 1) a)))
(-.f64 (+.f64 z x) (+.f64 (*.f64 y z) (*.f64 (-.f64 t 1) a)))
(-.f64 x (*.f64 (-.f64 t 1) a))
(-.f64 (+.f64 (*.f64 z (-.f64 1 y)) x) (*.f64 (-.f64 t 1) a))
(-.f64 (+.f64 (*.f64 z (-.f64 1 y)) x) (*.f64 (-.f64 t 1) a))
(-.f64 (+.f64 (*.f64 z (-.f64 1 y)) x) (*.f64 (-.f64 t 1) a))
(*.f64 z (-.f64 1 y))
(-.f64 (+.f64 (*.f64 z (-.f64 1 y)) x) (*.f64 (-.f64 t 1) a))
(-.f64 (+.f64 (*.f64 z (-.f64 1 y)) x) (*.f64 (-.f64 t 1) a))
(-.f64 (+.f64 (*.f64 z (-.f64 1 y)) x) (*.f64 (-.f64 t 1) a))
(*.f64 (+.f64 1 (*.f64 -1 y)) z)
(-.f64 (+.f64 (*.f64 (+.f64 1 (*.f64 -1 y)) z) x) (*.f64 (-.f64 t 1) a))
(-.f64 (+.f64 (*.f64 (+.f64 1 (*.f64 -1 y)) z) x) (*.f64 (-.f64 t 1) a))
(-.f64 (+.f64 (*.f64 (+.f64 1 (*.f64 -1 y)) z) x) (*.f64 (-.f64 t 1) a))
(-.f64 (+.f64 z x) (*.f64 (-.f64 t 1) a))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 z x)) (*.f64 (-.f64 t 1) a))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 z x)) (*.f64 (-.f64 t 1) a))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 z x)) (*.f64 (-.f64 t 1) a))
(*.f64 -1 (*.f64 y z))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 z x)) (*.f64 (-.f64 t 1) a))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 z x)) (*.f64 (-.f64 t 1) a))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 z x)) (*.f64 (-.f64 t 1) a))
(*.f64 -1 (*.f64 y z))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 z x)) (*.f64 (-.f64 t 1) a))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 z x)) (*.f64 (-.f64 t 1) a))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 z x)) (*.f64 (-.f64 t 1) a))
(-.f64 (+.f64 z x) (+.f64 (*.f64 y z) (*.f64 -1 a)))
(-.f64 (+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 z x)) (+.f64 (*.f64 y z) (*.f64 -1 a)))
(-.f64 (+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 z x)) (+.f64 (*.f64 y z) (*.f64 -1 a)))
(-.f64 (+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 z x)) (+.f64 (*.f64 y z) (*.f64 -1 a)))
(*.f64 -1 (*.f64 a t))
(-.f64 (+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 z x)) (+.f64 (*.f64 y z) (*.f64 -1 a)))
(-.f64 (+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 z x)) (+.f64 (*.f64 y z) (*.f64 -1 a)))
(-.f64 (+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 z x)) (+.f64 (*.f64 y z) (*.f64 -1 a)))
(*.f64 -1 (*.f64 a t))
(-.f64 (+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 z x)) (+.f64 (*.f64 y z) (*.f64 -1 a)))
(-.f64 (+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 z x)) (+.f64 (*.f64 y z) (*.f64 -1 a)))
(-.f64 (+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 z x)) (+.f64 (*.f64 y z) (*.f64 -1 a)))
(-.f64 (+.f64 z x) (*.f64 y z))
(-.f64 (+.f64 (*.f64 a (-.f64 1 t)) (+.f64 z x)) (*.f64 y z))
(-.f64 (+.f64 (*.f64 a (-.f64 1 t)) (+.f64 z x)) (*.f64 y z))
(-.f64 (+.f64 (*.f64 a (-.f64 1 t)) (+.f64 z x)) (*.f64 y z))
(*.f64 a (-.f64 1 t))
(-.f64 (+.f64 (*.f64 a (-.f64 1 t)) (+.f64 z x)) (*.f64 y z))
(-.f64 (+.f64 (*.f64 a (-.f64 1 t)) (+.f64 z x)) (*.f64 y z))
(-.f64 (+.f64 (*.f64 a (-.f64 1 t)) (+.f64 z x)) (*.f64 y z))
(*.f64 -1 (*.f64 (-.f64 t 1) a))
(-.f64 (+.f64 (*.f64 -1 (*.f64 (-.f64 t 1) a)) (+.f64 z x)) (*.f64 y z))
(-.f64 (+.f64 (*.f64 -1 (*.f64 (-.f64 t 1) a)) (+.f64 z x)) (*.f64 y z))
(-.f64 (+.f64 (*.f64 -1 (*.f64 (-.f64 t 1) a)) (+.f64 z x)) (*.f64 y z))
Outputs
(*.f64 z (-.f64 y 1))
(-.f64 (*.f64 z y) z)
(*.f64 z (-.f64 y 1))
(-.f64 (*.f64 z y) z)
(*.f64 z (-.f64 y 1))
(-.f64 (*.f64 z y) z)
(*.f64 z (-.f64 y 1))
(-.f64 (*.f64 z y) z)
(*.f64 z (-.f64 y 1))
(-.f64 (*.f64 z y) z)
(*.f64 z (-.f64 y 1))
(-.f64 (*.f64 z y) z)
(*.f64 z (-.f64 y 1))
(-.f64 (*.f64 z y) z)
(*.f64 z (-.f64 y 1))
(-.f64 (*.f64 z y) z)
(*.f64 -1 (*.f64 (+.f64 1 (*.f64 -1 y)) z))
(*.f64 z (-.f64 y 1))
(-.f64 (*.f64 z y) z)
(*.f64 -1 (*.f64 (+.f64 1 (*.f64 -1 y)) z))
(*.f64 z (-.f64 y 1))
(-.f64 (*.f64 z y) z)
(*.f64 -1 (*.f64 (+.f64 1 (*.f64 -1 y)) z))
(*.f64 z (-.f64 y 1))
(-.f64 (*.f64 z y) z)
(*.f64 -1 (*.f64 (+.f64 1 (*.f64 -1 y)) z))
(*.f64 z (-.f64 y 1))
(-.f64 (*.f64 z y) z)
(*.f64 -1 z)
(neg.f64 z)
(+.f64 (*.f64 y z) (*.f64 -1 z))
(*.f64 z (-.f64 y 1))
(-.f64 (*.f64 z y) z)
(+.f64 (*.f64 y z) (*.f64 -1 z))
(*.f64 z (-.f64 y 1))
(-.f64 (*.f64 z y) z)
(+.f64 (*.f64 y z) (*.f64 -1 z))
(*.f64 z (-.f64 y 1))
(-.f64 (*.f64 z y) z)
(*.f64 y z)
(*.f64 z y)
(+.f64 (*.f64 -1 z) (*.f64 y z))
(*.f64 z (-.f64 y 1))
(-.f64 (*.f64 z y) z)
(+.f64 (*.f64 -1 z) (*.f64 y z))
(*.f64 z (-.f64 y 1))
(-.f64 (*.f64 z y) z)
(+.f64 (*.f64 -1 z) (*.f64 y z))
(*.f64 z (-.f64 y 1))
(-.f64 (*.f64 z y) z)
(*.f64 y z)
(*.f64 z y)
(+.f64 (*.f64 -1 z) (*.f64 y z))
(*.f64 z (-.f64 y 1))
(-.f64 (*.f64 z y) z)
(+.f64 (*.f64 -1 z) (*.f64 y z))
(*.f64 z (-.f64 y 1))
(-.f64 (*.f64 z y) z)
(+.f64 (*.f64 -1 z) (*.f64 y z))
(*.f64 z (-.f64 y 1))
(-.f64 (*.f64 z y) z)
(-.f64 z (+.f64 (*.f64 y z) (*.f64 (-.f64 t 1) a)))
(-.f64 z (fma.f64 y z (*.f64 (-.f64 t 1) a)))
(-.f64 z (fma.f64 z y (*.f64 (-.f64 t 1) a)))
(-.f64 z (fma.f64 z y (-.f64 (*.f64 t a) a)))
(-.f64 (+.f64 z x) (+.f64 (*.f64 y z) (*.f64 (-.f64 t 1) a)))
(-.f64 (+.f64 z x) (fma.f64 y z (*.f64 (-.f64 t 1) a)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x))
(-.f64 (+.f64 z x) (+.f64 (*.f64 y z) (*.f64 (-.f64 t 1) a)))
(-.f64 (+.f64 z x) (fma.f64 y z (*.f64 (-.f64 t 1) a)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x))
(-.f64 (+.f64 z x) (+.f64 (*.f64 y z) (*.f64 (-.f64 t 1) a)))
(-.f64 (+.f64 z x) (fma.f64 y z (*.f64 (-.f64 t 1) a)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x))
x
(-.f64 (+.f64 z x) (+.f64 (*.f64 y z) (*.f64 (-.f64 t 1) a)))
(-.f64 (+.f64 z x) (fma.f64 y z (*.f64 (-.f64 t 1) a)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x))
(-.f64 (+.f64 z x) (+.f64 (*.f64 y z) (*.f64 (-.f64 t 1) a)))
(-.f64 (+.f64 z x) (fma.f64 y z (*.f64 (-.f64 t 1) a)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x))
(-.f64 (+.f64 z x) (+.f64 (*.f64 y z) (*.f64 (-.f64 t 1) a)))
(-.f64 (+.f64 z x) (fma.f64 y z (*.f64 (-.f64 t 1) a)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x))
x
(-.f64 (+.f64 z x) (+.f64 (*.f64 y z) (*.f64 (-.f64 t 1) a)))
(-.f64 (+.f64 z x) (fma.f64 y z (*.f64 (-.f64 t 1) a)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x))
(-.f64 (+.f64 z x) (+.f64 (*.f64 y z) (*.f64 (-.f64 t 1) a)))
(-.f64 (+.f64 z x) (fma.f64 y z (*.f64 (-.f64 t 1) a)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x))
(-.f64 (+.f64 z x) (+.f64 (*.f64 y z) (*.f64 (-.f64 t 1) a)))
(-.f64 (+.f64 z x) (fma.f64 y z (*.f64 (-.f64 t 1) a)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x))
(-.f64 x (*.f64 (-.f64 t 1) a))
(+.f64 x (*.f64 a (-.f64 1 t)))
(fma.f64 a (-.f64 1 t) x)
(-.f64 (+.f64 (*.f64 z (-.f64 1 y)) x) (*.f64 (-.f64 t 1) a))
(-.f64 (+.f64 z x) (fma.f64 y z (*.f64 (-.f64 t 1) a)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x))
(-.f64 (+.f64 (*.f64 z (-.f64 1 y)) x) (*.f64 (-.f64 t 1) a))
(-.f64 (+.f64 z x) (fma.f64 y z (*.f64 (-.f64 t 1) a)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x))
(-.f64 (+.f64 (*.f64 z (-.f64 1 y)) x) (*.f64 (-.f64 t 1) a))
(-.f64 (+.f64 z x) (fma.f64 y z (*.f64 (-.f64 t 1) a)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x))
(*.f64 z (-.f64 1 y))
(-.f64 z (*.f64 z y))
(-.f64 (+.f64 (*.f64 z (-.f64 1 y)) x) (*.f64 (-.f64 t 1) a))
(-.f64 (+.f64 z x) (fma.f64 y z (*.f64 (-.f64 t 1) a)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x))
(-.f64 (+.f64 (*.f64 z (-.f64 1 y)) x) (*.f64 (-.f64 t 1) a))
(-.f64 (+.f64 z x) (fma.f64 y z (*.f64 (-.f64 t 1) a)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x))
(-.f64 (+.f64 (*.f64 z (-.f64 1 y)) x) (*.f64 (-.f64 t 1) a))
(-.f64 (+.f64 z x) (fma.f64 y z (*.f64 (-.f64 t 1) a)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x))
(*.f64 (+.f64 1 (*.f64 -1 y)) z)
(*.f64 z (-.f64 1 y))
(-.f64 z (*.f64 z y))
(-.f64 (+.f64 (*.f64 (+.f64 1 (*.f64 -1 y)) z) x) (*.f64 (-.f64 t 1) a))
(-.f64 (+.f64 z x) (fma.f64 y z (*.f64 (-.f64 t 1) a)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x))
(-.f64 (+.f64 (*.f64 (+.f64 1 (*.f64 -1 y)) z) x) (*.f64 (-.f64 t 1) a))
(-.f64 (+.f64 z x) (fma.f64 y z (*.f64 (-.f64 t 1) a)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x))
(-.f64 (+.f64 (*.f64 (+.f64 1 (*.f64 -1 y)) z) x) (*.f64 (-.f64 t 1) a))
(-.f64 (+.f64 z x) (fma.f64 y z (*.f64 (-.f64 t 1) a)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x))
(-.f64 (+.f64 z x) (*.f64 (-.f64 t 1) a))
(+.f64 x (fma.f64 a (-.f64 1 t) z))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 z x)) (*.f64 (-.f64 t 1) a))
(-.f64 (+.f64 z x) (fma.f64 y z (*.f64 (-.f64 t 1) a)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 z x)) (*.f64 (-.f64 t 1) a))
(-.f64 (+.f64 z x) (fma.f64 y z (*.f64 (-.f64 t 1) a)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 z x)) (*.f64 (-.f64 t 1) a))
(-.f64 (+.f64 z x) (fma.f64 y z (*.f64 (-.f64 t 1) a)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x))
(*.f64 -1 (*.f64 y z))
(*.f64 (neg.f64 y) z)
(*.f64 z (neg.f64 y))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 z x)) (*.f64 (-.f64 t 1) a))
(-.f64 (+.f64 z x) (fma.f64 y z (*.f64 (-.f64 t 1) a)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 z x)) (*.f64 (-.f64 t 1) a))
(-.f64 (+.f64 z x) (fma.f64 y z (*.f64 (-.f64 t 1) a)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 z x)) (*.f64 (-.f64 t 1) a))
(-.f64 (+.f64 z x) (fma.f64 y z (*.f64 (-.f64 t 1) a)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x))
(*.f64 -1 (*.f64 y z))
(*.f64 (neg.f64 y) z)
(*.f64 z (neg.f64 y))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 z x)) (*.f64 (-.f64 t 1) a))
(-.f64 (+.f64 z x) (fma.f64 y z (*.f64 (-.f64 t 1) a)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 z x)) (*.f64 (-.f64 t 1) a))
(-.f64 (+.f64 z x) (fma.f64 y z (*.f64 (-.f64 t 1) a)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 z x)) (*.f64 (-.f64 t 1) a))
(-.f64 (+.f64 z x) (fma.f64 y z (*.f64 (-.f64 t 1) a)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x))
(-.f64 (+.f64 z x) (+.f64 (*.f64 y z) (*.f64 -1 a)))
(+.f64 z (-.f64 x (fma.f64 y z (neg.f64 a))))
(+.f64 z (-.f64 x (-.f64 (*.f64 z y) a)))
(+.f64 a (fma.f64 z (-.f64 1 y) x))
(+.f64 x (fma.f64 z (-.f64 1 y) a))
(-.f64 (+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 z x)) (+.f64 (*.f64 y z) (*.f64 -1 a)))
(-.f64 (+.f64 z x) (fma.f64 y z (*.f64 (-.f64 t 1) a)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x))
(-.f64 (+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 z x)) (+.f64 (*.f64 y z) (*.f64 -1 a)))
(-.f64 (+.f64 z x) (fma.f64 y z (*.f64 (-.f64 t 1) a)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x))
(-.f64 (+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 z x)) (+.f64 (*.f64 y z) (*.f64 -1 a)))
(-.f64 (+.f64 z x) (fma.f64 y z (*.f64 (-.f64 t 1) a)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x))
(*.f64 -1 (*.f64 a t))
(neg.f64 (*.f64 t a))
(*.f64 a (neg.f64 t))
(*.f64 t (neg.f64 a))
(-.f64 (+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 z x)) (+.f64 (*.f64 y z) (*.f64 -1 a)))
(-.f64 (+.f64 z x) (fma.f64 y z (*.f64 (-.f64 t 1) a)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x))
(-.f64 (+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 z x)) (+.f64 (*.f64 y z) (*.f64 -1 a)))
(-.f64 (+.f64 z x) (fma.f64 y z (*.f64 (-.f64 t 1) a)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x))
(-.f64 (+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 z x)) (+.f64 (*.f64 y z) (*.f64 -1 a)))
(-.f64 (+.f64 z x) (fma.f64 y z (*.f64 (-.f64 t 1) a)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x))
(*.f64 -1 (*.f64 a t))
(neg.f64 (*.f64 t a))
(*.f64 a (neg.f64 t))
(*.f64 t (neg.f64 a))
(-.f64 (+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 z x)) (+.f64 (*.f64 y z) (*.f64 -1 a)))
(-.f64 (+.f64 z x) (fma.f64 y z (*.f64 (-.f64 t 1) a)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x))
(-.f64 (+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 z x)) (+.f64 (*.f64 y z) (*.f64 -1 a)))
(-.f64 (+.f64 z x) (fma.f64 y z (*.f64 (-.f64 t 1) a)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x))
(-.f64 (+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 z x)) (+.f64 (*.f64 y z) (*.f64 -1 a)))
(-.f64 (+.f64 z x) (fma.f64 y z (*.f64 (-.f64 t 1) a)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x))
(-.f64 (+.f64 z x) (*.f64 y z))
(+.f64 z (-.f64 x (*.f64 z y)))
(fma.f64 z (-.f64 1 y) x)
(-.f64 (+.f64 (*.f64 a (-.f64 1 t)) (+.f64 z x)) (*.f64 y z))
(-.f64 (+.f64 z x) (fma.f64 y z (*.f64 (-.f64 t 1) a)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x))
(-.f64 (+.f64 (*.f64 a (-.f64 1 t)) (+.f64 z x)) (*.f64 y z))
(-.f64 (+.f64 z x) (fma.f64 y z (*.f64 (-.f64 t 1) a)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x))
(-.f64 (+.f64 (*.f64 a (-.f64 1 t)) (+.f64 z x)) (*.f64 y z))
(-.f64 (+.f64 z x) (fma.f64 y z (*.f64 (-.f64 t 1) a)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x))
(*.f64 a (-.f64 1 t))
(-.f64 a (*.f64 t a))
(fma.f64 a (neg.f64 t) a)
(-.f64 (+.f64 (*.f64 a (-.f64 1 t)) (+.f64 z x)) (*.f64 y z))
(-.f64 (+.f64 z x) (fma.f64 y z (*.f64 (-.f64 t 1) a)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x))
(-.f64 (+.f64 (*.f64 a (-.f64 1 t)) (+.f64 z x)) (*.f64 y z))
(-.f64 (+.f64 z x) (fma.f64 y z (*.f64 (-.f64 t 1) a)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x))
(-.f64 (+.f64 (*.f64 a (-.f64 1 t)) (+.f64 z x)) (*.f64 y z))
(-.f64 (+.f64 z x) (fma.f64 y z (*.f64 (-.f64 t 1) a)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x))
(*.f64 -1 (*.f64 (-.f64 t 1) a))
(*.f64 a (-.f64 1 t))
(-.f64 a (*.f64 t a))
(fma.f64 a (neg.f64 t) a)
(-.f64 (+.f64 (*.f64 -1 (*.f64 (-.f64 t 1) a)) (+.f64 z x)) (*.f64 y z))
(-.f64 (+.f64 z x) (fma.f64 y z (*.f64 (-.f64 t 1) a)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x))
(-.f64 (+.f64 (*.f64 -1 (*.f64 (-.f64 t 1) a)) (+.f64 z x)) (*.f64 y z))
(-.f64 (+.f64 z x) (fma.f64 y z (*.f64 (-.f64 t 1) a)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x))
(-.f64 (+.f64 (*.f64 -1 (*.f64 (-.f64 t 1) a)) (+.f64 z x)) (*.f64 y z))
(-.f64 (+.f64 z x) (fma.f64 y z (*.f64 (-.f64 t 1) a)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x))

localize15.0ms (0%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(*.f64 t (-.f64 b a))
Compiler

Compiled 17 to 8 computations (52.9% saved)

series15.0ms (0%)

Counts
1 → 24
Calls

9 calls:

TimeVariablePointExpression
5.0ms
a
@inf
(*.f64 t (-.f64 b a))
4.0ms
b
@-inf
(*.f64 t (-.f64 b a))
1.0ms
t
@0
(*.f64 t (-.f64 b a))
1.0ms
t
@inf
(*.f64 t (-.f64 b a))
1.0ms
a
@-inf
(*.f64 t (-.f64 b a))

rewrite74.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
725×pow1_binary64
672×add-log-exp_binary64
672×log1p-expm1-u_binary64
672×expm1-log1p-u_binary64
657×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify54.0ms (0.1%)

Algorithm
egg-herbie
Rules
217×fma-def_binary64
132×fma-neg_binary64
43×cancel-sign-sub-inv_binary64
26×sub-neg_binary64
25×distribute-rgt-in_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
09210
117192
239156
357156
481156
5133156
6249156
7406156
8575156
9729156
10743156
Stop Event
saturated
Counts
43 → 24
Calls
Call 1
Inputs
(*.f64 -1 (*.f64 a t))
(+.f64 (*.f64 t b) (*.f64 -1 (*.f64 a t)))
(+.f64 (*.f64 t b) (*.f64 -1 (*.f64 a t)))
(+.f64 (*.f64 t b) (*.f64 -1 (*.f64 a t)))
(*.f64 t b)
(+.f64 (*.f64 t b) (*.f64 -1 (*.f64 a t)))
(+.f64 (*.f64 t b) (*.f64 -1 (*.f64 a t)))
(+.f64 (*.f64 t b) (*.f64 -1 (*.f64 a t)))
(*.f64 t b)
(+.f64 (*.f64 t b) (*.f64 -1 (*.f64 a t)))
(+.f64 (*.f64 t b) (*.f64 -1 (*.f64 a t)))
(+.f64 (*.f64 t b) (*.f64 -1 (*.f64 a t)))
(*.f64 t b)
(+.f64 (*.f64 t b) (*.f64 -1 (*.f64 a t)))
(+.f64 (*.f64 t b) (*.f64 -1 (*.f64 a t)))
(+.f64 (*.f64 t b) (*.f64 -1 (*.f64 a t)))
(*.f64 -1 (*.f64 a t))
(+.f64 (*.f64 t b) (*.f64 -1 (*.f64 a t)))
(+.f64 (*.f64 t b) (*.f64 -1 (*.f64 a t)))
(+.f64 (*.f64 t b) (*.f64 -1 (*.f64 a t)))
(*.f64 -1 (*.f64 a t))
(+.f64 (*.f64 t b) (*.f64 -1 (*.f64 a t)))
(+.f64 (*.f64 t b) (*.f64 -1 (*.f64 a t)))
(+.f64 (*.f64 t b) (*.f64 -1 (*.f64 a t)))
Outputs
(*.f64 -1 (*.f64 a t))
(neg.f64 (*.f64 a t))
(*.f64 a (neg.f64 t))
(+.f64 (*.f64 t b) (*.f64 -1 (*.f64 a t)))
(fma.f64 t b (neg.f64 (*.f64 a t)))
(*.f64 t (+.f64 (neg.f64 a) b))
(*.f64 t (-.f64 b a))
(+.f64 (*.f64 t b) (*.f64 -1 (*.f64 a t)))
(fma.f64 t b (neg.f64 (*.f64 a t)))
(*.f64 t (+.f64 (neg.f64 a) b))
(*.f64 t (-.f64 b a))
(+.f64 (*.f64 t b) (*.f64 -1 (*.f64 a t)))
(fma.f64 t b (neg.f64 (*.f64 a t)))
(*.f64 t (+.f64 (neg.f64 a) b))
(*.f64 t (-.f64 b a))
(*.f64 t b)
(+.f64 (*.f64 t b) (*.f64 -1 (*.f64 a t)))
(fma.f64 t b (neg.f64 (*.f64 a t)))
(*.f64 t (+.f64 (neg.f64 a) b))
(*.f64 t (-.f64 b a))
(+.f64 (*.f64 t b) (*.f64 -1 (*.f64 a t)))
(fma.f64 t b (neg.f64 (*.f64 a t)))
(*.f64 t (+.f64 (neg.f64 a) b))
(*.f64 t (-.f64 b a))
(+.f64 (*.f64 t b) (*.f64 -1 (*.f64 a t)))
(fma.f64 t b (neg.f64 (*.f64 a t)))
(*.f64 t (+.f64 (neg.f64 a) b))
(*.f64 t (-.f64 b a))
(*.f64 t b)
(+.f64 (*.f64 t b) (*.f64 -1 (*.f64 a t)))
(fma.f64 t b (neg.f64 (*.f64 a t)))
(*.f64 t (+.f64 (neg.f64 a) b))
(*.f64 t (-.f64 b a))
(+.f64 (*.f64 t b) (*.f64 -1 (*.f64 a t)))
(fma.f64 t b (neg.f64 (*.f64 a t)))
(*.f64 t (+.f64 (neg.f64 a) b))
(*.f64 t (-.f64 b a))
(+.f64 (*.f64 t b) (*.f64 -1 (*.f64 a t)))
(fma.f64 t b (neg.f64 (*.f64 a t)))
(*.f64 t (+.f64 (neg.f64 a) b))
(*.f64 t (-.f64 b a))
(*.f64 t b)
(+.f64 (*.f64 t b) (*.f64 -1 (*.f64 a t)))
(fma.f64 t b (neg.f64 (*.f64 a t)))
(*.f64 t (+.f64 (neg.f64 a) b))
(*.f64 t (-.f64 b a))
(+.f64 (*.f64 t b) (*.f64 -1 (*.f64 a t)))
(fma.f64 t b (neg.f64 (*.f64 a t)))
(*.f64 t (+.f64 (neg.f64 a) b))
(*.f64 t (-.f64 b a))
(+.f64 (*.f64 t b) (*.f64 -1 (*.f64 a t)))
(fma.f64 t b (neg.f64 (*.f64 a t)))
(*.f64 t (+.f64 (neg.f64 a) b))
(*.f64 t (-.f64 b a))
(*.f64 -1 (*.f64 a t))
(neg.f64 (*.f64 a t))
(*.f64 a (neg.f64 t))
(+.f64 (*.f64 t b) (*.f64 -1 (*.f64 a t)))
(fma.f64 t b (neg.f64 (*.f64 a t)))
(*.f64 t (+.f64 (neg.f64 a) b))
(*.f64 t (-.f64 b a))
(+.f64 (*.f64 t b) (*.f64 -1 (*.f64 a t)))
(fma.f64 t b (neg.f64 (*.f64 a t)))
(*.f64 t (+.f64 (neg.f64 a) b))
(*.f64 t (-.f64 b a))
(+.f64 (*.f64 t b) (*.f64 -1 (*.f64 a t)))
(fma.f64 t b (neg.f64 (*.f64 a t)))
(*.f64 t (+.f64 (neg.f64 a) b))
(*.f64 t (-.f64 b a))
(*.f64 -1 (*.f64 a t))
(neg.f64 (*.f64 a t))
(*.f64 a (neg.f64 t))
(+.f64 (*.f64 t b) (*.f64 -1 (*.f64 a t)))
(fma.f64 t b (neg.f64 (*.f64 a t)))
(*.f64 t (+.f64 (neg.f64 a) b))
(*.f64 t (-.f64 b a))
(+.f64 (*.f64 t b) (*.f64 -1 (*.f64 a t)))
(fma.f64 t b (neg.f64 (*.f64 a t)))
(*.f64 t (+.f64 (neg.f64 a) b))
(*.f64 t (-.f64 b a))
(+.f64 (*.f64 t b) (*.f64 -1 (*.f64 a t)))
(fma.f64 t b (neg.f64 (*.f64 a t)))
(*.f64 t (+.f64 (neg.f64 a) b))
(*.f64 t (-.f64 b a))

localize19.0ms (0%)

Local error

Found 2 expressions with local error:

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

Compiled 35 to 17 computations (51.4% saved)

series5.0ms (0%)

Counts
1 → 48
Calls

12 calls:

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

rewrite65.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
543×log-prod_binary64
496×fma-def_binary64
424×pow-prod-down_binary64
320×pow2_binary64
273×fma-neg_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify110.0ms (0.3%)

Algorithm
egg-herbie
Rules
983×fma-neg_binary64
786×fma-def_binary64
197×distribute-rgt-in_binary64
146×unsub-neg_binary64
111×cancel-sign-sub-inv_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
023461
153461
291461
3166461
4216461
5243461
6307461
7483461
8894461
91583461
102412461
113074461
123482461
133673461
143703461
Stop Event
saturated
Counts
106 → 72
Calls
Call 1
Inputs
(*.f64 (-.f64 (+.f64 y t) 2) b)
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)
x
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)
x
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)
(+.f64 (*.f64 b (-.f64 t 2)) x)
(+.f64 (*.f64 y b) (+.f64 (*.f64 b (-.f64 t 2)) x))
(+.f64 (*.f64 y b) (+.f64 (*.f64 b (-.f64 t 2)) x))
(+.f64 (*.f64 y b) (+.f64 (*.f64 b (-.f64 t 2)) x))
(*.f64 y b)
(+.f64 (*.f64 y b) (+.f64 (*.f64 (-.f64 t 2) b) x))
(+.f64 (*.f64 y b) (+.f64 (*.f64 (-.f64 t 2) b) x))
(+.f64 (*.f64 y b) (+.f64 (*.f64 (-.f64 t 2) b) x))
(*.f64 y b)
(+.f64 (*.f64 y b) (+.f64 (*.f64 (-.f64 t 2) b) x))
(+.f64 (*.f64 y b) (+.f64 (*.f64 (-.f64 t 2) b) x))
(+.f64 (*.f64 y b) (+.f64 (*.f64 (-.f64 t 2) b) x))
(+.f64 (*.f64 (-.f64 y 2) b) x)
(+.f64 (*.f64 t b) (+.f64 (*.f64 (-.f64 y 2) b) x))
(+.f64 (*.f64 t b) (+.f64 (*.f64 (-.f64 y 2) b) x))
(+.f64 (*.f64 t b) (+.f64 (*.f64 (-.f64 y 2) b) x))
(*.f64 t b)
(+.f64 (*.f64 t b) (+.f64 (*.f64 (-.f64 y 2) b) x))
(+.f64 (*.f64 t b) (+.f64 (*.f64 (-.f64 y 2) b) x))
(+.f64 (*.f64 t b) (+.f64 (*.f64 (-.f64 y 2) b) x))
(*.f64 t b)
(+.f64 (*.f64 t b) (+.f64 (*.f64 (-.f64 y 2) b) x))
(+.f64 (*.f64 t b) (+.f64 (*.f64 (-.f64 y 2) b) x))
(+.f64 (*.f64 t b) (+.f64 (*.f64 (-.f64 y 2) b) x))
x
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)
(*.f64 (-.f64 (+.f64 y t) 2) b)
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)
(*.f64 (-.f64 (+.f64 y t) 2) b)
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)
Outputs
(*.f64 (-.f64 (+.f64 y t) 2) b)
(*.f64 (+.f64 y (+.f64 t -2)) b)
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)
(fma.f64 (+.f64 y (+.f64 t -2)) b x)
(fma.f64 (-.f64 (+.f64 y t) 2) b x)
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)
(fma.f64 (+.f64 y (+.f64 t -2)) b x)
(fma.f64 (-.f64 (+.f64 y t) 2) b x)
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)
(fma.f64 (+.f64 y (+.f64 t -2)) b x)
(fma.f64 (-.f64 (+.f64 y t) 2) b x)
x
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)
(fma.f64 (+.f64 y (+.f64 t -2)) b x)
(fma.f64 (-.f64 (+.f64 y t) 2) b x)
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)
(fma.f64 (+.f64 y (+.f64 t -2)) b x)
(fma.f64 (-.f64 (+.f64 y t) 2) b x)
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)
(fma.f64 (+.f64 y (+.f64 t -2)) b x)
(fma.f64 (-.f64 (+.f64 y t) 2) b x)
x
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)
(fma.f64 (+.f64 y (+.f64 t -2)) b x)
(fma.f64 (-.f64 (+.f64 y t) 2) b x)
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)
(fma.f64 (+.f64 y (+.f64 t -2)) b x)
(fma.f64 (-.f64 (+.f64 y t) 2) b x)
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)
(fma.f64 (+.f64 y (+.f64 t -2)) b x)
(fma.f64 (-.f64 (+.f64 y t) 2) b x)
(+.f64 (*.f64 b (-.f64 t 2)) x)
(fma.f64 b (+.f64 t -2) x)
(+.f64 (*.f64 y b) (+.f64 (*.f64 b (-.f64 t 2)) x))
(fma.f64 (+.f64 y (+.f64 t -2)) b x)
(fma.f64 (-.f64 (+.f64 y t) 2) b x)
(+.f64 (*.f64 y b) (+.f64 (*.f64 b (-.f64 t 2)) x))
(fma.f64 (+.f64 y (+.f64 t -2)) b x)
(fma.f64 (-.f64 (+.f64 y t) 2) b x)
(+.f64 (*.f64 y b) (+.f64 (*.f64 b (-.f64 t 2)) x))
(fma.f64 (+.f64 y (+.f64 t -2)) b x)
(fma.f64 (-.f64 (+.f64 y t) 2) b x)
(*.f64 y b)
(+.f64 (*.f64 y b) (+.f64 (*.f64 (-.f64 t 2) b) x))
(fma.f64 (+.f64 y (+.f64 t -2)) b x)
(fma.f64 (-.f64 (+.f64 y t) 2) b x)
(+.f64 (*.f64 y b) (+.f64 (*.f64 (-.f64 t 2) b) x))
(fma.f64 (+.f64 y (+.f64 t -2)) b x)
(fma.f64 (-.f64 (+.f64 y t) 2) b x)
(+.f64 (*.f64 y b) (+.f64 (*.f64 (-.f64 t 2) b) x))
(fma.f64 (+.f64 y (+.f64 t -2)) b x)
(fma.f64 (-.f64 (+.f64 y t) 2) b x)
(*.f64 y b)
(+.f64 (*.f64 y b) (+.f64 (*.f64 (-.f64 t 2) b) x))
(fma.f64 (+.f64 y (+.f64 t -2)) b x)
(fma.f64 (-.f64 (+.f64 y t) 2) b x)
(+.f64 (*.f64 y b) (+.f64 (*.f64 (-.f64 t 2) b) x))
(fma.f64 (+.f64 y (+.f64 t -2)) b x)
(fma.f64 (-.f64 (+.f64 y t) 2) b x)
(+.f64 (*.f64 y b) (+.f64 (*.f64 (-.f64 t 2) b) x))
(fma.f64 (+.f64 y (+.f64 t -2)) b x)
(fma.f64 (-.f64 (+.f64 y t) 2) b x)
(+.f64 (*.f64 (-.f64 y 2) b) x)
(fma.f64 (+.f64 y -2) b x)
(fma.f64 b (+.f64 y -2) x)
(+.f64 (*.f64 t b) (+.f64 (*.f64 (-.f64 y 2) b) x))
(fma.f64 (+.f64 y (+.f64 t -2)) b x)
(fma.f64 (-.f64 (+.f64 y t) 2) b x)
(+.f64 (*.f64 t b) (+.f64 (*.f64 (-.f64 y 2) b) x))
(fma.f64 (+.f64 y (+.f64 t -2)) b x)
(fma.f64 (-.f64 (+.f64 y t) 2) b x)
(+.f64 (*.f64 t b) (+.f64 (*.f64 (-.f64 y 2) b) x))
(fma.f64 (+.f64 y (+.f64 t -2)) b x)
(fma.f64 (-.f64 (+.f64 y t) 2) b x)
(*.f64 t b)
(+.f64 (*.f64 t b) (+.f64 (*.f64 (-.f64 y 2) b) x))
(fma.f64 (+.f64 y (+.f64 t -2)) b x)
(fma.f64 (-.f64 (+.f64 y t) 2) b x)
(+.f64 (*.f64 t b) (+.f64 (*.f64 (-.f64 y 2) b) x))
(fma.f64 (+.f64 y (+.f64 t -2)) b x)
(fma.f64 (-.f64 (+.f64 y t) 2) b x)
(+.f64 (*.f64 t b) (+.f64 (*.f64 (-.f64 y 2) b) x))
(fma.f64 (+.f64 y (+.f64 t -2)) b x)
(fma.f64 (-.f64 (+.f64 y t) 2) b x)
(*.f64 t b)
(+.f64 (*.f64 t b) (+.f64 (*.f64 (-.f64 y 2) b) x))
(fma.f64 (+.f64 y (+.f64 t -2)) b x)
(fma.f64 (-.f64 (+.f64 y t) 2) b x)
(+.f64 (*.f64 t b) (+.f64 (*.f64 (-.f64 y 2) b) x))
(fma.f64 (+.f64 y (+.f64 t -2)) b x)
(fma.f64 (-.f64 (+.f64 y t) 2) b x)
(+.f64 (*.f64 t b) (+.f64 (*.f64 (-.f64 y 2) b) x))
(fma.f64 (+.f64 y (+.f64 t -2)) b x)
(fma.f64 (-.f64 (+.f64 y t) 2) b x)
x
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)
(fma.f64 (+.f64 y (+.f64 t -2)) b x)
(fma.f64 (-.f64 (+.f64 y t) 2) b x)
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)
(fma.f64 (+.f64 y (+.f64 t -2)) b x)
(fma.f64 (-.f64 (+.f64 y t) 2) b x)
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)
(fma.f64 (+.f64 y (+.f64 t -2)) b x)
(fma.f64 (-.f64 (+.f64 y t) 2) b x)
(*.f64 (-.f64 (+.f64 y t) 2) b)
(*.f64 (+.f64 y (+.f64 t -2)) b)
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)
(fma.f64 (+.f64 y (+.f64 t -2)) b x)
(fma.f64 (-.f64 (+.f64 y t) 2) b x)
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)
(fma.f64 (+.f64 y (+.f64 t -2)) b x)
(fma.f64 (-.f64 (+.f64 y t) 2) b x)
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)
(fma.f64 (+.f64 y (+.f64 t -2)) b x)
(fma.f64 (-.f64 (+.f64 y t) 2) b x)
(*.f64 (-.f64 (+.f64 y t) 2) b)
(*.f64 (+.f64 y (+.f64 t -2)) b)
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)
(fma.f64 (+.f64 y (+.f64 t -2)) b x)
(fma.f64 (-.f64 (+.f64 y t) 2) b x)
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)
(fma.f64 (+.f64 y (+.f64 t -2)) b x)
(fma.f64 (-.f64 (+.f64 y t) 2) b x)
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)
(fma.f64 (+.f64 y (+.f64 t -2)) b x)
(fma.f64 (-.f64 (+.f64 y t) 2) b x)

localize23.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(*.f64 (-.f64 (+.f64 y t) 2) b)
0.0b
(*.f64 a (-.f64 1 t))
0.0b
(+.f64 (*.f64 a (-.f64 1 t)) (*.f64 (-.f64 (+.f64 y t) 2) b))
Compiler

Compiled 48 to 26 computations (45.8% saved)

series6.0ms (0%)

Counts
2 → 42
Calls

18 calls:

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

rewrite73.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
687×log-prod_binary64
653×fma-def_binary64
337×fma-neg_binary64
268×expm1-udef_binary64
267×log1p-udef_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify309.0ms (0.8%)

Algorithm
egg-herbie
Rules
2464×fma-neg_binary64
777×fma-def_binary64
462×unsub-neg_binary64
330×sub-neg_binary64
236×associate-+l-_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
039519
1108441
2235441
3550439
41251439
52978439
64603439
74999439
85057439
95058439
105058439
115356439
125405439
135405439
145405439
157512439
167512439
177512439
Stop Event
saturated
Counts
141 → 121
Calls
Call 1
Inputs
(*.f64 (-.f64 (+.f64 y t) 2) b)
(*.f64 a (-.f64 1 t))
(*.f64 a (-.f64 1 t))
(+.f64 a (*.f64 (-.f64 y 2) b))
(+.f64 (*.f64 t (+.f64 b (*.f64 -1 a))) (+.f64 a (*.f64 (-.f64 y 2) b)))
(+.f64 (*.f64 t (+.f64 b (*.f64 -1 a))) (+.f64 a (*.f64 (-.f64 y 2) b)))
(+.f64 (*.f64 t (+.f64 b (*.f64 -1 a))) (+.f64 a (*.f64 (-.f64 y 2) b)))
(*.f64 t (+.f64 b (*.f64 -1 a)))
(+.f64 a (+.f64 (*.f64 t (+.f64 b (*.f64 -1 a))) (*.f64 (-.f64 y 2) b)))
(+.f64 a (+.f64 (*.f64 t (+.f64 b (*.f64 -1 a))) (*.f64 (-.f64 y 2) b)))
(+.f64 a (+.f64 (*.f64 t (+.f64 b (*.f64 -1 a))) (*.f64 (-.f64 y 2) b)))
(*.f64 -1 (*.f64 (+.f64 a (*.f64 -1 b)) t))
(+.f64 a (+.f64 (*.f64 -1 (*.f64 (+.f64 a (*.f64 -1 b)) t)) (*.f64 (-.f64 y 2) b)))
(+.f64 a (+.f64 (*.f64 -1 (*.f64 (+.f64 a (*.f64 -1 b)) t)) (*.f64 (-.f64 y 2) b)))
(+.f64 a (+.f64 (*.f64 -1 (*.f64 (+.f64 a (*.f64 -1 b)) t)) (*.f64 (-.f64 y 2) b)))
(+.f64 (*.f64 a (-.f64 1 t)) (*.f64 b (-.f64 t 2)))
(+.f64 (*.f64 y b) (+.f64 (*.f64 a (-.f64 1 t)) (*.f64 b (-.f64 t 2))))
(+.f64 (*.f64 y b) (+.f64 (*.f64 a (-.f64 1 t)) (*.f64 b (-.f64 t 2))))
(+.f64 (*.f64 y b) (+.f64 (*.f64 a (-.f64 1 t)) (*.f64 b (-.f64 t 2))))
(*.f64 y b)
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 y b) (*.f64 (-.f64 t 2) b)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 y b) (*.f64 (-.f64 t 2) b)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 y b) (*.f64 (-.f64 t 2) b)))
(*.f64 y b)
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 y b) (*.f64 (-.f64 t 2) b)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 y b) (*.f64 (-.f64 t 2) b)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 y b) (*.f64 (-.f64 t 2) b)))
(*.f64 a (-.f64 1 t))
(*.f64 (-.f64 (+.f64 y t) 2) b)
(*.f64 (-.f64 (+.f64 y t) 2) b)
a
(+.f64 a (*.f64 -1 (*.f64 a t)))
(+.f64 a (*.f64 -1 (*.f64 a t)))
(+.f64 a (*.f64 -1 (*.f64 a t)))
(*.f64 -1 (*.f64 a t))
(+.f64 a (*.f64 -1 (*.f64 a t)))
(+.f64 a (*.f64 -1 (*.f64 a t)))
(+.f64 a (*.f64 -1 (*.f64 a t)))
(*.f64 -1 (*.f64 a t))
(+.f64 a (*.f64 -1 (*.f64 a t)))
(+.f64 a (*.f64 -1 (*.f64 a t)))
(+.f64 a (*.f64 -1 (*.f64 a t)))
Outputs
(*.f64 (-.f64 (+.f64 y t) 2) b)
(*.f64 (+.f64 y (+.f64 t -2)) b)
(*.f64 (-.f64 y (-.f64 2 t)) b)
(*.f64 a (-.f64 1 t))
(-.f64 a (*.f64 t a))
(*.f64 a (-.f64 1 t))
(-.f64 a (*.f64 t a))
(+.f64 a (*.f64 (-.f64 y 2) b))
(+.f64 a (*.f64 b (+.f64 y -2)))
(fma.f64 b (+.f64 y -2) a)
(fma.f64 b (-.f64 y 2) a)
(+.f64 (*.f64 t (+.f64 b (*.f64 -1 a))) (+.f64 a (*.f64 (-.f64 y 2) b)))
(fma.f64 t (+.f64 b (neg.f64 a)) (+.f64 a (*.f64 b (+.f64 y -2))))
(fma.f64 t (-.f64 b a) (fma.f64 b (+.f64 y -2) a))
(fma.f64 t (-.f64 b a) (fma.f64 b (-.f64 y 2) a))
(+.f64 (*.f64 t (+.f64 b (*.f64 -1 a))) (+.f64 a (*.f64 (-.f64 y 2) b)))
(fma.f64 t (+.f64 b (neg.f64 a)) (+.f64 a (*.f64 b (+.f64 y -2))))
(fma.f64 t (-.f64 b a) (fma.f64 b (+.f64 y -2) a))
(fma.f64 t (-.f64 b a) (fma.f64 b (-.f64 y 2) a))
(+.f64 (*.f64 t (+.f64 b (*.f64 -1 a))) (+.f64 a (*.f64 (-.f64 y 2) b)))
(fma.f64 t (+.f64 b (neg.f64 a)) (+.f64 a (*.f64 b (+.f64 y -2))))
(fma.f64 t (-.f64 b a) (fma.f64 b (+.f64 y -2) a))
(fma.f64 t (-.f64 b a) (fma.f64 b (-.f64 y 2) a))
(*.f64 t (+.f64 b (*.f64 -1 a)))
(*.f64 t (+.f64 b (neg.f64 a)))
(*.f64 t (-.f64 b a))
(+.f64 a (+.f64 (*.f64 t (+.f64 b (*.f64 -1 a))) (*.f64 (-.f64 y 2) b)))
(fma.f64 t (+.f64 b (neg.f64 a)) (+.f64 a (*.f64 b (+.f64 y -2))))
(fma.f64 t (-.f64 b a) (fma.f64 b (+.f64 y -2) a))
(fma.f64 t (-.f64 b a) (fma.f64 b (-.f64 y 2) a))
(+.f64 a (+.f64 (*.f64 t (+.f64 b (*.f64 -1 a))) (*.f64 (-.f64 y 2) b)))
(fma.f64 t (+.f64 b (neg.f64 a)) (+.f64 a (*.f64 b (+.f64 y -2))))
(fma.f64 t (-.f64 b a) (fma.f64 b (+.f64 y -2) a))
(fma.f64 t (-.f64 b a) (fma.f64 b (-.f64 y 2) a))
(+.f64 a (+.f64 (*.f64 t (+.f64 b (*.f64 -1 a))) (*.f64 (-.f64 y 2) b)))
(fma.f64 t (+.f64 b (neg.f64 a)) (+.f64 a (*.f64 b (+.f64 y -2))))
(fma.f64 t (-.f64 b a) (fma.f64 b (+.f64 y -2) a))
(fma.f64 t (-.f64 b a) (fma.f64 b (-.f64 y 2) a))
(*.f64 -1 (*.f64 (+.f64 a (*.f64 -1 b)) t))
(*.f64 t (+.f64 b (neg.f64 a)))
(*.f64 t (-.f64 b a))
(+.f64 a (+.f64 (*.f64 -1 (*.f64 (+.f64 a (*.f64 -1 b)) t)) (*.f64 (-.f64 y 2) b)))
(fma.f64 t (+.f64 b (neg.f64 a)) (+.f64 a (*.f64 b (+.f64 y -2))))
(fma.f64 t (-.f64 b a) (fma.f64 b (+.f64 y -2) a))
(fma.f64 t (-.f64 b a) (fma.f64 b (-.f64 y 2) a))
(+.f64 a (+.f64 (*.f64 -1 (*.f64 (+.f64 a (*.f64 -1 b)) t)) (*.f64 (-.f64 y 2) b)))
(fma.f64 t (+.f64 b (neg.f64 a)) (+.f64 a (*.f64 b (+.f64 y -2))))
(fma.f64 t (-.f64 b a) (fma.f64 b (+.f64 y -2) a))
(fma.f64 t (-.f64 b a) (fma.f64 b (-.f64 y 2) a))
(+.f64 a (+.f64 (*.f64 -1 (*.f64 (+.f64 a (*.f64 -1 b)) t)) (*.f64 (-.f64 y 2) b)))
(fma.f64 t (+.f64 b (neg.f64 a)) (+.f64 a (*.f64 b (+.f64 y -2))))
(fma.f64 t (-.f64 b a) (fma.f64 b (+.f64 y -2) a))
(fma.f64 t (-.f64 b a) (fma.f64 b (-.f64 y 2) a))
(+.f64 (*.f64 a (-.f64 1 t)) (*.f64 b (-.f64 t 2)))
(fma.f64 a (-.f64 1 t) (*.f64 b (+.f64 t -2)))
(fma.f64 b (+.f64 t -2) (*.f64 a (-.f64 1 t)))
(fma.f64 b (+.f64 t -2) (-.f64 a (*.f64 t a)))
(fma.f64 b -2 (fma.f64 t (-.f64 b a) a))
(fma.f64 t (-.f64 b a) (fma.f64 b -2 a))
(+.f64 (*.f64 y b) (+.f64 (*.f64 a (-.f64 1 t)) (*.f64 b (-.f64 t 2))))
(fma.f64 t (+.f64 b (neg.f64 a)) (+.f64 a (*.f64 b (+.f64 y -2))))
(fma.f64 t (-.f64 b a) (fma.f64 b (+.f64 y -2) a))
(fma.f64 t (-.f64 b a) (fma.f64 b (-.f64 y 2) a))
(+.f64 (*.f64 y b) (+.f64 (*.f64 a (-.f64 1 t)) (*.f64 b (-.f64 t 2))))
(fma.f64 t (+.f64 b (neg.f64 a)) (+.f64 a (*.f64 b (+.f64 y -2))))
(fma.f64 t (-.f64 b a) (fma.f64 b (+.f64 y -2) a))
(fma.f64 t (-.f64 b a) (fma.f64 b (-.f64 y 2) a))
(+.f64 (*.f64 y b) (+.f64 (*.f64 a (-.f64 1 t)) (*.f64 b (-.f64 t 2))))
(fma.f64 t (+.f64 b (neg.f64 a)) (+.f64 a (*.f64 b (+.f64 y -2))))
(fma.f64 t (-.f64 b a) (fma.f64 b (+.f64 y -2) a))
(fma.f64 t (-.f64 b a) (fma.f64 b (-.f64 y 2) a))
(*.f64 y b)
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 y b) (*.f64 (-.f64 t 2) b)))
(fma.f64 t (+.f64 b (neg.f64 a)) (+.f64 a (*.f64 b (+.f64 y -2))))
(fma.f64 t (-.f64 b a) (fma.f64 b (+.f64 y -2) a))
(fma.f64 t (-.f64 b a) (fma.f64 b (-.f64 y 2) a))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 y b) (*.f64 (-.f64 t 2) b)))
(fma.f64 t (+.f64 b (neg.f64 a)) (+.f64 a (*.f64 b (+.f64 y -2))))
(fma.f64 t (-.f64 b a) (fma.f64 b (+.f64 y -2) a))
(fma.f64 t (-.f64 b a) (fma.f64 b (-.f64 y 2) a))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 y b) (*.f64 (-.f64 t 2) b)))
(fma.f64 t (+.f64 b (neg.f64 a)) (+.f64 a (*.f64 b (+.f64 y -2))))
(fma.f64 t (-.f64 b a) (fma.f64 b (+.f64 y -2) a))
(fma.f64 t (-.f64 b a) (fma.f64 b (-.f64 y 2) a))
(*.f64 y b)
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 y b) (*.f64 (-.f64 t 2) b)))
(fma.f64 t (+.f64 b (neg.f64 a)) (+.f64 a (*.f64 b (+.f64 y -2))))
(fma.f64 t (-.f64 b a) (fma.f64 b (+.f64 y -2) a))
(fma.f64 t (-.f64 b a) (fma.f64 b (-.f64 y 2) a))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 y b) (*.f64 (-.f64 t 2) b)))
(fma.f64 t (+.f64 b (neg.f64 a)) (+.f64 a (*.f64 b (+.f64 y -2))))
(fma.f64 t (-.f64 b a) (fma.f64 b (+.f64 y -2) a))
(fma.f64 t (-.f64 b a) (fma.f64 b (-.f64 y 2) a))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 y b) (*.f64 (-.f64 t 2) b)))
(fma.f64 t (+.f64 b (neg.f64 a)) (+.f64 a (*.f64 b (+.f64 y -2))))
(fma.f64 t (-.f64 b a) (fma.f64 b (+.f64 y -2) a))
(fma.f64 t (-.f64 b a) (fma.f64 b (-.f64 y 2) a))
(*.f64 a (-.f64 1 t))
(-.f64 a (*.f64 t a))
(*.f64 (-.f64 (+.f64 y t) 2) b)
(*.f64 (+.f64 y (+.f64 t -2)) b)
(*.f64 (-.f64 y (-.f64 2 t)) b)
(*.f64 (-.f64 (+.f64 y t) 2) b)
(*.f64 (+.f64 y (+.f64 t -2)) b)
(*.f64 (-.f64 y (-.f64 2 t)) b)
a
(+.f64 a (*.f64 -1 (*.f64 a t)))
(*.f64 a (-.f64 1 t))
(-.f64 a (*.f64 t a))
(+.f64 a (*.f64 -1 (*.f64 a t)))
(*.f64 a (-.f64 1 t))
(-.f64 a (*.f64 t a))
(+.f64 a (*.f64 -1 (*.f64 a t)))
(*.f64 a (-.f64 1 t))
(-.f64 a (*.f64 t a))
(*.f64 -1 (*.f64 a t))
(neg.f64 (*.f64 t a))
(*.f64 t (neg.f64 a))
(+.f64 a (*.f64 -1 (*.f64 a t)))
(*.f64 a (-.f64 1 t))
(-.f64 a (*.f64 t a))
(+.f64 a (*.f64 -1 (*.f64 a t)))
(*.f64 a (-.f64 1 t))
(-.f64 a (*.f64 t a))
(+.f64 a (*.f64 -1 (*.f64 a t)))
(*.f64 a (-.f64 1 t))
(-.f64 a (*.f64 t a))
(*.f64 -1 (*.f64 a t))
(neg.f64 (*.f64 t a))
(*.f64 t (neg.f64 a))
(+.f64 a (*.f64 -1 (*.f64 a t)))
(*.f64 a (-.f64 1 t))
(-.f64 a (*.f64 t a))
(+.f64 a (*.f64 -1 (*.f64 a t)))
(*.f64 a (-.f64 1 t))
(-.f64 a (*.f64 t a))
(+.f64 a (*.f64 -1 (*.f64 a t)))
(*.f64 a (-.f64 1 t))
(-.f64 a (*.f64 t a))

localize24.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(*.f64 a (-.f64 1 t))
0.0b
(+.f64 (*.f64 b (-.f64 t 2)) x)
Compiler

Compiled 60 to 36 computations (40% saved)

series4.0ms (0%)

Counts
1 → 36
Calls

9 calls:

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

rewrite104.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
835×prod-diff_binary64
573×unpow-prod-down_binary64
416×log-prod_binary64
299×fma-def_binary64
244×pow2_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify13.0ms (0%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
013253
126253
238253
346253
Stop Event
saturated
Counts
102 → 74
Calls
Call 1
Inputs
x
(+.f64 (*.f64 (-.f64 t 2) b) x)
(+.f64 (*.f64 (-.f64 t 2) b) x)
(+.f64 (*.f64 (-.f64 t 2) b) x)
(*.f64 (-.f64 t 2) b)
(+.f64 (*.f64 (-.f64 t 2) b) x)
(+.f64 (*.f64 (-.f64 t 2) b) x)
(+.f64 (*.f64 (-.f64 t 2) b) x)
(*.f64 (-.f64 t 2) b)
(+.f64 (*.f64 (-.f64 t 2) b) x)
(+.f64 (*.f64 (-.f64 t 2) b) x)
(+.f64 (*.f64 (-.f64 t 2) b) x)
(+.f64 (*.f64 -2 b) x)
(+.f64 (*.f64 t b) (+.f64 (*.f64 -2 b) x))
(+.f64 (*.f64 t b) (+.f64 (*.f64 -2 b) x))
(+.f64 (*.f64 t b) (+.f64 (*.f64 -2 b) x))
(*.f64 t b)
(+.f64 (*.f64 t b) (+.f64 (*.f64 -2 b) x))
(+.f64 (*.f64 t b) (+.f64 (*.f64 -2 b) x))
(+.f64 (*.f64 t b) (+.f64 (*.f64 -2 b) x))
(*.f64 t b)
(+.f64 (*.f64 t b) (+.f64 (*.f64 -2 b) x))
(+.f64 (*.f64 t b) (+.f64 (*.f64 -2 b) x))
(+.f64 (*.f64 t b) (+.f64 (*.f64 -2 b) x))
(*.f64 (-.f64 t 2) b)
(+.f64 (*.f64 (-.f64 t 2) b) x)
(+.f64 (*.f64 (-.f64 t 2) b) x)
(+.f64 (*.f64 (-.f64 t 2) b) x)
x
(+.f64 (*.f64 (-.f64 t 2) b) x)
(+.f64 (*.f64 (-.f64 t 2) b) x)
(+.f64 (*.f64 (-.f64 t 2) b) x)
x
(+.f64 (*.f64 (-.f64 t 2) b) x)
(+.f64 (*.f64 (-.f64 t 2) b) x)
(+.f64 (*.f64 (-.f64 t 2) b) x)
Outputs
x
(+.f64 (*.f64 (-.f64 t 2) b) x)
(fma.f64 (+.f64 t -2) b x)
(+.f64 (*.f64 (-.f64 t 2) b) x)
(fma.f64 (+.f64 t -2) b x)
(+.f64 (*.f64 (-.f64 t 2) b) x)
(fma.f64 (+.f64 t -2) b x)
(*.f64 (-.f64 t 2) b)
(*.f64 (+.f64 t -2) b)
(+.f64 (*.f64 (-.f64 t 2) b) x)
(fma.f64 (+.f64 t -2) b x)
(+.f64 (*.f64 (-.f64 t 2) b) x)
(fma.f64 (+.f64 t -2) b x)
(+.f64 (*.f64 (-.f64 t 2) b) x)
(fma.f64 (+.f64 t -2) b x)
(*.f64 (-.f64 t 2) b)
(*.f64 (+.f64 t -2) b)
(+.f64 (*.f64 (-.f64 t 2) b) x)
(fma.f64 (+.f64 t -2) b x)
(+.f64 (*.f64 (-.f64 t 2) b) x)
(fma.f64 (+.f64 t -2) b x)
(+.f64 (*.f64 (-.f64 t 2) b) x)
(fma.f64 (+.f64 t -2) b x)
(+.f64 (*.f64 -2 b) x)
(fma.f64 -2 b x)
(fma.f64 b -2 x)
(+.f64 (*.f64 t b) (+.f64 (*.f64 -2 b) x))
(fma.f64 (+.f64 t -2) b x)
(+.f64 (*.f64 t b) (+.f64 (*.f64 -2 b) x))
(fma.f64 (+.f64 t -2) b x)
(+.f64 (*.f64 t b) (+.f64 (*.f64 -2 b) x))
(fma.f64 (+.f64 t -2) b x)
(*.f64 t b)
(+.f64 (*.f64 t b) (+.f64 (*.f64 -2 b) x))
(fma.f64 (+.f64 t -2) b x)
(+.f64 (*.f64 t b) (+.f64 (*.f64 -2 b) x))
(fma.f64 (+.f64 t -2) b x)
(+.f64 (*.f64 t b) (+.f64 (*.f64 -2 b) x))
(fma.f64 (+.f64 t -2) b x)
(*.f64 t b)
(+.f64 (*.f64 t b) (+.f64 (*.f64 -2 b) x))
(fma.f64 (+.f64 t -2) b x)
(+.f64 (*.f64 t b) (+.f64 (*.f64 -2 b) x))
(fma.f64 (+.f64 t -2) b x)
(+.f64 (*.f64 t b) (+.f64 (*.f64 -2 b) x))
(fma.f64 (+.f64 t -2) b x)
(*.f64 (-.f64 t 2) b)
(*.f64 (+.f64 t -2) b)
(+.f64 (*.f64 (-.f64 t 2) b) x)
(fma.f64 (+.f64 t -2) b x)
(+.f64 (*.f64 (-.f64 t 2) b) x)
(fma.f64 (+.f64 t -2) b x)
(+.f64 (*.f64 (-.f64 t 2) b) x)
(fma.f64 (+.f64 t -2) b x)
x
(+.f64 (*.f64 (-.f64 t 2) b) x)
(fma.f64 (+.f64 t -2) b x)
(+.f64 (*.f64 (-.f64 t 2) b) x)
(fma.f64 (+.f64 t -2) b x)
(+.f64 (*.f64 (-.f64 t 2) b) x)
(fma.f64 (+.f64 t -2) b x)
x
(+.f64 (*.f64 (-.f64 t 2) b) x)
(fma.f64 (+.f64 t -2) b x)
(+.f64 (*.f64 (-.f64 t 2) b) x)
(fma.f64 (+.f64 t -2) b x)
(+.f64 (*.f64 (-.f64 t 2) b) x)
(fma.f64 (+.f64 t -2) b x)

eval248.0ms (0.6%)

Compiler

Compiled 12889 to 6862 computations (46.8% saved)

prune183.0ms (0.5%)

Pruning

20 alts after pruning (19 fresh and 1 done)

PrunedKeptTotal
New61015625
Fresh549
Picked101
Done314
Total61920639
Error
0b
Counts
639 → 20
Alt Table
Click to see full alt table
StatusErrorProgram
50.8b
(*.f64 y (-.f64 b z))
44.3b
(+.f64 x (*.f64 y b))
57.5b
(*.f64 a (neg.f64 t))
43.4b
(*.f64 (-.f64 (+.f64 y t) 2) b)
18.1b
(+.f64 a (+.f64 z (+.f64 (*.f64 b (-.f64 t 2)) x)))
45.4b
(+.f64 x (pow.f64 (sqrt.f64 (*.f64 (+.f64 t (-.f64 y 2)) b)) 2))
49.7b
x
51.2b
(*.f64 t (-.f64 b a))
42.3b
(+.f64 a (*.f64 (-.f64 y 2) b))
43.2b
(+.f64 x (*.f64 t b))
14.3b
(+.f64 (-.f64 (-.f64 x (-.f64 (*.f64 z y) z)) (*.f64 (-.f64 t 1) a)) (*.f64 y b))
56.2b
(*.f64 t b)
37.0b
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 (-.f64 (+.f64 y t) 2) b))
26.4b
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 z x))
27.2b
(+.f64 (-.f64 z (*.f64 z y)) (*.f64 (-.f64 (+.f64 y t) 2) b))
36.0b
(+.f64 (*.f64 b (-.f64 t 2)) x)
49.6b
(-.f64 a (*.f64 t a))
57.3b
(*.f64 y b)
12.5b
(+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 y 2) b) x)))
0.0b
(fma.f64 (+.f64 y (+.f64 t -2)) b (fma.f64 z (-.f64 1 y) (+.f64 (*.f64 a (-.f64 1 t)) x)))
Compiler

Compiled 552 to 402 computations (27.2% saved)

localize29.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(fma.f64 z (-.f64 1 y) (+.f64 (*.f64 a (-.f64 1 t)) x))
0.0b
(fma.f64 (+.f64 y (+.f64 t -2)) b (fma.f64 z (-.f64 1 y) (+.f64 (*.f64 a (-.f64 1 t)) x)))
0.0b
(*.f64 a (-.f64 1 t))
Compiler

Compiled 71 to 42 computations (40.8% saved)

series11.0ms (0%)

Counts
2 → 132
Calls

33 calls:

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

rewrite102.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
716×fma-def_binary64
375×fma-neg_binary64
356×expm1-udef_binary64
354×log1p-udef_binary64
282×log-pow_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify337.0ms (0.9%)

Algorithm
egg-herbie
Rules
521×distribute-neg-in_binary64
512×associate-+r-_binary64
457×associate-+l+_binary64
429×fma-def_binary64
396×associate-+r+_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0762380
12542320
27422318
324822318
446272318
557962318
Stop Event
node limit
Counts
187 → 105
Calls
Call 1
Inputs
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 z (+.f64 (*.f64 b (-.f64 t 2)) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (+.f64 (*.f64 -1 z) b) y) (+.f64 z (+.f64 (*.f64 b (-.f64 t 2)) x))))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (+.f64 (*.f64 -1 z) b) y) (+.f64 z (+.f64 (*.f64 b (-.f64 t 2)) x))))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (+.f64 (*.f64 -1 z) b) y) (+.f64 z (+.f64 (*.f64 b (-.f64 t 2)) x))))
(*.f64 (+.f64 (*.f64 -1 z) b) y)
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 z (+.f64 (*.f64 (+.f64 (*.f64 -1 z) b) y) (+.f64 (*.f64 b (-.f64 t 2)) x))))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 z (+.f64 (*.f64 (+.f64 (*.f64 -1 z) b) y) (+.f64 (*.f64 b (-.f64 t 2)) x))))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 z (+.f64 (*.f64 (+.f64 (*.f64 -1 z) b) y) (+.f64 (*.f64 b (-.f64 t 2)) x))))
(*.f64 -1 (*.f64 y (+.f64 z (*.f64 -1 b))))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 -1 (*.f64 y (+.f64 z (*.f64 -1 b)))) (+.f64 z (+.f64 (*.f64 b (-.f64 t 2)) x))))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 -1 (*.f64 y (+.f64 z (*.f64 -1 b)))) (+.f64 z (+.f64 (*.f64 b (-.f64 t 2)) x))))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 -1 (*.f64 y (+.f64 z (*.f64 -1 b)))) (+.f64 z (+.f64 (*.f64 b (-.f64 t 2)) x))))
(+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 y 2) b) x)))
(+.f64 (*.f64 t (+.f64 b (*.f64 -1 a))) (+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 y 2) b) x))))
(+.f64 (*.f64 t (+.f64 b (*.f64 -1 a))) (+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 y 2) b) x))))
(+.f64 (*.f64 t (+.f64 b (*.f64 -1 a))) (+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 y 2) b) x))))
(*.f64 t (+.f64 b (*.f64 -1 a)))
(+.f64 a (+.f64 (*.f64 t (+.f64 b (*.f64 -1 a))) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 y 2) b) x))))
(+.f64 a (+.f64 (*.f64 t (+.f64 b (*.f64 -1 a))) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 y 2) b) x))))
(+.f64 a (+.f64 (*.f64 t (+.f64 b (*.f64 -1 a))) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 y 2) b) x))))
(*.f64 -1 (*.f64 (+.f64 a (*.f64 -1 b)) t))
(+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 -1 (*.f64 (+.f64 a (*.f64 -1 b)) t)) (+.f64 (*.f64 (-.f64 y 2) b) x))))
(+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 -1 (*.f64 (+.f64 a (*.f64 -1 b)) t)) (+.f64 (*.f64 (-.f64 y 2) b) x))))
(+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 -1 (*.f64 (+.f64 a (*.f64 -1 b)) t)) (+.f64 (*.f64 (-.f64 y 2) b) x))))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(*.f64 (-.f64 (+.f64 y t) 2) b)
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(*.f64 (-.f64 (+.f64 y t) 2) b)
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(*.f64 z (-.f64 1 y))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(*.f64 z (-.f64 1 y))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(*.f64 a (-.f64 1 t))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(*.f64 a (-.f64 1 t))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) (*.f64 (-.f64 (+.f64 y t) 2) b)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
x
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
x
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(+.f64 (*.f64 a (-.f64 1 t)) x)
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(*.f64 z (-.f64 1 y))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(*.f64 z (-.f64 1 y))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 z x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 z x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 z x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 z x)))
(*.f64 -1 (*.f64 y z))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 z x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 z x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 z x)))
(*.f64 -1 (*.f64 y z))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 z x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 z x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 z x)))
(+.f64 (*.f64 z (-.f64 1 y)) x)
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(*.f64 a (-.f64 1 t))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(*.f64 a (-.f64 1 t))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) x))
(+.f64 a (+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(+.f64 a (+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(+.f64 a (+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(*.f64 -1 (*.f64 a t))
(+.f64 a (+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(+.f64 a (+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(+.f64 a (+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(*.f64 -1 (*.f64 a t))
(+.f64 a (+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(+.f64 a (+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(+.f64 a (+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (*.f64 z (-.f64 1 y)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
x
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
x
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
Outputs
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 z (+.f64 (*.f64 b (-.f64 t 2)) x)))
(fma.f64 a (-.f64 1 t) (+.f64 z (fma.f64 b (+.f64 t -2) x)))
(+.f64 (fma.f64 b (+.f64 t -2) x) (fma.f64 a (-.f64 1 t) z))
(+.f64 z (fma.f64 a (-.f64 1 t) (fma.f64 b (+.f64 t -2) x)))
(+.f64 x (fma.f64 a (-.f64 1 t) (fma.f64 b (+.f64 t -2) z)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (+.f64 (*.f64 -1 z) b) y) (+.f64 z (+.f64 (*.f64 b (-.f64 t 2)) x))))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(fma.f64 a (-.f64 1 t) (+.f64 (fma.f64 b (+.f64 t -2) x) (fma.f64 (-.f64 b z) y z)))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 y (-.f64 b z) x)) (fma.f64 a (-.f64 1 t) z))
(fma.f64 b (+.f64 t (+.f64 y -2)) (fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (+.f64 (*.f64 -1 z) b) y) (+.f64 z (+.f64 (*.f64 b (-.f64 t 2)) x))))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(fma.f64 a (-.f64 1 t) (+.f64 (fma.f64 b (+.f64 t -2) x) (fma.f64 (-.f64 b z) y z)))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 y (-.f64 b z) x)) (fma.f64 a (-.f64 1 t) z))
(fma.f64 b (+.f64 t (+.f64 y -2)) (fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (+.f64 (*.f64 -1 z) b) y) (+.f64 z (+.f64 (*.f64 b (-.f64 t 2)) x))))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(fma.f64 a (-.f64 1 t) (+.f64 (fma.f64 b (+.f64 t -2) x) (fma.f64 (-.f64 b z) y z)))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 y (-.f64 b z) x)) (fma.f64 a (-.f64 1 t) z))
(fma.f64 b (+.f64 t (+.f64 y -2)) (fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)))
(*.f64 (+.f64 (*.f64 -1 z) b) y)
(*.f64 (fma.f64 -1 z b) y)
(*.f64 (-.f64 b z) y)
(*.f64 y (-.f64 b z))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 z (+.f64 (*.f64 (+.f64 (*.f64 -1 z) b) y) (+.f64 (*.f64 b (-.f64 t 2)) x))))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(fma.f64 a (-.f64 1 t) (+.f64 (fma.f64 b (+.f64 t -2) x) (fma.f64 (-.f64 b z) y z)))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 y (-.f64 b z) x)) (fma.f64 a (-.f64 1 t) z))
(fma.f64 b (+.f64 t (+.f64 y -2)) (fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 z (+.f64 (*.f64 (+.f64 (*.f64 -1 z) b) y) (+.f64 (*.f64 b (-.f64 t 2)) x))))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(fma.f64 a (-.f64 1 t) (+.f64 (fma.f64 b (+.f64 t -2) x) (fma.f64 (-.f64 b z) y z)))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 y (-.f64 b z) x)) (fma.f64 a (-.f64 1 t) z))
(fma.f64 b (+.f64 t (+.f64 y -2)) (fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 z (+.f64 (*.f64 (+.f64 (*.f64 -1 z) b) y) (+.f64 (*.f64 b (-.f64 t 2)) x))))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(fma.f64 a (-.f64 1 t) (+.f64 (fma.f64 b (+.f64 t -2) x) (fma.f64 (-.f64 b z) y z)))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 y (-.f64 b z) x)) (fma.f64 a (-.f64 1 t) z))
(fma.f64 b (+.f64 t (+.f64 y -2)) (fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)))
(*.f64 -1 (*.f64 y (+.f64 z (*.f64 -1 b))))
(*.f64 (fma.f64 -1 z b) y)
(*.f64 (-.f64 b z) y)
(*.f64 y (-.f64 b z))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 -1 (*.f64 y (+.f64 z (*.f64 -1 b)))) (+.f64 z (+.f64 (*.f64 b (-.f64 t 2)) x))))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(fma.f64 a (-.f64 1 t) (+.f64 (fma.f64 b (+.f64 t -2) x) (fma.f64 (-.f64 b z) y z)))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 y (-.f64 b z) x)) (fma.f64 a (-.f64 1 t) z))
(fma.f64 b (+.f64 t (+.f64 y -2)) (fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 -1 (*.f64 y (+.f64 z (*.f64 -1 b)))) (+.f64 z (+.f64 (*.f64 b (-.f64 t 2)) x))))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(fma.f64 a (-.f64 1 t) (+.f64 (fma.f64 b (+.f64 t -2) x) (fma.f64 (-.f64 b z) y z)))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 y (-.f64 b z) x)) (fma.f64 a (-.f64 1 t) z))
(fma.f64 b (+.f64 t (+.f64 y -2)) (fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 -1 (*.f64 y (+.f64 z (*.f64 -1 b)))) (+.f64 z (+.f64 (*.f64 b (-.f64 t 2)) x))))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(fma.f64 a (-.f64 1 t) (+.f64 (fma.f64 b (+.f64 t -2) x) (fma.f64 (-.f64 b z) y z)))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 y (-.f64 b z) x)) (fma.f64 a (-.f64 1 t) z))
(fma.f64 b (+.f64 t (+.f64 y -2)) (fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)))
(+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 y 2) b) x)))
(+.f64 a (fma.f64 z (-.f64 1 y) (fma.f64 (+.f64 y -2) b x)))
(+.f64 a (fma.f64 z (-.f64 1 y) (fma.f64 b (-.f64 y 2) x)))
(+.f64 (fma.f64 b (+.f64 y -2) x) (fma.f64 z (-.f64 1 y) a))
(+.f64 a (fma.f64 z (-.f64 1 y) (fma.f64 b (+.f64 y -2) x)))
(+.f64 (*.f64 t (+.f64 b (*.f64 -1 a))) (+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 y 2) b) x))))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(fma.f64 a (-.f64 1 t) (+.f64 (fma.f64 b (+.f64 t -2) x) (fma.f64 (-.f64 b z) y z)))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 y (-.f64 b z) x)) (fma.f64 a (-.f64 1 t) z))
(fma.f64 b (+.f64 t (+.f64 y -2)) (fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)))
(+.f64 (*.f64 t (+.f64 b (*.f64 -1 a))) (+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 y 2) b) x))))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(fma.f64 a (-.f64 1 t) (+.f64 (fma.f64 b (+.f64 t -2) x) (fma.f64 (-.f64 b z) y z)))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 y (-.f64 b z) x)) (fma.f64 a (-.f64 1 t) z))
(fma.f64 b (+.f64 t (+.f64 y -2)) (fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)))
(+.f64 (*.f64 t (+.f64 b (*.f64 -1 a))) (+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 y 2) b) x))))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(fma.f64 a (-.f64 1 t) (+.f64 (fma.f64 b (+.f64 t -2) x) (fma.f64 (-.f64 b z) y z)))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 y (-.f64 b z) x)) (fma.f64 a (-.f64 1 t) z))
(fma.f64 b (+.f64 t (+.f64 y -2)) (fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)))
(*.f64 t (+.f64 b (*.f64 -1 a)))
(*.f64 t (+.f64 b (neg.f64 a)))
(*.f64 t (-.f64 b a))
(+.f64 a (+.f64 (*.f64 t (+.f64 b (*.f64 -1 a))) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 y 2) b) x))))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(fma.f64 a (-.f64 1 t) (+.f64 (fma.f64 b (+.f64 t -2) x) (fma.f64 (-.f64 b z) y z)))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 y (-.f64 b z) x)) (fma.f64 a (-.f64 1 t) z))
(fma.f64 b (+.f64 t (+.f64 y -2)) (fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)))
(+.f64 a (+.f64 (*.f64 t (+.f64 b (*.f64 -1 a))) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 y 2) b) x))))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(fma.f64 a (-.f64 1 t) (+.f64 (fma.f64 b (+.f64 t -2) x) (fma.f64 (-.f64 b z) y z)))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 y (-.f64 b z) x)) (fma.f64 a (-.f64 1 t) z))
(fma.f64 b (+.f64 t (+.f64 y -2)) (fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)))
(+.f64 a (+.f64 (*.f64 t (+.f64 b (*.f64 -1 a))) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 y 2) b) x))))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(fma.f64 a (-.f64 1 t) (+.f64 (fma.f64 b (+.f64 t -2) x) (fma.f64 (-.f64 b z) y z)))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 y (-.f64 b z) x)) (fma.f64 a (-.f64 1 t) z))
(fma.f64 b (+.f64 t (+.f64 y -2)) (fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)))
(*.f64 -1 (*.f64 (+.f64 a (*.f64 -1 b)) t))
(*.f64 t (+.f64 b (neg.f64 a)))
(*.f64 t (-.f64 b a))
(+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 -1 (*.f64 (+.f64 a (*.f64 -1 b)) t)) (+.f64 (*.f64 (-.f64 y 2) b) x))))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(fma.f64 a (-.f64 1 t) (+.f64 (fma.f64 b (+.f64 t -2) x) (fma.f64 (-.f64 b z) y z)))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 y (-.f64 b z) x)) (fma.f64 a (-.f64 1 t) z))
(fma.f64 b (+.f64 t (+.f64 y -2)) (fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)))
(+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 -1 (*.f64 (+.f64 a (*.f64 -1 b)) t)) (+.f64 (*.f64 (-.f64 y 2) b) x))))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(fma.f64 a (-.f64 1 t) (+.f64 (fma.f64 b (+.f64 t -2) x) (fma.f64 (-.f64 b z) y z)))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 y (-.f64 b z) x)) (fma.f64 a (-.f64 1 t) z))
(fma.f64 b (+.f64 t (+.f64 y -2)) (fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)))
(+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 -1 (*.f64 (+.f64 a (*.f64 -1 b)) t)) (+.f64 (*.f64 (-.f64 y 2) b) x))))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(fma.f64 a (-.f64 1 t) (+.f64 (fma.f64 b (+.f64 t -2) x) (fma.f64 (-.f64 b z) y z)))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 y (-.f64 b z) x)) (fma.f64 a (-.f64 1 t) z))
(fma.f64 b (+.f64 t (+.f64 y -2)) (fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(fma.f64 a (-.f64 1 t) (+.f64 (fma.f64 b (+.f64 t -2) x) (fma.f64 (-.f64 b z) y z)))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 y (-.f64 b z) x)) (fma.f64 a (-.f64 1 t) z))
(fma.f64 b (+.f64 t (+.f64 y -2)) (fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(fma.f64 a (-.f64 1 t) (+.f64 (fma.f64 b (+.f64 t -2) x) (fma.f64 (-.f64 b z) y z)))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 y (-.f64 b z) x)) (fma.f64 a (-.f64 1 t) z))
(fma.f64 b (+.f64 t (+.f64 y -2)) (fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(fma.f64 a (-.f64 1 t) (+.f64 (fma.f64 b (+.f64 t -2) x) (fma.f64 (-.f64 b z) y z)))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 y (-.f64 b z) x)) (fma.f64 a (-.f64 1 t) z))
(fma.f64 b (+.f64 t (+.f64 y -2)) (fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)))
(*.f64 (-.f64 (+.f64 y t) 2) b)
(*.f64 b (+.f64 y (+.f64 t -2)))
(*.f64 b (+.f64 t (-.f64 y 2)))
(*.f64 b (+.f64 t (+.f64 y -2)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(fma.f64 a (-.f64 1 t) (+.f64 (fma.f64 b (+.f64 t -2) x) (fma.f64 (-.f64 b z) y z)))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 y (-.f64 b z) x)) (fma.f64 a (-.f64 1 t) z))
(fma.f64 b (+.f64 t (+.f64 y -2)) (fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(fma.f64 a (-.f64 1 t) (+.f64 (fma.f64 b (+.f64 t -2) x) (fma.f64 (-.f64 b z) y z)))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 y (-.f64 b z) x)) (fma.f64 a (-.f64 1 t) z))
(fma.f64 b (+.f64 t (+.f64 y -2)) (fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(fma.f64 a (-.f64 1 t) (+.f64 (fma.f64 b (+.f64 t -2) x) (fma.f64 (-.f64 b z) y z)))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 y (-.f64 b z) x)) (fma.f64 a (-.f64 1 t) z))
(fma.f64 b (+.f64 t (+.f64 y -2)) (fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)))
(*.f64 (-.f64 (+.f64 y t) 2) b)
(*.f64 b (+.f64 y (+.f64 t -2)))
(*.f64 b (+.f64 t (-.f64 y 2)))
(*.f64 b (+.f64 t (+.f64 y -2)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(fma.f64 a (-.f64 1 t) (+.f64 (fma.f64 b (+.f64 t -2) x) (fma.f64 (-.f64 b z) y z)))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 y (-.f64 b z) x)) (fma.f64 a (-.f64 1 t) z))
(fma.f64 b (+.f64 t (+.f64 y -2)) (fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(fma.f64 a (-.f64 1 t) (+.f64 (fma.f64 b (+.f64 t -2) x) (fma.f64 (-.f64 b z) y z)))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 y (-.f64 b z) x)) (fma.f64 a (-.f64 1 t) z))
(fma.f64 b (+.f64 t (+.f64 y -2)) (fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(fma.f64 a (-.f64 1 t) (+.f64 (fma.f64 b (+.f64 t -2) x) (fma.f64 (-.f64 b z) y z)))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 y (-.f64 b z) x)) (fma.f64 a (-.f64 1 t) z))
(fma.f64 b (+.f64 t (+.f64 y -2)) (fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x))
(fma.f64 a (-.f64 1 t) (fma.f64 (+.f64 y (+.f64 t -2)) b x))
(fma.f64 a (-.f64 1 t) (fma.f64 b (+.f64 t (-.f64 y 2)) x))
(fma.f64 b (+.f64 t (+.f64 y -2)) (fma.f64 a (-.f64 1 t) x))
(+.f64 a (fma.f64 t (-.f64 b a) (fma.f64 b (+.f64 y -2) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(fma.f64 a (-.f64 1 t) (+.f64 (fma.f64 b (+.f64 t -2) x) (fma.f64 (-.f64 b z) y z)))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 y (-.f64 b z) x)) (fma.f64 a (-.f64 1 t) z))
(fma.f64 b (+.f64 t (+.f64 y -2)) (fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(fma.f64 a (-.f64 1 t) (+.f64 (fma.f64 b (+.f64 t -2) x) (fma.f64 (-.f64 b z) y z)))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 y (-.f64 b z) x)) (fma.f64 a (-.f64 1 t) z))
(fma.f64 b (+.f64 t (+.f64 y -2)) (fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(fma.f64 a (-.f64 1 t) (+.f64 (fma.f64 b (+.f64 t -2) x) (fma.f64 (-.f64 b z) y z)))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 y (-.f64 b z) x)) (fma.f64 a (-.f64 1 t) z))
(fma.f64 b (+.f64 t (+.f64 y -2)) (fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)))
(*.f64 z (-.f64 1 y))
(-.f64 z (*.f64 z y))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(fma.f64 a (-.f64 1 t) (+.f64 (fma.f64 b (+.f64 t -2) x) (fma.f64 (-.f64 b z) y z)))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 y (-.f64 b z) x)) (fma.f64 a (-.f64 1 t) z))
(fma.f64 b (+.f64 t (+.f64 y -2)) (fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(fma.f64 a (-.f64 1 t) (+.f64 (fma.f64 b (+.f64 t -2) x) (fma.f64 (-.f64 b z) y z)))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 y (-.f64 b z) x)) (fma.f64 a (-.f64 1 t) z))
(fma.f64 b (+.f64 t (+.f64 y -2)) (fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(fma.f64 a (-.f64 1 t) (+.f64 (fma.f64 b (+.f64 t -2) x) (fma.f64 (-.f64 b z) y z)))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 y (-.f64 b z) x)) (fma.f64 a (-.f64 1 t) z))
(fma.f64 b (+.f64 t (+.f64 y -2)) (fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)))
(*.f64 z (-.f64 1 y))
(-.f64 z (*.f64 z y))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(fma.f64 a (-.f64 1 t) (+.f64 (fma.f64 b (+.f64 t -2) x) (fma.f64 (-.f64 b z) y z)))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 y (-.f64 b z) x)) (fma.f64 a (-.f64 1 t) z))
(fma.f64 b (+.f64 t (+.f64 y -2)) (fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(fma.f64 a (-.f64 1 t) (+.f64 (fma.f64 b (+.f64 t -2) x) (fma.f64 (-.f64 b z) y z)))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 y (-.f64 b z) x)) (fma.f64 a (-.f64 1 t) z))
(fma.f64 b (+.f64 t (+.f64 y -2)) (fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(fma.f64 a (-.f64 1 t) (+.f64 (fma.f64 b (+.f64 t -2) x) (fma.f64 (-.f64 b z) y z)))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 y (-.f64 b z) x)) (fma.f64 a (-.f64 1 t) z))
(fma.f64 b (+.f64 t (+.f64 y -2)) (fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)))
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 z (-.f64 1 y) (fma.f64 (+.f64 y (+.f64 t -2)) b x))
(fma.f64 z (-.f64 1 y) (fma.f64 b (+.f64 t (-.f64 y 2)) x))
(+.f64 z (fma.f64 b (+.f64 t -2) (fma.f64 y (-.f64 b z) x)))
(+.f64 x (fma.f64 y (-.f64 b z) (fma.f64 b (+.f64 t -2) z)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(fma.f64 a (-.f64 1 t) (+.f64 (fma.f64 b (+.f64 t -2) x) (fma.f64 (-.f64 b z) y z)))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 y (-.f64 b z) x)) (fma.f64 a (-.f64 1 t) z))
(fma.f64 b (+.f64 t (+.f64 y -2)) (fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(fma.f64 a (-.f64 1 t) (+.f64 (fma.f64 b (+.f64 t -2) x) (fma.f64 (-.f64 b z) y z)))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 y (-.f64 b z) x)) (fma.f64 a (-.f64 1 t) z))
(fma.f64 b (+.f64 t (+.f64 y -2)) (fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(fma.f64 a (-.f64 1 t) (+.f64 (fma.f64 b (+.f64 t -2) x) (fma.f64 (-.f64 b z) y z)))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 y (-.f64 b z) x)) (fma.f64 a (-.f64 1 t) z))
(fma.f64 b (+.f64 t (+.f64 y -2)) (fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)))
(*.f64 a (-.f64 1 t))
(-.f64 a (*.f64 a t))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(fma.f64 a (-.f64 1 t) (+.f64 (fma.f64 b (+.f64 t -2) x) (fma.f64 (-.f64 b z) y z)))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 y (-.f64 b z) x)) (fma.f64 a (-.f64 1 t) z))
(fma.f64 b (+.f64 t (+.f64 y -2)) (fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(fma.f64 a (-.f64 1 t) (+.f64 (fma.f64 b (+.f64 t -2) x) (fma.f64 (-.f64 b z) y z)))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 y (-.f64 b z) x)) (fma.f64 a (-.f64 1 t) z))
(fma.f64 b (+.f64 t (+.f64 y -2)) (fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(fma.f64 a (-.f64 1 t) (+.f64 (fma.f64 b (+.f64 t -2) x) (fma.f64 (-.f64 b z) y z)))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 y (-.f64 b z) x)) (fma.f64 a (-.f64 1 t) z))
(fma.f64 b (+.f64 t (+.f64 y -2)) (fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)))
(*.f64 a (-.f64 1 t))
(-.f64 a (*.f64 a t))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(fma.f64 a (-.f64 1 t) (+.f64 (fma.f64 b (+.f64 t -2) x) (fma.f64 (-.f64 b z) y z)))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 y (-.f64 b z) x)) (fma.f64 a (-.f64 1 t) z))
(fma.f64 b (+.f64 t (+.f64 y -2)) (fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(fma.f64 a (-.f64 1 t) (+.f64 (fma.f64 b (+.f64 t -2) x) (fma.f64 (-.f64 b z) y z)))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 y (-.f64 b z) x)) (fma.f64 a (-.f64 1 t) z))
(fma.f64 b (+.f64 t (+.f64 y -2)) (fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(fma.f64 a (-.f64 1 t) (+.f64 (fma.f64 b (+.f64 t -2) x) (fma.f64 (-.f64 b z) y z)))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 y (-.f64 b z) x)) (fma.f64 a (-.f64 1 t) z))
(fma.f64 b (+.f64 t (+.f64 y -2)) (fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) (*.f64 (-.f64 (+.f64 y t) 2) b)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) (*.f64 b (+.f64 y (+.f64 t -2)))))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) (*.f64 b (+.f64 t (-.f64 y 2)))))
(fma.f64 a (-.f64 1 t) (fma.f64 y (-.f64 b z) (fma.f64 b (+.f64 t -2) z)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(fma.f64 a (-.f64 1 t) (+.f64 (fma.f64 b (+.f64 t -2) x) (fma.f64 (-.f64 b z) y z)))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 y (-.f64 b z) x)) (fma.f64 a (-.f64 1 t) z))
(fma.f64 b (+.f64 t (+.f64 y -2)) (fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(fma.f64 a (-.f64 1 t) (+.f64 (fma.f64 b (+.f64 t -2) x) (fma.f64 (-.f64 b z) y z)))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 y (-.f64 b z) x)) (fma.f64 a (-.f64 1 t) z))
(fma.f64 b (+.f64 t (+.f64 y -2)) (fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(fma.f64 a (-.f64 1 t) (+.f64 (fma.f64 b (+.f64 t -2) x) (fma.f64 (-.f64 b z) y z)))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 y (-.f64 b z) x)) (fma.f64 a (-.f64 1 t) z))
(fma.f64 b (+.f64 t (+.f64 y -2)) (fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)))
x
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(fma.f64 a (-.f64 1 t) (+.f64 (fma.f64 b (+.f64 t -2) x) (fma.f64 (-.f64 b z) y z)))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 y (-.f64 b z) x)) (fma.f64 a (-.f64 1 t) z))
(fma.f64 b (+.f64 t (+.f64 y -2)) (fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(fma.f64 a (-.f64 1 t) (+.f64 (fma.f64 b (+.f64 t -2) x) (fma.f64 (-.f64 b z) y z)))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 y (-.f64 b z) x)) (fma.f64 a (-.f64 1 t) z))
(fma.f64 b (+.f64 t (+.f64 y -2)) (fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(fma.f64 a (-.f64 1 t) (+.f64 (fma.f64 b (+.f64 t -2) x) (fma.f64 (-.f64 b z) y z)))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 y (-.f64 b z) x)) (fma.f64 a (-.f64 1 t) z))
(fma.f64 b (+.f64 t (+.f64 y -2)) (fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)))
x
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(fma.f64 a (-.f64 1 t) (+.f64 (fma.f64 b (+.f64 t -2) x) (fma.f64 (-.f64 b z) y z)))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 y (-.f64 b z) x)) (fma.f64 a (-.f64 1 t) z))
(fma.f64 b (+.f64 t (+.f64 y -2)) (fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(fma.f64 a (-.f64 1 t) (+.f64 (fma.f64 b (+.f64 t -2) x) (fma.f64 (-.f64 b z) y z)))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 y (-.f64 b z) x)) (fma.f64 a (-.f64 1 t) z))
(fma.f64 b (+.f64 t (+.f64 y -2)) (fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(fma.f64 a (-.f64 1 t) (+.f64 (fma.f64 b (+.f64 t -2) x) (fma.f64 (-.f64 b z) y z)))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 y (-.f64 b z) x)) (fma.f64 a (-.f64 1 t) z))
(fma.f64 b (+.f64 t (+.f64 y -2)) (fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)))
(+.f64 (*.f64 a (-.f64 1 t)) x)
(fma.f64 a (-.f64 1 t) x)
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(*.f64 z (-.f64 1 y))
(-.f64 z (*.f64 z y))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(*.f64 z (-.f64 1 y))
(-.f64 z (*.f64 z y))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 z x))
(fma.f64 a (-.f64 1 t) (+.f64 z x))
(+.f64 z (fma.f64 a (-.f64 1 t) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 z x)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 z x)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 z x)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(*.f64 -1 (*.f64 y z))
(neg.f64 (*.f64 z y))
(*.f64 z (neg.f64 y))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 z x)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 z x)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 z x)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(*.f64 -1 (*.f64 y z))
(neg.f64 (*.f64 z y))
(*.f64 z (neg.f64 y))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 z x)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 z x)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 z x)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(+.f64 (*.f64 z (-.f64 1 y)) x)
(fma.f64 z (-.f64 1 y) x)
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(*.f64 a (-.f64 1 t))
(-.f64 a (*.f64 a t))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(*.f64 a (-.f64 1 t))
(-.f64 a (*.f64 a t))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) x))
(+.f64 a (fma.f64 z (-.f64 1 y) x))
(fma.f64 z (-.f64 1 y) (+.f64 a x))
(+.f64 a (+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(+.f64 a (+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(+.f64 a (+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(*.f64 -1 (*.f64 a t))
(*.f64 (neg.f64 a) t)
(*.f64 a (neg.f64 t))
(+.f64 a (+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(+.f64 a (+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(+.f64 a (+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(*.f64 -1 (*.f64 a t))
(*.f64 (neg.f64 a) t)
(*.f64 a (neg.f64 t))
(+.f64 a (+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(+.f64 a (+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(+.f64 a (+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(+.f64 (*.f64 a (-.f64 1 t)) (*.f64 z (-.f64 1 y)))
(fma.f64 a (-.f64 1 t) (*.f64 z (-.f64 1 y)))
(fma.f64 a (-.f64 1 t) (-.f64 z (*.f64 z y)))
(-.f64 (fma.f64 z (-.f64 1 y) a) (*.f64 a t))
(-.f64 a (fma.f64 a t (-.f64 (*.f64 z y) z)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
x
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
x
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))

localize5.0ms (0%)

Compiler

Compiled 11 to 7 computations (36.4% saved)

localize7.0ms (0%)

Local error

Found 1 expressions with local error:

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

Compiled 17 to 8 computations (52.9% saved)

series3.0ms (0%)

Counts
1 → 36
Calls

9 calls:

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

rewrite56.0ms (0.1%)

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

Useful iterations: 1 (0.0ms)

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

simplify10.0ms (0%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
06159
19159
210159
Stop Event
saturated
Counts
71 → 38
Calls
Call 1
Inputs
(*.f64 t b)
(+.f64 (*.f64 t b) x)
(+.f64 (*.f64 t b) x)
(+.f64 (*.f64 t b) x)
x
(+.f64 (*.f64 t b) x)
(+.f64 (*.f64 t b) x)
(+.f64 (*.f64 t b) x)
x
(+.f64 (*.f64 t b) x)
(+.f64 (*.f64 t b) x)
(+.f64 (*.f64 t b) x)
x
(+.f64 (*.f64 t b) x)
(+.f64 (*.f64 t b) x)
(+.f64 (*.f64 t b) x)
(*.f64 t b)
(+.f64 (*.f64 t b) x)
(+.f64 (*.f64 t b) x)
(+.f64 (*.f64 t b) x)
(*.f64 t b)
(+.f64 (*.f64 t b) x)
(+.f64 (*.f64 t b) x)
(+.f64 (*.f64 t b) x)
x
(+.f64 (*.f64 t b) x)
(+.f64 (*.f64 t b) x)
(+.f64 (*.f64 t b) x)
(*.f64 t b)
(+.f64 (*.f64 t b) x)
(+.f64 (*.f64 t b) x)
(+.f64 (*.f64 t b) x)
(*.f64 t b)
(+.f64 (*.f64 t b) x)
(+.f64 (*.f64 t b) x)
(+.f64 (*.f64 t b) x)
Outputs
(*.f64 t b)
(+.f64 (*.f64 t b) x)
(fma.f64 t b x)
(+.f64 (*.f64 t b) x)
(fma.f64 t b x)
(+.f64 (*.f64 t b) x)
(fma.f64 t b x)
x
(+.f64 (*.f64 t b) x)
(fma.f64 t b x)
(+.f64 (*.f64 t b) x)
(fma.f64 t b x)
(+.f64 (*.f64 t b) x)
(fma.f64 t b x)
x
(+.f64 (*.f64 t b) x)
(fma.f64 t b x)
(+.f64 (*.f64 t b) x)
(fma.f64 t b x)
(+.f64 (*.f64 t b) x)
(fma.f64 t b x)
x
(+.f64 (*.f64 t b) x)
(fma.f64 t b x)
(+.f64 (*.f64 t b) x)
(fma.f64 t b x)
(+.f64 (*.f64 t b) x)
(fma.f64 t b x)
(*.f64 t b)
(+.f64 (*.f64 t b) x)
(fma.f64 t b x)
(+.f64 (*.f64 t b) x)
(fma.f64 t b x)
(+.f64 (*.f64 t b) x)
(fma.f64 t b x)
(*.f64 t b)
(+.f64 (*.f64 t b) x)
(fma.f64 t b x)
(+.f64 (*.f64 t b) x)
(fma.f64 t b x)
(+.f64 (*.f64 t b) x)
(fma.f64 t b x)
x
(+.f64 (*.f64 t b) x)
(fma.f64 t b x)
(+.f64 (*.f64 t b) x)
(fma.f64 t b x)
(+.f64 (*.f64 t b) x)
(fma.f64 t b x)
(*.f64 t b)
(+.f64 (*.f64 t b) x)
(fma.f64 t b x)
(+.f64 (*.f64 t b) x)
(fma.f64 t b x)
(+.f64 (*.f64 t b) x)
(fma.f64 t b x)
(*.f64 t b)
(+.f64 (*.f64 t b) x)
(fma.f64 t b x)
(+.f64 (*.f64 t b) x)
(fma.f64 t b x)
(+.f64 (*.f64 t b) x)
(fma.f64 t b x)

localize59.0ms (0.2%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(*.f64 (-.f64 y 2) b)
Compiler

Compiled 25 to 16 computations (36% saved)

series3.0ms (0%)

Counts
1 → 12
Calls

6 calls:

TimeVariablePointExpression
0.0ms
b
@-inf
(*.f64 (-.f64 y 2) b)
0.0ms
b
@inf
(*.f64 (-.f64 y 2) b)
0.0ms
b
@0
(*.f64 (-.f64 y 2) b)
0.0ms
y
@0
(*.f64 (-.f64 y 2) b)
0.0ms
y
@inf
(*.f64 (-.f64 y 2) b)

rewrite48.0ms (0.1%)

Algorithm
batch-egg-rewrite
Rules
675×pow1_binary64
630×add-log-exp_binary64
629×log1p-expm1-u_binary64
629×expm1-log1p-u_binary64
619×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
067
11327
216507
Stop Event
node limit
Counts
1 → 19
Calls
Call 1
Inputs
(*.f64 (-.f64 y 2) b)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y b) (*.f64 -2 b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 b y) (*.f64 b -2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 (+.f64 y -2) b)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (pow.f64 y 3) -8) b) (fma.f64 y y (+.f64 4 (*.f64 y 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (fma.f64 y y -4) b) (+.f64 y 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 b (+.f64 (pow.f64 y 3) -8)) (fma.f64 y y (+.f64 4 (*.f64 y 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 b (fma.f64 y y -4)) (+.f64 y 2))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (+.f64 y -2) b) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (+.f64 y -2) b) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (+.f64 y -2) b)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (+.f64 y -2) b)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (+.f64 y -2) b) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 b) (+.f64 y -2)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (+.f64 y -2) b) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (+.f64 y -2) 3) (pow.f64 b 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 b 3) (pow.f64 (+.f64 y -2) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (+.f64 y -2) b)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (+.f64 y -2) b)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (+.f64 y -2) b)))))))

simplify8.0ms (0%)

Algorithm
egg-herbie
Rules
fma-def_binary64
*-commutative_binary64
+-commutative_binary64
distribute-rgt-out_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0775
11375
21975
Stop Event
saturated
Counts
31 → 23
Calls
Call 1
Inputs
(*.f64 -2 b)
(+.f64 (*.f64 y b) (*.f64 -2 b))
(+.f64 (*.f64 y b) (*.f64 -2 b))
(+.f64 (*.f64 y b) (*.f64 -2 b))
(*.f64 y b)
(+.f64 (*.f64 y b) (*.f64 -2 b))
(+.f64 (*.f64 y b) (*.f64 -2 b))
(+.f64 (*.f64 y b) (*.f64 -2 b))
(*.f64 y b)
(+.f64 (*.f64 y b) (*.f64 -2 b))
(+.f64 (*.f64 y b) (*.f64 -2 b))
(+.f64 (*.f64 y b) (*.f64 -2 b))
Outputs
(*.f64 -2 b)
(+.f64 (*.f64 y b) (*.f64 -2 b))
(*.f64 b (+.f64 y -2))
(*.f64 b (+.f64 -2 y))
(+.f64 (*.f64 y b) (*.f64 -2 b))
(*.f64 b (+.f64 y -2))
(*.f64 b (+.f64 -2 y))
(+.f64 (*.f64 y b) (*.f64 -2 b))
(*.f64 b (+.f64 y -2))
(*.f64 b (+.f64 -2 y))
(*.f64 y b)
(*.f64 b y)
(+.f64 (*.f64 y b) (*.f64 -2 b))
(*.f64 b (+.f64 y -2))
(*.f64 b (+.f64 -2 y))
(+.f64 (*.f64 y b) (*.f64 -2 b))
(*.f64 b (+.f64 y -2))
(*.f64 b (+.f64 -2 y))
(+.f64 (*.f64 y b) (*.f64 -2 b))
(*.f64 b (+.f64 y -2))
(*.f64 b (+.f64 -2 y))
(*.f64 y b)
(*.f64 b y)
(+.f64 (*.f64 y b) (*.f64 -2 b))
(*.f64 b (+.f64 y -2))
(*.f64 b (+.f64 -2 y))
(+.f64 (*.f64 y b) (*.f64 -2 b))
(*.f64 b (+.f64 y -2))
(*.f64 b (+.f64 -2 y))
(+.f64 (*.f64 y b) (*.f64 -2 b))
(*.f64 b (+.f64 y -2))
(*.f64 b (+.f64 -2 y))

localize18.0ms (0%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 (-.f64 (+.f64 y t) 2) b))
0.0b
(*.f64 (-.f64 (+.f64 y t) 2) b)
Compiler

Compiled 44 to 19 computations (56.8% saved)

series5.0ms (0%)

Counts
1 → 48
Calls

12 calls:

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

rewrite75.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
635×fma-def_binary64
630×log-prod_binary64
349×pow2_binary64
336×fma-neg_binary64
240×expm1-udef_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify112.0ms (0.3%)

Algorithm
egg-herbie
Rules
1096×fma-neg_binary64
495×fma-def_binary64
200×cancel-sign-sub-inv_binary64
198×distribute-rgt-in_binary64
155×unsub-neg_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
031705
176666
2184594
3419592
4946592
51832592
63309592
73628592
83628592
94084592
104084592
Stop Event
saturated
Counts
123 → 93
Calls
Call 1
Inputs
(*.f64 (-.f64 (+.f64 y t) 2) b)
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b))
(*.f64 -1 (*.f64 y z))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b))
(*.f64 -1 (*.f64 y z))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b))
(*.f64 (-.f64 t 2) b)
(+.f64 (*.f64 (+.f64 (*.f64 -1 z) b) y) (*.f64 (-.f64 t 2) b))
(+.f64 (*.f64 (+.f64 (*.f64 -1 z) b) y) (*.f64 (-.f64 t 2) b))
(+.f64 (*.f64 (+.f64 (*.f64 -1 z) b) y) (*.f64 (-.f64 t 2) b))
(*.f64 (+.f64 (*.f64 -1 z) b) y)
(+.f64 (*.f64 (+.f64 (*.f64 -1 z) b) y) (*.f64 b (-.f64 t 2)))
(+.f64 (*.f64 (+.f64 (*.f64 -1 z) b) y) (*.f64 b (-.f64 t 2)))
(+.f64 (*.f64 (+.f64 (*.f64 -1 z) b) y) (*.f64 b (-.f64 t 2)))
(*.f64 -1 (*.f64 y (+.f64 z (*.f64 -1 b))))
(+.f64 (*.f64 -1 (*.f64 y (+.f64 z (*.f64 -1 b)))) (*.f64 b (-.f64 t 2)))
(+.f64 (*.f64 -1 (*.f64 y (+.f64 z (*.f64 -1 b)))) (*.f64 b (-.f64 t 2)))
(+.f64 (*.f64 -1 (*.f64 y (+.f64 z (*.f64 -1 b)))) (*.f64 b (-.f64 t 2)))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 y 2) b))
(+.f64 (*.f64 t b) (+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 y 2) b)))
(+.f64 (*.f64 t b) (+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 y 2) b)))
(+.f64 (*.f64 t b) (+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 y 2) b)))
(*.f64 t b)
(+.f64 (*.f64 t b) (+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 y 2) b)))
(+.f64 (*.f64 t b) (+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 y 2) b)))
(+.f64 (*.f64 t b) (+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 y 2) b)))
(*.f64 t b)
(+.f64 (*.f64 t b) (+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 y 2) b)))
(+.f64 (*.f64 t b) (+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 y 2) b)))
(+.f64 (*.f64 t b) (+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 y 2) b)))
(*.f64 -1 (*.f64 y z))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b))
(*.f64 (-.f64 (+.f64 y t) 2) b)
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b))
(*.f64 (-.f64 (+.f64 y t) 2) b)
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b))
Outputs
(*.f64 (-.f64 (+.f64 y t) 2) b)
(*.f64 (+.f64 y (+.f64 t -2)) b)
(*.f64 (+.f64 t (+.f64 y -2)) b)
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b))
(fma.f64 -1 (*.f64 y z) (*.f64 (+.f64 y (+.f64 t -2)) b))
(-.f64 (*.f64 (+.f64 t (+.f64 y -2)) b) (*.f64 y z))
(fma.f64 y (-.f64 b z) (*.f64 b (+.f64 t -2)))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b))
(fma.f64 -1 (*.f64 y z) (*.f64 (+.f64 y (+.f64 t -2)) b))
(-.f64 (*.f64 (+.f64 t (+.f64 y -2)) b) (*.f64 y z))
(fma.f64 y (-.f64 b z) (*.f64 b (+.f64 t -2)))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b))
(fma.f64 -1 (*.f64 y z) (*.f64 (+.f64 y (+.f64 t -2)) b))
(-.f64 (*.f64 (+.f64 t (+.f64 y -2)) b) (*.f64 y z))
(fma.f64 y (-.f64 b z) (*.f64 b (+.f64 t -2)))
(*.f64 -1 (*.f64 y z))
(neg.f64 (*.f64 y z))
(*.f64 z (neg.f64 y))
(*.f64 y (neg.f64 z))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b))
(fma.f64 -1 (*.f64 y z) (*.f64 (+.f64 y (+.f64 t -2)) b))
(-.f64 (*.f64 (+.f64 t (+.f64 y -2)) b) (*.f64 y z))
(fma.f64 y (-.f64 b z) (*.f64 b (+.f64 t -2)))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b))
(fma.f64 -1 (*.f64 y z) (*.f64 (+.f64 y (+.f64 t -2)) b))
(-.f64 (*.f64 (+.f64 t (+.f64 y -2)) b) (*.f64 y z))
(fma.f64 y (-.f64 b z) (*.f64 b (+.f64 t -2)))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b))
(fma.f64 -1 (*.f64 y z) (*.f64 (+.f64 y (+.f64 t -2)) b))
(-.f64 (*.f64 (+.f64 t (+.f64 y -2)) b) (*.f64 y z))
(fma.f64 y (-.f64 b z) (*.f64 b (+.f64 t -2)))
(*.f64 -1 (*.f64 y z))
(neg.f64 (*.f64 y z))
(*.f64 z (neg.f64 y))
(*.f64 y (neg.f64 z))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b))
(fma.f64 -1 (*.f64 y z) (*.f64 (+.f64 y (+.f64 t -2)) b))
(-.f64 (*.f64 (+.f64 t (+.f64 y -2)) b) (*.f64 y z))
(fma.f64 y (-.f64 b z) (*.f64 b (+.f64 t -2)))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b))
(fma.f64 -1 (*.f64 y z) (*.f64 (+.f64 y (+.f64 t -2)) b))
(-.f64 (*.f64 (+.f64 t (+.f64 y -2)) b) (*.f64 y z))
(fma.f64 y (-.f64 b z) (*.f64 b (+.f64 t -2)))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b))
(fma.f64 -1 (*.f64 y z) (*.f64 (+.f64 y (+.f64 t -2)) b))
(-.f64 (*.f64 (+.f64 t (+.f64 y -2)) b) (*.f64 y z))
(fma.f64 y (-.f64 b z) (*.f64 b (+.f64 t -2)))
(*.f64 (-.f64 t 2) b)
(*.f64 b (+.f64 t -2))
(+.f64 (*.f64 (+.f64 (*.f64 -1 z) b) y) (*.f64 (-.f64 t 2) b))
(fma.f64 -1 (*.f64 y z) (*.f64 (+.f64 y (+.f64 t -2)) b))
(-.f64 (*.f64 (+.f64 t (+.f64 y -2)) b) (*.f64 y z))
(fma.f64 y (-.f64 b z) (*.f64 b (+.f64 t -2)))
(+.f64 (*.f64 (+.f64 (*.f64 -1 z) b) y) (*.f64 (-.f64 t 2) b))
(fma.f64 -1 (*.f64 y z) (*.f64 (+.f64 y (+.f64 t -2)) b))
(-.f64 (*.f64 (+.f64 t (+.f64 y -2)) b) (*.f64 y z))
(fma.f64 y (-.f64 b z) (*.f64 b (+.f64 t -2)))
(+.f64 (*.f64 (+.f64 (*.f64 -1 z) b) y) (*.f64 (-.f64 t 2) b))
(fma.f64 -1 (*.f64 y z) (*.f64 (+.f64 y (+.f64 t -2)) b))
(-.f64 (*.f64 (+.f64 t (+.f64 y -2)) b) (*.f64 y z))
(fma.f64 y (-.f64 b z) (*.f64 b (+.f64 t -2)))
(*.f64 (+.f64 (*.f64 -1 z) b) y)
(*.f64 y (fma.f64 -1 z b))
(*.f64 y (-.f64 b z))
(+.f64 (*.f64 (+.f64 (*.f64 -1 z) b) y) (*.f64 b (-.f64 t 2)))
(fma.f64 -1 (*.f64 y z) (*.f64 (+.f64 y (+.f64 t -2)) b))
(-.f64 (*.f64 (+.f64 t (+.f64 y -2)) b) (*.f64 y z))
(fma.f64 y (-.f64 b z) (*.f64 b (+.f64 t -2)))
(+.f64 (*.f64 (+.f64 (*.f64 -1 z) b) y) (*.f64 b (-.f64 t 2)))
(fma.f64 -1 (*.f64 y z) (*.f64 (+.f64 y (+.f64 t -2)) b))
(-.f64 (*.f64 (+.f64 t (+.f64 y -2)) b) (*.f64 y z))
(fma.f64 y (-.f64 b z) (*.f64 b (+.f64 t -2)))
(+.f64 (*.f64 (+.f64 (*.f64 -1 z) b) y) (*.f64 b (-.f64 t 2)))
(fma.f64 -1 (*.f64 y z) (*.f64 (+.f64 y (+.f64 t -2)) b))
(-.f64 (*.f64 (+.f64 t (+.f64 y -2)) b) (*.f64 y z))
(fma.f64 y (-.f64 b z) (*.f64 b (+.f64 t -2)))
(*.f64 -1 (*.f64 y (+.f64 z (*.f64 -1 b))))
(*.f64 y (fma.f64 -1 z b))
(*.f64 y (-.f64 b z))
(+.f64 (*.f64 -1 (*.f64 y (+.f64 z (*.f64 -1 b)))) (*.f64 b (-.f64 t 2)))
(fma.f64 -1 (*.f64 y z) (*.f64 (+.f64 y (+.f64 t -2)) b))
(-.f64 (*.f64 (+.f64 t (+.f64 y -2)) b) (*.f64 y z))
(fma.f64 y (-.f64 b z) (*.f64 b (+.f64 t -2)))
(+.f64 (*.f64 -1 (*.f64 y (+.f64 z (*.f64 -1 b)))) (*.f64 b (-.f64 t 2)))
(fma.f64 -1 (*.f64 y z) (*.f64 (+.f64 y (+.f64 t -2)) b))
(-.f64 (*.f64 (+.f64 t (+.f64 y -2)) b) (*.f64 y z))
(fma.f64 y (-.f64 b z) (*.f64 b (+.f64 t -2)))
(+.f64 (*.f64 -1 (*.f64 y (+.f64 z (*.f64 -1 b)))) (*.f64 b (-.f64 t 2)))
(fma.f64 -1 (*.f64 y z) (*.f64 (+.f64 y (+.f64 t -2)) b))
(-.f64 (*.f64 (+.f64 t (+.f64 y -2)) b) (*.f64 y z))
(fma.f64 y (-.f64 b z) (*.f64 b (+.f64 t -2)))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 y 2) b))
(fma.f64 -1 (*.f64 y z) (*.f64 b (+.f64 y -2)))
(-.f64 (*.f64 b (+.f64 y -2)) (*.f64 y z))
(fma.f64 y (-.f64 b z) (*.f64 b -2))
(+.f64 (*.f64 t b) (+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 y 2) b)))
(fma.f64 -1 (*.f64 y z) (*.f64 (+.f64 y (+.f64 t -2)) b))
(-.f64 (*.f64 (+.f64 t (+.f64 y -2)) b) (*.f64 y z))
(fma.f64 y (-.f64 b z) (*.f64 b (+.f64 t -2)))
(+.f64 (*.f64 t b) (+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 y 2) b)))
(fma.f64 -1 (*.f64 y z) (*.f64 (+.f64 y (+.f64 t -2)) b))
(-.f64 (*.f64 (+.f64 t (+.f64 y -2)) b) (*.f64 y z))
(fma.f64 y (-.f64 b z) (*.f64 b (+.f64 t -2)))
(+.f64 (*.f64 t b) (+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 y 2) b)))
(fma.f64 -1 (*.f64 y z) (*.f64 (+.f64 y (+.f64 t -2)) b))
(-.f64 (*.f64 (+.f64 t (+.f64 y -2)) b) (*.f64 y z))
(fma.f64 y (-.f64 b z) (*.f64 b (+.f64 t -2)))
(*.f64 t b)
(+.f64 (*.f64 t b) (+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 y 2) b)))
(fma.f64 -1 (*.f64 y z) (*.f64 (+.f64 y (+.f64 t -2)) b))
(-.f64 (*.f64 (+.f64 t (+.f64 y -2)) b) (*.f64 y z))
(fma.f64 y (-.f64 b z) (*.f64 b (+.f64 t -2)))
(+.f64 (*.f64 t b) (+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 y 2) b)))
(fma.f64 -1 (*.f64 y z) (*.f64 (+.f64 y (+.f64 t -2)) b))
(-.f64 (*.f64 (+.f64 t (+.f64 y -2)) b) (*.f64 y z))
(fma.f64 y (-.f64 b z) (*.f64 b (+.f64 t -2)))
(+.f64 (*.f64 t b) (+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 y 2) b)))
(fma.f64 -1 (*.f64 y z) (*.f64 (+.f64 y (+.f64 t -2)) b))
(-.f64 (*.f64 (+.f64 t (+.f64 y -2)) b) (*.f64 y z))
(fma.f64 y (-.f64 b z) (*.f64 b (+.f64 t -2)))
(*.f64 t b)
(+.f64 (*.f64 t b) (+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 y 2) b)))
(fma.f64 -1 (*.f64 y z) (*.f64 (+.f64 y (+.f64 t -2)) b))
(-.f64 (*.f64 (+.f64 t (+.f64 y -2)) b) (*.f64 y z))
(fma.f64 y (-.f64 b z) (*.f64 b (+.f64 t -2)))
(+.f64 (*.f64 t b) (+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 y 2) b)))
(fma.f64 -1 (*.f64 y z) (*.f64 (+.f64 y (+.f64 t -2)) b))
(-.f64 (*.f64 (+.f64 t (+.f64 y -2)) b) (*.f64 y z))
(fma.f64 y (-.f64 b z) (*.f64 b (+.f64 t -2)))
(+.f64 (*.f64 t b) (+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 y 2) b)))
(fma.f64 -1 (*.f64 y z) (*.f64 (+.f64 y (+.f64 t -2)) b))
(-.f64 (*.f64 (+.f64 t (+.f64 y -2)) b) (*.f64 y z))
(fma.f64 y (-.f64 b z) (*.f64 b (+.f64 t -2)))
(*.f64 -1 (*.f64 y z))
(neg.f64 (*.f64 y z))
(*.f64 z (neg.f64 y))
(*.f64 y (neg.f64 z))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b))
(fma.f64 -1 (*.f64 y z) (*.f64 (+.f64 y (+.f64 t -2)) b))
(-.f64 (*.f64 (+.f64 t (+.f64 y -2)) b) (*.f64 y z))
(fma.f64 y (-.f64 b z) (*.f64 b (+.f64 t -2)))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b))
(fma.f64 -1 (*.f64 y z) (*.f64 (+.f64 y (+.f64 t -2)) b))
(-.f64 (*.f64 (+.f64 t (+.f64 y -2)) b) (*.f64 y z))
(fma.f64 y (-.f64 b z) (*.f64 b (+.f64 t -2)))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b))
(fma.f64 -1 (*.f64 y z) (*.f64 (+.f64 y (+.f64 t -2)) b))
(-.f64 (*.f64 (+.f64 t (+.f64 y -2)) b) (*.f64 y z))
(fma.f64 y (-.f64 b z) (*.f64 b (+.f64 t -2)))
(*.f64 (-.f64 (+.f64 y t) 2) b)
(*.f64 (+.f64 y (+.f64 t -2)) b)
(*.f64 (+.f64 t (+.f64 y -2)) b)
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b))
(fma.f64 -1 (*.f64 y z) (*.f64 (+.f64 y (+.f64 t -2)) b))
(-.f64 (*.f64 (+.f64 t (+.f64 y -2)) b) (*.f64 y z))
(fma.f64 y (-.f64 b z) (*.f64 b (+.f64 t -2)))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b))
(fma.f64 -1 (*.f64 y z) (*.f64 (+.f64 y (+.f64 t -2)) b))
(-.f64 (*.f64 (+.f64 t (+.f64 y -2)) b) (*.f64 y z))
(fma.f64 y (-.f64 b z) (*.f64 b (+.f64 t -2)))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b))
(fma.f64 -1 (*.f64 y z) (*.f64 (+.f64 y (+.f64 t -2)) b))
(-.f64 (*.f64 (+.f64 t (+.f64 y -2)) b) (*.f64 y z))
(fma.f64 y (-.f64 b z) (*.f64 b (+.f64 t -2)))
(*.f64 (-.f64 (+.f64 y t) 2) b)
(*.f64 (+.f64 y (+.f64 t -2)) b)
(*.f64 (+.f64 t (+.f64 y -2)) b)
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b))
(fma.f64 -1 (*.f64 y z) (*.f64 (+.f64 y (+.f64 t -2)) b))
(-.f64 (*.f64 (+.f64 t (+.f64 y -2)) b) (*.f64 y z))
(fma.f64 y (-.f64 b z) (*.f64 b (+.f64 t -2)))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b))
(fma.f64 -1 (*.f64 y z) (*.f64 (+.f64 y (+.f64 t -2)) b))
(-.f64 (*.f64 (+.f64 t (+.f64 y -2)) b) (*.f64 y z))
(fma.f64 y (-.f64 b z) (*.f64 b (+.f64 t -2)))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b))
(fma.f64 -1 (*.f64 y z) (*.f64 (+.f64 y (+.f64 t -2)) b))
(-.f64 (*.f64 (+.f64 t (+.f64 y -2)) b) (*.f64 y z))
(fma.f64 y (-.f64 b z) (*.f64 b (+.f64 t -2)))

eval250.0ms (0.6%)

Compiler

Compiled 5577 to 3062 computations (45.1% saved)

prune201.0ms (0.5%)

Pruning

22 alts after pruning (19 fresh and 3 done)

PrunedKeptTotal
New31711328
Fresh6814
Picked101
Done235
Total32622348
Error
0b
Counts
348 → 22
Alt Table
Click to see full alt table
StatusErrorProgram
37.0b
(fma.f64 y (-.f64 b z) (*.f64 b (+.f64 t -2)))
26.4b
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 z x))
44.3b
(+.f64 x (*.f64 y b))
19.9b
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
57.5b
(*.f64 a (neg.f64 t))
43.4b
(*.f64 (-.f64 (+.f64 y t) 2) b)
18.1b
(+.f64 a (+.f64 z (+.f64 (*.f64 b (-.f64 t 2)) x)))
46.6b
(-.f64 z (*.f64 z y))
49.5b
(+.f64 a (*.f64 y b))
36.0b
(+.f64 (*.f64 b (-.f64 t 2)) x)
50.8b
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y b))
8.3b
(fma.f64 (+.f64 y (+.f64 t -2)) b (fma.f64 z (-.f64 1 y) (+.f64 (*.f64 t (neg.f64 a)) x)))
51.2b
(*.f64 t (-.f64 b a))
43.2b
(+.f64 x (*.f64 t b))
50.8b
(*.f64 y (-.f64 b z))
49.6b
(-.f64 a (*.f64 t a))
57.3b
(*.f64 y b)
49.7b
x
56.5b
(*.f64 y (neg.f64 z))
56.2b
(*.f64 t b)
47.7b
(+.f64 a (*.f64 -2 b))
49.1b
(*.f64 (-.f64 t 2) b)
Compiler

Compiled 512 to 379 computations (26% saved)

localize55.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(fma.f64 z (-.f64 1 y) (+.f64 (*.f64 t (neg.f64 a)) x))
0.0b
(fma.f64 (+.f64 y (+.f64 t -2)) b (fma.f64 z (-.f64 1 y) (+.f64 (*.f64 t (neg.f64 a)) x)))
Compiler

Compiled 66 to 28 computations (57.6% saved)

series42.0ms (0.1%)

Counts
2 → 132
Calls

33 calls:

TimeVariablePointExpression
21.0ms
t
@inf
(fma.f64 (+.f64 y (+.f64 t -2)) b (fma.f64 z (-.f64 1 y) (+.f64 (*.f64 t (neg.f64 a)) x)))
1.0ms
y
@0
(fma.f64 (+.f64 y (+.f64 t -2)) b (fma.f64 z (-.f64 1 y) (+.f64 (*.f64 t (neg.f64 a)) x)))
1.0ms
a
@0
(fma.f64 (+.f64 y (+.f64 t -2)) b (fma.f64 z (-.f64 1 y) (+.f64 (*.f64 t (neg.f64 a)) x)))
1.0ms
t
@0
(fma.f64 (+.f64 y (+.f64 t -2)) b (fma.f64 z (-.f64 1 y) (+.f64 (*.f64 t (neg.f64 a)) x)))
1.0ms
x
@0
(fma.f64 (+.f64 y (+.f64 t -2)) b (fma.f64 z (-.f64 1 y) (+.f64 (*.f64 t (neg.f64 a)) x)))

rewrite181.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
645×fma-def_binary64
351×fma-neg_binary64
330×expm1-udef_binary64
329×log1p-udef_binary64
261×log-pow_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify164.0ms (0.4%)

Algorithm
egg-herbie
Rules
591×distribute-neg-in_binary64
505×fma-def_binary64
446×distribute-rgt-in_binary64
382×associate-+l-_binary64
335×+-commutative_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0652370
12112204
26082201
319232090
441972090
553652090
675992090
Stop Event
node limit
Counts
187 → 99
Calls
Call 1
Inputs
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 z (+.f64 (*.f64 b (-.f64 t 2)) x)))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 (+.f64 (*.f64 -1 z) b) y) (+.f64 z (+.f64 (*.f64 b (-.f64 t 2)) x))))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 (+.f64 (*.f64 -1 z) b) y) (+.f64 z (+.f64 (*.f64 b (-.f64 t 2)) x))))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 (+.f64 (*.f64 -1 z) b) y) (+.f64 z (+.f64 (*.f64 b (-.f64 t 2)) x))))
(*.f64 (+.f64 (*.f64 -1 z) b) y)
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 z (+.f64 (*.f64 (+.f64 (*.f64 -1 z) b) y) (+.f64 (*.f64 b (-.f64 t 2)) x))))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 z (+.f64 (*.f64 (+.f64 (*.f64 -1 z) b) y) (+.f64 (*.f64 b (-.f64 t 2)) x))))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 z (+.f64 (*.f64 (+.f64 (*.f64 -1 z) b) y) (+.f64 (*.f64 b (-.f64 t 2)) x))))
(*.f64 -1 (*.f64 y (+.f64 z (*.f64 -1 b))))
(+.f64 (*.f64 -1 (*.f64 y (+.f64 z (*.f64 -1 b)))) (+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 z (+.f64 (*.f64 b (-.f64 t 2)) x))))
(+.f64 (*.f64 -1 (*.f64 y (+.f64 z (*.f64 -1 b)))) (+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 z (+.f64 (*.f64 b (-.f64 t 2)) x))))
(+.f64 (*.f64 -1 (*.f64 y (+.f64 z (*.f64 -1 b)))) (+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 z (+.f64 (*.f64 b (-.f64 t 2)) x))))
(+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 y 2) b) x))
(+.f64 (*.f64 t (+.f64 b (*.f64 -1 a))) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 y 2) b) x)))
(+.f64 (*.f64 t (+.f64 b (*.f64 -1 a))) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 y 2) b) x)))
(+.f64 (*.f64 t (+.f64 b (*.f64 -1 a))) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 y 2) b) x)))
(*.f64 t (+.f64 b (*.f64 -1 a)))
(+.f64 (*.f64 t (+.f64 b (*.f64 -1 a))) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 y 2) b) x)))
(+.f64 (*.f64 t (+.f64 b (*.f64 -1 a))) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 y 2) b) x)))
(+.f64 (*.f64 t (+.f64 b (*.f64 -1 a))) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 y 2) b) x)))
(*.f64 -1 (*.f64 (+.f64 a (*.f64 -1 b)) t))
(+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 -1 (*.f64 (+.f64 a (*.f64 -1 b)) t)) (+.f64 (*.f64 (-.f64 y 2) b) x)))
(+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 -1 (*.f64 (+.f64 a (*.f64 -1 b)) t)) (+.f64 (*.f64 (-.f64 y 2) b) x)))
(+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 -1 (*.f64 (+.f64 a (*.f64 -1 b)) t)) (+.f64 (*.f64 (-.f64 y 2) b) x)))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(*.f64 (-.f64 (+.f64 y t) 2) b)
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(*.f64 (-.f64 (+.f64 y t) 2) b)
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(*.f64 z (-.f64 1 y))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(*.f64 z (-.f64 1 y))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(*.f64 -1 (*.f64 a t))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(*.f64 -1 (*.f64 a t))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) (*.f64 (-.f64 (+.f64 y t) 2) b)))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
x
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
x
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(+.f64 (*.f64 -1 (*.f64 a t)) x)
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(*.f64 z (-.f64 1 y))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(*.f64 z (-.f64 1 y))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 z x))
(+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 z x)))
(+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 z x)))
(+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 z x)))
(*.f64 -1 (*.f64 y z))
(+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 z x)))
(+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 z x)))
(+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 z x)))
(*.f64 -1 (*.f64 y z))
(+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 z x)))
(+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 z x)))
(+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 z x)))
(+.f64 (*.f64 z (-.f64 1 y)) x)
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(*.f64 -1 (*.f64 a t))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(*.f64 -1 (*.f64 a t))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(+.f64 (*.f64 z (-.f64 1 y)) x)
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(*.f64 -1 (*.f64 a t))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(*.f64 -1 (*.f64 a t))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(+.f64 (*.f64 -1 (*.f64 a t)) (*.f64 z (-.f64 1 y)))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
x
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
x
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
Outputs
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 z (+.f64 (*.f64 b (-.f64 t 2)) x)))
(fma.f64 -1 (*.f64 a t) (+.f64 z (fma.f64 b (+.f64 t -2) x)))
(+.f64 (fma.f64 b (+.f64 t -2) x) (fma.f64 (neg.f64 a) t z))
(-.f64 (fma.f64 b (+.f64 t -2) (+.f64 z x)) (*.f64 a t))
(+.f64 z (+.f64 (*.f64 b -2) (fma.f64 t (-.f64 b a) x)))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 (+.f64 (*.f64 -1 z) b) y) (+.f64 z (+.f64 (*.f64 b (-.f64 t 2)) x))))
(fma.f64 -1 (*.f64 a t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(+.f64 (fma.f64 (-.f64 b z) y (fma.f64 b (+.f64 t -2) x)) (fma.f64 (neg.f64 a) t z))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 (-.f64 b z) y x)) (-.f64 z (*.f64 a t)))
(fma.f64 t (-.f64 b a) (fma.f64 z (-.f64 1 y) (fma.f64 b (+.f64 y -2) x)))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 (+.f64 (*.f64 -1 z) b) y) (+.f64 z (+.f64 (*.f64 b (-.f64 t 2)) x))))
(fma.f64 -1 (*.f64 a t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(+.f64 (fma.f64 (-.f64 b z) y (fma.f64 b (+.f64 t -2) x)) (fma.f64 (neg.f64 a) t z))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 (-.f64 b z) y x)) (-.f64 z (*.f64 a t)))
(fma.f64 t (-.f64 b a) (fma.f64 z (-.f64 1 y) (fma.f64 b (+.f64 y -2) x)))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 (+.f64 (*.f64 -1 z) b) y) (+.f64 z (+.f64 (*.f64 b (-.f64 t 2)) x))))
(fma.f64 -1 (*.f64 a t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(+.f64 (fma.f64 (-.f64 b z) y (fma.f64 b (+.f64 t -2) x)) (fma.f64 (neg.f64 a) t z))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 (-.f64 b z) y x)) (-.f64 z (*.f64 a t)))
(fma.f64 t (-.f64 b a) (fma.f64 z (-.f64 1 y) (fma.f64 b (+.f64 y -2) x)))
(*.f64 (+.f64 (*.f64 -1 z) b) y)
(*.f64 (fma.f64 -1 z b) y)
(*.f64 (-.f64 b z) y)
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 z (+.f64 (*.f64 (+.f64 (*.f64 -1 z) b) y) (+.f64 (*.f64 b (-.f64 t 2)) x))))
(fma.f64 -1 (*.f64 a t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(+.f64 (fma.f64 (-.f64 b z) y (fma.f64 b (+.f64 t -2) x)) (fma.f64 (neg.f64 a) t z))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 (-.f64 b z) y x)) (-.f64 z (*.f64 a t)))
(fma.f64 t (-.f64 b a) (fma.f64 z (-.f64 1 y) (fma.f64 b (+.f64 y -2) x)))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 z (+.f64 (*.f64 (+.f64 (*.f64 -1 z) b) y) (+.f64 (*.f64 b (-.f64 t 2)) x))))
(fma.f64 -1 (*.f64 a t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(+.f64 (fma.f64 (-.f64 b z) y (fma.f64 b (+.f64 t -2) x)) (fma.f64 (neg.f64 a) t z))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 (-.f64 b z) y x)) (-.f64 z (*.f64 a t)))
(fma.f64 t (-.f64 b a) (fma.f64 z (-.f64 1 y) (fma.f64 b (+.f64 y -2) x)))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 z (+.f64 (*.f64 (+.f64 (*.f64 -1 z) b) y) (+.f64 (*.f64 b (-.f64 t 2)) x))))
(fma.f64 -1 (*.f64 a t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(+.f64 (fma.f64 (-.f64 b z) y (fma.f64 b (+.f64 t -2) x)) (fma.f64 (neg.f64 a) t z))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 (-.f64 b z) y x)) (-.f64 z (*.f64 a t)))
(fma.f64 t (-.f64 b a) (fma.f64 z (-.f64 1 y) (fma.f64 b (+.f64 y -2) x)))
(*.f64 -1 (*.f64 y (+.f64 z (*.f64 -1 b))))
(*.f64 (fma.f64 -1 z b) y)
(*.f64 (-.f64 b z) y)
(+.f64 (*.f64 -1 (*.f64 y (+.f64 z (*.f64 -1 b)))) (+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 z (+.f64 (*.f64 b (-.f64 t 2)) x))))
(fma.f64 -1 (*.f64 a t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(+.f64 (fma.f64 (-.f64 b z) y (fma.f64 b (+.f64 t -2) x)) (fma.f64 (neg.f64 a) t z))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 (-.f64 b z) y x)) (-.f64 z (*.f64 a t)))
(fma.f64 t (-.f64 b a) (fma.f64 z (-.f64 1 y) (fma.f64 b (+.f64 y -2) x)))
(+.f64 (*.f64 -1 (*.f64 y (+.f64 z (*.f64 -1 b)))) (+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 z (+.f64 (*.f64 b (-.f64 t 2)) x))))
(fma.f64 -1 (*.f64 a t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(+.f64 (fma.f64 (-.f64 b z) y (fma.f64 b (+.f64 t -2) x)) (fma.f64 (neg.f64 a) t z))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 (-.f64 b z) y x)) (-.f64 z (*.f64 a t)))
(fma.f64 t (-.f64 b a) (fma.f64 z (-.f64 1 y) (fma.f64 b (+.f64 y -2) x)))
(+.f64 (*.f64 -1 (*.f64 y (+.f64 z (*.f64 -1 b)))) (+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 z (+.f64 (*.f64 b (-.f64 t 2)) x))))
(fma.f64 -1 (*.f64 a t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(+.f64 (fma.f64 (-.f64 b z) y (fma.f64 b (+.f64 t -2) x)) (fma.f64 (neg.f64 a) t z))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 (-.f64 b z) y x)) (-.f64 z (*.f64 a t)))
(fma.f64 t (-.f64 b a) (fma.f64 z (-.f64 1 y) (fma.f64 b (+.f64 y -2) x)))
(+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 y 2) b) x))
(fma.f64 z (-.f64 1 y) (fma.f64 (+.f64 y -2) b x))
(fma.f64 z (-.f64 1 y) (fma.f64 b (+.f64 y -2) x))
(+.f64 (*.f64 t (+.f64 b (*.f64 -1 a))) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 y 2) b) x)))
(fma.f64 -1 (*.f64 a t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(+.f64 (fma.f64 (-.f64 b z) y (fma.f64 b (+.f64 t -2) x)) (fma.f64 (neg.f64 a) t z))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 (-.f64 b z) y x)) (-.f64 z (*.f64 a t)))
(fma.f64 t (-.f64 b a) (fma.f64 z (-.f64 1 y) (fma.f64 b (+.f64 y -2) x)))
(+.f64 (*.f64 t (+.f64 b (*.f64 -1 a))) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 y 2) b) x)))
(fma.f64 -1 (*.f64 a t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(+.f64 (fma.f64 (-.f64 b z) y (fma.f64 b (+.f64 t -2) x)) (fma.f64 (neg.f64 a) t z))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 (-.f64 b z) y x)) (-.f64 z (*.f64 a t)))
(fma.f64 t (-.f64 b a) (fma.f64 z (-.f64 1 y) (fma.f64 b (+.f64 y -2) x)))
(+.f64 (*.f64 t (+.f64 b (*.f64 -1 a))) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 y 2) b) x)))
(fma.f64 -1 (*.f64 a t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(+.f64 (fma.f64 (-.f64 b z) y (fma.f64 b (+.f64 t -2) x)) (fma.f64 (neg.f64 a) t z))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 (-.f64 b z) y x)) (-.f64 z (*.f64 a t)))
(fma.f64 t (-.f64 b a) (fma.f64 z (-.f64 1 y) (fma.f64 b (+.f64 y -2) x)))
(*.f64 t (+.f64 b (*.f64 -1 a)))
(*.f64 t (+.f64 b (neg.f64 a)))
(*.f64 t (-.f64 b a))
(+.f64 (*.f64 t (+.f64 b (*.f64 -1 a))) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 y 2) b) x)))
(fma.f64 -1 (*.f64 a t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(+.f64 (fma.f64 (-.f64 b z) y (fma.f64 b (+.f64 t -2) x)) (fma.f64 (neg.f64 a) t z))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 (-.f64 b z) y x)) (-.f64 z (*.f64 a t)))
(fma.f64 t (-.f64 b a) (fma.f64 z (-.f64 1 y) (fma.f64 b (+.f64 y -2) x)))
(+.f64 (*.f64 t (+.f64 b (*.f64 -1 a))) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 y 2) b) x)))
(fma.f64 -1 (*.f64 a t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(+.f64 (fma.f64 (-.f64 b z) y (fma.f64 b (+.f64 t -2) x)) (fma.f64 (neg.f64 a) t z))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 (-.f64 b z) y x)) (-.f64 z (*.f64 a t)))
(fma.f64 t (-.f64 b a) (fma.f64 z (-.f64 1 y) (fma.f64 b (+.f64 y -2) x)))
(+.f64 (*.f64 t (+.f64 b (*.f64 -1 a))) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 y 2) b) x)))
(fma.f64 -1 (*.f64 a t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(+.f64 (fma.f64 (-.f64 b z) y (fma.f64 b (+.f64 t -2) x)) (fma.f64 (neg.f64 a) t z))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 (-.f64 b z) y x)) (-.f64 z (*.f64 a t)))
(fma.f64 t (-.f64 b a) (fma.f64 z (-.f64 1 y) (fma.f64 b (+.f64 y -2) x)))
(*.f64 -1 (*.f64 (+.f64 a (*.f64 -1 b)) t))
(*.f64 t (+.f64 b (neg.f64 a)))
(*.f64 t (-.f64 b a))
(+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 -1 (*.f64 (+.f64 a (*.f64 -1 b)) t)) (+.f64 (*.f64 (-.f64 y 2) b) x)))
(fma.f64 -1 (*.f64 a t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(+.f64 (fma.f64 (-.f64 b z) y (fma.f64 b (+.f64 t -2) x)) (fma.f64 (neg.f64 a) t z))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 (-.f64 b z) y x)) (-.f64 z (*.f64 a t)))
(fma.f64 t (-.f64 b a) (fma.f64 z (-.f64 1 y) (fma.f64 b (+.f64 y -2) x)))
(+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 -1 (*.f64 (+.f64 a (*.f64 -1 b)) t)) (+.f64 (*.f64 (-.f64 y 2) b) x)))
(fma.f64 -1 (*.f64 a t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(+.f64 (fma.f64 (-.f64 b z) y (fma.f64 b (+.f64 t -2) x)) (fma.f64 (neg.f64 a) t z))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 (-.f64 b z) y x)) (-.f64 z (*.f64 a t)))
(fma.f64 t (-.f64 b a) (fma.f64 z (-.f64 1 y) (fma.f64 b (+.f64 y -2) x)))
(+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 -1 (*.f64 (+.f64 a (*.f64 -1 b)) t)) (+.f64 (*.f64 (-.f64 y 2) b) x)))
(fma.f64 -1 (*.f64 a t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(+.f64 (fma.f64 (-.f64 b z) y (fma.f64 b (+.f64 t -2) x)) (fma.f64 (neg.f64 a) t z))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 (-.f64 b z) y x)) (-.f64 z (*.f64 a t)))
(fma.f64 t (-.f64 b a) (fma.f64 z (-.f64 1 y) (fma.f64 b (+.f64 y -2) x)))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 -1 (*.f64 a t) (fma.f64 z (-.f64 1 y) x))
(-.f64 (fma.f64 z (-.f64 1 y) x) (*.f64 a t))
(fma.f64 z (-.f64 1 y) (fma.f64 a (neg.f64 t) x))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(fma.f64 -1 (*.f64 a t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(+.f64 (fma.f64 (-.f64 b z) y (fma.f64 b (+.f64 t -2) x)) (fma.f64 (neg.f64 a) t z))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 (-.f64 b z) y x)) (-.f64 z (*.f64 a t)))
(fma.f64 t (-.f64 b a) (fma.f64 z (-.f64 1 y) (fma.f64 b (+.f64 y -2) x)))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(fma.f64 -1 (*.f64 a t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(+.f64 (fma.f64 (-.f64 b z) y (fma.f64 b (+.f64 t -2) x)) (fma.f64 (neg.f64 a) t z))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 (-.f64 b z) y x)) (-.f64 z (*.f64 a t)))
(fma.f64 t (-.f64 b a) (fma.f64 z (-.f64 1 y) (fma.f64 b (+.f64 y -2) x)))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(fma.f64 -1 (*.f64 a t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(+.f64 (fma.f64 (-.f64 b z) y (fma.f64 b (+.f64 t -2) x)) (fma.f64 (neg.f64 a) t z))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 (-.f64 b z) y x)) (-.f64 z (*.f64 a t)))
(fma.f64 t (-.f64 b a) (fma.f64 z (-.f64 1 y) (fma.f64 b (+.f64 y -2) x)))
(*.f64 (-.f64 (+.f64 y t) 2) b)
(*.f64 b (+.f64 y (+.f64 t -2)))
(*.f64 b (+.f64 t (+.f64 y -2)))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(fma.f64 -1 (*.f64 a t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(+.f64 (fma.f64 (-.f64 b z) y (fma.f64 b (+.f64 t -2) x)) (fma.f64 (neg.f64 a) t z))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 (-.f64 b z) y x)) (-.f64 z (*.f64 a t)))
(fma.f64 t (-.f64 b a) (fma.f64 z (-.f64 1 y) (fma.f64 b (+.f64 y -2) x)))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(fma.f64 -1 (*.f64 a t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(+.f64 (fma.f64 (-.f64 b z) y (fma.f64 b (+.f64 t -2) x)) (fma.f64 (neg.f64 a) t z))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 (-.f64 b z) y x)) (-.f64 z (*.f64 a t)))
(fma.f64 t (-.f64 b a) (fma.f64 z (-.f64 1 y) (fma.f64 b (+.f64 y -2) x)))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(fma.f64 -1 (*.f64 a t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(+.f64 (fma.f64 (-.f64 b z) y (fma.f64 b (+.f64 t -2) x)) (fma.f64 (neg.f64 a) t z))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 (-.f64 b z) y x)) (-.f64 z (*.f64 a t)))
(fma.f64 t (-.f64 b a) (fma.f64 z (-.f64 1 y) (fma.f64 b (+.f64 y -2) x)))
(*.f64 (-.f64 (+.f64 y t) 2) b)
(*.f64 b (+.f64 y (+.f64 t -2)))
(*.f64 b (+.f64 t (+.f64 y -2)))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(fma.f64 -1 (*.f64 a t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(+.f64 (fma.f64 (-.f64 b z) y (fma.f64 b (+.f64 t -2) x)) (fma.f64 (neg.f64 a) t z))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 (-.f64 b z) y x)) (-.f64 z (*.f64 a t)))
(fma.f64 t (-.f64 b a) (fma.f64 z (-.f64 1 y) (fma.f64 b (+.f64 y -2) x)))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(fma.f64 -1 (*.f64 a t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(+.f64 (fma.f64 (-.f64 b z) y (fma.f64 b (+.f64 t -2) x)) (fma.f64 (neg.f64 a) t z))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 (-.f64 b z) y x)) (-.f64 z (*.f64 a t)))
(fma.f64 t (-.f64 b a) (fma.f64 z (-.f64 1 y) (fma.f64 b (+.f64 y -2) x)))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(fma.f64 -1 (*.f64 a t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(+.f64 (fma.f64 (-.f64 b z) y (fma.f64 b (+.f64 t -2) x)) (fma.f64 (neg.f64 a) t z))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 (-.f64 b z) y x)) (-.f64 z (*.f64 a t)))
(fma.f64 t (-.f64 b a) (fma.f64 z (-.f64 1 y) (fma.f64 b (+.f64 y -2) x)))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x))
(fma.f64 -1 (*.f64 a t) (fma.f64 (+.f64 y (+.f64 t -2)) b x))
(-.f64 (fma.f64 b (+.f64 t (+.f64 y -2)) x) (*.f64 a t))
(fma.f64 b (+.f64 t (+.f64 y -2)) (-.f64 x (*.f64 a t)))
(fma.f64 t (-.f64 b a) (fma.f64 b (+.f64 y -2) x))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(fma.f64 -1 (*.f64 a t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(+.f64 (fma.f64 (-.f64 b z) y (fma.f64 b (+.f64 t -2) x)) (fma.f64 (neg.f64 a) t z))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 (-.f64 b z) y x)) (-.f64 z (*.f64 a t)))
(fma.f64 t (-.f64 b a) (fma.f64 z (-.f64 1 y) (fma.f64 b (+.f64 y -2) x)))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(fma.f64 -1 (*.f64 a t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(+.f64 (fma.f64 (-.f64 b z) y (fma.f64 b (+.f64 t -2) x)) (fma.f64 (neg.f64 a) t z))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 (-.f64 b z) y x)) (-.f64 z (*.f64 a t)))
(fma.f64 t (-.f64 b a) (fma.f64 z (-.f64 1 y) (fma.f64 b (+.f64 y -2) x)))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(fma.f64 -1 (*.f64 a t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(+.f64 (fma.f64 (-.f64 b z) y (fma.f64 b (+.f64 t -2) x)) (fma.f64 (neg.f64 a) t z))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 (-.f64 b z) y x)) (-.f64 z (*.f64 a t)))
(fma.f64 t (-.f64 b a) (fma.f64 z (-.f64 1 y) (fma.f64 b (+.f64 y -2) x)))
(*.f64 z (-.f64 1 y))
(-.f64 z (*.f64 z y))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(fma.f64 -1 (*.f64 a t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(+.f64 (fma.f64 (-.f64 b z) y (fma.f64 b (+.f64 t -2) x)) (fma.f64 (neg.f64 a) t z))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 (-.f64 b z) y x)) (-.f64 z (*.f64 a t)))
(fma.f64 t (-.f64 b a) (fma.f64 z (-.f64 1 y) (fma.f64 b (+.f64 y -2) x)))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(fma.f64 -1 (*.f64 a t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(+.f64 (fma.f64 (-.f64 b z) y (fma.f64 b (+.f64 t -2) x)) (fma.f64 (neg.f64 a) t z))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 (-.f64 b z) y x)) (-.f64 z (*.f64 a t)))
(fma.f64 t (-.f64 b a) (fma.f64 z (-.f64 1 y) (fma.f64 b (+.f64 y -2) x)))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(fma.f64 -1 (*.f64 a t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(+.f64 (fma.f64 (-.f64 b z) y (fma.f64 b (+.f64 t -2) x)) (fma.f64 (neg.f64 a) t z))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 (-.f64 b z) y x)) (-.f64 z (*.f64 a t)))
(fma.f64 t (-.f64 b a) (fma.f64 z (-.f64 1 y) (fma.f64 b (+.f64 y -2) x)))
(*.f64 z (-.f64 1 y))
(-.f64 z (*.f64 z y))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(fma.f64 -1 (*.f64 a t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(+.f64 (fma.f64 (-.f64 b z) y (fma.f64 b (+.f64 t -2) x)) (fma.f64 (neg.f64 a) t z))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 (-.f64 b z) y x)) (-.f64 z (*.f64 a t)))
(fma.f64 t (-.f64 b a) (fma.f64 z (-.f64 1 y) (fma.f64 b (+.f64 y -2) x)))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(fma.f64 -1 (*.f64 a t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(+.f64 (fma.f64 (-.f64 b z) y (fma.f64 b (+.f64 t -2) x)) (fma.f64 (neg.f64 a) t z))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 (-.f64 b z) y x)) (-.f64 z (*.f64 a t)))
(fma.f64 t (-.f64 b a) (fma.f64 z (-.f64 1 y) (fma.f64 b (+.f64 y -2) x)))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(fma.f64 -1 (*.f64 a t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(+.f64 (fma.f64 (-.f64 b z) y (fma.f64 b (+.f64 t -2) x)) (fma.f64 (neg.f64 a) t z))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 (-.f64 b z) y x)) (-.f64 z (*.f64 a t)))
(fma.f64 t (-.f64 b a) (fma.f64 z (-.f64 1 y) (fma.f64 b (+.f64 y -2) x)))
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 z (-.f64 1 y) (fma.f64 (+.f64 y (+.f64 t -2)) b x))
(fma.f64 z (-.f64 1 y) (fma.f64 b (+.f64 t (+.f64 y -2)) x))
(+.f64 z (fma.f64 b (+.f64 t -2) (fma.f64 (-.f64 b z) y x)))
(fma.f64 b (+.f64 t (+.f64 y -2)) (fma.f64 z (-.f64 1 y) x))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(fma.f64 -1 (*.f64 a t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(+.f64 (fma.f64 (-.f64 b z) y (fma.f64 b (+.f64 t -2) x)) (fma.f64 (neg.f64 a) t z))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 (-.f64 b z) y x)) (-.f64 z (*.f64 a t)))
(fma.f64 t (-.f64 b a) (fma.f64 z (-.f64 1 y) (fma.f64 b (+.f64 y -2) x)))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(fma.f64 -1 (*.f64 a t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(+.f64 (fma.f64 (-.f64 b z) y (fma.f64 b (+.f64 t -2) x)) (fma.f64 (neg.f64 a) t z))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 (-.f64 b z) y x)) (-.f64 z (*.f64 a t)))
(fma.f64 t (-.f64 b a) (fma.f64 z (-.f64 1 y) (fma.f64 b (+.f64 y -2) x)))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(fma.f64 -1 (*.f64 a t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(+.f64 (fma.f64 (-.f64 b z) y (fma.f64 b (+.f64 t -2) x)) (fma.f64 (neg.f64 a) t z))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 (-.f64 b z) y x)) (-.f64 z (*.f64 a t)))
(fma.f64 t (-.f64 b a) (fma.f64 z (-.f64 1 y) (fma.f64 b (+.f64 y -2) x)))
(*.f64 -1 (*.f64 a t))
(neg.f64 (*.f64 a t))
(*.f64 a (neg.f64 t))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(fma.f64 -1 (*.f64 a t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(+.f64 (fma.f64 (-.f64 b z) y (fma.f64 b (+.f64 t -2) x)) (fma.f64 (neg.f64 a) t z))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 (-.f64 b z) y x)) (-.f64 z (*.f64 a t)))
(fma.f64 t (-.f64 b a) (fma.f64 z (-.f64 1 y) (fma.f64 b (+.f64 y -2) x)))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(fma.f64 -1 (*.f64 a t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(+.f64 (fma.f64 (-.f64 b z) y (fma.f64 b (+.f64 t -2) x)) (fma.f64 (neg.f64 a) t z))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 (-.f64 b z) y x)) (-.f64 z (*.f64 a t)))
(fma.f64 t (-.f64 b a) (fma.f64 z (-.f64 1 y) (fma.f64 b (+.f64 y -2) x)))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(fma.f64 -1 (*.f64 a t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(+.f64 (fma.f64 (-.f64 b z) y (fma.f64 b (+.f64 t -2) x)) (fma.f64 (neg.f64 a) t z))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 (-.f64 b z) y x)) (-.f64 z (*.f64 a t)))
(fma.f64 t (-.f64 b a) (fma.f64 z (-.f64 1 y) (fma.f64 b (+.f64 y -2) x)))
(*.f64 -1 (*.f64 a t))
(neg.f64 (*.f64 a t))
(*.f64 a (neg.f64 t))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(fma.f64 -1 (*.f64 a t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(+.f64 (fma.f64 (-.f64 b z) y (fma.f64 b (+.f64 t -2) x)) (fma.f64 (neg.f64 a) t z))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 (-.f64 b z) y x)) (-.f64 z (*.f64 a t)))
(fma.f64 t (-.f64 b a) (fma.f64 z (-.f64 1 y) (fma.f64 b (+.f64 y -2) x)))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(fma.f64 -1 (*.f64 a t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(+.f64 (fma.f64 (-.f64 b z) y (fma.f64 b (+.f64 t -2) x)) (fma.f64 (neg.f64 a) t z))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 (-.f64 b z) y x)) (-.f64 z (*.f64 a t)))
(fma.f64 t (-.f64 b a) (fma.f64 z (-.f64 1 y) (fma.f64 b (+.f64 y -2) x)))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)))
(fma.f64 -1 (*.f64 a t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(+.f64 (fma.f64 (-.f64 b z) y (fma.f64 b (+.f64 t -2) x)) (fma.f64 (neg.f64 a) t z))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 (-.f64 b z) y x)) (-.f64 z (*.f64 a t)))
(fma.f64 t (-.f64 b a) (fma.f64 z (-.f64 1 y) (fma.f64 b (+.f64 y -2) x)))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) (*.f64 (-.f64 (+.f64 y t) 2) b)))
(fma.f64 -1 (*.f64 a t) (fma.f64 z (-.f64 1 y) (*.f64 b (+.f64 y (+.f64 t -2)))))
(-.f64 (fma.f64 z (-.f64 1 y) (*.f64 b (+.f64 t (+.f64 y -2)))) (*.f64 a t))
(-.f64 (fma.f64 (-.f64 b z) y (fma.f64 b (+.f64 t -2) z)) (*.f64 a t))
(fma.f64 t (-.f64 b a) (+.f64 (fma.f64 (-.f64 b z) y z) (*.f64 b -2)))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(fma.f64 -1 (*.f64 a t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(+.f64 (fma.f64 (-.f64 b z) y (fma.f64 b (+.f64 t -2) x)) (fma.f64 (neg.f64 a) t z))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 (-.f64 b z) y x)) (-.f64 z (*.f64 a t)))
(fma.f64 t (-.f64 b a) (fma.f64 z (-.f64 1 y) (fma.f64 b (+.f64 y -2) x)))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(fma.f64 -1 (*.f64 a t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(+.f64 (fma.f64 (-.f64 b z) y (fma.f64 b (+.f64 t -2) x)) (fma.f64 (neg.f64 a) t z))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 (-.f64 b z) y x)) (-.f64 z (*.f64 a t)))
(fma.f64 t (-.f64 b a) (fma.f64 z (-.f64 1 y) (fma.f64 b (+.f64 y -2) x)))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(fma.f64 -1 (*.f64 a t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(+.f64 (fma.f64 (-.f64 b z) y (fma.f64 b (+.f64 t -2) x)) (fma.f64 (neg.f64 a) t z))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 (-.f64 b z) y x)) (-.f64 z (*.f64 a t)))
(fma.f64 t (-.f64 b a) (fma.f64 z (-.f64 1 y) (fma.f64 b (+.f64 y -2) x)))
x
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(fma.f64 -1 (*.f64 a t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(+.f64 (fma.f64 (-.f64 b z) y (fma.f64 b (+.f64 t -2) x)) (fma.f64 (neg.f64 a) t z))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 (-.f64 b z) y x)) (-.f64 z (*.f64 a t)))
(fma.f64 t (-.f64 b a) (fma.f64 z (-.f64 1 y) (fma.f64 b (+.f64 y -2) x)))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(fma.f64 -1 (*.f64 a t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(+.f64 (fma.f64 (-.f64 b z) y (fma.f64 b (+.f64 t -2) x)) (fma.f64 (neg.f64 a) t z))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 (-.f64 b z) y x)) (-.f64 z (*.f64 a t)))
(fma.f64 t (-.f64 b a) (fma.f64 z (-.f64 1 y) (fma.f64 b (+.f64 y -2) x)))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(fma.f64 -1 (*.f64 a t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(+.f64 (fma.f64 (-.f64 b z) y (fma.f64 b (+.f64 t -2) x)) (fma.f64 (neg.f64 a) t z))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 (-.f64 b z) y x)) (-.f64 z (*.f64 a t)))
(fma.f64 t (-.f64 b a) (fma.f64 z (-.f64 1 y) (fma.f64 b (+.f64 y -2) x)))
x
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(fma.f64 -1 (*.f64 a t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(+.f64 (fma.f64 (-.f64 b z) y (fma.f64 b (+.f64 t -2) x)) (fma.f64 (neg.f64 a) t z))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 (-.f64 b z) y x)) (-.f64 z (*.f64 a t)))
(fma.f64 t (-.f64 b a) (fma.f64 z (-.f64 1 y) (fma.f64 b (+.f64 y -2) x)))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(fma.f64 -1 (*.f64 a t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(+.f64 (fma.f64 (-.f64 b z) y (fma.f64 b (+.f64 t -2) x)) (fma.f64 (neg.f64 a) t z))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 (-.f64 b z) y x)) (-.f64 z (*.f64 a t)))
(fma.f64 t (-.f64 b a) (fma.f64 z (-.f64 1 y) (fma.f64 b (+.f64 y -2) x)))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 (*.f64 z (-.f64 1 y)) x)))
(fma.f64 -1 (*.f64 a t) (fma.f64 (fma.f64 -1 z b) y (+.f64 z (fma.f64 b (+.f64 t -2) x))))
(+.f64 (fma.f64 (-.f64 b z) y (fma.f64 b (+.f64 t -2) x)) (fma.f64 (neg.f64 a) t z))
(+.f64 (fma.f64 b (+.f64 t -2) (fma.f64 (-.f64 b z) y x)) (-.f64 z (*.f64 a t)))
(fma.f64 t (-.f64 b a) (fma.f64 z (-.f64 1 y) (fma.f64 b (+.f64 y -2) x)))
(+.f64 (*.f64 -1 (*.f64 a t)) x)
(fma.f64 -1 (*.f64 a t) x)
(-.f64 x (*.f64 a t))
(fma.f64 a (neg.f64 t) x)
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 -1 (*.f64 a t) (fma.f64 z (-.f64 1 y) x))
(-.f64 (fma.f64 z (-.f64 1 y) x) (*.f64 a t))
(fma.f64 z (-.f64 1 y) (fma.f64 a (neg.f64 t) x))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 -1 (*.f64 a t) (fma.f64 z (-.f64 1 y) x))
(-.f64 (fma.f64 z (-.f64 1 y) x) (*.f64 a t))
(fma.f64 z (-.f64 1 y) (fma.f64 a (neg.f64 t) x))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 -1 (*.f64 a t) (fma.f64 z (-.f64 1 y) x))
(-.f64 (fma.f64 z (-.f64 1 y) x) (*.f64 a t))
(fma.f64 z (-.f64 1 y) (fma.f64 a (neg.f64 t) x))
(*.f64 z (-.f64 1 y))
(-.f64 z (*.f64 z y))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 -1 (*.f64 a t) (fma.f64 z (-.f64 1 y) x))
(-.f64 (fma.f64 z (-.f64 1 y) x) (*.f64 a t))
(fma.f64 z (-.f64 1 y) (fma.f64 a (neg.f64 t) x))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 -1 (*.f64 a t) (fma.f64 z (-.f64 1 y) x))
(-.f64 (fma.f64 z (-.f64 1 y) x) (*.f64 a t))
(fma.f64 z (-.f64 1 y) (fma.f64 a (neg.f64 t) x))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 -1 (*.f64 a t) (fma.f64 z (-.f64 1 y) x))
(-.f64 (fma.f64 z (-.f64 1 y) x) (*.f64 a t))
(fma.f64 z (-.f64 1 y) (fma.f64 a (neg.f64 t) x))
(*.f64 z (-.f64 1 y))
(-.f64 z (*.f64 z y))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 -1 (*.f64 a t) (fma.f64 z (-.f64 1 y) x))
(-.f64 (fma.f64 z (-.f64 1 y) x) (*.f64 a t))
(fma.f64 z (-.f64 1 y) (fma.f64 a (neg.f64 t) x))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 -1 (*.f64 a t) (fma.f64 z (-.f64 1 y) x))
(-.f64 (fma.f64 z (-.f64 1 y) x) (*.f64 a t))
(fma.f64 z (-.f64 1 y) (fma.f64 a (neg.f64 t) x))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 -1 (*.f64 a t) (fma.f64 z (-.f64 1 y) x))
(-.f64 (fma.f64 z (-.f64 1 y) x) (*.f64 a t))
(fma.f64 z (-.f64 1 y) (fma.f64 a (neg.f64 t) x))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 z x))
(fma.f64 -1 (*.f64 a t) (+.f64 z x))
(+.f64 z (-.f64 x (*.f64 a t)))
(+.f64 x (-.f64 z (*.f64 a t)))
(+.f64 z (fma.f64 a (neg.f64 t) x))
(-.f64 (+.f64 z x) (*.f64 a t))
(+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 z x)))
(fma.f64 -1 (*.f64 a t) (fma.f64 z (-.f64 1 y) x))
(-.f64 (fma.f64 z (-.f64 1 y) x) (*.f64 a t))
(fma.f64 z (-.f64 1 y) (fma.f64 a (neg.f64 t) x))
(+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 z x)))
(fma.f64 -1 (*.f64 a t) (fma.f64 z (-.f64 1 y) x))
(-.f64 (fma.f64 z (-.f64 1 y) x) (*.f64 a t))
(fma.f64 z (-.f64 1 y) (fma.f64 a (neg.f64 t) x))
(+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 z x)))
(fma.f64 -1 (*.f64 a t) (fma.f64 z (-.f64 1 y) x))
(-.f64 (fma.f64 z (-.f64 1 y) x) (*.f64 a t))
(fma.f64 z (-.f64 1 y) (fma.f64 a (neg.f64 t) x))
(*.f64 -1 (*.f64 y z))
(neg.f64 (*.f64 z y))
(*.f64 (neg.f64 z) y)
(*.f64 z (neg.f64 y))
(+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 z x)))
(fma.f64 -1 (*.f64 a t) (fma.f64 z (-.f64 1 y) x))
(-.f64 (fma.f64 z (-.f64 1 y) x) (*.f64 a t))
(fma.f64 z (-.f64 1 y) (fma.f64 a (neg.f64 t) x))
(+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 z x)))
(fma.f64 -1 (*.f64 a t) (fma.f64 z (-.f64 1 y) x))
(-.f64 (fma.f64 z (-.f64 1 y) x) (*.f64 a t))
(fma.f64 z (-.f64 1 y) (fma.f64 a (neg.f64 t) x))
(+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 z x)))
(fma.f64 -1 (*.f64 a t) (fma.f64 z (-.f64 1 y) x))
(-.f64 (fma.f64 z (-.f64 1 y) x) (*.f64 a t))
(fma.f64 z (-.f64 1 y) (fma.f64 a (neg.f64 t) x))
(*.f64 -1 (*.f64 y z))
(neg.f64 (*.f64 z y))
(*.f64 (neg.f64 z) y)
(*.f64 z (neg.f64 y))
(+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 z x)))
(fma.f64 -1 (*.f64 a t) (fma.f64 z (-.f64 1 y) x))
(-.f64 (fma.f64 z (-.f64 1 y) x) (*.f64 a t))
(fma.f64 z (-.f64 1 y) (fma.f64 a (neg.f64 t) x))
(+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 z x)))
(fma.f64 -1 (*.f64 a t) (fma.f64 z (-.f64 1 y) x))
(-.f64 (fma.f64 z (-.f64 1 y) x) (*.f64 a t))
(fma.f64 z (-.f64 1 y) (fma.f64 a (neg.f64 t) x))
(+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 z x)))
(fma.f64 -1 (*.f64 a t) (fma.f64 z (-.f64 1 y) x))
(-.f64 (fma.f64 z (-.f64 1 y) x) (*.f64 a t))
(fma.f64 z (-.f64 1 y) (fma.f64 a (neg.f64 t) x))
(+.f64 (*.f64 z (-.f64 1 y)) x)
(fma.f64 z (-.f64 1 y) x)
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 -1 (*.f64 a t) (fma.f64 z (-.f64 1 y) x))
(-.f64 (fma.f64 z (-.f64 1 y) x) (*.f64 a t))
(fma.f64 z (-.f64 1 y) (fma.f64 a (neg.f64 t) x))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 -1 (*.f64 a t) (fma.f64 z (-.f64 1 y) x))
(-.f64 (fma.f64 z (-.f64 1 y) x) (*.f64 a t))
(fma.f64 z (-.f64 1 y) (fma.f64 a (neg.f64 t) x))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 -1 (*.f64 a t) (fma.f64 z (-.f64 1 y) x))
(-.f64 (fma.f64 z (-.f64 1 y) x) (*.f64 a t))
(fma.f64 z (-.f64 1 y) (fma.f64 a (neg.f64 t) x))
(*.f64 -1 (*.f64 a t))
(neg.f64 (*.f64 a t))
(*.f64 a (neg.f64 t))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 -1 (*.f64 a t) (fma.f64 z (-.f64 1 y) x))
(-.f64 (fma.f64 z (-.f64 1 y) x) (*.f64 a t))
(fma.f64 z (-.f64 1 y) (fma.f64 a (neg.f64 t) x))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 -1 (*.f64 a t) (fma.f64 z (-.f64 1 y) x))
(-.f64 (fma.f64 z (-.f64 1 y) x) (*.f64 a t))
(fma.f64 z (-.f64 1 y) (fma.f64 a (neg.f64 t) x))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 -1 (*.f64 a t) (fma.f64 z (-.f64 1 y) x))
(-.f64 (fma.f64 z (-.f64 1 y) x) (*.f64 a t))
(fma.f64 z (-.f64 1 y) (fma.f64 a (neg.f64 t) x))
(*.f64 -1 (*.f64 a t))
(neg.f64 (*.f64 a t))
(*.f64 a (neg.f64 t))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 -1 (*.f64 a t) (fma.f64 z (-.f64 1 y) x))
(-.f64 (fma.f64 z (-.f64 1 y) x) (*.f64 a t))
(fma.f64 z (-.f64 1 y) (fma.f64 a (neg.f64 t) x))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 -1 (*.f64 a t) (fma.f64 z (-.f64 1 y) x))
(-.f64 (fma.f64 z (-.f64 1 y) x) (*.f64 a t))
(fma.f64 z (-.f64 1 y) (fma.f64 a (neg.f64 t) x))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 -1 (*.f64 a t) (fma.f64 z (-.f64 1 y) x))
(-.f64 (fma.f64 z (-.f64 1 y) x) (*.f64 a t))
(fma.f64 z (-.f64 1 y) (fma.f64 a (neg.f64 t) x))
(+.f64 (*.f64 z (-.f64 1 y)) x)
(fma.f64 z (-.f64 1 y) x)
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 -1 (*.f64 a t) (fma.f64 z (-.f64 1 y) x))
(-.f64 (fma.f64 z (-.f64 1 y) x) (*.f64 a t))
(fma.f64 z (-.f64 1 y) (fma.f64 a (neg.f64 t) x))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 -1 (*.f64 a t) (fma.f64 z (-.f64 1 y) x))
(-.f64 (fma.f64 z (-.f64 1 y) x) (*.f64 a t))
(fma.f64 z (-.f64 1 y) (fma.f64 a (neg.f64 t) x))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 -1 (*.f64 a t) (fma.f64 z (-.f64 1 y) x))
(-.f64 (fma.f64 z (-.f64 1 y) x) (*.f64 a t))
(fma.f64 z (-.f64 1 y) (fma.f64 a (neg.f64 t) x))
(*.f64 -1 (*.f64 a t))
(neg.f64 (*.f64 a t))
(*.f64 a (neg.f64 t))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 -1 (*.f64 a t) (fma.f64 z (-.f64 1 y) x))
(-.f64 (fma.f64 z (-.f64 1 y) x) (*.f64 a t))
(fma.f64 z (-.f64 1 y) (fma.f64 a (neg.f64 t) x))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 -1 (*.f64 a t) (fma.f64 z (-.f64 1 y) x))
(-.f64 (fma.f64 z (-.f64 1 y) x) (*.f64 a t))
(fma.f64 z (-.f64 1 y) (fma.f64 a (neg.f64 t) x))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 -1 (*.f64 a t) (fma.f64 z (-.f64 1 y) x))
(-.f64 (fma.f64 z (-.f64 1 y) x) (*.f64 a t))
(fma.f64 z (-.f64 1 y) (fma.f64 a (neg.f64 t) x))
(*.f64 -1 (*.f64 a t))
(neg.f64 (*.f64 a t))
(*.f64 a (neg.f64 t))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 -1 (*.f64 a t) (fma.f64 z (-.f64 1 y) x))
(-.f64 (fma.f64 z (-.f64 1 y) x) (*.f64 a t))
(fma.f64 z (-.f64 1 y) (fma.f64 a (neg.f64 t) x))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 -1 (*.f64 a t) (fma.f64 z (-.f64 1 y) x))
(-.f64 (fma.f64 z (-.f64 1 y) x) (*.f64 a t))
(fma.f64 z (-.f64 1 y) (fma.f64 a (neg.f64 t) x))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 -1 (*.f64 a t) (fma.f64 z (-.f64 1 y) x))
(-.f64 (fma.f64 z (-.f64 1 y) x) (*.f64 a t))
(fma.f64 z (-.f64 1 y) (fma.f64 a (neg.f64 t) x))
(+.f64 (*.f64 -1 (*.f64 a t)) (*.f64 z (-.f64 1 y)))
(fma.f64 -1 (*.f64 a t) (*.f64 z (-.f64 1 y)))
(-.f64 (*.f64 z (-.f64 1 y)) (*.f64 a t))
(fma.f64 -1 (fma.f64 z y (*.f64 a t)) z)
(-.f64 z (fma.f64 z y (*.f64 a t)))
(-.f64 z (fma.f64 a t (*.f64 z y)))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 -1 (*.f64 a t) (fma.f64 z (-.f64 1 y) x))
(-.f64 (fma.f64 z (-.f64 1 y) x) (*.f64 a t))
(fma.f64 z (-.f64 1 y) (fma.f64 a (neg.f64 t) x))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 -1 (*.f64 a t) (fma.f64 z (-.f64 1 y) x))
(-.f64 (fma.f64 z (-.f64 1 y) x) (*.f64 a t))
(fma.f64 z (-.f64 1 y) (fma.f64 a (neg.f64 t) x))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 -1 (*.f64 a t) (fma.f64 z (-.f64 1 y) x))
(-.f64 (fma.f64 z (-.f64 1 y) x) (*.f64 a t))
(fma.f64 z (-.f64 1 y) (fma.f64 a (neg.f64 t) x))
x
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 -1 (*.f64 a t) (fma.f64 z (-.f64 1 y) x))
(-.f64 (fma.f64 z (-.f64 1 y) x) (*.f64 a t))
(fma.f64 z (-.f64 1 y) (fma.f64 a (neg.f64 t) x))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 -1 (*.f64 a t) (fma.f64 z (-.f64 1 y) x))
(-.f64 (fma.f64 z (-.f64 1 y) x) (*.f64 a t))
(fma.f64 z (-.f64 1 y) (fma.f64 a (neg.f64 t) x))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 -1 (*.f64 a t) (fma.f64 z (-.f64 1 y) x))
(-.f64 (fma.f64 z (-.f64 1 y) x) (*.f64 a t))
(fma.f64 z (-.f64 1 y) (fma.f64 a (neg.f64 t) x))
x
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 -1 (*.f64 a t) (fma.f64 z (-.f64 1 y) x))
(-.f64 (fma.f64 z (-.f64 1 y) x) (*.f64 a t))
(fma.f64 z (-.f64 1 y) (fma.f64 a (neg.f64 t) x))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 -1 (*.f64 a t) (fma.f64 z (-.f64 1 y) x))
(-.f64 (fma.f64 z (-.f64 1 y) x) (*.f64 a t))
(fma.f64 z (-.f64 1 y) (fma.f64 a (neg.f64 t) x))
(+.f64 (*.f64 -1 (*.f64 a t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(fma.f64 -1 (*.f64 a t) (fma.f64 z (-.f64 1 y) x))
(-.f64 (fma.f64 z (-.f64 1 y) x) (*.f64 a t))
(fma.f64 z (-.f64 1 y) (fma.f64 a (neg.f64 t) x))

localize5.0ms (0%)

Compiler

Compiled 11 to 7 computations (36.4% saved)

localize7.0ms (0%)

Compiler

Compiled 17 to 12 computations (29.4% saved)

localize6.0ms (0%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(-.f64 a (*.f64 t a))
Compiler

Compiled 16 to 8 computations (50% saved)

series2.0ms (0%)

Counts
1 → 24
Calls

6 calls:

TimeVariablePointExpression
1.0ms
a
@0
(-.f64 a (*.f64 t a))
0.0ms
a
@inf
(-.f64 a (*.f64 t a))
0.0ms
a
@-inf
(-.f64 a (*.f64 t a))
0.0ms
t
@inf
(-.f64 a (*.f64 t a))
0.0ms
t
@-inf
(-.f64 a (*.f64 t a))

rewrite93.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
651×pow1_binary64
606×add-log-exp_binary64
606×log1p-expm1-u_binary64
606×expm1-log1p-u_binary64
593×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify49.0ms (0.1%)

Algorithm
egg-herbie
Rules
122×fma-def_binary64
71×fma-neg_binary64
19×cancel-sign-sub-inv_binary64
18×associate-*r*_binary64
18×sub-neg_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
013160
134160
250160
387160
4121160
5200160
6339160
7417160
8485160
9491160
Stop Event
saturated
Counts
64 → 46
Calls
Call 1
Inputs
(*.f64 a (-.f64 1 t))
(*.f64 a (-.f64 1 t))
(*.f64 a (-.f64 1 t))
(*.f64 a (-.f64 1 t))
(*.f64 a (-.f64 1 t))
(*.f64 a (-.f64 1 t))
(*.f64 a (-.f64 1 t))
(*.f64 a (-.f64 1 t))
(*.f64 a (+.f64 (*.f64 -1 t) 1))
(*.f64 a (+.f64 (*.f64 -1 t) 1))
(*.f64 a (+.f64 (*.f64 -1 t) 1))
(*.f64 a (+.f64 (*.f64 -1 t) 1))
a
(+.f64 a (*.f64 -1 (*.f64 a t)))
(+.f64 a (*.f64 -1 (*.f64 a t)))
(+.f64 a (*.f64 -1 (*.f64 a t)))
(*.f64 -1 (*.f64 a t))
(+.f64 a (*.f64 -1 (*.f64 a t)))
(+.f64 a (*.f64 -1 (*.f64 a t)))
(+.f64 a (*.f64 -1 (*.f64 a t)))
(*.f64 -1 (*.f64 a t))
(+.f64 a (*.f64 -1 (*.f64 a t)))
(+.f64 a (*.f64 -1 (*.f64 a t)))
(+.f64 a (*.f64 -1 (*.f64 a t)))
Outputs
(*.f64 a (-.f64 1 t))
(-.f64 a (*.f64 a t))
(*.f64 a (-.f64 1 t))
(-.f64 a (*.f64 a t))
(*.f64 a (-.f64 1 t))
(-.f64 a (*.f64 a t))
(*.f64 a (-.f64 1 t))
(-.f64 a (*.f64 a t))
(*.f64 a (-.f64 1 t))
(-.f64 a (*.f64 a t))
(*.f64 a (-.f64 1 t))
(-.f64 a (*.f64 a t))
(*.f64 a (-.f64 1 t))
(-.f64 a (*.f64 a t))
(*.f64 a (-.f64 1 t))
(-.f64 a (*.f64 a t))
(*.f64 a (+.f64 (*.f64 -1 t) 1))
(*.f64 a (-.f64 1 t))
(-.f64 a (*.f64 a t))
(*.f64 a (+.f64 (*.f64 -1 t) 1))
(*.f64 a (-.f64 1 t))
(-.f64 a (*.f64 a t))
(*.f64 a (+.f64 (*.f64 -1 t) 1))
(*.f64 a (-.f64 1 t))
(-.f64 a (*.f64 a t))
(*.f64 a (+.f64 (*.f64 -1 t) 1))
(*.f64 a (-.f64 1 t))
(-.f64 a (*.f64 a t))
a
(+.f64 a (*.f64 -1 (*.f64 a t)))
(*.f64 a (-.f64 1 t))
(-.f64 a (*.f64 a t))
(+.f64 a (*.f64 -1 (*.f64 a t)))
(*.f64 a (-.f64 1 t))
(-.f64 a (*.f64 a t))
(+.f64 a (*.f64 -1 (*.f64 a t)))
(*.f64 a (-.f64 1 t))
(-.f64 a (*.f64 a t))
(*.f64 -1 (*.f64 a t))
(neg.f64 (*.f64 a t))
(*.f64 a (neg.f64 t))
(+.f64 a (*.f64 -1 (*.f64 a t)))
(*.f64 a (-.f64 1 t))
(-.f64 a (*.f64 a t))
(+.f64 a (*.f64 -1 (*.f64 a t)))
(*.f64 a (-.f64 1 t))
(-.f64 a (*.f64 a t))
(+.f64 a (*.f64 -1 (*.f64 a t)))
(*.f64 a (-.f64 1 t))
(-.f64 a (*.f64 a t))
(*.f64 -1 (*.f64 a t))
(neg.f64 (*.f64 a t))
(*.f64 a (neg.f64 t))
(+.f64 a (*.f64 -1 (*.f64 a t)))
(*.f64 a (-.f64 1 t))
(-.f64 a (*.f64 a t))
(+.f64 a (*.f64 -1 (*.f64 a t)))
(*.f64 a (-.f64 1 t))
(-.f64 a (*.f64 a t))
(+.f64 a (*.f64 -1 (*.f64 a t)))
(*.f64 a (-.f64 1 t))
(-.f64 a (*.f64 a t))

localize10.0ms (0%)

Local error

Found 1 expressions with local error:

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

Compiled 26 to 10 computations (61.5% saved)

series14.0ms (0%)

Counts
1 → 36
Calls

9 calls:

TimeVariablePointExpression
10.0ms
y
@-inf
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y b))
1.0ms
y
@0
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y b))
1.0ms
y
@inf
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y b))
0.0ms
z
@0
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y b))
0.0ms
b
@-inf
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y b))

rewrite52.0ms (0.1%)

Algorithm
batch-egg-rewrite
Rules
815×pow1_binary64
754×add-log-exp_binary64
753×log1p-expm1-u_binary64
753×expm1-log1p-u_binary64
737×add-exp-log_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify70.0ms (0.2%)

Algorithm
egg-herbie
Rules
160×fma-def_binary64
110×fma-neg_binary64
31×unsub-neg_binary64
30×cancel-sign-sub-inv_binary64
25×associate-*r*_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
016330
141240
296240
3186240
4324240
5505240
6620240
7661240
Stop Event
saturated
Counts
82 → 53
Calls
Call 1
Inputs
(*.f64 y b)
(+.f64 (*.f64 y b) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y b) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y b) (*.f64 -1 (*.f64 y z)))
(*.f64 -1 (*.f64 y z))
(+.f64 (*.f64 y b) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y b) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y b) (*.f64 -1 (*.f64 y z)))
(*.f64 -1 (*.f64 y z))
(+.f64 (*.f64 y b) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y b) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y b) (*.f64 -1 (*.f64 y z)))
(*.f64 (+.f64 (*.f64 -1 z) b) y)
(*.f64 (+.f64 (*.f64 -1 z) b) y)
(*.f64 (+.f64 (*.f64 -1 z) b) y)
(*.f64 (+.f64 (*.f64 -1 z) b) y)
(*.f64 (+.f64 (*.f64 -1 z) b) y)
(*.f64 (+.f64 (*.f64 -1 z) b) y)
(*.f64 (+.f64 (*.f64 -1 z) b) y)
(*.f64 (+.f64 (*.f64 -1 z) b) y)
(*.f64 -1 (*.f64 y (+.f64 z (*.f64 -1 b))))
(*.f64 -1 (*.f64 y (+.f64 z (*.f64 -1 b))))
(*.f64 -1 (*.f64 y (+.f64 z (*.f64 -1 b))))
(*.f64 -1 (*.f64 y (+.f64 z (*.f64 -1 b))))
(*.f64 -1 (*.f64 y z))
(+.f64 (*.f64 y b) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y b) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y b) (*.f64 -1 (*.f64 y z)))
(*.f64 y b)
(+.f64 (*.f64 y b) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y b) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y b) (*.f64 -1 (*.f64 y z)))
(*.f64 y b)
(+.f64 (*.f64 y b) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y b) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y b) (*.f64 -1 (*.f64 y z)))
Outputs
(*.f64 y b)
(+.f64 (*.f64 y b) (*.f64 -1 (*.f64 y z)))
(fma.f64 y b (neg.f64 (*.f64 y z)))
(*.f64 y (-.f64 b z))
(+.f64 (*.f64 y b) (*.f64 -1 (*.f64 y z)))
(fma.f64 y b (neg.f64 (*.f64 y z)))
(*.f64 y (-.f64 b z))
(+.f64 (*.f64 y b) (*.f64 -1 (*.f64 y z)))
(fma.f64 y b (neg.f64 (*.f64 y z)))
(*.f64 y (-.f64 b z))
(*.f64 -1 (*.f64 y z))
(neg.f64 (*.f64 y z))
(*.f64 y (neg.f64 z))
(*.f64 z (neg.f64 y))
(+.f64 (*.f64 y b) (*.f64 -1 (*.f64 y z)))
(fma.f64 y b (neg.f64 (*.f64 y z)))
(*.f64 y (-.f64 b z))
(+.f64 (*.f64 y b) (*.f64 -1 (*.f64 y z)))
(fma.f64 y b (neg.f64 (*.f64 y z)))
(*.f64 y (-.f64 b z))
(+.f64 (*.f64 y b) (*.f64 -1 (*.f64 y z)))
(fma.f64 y b (neg.f64 (*.f64 y z)))
(*.f64 y (-.f64 b z))
(*.f64 -1 (*.f64 y z))
(neg.f64 (*.f64 y z))
(*.f64 y (neg.f64 z))
(*.f64 z (neg.f64 y))
(+.f64 (*.f64 y b) (*.f64 -1 (*.f64 y z)))
(fma.f64 y b (neg.f64 (*.f64 y z)))
(*.f64 y (-.f64 b z))
(+.f64 (*.f64 y b) (*.f64 -1 (*.f64 y z)))
(fma.f64 y b (neg.f64 (*.f64 y z)))
(*.f64 y (-.f64 b z))
(+.f64 (*.f64 y b) (*.f64 -1 (*.f64 y z)))
(fma.f64 y b (neg.f64 (*.f64 y z)))
(*.f64 y (-.f64 b z))
(*.f64 (+.f64 (*.f64 -1 z) b) y)
(fma.f64 y b (neg.f64 (*.f64 y z)))
(*.f64 y (-.f64 b z))
(*.f64 (+.f64 (*.f64 -1 z) b) y)
(fma.f64 y b (neg.f64 (*.f64 y z)))
(*.f64 y (-.f64 b z))
(*.f64 (+.f64 (*.f64 -1 z) b) y)
(fma.f64 y b (neg.f64 (*.f64 y z)))
(*.f64 y (-.f64 b z))
(*.f64 (+.f64 (*.f64 -1 z) b) y)
(fma.f64 y b (neg.f64 (*.f64 y z)))
(*.f64 y (-.f64 b z))
(*.f64 (+.f64 (*.f64 -1 z) b) y)
(fma.f64 y b (neg.f64 (*.f64 y z)))
(*.f64 y (-.f64 b z))
(*.f64 (+.f64 (*.f64 -1 z) b) y)
(fma.f64 y b (neg.f64 (*.f64 y z)))
(*.f64 y (-.f64 b z))
(*.f64 (+.f64 (*.f64 -1 z) b) y)
(fma.f64 y b (neg.f64 (*.f64 y z)))
(*.f64 y (-.f64 b z))
(*.f64 (+.f64 (*.f64 -1 z) b) y)
(fma.f64 y b (neg.f64 (*.f64 y z)))
(*.f64 y (-.f64 b z))
(*.f64 -1 (*.f64 y (+.f64 z (*.f64 -1 b))))
(fma.f64 y b (neg.f64 (*.f64 y z)))
(*.f64 y (-.f64 b z))
(*.f64 -1 (*.f64 y (+.f64 z (*.f64 -1 b))))
(fma.f64 y b (neg.f64 (*.f64 y z)))
(*.f64 y (-.f64 b z))
(*.f64 -1 (*.f64 y (+.f64 z (*.f64 -1 b))))
(fma.f64 y b (neg.f64 (*.f64 y z)))
(*.f64 y (-.f64 b z))
(*.f64 -1 (*.f64 y (+.f64 z (*.f64 -1 b))))
(fma.f64 y b (neg.f64 (*.f64 y z)))
(*.f64 y (-.f64 b z))
(*.f64 -1 (*.f64 y z))
(neg.f64 (*.f64 y z))
(*.f64 y (neg.f64 z))
(*.f64 z (neg.f64 y))
(+.f64 (*.f64 y b) (*.f64 -1 (*.f64 y z)))
(fma.f64 y b (neg.f64 (*.f64 y z)))
(*.f64 y (-.f64 b z))
(+.f64 (*.f64 y b) (*.f64 -1 (*.f64 y z)))
(fma.f64 y b (neg.f64 (*.f64 y z)))
(*.f64 y (-.f64 b z))
(+.f64 (*.f64 y b) (*.f64 -1 (*.f64 y z)))
(fma.f64 y b (neg.f64 (*.f64 y z)))
(*.f64 y (-.f64 b z))
(*.f64 y b)
(+.f64 (*.f64 y b) (*.f64 -1 (*.f64 y z)))
(fma.f64 y b (neg.f64 (*.f64 y z)))
(*.f64 y (-.f64 b z))
(+.f64 (*.f64 y b) (*.f64 -1 (*.f64 y z)))
(fma.f64 y b (neg.f64 (*.f64 y z)))
(*.f64 y (-.f64 b z))
(+.f64 (*.f64 y b) (*.f64 -1 (*.f64 y z)))
(fma.f64 y b (neg.f64 (*.f64 y z)))
(*.f64 y (-.f64 b z))
(*.f64 y b)
(+.f64 (*.f64 y b) (*.f64 -1 (*.f64 y z)))
(fma.f64 y b (neg.f64 (*.f64 y z)))
(*.f64 y (-.f64 b z))
(+.f64 (*.f64 y b) (*.f64 -1 (*.f64 y z)))
(fma.f64 y b (neg.f64 (*.f64 y z)))
(*.f64 y (-.f64 b z))
(+.f64 (*.f64 y b) (*.f64 -1 (*.f64 y z)))
(fma.f64 y b (neg.f64 (*.f64 y z)))
(*.f64 y (-.f64 b z))

eval91.0ms (0.2%)

Compiler

Compiled 3019 to 1268 computations (58% saved)

prune55.0ms (0.1%)

Pruning

23 alts after pruning (17 fresh and 6 done)

PrunedKeptTotal
New1908198
Fresh5914
Picked101
Done167
Total19723220
Error
0b
Counts
220 → 23
Alt Table
Click to see full alt table
StatusErrorProgram
37.0b
(fma.f64 y (-.f64 b z) (*.f64 b (+.f64 t -2)))
26.4b
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 z x))
44.3b
(+.f64 x (*.f64 y b))
19.9b
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
43.4b
(*.f64 (-.f64 (+.f64 y t) 2) b)
18.1b
(+.f64 a (+.f64 z (+.f64 (*.f64 b (-.f64 t 2)) x)))
50.8b
(*.f64 (-.f64 b z) y)
49.5b
(+.f64 a (*.f64 y b))
36.0b
(+.f64 (*.f64 b (-.f64 t 2)) x)
50.8b
(-.f64 (*.f64 y b) (*.f64 z y))
28.0b
(fma.f64 z (-.f64 1 y) (fma.f64 a (neg.f64 t) x))
51.2b
(*.f64 t (-.f64 b a))
43.2b
(+.f64 x (*.f64 t b))
49.6b
(-.f64 a (*.f64 t a))
57.5b
(*.f64 a (neg.f64 t))
57.3b
(*.f64 y b)
56.5b
(*.f64 z (neg.f64 y))
54.8b
a
47.7b
(+.f64 a (*.f64 -2 b))
49.7b
x
49.1b
(*.f64 (-.f64 t 2) b)
56.2b
(*.f64 t b)
46.6b
(-.f64 z (*.f64 z y))
Compiler

Compiled 273 to 204 computations (25.3% saved)

regimes355.0ms (0.9%)

Counts
50 → 1
Calls
Call 1
Inputs
a
x
x
x
(*.f64 t b)
(*.f64 y b)
(*.f64 a (neg.f64 t))
(*.f64 z (neg.f64 y))
(*.f64 y (neg.f64 z))
(*.f64 a (neg.f64 t))
(*.f64 (-.f64 b z) y)
(-.f64 z (*.f64 z y))
(-.f64 z (*.f64 z y))
(+.f64 a (*.f64 y b))
(*.f64 y (-.f64 b z))
(+.f64 a (*.f64 -2 b))
(*.f64 (-.f64 t 2) b)
(+.f64 x (*.f64 y b))
(+.f64 x (*.f64 t b))
(-.f64 a (*.f64 t a))
(*.f64 t (-.f64 b a))
(*.f64 y (-.f64 b z))
(-.f64 (*.f64 y b) (*.f64 z y))
(+.f64 a (*.f64 (-.f64 y 2) b))
(+.f64 (*.f64 b (-.f64 t 2)) x)
(*.f64 (-.f64 (+.f64 y t) 2) b)
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y b))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 z x))
(+.f64 x (*.f64 (-.f64 (+.f64 y t) 2) b))
(+.f64 a (+.f64 z (+.f64 (*.f64 b (-.f64 t 2)) x)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 (-.f64 (+.f64 y t) 2) b))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 (-.f64 (+.f64 y t) 2) b))
(+.f64 (*.f64 a (neg.f64 t)) (*.f64 (-.f64 (+.f64 y t) 2) b))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x))
(+.f64 (-.f64 z (*.f64 z y)) (*.f64 (-.f64 (+.f64 y t) 2) b))
(+.f64 (*.f64 a (-.f64 1 t)) (*.f64 (-.f64 (+.f64 y t) 2) b))
(+.f64 (*.f64 z (-.f64 1 y)) (*.f64 (-.f64 (+.f64 y t) 2) b))
(+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 y 2) b) x)))
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 z (+.f64 (*.f64 b (-.f64 t 2)) x)))
(+.f64 (-.f64 (-.f64 x (-.f64 (*.f64 z y) z)) (*.f64 (-.f64 t 1) a)) (*.f64 y b))
(+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 y 1) z)) (*.f64 (-.f64 t 1) a)) (*.f64 y b))
(+.f64 (-.f64 (-.f64 x (-.f64 (*.f64 z y) z)) (*.f64 (-.f64 t 1) a)) (*.f64 (-.f64 (+.f64 y t) 2) b))
(+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 y 1) z)) (*.f64 (-.f64 t 1) a)) (*.f64 (-.f64 (+.f64 y t) 2) b))
(fma.f64 y (-.f64 b z) (*.f64 b (+.f64 t -2)))
(fma.f64 z (-.f64 1 y) (fma.f64 a (neg.f64 t) x))
(+.f64 x (pow.f64 (sqrt.f64 (*.f64 (+.f64 t (-.f64 y 2)) b)) 2))
(+.f64 x (fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) z)))
(fma.f64 (+.f64 y (+.f64 t -2)) b (fma.f64 z (-.f64 1 y) (+.f64 (*.f64 t (neg.f64 a)) x)))
(fma.f64 (+.f64 y (+.f64 t -2)) b (fma.f64 z (-.f64 1 y) (+.f64 (*.f64 a (-.f64 1 t)) x)))
(fma.f64 (+.f64 y (+.f64 t -2)) b (fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x)))
Outputs
(+.f64 (-.f64 (-.f64 x (-.f64 (*.f64 z y) z)) (*.f64 (-.f64 t 1) a)) (*.f64 (-.f64 (+.f64 y t) 2) b))
Calls

7 calls:

69.0ms
(+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 y 1) z)) (*.f64 (-.f64 t 1) a)) (*.f64 (-.f64 (+.f64 y t) 2) b))
66.0ms
z
61.0ms
b
52.0ms
x
30.0ms
y
Results
ErrorSegmentsBranch
0.0b1x
0.0b1y
0.0b1z
0.0b1t
0.0b1a
0.0b1b
0.0b1(+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 y 1) z)) (*.f64 (-.f64 t 1) a)) (*.f64 (-.f64 (+.f64 y t) 2) b))
Compiler

Compiled 520 to 260 computations (50% saved)

regimes770.0ms (2%)

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

6 calls:

196.0ms
a
136.0ms
z
131.0ms
x
113.0ms
t
110.0ms
b
Results
ErrorSegmentsBranch
7.4b6x
1.6b3y
8.3b5z
3.9b3t
8.2b5a
5.0b3b
Compiler

Compiled 351 to 169 computations (51.9% saved)

bsearch83.0ms (0.2%)

Algorithm
binary-search
Steps
TimeLeftRight
30.0ms
44236139474599610.0
3.267897928669003e+21
53.0ms
-104622.06158715278
-268.8963711616595
Compiler

Compiled 36 to 27 computations (25% saved)

regimes1.1s (2.7%)

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

6 calls:

249.0ms
a
223.0ms
t
194.0ms
x
160.0ms
y
145.0ms
z
Results
ErrorSegmentsBranch
7.4b6x
4.1b3y
8.3b5z
2.9b5t
9.1b6a
6.0b4b
Compiler

Compiled 317 to 153 computations (51.7% saved)

bsearch510.0ms (1.3%)

Algorithm
binary-search
Steps
TimeLeftRight
79.0ms
4.051925524390884e+126
2.285784658096941e+134
233.0ms
8.987364769451748e+53
3.2154317568554883e+63
32.0ms
6.637049550533277e-11
7.541960589116403e-10
166.0ms
-3.113894024755996e+52
-5.8106640566414503e+48
Compiler

Compiled 1180 to 859 computations (27.2% saved)

regimes570.0ms (1.5%)

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

6 calls:

150.0ms
a
130.0ms
t
80.0ms
x
73.0ms
z
71.0ms
b
Results
ErrorSegmentsBranch
10.3b3x
7.0b3y
10.5b3z
4.8b6t
8.7b7a
6.6b4b
Compiler

Compiled 302 to 144 computations (52.3% saved)

bsearch896.0ms (2.3%)

Algorithm
binary-search
Steps
TimeLeftRight
50.0ms
1.2751579406562642e+169
2.11732726481952e+172
738.0ms
8.987364769451748e+53
3.2154317568554883e+63
31.0ms
3.308617157617542e+24
7.512354098916856e+29
33.0ms
-388841046447759740.0
-37.12775545951887
43.0ms
-6.956172614556302e+259
-1.2521491682476988e+244
Compiler

Compiled 1123 to 827 computations (26.4% saved)

regimes1.6s (4.1%)

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

6 calls:

631.0ms
t
327.0ms
z
261.0ms
x
174.0ms
y
126.0ms
a
Results
ErrorSegmentsBranch
13.4b5x
7.5b6y
11.7b6z
10.6b10t
10.9b7a
8.4b4b
Compiler

Compiled 287 to 135 computations (53% saved)

bsearch407.0ms (1%)

Algorithm
binary-search
Steps
TimeLeftRight
90.0ms
1.9672768252229615e+183
9.090952977038116e+196
147.0ms
4.5938144379919276e+111
1.4214854678749477e+120
28.0ms
44236139474599610.0
3.267897928669003e+21
27.0ms
-19.248932196871955
-1.1892834325334607e-9
114.0ms
-2.4766370384721124e+119
-8.877277196985514e+93
Compiler

Compiled 1206 to 897 computations (25.6% saved)

regimes674.0ms (1.7%)

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

6 calls:

166.0ms
z
152.0ms
t
116.0ms
b
109.0ms
y
102.0ms
a
Results
ErrorSegmentsBranch
18.1b1x
9.9b4y
14.2b7z
14.0b7t
16.5b2a
14.1b4b
Compiler

Compiled 235 to 109 computations (53.6% saved)

bsearch372.0ms (1%)

Algorithm
binary-search
Steps
TimeLeftRight
202.0ms
4.5938144379919276e+111
1.4214854678749477e+120
35.0ms
-19.248932196871955
-1.1892834325334607e-9
135.0ms
-8.877277196985514e+93
-4.026295946819422e+87
Compiler

Compiled 684 to 504 computations (26.3% saved)

regimes343.0ms (0.9%)

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

6 calls:

89.0ms
y
73.0ms
z
61.0ms
b
49.0ms
a
48.0ms
t
Results
ErrorSegmentsBranch
18.1b1x
10.9b4y
15.7b5z
16.3b3t
16.5b2a
14.1b4b
Compiler

Compiled 199 to 97 computations (51.3% saved)

bsearch246.0ms (0.6%)

Algorithm
binary-search
Steps
TimeLeftRight
97.0ms
4.5938144379919276e+111
1.4214854678749477e+120
29.0ms
-19.248932196871955
-1.1892834325334607e-9
119.0ms
-8.877277196985514e+93
-4.026295946819422e+87
Compiler

Compiled 576 to 423 computations (26.6% saved)

regimes957.0ms (2.5%)

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

6 calls:

313.0ms
z
307.0ms
t
132.0ms
x
87.0ms
a
62.0ms
b
Results
ErrorSegmentsBranch
21.5b7x
20.9b3y
19.6b5z
21.1b5t
18.2b5a
15.8b3b
Compiler

Compiled 188 to 91 computations (51.6% saved)

bsearch120.0ms (0.3%)

Algorithm
binary-search
Steps
TimeLeftRight
65.0ms
1.528278190328492e-50
1.0420488997715843e-45
54.0ms
-1783607710.8450565
-1120357260.5259132
Compiler

Compiled 36 to 27 computations (25% saved)

regimes606.0ms (1.6%)

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

6 calls:

151.0ms
z
146.0ms
a
95.0ms
b
87.0ms
x
78.0ms
t
Results
ErrorSegmentsBranch
21.6b7x
20.9b3y
20.2b11z
22.1b5t
20.6b5a
17.8b4b
Compiler

Compiled 179 to 87 computations (51.4% saved)

bsearch90.0ms (0.2%)

Algorithm
binary-search
Steps
TimeLeftRight
29.0ms
5.2376907913986906e-11
0.3463331654197701
30.0ms
1.0420488997715843e-45
4.737583212945758e-33
29.0ms
-2.2415838685451047e+27
-6.825655211147003e+25
Compiler

Compiled 36 to 27 computations (25% saved)

regimes736.0ms (1.9%)

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

6 calls:

252.0ms
x
141.0ms
z
128.0ms
y
95.0ms
b
61.0ms
a
Results
ErrorSegmentsBranch
26.2b10x
28.6b3y
22.5b11z
28.7b4t
27.0b5a
27.8b8b
Compiler

Compiled 170 to 82 computations (51.8% saved)

bsearch647.0ms (1.7%)

Algorithm
10×binary-search
Steps
TimeLeftRight
162.0ms
4.8428729921112305e+103
9.484901899840507e+111
36.0ms
2.6730538370504447e-254
2.0691270939647357e-252
65.0ms
2.5302966632305277e-278
8.08387753418962e-278
51.0ms
-3.115648540232889e-243
-1.0395667799411524e-255
57.0ms
-8.92171005850182e-239
-1.1327246965286166e-241
49.0ms
-3.029592954209206e-168
-4.514965688963394e-169
30.0ms
-1.364212156236258e-85
-9.404839324004866e-87
30.0ms
-1.766689149787325e+32
-1.3196241737215485e+29
30.0ms
-3.1041203074840385e+71
-2.9669487012607702e+56
136.0ms
-1.4969133924148053e+149
-8.957629581070779e+129
Compiler

Compiled 530 to 407 computations (23.2% saved)

regimes1.1s (2.8%)

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

6 calls:

447.0ms
z
190.0ms
y
174.0ms
x
130.0ms
b
82.0ms
t
Results
ErrorSegmentsBranch
29.5b7x
30.8b7y
24.5b13z
29.0b4t
32.1b5a
28.6b8b
Compiler

Compiled 148 to 73 computations (50.7% saved)

bsearch462.0ms (1.2%)

Algorithm
12×binary-search
Steps
TimeLeftRight
139.0ms
1.1675642614252433e+92
3.987216376450436e+93
28.0ms
4.625139362445383e-36
4.5706976680129716e-26
28.0ms
2.348121168058336e-45
2.0264870706649778e-41
28.0ms
2.7402279736919165e-73
6.3244885922042105e-68
28.0ms
1.3748720601180662e-139
1.5994679111939148e-124
28.0ms
2.6722928056084846e-217
3.474613892810351e-210
30.0ms
2.0691270939647357e-252
4.3744390503499493e-231
35.0ms
-1.0900332678387627e-263
-3.996656544851041e-279
29.0ms
-8.92171005850182e-239
-1.1327246965286166e-241
30.0ms
-3.029592954209206e-168
-4.514965688963394e-169
29.0ms
-1.364212156236258e-85
-9.404839324004866e-87
30.0ms
-1.766689149787325e+32
-1.3196241737215485e+29
Compiler

Compiled 204 to 153 computations (25% saved)

regimes743.0ms (1.9%)

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

6 calls:

175.0ms
x
174.0ms
z
135.0ms
t
104.0ms
b
77.0ms
y
Results
ErrorSegmentsBranch
29.8b10x
30.8b7y
26.2b13z
30.7b8t
32.1b7a
29.5b10b
Compiler

Compiled 141 to 69 computations (51.1% saved)

bsearch1.1s (2.8%)

Algorithm
12×binary-search
Steps
TimeLeftRight
228.0ms
1.1675642614252433e+92
3.987216376450436e+93
90.0ms
1.3748720601180662e-139
1.5994679111939148e-124
86.0ms
5.577806173788769e-160
9.253790176238824e-157
53.0ms
3.484687566958311e-193
5.41977661806072e-191
54.0ms
2.6730538370504447e-254
2.0691270939647357e-252
54.0ms
1.8691273032221093e-283
2.5302966632305277e-278
93.0ms
9.103955224836737e-306
5.1099296062475454e-300
95.0ms
-1.0900332678387627e-263
-3.996656544851041e-279
56.0ms
-8.92171005850182e-239
-1.1327246965286166e-241
59.0ms
-1.9023989638617242e-198
-1.1858574883436628e-200
55.0ms
-1.364212156236258e-85
-9.404839324004866e-87
146.0ms
-1.766689149787325e+32
-1.3196241737215485e+29
Compiler

Compiled 204 to 153 computations (25% saved)

regimes597.0ms (1.5%)

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

6 calls:

161.0ms
z
111.0ms
b
88.0ms
x
86.0ms
y
76.0ms
a
Results
ErrorSegmentsBranch
31.3b8x
30.8b7y
26.6b13z
32.3b7t
32.1b7a
29.5b10b
Compiler

Compiled 124 to 66 computations (46.8% saved)

bsearch963.0ms (2.5%)

Algorithm
12×binary-search
Steps
TimeLeftRight
425.0ms
1.1675642614252433e+92
3.987216376450436e+93
56.0ms
1.4659853771850996e-117
2.208239912863072e-110
50.0ms
2.6722928056084846e-217
3.474613892810351e-210
45.0ms
2.6730538370504447e-254
2.0691270939647357e-252
30.0ms
1.8691273032221093e-283
2.5302966632305277e-278
84.0ms
9.103955224836737e-306
5.1099296062475454e-300
57.0ms
-1.0900332678387627e-263
-3.996656544851041e-279
57.0ms
-9.563117201602501e-259
-3.8811858958240077e-261
56.0ms
-8.92171005850182e-239
-1.1327246965286166e-241
42.0ms
-3.029592954209206e-168
-4.514965688963394e-169
30.0ms
-1.1092983985635226e-88
-2.7245437532420057e-90
29.0ms
-1.766689149787325e+32
-1.3196241737215485e+29
Compiler

Compiled 204 to 153 computations (25% saved)

regimes688.0ms (1.8%)

Counts
19 → 9
Calls
Call 1
Inputs
a
x
x
x
(*.f64 t b)
(*.f64 y b)
(*.f64 a (neg.f64 t))
(*.f64 z (neg.f64 y))
(*.f64 y (neg.f64 z))
(*.f64 a (neg.f64 t))
(*.f64 (-.f64 b z) y)
(-.f64 z (*.f64 z y))
(-.f64 z (*.f64 z y))
(+.f64 a (*.f64 y b))
(*.f64 y (-.f64 b z))
(+.f64 a (*.f64 -2 b))
(*.f64 (-.f64 t 2) b)
(+.f64 x (*.f64 y b))
(+.f64 x (*.f64 t b))
Outputs
(-.f64 z (*.f64 z y))
(+.f64 a (*.f64 y b))
(+.f64 x (*.f64 t b))
(+.f64 a (*.f64 -2 b))
(+.f64 x (*.f64 y b))
(+.f64 x (*.f64 t b))
(+.f64 a (*.f64 -2 b))
(+.f64 x (*.f64 t b))
(-.f64 z (*.f64 z y))
Calls

6 calls:

200.0ms
b
127.0ms
z
120.0ms
a
86.0ms
y
84.0ms
x
Results
ErrorSegmentsBranch
31.3b8x
30.8b7y
28.8b9z
32.3b7t
33.0b6a
30.6b9b
Compiler

Compiled 119 to 64 computations (46.2% saved)

bsearch553.0ms (1.4%)

Algorithm
binary-search
Steps
TimeLeftRight
312.0ms
1.1675642614252433e+92
3.987216376450436e+93
55.0ms
2.0691270939647357e-252
4.3744390503499493e-231
29.0ms
-1.0900332678387627e-263
-3.996656544851041e-279
29.0ms
-9.563117201602501e-259
-3.8811858958240077e-261
38.0ms
-6.104108917545296e-180
-3.0740069338385006e-180
29.0ms
-3.029592954209206e-168
-4.514965688963394e-169
29.0ms
-1.1092983985635226e-88
-2.7245437532420057e-90
30.0ms
-1.766689149787325e+32
-1.3196241737215485e+29
Compiler

Compiled 204 to 153 computations (25% saved)

regimes802.0ms (2.1%)

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

6 calls:

178.0ms
x
157.0ms
t
141.0ms
b
139.0ms
z
91.0ms
a
Results
ErrorSegmentsBranch
31.3b8x
34.2b7y
30.2b6z
32.9b10t
32.1b10a
31.1b9b
Compiler

Compiled 114 to 63 computations (44.7% saved)

bsearch485.0ms (1.2%)

Algorithm
binary-search
Steps
TimeLeftRight
269.0ms
3.8922780694872483e+83
1.1675642614252433e+92
29.0ms
9.103955224836737e-306
5.1099296062475454e-300
33.0ms
-1.0900332678387627e-263
-3.996656544851041e-279
53.0ms
-1.1092983985635226e-88
-2.7245437532420057e-90
100.0ms
-1.766689149787325e+32
-1.3196241737215485e+29
Compiler

Compiled 252 to 189 computations (25% saved)

regimes807.0ms (2.1%)

Counts
17 → 8
Calls
Call 1
Inputs
a
x
x
x
(*.f64 t b)
(*.f64 y b)
(*.f64 a (neg.f64 t))
(*.f64 z (neg.f64 y))
(*.f64 y (neg.f64 z))
(*.f64 a (neg.f64 t))
(*.f64 (-.f64 b z) y)
(-.f64 z (*.f64 z y))
(-.f64 z (*.f64 z y))
(+.f64 a (*.f64 y b))
(*.f64 y (-.f64 b z))
(+.f64 a (*.f64 -2 b))
(*.f64 (-.f64 t 2) b)
Outputs
(-.f64 z (*.f64 z y))
(+.f64 a (*.f64 y b))
(+.f64 a (*.f64 -2 b))
(*.f64 a (neg.f64 t))
(*.f64 (-.f64 t 2) b)
(+.f64 a (*.f64 y b))
x
(-.f64 z (*.f64 z y))
Calls

6 calls:

243.0ms
a
158.0ms
t
112.0ms
z
99.0ms
b
98.0ms
x
Results
ErrorSegmentsBranch
32.0b8x
35.4b5y
31.5b8z
34.1b10t
34.0b10a
32.7b9b
Compiler

Compiled 109 to 62 computations (43.1% saved)

bsearch1.0s (2.7%)

Algorithm
binary-search
Steps
TimeLeftRight
485.0ms
3.8922780694872483e+83
1.1675642614252433e+92
60.0ms
1.3748720601180662e-139
1.5994679111939148e-124
64.0ms
2.6722928056084846e-217
3.474613892810351e-210
144.0ms
2.6730538370504447e-254
2.0691270939647357e-252
59.0ms
2.5302966632305277e-278
8.08387753418962e-278
145.0ms
-8.92171005850182e-239
-1.1327246965286166e-241
32.0ms
-1.766689149787325e+32
-1.3196241737215485e+29
Compiler

Compiled 216 to 171 computations (20.8% saved)

regimes1.6s (4.1%)

Counts
16 → 8
Calls
Call 1
Inputs
a
x
x
x
(*.f64 t b)
(*.f64 y b)
(*.f64 a (neg.f64 t))
(*.f64 z (neg.f64 y))
(*.f64 y (neg.f64 z))
(*.f64 a (neg.f64 t))
(*.f64 (-.f64 b z) y)
(-.f64 z (*.f64 z y))
(-.f64 z (*.f64 z y))
(+.f64 a (*.f64 y b))
(*.f64 y (-.f64 b z))
(+.f64 a (*.f64 -2 b))
Outputs
(-.f64 z (*.f64 z y))
(+.f64 a (*.f64 y b))
(+.f64 a (*.f64 -2 b))
(*.f64 a (neg.f64 t))
(*.f64 t b)
(+.f64 a (*.f64 y b))
x
(-.f64 z (*.f64 z y))
Calls

6 calls:

319.0ms
y
318.0ms
a
293.0ms
t
244.0ms
b
242.0ms
z
Results
ErrorSegmentsBranch
33.6b7x
34.7b7y
31.7b8z
34.1b10t
35.0b11a
33.0b11b
Compiler

Compiled 104 to 59 computations (43.3% saved)

bsearch596.0ms (1.5%)

Algorithm
binary-search
Steps
TimeLeftRight
363.0ms
3.8922780694872483e+83
1.1675642614252433e+92
30.0ms
1.3748720601180662e-139
1.5994679111939148e-124
30.0ms
2.6722928056084846e-217
3.474613892810351e-210
66.0ms
2.6730538370504447e-254
2.0691270939647357e-252
41.0ms
2.5302966632305277e-278
8.08387753418962e-278
38.0ms
-8.92171005850182e-239
-1.1327246965286166e-241
28.0ms
-1.766689149787325e+32
-1.3196241737215485e+29
Compiler

Compiled 216 to 171 computations (20.8% saved)

regimes525.0ms (1.3%)

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

6 calls:

162.0ms
t
142.0ms
b
73.0ms
x
60.0ms
a
45.0ms
y
Results
ErrorSegmentsBranch
34.8b7x
38.8b6y
34.0b4z
35.5b11t
37.0b7a
36.8b10b
Compiler

Compiled 99 to 56 computations (43.4% saved)

bsearch620.0ms (1.6%)

Algorithm
binary-search
Steps
TimeLeftRight
481.0ms
3.8922780694872483e+83
1.1675642614252433e+92
61.0ms
1.3748720601180662e-139
1.5994679111939148e-124
77.0ms
-1.766689149787325e+32
-1.3196241737215485e+29
Compiler

Compiled 216 to 171 computations (20.8% saved)

regimes374.0ms (1%)

Counts
13 → 4
Calls
Call 1
Inputs
a
x
x
x
(*.f64 t b)
(*.f64 y b)
(*.f64 a (neg.f64 t))
(*.f64 z (neg.f64 y))
(*.f64 y (neg.f64 z))
(*.f64 a (neg.f64 t))
(*.f64 (-.f64 b z) y)
(-.f64 z (*.f64 z y))
(-.f64 z (*.f64 z y))
Outputs
(-.f64 z (*.f64 z y))
(*.f64 (-.f64 b z) y)
x
(-.f64 z (*.f64 z y))
Calls

6 calls:

81.0ms
t
75.0ms
x
70.0ms
b
66.0ms
a
50.0ms
y
Results
ErrorSegmentsBranch
37.7b3x
38.8b6y
35.9b4z
37.0b11t
37.2b9a
38.4b9b
Compiler

Compiled 89 to 54 computations (39.3% saved)

bsearch385.0ms (1%)

Algorithm
binary-search
Steps
TimeLeftRight
272.0ms
3.8922780694872483e+83
1.1675642614252433e+92
31.0ms
-1.1858574883436628e-200
-2.301682324858441e-204
81.0ms
-4.637105753254294e+21
-8761301622609672.0
Compiler

Compiled 216 to 171 computations (20.8% saved)

regimes338.0ms (0.9%)

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

6 calls:

79.0ms
a
65.0ms
x
55.0ms
t
52.0ms
b
47.0ms
z
Results
ErrorSegmentsBranch
39.6b5x
40.1b5y
45.4b3z
40.9b7t
39.3b11a
42.0b8b
Compiler

Compiled 79 to 52 computations (34.2% saved)

bsearch1.0s (2.7%)

Algorithm
10×binary-search
Steps
TimeLeftRight
281.0ms
8.762903901743452e+86
1.3472901231740558e+93
30.0ms
7.305065706096023e-140
7.330098353571246e-134
68.0ms
4.84235620809421e-176
3.476336909420162e-169
52.0ms
1.172028119056141e-205
1.8961368726708246e-196
31.0ms
9.172155637806271e-223
1.2011595296347528e-219
189.0ms
-2.8352003543640426e-260
-1.264721026958211e-260
29.0ms
-3.023738673622491e-23
-5.290759745236733e-33
58.0ms
-1.364919046851093e+33
-5.970193973148513e+25
30.0ms
-2.902085107648384e+37
-6.484354332926773e+36
267.0ms
-4.5608642360242526e+117
-8.013619360805723e+110
Compiler

Compiled 351 to 297 computations (15.4% saved)

regimes195.0ms (0.5%)

Counts
10 → 7
Calls
Call 1
Inputs
a
x
x
x
(*.f64 t b)
(*.f64 y b)
(*.f64 a (neg.f64 t))
(*.f64 z (neg.f64 y))
(*.f64 y (neg.f64 z))
(*.f64 a (neg.f64 t))
Outputs
(*.f64 t b)
(*.f64 a (neg.f64 t))
x
a
(*.f64 y b)
x
(*.f64 t b)
Calls

6 calls:

44.0ms
t
37.0ms
a
30.0ms
x
29.0ms
y
29.0ms
b
Results
ErrorSegmentsBranch
42.2b5x
44.3b5y
47.3b3z
41.8b7t
42.1b5a
45.3b5b
Compiler

Compiled 74 to 50 computations (32.4% saved)

bsearch549.0ms (1.4%)

Algorithm
binary-search
Steps
TimeLeftRight
87.0ms
2.11732726481952e+172
5.13446691374177e+179
81.0ms
1.0721243611731997e-185
1.787172811479528e-182
92.0ms
8.436975614515932e-215
3.415082950634077e-209
83.0ms
-2.1197831786369752e-52
-6.389426568745391e-55
174.0ms
-5.8106640566414503e+48
-2.8513877475673087e+44
31.0ms
-3.7687842389674456e+240
-3.8246445625317264e+238
Compiler

Compiled 497 to 409 computations (17.7% saved)

regimes153.0ms (0.4%)

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

6 calls:

37.0ms
t
27.0ms
a
25.0ms
b
23.0ms
y
23.0ms
x
Results
ErrorSegmentsBranch
42.6b5x
45.1b5y
48.6b3z
43.1b6t
42.1b5a
45.3b5b
Compiler

Compiled 58 to 44 computations (24.1% saved)

bsearch659.0ms (1.7%)

Algorithm
binary-search
Steps
TimeLeftRight
428.0ms
8.762903901743452e+86
1.3472901231740558e+93
30.0ms
5.316581539441521e-283
9.179665483978989e-282
48.0ms
-2.4286440598834208e-259
-2.8352003543640426e-260
152.0ms
-1.0274213177893458e+175
-1.221468306208953e+159
Compiler

Compiled 340 to 293 computations (13.8% saved)

regimes195.0ms (0.5%)

Accuracy

Total -19.3b remaining (-44.3%)

Threshold costs -19.3b (-44.3%)

Counts
4 → 3
Calls
Call 1
Inputs
a
x
x
x
Outputs
a
x
a
Calls

6 calls:

135.0ms
a
14.0ms
x
13.0ms
y
13.0ms
t
9.0ms
b
Results
ErrorSegmentsBranch
44.2b3x
48.3b3y
49.7b1z
47.5b3t
43.5b3a
49.7b1b
Compiler

Compiled 52 to 42 computations (19.2% saved)

bsearch276.0ms (0.7%)

Algorithm
binary-search
Steps
TimeLeftRight
179.0ms
8.762903901743452e+86
1.3472901231740558e+93
97.0ms
-1.0274213177893458e+175
-1.221468306208953e+159
Compiler

Compiled 340 to 293 computations (13.8% saved)

simplify293.0ms (0.8%)

Algorithm
egg-herbie
Rules
165×cancel-sign-sub-inv_binary64
143×distribute-rgt-neg-in_binary64
95×unsub-neg_binary64
93×distribute-lft-neg-out_binary64
92×distribute-lft-neg-in_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
03212081
13982067
24452067
34712067
45012067
55442067
65872067
76302067
86772067
97182067
107582067
118242067
129232067
1310132067
1411112067
1512092067
1612762067
1713192067
1813672067
1914202067
2014612067
2115032067
2215192067
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(+.f64 (-.f64 (-.f64 x (-.f64 (*.f64 z y) z)) (*.f64 (-.f64 t 1) a)) (*.f64 (-.f64 (+.f64 y t) 2) b))
(if (<=.f64 y -7189573327310705/68719476736) (+.f64 (-.f64 (-.f64 x (-.f64 (*.f64 z y) z)) (*.f64 (-.f64 t 1) a)) (*.f64 y b)) (if (<=.f64 y 44236139474599608) (+.f64 (*.f64 a (-.f64 1 t)) (+.f64 z (+.f64 (*.f64 b (-.f64 t 2)) x))) (+.f64 (-.f64 (-.f64 x (-.f64 (*.f64 z y) z)) (*.f64 (-.f64 t 1) a)) (*.f64 y b))))
(if (<=.f64 t -29999999999999999796628460230848839293851253258321920) (+.f64 (*.f64 a (-.f64 1 t)) (+.f64 z (+.f64 (*.f64 b (-.f64 t 2)) x))) (if (<=.f64 t 5135168363328863/77371252455336267181195264) (+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 y 2) b) x))) (if (<=.f64 t 900000000000000036434149672042773111737363526720684032) (+.f64 (*.f64 a (-.f64 1 t)) (+.f64 z (+.f64 (*.f64 b (-.f64 t 2)) x))) (if (<=.f64 t 219999999999999994830344332807922507028730738984657576230121148196651479930568447624571703757262296568171195307889344934967442470338560) (+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 y 2) b) x))) (+.f64 (*.f64 a (-.f64 1 t)) (+.f64 z (+.f64 (*.f64 b (-.f64 t 2)) x)))))))
(if (<=.f64 t -67999999999999997887839867092527823170725567294614403342254149508295948982415069291076403828099499293266887981317871808033487310992331621204205733965215085759960742365422705078392370367878525328563817916860719141485191127546161578856693229371087656267521458176) (+.f64 (*.f64 a (neg.f64 t)) (*.f64 (-.f64 (+.f64 y t) 2) b)) (if (<=.f64 t -388841046447759744) (+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x)) (if (<=.f64 t 3308617157617541785321472) (+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 y 2) b) x))) (if (<=.f64 t 900000000000000036434149672042773111737363526720684032) (+.f64 (*.f64 a (neg.f64 t)) (*.f64 (-.f64 (+.f64 y t) 2) b)) (if (<=.f64 t 21000000000000001393190536992691363971421141672750033342813957041383339458330676172405577324773762576978122516226130196667937570778196620812799312092391564852364253771857920) (+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 y 2) b) x))) (+.f64 (*.f64 a (neg.f64 t)) (*.f64 (-.f64 (+.f64 y t) 2) b)))))))
(if (<=.f64 y -244999999999999997967723015099168679022383391387375762951925072858890646255706086972527006668454157827443329807020982272) (+.f64 (*.f64 z (neg.f64 y)) (*.f64 (-.f64 (+.f64 y t) 2) b)) (if (<=.f64 y -2709046370909765/140737488355328) (+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x)) (if (<=.f64 y 44236139474599608) (+.f64 a (+.f64 z (+.f64 (*.f64 b (-.f64 t 2)) x))) (if (<=.f64 y 1400000000000000029342321086103669444606849652607985445378232365770109473918121200323777111114109617407150333006650015744) (+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x)) (if (<=.f64 y 1999999999999999893189745903130456677987053736438977713089142880627189412987511965773920050358187058649987332174230712262070456479105474777052558536156287047383518309811773687971446784) (+.f64 (*.f64 z (neg.f64 y)) (*.f64 (-.f64 (+.f64 y t) 2) b)) (+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x)))))))
(if (<=.f64 y -8600000000000000025668486269776413959583567568522954521599300591368912472478505530355995377664) (+.f64 (*.f64 z (neg.f64 y)) (*.f64 (-.f64 (+.f64 y t) 2) b)) (if (<=.f64 y -2709046370909765/140737488355328) (+.f64 (*.f64 a (-.f64 1 t)) (+.f64 z x)) (if (<=.f64 y 1400000000000000029342321086103669444606849652607985445378232365770109473918121200323777111114109617407150333006650015744) (+.f64 a (+.f64 z (+.f64 (*.f64 b (-.f64 t 2)) x))) (+.f64 (*.f64 z (neg.f64 y)) (*.f64 (-.f64 (+.f64 y t) 2) b)))))
(if (<=.f64 y -8600000000000000025668486269776413959583567568522954521599300591368912472478505530355995377664) (*.f64 (-.f64 b z) y) (if (<=.f64 y -2709046370909765/140737488355328) (+.f64 (*.f64 a (-.f64 1 t)) (+.f64 z x)) (if (<=.f64 y 1400000000000000029342321086103669444606849652607985445378232365770109473918121200323777111114109617407150333006650015744) (+.f64 a (+.f64 z (+.f64 (*.f64 b (-.f64 t 2)) x))) (-.f64 (*.f64 y b) (*.f64 z y)))))
(if (<=.f64 b -935124119503533/524288) (+.f64 x (*.f64 (-.f64 (+.f64 y t) 2) b)) (if (<=.f64 b 1609464785305689/105312291668557186697918027683670432318895095400549111254310977536) (+.f64 (*.f64 a (-.f64 1 t)) (+.f64 z x)) (+.f64 x (*.f64 (-.f64 (+.f64 y t) 2) b))))
(if (<=.f64 b -2241583868545104673838727168) (*.f64 (-.f64 (+.f64 y t) 2) b) (if (<=.f64 b 6698032084084729/6427752177035961102167848369364650410088811975131171341205504) (+.f64 (*.f64 a (-.f64 1 t)) (+.f64 z x)) (if (<=.f64 b 4052466965042981/77371252455336267181195264) (*.f64 (-.f64 b z) y) (+.f64 (*.f64 b (-.f64 t 2)) x))))
(if (<=.f64 z -145000000000000009940839120176539900246269040074475576186942709500410571195611880192750790933815725242935186229457918102226347797683332409349367660544) (-.f64 z (*.f64 z y)) (if (<=.f64 z -310412030748403852817764431332183911912209128012736946269664407615176704) (+.f64 (*.f64 b (-.f64 t 2)) x) (if (<=.f64 z -176668914978732482412920019353600) (-.f64 z (*.f64 z y)) (if (<=.f64 z -4774198443976881/34996011596528190789960035633881941845650710894291398982812329702559247987190014771576210832368861184) (+.f64 a (*.f64 (-.f64 y 2) b)) (if (<=.f64 z -3218263841500995/1062275985633534197379176413104937254659186235454063846398888276400807119721704485478325004530458571337778658972493002030693158675305414478819039957533174703887662541670786438063456256) (*.f64 t (-.f64 b a)) (if (<=.f64 z -5232803781712389/58652475225036720546649669496166069228998121824605496380296088990333059082962747718339142176408838912879328274880511426712364770830486275482511413333124259062810366582741426385442408983508948533749841936858614266830705773786598571244254795994059356766208) (+.f64 x (*.f64 y b)) (if (<=.f64 z -2994020332600219/960962154087001629436308185025184878247905227974336452694771122017616840015261658617268505418282416748614914455642299215255384405286687137505466996049907860485085046091635529899088428785810612776957410293491536147754283397719630991265870577566668501257551872) (*.f64 t (-.f64 b a)) (if (<=.f64 z 1010013615111337/39916806190694396233127454260736771321349025208709150830050944848744237837379281315699159309852714021786848936883849904879448759767871873214783435965696628406400113459021713530350754428887259743653067134890878479866616209102417407777777105368960883150142418137515120832847169904606880198557696) (+.f64 (*.f64 b (-.f64 t 2)) x) (if (<=.f64 z 3530399308862389/132073632783916311588084946229129151629711831509030380531990177256668475639181214868604313971914296973668598748314282169720586889875671384312634744615734894227096670999751271042182879419106610263256058227052797101037007073187890434709599224691759119122384645224434499584) (-.f64 a (*.f64 t a)) (if (<=.f64 z 9400000000000000154802459760671964757701179955736185932086661545476448622736870041979741568324008208248187387904) (+.f64 (*.f64 b (-.f64 t 2)) x) (-.f64 z (*.f64 z y))))))))))))
(if (<=.f64 z -176668914978732482412920019353600) (-.f64 z (*.f64 z y)) (if (<=.f64 z -4774198443976881/34996011596528190789960035633881941845650710894291398982812329702559247987190014771576210832368861184) (+.f64 a (*.f64 (-.f64 y 2) b)) (if (<=.f64 z -3218263841500995/1062275985633534197379176413104937254659186235454063846398888276400807119721704485478325004530458571337778658972493002030693158675305414478819039957533174703887662541670786438063456256) (*.f64 t (-.f64 b a)) (if (<=.f64 z -5232803781712389/58652475225036720546649669496166069228998121824605496380296088990333059082962747718339142176408838912879328274880511426712364770830486275482511413333124259062810366582741426385442408983508948533749841936858614266830705773786598571244254795994059356766208) (+.f64 x (*.f64 y b)) (if (<=.f64 z -772904348411337/70906491683854249133971333415503528601229677279443476631916611638829262598057001759775558209235971002092300595769547131083230268742795262708226708464736682213924924871800416657575912944521796077262840069882938251784694133132833485038618990914757637167551284096438594475925700608) (+.f64 x (*.f64 t b)) (if (<=.f64 z 4269955187367975/2063650512248692368563827284830142994214247367328599695812346519635444931862206482321942405811160890213571855442410658901884170154307365379884917884620857722298385484371113610034107490923540785363375909797699954703703235518560788042337487885808736236287260081631789056) (+.f64 a (*.f64 (-.f64 y 2) b)) (if (<=.f64 z 3319026342905755/12420144738405671481191835907700020442055088136933572889112416304208407621491015090647027270629171823603901845577048585649372640352918515131554298200329449113635639808166799244402122285052787558602103993549731750007142774830528462848) (+.f64 x (*.f64 t b)) (if (<=.f64 z 7373608204123009/53631231719770388398296099992823384509917463282369573510894245774887056120294187907207497192667613710760127432745944203415015531247786279785734596024336384) (+.f64 a (*.f64 (-.f64 y 2) b)) (if (<=.f64 z 2180446471003353/7957171782556586274486115970349133441607298412757563479047423630290551952200534008528896) (+.f64 x (*.f64 t b)) (if (<=.f64 z 7546570474965597/3213876088517980551083924184682325205044405987565585670602752) (+.f64 a (*.f64 -2 b)) (if (<=.f64 z 6921880321123877/1496577676626844588240573268701473812127674924007424) (*.f64 z (neg.f64 y)) (if (<=.f64 z 3949999999999999968704166884442442998247434868356321538355033303006674341863468374370251964416) (+.f64 x (*.f64 t b)) (-.f64 z (*.f64 z y))))))))))))))
(if (<=.f64 z -176668914978732482412920019353600) (-.f64 z (*.f64 z y)) (if (<=.f64 z -4774198443976881/34996011596528190789960035633881941845650710894291398982812329702559247987190014771576210832368861184) (+.f64 a (*.f64 y b)) (if (<=.f64 z -5123521069505271/2693189581592767235707386820034625876761773979045465016063119822371190863000105380922197266574125287028215280054363247469065949312094107577921441162573762995177074519617763634274131844036773231242902144888720064512) (*.f64 t (-.f64 b a)) (if (<=.f64 z -5232803781712389/58652475225036720546649669496166069228998121824605496380296088990333059082962747718339142176408838912879328274880511426712364770830486275482511413333124259062810366582741426385442408983508948533749841936858614266830705773786598571244254795994059356766208) (+.f64 x (*.f64 y b)) (if (<=.f64 z -772904348411337/70906491683854249133971333415503528601229677279443476631916611638829262598057001759775558209235971002092300595769547131083230268742795262708226708464736682213924924871800416657575912944521796077262840069882938251784694133132833485038618990914757637167551284096438594475925700608) (+.f64 x (*.f64 t b)) (if (<=.f64 z 7197894732483669/790633801981682102939434948120770730662330663141180149831645929794649763937481823796720248833738767559324522907487546528866440380413255769011771093518509804380927438580337349079948858367551626332967842494034160424070341732127705853976966233004529516956289283251401443563802400840744150516352841830648461966045733363646464) (+.f64 a (*.f64 -2 b)) (if (<=.f64 z 7823382786442759/41855804968213567224547853478906320725054875457247406540771499545716837934567817284890561672488119458109166910841919797858872862722356017328064756151166307827869405370407152286801072676024887272960758524035337792904616958075776435777990406039363527010043736240963055342423554029893064011082834640896) (+.f64 x (*.f64 y b)) (if (<=.f64 z 3530399308862389/132073632783916311588084946229129151629711831509030380531990177256668475639181214868604313971914296973668598748314282169720586889875671384312634744615734894227096670999751271042182879419106610263256058227052797101037007073187890434709599224691759119122384645224434499584) (-.f64 a (*.f64 t a)) (if (<=.f64 z 7160128975248697/20547405865423334012660116730000502599806014854778022888665159777612234977722971961381509907334329887605402222094446162941482157227280483840343026447858909570137592465345486711686186554235635614340989264592896) (+.f64 x (*.f64 t b)) (if (<=.f64 z 8829190657934959/15829145694278690179872161345257420162248406342477557754500035589945422406818039498900249667919554879334250971265032917718487362195632077437922953926521162746662833417516744704) (+.f64 x (*.f64 y b)) (if (<=.f64 z 7373608204123009/53631231719770388398296099992823384509917463282369573510894245774887056120294187907207497192667613710760127432745944203415015531247786279785734596024336384) (+.f64 a (*.f64 -2 b)) (if (<=.f64 z 3949999999999999968704166884442442998247434868356321538355033303006674341863468374370251964416) (+.f64 x (*.f64 t b)) (-.f64 z (*.f64 z y))))))))))))))
(if (<=.f64 z -176668914978732482412920019353600) (-.f64 z (*.f64 z y)) (if (<=.f64 z -3975272409102253/35835915874844867368919076489095108449946327955754392558399825615420669938882575126094039892345713852416) (+.f64 a (*.f64 y b)) (if (<=.f64 z -3218263841500995/1062275985633534197379176413104937254659186235454063846398888276400807119721704485478325004530458571337778658972493002030693158675305414478819039957533174703887662541670786438063456256) (+.f64 x (*.f64 t b)) (if (<=.f64 z -5232803781712389/58652475225036720546649669496166069228998121824605496380296088990333059082962747718339142176408838912879328274880511426712364770830486275482511413333124259062810366582741426385442408983508948533749841936858614266830705773786598571244254795994059356766208) (+.f64 x (*.f64 y b)) (if (<=.f64 z -2069357575461277/2163894399531684849059183759018052020301198647443953754636127064173256304872345024407213080115843841616586321892381199068702095603722999960578207655784200507016751857659924824755124296402642702553187257992033027703390323887110396882282073697349781407701150027357134841184256) (-.f64 a (*.f64 t a)) (if (<=.f64 z -772904348411337/70906491683854249133971333415503528601229677279443476631916611638829262598057001759775558209235971002092300595769547131083230268742795262708226708464736682213924924871800416657575912944521796077262840069882938251784694133132833485038618990914757637167551284096438594475925700608) (+.f64 x (*.f64 t b)) (if (<=.f64 z 7197894732483669/790633801981682102939434948120770730662330663141180149831645929794649763937481823796720248833738767559324522907487546528866440380413255769011771093518509804380927438580337349079948858367551626332967842494034160424070341732127705853976966233004529516956289283251401443563802400840744150516352841830648461966045733363646464) (+.f64 a (*.f64 -2 b)) (if (<=.f64 z 7823382786442759/41855804968213567224547853478906320725054875457247406540771499545716837934567817284890561672488119458109166910841919797858872862722356017328064756151166307827869405370407152286801072676024887272960758524035337792904616958075776435777990406039363527010043736240963055342423554029893064011082834640896) (+.f64 x (*.f64 y b)) (if (<=.f64 z 3530399308862389/132073632783916311588084946229129151629711831509030380531990177256668475639181214868604313971914296973668598748314282169720586889875671384312634744615734894227096670999751271042182879419106610263256058227052797101037007073187890434709599224691759119122384645224434499584) (-.f64 a (*.f64 t a)) (if (<=.f64 z 3319026342905755/12420144738405671481191835907700020442055088136933572889112416304208407621491015090647027270629171823603901845577048585649372640352918515131554298200329449113635639808166799244402122285052787558602103993549731750007142774830528462848) (+.f64 x (*.f64 t b)) (if (<=.f64 z 4162245864801687/2839213766779714416208296124562517712318911565184836172974571090549372219192960637992933791850638927971728600024477257552869537611776) (+.f64 x (*.f64 y b)) (if (<=.f64 z 3949999999999999968704166884442442998247434868356321538355033303006674341863468374370251964416) (+.f64 x (*.f64 t b)) (-.f64 z (*.f64 z y))))))))))))))
(if (<=.f64 z -176668914978732482412920019353600) (-.f64 z (*.f64 z y)) (if (<=.f64 z -3975272409102253/35835915874844867368919076489095108449946327955754392558399825615420669938882575126094039892345713852416) (+.f64 a (*.f64 y b)) (if (<=.f64 z -3218263841500995/1062275985633534197379176413104937254659186235454063846398888276400807119721704485478325004530458571337778658972493002030693158675305414478819039957533174703887662541670786438063456256) (+.f64 x (*.f64 t b)) (if (<=.f64 z -7129506421708419/1167984798111281975972139931059274579172666497855631342228273284582214442805421410945513679697247078343332431250840168271536308408672112127552681297848886832192510636636227827221215793215130566656) (+.f64 a (*.f64 -2 b)) (if (<=.f64 z -2069357575461277/2163894399531684849059183759018052020301198647443953754636127064173256304872345024407213080115843841616586321892381199068702095603722999960578207655784200507016751857659924824755124296402642702553187257992033027703390323887110396882282073697349781407701150027357134841184256) (+.f64 x (*.f64 y b)) (if (<=.f64 z -772904348411337/70906491683854249133971333415503528601229677279443476631916611638829262598057001759775558209235971002092300595769547131083230268742795262708226708464736682213924924871800416657575912944521796077262840069882938251784694133132833485038618990914757637167551284096438594475925700608) (+.f64 x (*.f64 t b)) (if (<=.f64 z 4269955187367975/2063650512248692368563827284830142994214247367328599695812346519635444931862206482321942405811160890213571855442410658901884170154307365379884917884620857722298385484371113610034107490923540785363375909797699954703703235518560788042337487885808736236287260081631789056) (+.f64 a (*.f64 -2 b)) (if (<=.f64 z 3949999999999999968704166884442442998247434868356321538355033303006674341863468374370251964416) (+.f64 x (*.f64 t b)) (-.f64 z (*.f64 z y))))))))))
(if (<=.f64 z -176668914978732482412920019353600) (-.f64 z (*.f64 z y)) (if (<=.f64 z -3975272409102253/35835915874844867368919076489095108449946327955754392558399825615420669938882575126094039892345713852416) (+.f64 a (*.f64 y b)) (if (<=.f64 z -772904348411337/70906491683854249133971333415503528601229677279443476631916611638829262598057001759775558209235971002092300595769547131083230268742795262708226708464736682213924924871800416657575912944521796077262840069882938251784694133132833485038618990914757637167551284096438594475925700608) (+.f64 x (*.f64 y b)) (if (<=.f64 z 7197894732483669/790633801981682102939434948120770730662330663141180149831645929794649763937481823796720248833738767559324522907487546528866440380413255769011771093518509804380927438580337349079948858367551626332967842494034160424070341732127705853976966233004529516956289283251401443563802400840744150516352841830648461966045733363646464) (+.f64 a (*.f64 -2 b)) (if (<=.f64 z 114999999999999999198784690215396627249834481935077628192554752491625231509434127362595749888) (+.f64 x (*.f64 y b)) (-.f64 z (*.f64 z y)))))))
(if (<=.f64 z -176668914978732482412920019353600) (-.f64 z (*.f64 z y)) (if (<=.f64 z -5232803781712389/58652475225036720546649669496166069228998121824605496380296088990333059082962747718339142176408838912879328274880511426712364770830486275482511413333124259062810366582741426385442408983508948533749841936858614266830705773786598571244254795994059356766208) (+.f64 a (*.f64 y b)) (if (<=.f64 z 1010013615111337/39916806190694396233127454260736771321349025208709150830050944848744237837379281315699159309852714021786848936883849904879448759767871873214783435965696628406400113459021713530350754428887259743653067134890878479866616209102417407777777105368960883150142418137515120832847169904606880198557696) (+.f64 a (*.f64 -2 b)) (if (<=.f64 z 3530399308862389/132073632783916311588084946229129151629711831509030380531990177256668475639181214868604313971914296973668598748314282169720586889875671384312634744615734894227096670999751271042182879419106610263256058227052797101037007073187890434709599224691759119122384645224434499584) (*.f64 a (neg.f64 t)) (if (<=.f64 z 3319026342905755/12420144738405671481191835907700020442055088136933572889112416304208407621491015090647027270629171823603901845577048585649372640352918515131554298200329449113635639808166799244402122285052787558602103993549731750007142774830528462848) (*.f64 (-.f64 t 2) b) (if (<=.f64 z 7373608204123009/53631231719770388398296099992823384509917463282369573510894245774887056120294187907207497192667613710760127432745944203415015531247786279785734596024336384) (+.f64 a (*.f64 y b)) (if (<=.f64 z 114999999999999999198784690215396627249834481935077628192554752491625231509434127362595749888) x (-.f64 z (*.f64 z y)))))))))
(if (<=.f64 z -176668914978732482412920019353600) (-.f64 z (*.f64 z y)) (if (<=.f64 z -5232803781712389/58652475225036720546649669496166069228998121824605496380296088990333059082962747718339142176408838912879328274880511426712364770830486275482511413333124259062810366582741426385442408983508948533749841936858614266830705773786598571244254795994059356766208) (+.f64 a (*.f64 y b)) (if (<=.f64 z 1010013615111337/39916806190694396233127454260736771321349025208709150830050944848744237837379281315699159309852714021786848936883849904879448759767871873214783435965696628406400113459021713530350754428887259743653067134890878479866616209102417407777777105368960883150142418137515120832847169904606880198557696) (+.f64 a (*.f64 -2 b)) (if (<=.f64 z 3530399308862389/132073632783916311588084946229129151629711831509030380531990177256668475639181214868604313971914296973668598748314282169720586889875671384312634744615734894227096670999751271042182879419106610263256058227052797101037007073187890434709599224691759119122384645224434499584) (*.f64 a (neg.f64 t)) (if (<=.f64 z 3319026342905755/12420144738405671481191835907700020442055088136933572889112416304208407621491015090647027270629171823603901845577048585649372640352918515131554298200329449113635639808166799244402122285052787558602103993549731750007142774830528462848) (*.f64 t b) (if (<=.f64 z 7373608204123009/53631231719770388398296099992823384509917463282369573510894245774887056120294187907207497192667613710760127432745944203415015531247786279785734596024336384) (+.f64 a (*.f64 y b)) (if (<=.f64 z 114999999999999999198784690215396627249834481935077628192554752491625231509434127362595749888) x (-.f64 z (*.f64 z y)))))))))
(if (<=.f64 z -176668914978732482412920019353600) (-.f64 z (*.f64 z y)) (if (<=.f64 z 7373608204123009/53631231719770388398296099992823384509917463282369573510894245774887056120294187907207497192667613710760127432745944203415015531247786279785734596024336384) (+.f64 a (*.f64 y b)) (if (<=.f64 z 114999999999999999198784690215396627249834481935077628192554752491625231509434127362595749888) x (-.f64 z (*.f64 z y)))))
(if (<=.f64 z -4637105753254294192128) (-.f64 z (*.f64 z y)) (if (<=.f64 z -8175971924123953/689456532887748412341091025928864224451014138635639044112158674527024860928026977516082500242976073479223111693916991352080883023896091539947888937618883326765331077022147490374177752073413947198182949091512336515072) (*.f64 (-.f64 b z) y) (if (<=.f64 z 114999999999999999198784690215396627249834481935077628192554752491625231509434127362595749888) x (-.f64 z (*.f64 z y)))))
(if (<=.f64 a -819999999999999972602164950849701730873517069487690620832366855648211625550717449619557175054296566662801915904) a (if (<=.f64 a -29020851076483838038001215956855029760) (*.f64 a (neg.f64 t)) (if (<=.f64 a -1364919046851093020308548257579008) a (if (<=.f64 a -5144624764053201/170141183460469231731687303715884105728) (*.f64 (-.f64 b z) y) (if (<=.f64 a -30675370841793/1081947199765842424529591879509026010150599323721976877318063532086628152436172512203606540057921920808293160946190599534351047801861499980289103827892100253508375928829962412377562148201321351276593628996016513851695161943555198441141036848674890703850575013678567420592128) x (if (<=.f64 a 1493165678064271/1627933211152308172382776316094057079381044512284157265721742629825204403764070329961287158415906809263410622703474912218234570716337735615323084973713581554222450580936038710562274972146438970881094974642550439936936217782587026682413056) (*.f64 (-.f64 b z) y) (if (<=.f64 a 2647859014570463/22592111669665739975592870737637022906810831294812620197467215446901550642889587999246991367961839975767182923986271972624986374927027127581012424707895568851446368731861728964581056579941628221790058875830676242925879296) x (if (<=.f64 a 863006353468907/17822033662586700072817076584766762987864173856439687228824970773044043621908896041038721919208482030385321521771853153557377752817872804680674458280164899172859354196719784961261227313463296) (*.f64 t b) (if (<=.f64 a 3917796716117839/53631231719770388398296099992823384509917463282369573510894245774887056120294187907207497192667613710760127432745944203415015531247786279785734596024336384) (*.f64 (-.f64 b z) y) (if (<=.f64 a 880000000000000012875011802993888267253637829320896452165177492709420800541010430001152) x a))))))))))
(if (<=.f64 t -38999999999999999294645031474840295390609088114102076258359945387518892648471945850029787660842965237820376299762480147092007085726956617232035827580842882654598525478448502974550673647682386958348349422943406181946582302051222758927368192) (*.f64 t b) (if (<=.f64 t -5799999999999999767528059173801854482143445516288) (*.f64 a (neg.f64 t)) (if (<=.f64 t -5714924144197591/26959946667150639794667015087019630673637144422540572481103610249216) x (if (<=.f64 t 8186598303647423/97032380768794308446811218028906409703555376069793538196190752376628184542898555395679900551790404871905483168570692075385723752757175899465267954690073821200278436001303119096891580351974902801578937449607279296930802928363503616) a (if (<=.f64 t 6565265174875691/612360413832167804618481300175204950565278972827733245154176943827040045789568780701801476101110276210469073715640490142747228062965884323130340172286597179476547016660734615078156785793174374530940928) (*.f64 y b) (if (<=.f64 t 21500000000000001262914176917979022280695435543972814677894401253242337793184657529235634323038469968749991131815929606652976289332895158519723390958480797049467490977972224) x (*.f64 t b)))))))
(if (<=.f64 a -9999999999999999371534524623368764100273307559896873275206250678451924602685103382037576783819090846734548822294900033162112051840457868829614121240178061963384891963422539776) a (if (<=.f64 a -8408526847420205/34622310392506957584946940144288832324819178359103260074178033026772100877957520390515409281853501465865381150278099185099233529659567999369251322492547208112268029722558797196081988742442283240850996127872528443254245182193766350116513179157596502523218400437714157458948096) x (if (<=.f64 a 1390811250077931/2615987810513347951534240842431645045315929716077962908798218721607302370910488580305660104530507466131822931927619987366179553920147251083004047259447894239241837835650447017925067042251555454560047407752208612056538559879736027236124400377460220438127733515060190958901472126868316500692677165056) (*.f64 t b) (if (<=.f64 a 880000000000000012875011802993888267253637829320896452165177492709420800541010430001152) x a))))
(if (<=.f64 a -9999999999999999371534524623368764100273307559896873275206250678451924602685103382037576783819090846734548822294900033162112051840457868829614121240178061963384891963422539776) a (if (<=.f64 a 880000000000000012875011802993888267253637829320896452165177492709420800541010430001152) x a))
a
Outputs
(+.f64 (-.f64 (-.f64 x (-.f64 (*.f64 z y) z)) (*.f64 (-.f64 t 1) a)) (*.f64 (-.f64 (+.f64 y t) 2) b))
(+.f64 (-.f64 (-.f64 x (-.f64 (*.f64 z y) z)) (*.f64 (-.f64 t 1) a)) (*.f64 (+.f64 (+.f64 y t) -2) b))
(+.f64 (+.f64 (-.f64 x (-.f64 (*.f64 z y) z)) (*.f64 a (-.f64 1 t))) (*.f64 (+.f64 (+.f64 y t) -2) b))
(if (<=.f64 y -7189573327310705/68719476736) (+.f64 (-.f64 (-.f64 x (-.f64 (*.f64 z y) z)) (*.f64 (-.f64 t 1) a)) (*.f64 y b)) (if (<=.f64 y 44236139474599608) (+.f64 (*.f64 a (-.f64 1 t)) (+.f64 z (+.f64 (*.f64 b (-.f64 t 2)) x))) (+.f64 (-.f64 (-.f64 x (-.f64 (*.f64 z y) z)) (*.f64 (-.f64 t 1) a)) (*.f64 y b))))
(if (<=.f64 y -7189573327310705/68719476736) (+.f64 (-.f64 (-.f64 x (-.f64 (*.f64 z y) z)) (*.f64 (-.f64 t 1) a)) (*.f64 y b)) (if (<=.f64 y 44236139474599608) (+.f64 (*.f64 a (-.f64 1 t)) (+.f64 z (+.f64 x (*.f64 b (-.f64 t 2))))) (+.f64 (-.f64 (-.f64 x (-.f64 (*.f64 z y) z)) (*.f64 (-.f64 t 1) a)) (*.f64 y b))))
(if (<=.f64 y -7189573327310705/68719476736) (+.f64 (+.f64 (-.f64 x (-.f64 (*.f64 z y) z)) (*.f64 a (-.f64 1 t))) (*.f64 y b)) (if (<=.f64 y 44236139474599608) (+.f64 (*.f64 a (-.f64 1 t)) (+.f64 z (+.f64 x (*.f64 b (-.f64 t 2))))) (+.f64 (+.f64 (-.f64 x (-.f64 (*.f64 z y) z)) (*.f64 a (-.f64 1 t))) (*.f64 y b))))
(if (<=.f64 t -29999999999999999796628460230848839293851253258321920) (+.f64 (*.f64 a (-.f64 1 t)) (+.f64 z (+.f64 (*.f64 b (-.f64 t 2)) x))) (if (<=.f64 t 5135168363328863/77371252455336267181195264) (+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 y 2) b) x))) (if (<=.f64 t 900000000000000036434149672042773111737363526720684032) (+.f64 (*.f64 a (-.f64 1 t)) (+.f64 z (+.f64 (*.f64 b (-.f64 t 2)) x))) (if (<=.f64 t 219999999999999994830344332807922507028730738984657576230121148196651479930568447624571703757262296568171195307889344934967442470338560) (+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 y 2) b) x))) (+.f64 (*.f64 a (-.f64 1 t)) (+.f64 z (+.f64 (*.f64 b (-.f64 t 2)) x)))))))
(if (<=.f64 t -29999999999999999796628460230848839293851253258321920) (+.f64 (*.f64 a (-.f64 1 t)) (+.f64 z (+.f64 x (*.f64 b (-.f64 t 2))))) (if (<=.f64 t 5135168363328863/77371252455336267181195264) (+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 x (*.f64 b (+.f64 y -2))))) (if (<=.f64 t 900000000000000036434149672042773111737363526720684032) (+.f64 (*.f64 a (-.f64 1 t)) (+.f64 z (+.f64 x (*.f64 b (-.f64 t 2))))) (if (<=.f64 t 219999999999999994830344332807922507028730738984657576230121148196651479930568447624571703757262296568171195307889344934967442470338560) (+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 x (*.f64 b (+.f64 y -2))))) (+.f64 (*.f64 a (-.f64 1 t)) (+.f64 z (+.f64 x (*.f64 b (-.f64 t 2)))))))))
(if (<=.f64 t -67999999999999997887839867092527823170725567294614403342254149508295948982415069291076403828099499293266887981317871808033487310992331621204205733965215085759960742365422705078392370367878525328563817916860719141485191127546161578856693229371087656267521458176) (+.f64 (*.f64 a (neg.f64 t)) (*.f64 (-.f64 (+.f64 y t) 2) b)) (if (<=.f64 t -388841046447759744) (+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x)) (if (<=.f64 t 3308617157617541785321472) (+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 y 2) b) x))) (if (<=.f64 t 900000000000000036434149672042773111737363526720684032) (+.f64 (*.f64 a (neg.f64 t)) (*.f64 (-.f64 (+.f64 y t) 2) b)) (if (<=.f64 t 21000000000000001393190536992691363971421141672750033342813957041383339458330676172405577324773762576978122516226130196667937570778196620812799312092391564852364253771857920) (+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 (*.f64 (-.f64 y 2) b) x))) (+.f64 (*.f64 a (neg.f64 t)) (*.f64 (-.f64 (+.f64 y t) 2) b)))))))
(if (<=.f64 t -67999999999999997887839867092527823170725567294614403342254149508295948982415069291076403828099499293266887981317871808033487310992331621204205733965215085759960742365422705078392370367878525328563817916860719141485191127546161578856693229371087656267521458176) (+.f64 (*.f64 (+.f64 (+.f64 y t) -2) b) (*.f64 a (neg.f64 t))) (if (<=.f64 t -388841046447759744) (+.f64 (*.f64 a (-.f64 1 t)) (+.f64 x (*.f64 z (-.f64 1 y)))) (if (<=.f64 t 3308617157617541785321472) (+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 x (*.f64 b (+.f64 y -2))))) (if (<=.f64 t 900000000000000036434149672042773111737363526720684032) (+.f64 (*.f64 (+.f64 (+.f64 y t) -2) b) (*.f64 a (neg.f64 t))) (if (<=.f64 t 21000000000000001393190536992691363971421141672750033342813957041383339458330676172405577324773762576978122516226130196667937570778196620812799312092391564852364253771857920) (+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 x (*.f64 b (+.f64 y -2))))) (+.f64 (*.f64 (+.f64 (+.f64 y t) -2) b) (*.f64 a (neg.f64 t))))))))
(if (<=.f64 t -67999999999999997887839867092527823170725567294614403342254149508295948982415069291076403828099499293266887981317871808033487310992331621204205733965215085759960742365422705078392370367878525328563817916860719141485191127546161578856693229371087656267521458176) (-.f64 (*.f64 (+.f64 (+.f64 y t) -2) b) (*.f64 t a)) (if (<=.f64 t -388841046447759744) (+.f64 (*.f64 a (-.f64 1 t)) (+.f64 x (*.f64 z (-.f64 1 y)))) (if (<=.f64 t 3308617157617541785321472) (+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 x (*.f64 b (+.f64 y -2))))) (if (<=.f64 t 900000000000000036434149672042773111737363526720684032) (-.f64 (*.f64 (+.f64 (+.f64 y t) -2) b) (*.f64 t a)) (if (<=.f64 t 21000000000000001393190536992691363971421141672750033342813957041383339458330676172405577324773762576978122516226130196667937570778196620812799312092391564852364253771857920) (+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) (+.f64 x (*.f64 b (+.f64 y -2))))) (-.f64 (*.f64 (+.f64 (+.f64 y t) -2) b) (*.f64 t a)))))))
(if (<=.f64 y -244999999999999997967723015099168679022383391387375762951925072858890646255706086972527006668454157827443329807020982272) (+.f64 (*.f64 z (neg.f64 y)) (*.f64 (-.f64 (+.f64 y t) 2) b)) (if (<=.f64 y -2709046370909765/140737488355328) (+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x)) (if (<=.f64 y 44236139474599608) (+.f64 a (+.f64 z (+.f64 (*.f64 b (-.f64 t 2)) x))) (if (<=.f64 y 1400000000000000029342321086103669444606849652607985445378232365770109473918121200323777111114109617407150333006650015744) (+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x)) (if (<=.f64 y 1999999999999999893189745903130456677987053736438977713089142880627189412987511965773920050358187058649987332174230712262070456479105474777052558536156287047383518309811773687971446784) (+.f64 (*.f64 z (neg.f64 y)) (*.f64 (-.f64 (+.f64 y t) 2) b)) (+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 z (-.f64 1 y)) x)))))))
(if (<=.f64 y -244999999999999997967723015099168679022383391387375762951925072858890646255706086972527006668454157827443329807020982272) (+.f64 (*.f64 (+.f64 (+.f64 y t) -2) b) (*.f64 z (neg.f64 y))) (if (<=.f64 y -2709046370909765/140737488355328) (+.f64 (*.f64 a (-.f64 1 t)) (+.f64 x (*.f64 z (-.f64 1 y)))) (if (<=.f64 y 44236139474599608) (+.f64 a (+.f64 z (+.f64 x (*.f64 b (-.f64 t 2))))) (if (<=.f64 y 1400000000000000029342321086103669444606849652607985445378232365770109473918121200323777111114109617407150333006650015744) (+.f64 (*.f64 a (-.f64 1 t)) (+.f64 x (*.f64 z (-.f64 1 y)))) (if (<=.f64 y 1999999999999999893189745903130456677987053736438977713089142880627189412987511965773920050358187058649987332174230712262070456479105474777052558536156287047383518309811773687971446784) (+.f64 (*.f64 (+.f64 (+.f64 y t) -2) b) (*.f64 z (neg.f64 y))) (+.f64 (*.f64 a (-.f64 1 t)) (+.f64 x (*.f64 z (-.f64 1 y)))))))))
(if (<=.f64 y -244999999999999997967723015099168679022383391387375762951925072858890646255706086972527006668454157827443329807020982272) (-.f64 (*.f64 (+.f64 (+.f64 y t) -2) b) (*.f64 z y)) (if (<=.f64 y -2709046370909765/140737488355328) (+.f64 (*.f64 a (-.f64 1 t)) (+.f64 x (*.f64 z (-.f64 1 y)))) (if (<=.f64 y 44236139474599608) (+.f64 a (+.f64 z (+.f64 x (*.f64 b (-.f64 t 2))))) (if (<=.f64 y 1400000000000000029342321086103669444606849652607985445378232365770109473918121200323777111114109617407150333006650015744) (+.f64 (*.f64 a (-.f64 1 t)) (+.f64 x (*.f64 z (-.f64 1 y)))) (if (<=.f64 y 1999999999999999893189745903130456677987053736438977713089142880627189412987511965773920050358187058649987332174230712262070456479105474777052558536156287047383518309811773687971446784) (-.f64 (*.f64 (+.f64 (+.f64 y t) -2) b) (*.f64 z y)) (+.f64 (*.f64 a (-.f64 1 t)) (+.f64 x (*.f64 z (-.f64 1 y)))))))))
(if (<=.f64 y -8600000000000000025668486269776413959583567568522954521599300591368912472478505530355995377664) (+.f64 (*.f64 z (neg.f64 y)) (*.f64 (-.f64 (+.f64 y t) 2) b)) (if (<=.f64 y -2709046370909765/140737488355328) (+.f64 (*.f64 a (-.f64 1 t)) (+.f64 z x)) (if (<=.f64 y 1400000000000000029342321086103669444606849652607985445378232365770109473918121200323777111114109617407150333006650015744) (+.f64 a (+.f64 z (+.f64 (*.f64 b (-.f64 t 2)) x))) (+.f64 (*.f64 z (neg.f64 y)) (*.f64 (-.f64 (+.f64 y t) 2) b)))))
(if (<=.f64 y -8600000000000000025668486269776413959583567568522954521599300591368912472478505530355995377664) (+.f64 (*.f64 (+.f64 (+.f64 y t) -2) b) (*.f64 z (neg.f64 y))) (if (<=.f64 y -2709046370909765/140737488355328) (+.f64 (*.f64 a (-.f64 1 t)) (+.f64 x z)) (if (<=.f64 y 1400000000000000029342321086103669444606849652607985445378232365770109473918121200323777111114109617407150333006650015744) (+.f64 a (+.f64 z (+.f64 x (*.f64 b (-.f64 t 2))))) (+.f64 (*.f64 (+.f64 (+.f64 y t) -2) b) (*.f64 z (neg.f64 y))))))
(if (<=.f64 y -8600000000000000025668486269776413959583567568522954521599300591368912472478505530355995377664) (-.f64 (*.f64 (+.f64 (+.f64 y t) -2) b) (*.f64 z y)) (if (<=.f64 y -2709046370909765/140737488355328) (+.f64 (*.f64 a (-.f64 1 t)) (+.f64 x z)) (if (<=.f64 y 1400000000000000029342321086103669444606849652607985445378232365770109473918121200323777111114109617407150333006650015744) (+.f64 a (+.f64 z (+.f64 x (*.f64 b (-.f64 t 2))))) (-.f64 (*.f64 (+.f64 (+.f64 y t) -2) b) (*.f64 z y)))))
(if (<=.f64 y -8600000000000000025668486269776413959583567568522954521599300591368912472478505530355995377664) (-.f64 (*.f64 (+.f64 (+.f64 y t) -2) b) (*.f64 z y)) (if (<=.f64 y -2709046370909765/140737488355328) (-.f64 (+.f64 x z) (*.f64 (-.f64 t 1) a)) (if (<=.f64 y 1400000000000000029342321086103669444606849652607985445378232365770109473918121200323777111114109617407150333006650015744) (+.f64 a (+.f64 z (+.f64 x (*.f64 b (-.f64 t 2))))) (-.f64 (*.f64 (+.f64 (+.f64 y t) -2) b) (*.f64 z y)))))
(if (<=.f64 y -8600000000000000025668486269776413959583567568522954521599300591368912472478505530355995377664) (*.f64 (-.f64 b z) y) (if (<=.f64 y -2709046370909765/140737488355328) (+.f64 (*.f64 a (-.f64 1 t)) (+.f64 z x)) (if (<=.f64 y 1400000000000000029342321086103669444606849652607985445378232365770109473918121200323777111114109617407150333006650015744) (+.f64 a (+.f64 z (+.f64 (*.f64 b (-.f64 t 2)) x))) (-.f64 (*.f64 y b) (*.f64 z y)))))
(if (<=.f64 y -8600000000000000025668486269776413959583567568522954521599300591368912472478505530355995377664) (*.f64 y (-.f64 b z)) (if (<=.f64 y -2709046370909765/140737488355328) (+.f64 (*.f64 a (-.f64 1 t)) (+.f64 x z)) (if (<=.f64 y 1400000000000000029342321086103669444606849652607985445378232365770109473918121200323777111114109617407150333006650015744) (+.f64 a (+.f64 z (+.f64 x (*.f64 b (-.f64 t 2))))) (-.f64 (*.f64 y b) (*.f64 z y)))))
(if (<=.f64 y -8600000000000000025668486269776413959583567568522954521599300591368912472478505530355995377664) (*.f64 y (-.f64 b z)) (if (<=.f64 y -2709046370909765/140737488355328) (-.f64 (+.f64 x z) (*.f64 (-.f64 t 1) a)) (if (<=.f64 y 1400000000000000029342321086103669444606849652607985445378232365770109473918121200323777111114109617407150333006650015744) (+.f64 a (+.f64 z (+.f64 x (*.f64 b (-.f64 t 2))))) (-.f64 (*.f64 y b) (*.f64 z y)))))
(if (<=.f64 b -935124119503533/524288) (+.f64 x (*.f64 (-.f64 (+.f64 y t) 2) b)) (if (<=.f64 b 1609464785305689/105312291668557186697918027683670432318895095400549111254310977536) (+.f64 (*.f64 a (-.f64 1 t)) (+.f64 z x)) (+.f64 x (*.f64 (-.f64 (+.f64 y t) 2) b))))
(if (<=.f64 b -935124119503533/524288) (+.f64 x (*.f64 (+.f64 (+.f64 y t) -2) b)) (if (<=.f64 b 1609464785305689/105312291668557186697918027683670432318895095400549111254310977536) (+.f64 (*.f64 a (-.f64 1 t)) (+.f64 x z)) (+.f64 x (*.f64 (+.f64 (+.f64 y t) -2) b))))
(if (<=.f64 b -935124119503533/524288) (+.f64 x (*.f64 (+.f64 (+.f64 y t) -2) b)) (if (<=.f64 b 1609464785305689/105312291668557186697918027683670432318895095400549111254310977536) (-.f64 (+.f64 x z) (*.f64 (-.f64 t 1) a)) (+.f64 x (*.f64 (+.f64 (+.f64 y t) -2) b))))
(if (<=.f64 b -935124119503533/524288) (-.f64 x (*.f64 b (-.f64 2 (+.f64 y t)))) (if (<=.f64 b 1609464785305689/105312291668557186697918027683670432318895095400549111254310977536) (-.f64 (+.f64 x z) (*.f64 (-.f64 t 1) a)) (-.f64 x (*.f64 b (-.f64 2 (+.f64 y t))))))
(if (<=.f64 b -2241583868545104673838727168) (*.f64 (-.f64 (+.f64 y t) 2) b) (if (<=.f64 b 6698032084084729/6427752177035961102167848369364650410088811975131171341205504) (+.f64 (*.f64 a (-.f64 1 t)) (+.f64 z x)) (if (<=.f64 b 4052466965042981/77371252455336267181195264) (*.f64 (-.f64 b z) y) (+.f64 (*.f64 b (-.f64 t 2)) x))))
(if (<=.f64 b -2241583868545104673838727168) (*.f64 (+.f64 (+.f64 y t) -2) b) (if (<=.f64 b 6698032084084729/6427752177035961102167848369364650410088811975131171341205504) (+.f64 (*.f64 a (-.f64 1 t)) (+.f64 x z)) (if (<=.f64 b 4052466965042981/77371252455336267181195264) (*.f64 y (-.f64 b z)) (+.f64 x (*.f64 b (-.f64 t 2))))))
(if (<=.f64 b -2241583868545104673838727168) (*.f64 (+.f64 (+.f64 y t) -2) b) (if (<=.f64 b 6698032084084729/6427752177035961102167848369364650410088811975131171341205504) (-.f64 (+.f64 x z) (*.f64 (-.f64 t 1) a)) (if (<=.f64 b 4052466965042981/77371252455336267181195264) (*.f64 y (-.f64 b z)) (+.f64 x (*.f64 b (-.f64 t 2))))))
(if (<=.f64 z -145000000000000009940839120176539900246269040074475576186942709500410571195611880192750790933815725242935186229457918102226347797683332409349367660544) (-.f64 z (*.f64 z y)) (if (<=.f64 z -310412030748403852817764431332183911912209128012736946269664407615176704) (+.f64 (*.f64 b (-.f64 t 2)) x) (if (<=.f64 z -176668914978732482412920019353600) (-.f64 z (*.f64 z y)) (if (<=.f64 z -4774198443976881/34996011596528190789960035633881941845650710894291398982812329702559247987190014771576210832368861184) (+.f64 a (*.f64 (-.f64 y 2) b)) (if (<=.f64 z -3218263841500995/1062275985633534197379176413104937254659186235454063846398888276400807119721704485478325004530458571337778658972493002030693158675305414478819039957533174703887662541670786438063456256) (*.f64 t (-.f64 b a)) (if (<=.f64 z -5232803781712389/58652475225036720546649669496166069228998121824605496380296088990333059082962747718339142176408838912879328274880511426712364770830486275482511413333124259062810366582741426385442408983508948533749841936858614266830705773786598571244254795994059356766208) (+.f64 x (*.f64 y b)) (if (<=.f64 z -2994020332600219/960962154087001629436308185025184878247905227974336452694771122017616840015261658617268505418282416748614914455642299215255384405286687137505466996049907860485085046091635529899088428785810612776957410293491536147754283397719630991265870577566668501257551872) (*.f64 t (-.f64 b a)) (if (<=.f64 z 1010013615111337/39916806190694396233127454260736771321349025208709150830050944848744237837379281315699159309852714021786848936883849904879448759767871873214783435965696628406400113459021713530350754428887259743653067134890878479866616209102417407777777105368960883150142418137515120832847169904606880198557696) (+.f64 (*.f64 b (-.f64 t 2)) x) (if (<=.f64 z 3530399308862389/132073632783916311588084946229129151629711831509030380531990177256668475639181214868604313971914296973668598748314282169720586889875671384312634744615734894227096670999751271042182879419106610263256058227052797101037007073187890434709599224691759119122384645224434499584) (-.f64 a (*.f64 t a)) (if (<=.f64 z 9400000000000000154802459760671964757701179955736185932086661545476448622736870041979741568324008208248187387904) (+.f64 (*.f64 b (-.f64 t 2)) x) (-.f64 z (*.f64 z y))))))))))))
(if (<=.f64 z -145000000000000009940839120176539900246269040074475576186942709500410571195611880192750790933815725242935186229457918102226347797683332409349367660544) (-.f64 z (*.f64 z y)) (if (<=.f64 z -310412030748403852817764431332183911912209128012736946269664407615176704) (+.f64 x (*.f64 b (-.f64 t 2))) (if (<=.f64 z -176668914978732482412920019353600) (-.f64 z (*.f64 z y)) (if (<=.f64 z -4774198443976881/34996011596528190789960035633881941845650710894291398982812329702559247987190014771576210832368861184) (+.f64 a (*.f64 b (+.f64 y -2))) (if (<=.f64 z -3218263841500995/1062275985633534197379176413104937254659186235454063846398888276400807119721704485478325004530458571337778658972493002030693158675305414478819039957533174703887662541670786438063456256) (*.f64 t (-.f64 b a)) (if (<=.f64 z -5232803781712389/58652475225036720546649669496166069228998121824605496380296088990333059082962747718339142176408838912879328274880511426712364770830486275482511413333124259062810366582741426385442408983508948533749841936858614266830705773786598571244254795994059356766208) (+.f64 x (*.f64 y b)) (if (<=.f64 z -2994020332600219/960962154087001629436308185025184878247905227974336452694771122017616840015261658617268505418282416748614914455642299215255384405286687137505466996049907860485085046091635529899088428785810612776957410293491536147754283397719630991265870577566668501257551872) (*.f64 t (-.f64 b a)) (if (<=.f64 z 1010013615111337/39916806190694396233127454260736771321349025208709150830050944848744237837379281315699159309852714021786848936883849904879448759767871873214783435965696628406400113459021713530350754428887259743653067134890878479866616209102417407777777105368960883150142418137515120832847169904606880198557696) (+.f64 x (*.f64 b (-.f64 t 2))) (if (<=.f64 z 3530399308862389/132073632783916311588084946229129151629711831509030380531990177256668475639181214868604313971914296973668598748314282169720586889875671384312634744615734894227096670999751271042182879419106610263256058227052797101037007073187890434709599224691759119122384645224434499584) (-.f64 a (*.f64 t a)) (if (<=.f64 z 9400000000000000154802459760671964757701179955736185932086661545476448622736870041979741568324008208248187387904) (+.f64 x (*.f64 b (-.f64 t 2))) (-.f64 z (*.f64 z y))))))))))))
(if (<=.f64 z -176668914978732482412920019353600) (-.f64 z (*.f64 z y)) (if (<=.f64 z -4774198443976881/34996011596528190789960035633881941845650710894291398982812329702559247987190014771576210832368861184) (+.f64 a (*.f64 (-.f64 y 2) b)) (if (<=.f64 z -3218263841500995/1062275985633534197379176413104937254659186235454063846398888276400807119721704485478325004530458571337778658972493002030693158675305414478819039957533174703887662541670786438063456256) (*.f64 t (-.f64 b a)) (if (<=.f64 z -5232803781712389/58652475225036720546649669496166069228998121824605496380296088990333059082962747718339142176408838912879328274880511426712364770830486275482511413333124259062810366582741426385442408983508948533749841936858614266830705773786598571244254795994059356766208) (+.f64 x (*.f64 y b)) (if (<=.f64 z -772904348411337/70906491683854249133971333415503528601229677279443476631916611638829262598057001759775558209235971002092300595769547131083230268742795262708226708464736682213924924871800416657575912944521796077262840069882938251784694133132833485038618990914757637167551284096438594475925700608) (+.f64 x (*.f64 t b)) (if (<=.f64 z 4269955187367975/2063650512248692368563827284830142994214247367328599695812346519635444931862206482321942405811160890213571855442410658901884170154307365379884917884620857722298385484371113610034107490923540785363375909797699954703703235518560788042337487885808736236287260081631789056) (+.f64 a (*.f64 (-.f64 y 2) b)) (if (<=.f64 z 3319026342905755/12420144738405671481191835907700020442055088136933572889112416304208407621491015090647027270629171823603901845577048585649372640352918515131554298200329449113635639808166799244402122285052787558602103993549731750007142774830528462848) (+.f64 x (*.f64 t b)) (if (<=.f64 z 7373608204123009/53631231719770388398296099992823384509917463282369573510894245774887056120294187907207497192667613710760127432745944203415015531247786279785734596024336384) (+.f64 a (*.f64 (-.f64 y 2) b)) (if (<=.f64 z 2180446471003353/7957171782556586274486115970349133441607298412757563479047423630290551952200534008528896) (+.f64 x (*.f64 t b)) (if (<=.f64 z 7546570474965597/3213876088517980551083924184682325205044405987565585670602752) (+.f64 a (*.f64 -2 b)) (if (<=.f64 z 6921880321123877/1496577676626844588240573268701473812127674924007424) (*.f64 z (neg.f64 y)) (if (<=.f64 z 3949999999999999968704166884442442998247434868356321538355033303006674341863468374370251964416) (+.f64 x (*.f64 t b)) (-.f64 z (*.f64 z y))))))))))))))
(if (<=.f64 z -176668914978732482412920019353600) (-.f64 z (*.f64 z y)) (if (<=.f64 z -4774198443976881/34996011596528190789960035633881941845650710894291398982812329702559247987190014771576210832368861184) (+.f64 a (*.f64 b (+.f64 y -2))) (if (<=.f64 z -3218263841500995/1062275985633534197379176413104937254659186235454063846398888276400807119721704485478325004530458571337778658972493002030693158675305414478819039957533174703887662541670786438063456256) (*.f64 t (-.f64 b a)) (if (<=.f64 z -5232803781712389/58652475225036720546649669496166069228998121824605496380296088990333059082962747718339142176408838912879328274880511426712364770830486275482511413333124259062810366582741426385442408983508948533749841936858614266830705773786598571244254795994059356766208) (+.f64 x (*.f64 y b)) (if (<=.f64 z -772904348411337/70906491683854249133971333415503528601229677279443476631916611638829262598057001759775558209235971002092300595769547131083230268742795262708226708464736682213924924871800416657575912944521796077262840069882938251784694133132833485038618990914757637167551284096438594475925700608) (+.f64 x (*.f64 t b)) (if (<=.f64 z 4269955187367975/2063650512248692368563827284830142994214247367328599695812346519635444931862206482321942405811160890213571855442410658901884170154307365379884917884620857722298385484371113610034107490923540785363375909797699954703703235518560788042337487885808736236287260081631789056) (+.f64 a (*.f64 b (+.f64 y -2))) (if (<=.f64 z 3319026342905755/12420144738405671481191835907700020442055088136933572889112416304208407621491015090647027270629171823603901845577048585649372640352918515131554298200329449113635639808166799244402122285052787558602103993549731750007142774830528462848) (+.f64 x (*.f64 t b)) (if (<=.f64 z 7373608204123009/53631231719770388398296099992823384509917463282369573510894245774887056120294187907207497192667613710760127432745944203415015531247786279785734596024336384) (+.f64 a (*.f64 b (+.f64 y -2))) (if (<=.f64 z 2180446471003353/7957171782556586274486115970349133441607298412757563479047423630290551952200534008528896) (+.f64 x (*.f64 t b)) (if (<=.f64 z 7546570474965597/3213876088517980551083924184682325205044405987565585670602752) (+.f64 a (*.f64 b -2)) (if (<=.f64 z 6921880321123877/1496577676626844588240573268701473812127674924007424) (*.f64 z (neg.f64 y)) (if (<=.f64 z 3949999999999999968704166884442442998247434868356321538355033303006674341863468374370251964416) (+.f64 x (*.f64 t b)) (-.f64 z (*.f64 z y))))))))))))))
(if (<=.f64 z -176668914978732482412920019353600) (-.f64 z (*.f64 z y)) (if (<=.f64 z -4774198443976881/34996011596528190789960035633881941845650710894291398982812329702559247987190014771576210832368861184) (+.f64 a (*.f64 y b)) (if (<=.f64 z -5123521069505271/2693189581592767235707386820034625876761773979045465016063119822371190863000105380922197266574125287028215280054363247469065949312094107577921441162573762995177074519617763634274131844036773231242902144888720064512) (*.f64 t (-.f64 b a)) (if (<=.f64 z -5232803781712389/58652475225036720546649669496166069228998121824605496380296088990333059082962747718339142176408838912879328274880511426712364770830486275482511413333124259062810366582741426385442408983508948533749841936858614266830705773786598571244254795994059356766208) (+.f64 x (*.f64 y b)) (if (<=.f64 z -772904348411337/70906491683854249133971333415503528601229677279443476631916611638829262598057001759775558209235971002092300595769547131083230268742795262708226708464736682213924924871800416657575912944521796077262840069882938251784694133132833485038618990914757637167551284096438594475925700608) (+.f64 x (*.f64 t b)) (if (<=.f64 z 7197894732483669/790633801981682102939434948120770730662330663141180149831645929794649763937481823796720248833738767559324522907487546528866440380413255769011771093518509804380927438580337349079948858367551626332967842494034160424070341732127705853976966233004529516956289283251401443563802400840744150516352841830648461966045733363646464) (+.f64 a (*.f64 -2 b)) (if (<=.f64 z 7823382786442759/41855804968213567224547853478906320725054875457247406540771499545716837934567817284890561672488119458109166910841919797858872862722356017328064756151166307827869405370407152286801072676024887272960758524035337792904616958075776435777990406039363527010043736240963055342423554029893064011082834640896) (+.f64 x (*.f64 y b)) (if (<=.f64 z 3530399308862389/132073632783916311588084946229129151629711831509030380531990177256668475639181214868604313971914296973668598748314282169720586889875671384312634744615734894227096670999751271042182879419106610263256058227052797101037007073187890434709599224691759119122384645224434499584) (-.f64 a (*.f64 t a)) (if (<=.f64 z 7160128975248697/20547405865423334012660116730000502599806014854778022888665159777612234977722971961381509907334329887605402222094446162941482157227280483840343026447858909570137592465345486711686186554235635614340989264592896) (+.f64 x (*.f64 t b)) (if (<=.f64 z 8829190657934959/15829145694278690179872161345257420162248406342477557754500035589945422406818039498900249667919554879334250971265032917718487362195632077437922953926521162746662833417516744704) (+.f64 x (*.f64 y b)) (if (<=.f64 z 7373608204123009/53631231719770388398296099992823384509917463282369573510894245774887056120294187907207497192667613710760127432745944203415015531247786279785734596024336384) (+.f64 a (*.f64 -2 b)) (if (<=.f64 z 3949999999999999968704166884442442998247434868356321538355033303006674341863468374370251964416) (+.f64 x (*.f64 t b)) (-.f64 z (*.f64 z y))))))))))))))
(if (<=.f64 z -176668914978732482412920019353600) (-.f64 z (*.f64 z y)) (if (<=.f64 z -4774198443976881/34996011596528190789960035633881941845650710894291398982812329702559247987190014771576210832368861184) (+.f64 a (*.f64 y b)) (if (<=.f64 z -5123521069505271/2693189581592767235707386820034625876761773979045465016063119822371190863000105380922197266574125287028215280054363247469065949312094107577921441162573762995177074519617763634274131844036773231242902144888720064512) (*.f64 t (-.f64 b a)) (if (<=.f64 z -5232803781712389/58652475225036720546649669496166069228998121824605496380296088990333059082962747718339142176408838912879328274880511426712364770830486275482511413333124259062810366582741426385442408983508948533749841936858614266830705773786598571244254795994059356766208) (+.f64 x (*.f64 y b)) (if (<=.f64 z -772904348411337/70906491683854249133971333415503528601229677279443476631916611638829262598057001759775558209235971002092300595769547131083230268742795262708226708464736682213924924871800416657575912944521796077262840069882938251784694133132833485038618990914757637167551284096438594475925700608) (+.f64 x (*.f64 t b)) (if (<=.f64 z 7197894732483669/790633801981682102939434948120770730662330663141180149831645929794649763937481823796720248833738767559324522907487546528866440380413255769011771093518509804380927438580337349079948858367551626332967842494034160424070341732127705853976966233004529516956289283251401443563802400840744150516352841830648461966045733363646464) (+.f64 a (*.f64 b -2)) (if (<=.f64 z 7823382786442759/41855804968213567224547853478906320725054875457247406540771499545716837934567817284890561672488119458109166910841919797858872862722356017328064756151166307827869405370407152286801072676024887272960758524035337792904616958075776435777990406039363527010043736240963055342423554029893064011082834640896) (+.f64 x (*.f64 y b)) (if (<=.f64 z 3530399308862389/132073632783916311588084946229129151629711831509030380531990177256668475639181214868604313971914296973668598748314282169720586889875671384312634744615734894227096670999751271042182879419106610263256058227052797101037007073187890434709599224691759119122384645224434499584) (-.f64 a (*.f64 t a)) (if (<=.f64 z 7160128975248697/20547405865423334012660116730000502599806014854778022888665159777612234977722971961381509907334329887605402222094446162941482157227280483840343026447858909570137592465345486711686186554235635614340989264592896) (+.f64 x (*.f64 t b)) (if (<=.f64 z 8829190657934959/15829145694278690179872161345257420162248406342477557754500035589945422406818039498900249667919554879334250971265032917718487362195632077437922953926521162746662833417516744704) (+.f64 x (*.f64 y b)) (if (<=.f64 z 7373608204123009/53631231719770388398296099992823384509917463282369573510894245774887056120294187907207497192667613710760127432745944203415015531247786279785734596024336384) (+.f64 a (*.f64 b -2)) (if (<=.f64 z 3949999999999999968704166884442442998247434868356321538355033303006674341863468374370251964416) (+.f64 x (*.f64 t b)) (-.f64 z (*.f64 z y))))))))))))))
(if (<=.f64 z -176668914978732482412920019353600) (-.f64 z (*.f64 z y)) (if (<=.f64 z -3975272409102253/35835915874844867368919076489095108449946327955754392558399825615420669938882575126094039892345713852416) (+.f64 a (*.f64 y b)) (if (<=.f64 z -3218263841500995/1062275985633534197379176413104937254659186235454063846398888276400807119721704485478325004530458571337778658972493002030693158675305414478819039957533174703887662541670786438063456256) (+.f64 x (*.f64 t b)) (if (<=.f64 z -5232803781712389/58652475225036720546649669496166069228998121824605496380296088990333059082962747718339142176408838912879328274880511426712364770830486275482511413333124259062810366582741426385442408983508948533749841936858614266830705773786598571244254795994059356766208) (+.f64 x (*.f64 y b)) (if (<=.f64 z -2069357575461277/2163894399531684849059183759018052020301198647443953754636127064173256304872345024407213080115843841616586321892381199068702095603722999960578207655784200507016751857659924824755124296402642702553187257992033027703390323887110396882282073697349781407701150027357134841184256) (-.f64 a (*.f64 t a)) (if (<=.f64 z -772904348411337/70906491683854249133971333415503528601229677279443476631916611638829262598057001759775558209235971002092300595769547131083230268742795262708226708464736682213924924871800416657575912944521796077262840069882938251784694133132833485038618990914757637167551284096438594475925700608) (+.f64 x (*.f64 t b)) (if (<=.f64 z 7197894732483669/790633801981682102939434948120770730662330663141180149831645929794649763937481823796720248833738767559324522907487546528866440380413255769011771093518509804380927438580337349079948858367551626332967842494034160424070341732127705853976966233004529516956289283251401443563802400840744150516352841830648461966045733363646464) (+.f64 a (*.f64 -2 b)) (if (<=.f64 z 7823382786442759/41855804968213567224547853478906320725054875457247406540771499545716837934567817284890561672488119458109166910841919797858872862722356017328064756151166307827869405370407152286801072676024887272960758524035337792904616958075776435777990406039363527010043736240963055342423554029893064011082834640896) (+.f64 x (*.f64 y b)) (if (<=.f64 z 3530399308862389/132073632783916311588084946229129151629711831509030380531990177256668475639181214868604313971914296973668598748314282169720586889875671384312634744615734894227096670999751271042182879419106610263256058227052797101037007073187890434709599224691759119122384645224434499584) (-.f64 a (*.f64 t a)) (if (<=.f64 z 3319026342905755/12420144738405671481191835907700020442055088136933572889112416304208407621491015090647027270629171823603901845577048585649372640352918515131554298200329449113635639808166799244402122285052787558602103993549731750007142774830528462848) (+.f64 x (*.f64 t b)) (if (<=.f64 z 4162245864801687/2839213766779714416208296124562517712318911565184836172974571090549372219192960637992933791850638927971728600024477257552869537611776) (+.f64 x (*.f64 y b)) (if (<=.f64 z 3949999999999999968704166884442442998247434868356321538355033303006674341863468374370251964416) (+.f64 x (*.f64 t b)) (-.f64 z (*.f64 z y))))))))))))))
(if (<=.f64 z -176668914978732482412920019353600) (-.f64 z (*.f64 z y)) (if (<=.f64 z -3975272409102253/35835915874844867368919076489095108449946327955754392558399825615420669938882575126094039892345713852416) (+.f64 a (*.f64 y b)) (if (<=.f64 z -3218263841500995/1062275985633534197379176413104937254659186235454063846398888276400807119721704485478325004530458571337778658972493002030693158675305414478819039957533174703887662541670786438063456256) (+.f64 x (*.f64 t b)) (if (<=.f64 z -5232803781712389/58652475225036720546649669496166069228998121824605496380296088990333059082962747718339142176408838912879328274880511426712364770830486275482511413333124259062810366582741426385442408983508948533749841936858614266830705773786598571244254795994059356766208) (+.f64 x (*.f64 y b)) (if (<=.f64 z -2069357575461277/2163894399531684849059183759018052020301198647443953754636127064173256304872345024407213080115843841616586321892381199068702095603722999960578207655784200507016751857659924824755124296402642702553187257992033027703390323887110396882282073697349781407701150027357134841184256) (-.f64 a (*.f64 t a)) (if (<=.f64 z -772904348411337/70906491683854249133971333415503528601229677279443476631916611638829262598057001759775558209235971002092300595769547131083230268742795262708226708464736682213924924871800416657575912944521796077262840069882938251784694133132833485038618990914757637167551284096438594475925700608) (+.f64 x (*.f64 t b)) (if (<=.f64 z 7197894732483669/790633801981682102939434948120770730662330663141180149831645929794649763937481823796720248833738767559324522907487546528866440380413255769011771093518509804380927438580337349079948858367551626332967842494034160424070341732127705853976966233004529516956289283251401443563802400840744150516352841830648461966045733363646464) (+.f64 a (*.f64 b -2)) (if (<=.f64 z 7823382786442759/41855804968213567224547853478906320725054875457247406540771499545716837934567817284890561672488119458109166910841919797858872862722356017328064756151166307827869405370407152286801072676024887272960758524035337792904616958075776435777990406039363527010043736240963055342423554029893064011082834640896) (+.f64 x (*.f64 y b)) (if (<=.f64 z 3530399308862389/132073632783916311588084946229129151629711831509030380531990177256668475639181214868604313971914296973668598748314282169720586889875671384312634744615734894227096670999751271042182879419106610263256058227052797101037007073187890434709599224691759119122384645224434499584) (-.f64 a (*.f64 t a)) (if (<=.f64 z 3319026342905755/12420144738405671481191835907700020442055088136933572889112416304208407621491015090647027270629171823603901845577048585649372640352918515131554298200329449113635639808166799244402122285052787558602103993549731750007142774830528462848) (+.f64 x (*.f64 t b)) (if (<=.f64 z 4162245864801687/2839213766779714416208296124562517712318911565184836172974571090549372219192960637992933791850638927971728600024477257552869537611776) (+.f64 x (*.f64 y b)) (if (<=.f64 z 3949999999999999968704166884442442998247434868356321538355033303006674341863468374370251964416) (+.f64 x (*.f64 t b)) (-.f64 z (*.f64 z y))))))))))))))
(if (<=.f64 z -176668914978732482412920019353600) (-.f64 z (*.f64 z y)) (if (<=.f64 z -3975272409102253/35835915874844867368919076489095108449946327955754392558399825615420669938882575126094039892345713852416) (+.f64 a (*.f64 y b)) (if (<=.f64 z -3218263841500995/1062275985633534197379176413104937254659186235454063846398888276400807119721704485478325004530458571337778658972493002030693158675305414478819039957533174703887662541670786438063456256) (+.f64 x (*.f64 t b)) (if (<=.f64 z -7129506421708419/1167984798111281975972139931059274579172666497855631342228273284582214442805421410945513679697247078343332431250840168271536308408672112127552681297848886832192510636636227827221215793215130566656) (+.f64 a (*.f64 -2 b)) (if (<=.f64 z -2069357575461277/2163894399531684849059183759018052020301198647443953754636127064173256304872345024407213080115843841616586321892381199068702095603722999960578207655784200507016751857659924824755124296402642702553187257992033027703390323887110396882282073697349781407701150027357134841184256) (+.f64 x (*.f64 y b)) (if (<=.f64 z -772904348411337/70906491683854249133971333415503528601229677279443476631916611638829262598057001759775558209235971002092300595769547131083230268742795262708226708464736682213924924871800416657575912944521796077262840069882938251784694133132833485038618990914757637167551284096438594475925700608) (+.f64 x (*.f64 t b)) (if (<=.f64 z 4269955187367975/2063650512248692368563827284830142994214247367328599695812346519635444931862206482321942405811160890213571855442410658901884170154307365379884917884620857722298385484371113610034107490923540785363375909797699954703703235518560788042337487885808736236287260081631789056) (+.f64 a (*.f64 -2 b)) (if (<=.f64 z 3949999999999999968704166884442442998247434868356321538355033303006674341863468374370251964416) (+.f64 x (*.f64 t b)) (-.f64 z (*.f64 z y))))))))))
(if (<=.f64 z -176668914978732482412920019353600) (-.f64 z (*.f64 z y)) (if (<=.f64 z -3975272409102253/35835915874844867368919076489095108449946327955754392558399825615420669938882575126094039892345713852416) (+.f64 a (*.f64 y b)) (if (<=.f64 z -3218263841500995/1062275985633534197379176413104937254659186235454063846398888276400807119721704485478325004530458571337778658972493002030693158675305414478819039957533174703887662541670786438063456256) (+.f64 x (*.f64 t b)) (if (<=.f64 z -7129506421708419/1167984798111281975972139931059274579172666497855631342228273284582214442805421410945513679697247078343332431250840168271536308408672112127552681297848886832192510636636227827221215793215130566656) (+.f64 a (*.f64 b -2)) (if (<=.f64 z -2069357575461277/2163894399531684849059183759018052020301198647443953754636127064173256304872345024407213080115843841616586321892381199068702095603722999960578207655784200507016751857659924824755124296402642702553187257992033027703390323887110396882282073697349781407701150027357134841184256) (+.f64 x (*.f64 y b)) (if (<=.f64 z -772904348411337/70906491683854249133971333415503528601229677279443476631916611638829262598057001759775558209235971002092300595769547131083230268742795262708226708464736682213924924871800416657575912944521796077262840069882938251784694133132833485038618990914757637167551284096438594475925700608) (+.f64 x (*.f64 t b)) (if (<=.f64 z 4269955187367975/2063650512248692368563827284830142994214247367328599695812346519635444931862206482321942405811160890213571855442410658901884170154307365379884917884620857722298385484371113610034107490923540785363375909797699954703703235518560788042337487885808736236287260081631789056) (+.f64 a (*.f64 b -2)) (if (<=.f64 z 3949999999999999968704166884442442998247434868356321538355033303006674341863468374370251964416) (+.f64 x (*.f64 t b)) (-.f64 z (*.f64 z y))))))))))
(if (<=.f64 z -176668914978732482412920019353600) (-.f64 z (*.f64 z y)) (if (<=.f64 z -3975272409102253/35835915874844867368919076489095108449946327955754392558399825615420669938882575126094039892345713852416) (+.f64 a (*.f64 y b)) (if (<=.f64 z -772904348411337/70906491683854249133971333415503528601229677279443476631916611638829262598057001759775558209235971002092300595769547131083230268742795262708226708464736682213924924871800416657575912944521796077262840069882938251784694133132833485038618990914757637167551284096438594475925700608) (+.f64 x (*.f64 y b)) (if (<=.f64 z 7197894732483669/790633801981682102939434948120770730662330663141180149831645929794649763937481823796720248833738767559324522907487546528866440380413255769011771093518509804380927438580337349079948858367551626332967842494034160424070341732127705853976966233004529516956289283251401443563802400840744150516352841830648461966045733363646464) (+.f64 a (*.f64 -2 b)) (if (<=.f64 z 114999999999999999198784690215396627249834481935077628192554752491625231509434127362595749888) (+.f64 x (*.f64 y b)) (-.f64 z (*.f64 z y)))))))
(if (<=.f64 z -176668914978732482412920019353600) (-.f64 z (*.f64 z y)) (if (<=.f64 z -3975272409102253/35835915874844867368919076489095108449946327955754392558399825615420669938882575126094039892345713852416) (+.f64 a (*.f64 y b)) (if (<=.f64 z -772904348411337/70906491683854249133971333415503528601229677279443476631916611638829262598057001759775558209235971002092300595769547131083230268742795262708226708464736682213924924871800416657575912944521796077262840069882938251784694133132833485038618990914757637167551284096438594475925700608) (+.f64 x (*.f64 y b)) (if (<=.f64 z 7197894732483669/790633801981682102939434948120770730662330663141180149831645929794649763937481823796720248833738767559324522907487546528866440380413255769011771093518509804380927438580337349079948858367551626332967842494034160424070341732127705853976966233004529516956289283251401443563802400840744150516352841830648461966045733363646464) (+.f64 a (*.f64 b -2)) (if (<=.f64 z 114999999999999999198784690215396627249834481935077628192554752491625231509434127362595749888) (+.f64 x (*.f64 y b)) (-.f64 z (*.f64 z y)))))))
(if (<=.f64 z -176668914978732482412920019353600) (-.f64 z (*.f64 z y)) (if (<=.f64 z -5232803781712389/58652475225036720546649669496166069228998121824605496380296088990333059082962747718339142176408838912879328274880511426712364770830486275482511413333124259062810366582741426385442408983508948533749841936858614266830705773786598571244254795994059356766208) (+.f64 a (*.f64 y b)) (if (<=.f64 z 1010013615111337/39916806190694396233127454260736771321349025208709150830050944848744237837379281315699159309852714021786848936883849904879448759767871873214783435965696628406400113459021713530350754428887259743653067134890878479866616209102417407777777105368960883150142418137515120832847169904606880198557696) (+.f64 a (*.f64 -2 b)) (if (<=.f64 z 3530399308862389/132073632783916311588084946229129151629711831509030380531990177256668475639181214868604313971914296973668598748314282169720586889875671384312634744615734894227096670999751271042182879419106610263256058227052797101037007073187890434709599224691759119122384645224434499584) (*.f64 a (neg.f64 t)) (if (<=.f64 z 3319026342905755/12420144738405671481191835907700020442055088136933572889112416304208407621491015090647027270629171823603901845577048585649372640352918515131554298200329449113635639808166799244402122285052787558602103993549731750007142774830528462848) (*.f64 (-.f64 t 2) b) (if (<=.f64 z 7373608204123009/53631231719770388398296099992823384509917463282369573510894245774887056120294187907207497192667613710760127432745944203415015531247786279785734596024336384) (+.f64 a (*.f64 y b)) (if (<=.f64 z 114999999999999999198784690215396627249834481935077628192554752491625231509434127362595749888) x (-.f64 z (*.f64 z y)))))))))
(if (<=.f64 z -176668914978732482412920019353600) (-.f64 z (*.f64 z y)) (if (<=.f64 z -5232803781712389/58652475225036720546649669496166069228998121824605496380296088990333059082962747718339142176408838912879328274880511426712364770830486275482511413333124259062810366582741426385442408983508948533749841936858614266830705773786598571244254795994059356766208) (+.f64 a (*.f64 y b)) (if (<=.f64 z 1010013615111337/39916806190694396233127454260736771321349025208709150830050944848744237837379281315699159309852714021786848936883849904879448759767871873214783435965696628406400113459021713530350754428887259743653067134890878479866616209102417407777777105368960883150142418137515120832847169904606880198557696) (+.f64 a (*.f64 b -2)) (if (<=.f64 z 3530399308862389/132073632783916311588084946229129151629711831509030380531990177256668475639181214868604313971914296973668598748314282169720586889875671384312634744615734894227096670999751271042182879419106610263256058227052797101037007073187890434709599224691759119122384645224434499584) (*.f64 a (neg.f64 t)) (if (<=.f64 z 3319026342905755/12420144738405671481191835907700020442055088136933572889112416304208407621491015090647027270629171823603901845577048585649372640352918515131554298200329449113635639808166799244402122285052787558602103993549731750007142774830528462848) (*.f64 b (-.f64 t 2)) (if (<=.f64 z 7373608204123009/53631231719770388398296099992823384509917463282369573510894245774887056120294187907207497192667613710760127432745944203415015531247786279785734596024336384) (+.f64 a (*.f64 y b)) (if (<=.f64 z 114999999999999999198784690215396627249834481935077628192554752491625231509434127362595749888) x (-.f64 z (*.f64 z y)))))))))
(if (<=.f64 z -176668914978732482412920019353600) (-.f64 z (*.f64 z y)) (if (<=.f64 z -5232803781712389/58652475225036720546649669496166069228998121824605496380296088990333059082962747718339142176408838912879328274880511426712364770830486275482511413333124259062810366582741426385442408983508948533749841936858614266830705773786598571244254795994059356766208) (+.f64 a (*.f64 y b)) (if (<=.f64 z 1010013615111337/39916806190694396233127454260736771321349025208709150830050944848744237837379281315699159309852714021786848936883849904879448759767871873214783435965696628406400113459021713530350754428887259743653067134890878479866616209102417407777777105368960883150142418137515120832847169904606880198557696) (+.f64 a (*.f64 b -2)) (if (<=.f64 z 3530399308862389/132073632783916311588084946229129151629711831509030380531990177256668475639181214868604313971914296973668598748314282169720586889875671384312634744615734894227096670999751271042182879419106610263256058227052797101037007073187890434709599224691759119122384645224434499584) (*.f64 t (neg.f64 a)) (if (<=.f64 z 3319026342905755/12420144738405671481191835907700020442055088136933572889112416304208407621491015090647027270629171823603901845577048585649372640352918515131554298200329449113635639808166799244402122285052787558602103993549731750007142774830528462848) (*.f64 b (-.f64 t 2)) (if (<=.f64 z 7373608204123009/53631231719770388398296099992823384509917463282369573510894245774887056120294187907207497192667613710760127432745944203415015531247786279785734596024336384) (+.f64 a (*.f64 y b)) (if (<=.f64 z 114999999999999999198784690215396627249834481935077628192554752491625231509434127362595749888) x (-.f64 z (*.f64 z y)))))))))
(if (<=.f64 z -176668914978732482412920019353600) (-.f64 z (*.f64 z y)) (if (<=.f64 z -5232803781712389/58652475225036720546649669496166069228998121824605496380296088990333059082962747718339142176408838912879328274880511426712364770830486275482511413333124259062810366582741426385442408983508948533749841936858614266830705773786598571244254795994059356766208) (+.f64 a (*.f64 y b)) (if (<=.f64 z 1010013615111337/39916806190694396233127454260736771321349025208709150830050944848744237837379281315699159309852714021786848936883849904879448759767871873214783435965696628406400113459021713530350754428887259743653067134890878479866616209102417407777777105368960883150142418137515120832847169904606880198557696) (+.f64 a (*.f64 -2 b)) (if (<=.f64 z 3530399308862389/132073632783916311588084946229129151629711831509030380531990177256668475639181214868604313971914296973668598748314282169720586889875671384312634744615734894227096670999751271042182879419106610263256058227052797101037007073187890434709599224691759119122384645224434499584) (*.f64 a (neg.f64 t)) (if (<=.f64 z 3319026342905755/12420144738405671481191835907700020442055088136933572889112416304208407621491015090647027270629171823603901845577048585649372640352918515131554298200329449113635639808166799244402122285052787558602103993549731750007142774830528462848) (*.f64 t b) (if (<=.f64 z 7373608204123009/53631231719770388398296099992823384509917463282369573510894245774887056120294187907207497192667613710760127432745944203415015531247786279785734596024336384) (+.f64 a (*.f64 y b)) (if (<=.f64 z 114999999999999999198784690215396627249834481935077628192554752491625231509434127362595749888) x (-.f64 z (*.f64 z y)))))))))
(if (<=.f64 z -176668914978732482412920019353600) (-.f64 z (*.f64 z y)) (if (<=.f64 z -5232803781712389/58652475225036720546649669496166069228998121824605496380296088990333059082962747718339142176408838912879328274880511426712364770830486275482511413333124259062810366582741426385442408983508948533749841936858614266830705773786598571244254795994059356766208) (+.f64 a (*.f64 y b)) (if (<=.f64 z 1010013615111337/39916806190694396233127454260736771321349025208709150830050944848744237837379281315699159309852714021786848936883849904879448759767871873214783435965696628406400113459021713530350754428887259743653067134890878479866616209102417407777777105368960883150142418137515120832847169904606880198557696) (+.f64 a (*.f64 b -2)) (if (<=.f64 z 3530399308862389/132073632783916311588084946229129151629711831509030380531990177256668475639181214868604313971914296973668598748314282169720586889875671384312634744615734894227096670999751271042182879419106610263256058227052797101037007073187890434709599224691759119122384645224434499584) (*.f64 a (neg.f64 t)) (if (<=.f64 z 3319026342905755/12420144738405671481191835907700020442055088136933572889112416304208407621491015090647027270629171823603901845577048585649372640352918515131554298200329449113635639808166799244402122285052787558602103993549731750007142774830528462848) (*.f64 t b) (if (<=.f64 z 7373608204123009/53631231719770388398296099992823384509917463282369573510894245774887056120294187907207497192667613710760127432745944203415015531247786279785734596024336384) (+.f64 a (*.f64 y b)) (if (<=.f64 z 114999999999999999198784690215396627249834481935077628192554752491625231509434127362595749888) x (-.f64 z (*.f64 z y)))))))))
(if (<=.f64 z -176668914978732482412920019353600) (-.f64 z (*.f64 z y)) (if (<=.f64 z -5232803781712389/58652475225036720546649669496166069228998121824605496380296088990333059082962747718339142176408838912879328274880511426712364770830486275482511413333124259062810366582741426385442408983508948533749841936858614266830705773786598571244254795994059356766208) (+.f64 a (*.f64 y b)) (if (<=.f64 z 1010013615111337/39916806190694396233127454260736771321349025208709150830050944848744237837379281315699159309852714021786848936883849904879448759767871873214783435965696628406400113459021713530350754428887259743653067134890878479866616209102417407777777105368960883150142418137515120832847169904606880198557696) (+.f64 a (*.f64 b -2)) (if (<=.f64 z 3530399308862389/132073632783916311588084946229129151629711831509030380531990177256668475639181214868604313971914296973668598748314282169720586889875671384312634744615734894227096670999751271042182879419106610263256058227052797101037007073187890434709599224691759119122384645224434499584) (*.f64 t (neg.f64 a)) (if (<=.f64 z 3319026342905755/12420144738405671481191835907700020442055088136933572889112416304208407621491015090647027270629171823603901845577048585649372640352918515131554298200329449113635639808166799244402122285052787558602103993549731750007142774830528462848) (*.f64 t b) (if (<=.f64 z 7373608204123009/53631231719770388398296099992823384509917463282369573510894245774887056120294187907207497192667613710760127432745944203415015531247786279785734596024336384) (+.f64 a (*.f64 y b)) (if (<=.f64 z 114999999999999999198784690215396627249834481935077628192554752491625231509434127362595749888) x (-.f64 z (*.f64 z y)))))))))
(if (<=.f64 z -176668914978732482412920019353600) (-.f64 z (*.f64 z y)) (if (<=.f64 z 7373608204123009/53631231719770388398296099992823384509917463282369573510894245774887056120294187907207497192667613710760127432745944203415015531247786279785734596024336384) (+.f64 a (*.f64 y b)) (if (<=.f64 z 114999999999999999198784690215396627249834481935077628192554752491625231509434127362595749888) x (-.f64 z (*.f64 z y)))))
(if (<=.f64 z -4637105753254294192128) (-.f64 z (*.f64 z y)) (if (<=.f64 z -8175971924123953/689456532887748412341091025928864224451014138635639044112158674527024860928026977516082500242976073479223111693916991352080883023896091539947888937618883326765331077022147490374177752073413947198182949091512336515072) (*.f64 (-.f64 b z) y) (if (<=.f64 z 114999999999999999198784690215396627249834481935077628192554752491625231509434127362595749888) x (-.f64 z (*.f64 z y)))))
(if (<=.f64 z -4637105753254294192128) (-.f64 z (*.f64 z y)) (if (<=.f64 z -8175971924123953/689456532887748412341091025928864224451014138635639044112158674527024860928026977516082500242976073479223111693916991352080883023896091539947888937618883326765331077022147490374177752073413947198182949091512336515072) (*.f64 y (-.f64 b z)) (if (<=.f64 z 114999999999999999198784690215396627249834481935077628192554752491625231509434127362595749888) x (-.f64 z (*.f64 z y)))))
(if (<=.f64 a -819999999999999972602164950849701730873517069487690620832366855648211625550717449619557175054296566662801915904) a (if (<=.f64 a -29020851076483838038001215956855029760) (*.f64 a (neg.f64 t)) (if (<=.f64 a -1364919046851093020308548257579008) a (if (<=.f64 a -5144624764053201/170141183460469231731687303715884105728) (*.f64 (-.f64 b z) y) (if (<=.f64 a -30675370841793/1081947199765842424529591879509026010150599323721976877318063532086628152436172512203606540057921920808293160946190599534351047801861499980289103827892100253508375928829962412377562148201321351276593628996016513851695161943555198441141036848674890703850575013678567420592128) x (if (<=.f64 a 1493165678064271/1627933211152308172382776316094057079381044512284157265721742629825204403764070329961287158415906809263410622703474912218234570716337735615323084973713581554222450580936038710562274972146438970881094974642550439936936217782587026682413056) (*.f64 (-.f64 b z) y) (if (<=.f64 a 2647859014570463/22592111669665739975592870737637022906810831294812620197467215446901550642889587999246991367961839975767182923986271972624986374927027127581012424707895568851446368731861728964581056579941628221790058875830676242925879296) x (if (<=.f64 a 863006353468907/17822033662586700072817076584766762987864173856439687228824970773044043621908896041038721919208482030385321521771853153557377752817872804680674458280164899172859354196719784961261227313463296) (*.f64 t b) (if (<=.f64 a 3917796716117839/53631231719770388398296099992823384509917463282369573510894245774887056120294187907207497192667613710760127432745944203415015531247786279785734596024336384) (*.f64 (-.f64 b z) y) (if (<=.f64 a 880000000000000012875011802993888267253637829320896452165177492709420800541010430001152) x a))))))))))
(if (<=.f64 a -819999999999999972602164950849701730873517069487690620832366855648211625550717449619557175054296566662801915904) a (if (<=.f64 a -29020851076483838038001215956855029760) (*.f64 a (neg.f64 t)) (if (<=.f64 a -1364919046851093020308548257579008) a (if (<=.f64 a -5144624764053201/170141183460469231731687303715884105728) (*.f64 y (-.f64 b z)) (if (<=.f64 a -30675370841793/1081947199765842424529591879509026010150599323721976877318063532086628152436172512203606540057921920808293160946190599534351047801861499980289103827892100253508375928829962412377562148201321351276593628996016513851695161943555198441141036848674890703850575013678567420592128) x (if (<=.f64 a 1493165678064271/1627933211152308172382776316094057079381044512284157265721742629825204403764070329961287158415906809263410622703474912218234570716337735615323084973713581554222450580936038710562274972146438970881094974642550439936936217782587026682413056) (*.f64 y (-.f64 b z)) (if (<=.f64 a 2647859014570463/22592111669665739975592870737637022906810831294812620197467215446901550642889587999246991367961839975767182923986271972624986374927027127581012424707895568851446368731861728964581056579941628221790058875830676242925879296) x (if (<=.f64 a 863006353468907/17822033662586700072817076584766762987864173856439687228824970773044043621908896041038721919208482030385321521771853153557377752817872804680674458280164899172859354196719784961261227313463296) (*.f64 t b) (if (<=.f64 a 3917796716117839/53631231719770388398296099992823384509917463282369573510894245774887056120294187907207497192667613710760127432745944203415015531247786279785734596024336384) (*.f64 y (-.f64 b z)) (if (<=.f64 a 880000000000000012875011802993888267253637829320896452165177492709420800541010430001152) x a))))))))))
(if (<=.f64 a -819999999999999972602164950849701730873517069487690620832366855648211625550717449619557175054296566662801915904) a (if (<=.f64 a -29020851076483838038001215956855029760) (*.f64 t (neg.f64 a)) (if (<=.f64 a -1364919046851093020308548257579008) a (if (<=.f64 a -5144624764053201/170141183460469231731687303715884105728) (*.f64 y (-.f64 b z)) (if (<=.f64 a -30675370841793/1081947199765842424529591879509026010150599323721976877318063532086628152436172512203606540057921920808293160946190599534351047801861499980289103827892100253508375928829962412377562148201321351276593628996016513851695161943555198441141036848674890703850575013678567420592128) x (if (<=.f64 a 1493165678064271/1627933211152308172382776316094057079381044512284157265721742629825204403764070329961287158415906809263410622703474912218234570716337735615323084973713581554222450580936038710562274972146438970881094974642550439936936217782587026682413056) (*.f64 y (-.f64 b z)) (if (<=.f64 a 2647859014570463/22592111669665739975592870737637022906810831294812620197467215446901550642889587999246991367961839975767182923986271972624986374927027127581012424707895568851446368731861728964581056579941628221790058875830676242925879296) x (if (<=.f64 a 863006353468907/17822033662586700072817076584766762987864173856439687228824970773044043621908896041038721919208482030385321521771853153557377752817872804680674458280164899172859354196719784961261227313463296) (*.f64 t b) (if (<=.f64 a 3917796716117839/53631231719770388398296099992823384509917463282369573510894245774887056120294187907207497192667613710760127432745944203415015531247786279785734596024336384) (*.f64 y (-.f64 b z)) (if (<=.f64 a 880000000000000012875011802993888267253637829320896452165177492709420800541010430001152) x a))))))))))
(if (<=.f64 t -38999999999999999294645031474840295390609088114102076258359945387518892648471945850029787660842965237820376299762480147092007085726956617232035827580842882654598525478448502974550673647682386958348349422943406181946582302051222758927368192) (*.f64 t b) (if (<=.f64 t -5799999999999999767528059173801854482143445516288) (*.f64 a (neg.f64 t)) (if (<=.f64 t -5714924144197591/26959946667150639794667015087019630673637144422540572481103610249216) x (if (<=.f64 t 8186598303647423/97032380768794308446811218028906409703555376069793538196190752376628184542898555395679900551790404871905483168570692075385723752757175899465267954690073821200278436001303119096891580351974902801578937449607279296930802928363503616) a (if (<=.f64 t 6565265174875691/612360413832167804618481300175204950565278972827733245154176943827040045789568780701801476101110276210469073715640490142747228062965884323130340172286597179476547016660734615078156785793174374530940928) (*.f64 y b) (if (<=.f64 t 21500000000000001262914176917979022280695435543972814677894401253242337793184657529235634323038469968749991131815929606652976289332895158519723390958480797049467490977972224) x (*.f64 t b)))))))
(if (<=.f64 t -38999999999999999294645031474840295390609088114102076258359945387518892648471945850029787660842965237820376299762480147092007085726956617232035827580842882654598525478448502974550673647682386958348349422943406181946582302051222758927368192) (*.f64 t b) (if (<=.f64 t -5799999999999999767528059173801854482143445516288) (*.f64 t (neg.f64 a)) (if (<=.f64 t -5714924144197591/26959946667150639794667015087019630673637144422540572481103610249216) x (if (<=.f64 t 8186598303647423/97032380768794308446811218028906409703555376069793538196190752376628184542898555395679900551790404871905483168570692075385723752757175899465267954690073821200278436001303119096891580351974902801578937449607279296930802928363503616) a (if (<=.f64 t 6565265174875691/612360413832167804618481300175204950565278972827733245154176943827040045789568780701801476101110276210469073715640490142747228062965884323130340172286597179476547016660734615078156785793174374530940928) (*.f64 y b) (if (<=.f64 t 21500000000000001262914176917979022280695435543972814677894401253242337793184657529235634323038469968749991131815929606652976289332895158519723390958480797049467490977972224) x (*.f64 t b)))))))
(if (<=.f64 a -9999999999999999371534524623368764100273307559896873275206250678451924602685103382037576783819090846734548822294900033162112051840457868829614121240178061963384891963422539776) a (if (<=.f64 a -8408526847420205/34622310392506957584946940144288832324819178359103260074178033026772100877957520390515409281853501465865381150278099185099233529659567999369251322492547208112268029722558797196081988742442283240850996127872528443254245182193766350116513179157596502523218400437714157458948096) x (if (<=.f64 a 1390811250077931/2615987810513347951534240842431645045315929716077962908798218721607302370910488580305660104530507466131822931927619987366179553920147251083004047259447894239241837835650447017925067042251555454560047407752208612056538559879736027236124400377460220438127733515060190958901472126868316500692677165056) (*.f64 t b) (if (<=.f64 a 880000000000000012875011802993888267253637829320896452165177492709420800541010430001152) x a))))
(if (<=.f64 a -9999999999999999371534524623368764100273307559896873275206250678451924602685103382037576783819090846734548822294900033162112051840457868829614121240178061963384891963422539776) a (if (<=.f64 a 880000000000000012875011802993888267253637829320896452165177492709420800541010430001152) x a))
a
Compiler

Compiled 1571 to 893 computations (43.2% saved)

soundness605.0ms (1.6%)

Algorithm
egg-herbie
Rules
2214×fma-neg_binary64
529×fma-def_binary64
467×sub-neg_binary64
422×unsub-neg_binary64
345×distribute-rgt-in_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0601369
11791321
24451223
312151223
432331223
538111223
644141223
748421223
849861223
950191223
1054321223
1155611223
1257011223
1357571223
1457571223
1578261223
1678261223
1778261223
Stop Event
saturated
Compiler

Compiled 47 to 35 computations (25.5% saved)

end700.0ms (1.8%)

Compiler

Compiled 1433 to 669 computations (53.3% saved)

Profiling

Loading profile data...