Details

Time bar (total: 12.0s)

analyze181.0ms (1.5%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.8%0.2%0
0%99.8%0.2%1
0%99.8%0.2%2
0%74.9%25.1%3
0%74.9%25.1%4
0%74.9%25.1%5
0%62.4%37.6%6
0%46.8%53.2%7
3.1%40.5%56.3%8
3.1%32.7%64.1%9
4.7%28.3%67.1%10
7%23%70%11
10.5%18.9%70.6%12
Compiler

Compiled 16 to 11 computations (31.3% saved)

sample2.4s (19.8%)

Results
2.0s8252×body256valid
325.0ms1493×body256invalid
2.0msbody1024valid
0.0msbody512valid

preprocess218.0ms (1.8%)

Algorithm
egg-herbie
Rules
3534×fma-neg_binary64
720×sub-neg_binary64
670×fma-def_binary64
662×unsub-neg_binary64
412×cancel-sign-sub-inv_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
035119
197119
2315119
3945105
42438105
55226105
66899105
77377105
87548105
97583105
107612105
117684105
127684105
137684105
147684105
044
Stop Event
saturated
node limit
Calls
Call 1
Inputs
0
1
2
3
Outputs
0
1
2
3
Call 2
Inputs
(+.f64 (-.f64 (-.f64 (*.f64 x (log.f64 y)) y) z) (log.f64 t))
(+.f64 (-.f64 (-.f64 (*.f64 y (log.f64 x)) x) z) (log.f64 t))
(+.f64 (-.f64 (-.f64 (*.f64 z (log.f64 y)) y) x) (log.f64 t))
(+.f64 (-.f64 (-.f64 (*.f64 t (log.f64 y)) y) z) (log.f64 x))
(+.f64 (-.f64 (-.f64 (*.f64 x (log.f64 z)) z) y) (log.f64 t))
(+.f64 (-.f64 (-.f64 (*.f64 x (log.f64 t)) t) z) (log.f64 y))
(+.f64 (-.f64 (-.f64 (*.f64 x (log.f64 y)) y) t) (log.f64 z))
Outputs
(+.f64 (-.f64 (-.f64 (*.f64 x (log.f64 y)) y) z) (log.f64 t))
(-.f64 (-.f64 (*.f64 x (log.f64 y)) y) (-.f64 z (log.f64 t)))
(+.f64 (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) z) (log.f64 t))
(-.f64 (*.f64 x (log.f64 y)) (+.f64 y (-.f64 z (log.f64 t))))
(-.f64 (fma.f64 x (log.f64 y) (log.f64 t)) (+.f64 y z))
(+.f64 (-.f64 (-.f64 (*.f64 y (log.f64 x)) x) z) (log.f64 t))
(+.f64 (log.f64 t) (-.f64 (-.f64 (*.f64 y (log.f64 x)) x) z))
(-.f64 (fma.f64 y (log.f64 x) (neg.f64 x)) (-.f64 z (log.f64 t)))
(+.f64 (log.f64 t) (-.f64 (*.f64 y (log.f64 x)) (+.f64 x z)))
(-.f64 (fma.f64 y (log.f64 x) (log.f64 t)) (+.f64 x z))
(+.f64 (-.f64 (-.f64 (*.f64 z (log.f64 y)) y) x) (log.f64 t))
(+.f64 (log.f64 t) (-.f64 (*.f64 (log.f64 y) z) (+.f64 y x)))
(+.f64 (log.f64 t) (-.f64 (fma.f64 (log.f64 y) z (neg.f64 y)) x))
(fma.f64 (log.f64 y) z (-.f64 (neg.f64 y) (-.f64 x (log.f64 t))))
(-.f64 (fma.f64 (log.f64 y) z (log.f64 t)) (+.f64 x y))
(fma.f64 (log.f64 y) z (-.f64 (log.f64 t) (+.f64 x y)))
(+.f64 (-.f64 (-.f64 (*.f64 t (log.f64 y)) y) z) (log.f64 x))
(+.f64 (log.f64 x) (-.f64 (*.f64 (log.f64 y) t) (+.f64 y z)))
(-.f64 (fma.f64 (log.f64 y) t (log.f64 x)) (+.f64 y z))
(+.f64 (-.f64 (-.f64 (*.f64 x (log.f64 z)) z) y) (log.f64 t))
(+.f64 (log.f64 t) (-.f64 (*.f64 x (log.f64 z)) (+.f64 z y)))
(+.f64 (log.f64 t) (-.f64 (*.f64 x (log.f64 z)) (+.f64 y z)))
(-.f64 (fma.f64 x (log.f64 z) (log.f64 t)) (+.f64 y z))
(fma.f64 x (log.f64 z) (-.f64 (log.f64 t) (+.f64 y z)))
(+.f64 (-.f64 (-.f64 (*.f64 x (log.f64 t)) t) z) (log.f64 y))
(+.f64 (log.f64 y) (-.f64 (*.f64 x (log.f64 t)) (+.f64 t z)))
(-.f64 (fma.f64 x (log.f64 t) (neg.f64 t)) (-.f64 z (log.f64 y)))
(+.f64 (log.f64 y) (-.f64 (*.f64 x (log.f64 t)) (+.f64 z t)))
(-.f64 (fma.f64 x (log.f64 t) (log.f64 y)) (+.f64 z t))
(+.f64 (-.f64 (-.f64 (*.f64 x (log.f64 y)) y) t) (log.f64 z))
(+.f64 (log.f64 z) (-.f64 (*.f64 x (log.f64 y)) (+.f64 y t)))
(+.f64 (log.f64 z) (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) t))
(-.f64 (fma.f64 x (log.f64 y) (log.f64 z)) (+.f64 y t))
Compiler

Compiled 19 to 14 computations (26.3% saved)

simplify243.0ms (2%)

Algorithm
egg-herbie
Rules
2537×fma-neg_binary64
490×associate--r-_binary64
462×associate--l-_binary64
401×distribute-rgt-in_binary64
373×unsub-neg_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01117
12217
25917
316315
441115
592815
6138115
7183615
8211715
9298715
10479415
11520515
12529715
13530715
14531315
15531515
16540315
17559515
18572515
19581115
20582115
21582115
Stop Event
node limit
Counts
1 → 2
Calls
Call 1
Inputs
(+.f64 (-.f64 (-.f64 (*.f64 x (log.f64 y)) y) z) (log.f64 t))
Outputs
(+.f64 (-.f64 (-.f64 (*.f64 x (log.f64 y)) y) z) (log.f64 t))
(+.f64 (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) z) (log.f64 t))
(-.f64 (*.f64 x (log.f64 y)) (+.f64 y (-.f64 z (log.f64 t))))
(-.f64 (fma.f64 x (log.f64 y) (log.f64 t)) (+.f64 y z))

eval1.0ms (0%)

Compiler

Compiled 25 to 13 computations (48% saved)

prune1.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New112
Fresh011
Picked000
Done000
Total123
Error
0.1b
Counts
3 → 1
Alt Table
Click to see full alt table
StatusErrorProgram
0.1b
(+.f64 (-.f64 (-.f64 (*.f64 x (log.f64 y)) y) z) (log.f64 t))
Compiler

Compiled 15 to 10 computations (33.3% saved)

localize15.0ms (0.1%)

Local error

Found 4 expressions with local error:

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

Compiled 41 to 10 computations (75.6% saved)

series145.0ms (1.2%)

Counts
4 → 132
Calls

33 calls:

TimeVariablePointExpression
33.0ms
x
@0
(*.f64 x (log.f64 y))
27.0ms
t
@0
(+.f64 (-.f64 (-.f64 (*.f64 x (log.f64 y)) y) z) (log.f64 t))
23.0ms
y
@0
(*.f64 x (log.f64 y))
16.0ms
y
@-inf
(*.f64 x (log.f64 y))
11.0ms
t
@-inf
(+.f64 (-.f64 (-.f64 (*.f64 x (log.f64 y)) y) z) (log.f64 t))

rewrite132.0ms (1.1%)

Algorithm
batch-egg-rewrite
Rules
790×fma-def_binary64
629×log-prod_binary64
510×fma-neg_binary64
238×pow1/3_binary64
236×expm1-udef_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01144
124844
2373442
Stop Event
node limit
Counts
4 → 397
Calls
Call 1
Inputs
(*.f64 x (log.f64 y))
(-.f64 (*.f64 x (log.f64 y)) y)
(-.f64 (-.f64 (*.f64 x (log.f64 y)) y) z)
(+.f64 (-.f64 (-.f64 (*.f64 x (log.f64 y)) y) z) (log.f64 t))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 x (log.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 y x)) (cbrt.f64 (pow.f64 y x)))) (log.f64 (cbrt.f64 (pow.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 y x))) (log.f64 (sqrt.f64 (pow.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 x (log.f64 y)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 x (log.f64 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 x (log.f64 y))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 x (log.f64 y))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 x (log.f64 y)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 x (log.f64 y)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (-.f64 (pow.f64 y x) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 x (log.f64 y)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 x (log.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (-.f64 (pow.f64 y x) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 x (log.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 x (log.f64 y))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (log.f64 y)) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (log.f64 y)) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) (fma.f64 (neg.f64 y) 1 y))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) (fma.f64 (neg.f64 (cbrt.f64 y)) (pow.f64 (cbrt.f64 y) 2) y))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) (+.f64 (neg.f64 y) y))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 y) (*.f64 x (log.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (fma.f64 x (log.f64 y) (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (/.f64 (pow.f64 y x) (exp.f64 y))) (cbrt.f64 (/.f64 (pow.f64 y x) (exp.f64 y))))) (log.f64 (cbrt.f64 (/.f64 (pow.f64 y x) (exp.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (/.f64 (pow.f64 y x) (exp.f64 y)))) (log.f64 (sqrt.f64 (/.f64 (pow.f64 y x) (exp.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 x (log.f64 y) (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 x (log.f64 y) (neg.f64 y))) (pow.f64 (cbrt.f64 (fma.f64 x (log.f64 y) (neg.f64 y))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 x (log.f64 y) (neg.f64 y))) 2) (cbrt.f64 (fma.f64 x (log.f64 y) (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 x (log.f64 y) (neg.f64 y))) (sqrt.f64 (fma.f64 x (log.f64 y) (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (*.f64 x (log.f64 y)) 3) (pow.f64 y 3)) (/.f64 1 (fma.f64 y (fma.f64 x (log.f64 y) y) (pow.f64 (*.f64 x (log.f64 y)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (*.f64 x (log.f64 y)) 2) (*.f64 y y)) (/.f64 1 (fma.f64 x (log.f64 y) y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (sqrt.f64 x) (sqrt.f64 (log.f64 y)) (sqrt.f64 y)) (-.f64 (sqrt.f64 (*.f64 x (log.f64 y))) (sqrt.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 y (fma.f64 x (log.f64 y) y) (pow.f64 (*.f64 x (log.f64 y)) 2)) (-.f64 (pow.f64 (*.f64 x (log.f64 y)) 3) (pow.f64 y 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 x (log.f64 y) y) (-.f64 (pow.f64 (*.f64 x (log.f64 y)) 2) (*.f64 y y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 x (log.f64 y)) 3) (pow.f64 y 3)) (fma.f64 y (fma.f64 x (log.f64 y) y) (pow.f64 (*.f64 x (log.f64 y)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 x (log.f64 y)) 2) (*.f64 y y)) (fma.f64 x (log.f64 y) y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 x (log.f64 y)) 3) (pow.f64 y 3))) (neg.f64 (fma.f64 y (fma.f64 x (log.f64 y) y) (pow.f64 (*.f64 x (log.f64 y)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 x (log.f64 y)) 2) (*.f64 y y))) (neg.f64 (fma.f64 x (log.f64 y) y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 x (log.f64 y)) 3) (pow.f64 (neg.f64 y) 3)) (+.f64 (pow.f64 (*.f64 x (log.f64 y)) 2) (-.f64 (*.f64 (neg.f64 y) (neg.f64 y)) (*.f64 (*.f64 x (log.f64 y)) (neg.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 x (log.f64 y)) 2) (*.f64 (neg.f64 y) (neg.f64 y))) (-.f64 (*.f64 x (log.f64 y)) (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 x (log.f64 y) (neg.f64 y))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 x (log.f64 y) (neg.f64 y))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 y (fma.f64 x (log.f64 y) y) (pow.f64 (*.f64 x (log.f64 y)) 2)) (-.f64 (pow.f64 (*.f64 x (log.f64 y)) 3) (pow.f64 y 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 x (log.f64 y) y) (-.f64 (pow.f64 (*.f64 x (log.f64 y)) 2) (*.f64 y y))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (pow.f64 y x) (exp.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 x (log.f64 y) (neg.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (-.f64 (pow.f64 y x) 1)) (exp.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (pow.f64 y x) (+.f64 1 (expm1.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (-.f64 (pow.f64 y x) 1)) (+.f64 1 (expm1.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (-.f64 (pow.f64 y x) 1)) (exp.f64 (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 y x) (/.f64 1 (exp.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (-.f64 (pow.f64 y x) 1)) (/.f64 1 (exp.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (neg.f64 y)) (pow.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 1 (exp.f64 y)) (pow.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (neg.f64 y)) (+.f64 1 (-.f64 (pow.f64 y x) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 1 (exp.f64 y)) (+.f64 1 (-.f64 (pow.f64 y x) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 x (log.f64 y) (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 x (log.f64 y) (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 x (log.f64 y) (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 x (log.f64 y) (neg.f64 y))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x (log.f64 y) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x (log.f64 y) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (log.f64 y) x (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (log.f64 y) x (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (log.f64 y)) 1 (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (log.f64 y)) 1 (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) 1 (fma.f64 (neg.f64 y) 1 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) 1 (fma.f64 (neg.f64 (cbrt.f64 y)) (pow.f64 (cbrt.f64 y) 2) y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) 1 (+.f64 (neg.f64 y) y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 x (log.f64 y)) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 x (log.f64 y)) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 x (log.f64 y) (neg.f64 y)) (fma.f64 (neg.f64 y) 1 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 x (log.f64 y) (neg.f64 y)) (fma.f64 (neg.f64 (cbrt.f64 y)) (pow.f64 (cbrt.f64 y) 2) y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 x (log.f64 y) (neg.f64 y)) (+.f64 (neg.f64 y) y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (neg.f64 y) (*.f64 x (log.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 x (log.f64 y))) (cbrt.f64 (pow.f64 (*.f64 x (log.f64 y)) 2)) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 x (log.f64 y))) (cbrt.f64 (pow.f64 (*.f64 x (log.f64 y)) 2)) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (*.f64 x (log.f64 y)) 2)) (cbrt.f64 (*.f64 x (log.f64 y))) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (*.f64 x (log.f64 y)) 2)) (cbrt.f64 (*.f64 x (log.f64 y))) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 x x)) (*.f64 (cbrt.f64 x) (log.f64 y)) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 x x)) (*.f64 (cbrt.f64 x) (log.f64 y)) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 x (log.f64 y) (neg.f64 y))) (pow.f64 (cbrt.f64 (fma.f64 x (log.f64 y) (neg.f64 y))) 2) (fma.f64 (neg.f64 y) 1 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 x (log.f64 y) (neg.f64 y))) (pow.f64 (cbrt.f64 (fma.f64 x (log.f64 y) (neg.f64 y))) 2) (fma.f64 (neg.f64 (cbrt.f64 y)) (pow.f64 (cbrt.f64 y) 2) y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 x (log.f64 y) (neg.f64 y))) (pow.f64 (cbrt.f64 (fma.f64 x (log.f64 y) (neg.f64 y))) 2) (+.f64 (neg.f64 y) y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 x (log.f64 y) (neg.f64 y))) 2) (cbrt.f64 (fma.f64 x (log.f64 y) (neg.f64 y))) (fma.f64 (neg.f64 y) 1 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 x (log.f64 y) (neg.f64 y))) 2) (cbrt.f64 (fma.f64 x (log.f64 y) (neg.f64 y))) (fma.f64 (neg.f64 (cbrt.f64 y)) (pow.f64 (cbrt.f64 y) 2) y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 x (log.f64 y) (neg.f64 y))) 2) (cbrt.f64 (fma.f64 x (log.f64 y) (neg.f64 y))) (+.f64 (neg.f64 y) y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 y) 2) (neg.f64 (cbrt.f64 y)) (*.f64 x (log.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (log.f64 y)) 2) (*.f64 (cbrt.f64 (log.f64 y)) x) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (log.f64 y)) 2) (*.f64 (cbrt.f64 (log.f64 y)) x) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 x (log.f64 y))) (sqrt.f64 (*.f64 x (log.f64 y))) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 x (log.f64 y))) (sqrt.f64 (*.f64 x (log.f64 y))) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) (log.f64 y)) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) (log.f64 y)) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 x (log.f64 y) (neg.f64 y))) (sqrt.f64 (fma.f64 x (log.f64 y) (neg.f64 y))) (fma.f64 (neg.f64 y) 1 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 x (log.f64 y) (neg.f64 y))) (sqrt.f64 (fma.f64 x (log.f64 y) (neg.f64 y))) (fma.f64 (neg.f64 (cbrt.f64 y)) (pow.f64 (cbrt.f64 y) 2) y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 x (log.f64 y) (neg.f64 y))) (sqrt.f64 (fma.f64 x (log.f64 y) (neg.f64 y))) (+.f64 (neg.f64 y) y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 y) (neg.f64 (sqrt.f64 y)) (*.f64 x (log.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (log.f64 y)) (*.f64 (sqrt.f64 (log.f64 y)) x) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (log.f64 y)) (*.f64 (sqrt.f64 (log.f64 y)) x) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 x (log.f64 y)) 3) (pow.f64 y 3)) (/.f64 1 (fma.f64 y (fma.f64 x (log.f64 y) y) (pow.f64 (*.f64 x (log.f64 y)) 2))) (fma.f64 (neg.f64 y) 1 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 x (log.f64 y)) 3) (pow.f64 y 3)) (/.f64 1 (fma.f64 y (fma.f64 x (log.f64 y) y) (pow.f64 (*.f64 x (log.f64 y)) 2))) (fma.f64 (neg.f64 (cbrt.f64 y)) (pow.f64 (cbrt.f64 y) 2) y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 x (log.f64 y)) 3) (pow.f64 y 3)) (/.f64 1 (fma.f64 y (fma.f64 x (log.f64 y) y) (pow.f64 (*.f64 x (log.f64 y)) 2))) (+.f64 (neg.f64 y) y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 x (log.f64 y)) 2) (*.f64 y y)) (/.f64 1 (fma.f64 x (log.f64 y) y)) (fma.f64 (neg.f64 y) 1 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 x (log.f64 y)) 2) (*.f64 y y)) (/.f64 1 (fma.f64 x (log.f64 y) y)) (fma.f64 (neg.f64 (cbrt.f64 y)) (pow.f64 (cbrt.f64 y) 2) y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 x (log.f64 y)) 2) (*.f64 y y)) (/.f64 1 (fma.f64 x (log.f64 y) y)) (+.f64 (neg.f64 y) y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (neg.f64 y)) (cbrt.f64 (neg.f64 y))) (cbrt.f64 (neg.f64 y)) (*.f64 x (log.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (neg.f64 y)) (sqrt.f64 (neg.f64 y)) (*.f64 x (log.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (sqrt.f64 y)) (sqrt.f64 y) (*.f64 x (log.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 y (*.f64 x (log.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (sqrt.f64 x) (sqrt.f64 (log.f64 y)) (sqrt.f64 y)) (-.f64 (sqrt.f64 (*.f64 x (log.f64 y))) (sqrt.f64 y)) (fma.f64 (neg.f64 y) 1 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (sqrt.f64 x) (sqrt.f64 (log.f64 y)) (sqrt.f64 y)) (-.f64 (sqrt.f64 (*.f64 x (log.f64 y))) (sqrt.f64 y)) (fma.f64 (neg.f64 (cbrt.f64 y)) (pow.f64 (cbrt.f64 y) 2) y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (sqrt.f64 x) (sqrt.f64 (log.f64 y)) (sqrt.f64 y)) (-.f64 (sqrt.f64 (*.f64 x (log.f64 y))) (sqrt.f64 y)) (+.f64 (neg.f64 y) y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (pow.f64 (cbrt.f64 y) 2)) (cbrt.f64 y) (*.f64 x (log.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (pow.f64 (cbrt.f64 (log.f64 y)) 2)) (cbrt.f64 (log.f64 y)) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (pow.f64 (cbrt.f64 (log.f64 y)) 2)) (cbrt.f64 (log.f64 y)) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (sqrt.f64 (log.f64 y))) (sqrt.f64 (log.f64 y)) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (sqrt.f64 (log.f64 y))) (sqrt.f64 (log.f64 y)) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (log.f64 y) (cbrt.f64 (*.f64 x x))) (cbrt.f64 x) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (log.f64 y) (cbrt.f64 (*.f64 x x))) (cbrt.f64 x) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (log.f64 y) (sqrt.f64 x)) (sqrt.f64 x) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (log.f64 y) (sqrt.f64 x)) (sqrt.f64 x) (*.f64 (neg.f64 y) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (log.f64 y)) (neg.f64 (+.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (log.f64 y)) (-.f64 (neg.f64 y) z))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) (neg.f64 z))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) (*.f64 (neg.f64 z) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) z) (fma.f64 (neg.f64 z) 1 z))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (fma.f64 x (log.f64 y) (neg.f64 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 (fma.f64 x (log.f64 y) (neg.f64 y)) z) (+.f64 (neg.f64 z) z))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 z) (fma.f64 x (log.f64 y) (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) z))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (/.f64 (pow.f64 y x) (exp.f64 (+.f64 y z)))) (cbrt.f64 (/.f64 (pow.f64 y x) (exp.f64 (+.f64 y z)))))) (log.f64 (cbrt.f64 (/.f64 (pow.f64 y x) (exp.f64 (+.f64 y z))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (/.f64 (pow.f64 y x) (exp.f64 (+.f64 y z))))) (log.f64 (sqrt.f64 (/.f64 (pow.f64 y x) (exp.f64 (+.f64 y z))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) z) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) z)) (cbrt.f64 (pow.f64 (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) z) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) z) 2)) (cbrt.f64 (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) z)) (sqrt.f64 (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) 3) (pow.f64 z 3)) (/.f64 1 (fma.f64 z (fma.f64 x (log.f64 y) (fma.f64 -1 y z)) (pow.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) 2) (*.f64 z z)) (/.f64 1 (fma.f64 x (log.f64 y) (fma.f64 -1 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (fma.f64 x (log.f64 y) (neg.f64 y))) (sqrt.f64 z)) (-.f64 (sqrt.f64 (fma.f64 x (log.f64 y) (neg.f64 y))) (sqrt.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 z (fma.f64 x (log.f64 y) (fma.f64 -1 y z)) (pow.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) 2)) (-.f64 (pow.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) 3) (pow.f64 z 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 x (log.f64 y) (fma.f64 -1 y z)) (-.f64 (pow.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) 2) (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) 3) (pow.f64 z 3)) (fma.f64 z (fma.f64 x (log.f64 y) (fma.f64 -1 y z)) (pow.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) 2) (*.f64 z z)) (fma.f64 x (log.f64 y) (fma.f64 -1 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) 3) (pow.f64 z 3))) (neg.f64 (fma.f64 z (fma.f64 x (log.f64 y) (fma.f64 -1 y z)) (pow.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) 2) (*.f64 z z))) (neg.f64 (fma.f64 x (log.f64 y) (fma.f64 -1 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 x (log.f64 y)) 3) (pow.f64 (+.f64 y z) 3)) (+.f64 (pow.f64 (*.f64 x (log.f64 y)) 2) (fma.f64 (+.f64 y z) (+.f64 y z) (*.f64 (*.f64 x (log.f64 y)) (+.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) 3) (pow.f64 (neg.f64 z) 3)) (+.f64 (pow.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) 2) (-.f64 (*.f64 (neg.f64 z) (neg.f64 z)) (*.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) (neg.f64 z)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 x (log.f64 y)) 2) (*.f64 (+.f64 y z) (+.f64 y z))) (fma.f64 x (log.f64 y) (+.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) 2) (*.f64 (neg.f64 z) (neg.f64 z))) (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) z) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) z)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) z)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) z) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 z (fma.f64 x (log.f64 y) (fma.f64 -1 y z)) (pow.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) 2)) (-.f64 (pow.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) 3) (pow.f64 z 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 x (log.f64 y) (fma.f64 -1 y z)) (-.f64 (pow.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) 2) (*.f64 z z))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) z) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (pow.f64 y x) (exp.f64 (+.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) z))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (-.f64 (pow.f64 y x) 1)) (exp.f64 (+.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (pow.f64 y x) (*.f64 (exp.f64 y) (exp.f64 z))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (-.f64 (pow.f64 y x) 1)) (*.f64 (exp.f64 y) (exp.f64 z))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (fma.f64 x (log.f64 y) (neg.f64 y)))) (exp.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (/.f64 (pow.f64 y x) (exp.f64 y)) (+.f64 1 (expm1.f64 z))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (fma.f64 x (log.f64 y) (neg.f64 y)))) (+.f64 1 (expm1.f64 z))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 x (log.f64 y) (neg.f64 y)))) (exp.f64 (neg.f64 z))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 (pow.f64 y x) (exp.f64 y)) (/.f64 1 (exp.f64 z))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 x (log.f64 y) (neg.f64 y)))) (/.f64 1 (exp.f64 z))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (neg.f64 z)) (/.f64 (pow.f64 y x) (exp.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 1 (exp.f64 z)) (/.f64 (pow.f64 y x) (exp.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (neg.f64 z)) (+.f64 1 (expm1.f64 (fma.f64 x (log.f64 y) (neg.f64 y))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 1 (exp.f64 z)) (+.f64 1 (expm1.f64 (fma.f64 x (log.f64 y) (neg.f64 y))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) z) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) z)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) z)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) z)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x (log.f64 y) (neg.f64 (+.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x (log.f64 y) (-.f64 (neg.f64 y) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x (log.f64 y) (neg.f64 (-.f64 y (neg.f64 z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (log.f64 y) x (neg.f64 (+.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (log.f64 y) x (-.f64 (neg.f64 y) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (log.f64 y) x (neg.f64 (-.f64 y (neg.f64 z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (log.f64 y)) 1 (neg.f64 (+.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (log.f64 y)) 1 (-.f64 (neg.f64 y) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (log.f64 y)) 1 (neg.f64 (-.f64 y (neg.f64 z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) 1 (neg.f64 z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) 1 (*.f64 (neg.f64 z) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) z) 1 (fma.f64 (neg.f64 z) 1 z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) z) 1 (fma.f64 (neg.f64 (cbrt.f64 z)) (pow.f64 (cbrt.f64 z) 2) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) z) 1 (+.f64 (neg.f64 z) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 x (log.f64 y)) (neg.f64 (+.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 x (log.f64 y)) (-.f64 (neg.f64 y) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 x (log.f64 y)) (neg.f64 (-.f64 y (neg.f64 z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 x (log.f64 y) (neg.f64 y)) (neg.f64 z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 x (log.f64 y) (neg.f64 y)) (*.f64 (neg.f64 z) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) z) (fma.f64 (neg.f64 z) 1 z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) z) (fma.f64 (neg.f64 (cbrt.f64 z)) (pow.f64 (cbrt.f64 z) 2) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) z) (+.f64 (neg.f64 z) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (neg.f64 z) (fma.f64 x (log.f64 y) (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) z)) (cbrt.f64 (pow.f64 (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) z) 2)) (fma.f64 (neg.f64 z) 1 z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) z)) (cbrt.f64 (pow.f64 (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) z) 2)) (fma.f64 (neg.f64 (cbrt.f64 z)) (pow.f64 (cbrt.f64 z) 2) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) z)) (cbrt.f64 (pow.f64 (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) z) 2)) (+.f64 (neg.f64 z) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) z) 2)) (cbrt.f64 (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) z)) (fma.f64 (neg.f64 z) 1 z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) z) 2)) (cbrt.f64 (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) z)) (fma.f64 (neg.f64 (cbrt.f64 z)) (pow.f64 (cbrt.f64 z) 2) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) z) 2)) (cbrt.f64 (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) z)) (+.f64 (neg.f64 z) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 x (log.f64 y))) (cbrt.f64 (pow.f64 (*.f64 x (log.f64 y)) 2)) (neg.f64 (+.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 x (log.f64 y))) (cbrt.f64 (pow.f64 (*.f64 x (log.f64 y)) 2)) (-.f64 (neg.f64 y) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 x (log.f64 y))) (cbrt.f64 (pow.f64 (*.f64 x (log.f64 y)) 2)) (neg.f64 (-.f64 y (neg.f64 z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (*.f64 x (log.f64 y)) 2)) (cbrt.f64 (*.f64 x (log.f64 y))) (neg.f64 (+.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (*.f64 x (log.f64 y)) 2)) (cbrt.f64 (*.f64 x (log.f64 y))) (-.f64 (neg.f64 y) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (*.f64 x (log.f64 y)) 2)) (cbrt.f64 (*.f64 x (log.f64 y))) (neg.f64 (-.f64 y (neg.f64 z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 x x)) (*.f64 (cbrt.f64 x) (log.f64 y)) (neg.f64 (+.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 x x)) (*.f64 (cbrt.f64 x) (log.f64 y)) (-.f64 (neg.f64 y) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 x x)) (*.f64 (cbrt.f64 x) (log.f64 y)) (neg.f64 (-.f64 y (neg.f64 z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 x (log.f64 y) (neg.f64 y))) (pow.f64 (cbrt.f64 (fma.f64 x (log.f64 y) (neg.f64 y))) 2) (neg.f64 z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 x (log.f64 y) (neg.f64 y))) (pow.f64 (cbrt.f64 (fma.f64 x (log.f64 y) (neg.f64 y))) 2) (*.f64 (neg.f64 z) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 x (log.f64 y) (neg.f64 y))) 2) (cbrt.f64 (fma.f64 x (log.f64 y) (neg.f64 y))) (neg.f64 z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 x (log.f64 y) (neg.f64 y))) 2) (cbrt.f64 (fma.f64 x (log.f64 y) (neg.f64 y))) (*.f64 (neg.f64 z) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 z) 2) (neg.f64 (cbrt.f64 z)) (fma.f64 x (log.f64 y) (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (log.f64 y)) 2) (*.f64 (cbrt.f64 (log.f64 y)) x) (neg.f64 (+.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (log.f64 y)) 2) (*.f64 (cbrt.f64 (log.f64 y)) x) (-.f64 (neg.f64 y) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (log.f64 y)) 2) (*.f64 (cbrt.f64 (log.f64 y)) x) (neg.f64 (-.f64 y (neg.f64 z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) z)) (sqrt.f64 (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) z)) (fma.f64 (neg.f64 z) 1 z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) z)) (sqrt.f64 (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) z)) (fma.f64 (neg.f64 (cbrt.f64 z)) (pow.f64 (cbrt.f64 z) 2) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) z)) (sqrt.f64 (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) z)) (+.f64 (neg.f64 z) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 x (log.f64 y))) (sqrt.f64 (*.f64 x (log.f64 y))) (neg.f64 (+.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 x (log.f64 y))) (sqrt.f64 (*.f64 x (log.f64 y))) (-.f64 (neg.f64 y) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 x (log.f64 y))) (sqrt.f64 (*.f64 x (log.f64 y))) (neg.f64 (-.f64 y (neg.f64 z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) (log.f64 y)) (neg.f64 (+.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) (log.f64 y)) (-.f64 (neg.f64 y) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) (log.f64 y)) (neg.f64 (-.f64 y (neg.f64 z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 x (log.f64 y) (neg.f64 y))) (sqrt.f64 (fma.f64 x (log.f64 y) (neg.f64 y))) (neg.f64 z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 x (log.f64 y) (neg.f64 y))) (sqrt.f64 (fma.f64 x (log.f64 y) (neg.f64 y))) (*.f64 (neg.f64 z) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 z) (neg.f64 (sqrt.f64 z)) (fma.f64 x (log.f64 y) (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (log.f64 y)) (*.f64 (sqrt.f64 (log.f64 y)) x) (neg.f64 (+.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (log.f64 y)) (*.f64 (sqrt.f64 (log.f64 y)) x) (-.f64 (neg.f64 y) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (log.f64 y)) (*.f64 (sqrt.f64 (log.f64 y)) x) (neg.f64 (-.f64 y (neg.f64 z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 x (log.f64 y)) 3) (pow.f64 y 3)) (/.f64 1 (fma.f64 y (fma.f64 x (log.f64 y) y) (pow.f64 (*.f64 x (log.f64 y)) 2))) (neg.f64 z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 x (log.f64 y)) 3) (pow.f64 y 3)) (/.f64 1 (fma.f64 y (fma.f64 x (log.f64 y) y) (pow.f64 (*.f64 x (log.f64 y)) 2))) (*.f64 (neg.f64 z) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) 3) (pow.f64 z 3)) (/.f64 1 (fma.f64 z (fma.f64 x (log.f64 y) (fma.f64 -1 y z)) (pow.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) 2))) (fma.f64 (neg.f64 z) 1 z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) 3) (pow.f64 z 3)) (/.f64 1 (fma.f64 z (fma.f64 x (log.f64 y) (fma.f64 -1 y z)) (pow.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) 2))) (fma.f64 (neg.f64 (cbrt.f64 z)) (pow.f64 (cbrt.f64 z) 2) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) 3) (pow.f64 z 3)) (/.f64 1 (fma.f64 z (fma.f64 x (log.f64 y) (fma.f64 -1 y z)) (pow.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) 2))) (+.f64 (neg.f64 z) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 x (log.f64 y)) 2) (*.f64 y y)) (/.f64 1 (fma.f64 x (log.f64 y) y)) (neg.f64 z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 x (log.f64 y)) 2) (*.f64 y y)) (/.f64 1 (fma.f64 x (log.f64 y) y)) (*.f64 (neg.f64 z) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) 2) (*.f64 z z)) (/.f64 1 (fma.f64 x (log.f64 y) (fma.f64 -1 y z))) (fma.f64 (neg.f64 z) 1 z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) 2) (*.f64 z z)) (/.f64 1 (fma.f64 x (log.f64 y) (fma.f64 -1 y z))) (fma.f64 (neg.f64 (cbrt.f64 z)) (pow.f64 (cbrt.f64 z) 2) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) 2) (*.f64 z z)) (/.f64 1 (fma.f64 x (log.f64 y) (fma.f64 -1 y z))) (+.f64 (neg.f64 z) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (neg.f64 z)) (cbrt.f64 (neg.f64 z))) (cbrt.f64 (neg.f64 z)) (fma.f64 x (log.f64 y) (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (neg.f64 z)) (sqrt.f64 (neg.f64 z)) (fma.f64 x (log.f64 y) (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (sqrt.f64 z)) (sqrt.f64 z) (fma.f64 x (log.f64 y) (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 z (fma.f64 x (log.f64 y) (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (fma.f64 x (log.f64 y) (neg.f64 y))) (sqrt.f64 z)) (-.f64 (sqrt.f64 (fma.f64 x (log.f64 y) (neg.f64 y))) (sqrt.f64 z)) (fma.f64 (neg.f64 z) 1 z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (fma.f64 x (log.f64 y) (neg.f64 y))) (sqrt.f64 z)) (-.f64 (sqrt.f64 (fma.f64 x (log.f64 y) (neg.f64 y))) (sqrt.f64 z)) (fma.f64 (neg.f64 (cbrt.f64 z)) (pow.f64 (cbrt.f64 z) 2) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (fma.f64 x (log.f64 y) (neg.f64 y))) (sqrt.f64 z)) (-.f64 (sqrt.f64 (fma.f64 x (log.f64 y) (neg.f64 y))) (sqrt.f64 z)) (+.f64 (neg.f64 z) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (sqrt.f64 x) (sqrt.f64 (log.f64 y)) (sqrt.f64 y)) (-.f64 (sqrt.f64 (*.f64 x (log.f64 y))) (sqrt.f64 y)) (neg.f64 z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (sqrt.f64 x) (sqrt.f64 (log.f64 y)) (sqrt.f64 y)) (-.f64 (sqrt.f64 (*.f64 x (log.f64 y))) (sqrt.f64 y)) (*.f64 (neg.f64 z) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (pow.f64 (cbrt.f64 z) 2)) (cbrt.f64 z) (fma.f64 x (log.f64 y) (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (pow.f64 (cbrt.f64 (log.f64 y)) 2)) (cbrt.f64 (log.f64 y)) (neg.f64 (+.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (pow.f64 (cbrt.f64 (log.f64 y)) 2)) (cbrt.f64 (log.f64 y)) (-.f64 (neg.f64 y) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (pow.f64 (cbrt.f64 (log.f64 y)) 2)) (cbrt.f64 (log.f64 y)) (neg.f64 (-.f64 y (neg.f64 z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (sqrt.f64 (log.f64 y))) (sqrt.f64 (log.f64 y)) (neg.f64 (+.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (sqrt.f64 (log.f64 y))) (sqrt.f64 (log.f64 y)) (-.f64 (neg.f64 y) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (sqrt.f64 (log.f64 y))) (sqrt.f64 (log.f64 y)) (neg.f64 (-.f64 y (neg.f64 z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (log.f64 y) (cbrt.f64 (*.f64 x x))) (cbrt.f64 x) (neg.f64 (+.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (log.f64 y) (cbrt.f64 (*.f64 x x))) (cbrt.f64 x) (-.f64 (neg.f64 y) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (log.f64 y) (cbrt.f64 (*.f64 x x))) (cbrt.f64 x) (neg.f64 (-.f64 y (neg.f64 z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (log.f64 y) (sqrt.f64 x)) (sqrt.f64 x) (neg.f64 (+.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (log.f64 y) (sqrt.f64 x)) (sqrt.f64 x) (-.f64 (neg.f64 y) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (log.f64 y) (sqrt.f64 x)) (sqrt.f64 x) (neg.f64 (-.f64 y (neg.f64 z))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x (log.f64 y)) (+.f64 y (-.f64 z (log.f64 t))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x (log.f64 y)) (-.f64 (+.f64 y z) (log.f64 t)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) (-.f64 z (log.f64 t)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (-.f64 (log.f64 (*.f64 t (pow.f64 y x))) (+.f64 y z)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) z) 2) (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) (+.f64 z (log.f64 t)))) (/.f64 (pow.f64 (log.f64 t) 2) (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) (+.f64 z (log.f64 t)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (log.f64 (*.f64 t (pow.f64 y x))) (+.f64 y z))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (log.f64 t) (fma.f64 x (log.f64 y) (neg.f64 y))) z)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (log.f64 (*.f64 t (pow.f64 y x))) (+.f64 y z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (log.f64 (*.f64 t (pow.f64 y x))) (+.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 (log.f64 (*.f64 t (pow.f64 y x))) (+.f64 y z))) (cbrt.f64 (pow.f64 (-.f64 (log.f64 (*.f64 t (pow.f64 y x))) (+.f64 y z)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (-.f64 (log.f64 (*.f64 t (pow.f64 y x))) (+.f64 y z)) 2)) (cbrt.f64 (-.f64 (log.f64 (*.f64 t (pow.f64 y x))) (+.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 (log.f64 (*.f64 t (pow.f64 y x))) (+.f64 y z))) (sqrt.f64 (-.f64 (log.f64 (*.f64 t (pow.f64 y x))) (+.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) z) 3) (pow.f64 (log.f64 t) 3)) (/.f64 1 (fma.f64 (log.f64 t) (-.f64 (log.f64 t) (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) z)) (pow.f64 (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) z) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) z) 2) (pow.f64 (log.f64 t) 2)) (/.f64 1 (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) (+.f64 z (log.f64 t)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (log.f64 t) (-.f64 (log.f64 t) (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) z)) (pow.f64 (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) z) 2)) (+.f64 (pow.f64 (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) z) 3) (pow.f64 (log.f64 t) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) (+.f64 z (log.f64 t))) (-.f64 (pow.f64 (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) z) 2) (pow.f64 (log.f64 t) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) z) 3) (pow.f64 (log.f64 t) 3)) (fma.f64 (log.f64 t) (-.f64 (log.f64 t) (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) z)) (pow.f64 (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) z) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) z) 3) (pow.f64 (log.f64 t) 3)) (+.f64 (pow.f64 (log.f64 t) 2) (-.f64 (pow.f64 (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) z) 2) (*.f64 (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) z) (log.f64 t)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) z) 2) (pow.f64 (log.f64 t) 2)) (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) (+.f64 z (log.f64 t))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) z) 3) (pow.f64 (log.f64 t) 3))) (neg.f64 (fma.f64 (log.f64 t) (-.f64 (log.f64 t) (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) z)) (pow.f64 (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) z) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) z) 2) (pow.f64 (log.f64 t) 2))) (neg.f64 (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) (+.f64 z (log.f64 t)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) 3) (pow.f64 (-.f64 z (log.f64 t)) 3)) (+.f64 (pow.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) 2) (fma.f64 (-.f64 z (log.f64 t)) (-.f64 z (log.f64 t)) (*.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) (-.f64 z (log.f64 t))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) 2) (*.f64 (-.f64 z (log.f64 t)) (-.f64 z (log.f64 t)))) (+.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) (-.f64 z (log.f64 t))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (log.f64 t) 2) (pow.f64 (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) z) 2)) (-.f64 (log.f64 t) (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) z)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (log.f64 (*.f64 t (pow.f64 y x))) (+.f64 y z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (log.f64 (*.f64 t (pow.f64 y x))) (+.f64 y z)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (-.f64 (log.f64 (*.f64 t (pow.f64 y x))) (+.f64 y z))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (-.f64 (log.f64 (*.f64 t (pow.f64 y x))) (+.f64 y z))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (log.f64 t) (-.f64 (log.f64 t) (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) z)) (pow.f64 (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) z) 2)) (+.f64 (pow.f64 (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) z) 3) (pow.f64 (log.f64 t) 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) (+.f64 z (log.f64 t))) (-.f64 (pow.f64 (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) z) 2) (pow.f64 (log.f64 t) 2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (-.f64 (log.f64 (*.f64 t (pow.f64 y x))) (+.f64 y z)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 t (/.f64 (pow.f64 y x) (exp.f64 (+.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (fma.f64 t (/.f64 (pow.f64 y x) (exp.f64 (+.f64 y z))) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (fma.f64 x (log.f64 y) (neg.f64 y)))) (exp.f64 (-.f64 z (log.f64 t)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (/.f64 (pow.f64 y x) (exp.f64 y)) (/.f64 (exp.f64 z) t)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (fma.f64 x (log.f64 y) (neg.f64 y)))) (/.f64 (exp.f64 z) t)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) z))) t))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 (pow.f64 y x) (exp.f64 (+.f64 y z))) (+.f64 1 (-.f64 t 1))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) z))) (+.f64 1 (-.f64 t 1))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (-.f64 t 1)) (/.f64 (pow.f64 y x) (exp.f64 (+.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 t (+.f64 1 (expm1.f64 (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (-.f64 t 1)) (+.f64 1 (expm1.f64 (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) z)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (-.f64 (log.f64 (*.f64 t (pow.f64 y x))) (+.f64 y z)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (-.f64 (log.f64 (*.f64 t (pow.f64 y x))) (+.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (fma.f64 t (/.f64 (pow.f64 y x) (exp.f64 (+.f64 y z))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (-.f64 (log.f64 (*.f64 t (pow.f64 y x))) (+.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (-.f64 (log.f64 (*.f64 t (pow.f64 y x))) (+.f64 y z))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x (log.f64 y) (-.f64 (neg.f64 y) (-.f64 z (log.f64 t))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x (log.f64 y) (neg.f64 (+.f64 y (-.f64 z (log.f64 t)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x (log.f64 y) (neg.f64 (-.f64 (+.f64 y z) (log.f64 t))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (log.f64 y) x (-.f64 (neg.f64 y) (-.f64 z (log.f64 t))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (log.f64 y) x (neg.f64 (+.f64 y (-.f64 z (log.f64 t)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (log.f64 y) x (neg.f64 (-.f64 (+.f64 y z) (log.f64 t))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (log.f64 y)) 1 (-.f64 (neg.f64 y) (-.f64 z (log.f64 t))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (log.f64 y)) 1 (neg.f64 (+.f64 y (-.f64 z (log.f64 t)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (log.f64 y)) 1 (neg.f64 (-.f64 (+.f64 y z) (log.f64 t))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) 1 (neg.f64 (-.f64 z (log.f64 t))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) 1 (fma.f64 -1 z (log.f64 t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) z) 1 (log.f64 t))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (log.f64 t) 1 (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 x (log.f64 y)) (-.f64 (neg.f64 y) (-.f64 z (log.f64 t))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 x (log.f64 y)) (neg.f64 (+.f64 y (-.f64 z (log.f64 t)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 x (log.f64 y)) (neg.f64 (-.f64 (+.f64 y z) (log.f64 t))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 x (log.f64 y) (neg.f64 y)) (neg.f64 (-.f64 z (log.f64 t))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 x (log.f64 y) (neg.f64 y)) (fma.f64 -1 z (log.f64 t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) z) (log.f64 t))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (log.f64 t) (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) z)) (cbrt.f64 (pow.f64 (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) z) 2)) (log.f64 t))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) z) 2)) (cbrt.f64 (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) z)) (log.f64 t))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 x (log.f64 y))) (cbrt.f64 (pow.f64 (*.f64 x (log.f64 y)) 2)) (-.f64 (neg.f64 y) (-.f64 z (log.f64 t))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 x (log.f64 y))) (cbrt.f64 (pow.f64 (*.f64 x (log.f64 y)) 2)) (neg.f64 (+.f64 y (-.f64 z (log.f64 t)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 x (log.f64 y))) (cbrt.f64 (pow.f64 (*.f64 x (log.f64 y)) 2)) (neg.f64 (-.f64 (+.f64 y z) (log.f64 t))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (*.f64 x (log.f64 y)) 2)) (cbrt.f64 (*.f64 x (log.f64 y))) (-.f64 (neg.f64 y) (-.f64 z (log.f64 t))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (*.f64 x (log.f64 y)) 2)) (cbrt.f64 (*.f64 x (log.f64 y))) (neg.f64 (+.f64 y (-.f64 z (log.f64 t)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (*.f64 x (log.f64 y)) 2)) (cbrt.f64 (*.f64 x (log.f64 y))) (neg.f64 (-.f64 (+.f64 y z) (log.f64 t))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 x x)) (*.f64 (cbrt.f64 x) (log.f64 y)) (-.f64 (neg.f64 y) (-.f64 z (log.f64 t))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 x x)) (*.f64 (cbrt.f64 x) (log.f64 y)) (neg.f64 (+.f64 y (-.f64 z (log.f64 t)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 x x)) (*.f64 (cbrt.f64 x) (log.f64 y)) (neg.f64 (-.f64 (+.f64 y z) (log.f64 t))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 x (log.f64 y) (neg.f64 y))) (pow.f64 (cbrt.f64 (fma.f64 x (log.f64 y) (neg.f64 y))) 2) (neg.f64 (-.f64 z (log.f64 t))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 x (log.f64 y) (neg.f64 y))) (pow.f64 (cbrt.f64 (fma.f64 x (log.f64 y) (neg.f64 y))) 2) (fma.f64 -1 z (log.f64 t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 x (log.f64 y) (neg.f64 y))) 2) (cbrt.f64 (fma.f64 x (log.f64 y) (neg.f64 y))) (neg.f64 (-.f64 z (log.f64 t))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 x (log.f64 y) (neg.f64 y))) 2) (cbrt.f64 (fma.f64 x (log.f64 y) (neg.f64 y))) (fma.f64 -1 z (log.f64 t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (log.f64 t)) (pow.f64 (cbrt.f64 (log.f64 t)) 2) (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (log.f64 t)) 2) (cbrt.f64 (log.f64 t)) (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (log.f64 y)) 2) (*.f64 (cbrt.f64 (log.f64 y)) x) (-.f64 (neg.f64 y) (-.f64 z (log.f64 t))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (log.f64 y)) 2) (*.f64 (cbrt.f64 (log.f64 y)) x) (neg.f64 (+.f64 y (-.f64 z (log.f64 t)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (log.f64 y)) 2) (*.f64 (cbrt.f64 (log.f64 y)) x) (neg.f64 (-.f64 (+.f64 y z) (log.f64 t))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) z)) (sqrt.f64 (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) z)) (log.f64 t))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 x (log.f64 y))) (sqrt.f64 (*.f64 x (log.f64 y))) (-.f64 (neg.f64 y) (-.f64 z (log.f64 t))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 x (log.f64 y))) (sqrt.f64 (*.f64 x (log.f64 y))) (neg.f64 (+.f64 y (-.f64 z (log.f64 t)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 x (log.f64 y))) (sqrt.f64 (*.f64 x (log.f64 y))) (neg.f64 (-.f64 (+.f64 y z) (log.f64 t))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) (log.f64 y)) (-.f64 (neg.f64 y) (-.f64 z (log.f64 t))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) (log.f64 y)) (neg.f64 (+.f64 y (-.f64 z (log.f64 t)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) (log.f64 y)) (neg.f64 (-.f64 (+.f64 y z) (log.f64 t))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 x (log.f64 y) (neg.f64 y))) (sqrt.f64 (fma.f64 x (log.f64 y) (neg.f64 y))) (neg.f64 (-.f64 z (log.f64 t))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 x (log.f64 y) (neg.f64 y))) (sqrt.f64 (fma.f64 x (log.f64 y) (neg.f64 y))) (fma.f64 -1 z (log.f64 t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (log.f64 t)) (sqrt.f64 (log.f64 t)) (-.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (log.f64 y)) (*.f64 (sqrt.f64 (log.f64 y)) x) (-.f64 (neg.f64 y) (-.f64 z (log.f64 t))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (log.f64 y)) (*.f64 (sqrt.f64 (log.f64 y)) x) (neg.f64 (+.f64 y (-.f64 z (log.f64 t)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (log.f64 y)) (*.f64 (sqrt.f64 (log.f64 y)) x) (neg.f64 (-.f64 (+.f64 y z) (log.f64 t))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 x (log.f64 y)) 3) (pow.f64 y 3)) (/.f64 1 (fma.f64 y (fma.f64 x (log.f64 y) y) (pow.f64 (*.f64 x (log.f64 y)) 2))) (neg.f64 (-.f64 z (log.f64 t))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 x (log.f64 y)) 3) (pow.f64 y 3)) (/.f64 1 (fma.f64 y (fma.f64 x (log.f64 y) y) (pow.f64 (*.f64 x (log.f64 y)) 2))) (fma.f64 -1 z (log.f64 t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) 3) (pow.f64 z 3)) (/.f64 1 (fma.f64 z (fma.f64 x (log.f64 y) (fma.f64 -1 y z)) (pow.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) 2))) (log.f64 t))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 x (log.f64 y)) 2) (*.f64 y y)) (/.f64 1 (fma.f64 x (log.f64 y) y)) (neg.f64 (-.f64 z (log.f64 t))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 x (log.f64 y)) 2) (*.f64 y y)) (/.f64 1 (fma.f64 x (log.f64 y) y)) (fma.f64 -1 z (log.f64 t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) 2) (*.f64 z z)) (/.f64 1 (fma.f64 x (log.f64 y) (fma.f64 -1 y z))) (log.f64 t))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (fma.f64 x (log.f64 y) (neg.f64 y))) (sqrt.f64 z)) (-.f64 (sqrt.f64 (fma.f64 x (log.f64 y) (neg.f64 y))) (sqrt.f64 z)) (log.f64 t))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (sqrt.f64 x) (sqrt.f64 (log.f64 y)) (sqrt.f64 y)) (-.f64 (sqrt.f64 (*.f64 x (log.f64 y))) (sqrt.f64 y)) (neg.f64 (-.f64 z (log.f64 t))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (sqrt.f64 x) (sqrt.f64 (log.f64 y)) (sqrt.f64 y)) (-.f64 (sqrt.f64 (*.f64 x (log.f64 y))) (sqrt.f64 y)) (fma.f64 -1 z (log.f64 t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (pow.f64 (cbrt.f64 (log.f64 y)) 2)) (cbrt.f64 (log.f64 y)) (-.f64 (neg.f64 y) (-.f64 z (log.f64 t))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (pow.f64 (cbrt.f64 (log.f64 y)) 2)) (cbrt.f64 (log.f64 y)) (neg.f64 (+.f64 y (-.f64 z (log.f64 t)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (pow.f64 (cbrt.f64 (log.f64 y)) 2)) (cbrt.f64 (log.f64 y)) (neg.f64 (-.f64 (+.f64 y z) (log.f64 t))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (sqrt.f64 (log.f64 y))) (sqrt.f64 (log.f64 y)) (-.f64 (neg.f64 y) (-.f64 z (log.f64 t))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (sqrt.f64 (log.f64 y))) (sqrt.f64 (log.f64 y)) (neg.f64 (+.f64 y (-.f64 z (log.f64 t)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (sqrt.f64 (log.f64 y))) (sqrt.f64 (log.f64 y)) (neg.f64 (-.f64 (+.f64 y z) (log.f64 t))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (log.f64 y) (cbrt.f64 (*.f64 x x))) (cbrt.f64 x) (-.f64 (neg.f64 y) (-.f64 z (log.f64 t))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (log.f64 y) (cbrt.f64 (*.f64 x x))) (cbrt.f64 x) (neg.f64 (+.f64 y (-.f64 z (log.f64 t)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (log.f64 y) (cbrt.f64 (*.f64 x x))) (cbrt.f64 x) (neg.f64 (-.f64 (+.f64 y z) (log.f64 t))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (log.f64 y) (sqrt.f64 x)) (sqrt.f64 x) (-.f64 (neg.f64 y) (-.f64 z (log.f64 t))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (log.f64 y) (sqrt.f64 x)) (sqrt.f64 x) (neg.f64 (+.f64 y (-.f64 z (log.f64 t)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (log.f64 y) (sqrt.f64 x)) (sqrt.f64 x) (neg.f64 (-.f64 (+.f64 y z) (log.f64 t))))))))

simplify224.0ms (1.9%)

Algorithm
egg-herbie
Rules
780×unsub-neg_binary64
575×sub-neg_binary64
506×fma-def_binary64
365×distribute-neg-out_binary64
343×fma-neg_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0611347
11831347
24091347
312731347
442141347
560231347
670881347
777061347
879241347
979871347
1079871347
Stop Event
node limit
Counts
529 → 431
Calls
Call 1
Inputs
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x))
(*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x)
(*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x)
(*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x)
(*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x)
(*.f64 -1 y)
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y))
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y))
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y))
(*.f64 (log.f64 y) x)
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y))
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y))
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y))
(*.f64 (log.f64 y) x)
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y))
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y))
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y))
(*.f64 (log.f64 y) x)
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y))
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y))
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y))
(*.f64 -1 y)
(+.f64 (*.f64 -1 y) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x)))
(+.f64 (*.f64 -1 y) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x)))
(+.f64 (*.f64 -1 y) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x)))
(*.f64 -1 y)
(+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x) (*.f64 -1 y))
(+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x) (*.f64 -1 y))
(+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x) (*.f64 -1 y))
(*.f64 -1 (+.f64 y z))
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 (+.f64 y z)))
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 (+.f64 y z)))
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 (+.f64 y z)))
(*.f64 (log.f64 y) x)
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 (+.f64 y z)))
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 (+.f64 y z)))
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 (+.f64 y z)))
(*.f64 (log.f64 y) x)
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 (+.f64 y z)))
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 (+.f64 y z)))
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 (+.f64 y z)))
(-.f64 (*.f64 (log.f64 y) x) z)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y)) z)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y)) z)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y)) z)
(*.f64 -1 y)
(-.f64 (+.f64 (*.f64 -1 y) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x))) z)
(-.f64 (+.f64 (*.f64 -1 y) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x))) z)
(-.f64 (+.f64 (*.f64 -1 y) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x))) z)
(*.f64 -1 y)
(-.f64 (+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x) (*.f64 -1 y)) z)
(-.f64 (+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x) (*.f64 -1 y)) z)
(-.f64 (+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x) (*.f64 -1 y)) z)
(-.f64 (*.f64 (log.f64 y) x) y)
(-.f64 (+.f64 (*.f64 -1 z) (*.f64 (log.f64 y) x)) y)
(-.f64 (+.f64 (*.f64 -1 z) (*.f64 (log.f64 y) x)) y)
(-.f64 (+.f64 (*.f64 -1 z) (*.f64 (log.f64 y) x)) y)
(*.f64 -1 z)
(-.f64 (+.f64 (*.f64 -1 z) (*.f64 (log.f64 y) x)) y)
(-.f64 (+.f64 (*.f64 -1 z) (*.f64 (log.f64 y) x)) y)
(-.f64 (+.f64 (*.f64 -1 z) (*.f64 (log.f64 y) x)) y)
(*.f64 -1 z)
(-.f64 (+.f64 (*.f64 -1 z) (*.f64 (log.f64 y) x)) y)
(-.f64 (+.f64 (*.f64 -1 z) (*.f64 (log.f64 y) x)) y)
(-.f64 (+.f64 (*.f64 -1 z) (*.f64 (log.f64 y) x)) y)
(-.f64 (log.f64 t) (+.f64 y z))
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)) (+.f64 y z))
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)) (+.f64 y z))
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)) (+.f64 y z))
(*.f64 (log.f64 y) x)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)) (+.f64 y z))
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)) (+.f64 y z))
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)) (+.f64 y z))
(*.f64 (log.f64 y) x)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)) (+.f64 y z))
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)) (+.f64 y z))
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)) (+.f64 y z))
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)) z)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (+.f64 (*.f64 -1 y) (log.f64 t))) z)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (+.f64 (*.f64 -1 y) (log.f64 t))) z)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (+.f64 (*.f64 -1 y) (log.f64 t))) z)
(*.f64 -1 y)
(-.f64 (+.f64 (*.f64 -1 y) (+.f64 (log.f64 t) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x)))) z)
(-.f64 (+.f64 (*.f64 -1 y) (+.f64 (log.f64 t) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x)))) z)
(-.f64 (+.f64 (*.f64 -1 y) (+.f64 (log.f64 t) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x)))) z)
(*.f64 -1 y)
(-.f64 (+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x) (+.f64 (*.f64 -1 y) (log.f64 t))) z)
(-.f64 (+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x) (+.f64 (*.f64 -1 y) (log.f64 t))) z)
(-.f64 (+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x) (+.f64 (*.f64 -1 y) (log.f64 t))) z)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)) y)
(-.f64 (+.f64 (*.f64 -1 z) (+.f64 (*.f64 (log.f64 y) x) (log.f64 t))) y)
(-.f64 (+.f64 (*.f64 -1 z) (+.f64 (*.f64 (log.f64 y) x) (log.f64 t))) y)
(-.f64 (+.f64 (*.f64 -1 z) (+.f64 (*.f64 (log.f64 y) x) (log.f64 t))) y)
(*.f64 -1 z)
(-.f64 (+.f64 (*.f64 -1 z) (+.f64 (*.f64 (log.f64 y) x) (log.f64 t))) y)
(-.f64 (+.f64 (*.f64 -1 z) (+.f64 (*.f64 (log.f64 y) x) (log.f64 t))) y)
(-.f64 (+.f64 (*.f64 -1 z) (+.f64 (*.f64 (log.f64 y) x) (log.f64 t))) y)
(*.f64 -1 z)
(-.f64 (+.f64 (*.f64 -1 z) (+.f64 (*.f64 (log.f64 y) x) (log.f64 t))) y)
(-.f64 (+.f64 (*.f64 -1 z) (+.f64 (*.f64 (log.f64 y) x) (log.f64 t))) y)
(-.f64 (+.f64 (*.f64 -1 z) (+.f64 (*.f64 (log.f64 y) x) (log.f64 t))) y)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)) (+.f64 y z))
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)) (+.f64 y z))
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)) (+.f64 y z))
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)) (+.f64 y z))
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 (log.f64 (/.f64 1 t)))) (+.f64 y z))
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 (log.f64 (/.f64 1 t)))) (+.f64 y z))
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 (log.f64 (/.f64 1 t)))) (+.f64 y z))
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 (log.f64 (/.f64 1 t)))) (+.f64 y z))
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 t))))) (+.f64 y z))
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 t))))) (+.f64 y z))
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 t))))) (+.f64 y z))
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 t))))) (+.f64 y z))
Outputs
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x))
(*.f64 (log.f64 y) x)
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x))
(*.f64 (log.f64 y) x)
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x))
(*.f64 (log.f64 y) x)
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x))
(*.f64 (log.f64 y) x)
(*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x)
(*.f64 (log.f64 y) x)
(*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x)
(*.f64 (log.f64 y) x)
(*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x)
(*.f64 (log.f64 y) x)
(*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x)
(*.f64 (log.f64 y) x)
(*.f64 -1 y)
(neg.f64 y)
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y))
(-.f64 (*.f64 (log.f64 y) x) y)
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y))
(-.f64 (*.f64 (log.f64 y) x) y)
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y))
(-.f64 (*.f64 (log.f64 y) x) y)
(*.f64 (log.f64 y) x)
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y))
(-.f64 (*.f64 (log.f64 y) x) y)
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y))
(-.f64 (*.f64 (log.f64 y) x) y)
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y))
(-.f64 (*.f64 (log.f64 y) x) y)
(*.f64 (log.f64 y) x)
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y))
(-.f64 (*.f64 (log.f64 y) x) y)
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y))
(-.f64 (*.f64 (log.f64 y) x) y)
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y))
(-.f64 (*.f64 (log.f64 y) x) y)
(*.f64 (log.f64 y) x)
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y))
(-.f64 (*.f64 (log.f64 y) x) y)
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y))
(-.f64 (*.f64 (log.f64 y) x) y)
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y))
(-.f64 (*.f64 (log.f64 y) x) y)
(*.f64 -1 y)
(neg.f64 y)
(+.f64 (*.f64 -1 y) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x)))
(-.f64 (*.f64 (log.f64 y) x) y)
(+.f64 (*.f64 -1 y) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x)))
(-.f64 (*.f64 (log.f64 y) x) y)
(+.f64 (*.f64 -1 y) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x)))
(-.f64 (*.f64 (log.f64 y) x) y)
(*.f64 -1 y)
(neg.f64 y)
(+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x) (*.f64 -1 y))
(-.f64 (*.f64 (log.f64 y) x) y)
(+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x) (*.f64 -1 y))
(-.f64 (*.f64 (log.f64 y) x) y)
(+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x) (*.f64 -1 y))
(-.f64 (*.f64 (log.f64 y) x) y)
(*.f64 -1 (+.f64 y z))
(neg.f64 (+.f64 y z))
(-.f64 (neg.f64 y) z)
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 (+.f64 y z)))
(fma.f64 (log.f64 y) x (neg.f64 (+.f64 y z)))
(-.f64 (*.f64 (log.f64 y) x) (+.f64 y z))
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 (+.f64 y z)))
(fma.f64 (log.f64 y) x (neg.f64 (+.f64 y z)))
(-.f64 (*.f64 (log.f64 y) x) (+.f64 y z))
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 (+.f64 y z)))
(fma.f64 (log.f64 y) x (neg.f64 (+.f64 y z)))
(-.f64 (*.f64 (log.f64 y) x) (+.f64 y z))
(*.f64 (log.f64 y) x)
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 (+.f64 y z)))
(fma.f64 (log.f64 y) x (neg.f64 (+.f64 y z)))
(-.f64 (*.f64 (log.f64 y) x) (+.f64 y z))
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 (+.f64 y z)))
(fma.f64 (log.f64 y) x (neg.f64 (+.f64 y z)))
(-.f64 (*.f64 (log.f64 y) x) (+.f64 y z))
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 (+.f64 y z)))
(fma.f64 (log.f64 y) x (neg.f64 (+.f64 y z)))
(-.f64 (*.f64 (log.f64 y) x) (+.f64 y z))
(*.f64 (log.f64 y) x)
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 (+.f64 y z)))
(fma.f64 (log.f64 y) x (neg.f64 (+.f64 y z)))
(-.f64 (*.f64 (log.f64 y) x) (+.f64 y z))
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 (+.f64 y z)))
(fma.f64 (log.f64 y) x (neg.f64 (+.f64 y z)))
(-.f64 (*.f64 (log.f64 y) x) (+.f64 y z))
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 (+.f64 y z)))
(fma.f64 (log.f64 y) x (neg.f64 (+.f64 y z)))
(-.f64 (*.f64 (log.f64 y) x) (+.f64 y z))
(-.f64 (*.f64 (log.f64 y) x) z)
(fma.f64 (log.f64 y) x (neg.f64 z))
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y)) z)
(fma.f64 (log.f64 y) x (neg.f64 (+.f64 y z)))
(-.f64 (*.f64 (log.f64 y) x) (+.f64 y z))
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y)) z)
(fma.f64 (log.f64 y) x (neg.f64 (+.f64 y z)))
(-.f64 (*.f64 (log.f64 y) x) (+.f64 y z))
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y)) z)
(fma.f64 (log.f64 y) x (neg.f64 (+.f64 y z)))
(-.f64 (*.f64 (log.f64 y) x) (+.f64 y z))
(*.f64 -1 y)
(neg.f64 y)
(-.f64 (+.f64 (*.f64 -1 y) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x))) z)
(fma.f64 (log.f64 y) x (neg.f64 (+.f64 y z)))
(-.f64 (*.f64 (log.f64 y) x) (+.f64 y z))
(-.f64 (+.f64 (*.f64 -1 y) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x))) z)
(fma.f64 (log.f64 y) x (neg.f64 (+.f64 y z)))
(-.f64 (*.f64 (log.f64 y) x) (+.f64 y z))
(-.f64 (+.f64 (*.f64 -1 y) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x))) z)
(fma.f64 (log.f64 y) x (neg.f64 (+.f64 y z)))
(-.f64 (*.f64 (log.f64 y) x) (+.f64 y z))
(*.f64 -1 y)
(neg.f64 y)
(-.f64 (+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x) (*.f64 -1 y)) z)
(fma.f64 (log.f64 y) x (neg.f64 (+.f64 y z)))
(-.f64 (*.f64 (log.f64 y) x) (+.f64 y z))
(-.f64 (+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x) (*.f64 -1 y)) z)
(fma.f64 (log.f64 y) x (neg.f64 (+.f64 y z)))
(-.f64 (*.f64 (log.f64 y) x) (+.f64 y z))
(-.f64 (+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x) (*.f64 -1 y)) z)
(fma.f64 (log.f64 y) x (neg.f64 (+.f64 y z)))
(-.f64 (*.f64 (log.f64 y) x) (+.f64 y z))
(-.f64 (*.f64 (log.f64 y) x) y)
(-.f64 (+.f64 (*.f64 -1 z) (*.f64 (log.f64 y) x)) y)
(fma.f64 (log.f64 y) x (neg.f64 (+.f64 y z)))
(-.f64 (*.f64 (log.f64 y) x) (+.f64 y z))
(-.f64 (+.f64 (*.f64 -1 z) (*.f64 (log.f64 y) x)) y)
(fma.f64 (log.f64 y) x (neg.f64 (+.f64 y z)))
(-.f64 (*.f64 (log.f64 y) x) (+.f64 y z))
(-.f64 (+.f64 (*.f64 -1 z) (*.f64 (log.f64 y) x)) y)
(fma.f64 (log.f64 y) x (neg.f64 (+.f64 y z)))
(-.f64 (*.f64 (log.f64 y) x) (+.f64 y z))
(*.f64 -1 z)
(neg.f64 z)
(-.f64 (+.f64 (*.f64 -1 z) (*.f64 (log.f64 y) x)) y)
(fma.f64 (log.f64 y) x (neg.f64 (+.f64 y z)))
(-.f64 (*.f64 (log.f64 y) x) (+.f64 y z))
(-.f64 (+.f64 (*.f64 -1 z) (*.f64 (log.f64 y) x)) y)
(fma.f64 (log.f64 y) x (neg.f64 (+.f64 y z)))
(-.f64 (*.f64 (log.f64 y) x) (+.f64 y z))
(-.f64 (+.f64 (*.f64 -1 z) (*.f64 (log.f64 y) x)) y)
(fma.f64 (log.f64 y) x (neg.f64 (+.f64 y z)))
(-.f64 (*.f64 (log.f64 y) x) (+.f64 y z))
(*.f64 -1 z)
(neg.f64 z)
(-.f64 (+.f64 (*.f64 -1 z) (*.f64 (log.f64 y) x)) y)
(fma.f64 (log.f64 y) x (neg.f64 (+.f64 y z)))
(-.f64 (*.f64 (log.f64 y) x) (+.f64 y z))
(-.f64 (+.f64 (*.f64 -1 z) (*.f64 (log.f64 y) x)) y)
(fma.f64 (log.f64 y) x (neg.f64 (+.f64 y z)))
(-.f64 (*.f64 (log.f64 y) x) (+.f64 y z))
(-.f64 (+.f64 (*.f64 -1 z) (*.f64 (log.f64 y) x)) y)
(fma.f64 (log.f64 y) x (neg.f64 (+.f64 y z)))
(-.f64 (*.f64 (log.f64 y) x) (+.f64 y z))
(-.f64 (log.f64 t) (+.f64 y z))
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)) (+.f64 y z))
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) (+.f64 y z))
(-.f64 (fma.f64 (log.f64 y) x (-.f64 (log.f64 t) y)) z)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)) (+.f64 y z))
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) (+.f64 y z))
(-.f64 (fma.f64 (log.f64 y) x (-.f64 (log.f64 t) y)) z)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)) (+.f64 y z))
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) (+.f64 y z))
(-.f64 (fma.f64 (log.f64 y) x (-.f64 (log.f64 t) y)) z)
(*.f64 (log.f64 y) x)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)) (+.f64 y z))
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) (+.f64 y z))
(-.f64 (fma.f64 (log.f64 y) x (-.f64 (log.f64 t) y)) z)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)) (+.f64 y z))
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) (+.f64 y z))
(-.f64 (fma.f64 (log.f64 y) x (-.f64 (log.f64 t) y)) z)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)) (+.f64 y z))
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) (+.f64 y z))
(-.f64 (fma.f64 (log.f64 y) x (-.f64 (log.f64 t) y)) z)
(*.f64 (log.f64 y) x)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)) (+.f64 y z))
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) (+.f64 y z))
(-.f64 (fma.f64 (log.f64 y) x (-.f64 (log.f64 t) y)) z)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)) (+.f64 y z))
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) (+.f64 y z))
(-.f64 (fma.f64 (log.f64 y) x (-.f64 (log.f64 t) y)) z)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)) (+.f64 y z))
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) (+.f64 y z))
(-.f64 (fma.f64 (log.f64 y) x (-.f64 (log.f64 t) y)) z)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)) z)
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) z)
(fma.f64 (log.f64 y) x (-.f64 (log.f64 t) z))
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (+.f64 (*.f64 -1 y) (log.f64 t))) z)
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) (+.f64 y z))
(-.f64 (fma.f64 (log.f64 y) x (-.f64 (log.f64 t) y)) z)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (+.f64 (*.f64 -1 y) (log.f64 t))) z)
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) (+.f64 y z))
(-.f64 (fma.f64 (log.f64 y) x (-.f64 (log.f64 t) y)) z)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (+.f64 (*.f64 -1 y) (log.f64 t))) z)
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) (+.f64 y z))
(-.f64 (fma.f64 (log.f64 y) x (-.f64 (log.f64 t) y)) z)
(*.f64 -1 y)
(neg.f64 y)
(-.f64 (+.f64 (*.f64 -1 y) (+.f64 (log.f64 t) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x)))) z)
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) (+.f64 y z))
(-.f64 (fma.f64 (log.f64 y) x (-.f64 (log.f64 t) y)) z)
(-.f64 (+.f64 (*.f64 -1 y) (+.f64 (log.f64 t) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x)))) z)
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) (+.f64 y z))
(-.f64 (fma.f64 (log.f64 y) x (-.f64 (log.f64 t) y)) z)
(-.f64 (+.f64 (*.f64 -1 y) (+.f64 (log.f64 t) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x)))) z)
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) (+.f64 y z))
(-.f64 (fma.f64 (log.f64 y) x (-.f64 (log.f64 t) y)) z)
(*.f64 -1 y)
(neg.f64 y)
(-.f64 (+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x) (+.f64 (*.f64 -1 y) (log.f64 t))) z)
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) (+.f64 y z))
(-.f64 (fma.f64 (log.f64 y) x (-.f64 (log.f64 t) y)) z)
(-.f64 (+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x) (+.f64 (*.f64 -1 y) (log.f64 t))) z)
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) (+.f64 y z))
(-.f64 (fma.f64 (log.f64 y) x (-.f64 (log.f64 t) y)) z)
(-.f64 (+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x) (+.f64 (*.f64 -1 y) (log.f64 t))) z)
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) (+.f64 y z))
(-.f64 (fma.f64 (log.f64 y) x (-.f64 (log.f64 t) y)) z)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)) y)
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) y)
(fma.f64 (log.f64 y) x (-.f64 (log.f64 t) y))
(-.f64 (+.f64 (*.f64 -1 z) (+.f64 (*.f64 (log.f64 y) x) (log.f64 t))) y)
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) (+.f64 y z))
(-.f64 (fma.f64 (log.f64 y) x (-.f64 (log.f64 t) y)) z)
(-.f64 (+.f64 (*.f64 -1 z) (+.f64 (*.f64 (log.f64 y) x) (log.f64 t))) y)
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) (+.f64 y z))
(-.f64 (fma.f64 (log.f64 y) x (-.f64 (log.f64 t) y)) z)
(-.f64 (+.f64 (*.f64 -1 z) (+.f64 (*.f64 (log.f64 y) x) (log.f64 t))) y)
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) (+.f64 y z))
(-.f64 (fma.f64 (log.f64 y) x (-.f64 (log.f64 t) y)) z)
(*.f64 -1 z)
(neg.f64 z)
(-.f64 (+.f64 (*.f64 -1 z) (+.f64 (*.f64 (log.f64 y) x) (log.f64 t))) y)
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) (+.f64 y z))
(-.f64 (fma.f64 (log.f64 y) x (-.f64 (log.f64 t) y)) z)
(-.f64 (+.f64 (*.f64 -1 z) (+.f64 (*.f64 (log.f64 y) x) (log.f64 t))) y)
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) (+.f64 y z))
(-.f64 (fma.f64 (log.f64 y) x (-.f64 (log.f64 t) y)) z)
(-.f64 (+.f64 (*.f64 -1 z) (+.f64 (*.f64 (log.f64 y) x) (log.f64 t))) y)
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) (+.f64 y z))
(-.f64 (fma.f64 (log.f64 y) x (-.f64 (log.f64 t) y)) z)
(*.f64 -1 z)
(neg.f64 z)
(-.f64 (+.f64 (*.f64 -1 z) (+.f64 (*.f64 (log.f64 y) x) (log.f64 t))) y)
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) (+.f64 y z))
(-.f64 (fma.f64 (log.f64 y) x (-.f64 (log.f64 t) y)) z)
(-.f64 (+.f64 (*.f64 -1 z) (+.f64 (*.f64 (log.f64 y) x) (log.f64 t))) y)
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) (+.f64 y z))
(-.f64 (fma.f64 (log.f64 y) x (-.f64 (log.f64 t) y)) z)
(-.f64 (+.f64 (*.f64 -1 z) (+.f64 (*.f64 (log.f64 y) x) (log.f64 t))) y)
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) (+.f64 y z))
(-.f64 (fma.f64 (log.f64 y) x (-.f64 (log.f64 t) y)) z)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)) (+.f64 y z))
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) (+.f64 y z))
(-.f64 (fma.f64 (log.f64 y) x (-.f64 (log.f64 t) y)) z)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)) (+.f64 y z))
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) (+.f64 y z))
(-.f64 (fma.f64 (log.f64 y) x (-.f64 (log.f64 t) y)) z)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)) (+.f64 y z))
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) (+.f64 y z))
(-.f64 (fma.f64 (log.f64 y) x (-.f64 (log.f64 t) y)) z)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)) (+.f64 y z))
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) (+.f64 y z))
(-.f64 (fma.f64 (log.f64 y) x (-.f64 (log.f64 t) y)) z)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 (log.f64 (/.f64 1 t)))) (+.f64 y z))
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) (+.f64 y z))
(-.f64 (fma.f64 (log.f64 y) x (-.f64 (log.f64 t) y)) z)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 (log.f64 (/.f64 1 t)))) (+.f64 y z))
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) (+.f64 y z))
(-.f64 (fma.f64 (log.f64 y) x (-.f64 (log.f64 t) y)) z)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 (log.f64 (/.f64 1 t)))) (+.f64 y z))
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) (+.f64 y z))
(-.f64 (fma.f64 (log.f64 y) x (-.f64 (log.f64 t) y)) z)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 (log.f64 (/.f64 1 t)))) (+.f64 y z))
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) (+.f64 y z))
(-.f64 (fma.f64 (log.f64 y) x (-.f64 (log.f64 t) y)) z)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 t))))) (+.f64 y z))
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) (+.f64 y z))
(-.f64 (fma.f64 (log.f64 y) x (-.f64 (log.f64 t) y)) z)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 t))))) (+.f64 y z))
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) (+.f64 y z))
(-.f64 (fma.f64 (log.f64 y) x (-.f64 (log.f64 t) y)) z)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 t))))) (+.f64 y z))
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) (+.f64 y z))
(-.f64 (fma.f64 (log.f64 y) x (-.f64 (log.f64 t) y)) z)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 t))))) (+.f64 y z))
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) (+.f64 y z))
(-.f64 (fma.f64 (log.f64 y) x (-.f64 (log.f64 t) y)) z)

eval107.0ms (0.9%)

Compiler

Compiled 8132 to 2204 computations (72.9% saved)

prune82.0ms (0.7%)

Pruning

12 alts after pruning (12 fresh and 0 done)

PrunedKeptTotal
New41912431
Fresh000
Picked101
Done000
Total42012432
Error
0.0b
Counts
432 → 12
Alt Table
Click to see full alt table
StatusErrorProgram
18.3b
(-.f64 (log.f64 t) (+.f64 y z))
17.1b
(fma.f64 (*.f64 (log.f64 y) (cbrt.f64 (*.f64 x x))) (cbrt.f64 x) (-.f64 (neg.f64 y) (-.f64 z (log.f64 t))))
30.3b
(fma.f64 (*.f64 x (sqrt.f64 (log.f64 y))) (sqrt.f64 (log.f64 y)) (-.f64 (neg.f64 y) (-.f64 z (log.f64 t))))
0.3b
(fma.f64 (pow.f64 (cbrt.f64 (log.f64 y)) 2) (*.f64 (cbrt.f64 (log.f64 y)) x) (-.f64 (neg.f64 y) (-.f64 z (log.f64 t))))
30.1b
(+.f64 (-.f64 (-.f64 (pow.f64 (sqrt.f64 (*.f64 x (log.f64 y))) 2) y) z) (log.f64 t))
20.8b
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)) z)
52.5b
(log.f64 (*.f64 t (/.f64 (pow.f64 y x) (exp.f64 (+.f64 y z)))))
38.0b
(+.f64 (neg.f64 z) (log.f64 t))
14.0b
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)) y)
29.9b
(fma.f64 (*.f64 (log.f64 y) (sqrt.f64 x)) (sqrt.f64 x) (-.f64 (neg.f64 y) (-.f64 z (log.f64 t))))
20.8b
(fma.f64 (log.f64 y) x (-.f64 (log.f64 t) z))
0.3b
(+.f64 (-.f64 (-.f64 (pow.f64 (cbrt.f64 (*.f64 x (log.f64 y))) 3) y) z) (log.f64 t))
Compiler

Compiled 380 to 256 computations (32.6% saved)

localize23.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(fma.f64 (pow.f64 (cbrt.f64 (log.f64 y)) 2) (*.f64 (cbrt.f64 (log.f64 y)) x) (-.f64 (neg.f64 y) (-.f64 z (log.f64 t))))
0.3b
(*.f64 (cbrt.f64 (log.f64 y)) x)
0.5b
(cbrt.f64 (log.f64 y))
0.5b
(pow.f64 (cbrt.f64 (log.f64 y)) 2)
Compiler

Compiled 57 to 17 computations (70.2% saved)

series48.0ms (0.4%)

Counts
4 → 96
Calls

24 calls:

TimeVariablePointExpression
20.0ms
y
@inf
(fma.f64 (pow.f64 (cbrt.f64 (log.f64 y)) 2) (*.f64 (cbrt.f64 (log.f64 y)) x) (-.f64 (neg.f64 y) (-.f64 z (log.f64 t))))
5.0ms
y
@0
(*.f64 (cbrt.f64 (log.f64 y)) x)
3.0ms
t
@0
(fma.f64 (pow.f64 (cbrt.f64 (log.f64 y)) 2) (*.f64 (cbrt.f64 (log.f64 y)) x) (-.f64 (neg.f64 y) (-.f64 z (log.f64 t))))
2.0ms
y
@0
(pow.f64 (cbrt.f64 (log.f64 y)) 2)
2.0ms
y
@inf
(pow.f64 (cbrt.f64 (log.f64 y)) 2)

rewrite77.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
697×log-prod_binary64
537×fma-def_binary64
275×fma-neg_binary64
266×expm1-udef_binary64
266×log1p-udef_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01550
132138
2431736
Stop Event
node limit
Counts
4 → 97
Calls
Call 1
Inputs
(pow.f64 (cbrt.f64 (log.f64 y)) 2)
(cbrt.f64 (log.f64 y))
(*.f64 (cbrt.f64 (log.f64 y)) x)
(fma.f64 (pow.f64 (cbrt.f64 (log.f64 y)) 2) (*.f64 (cbrt.f64 (log.f64 y)) x) (-.f64 (neg.f64 y) (-.f64 z (log.f64 t))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (pow.f64 (cbrt.f64 (log.f64 y)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 y)) 2))) (cbrt.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 y)) 2))))) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 y)) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 y)) 2)))) (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 y)) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (pow.f64 (cbrt.f64 (log.f64 y)) 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (log.f64 y)) (cbrt.f64 (log.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (log.f64 y)) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (cbrt.f64 (log.f64 y)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (log.f64 y))) 2) (cbrt.f64 (pow.f64 (cbrt.f64 (log.f64 y)) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (log.f64 y))) 2) (*.f64 (cbrt.f64 (cbrt.f64 (log.f64 y))) (cbrt.f64 (log.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (log.f64 y)) 4)) (pow.f64 (cbrt.f64 (cbrt.f64 (log.f64 y))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (log.f64 y)) (pow.f64 (log.f64 y) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (log.f64 y) 1/6) (*.f64 (pow.f64 (log.f64 y) 1/6) (cbrt.f64 (log.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (log.f64 y)) (pow.f64 (cbrt.f64 (cbrt.f64 (log.f64 y))) 2)) (cbrt.f64 (cbrt.f64 (log.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (cbrt.f64 (log.f64 y)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 y)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (pow.f64 (cbrt.f64 (log.f64 y)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (log.f64 y) 2))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (cbrt.f64 (log.f64 y)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (cbrt.f64 (log.f64 y)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 2/3 (log.f64 (log.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 2/3 (log.f64 (log.f64 y))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (cbrt.f64 (log.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (cbrt.f64 (log.f64 y)))) (cbrt.f64 (exp.f64 (cbrt.f64 (log.f64 y)))))) (log.f64 (cbrt.f64 (exp.f64 (cbrt.f64 (log.f64 y))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (cbrt.f64 (log.f64 y))))) (log.f64 (sqrt.f64 (exp.f64 (cbrt.f64 (log.f64 y))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (cbrt.f64 (log.f64 y)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (log.f64 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (cbrt.f64 (log.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (log.f64 y))) 2) (cbrt.f64 (cbrt.f64 (log.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (log.f64 y))) (pow.f64 (cbrt.f64 (cbrt.f64 (log.f64 y))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (log.f64 y) 1/6) (pow.f64 (log.f64 y) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (log.f64 y)) 4))) (sqrt.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (log.f64 y))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/3) (cbrt.f64 (log.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (log.f64 y)) 1/3) (pow.f64 (sqrt.f64 (log.f64 y)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (log.f64 y) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (log.f64 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cbrt.f64 (log.f64 y)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (cbrt.f64 (log.f64 y))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (log.f64 y) 1/6) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (cbrt.f64 (log.f64 y)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (cbrt.f64 (log.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (cbrt.f64 (log.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (cbrt.f64 (log.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (cbrt.f64 (log.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (cbrt.f64 (log.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (cbrt.f64 (log.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (log.f64 y)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (log.f64 y))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (cbrt.f64 (log.f64 y)) x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 x) (cbrt.f64 (log.f64 y)))) (cbrt.f64 (pow.f64 (exp.f64 x) (cbrt.f64 (log.f64 y)))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 x) (cbrt.f64 (log.f64 y))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 x) (cbrt.f64 (log.f64 y))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 x) (cbrt.f64 (log.f64 y))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (cbrt.f64 (log.f64 y)) x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (cbrt.f64 (log.f64 y)) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (cbrt.f64 (log.f64 y)) x) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (cbrt.f64 (log.f64 y)) x)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (cbrt.f64 (log.f64 y)) x)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (cbrt.f64 (log.f64 y)) x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 x) (cbrt.f64 (log.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (cbrt.f64 (log.f64 y)) x))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (cbrt.f64 (log.f64 y)) x) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (log.f64 y) (pow.f64 x 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 x 3) (log.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (cbrt.f64 (log.f64 y)) x)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (cbrt.f64 (log.f64 y)) x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (cbrt.f64 (log.f64 y)) x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (cbrt.f64 (log.f64 y)) x)) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (log.f64 t) (-.f64 y z)) (*.f64 (log.f64 y) x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (log.f64 y) x) (+.f64 (log.f64 t) (-.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (+.f64 (fma.f64 (log.f64 y) x (-.f64 y z)) (log.f64 t)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (log.f64 y) x) 1) (+.f64 (log.f64 t) (-.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (log.f64 y) x y) (neg.f64 (-.f64 z (log.f64 t))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (log.f64 y) x (-.f64 y z)) (log.f64 t))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (+.f64 (fma.f64 (log.f64 y) x (-.f64 y z)) (log.f64 t)))) (cbrt.f64 (exp.f64 (+.f64 (fma.f64 (log.f64 y) x (-.f64 y z)) (log.f64 t)))))) (log.f64 (cbrt.f64 (exp.f64 (+.f64 (fma.f64 (log.f64 y) x (-.f64 y z)) (log.f64 t))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (+.f64 (fma.f64 (log.f64 y) x (-.f64 y z)) (log.f64 t))))) (log.f64 (sqrt.f64 (exp.f64 (+.f64 (fma.f64 (log.f64 y) x (-.f64 y z)) (log.f64 t))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (+.f64 (fma.f64 (log.f64 y) x (-.f64 y z)) (log.f64 t)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (fma.f64 (log.f64 y) x y) (-.f64 z (log.f64 t)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (fma.f64 (log.f64 y) x (-.f64 y z)) (log.f64 t)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 (fma.f64 (log.f64 y) x (-.f64 y z)) (log.f64 t)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (+.f64 (fma.f64 (log.f64 y) x (-.f64 y z)) (log.f64 t))) (pow.f64 (cbrt.f64 (+.f64 (fma.f64 (log.f64 y) x (-.f64 y z)) (log.f64 t))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (+.f64 (fma.f64 (log.f64 y) x (-.f64 y z)) (log.f64 t))) 2) (cbrt.f64 (+.f64 (fma.f64 (log.f64 y) x (-.f64 y z)) (log.f64 t))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (+.f64 (fma.f64 (log.f64 y) x (-.f64 y z)) (log.f64 t))) (sqrt.f64 (+.f64 (fma.f64 (log.f64 y) x (-.f64 y z)) (log.f64 t))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 (log.f64 y) x) 3) (pow.f64 (+.f64 (log.f64 t) (-.f64 y z)) 3)) (fma.f64 (*.f64 (log.f64 y) x) (*.f64 (log.f64 y) x) (-.f64 (pow.f64 (+.f64 (log.f64 t) (-.f64 y z)) 2) (*.f64 (*.f64 (log.f64 y) x) (+.f64 (log.f64 t) (-.f64 y z))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 (log.f64 y) x) (*.f64 (log.f64 y) x)) (pow.f64 (+.f64 (log.f64 t) (-.f64 y z)) 2)) (-.f64 (*.f64 (log.f64 y) x) (+.f64 (log.f64 t) (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 (fma.f64 (log.f64 y) x (-.f64 y z)) (log.f64 t)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (+.f64 (fma.f64 (log.f64 y) x (-.f64 y z)) (log.f64 t)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (+.f64 (fma.f64 (log.f64 y) x (-.f64 y z)) (log.f64 t))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (+.f64 (fma.f64 (log.f64 y) x (-.f64 y z)) (log.f64 t))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (+.f64 (fma.f64 (log.f64 y) x (-.f64 y z)) (log.f64 t)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (+.f64 (fma.f64 (log.f64 y) x (-.f64 y z)) (log.f64 t))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (+.f64 (fma.f64 (log.f64 y) x (-.f64 y z)) (log.f64 t)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (*.f64 (exp.f64 (-.f64 y z)) t) (exp.f64 (*.f64 (log.f64 y) x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (fma.f64 (exp.f64 (-.f64 y z)) t -1)) (exp.f64 (*.f64 (log.f64 y) x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 (log.f64 y) x)) (+.f64 1 (fma.f64 (exp.f64 (-.f64 y z)) t -1))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (+.f64 (fma.f64 (log.f64 y) x (-.f64 y z)) (log.f64 t)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (+.f64 (fma.f64 (log.f64 y) x (-.f64 y z)) (log.f64 t))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (+.f64 (fma.f64 (log.f64 y) x (-.f64 y z)) (log.f64 t))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (+.f64 (fma.f64 (log.f64 y) x (-.f64 y z)) (log.f64 t))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (+.f64 (fma.f64 (log.f64 y) x (-.f64 y z)) (log.f64 t))) 1))))))

simplify75.0ms (0.6%)

Algorithm
egg-herbie
Rules
808×fma-neg_binary64
504×associate-*l*_binary64
492×unswap-sqr_binary64
478×sub-neg_binary64
409×associate-*r*_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0801168
12541078
25911078
319011078
469101078
Stop Event
node limit
Counts
193 → 131
Calls
Call 1
Inputs
(pow.f64 (pow.f64 (log.f64 y) 2) 1/3)
(pow.f64 (pow.f64 (log.f64 y) 2) 1/3)
(pow.f64 (pow.f64 (log.f64 y) 2) 1/3)
(pow.f64 (pow.f64 (log.f64 y) 2) 1/3)
(*.f64 (pow.f64 (*.f64 1 (pow.f64 (log.f64 (/.f64 1 y)) 2)) 1/3) (pow.f64 (cbrt.f64 -1) 2))
(*.f64 (pow.f64 (*.f64 1 (pow.f64 (log.f64 (/.f64 1 y)) 2)) 1/3) (pow.f64 (cbrt.f64 -1) 2))
(*.f64 (pow.f64 (*.f64 1 (pow.f64 (log.f64 (/.f64 1 y)) 2)) 1/3) (pow.f64 (cbrt.f64 -1) 2))
(*.f64 (pow.f64 (*.f64 1 (pow.f64 (log.f64 (/.f64 1 y)) 2)) 1/3) (pow.f64 (cbrt.f64 -1) 2))
(pow.f64 (pow.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) 2) 1/3)
(pow.f64 (pow.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) 2) 1/3)
(pow.f64 (pow.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) 2) 1/3)
(pow.f64 (pow.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) 2) 1/3)
(pow.f64 (log.f64 y) 1/3)
(pow.f64 (log.f64 y) 1/3)
(pow.f64 (log.f64 y) 1/3)
(pow.f64 (log.f64 y) 1/3)
(*.f64 (pow.f64 (*.f64 1 (log.f64 (/.f64 1 y))) 1/3) (cbrt.f64 -1))
(*.f64 (pow.f64 (*.f64 1 (log.f64 (/.f64 1 y))) 1/3) (cbrt.f64 -1))
(*.f64 (pow.f64 (*.f64 1 (log.f64 (/.f64 1 y))) 1/3) (cbrt.f64 -1))
(*.f64 (pow.f64 (*.f64 1 (log.f64 (/.f64 1 y))) 1/3) (cbrt.f64 -1))
(pow.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) 1/3)
(pow.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) 1/3)
(pow.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) 1/3)
(pow.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) 1/3)
(*.f64 (pow.f64 (*.f64 1 (log.f64 y)) 1/3) x)
(*.f64 (pow.f64 (*.f64 1 (log.f64 y)) 1/3) x)
(*.f64 (pow.f64 (*.f64 1 (log.f64 y)) 1/3) x)
(*.f64 (pow.f64 (*.f64 1 (log.f64 y)) 1/3) x)
(*.f64 (pow.f64 (*.f64 1 (log.f64 (/.f64 1 y))) 1/3) (*.f64 (cbrt.f64 -1) x))
(*.f64 (pow.f64 (*.f64 1 (log.f64 (/.f64 1 y))) 1/3) (*.f64 (cbrt.f64 -1) x))
(*.f64 (pow.f64 (*.f64 1 (log.f64 (/.f64 1 y))) 1/3) (*.f64 (cbrt.f64 -1) x))
(*.f64 (pow.f64 (*.f64 1 (log.f64 (/.f64 1 y))) 1/3) (*.f64 (cbrt.f64 -1) x))
(*.f64 (pow.f64 (*.f64 1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) 1/3) x)
(*.f64 (pow.f64 (*.f64 1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) 1/3) x)
(*.f64 (pow.f64 (*.f64 1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) 1/3) x)
(*.f64 (pow.f64 (*.f64 1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) 1/3) x)
(*.f64 (pow.f64 (*.f64 1 (log.f64 y)) 1/3) x)
(*.f64 (pow.f64 (*.f64 1 (log.f64 y)) 1/3) x)
(*.f64 (pow.f64 (*.f64 1 (log.f64 y)) 1/3) x)
(*.f64 (pow.f64 (*.f64 1 (log.f64 y)) 1/3) x)
(*.f64 (pow.f64 (*.f64 1 (log.f64 y)) 1/3) x)
(*.f64 (pow.f64 (*.f64 1 (log.f64 y)) 1/3) x)
(*.f64 (pow.f64 (*.f64 1 (log.f64 y)) 1/3) x)
(*.f64 (pow.f64 (*.f64 1 (log.f64 y)) 1/3) x)
(*.f64 (pow.f64 (*.f64 1 (log.f64 y)) 1/3) x)
(*.f64 (pow.f64 (*.f64 1 (log.f64 y)) 1/3) x)
(*.f64 (pow.f64 (*.f64 1 (log.f64 y)) 1/3) x)
(*.f64 (pow.f64 (*.f64 1 (log.f64 y)) 1/3) x)
(-.f64 (+.f64 (log.f64 t) (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 y) x))) z)
(-.f64 (+.f64 (*.f64 -1 y) (+.f64 (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 y) x)) (log.f64 t))) z)
(-.f64 (+.f64 (*.f64 -1 y) (+.f64 (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 y) x)) (log.f64 t))) z)
(-.f64 (+.f64 (*.f64 -1 y) (+.f64 (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 y) x)) (log.f64 t))) z)
(*.f64 -1 y)
(-.f64 (+.f64 (*.f64 -1 y) (+.f64 (log.f64 t) (*.f64 -1 (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 (/.f64 1 y)) x))))) z)
(-.f64 (+.f64 (*.f64 -1 y) (+.f64 (log.f64 t) (*.f64 -1 (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 (/.f64 1 y)) x))))) z)
(-.f64 (+.f64 (*.f64 -1 y) (+.f64 (log.f64 t) (*.f64 -1 (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 (/.f64 1 y)) x))))) z)
(*.f64 -1 y)
(-.f64 (+.f64 (*.f64 (pow.f64 1 1/3) (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x)) (+.f64 (*.f64 -1 y) (log.f64 t))) z)
(-.f64 (+.f64 (*.f64 (pow.f64 1 1/3) (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x)) (+.f64 (*.f64 -1 y) (log.f64 t))) z)
(-.f64 (+.f64 (*.f64 (pow.f64 1 1/3) (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x)) (+.f64 (*.f64 -1 y) (log.f64 t))) z)
(-.f64 (log.f64 t) (+.f64 y z))
(-.f64 (+.f64 (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 y) x)) (log.f64 t)) (+.f64 y z))
(-.f64 (+.f64 (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 y) x)) (log.f64 t)) (+.f64 y z))
(-.f64 (+.f64 (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 y) x)) (log.f64 t)) (+.f64 y z))
(*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 y) x))
(-.f64 (+.f64 (log.f64 t) (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 y) x))) (+.f64 y z))
(-.f64 (+.f64 (log.f64 t) (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 y) x))) (+.f64 y z))
(-.f64 (+.f64 (log.f64 t) (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 y) x))) (+.f64 y z))
(*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 y) x))
(-.f64 (+.f64 (log.f64 t) (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 y) x))) (+.f64 y z))
(-.f64 (+.f64 (log.f64 t) (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 y) x))) (+.f64 y z))
(-.f64 (+.f64 (log.f64 t) (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 y) x))) (+.f64 y z))
(-.f64 (+.f64 (log.f64 t) (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 y) x))) y)
(-.f64 (+.f64 (*.f64 -1 z) (+.f64 (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 y) x)) (log.f64 t))) y)
(-.f64 (+.f64 (*.f64 -1 z) (+.f64 (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 y) x)) (log.f64 t))) y)
(-.f64 (+.f64 (*.f64 -1 z) (+.f64 (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 y) x)) (log.f64 t))) y)
(*.f64 -1 z)
(-.f64 (+.f64 (*.f64 -1 z) (+.f64 (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 y) x)) (log.f64 t))) y)
(-.f64 (+.f64 (*.f64 -1 z) (+.f64 (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 y) x)) (log.f64 t))) y)
(-.f64 (+.f64 (*.f64 -1 z) (+.f64 (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 y) x)) (log.f64 t))) y)
(*.f64 -1 z)
(-.f64 (+.f64 (*.f64 -1 z) (+.f64 (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 y) x)) (log.f64 t))) y)
(-.f64 (+.f64 (*.f64 -1 z) (+.f64 (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 y) x)) (log.f64 t))) y)
(-.f64 (+.f64 (*.f64 -1 z) (+.f64 (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 y) x)) (log.f64 t))) y)
(-.f64 (+.f64 (log.f64 t) (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 y) x))) (+.f64 y z))
(-.f64 (+.f64 (log.f64 t) (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 y) x))) (+.f64 y z))
(-.f64 (+.f64 (log.f64 t) (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 y) x))) (+.f64 y z))
(-.f64 (+.f64 (log.f64 t) (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 y) x))) (+.f64 y z))
(-.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 t))) (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 y) x))) (+.f64 y z))
(-.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 t))) (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 y) x))) (+.f64 y z))
(-.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 t))) (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 y) x))) (+.f64 y z))
(-.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 t))) (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 y) x))) (+.f64 y z))
(-.f64 (+.f64 (log.f64 -1) (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 t))) (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 y) x)))) (+.f64 y z))
(-.f64 (+.f64 (log.f64 -1) (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 t))) (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 y) x)))) (+.f64 y z))
(-.f64 (+.f64 (log.f64 -1) (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 t))) (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 y) x)))) (+.f64 y z))
(-.f64 (+.f64 (log.f64 -1) (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 t))) (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 y) x)))) (+.f64 y z))
Outputs
(pow.f64 (pow.f64 (log.f64 y) 2) 1/3)
(cbrt.f64 (pow.f64 (log.f64 y) 2))
(pow.f64 (pow.f64 (log.f64 y) 2) 1/3)
(cbrt.f64 (pow.f64 (log.f64 y) 2))
(pow.f64 (pow.f64 (log.f64 y) 2) 1/3)
(cbrt.f64 (pow.f64 (log.f64 y) 2))
(pow.f64 (pow.f64 (log.f64 y) 2) 1/3)
(cbrt.f64 (pow.f64 (log.f64 y) 2))
(*.f64 (pow.f64 (*.f64 1 (pow.f64 (log.f64 (/.f64 1 y)) 2)) 1/3) (pow.f64 (cbrt.f64 -1) 2))
(*.f64 (cbrt.f64 (pow.f64 (neg.f64 (log.f64 y)) 2)) (pow.f64 (cbrt.f64 -1) 2))
(*.f64 (cbrt.f64 (pow.f64 (log.f64 y) 2)) (pow.f64 (cbrt.f64 -1) 2))
(*.f64 (pow.f64 (*.f64 1 (pow.f64 (log.f64 (/.f64 1 y)) 2)) 1/3) (pow.f64 (cbrt.f64 -1) 2))
(*.f64 (cbrt.f64 (pow.f64 (neg.f64 (log.f64 y)) 2)) (pow.f64 (cbrt.f64 -1) 2))
(*.f64 (cbrt.f64 (pow.f64 (log.f64 y) 2)) (pow.f64 (cbrt.f64 -1) 2))
(*.f64 (pow.f64 (*.f64 1 (pow.f64 (log.f64 (/.f64 1 y)) 2)) 1/3) (pow.f64 (cbrt.f64 -1) 2))
(*.f64 (cbrt.f64 (pow.f64 (neg.f64 (log.f64 y)) 2)) (pow.f64 (cbrt.f64 -1) 2))
(*.f64 (cbrt.f64 (pow.f64 (log.f64 y) 2)) (pow.f64 (cbrt.f64 -1) 2))
(*.f64 (pow.f64 (*.f64 1 (pow.f64 (log.f64 (/.f64 1 y)) 2)) 1/3) (pow.f64 (cbrt.f64 -1) 2))
(*.f64 (cbrt.f64 (pow.f64 (neg.f64 (log.f64 y)) 2)) (pow.f64 (cbrt.f64 -1) 2))
(*.f64 (cbrt.f64 (pow.f64 (log.f64 y) 2)) (pow.f64 (cbrt.f64 -1) 2))
(pow.f64 (pow.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) 2) 1/3)
(cbrt.f64 (pow.f64 (log.f64 y) 2))
(pow.f64 (pow.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) 2) 1/3)
(cbrt.f64 (pow.f64 (log.f64 y) 2))
(pow.f64 (pow.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) 2) 1/3)
(cbrt.f64 (pow.f64 (log.f64 y) 2))
(pow.f64 (pow.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) 2) 1/3)
(cbrt.f64 (pow.f64 (log.f64 y) 2))
(pow.f64 (log.f64 y) 1/3)
(cbrt.f64 (log.f64 y))
(pow.f64 (log.f64 y) 1/3)
(cbrt.f64 (log.f64 y))
(pow.f64 (log.f64 y) 1/3)
(cbrt.f64 (log.f64 y))
(pow.f64 (log.f64 y) 1/3)
(cbrt.f64 (log.f64 y))
(*.f64 (pow.f64 (*.f64 1 (log.f64 (/.f64 1 y))) 1/3) (cbrt.f64 -1))
(*.f64 (cbrt.f64 -1) (cbrt.f64 (neg.f64 (log.f64 y))))
(*.f64 (pow.f64 (*.f64 1 (log.f64 (/.f64 1 y))) 1/3) (cbrt.f64 -1))
(*.f64 (cbrt.f64 -1) (cbrt.f64 (neg.f64 (log.f64 y))))
(*.f64 (pow.f64 (*.f64 1 (log.f64 (/.f64 1 y))) 1/3) (cbrt.f64 -1))
(*.f64 (cbrt.f64 -1) (cbrt.f64 (neg.f64 (log.f64 y))))
(*.f64 (pow.f64 (*.f64 1 (log.f64 (/.f64 1 y))) 1/3) (cbrt.f64 -1))
(*.f64 (cbrt.f64 -1) (cbrt.f64 (neg.f64 (log.f64 y))))
(pow.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) 1/3)
(cbrt.f64 (log.f64 y))
(pow.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) 1/3)
(cbrt.f64 (log.f64 y))
(pow.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) 1/3)
(cbrt.f64 (log.f64 y))
(pow.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) 1/3)
(cbrt.f64 (log.f64 y))
(*.f64 (pow.f64 (*.f64 1 (log.f64 y)) 1/3) x)
(*.f64 (cbrt.f64 (log.f64 y)) x)
(*.f64 (pow.f64 (*.f64 1 (log.f64 y)) 1/3) x)
(*.f64 (cbrt.f64 (log.f64 y)) x)
(*.f64 (pow.f64 (*.f64 1 (log.f64 y)) 1/3) x)
(*.f64 (cbrt.f64 (log.f64 y)) x)
(*.f64 (pow.f64 (*.f64 1 (log.f64 y)) 1/3) x)
(*.f64 (cbrt.f64 (log.f64 y)) x)
(*.f64 (pow.f64 (*.f64 1 (log.f64 (/.f64 1 y))) 1/3) (*.f64 (cbrt.f64 -1) x))
(*.f64 (cbrt.f64 (neg.f64 (log.f64 y))) (*.f64 (cbrt.f64 -1) x))
(*.f64 (cbrt.f64 -1) (*.f64 (cbrt.f64 (neg.f64 (log.f64 y))) x))
(*.f64 (pow.f64 (*.f64 1 (log.f64 (/.f64 1 y))) 1/3) (*.f64 (cbrt.f64 -1) x))
(*.f64 (cbrt.f64 (neg.f64 (log.f64 y))) (*.f64 (cbrt.f64 -1) x))
(*.f64 (cbrt.f64 -1) (*.f64 (cbrt.f64 (neg.f64 (log.f64 y))) x))
(*.f64 (pow.f64 (*.f64 1 (log.f64 (/.f64 1 y))) 1/3) (*.f64 (cbrt.f64 -1) x))
(*.f64 (cbrt.f64 (neg.f64 (log.f64 y))) (*.f64 (cbrt.f64 -1) x))
(*.f64 (cbrt.f64 -1) (*.f64 (cbrt.f64 (neg.f64 (log.f64 y))) x))
(*.f64 (pow.f64 (*.f64 1 (log.f64 (/.f64 1 y))) 1/3) (*.f64 (cbrt.f64 -1) x))
(*.f64 (cbrt.f64 (neg.f64 (log.f64 y))) (*.f64 (cbrt.f64 -1) x))
(*.f64 (cbrt.f64 -1) (*.f64 (cbrt.f64 (neg.f64 (log.f64 y))) x))
(*.f64 (pow.f64 (*.f64 1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) 1/3) x)
(*.f64 (cbrt.f64 (log.f64 y)) x)
(*.f64 (pow.f64 (*.f64 1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) 1/3) x)
(*.f64 (cbrt.f64 (log.f64 y)) x)
(*.f64 (pow.f64 (*.f64 1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) 1/3) x)
(*.f64 (cbrt.f64 (log.f64 y)) x)
(*.f64 (pow.f64 (*.f64 1 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) 1/3) x)
(*.f64 (cbrt.f64 (log.f64 y)) x)
(*.f64 (pow.f64 (*.f64 1 (log.f64 y)) 1/3) x)
(*.f64 (cbrt.f64 (log.f64 y)) x)
(*.f64 (pow.f64 (*.f64 1 (log.f64 y)) 1/3) x)
(*.f64 (cbrt.f64 (log.f64 y)) x)
(*.f64 (pow.f64 (*.f64 1 (log.f64 y)) 1/3) x)
(*.f64 (cbrt.f64 (log.f64 y)) x)
(*.f64 (pow.f64 (*.f64 1 (log.f64 y)) 1/3) x)
(*.f64 (cbrt.f64 (log.f64 y)) x)
(*.f64 (pow.f64 (*.f64 1 (log.f64 y)) 1/3) x)
(*.f64 (cbrt.f64 (log.f64 y)) x)
(*.f64 (pow.f64 (*.f64 1 (log.f64 y)) 1/3) x)
(*.f64 (cbrt.f64 (log.f64 y)) x)
(*.f64 (pow.f64 (*.f64 1 (log.f64 y)) 1/3) x)
(*.f64 (cbrt.f64 (log.f64 y)) x)
(*.f64 (pow.f64 (*.f64 1 (log.f64 y)) 1/3) x)
(*.f64 (cbrt.f64 (log.f64 y)) x)
(*.f64 (pow.f64 (*.f64 1 (log.f64 y)) 1/3) x)
(*.f64 (cbrt.f64 (log.f64 y)) x)
(*.f64 (pow.f64 (*.f64 1 (log.f64 y)) 1/3) x)
(*.f64 (cbrt.f64 (log.f64 y)) x)
(*.f64 (pow.f64 (*.f64 1 (log.f64 y)) 1/3) x)
(*.f64 (cbrt.f64 (log.f64 y)) x)
(*.f64 (pow.f64 (*.f64 1 (log.f64 y)) 1/3) x)
(*.f64 (cbrt.f64 (log.f64 y)) x)
(-.f64 (+.f64 (log.f64 t) (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 y) x))) z)
(+.f64 (log.f64 t) (-.f64 (*.f64 (log.f64 y) x) z))
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) z)
(-.f64 (+.f64 (*.f64 -1 y) (+.f64 (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 y) x)) (log.f64 t))) z)
(+.f64 (log.f64 t) (-.f64 (*.f64 (log.f64 y) x) (+.f64 y z)))
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) (+.f64 y z))
(-.f64 (+.f64 (*.f64 -1 y) (+.f64 (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 y) x)) (log.f64 t))) z)
(+.f64 (log.f64 t) (-.f64 (*.f64 (log.f64 y) x) (+.f64 y z)))
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) (+.f64 y z))
(-.f64 (+.f64 (*.f64 -1 y) (+.f64 (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 y) x)) (log.f64 t))) z)
(+.f64 (log.f64 t) (-.f64 (*.f64 (log.f64 y) x) (+.f64 y z)))
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) (+.f64 y z))
(*.f64 -1 y)
(neg.f64 y)
(-.f64 (+.f64 (*.f64 -1 y) (+.f64 (log.f64 t) (*.f64 -1 (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 (/.f64 1 y)) x))))) z)
(+.f64 (log.f64 t) (-.f64 (*.f64 (log.f64 y) x) (+.f64 y z)))
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) (+.f64 y z))
(-.f64 (+.f64 (*.f64 -1 y) (+.f64 (log.f64 t) (*.f64 -1 (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 (/.f64 1 y)) x))))) z)
(+.f64 (log.f64 t) (-.f64 (*.f64 (log.f64 y) x) (+.f64 y z)))
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) (+.f64 y z))
(-.f64 (+.f64 (*.f64 -1 y) (+.f64 (log.f64 t) (*.f64 -1 (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 (/.f64 1 y)) x))))) z)
(+.f64 (log.f64 t) (-.f64 (*.f64 (log.f64 y) x) (+.f64 y z)))
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) (+.f64 y z))
(*.f64 -1 y)
(neg.f64 y)
(-.f64 (+.f64 (*.f64 (pow.f64 1 1/3) (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x)) (+.f64 (*.f64 -1 y) (log.f64 t))) z)
(+.f64 (log.f64 t) (-.f64 (*.f64 (log.f64 y) x) (+.f64 y z)))
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) (+.f64 y z))
(-.f64 (+.f64 (*.f64 (pow.f64 1 1/3) (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x)) (+.f64 (*.f64 -1 y) (log.f64 t))) z)
(+.f64 (log.f64 t) (-.f64 (*.f64 (log.f64 y) x) (+.f64 y z)))
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) (+.f64 y z))
(-.f64 (+.f64 (*.f64 (pow.f64 1 1/3) (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x)) (+.f64 (*.f64 -1 y) (log.f64 t))) z)
(+.f64 (log.f64 t) (-.f64 (*.f64 (log.f64 y) x) (+.f64 y z)))
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) (+.f64 y z))
(-.f64 (log.f64 t) (+.f64 y z))
(-.f64 (-.f64 (log.f64 t) y) z)
(-.f64 (+.f64 (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 y) x)) (log.f64 t)) (+.f64 y z))
(+.f64 (log.f64 t) (-.f64 (*.f64 (log.f64 y) x) (+.f64 y z)))
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) (+.f64 y z))
(-.f64 (+.f64 (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 y) x)) (log.f64 t)) (+.f64 y z))
(+.f64 (log.f64 t) (-.f64 (*.f64 (log.f64 y) x) (+.f64 y z)))
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) (+.f64 y z))
(-.f64 (+.f64 (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 y) x)) (log.f64 t)) (+.f64 y z))
(+.f64 (log.f64 t) (-.f64 (*.f64 (log.f64 y) x) (+.f64 y z)))
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) (+.f64 y z))
(*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 y) x))
(*.f64 (log.f64 y) x)
(-.f64 (+.f64 (log.f64 t) (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 y) x))) (+.f64 y z))
(+.f64 (log.f64 t) (-.f64 (*.f64 (log.f64 y) x) (+.f64 y z)))
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) (+.f64 y z))
(-.f64 (+.f64 (log.f64 t) (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 y) x))) (+.f64 y z))
(+.f64 (log.f64 t) (-.f64 (*.f64 (log.f64 y) x) (+.f64 y z)))
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) (+.f64 y z))
(-.f64 (+.f64 (log.f64 t) (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 y) x))) (+.f64 y z))
(+.f64 (log.f64 t) (-.f64 (*.f64 (log.f64 y) x) (+.f64 y z)))
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) (+.f64 y z))
(*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 y) x))
(*.f64 (log.f64 y) x)
(-.f64 (+.f64 (log.f64 t) (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 y) x))) (+.f64 y z))
(+.f64 (log.f64 t) (-.f64 (*.f64 (log.f64 y) x) (+.f64 y z)))
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) (+.f64 y z))
(-.f64 (+.f64 (log.f64 t) (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 y) x))) (+.f64 y z))
(+.f64 (log.f64 t) (-.f64 (*.f64 (log.f64 y) x) (+.f64 y z)))
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) (+.f64 y z))
(-.f64 (+.f64 (log.f64 t) (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 y) x))) (+.f64 y z))
(+.f64 (log.f64 t) (-.f64 (*.f64 (log.f64 y) x) (+.f64 y z)))
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) (+.f64 y z))
(-.f64 (+.f64 (log.f64 t) (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 y) x))) y)
(+.f64 (log.f64 t) (-.f64 (*.f64 (log.f64 y) x) y))
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) y)
(-.f64 (+.f64 (*.f64 -1 z) (+.f64 (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 y) x)) (log.f64 t))) y)
(+.f64 (log.f64 t) (-.f64 (*.f64 (log.f64 y) x) (+.f64 y z)))
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) (+.f64 y z))
(-.f64 (+.f64 (*.f64 -1 z) (+.f64 (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 y) x)) (log.f64 t))) y)
(+.f64 (log.f64 t) (-.f64 (*.f64 (log.f64 y) x) (+.f64 y z)))
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) (+.f64 y z))
(-.f64 (+.f64 (*.f64 -1 z) (+.f64 (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 y) x)) (log.f64 t))) y)
(+.f64 (log.f64 t) (-.f64 (*.f64 (log.f64 y) x) (+.f64 y z)))
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) (+.f64 y z))
(*.f64 -1 z)
(neg.f64 z)
(-.f64 (+.f64 (*.f64 -1 z) (+.f64 (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 y) x)) (log.f64 t))) y)
(+.f64 (log.f64 t) (-.f64 (*.f64 (log.f64 y) x) (+.f64 y z)))
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) (+.f64 y z))
(-.f64 (+.f64 (*.f64 -1 z) (+.f64 (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 y) x)) (log.f64 t))) y)
(+.f64 (log.f64 t) (-.f64 (*.f64 (log.f64 y) x) (+.f64 y z)))
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) (+.f64 y z))
(-.f64 (+.f64 (*.f64 -1 z) (+.f64 (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 y) x)) (log.f64 t))) y)
(+.f64 (log.f64 t) (-.f64 (*.f64 (log.f64 y) x) (+.f64 y z)))
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) (+.f64 y z))
(*.f64 -1 z)
(neg.f64 z)
(-.f64 (+.f64 (*.f64 -1 z) (+.f64 (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 y) x)) (log.f64 t))) y)
(+.f64 (log.f64 t) (-.f64 (*.f64 (log.f64 y) x) (+.f64 y z)))
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) (+.f64 y z))
(-.f64 (+.f64 (*.f64 -1 z) (+.f64 (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 y) x)) (log.f64 t))) y)
(+.f64 (log.f64 t) (-.f64 (*.f64 (log.f64 y) x) (+.f64 y z)))
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) (+.f64 y z))
(-.f64 (+.f64 (*.f64 -1 z) (+.f64 (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 y) x)) (log.f64 t))) y)
(+.f64 (log.f64 t) (-.f64 (*.f64 (log.f64 y) x) (+.f64 y z)))
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) (+.f64 y z))
(-.f64 (+.f64 (log.f64 t) (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 y) x))) (+.f64 y z))
(+.f64 (log.f64 t) (-.f64 (*.f64 (log.f64 y) x) (+.f64 y z)))
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) (+.f64 y z))
(-.f64 (+.f64 (log.f64 t) (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 y) x))) (+.f64 y z))
(+.f64 (log.f64 t) (-.f64 (*.f64 (log.f64 y) x) (+.f64 y z)))
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) (+.f64 y z))
(-.f64 (+.f64 (log.f64 t) (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 y) x))) (+.f64 y z))
(+.f64 (log.f64 t) (-.f64 (*.f64 (log.f64 y) x) (+.f64 y z)))
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) (+.f64 y z))
(-.f64 (+.f64 (log.f64 t) (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 y) x))) (+.f64 y z))
(+.f64 (log.f64 t) (-.f64 (*.f64 (log.f64 y) x) (+.f64 y z)))
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) (+.f64 y z))
(-.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 t))) (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 y) x))) (+.f64 y z))
(+.f64 (log.f64 t) (-.f64 (*.f64 (log.f64 y) x) (+.f64 y z)))
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) (+.f64 y z))
(-.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 t))) (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 y) x))) (+.f64 y z))
(+.f64 (log.f64 t) (-.f64 (*.f64 (log.f64 y) x) (+.f64 y z)))
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) (+.f64 y z))
(-.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 t))) (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 y) x))) (+.f64 y z))
(+.f64 (log.f64 t) (-.f64 (*.f64 (log.f64 y) x) (+.f64 y z)))
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) (+.f64 y z))
(-.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 t))) (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 y) x))) (+.f64 y z))
(+.f64 (log.f64 t) (-.f64 (*.f64 (log.f64 y) x) (+.f64 y z)))
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) (+.f64 y z))
(-.f64 (+.f64 (log.f64 -1) (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 t))) (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 y) x)))) (+.f64 y z))
(+.f64 (log.f64 t) (-.f64 (*.f64 (log.f64 y) x) (+.f64 y z)))
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) (+.f64 y z))
(-.f64 (+.f64 (log.f64 -1) (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 t))) (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 y) x)))) (+.f64 y z))
(+.f64 (log.f64 t) (-.f64 (*.f64 (log.f64 y) x) (+.f64 y z)))
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) (+.f64 y z))
(-.f64 (+.f64 (log.f64 -1) (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 t))) (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 y) x)))) (+.f64 y z))
(+.f64 (log.f64 t) (-.f64 (*.f64 (log.f64 y) x) (+.f64 y z)))
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) (+.f64 y z))
(-.f64 (+.f64 (log.f64 -1) (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 t))) (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 y) x)))) (+.f64 y z))
(+.f64 (log.f64 t) (-.f64 (*.f64 (log.f64 y) x) (+.f64 y z)))
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) (+.f64 y z))

localize8.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (neg.f64 z) (log.f64 t))
Compiler

Compiled 15 to 7 computations (53.3% saved)

series2.0ms (0%)

Counts
1 → 24
Calls

6 calls:

TimeVariablePointExpression
0.0ms
z
@0
(+.f64 (neg.f64 z) (log.f64 t))
0.0ms
t
@-inf
(+.f64 (neg.f64 z) (log.f64 t))
0.0ms
t
@inf
(+.f64 (neg.f64 z) (log.f64 t))
0.0ms
z
@inf
(+.f64 (neg.f64 z) (log.f64 t))
0.0ms
t
@0
(+.f64 (neg.f64 z) (log.f64 t))

rewrite63.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
609×pow1_binary64
566×add-log-exp_binary64
565×log1p-expm1-u_binary64
565×expm1-log1p-u_binary64
554×add-exp-log_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify158.0ms (1.3%)

Algorithm
egg-herbie
Rules
2073×fma-neg_binary64
846×distribute-rgt-in_binary64
578×distribute-lft-in_binary64
466×unsub-neg_binary64
288×distribute-neg-in_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
019135
140135
265135
3157135
4369135
5929135
62430135
74346135
84739135
94863135
104898135
114901135
124901135
136115135
146624135
157285135
167916135
Stop Event
node limit
Counts
61 → 43
Calls
Call 1
Inputs
(log.f64 t)
(+.f64 (*.f64 -1 z) (log.f64 t))
(+.f64 (*.f64 -1 z) (log.f64 t))
(+.f64 (*.f64 -1 z) (log.f64 t))
(*.f64 -1 z)
(+.f64 (*.f64 -1 z) (log.f64 t))
(+.f64 (*.f64 -1 z) (log.f64 t))
(+.f64 (*.f64 -1 z) (log.f64 t))
(*.f64 -1 z)
(+.f64 (*.f64 -1 z) (log.f64 t))
(+.f64 (*.f64 -1 z) (log.f64 t))
(+.f64 (*.f64 -1 z) (log.f64 t))
(-.f64 (log.f64 t) z)
(-.f64 (log.f64 t) z)
(-.f64 (log.f64 t) z)
(-.f64 (log.f64 t) z)
(-.f64 (*.f64 -1 (log.f64 (/.f64 1 t))) z)
(-.f64 (*.f64 -1 (log.f64 (/.f64 1 t))) z)
(-.f64 (*.f64 -1 (log.f64 (/.f64 1 t))) z)
(-.f64 (*.f64 -1 (log.f64 (/.f64 1 t))) z)
(-.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 t)))) z)
(-.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 t)))) z)
(-.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 t)))) z)
(-.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 t)))) z)
Outputs
(log.f64 t)
(+.f64 (*.f64 -1 z) (log.f64 t))
(-.f64 (log.f64 t) z)
(+.f64 (*.f64 -1 z) (log.f64 t))
(-.f64 (log.f64 t) z)
(+.f64 (*.f64 -1 z) (log.f64 t))
(-.f64 (log.f64 t) z)
(*.f64 -1 z)
(neg.f64 z)
(+.f64 (*.f64 -1 z) (log.f64 t))
(-.f64 (log.f64 t) z)
(+.f64 (*.f64 -1 z) (log.f64 t))
(-.f64 (log.f64 t) z)
(+.f64 (*.f64 -1 z) (log.f64 t))
(-.f64 (log.f64 t) z)
(*.f64 -1 z)
(neg.f64 z)
(+.f64 (*.f64 -1 z) (log.f64 t))
(-.f64 (log.f64 t) z)
(+.f64 (*.f64 -1 z) (log.f64 t))
(-.f64 (log.f64 t) z)
(+.f64 (*.f64 -1 z) (log.f64 t))
(-.f64 (log.f64 t) z)
(-.f64 (log.f64 t) z)
(-.f64 (log.f64 t) z)
(-.f64 (log.f64 t) z)
(-.f64 (log.f64 t) z)
(-.f64 (*.f64 -1 (log.f64 (/.f64 1 t))) z)
(-.f64 (log.f64 t) z)
(-.f64 (*.f64 -1 (log.f64 (/.f64 1 t))) z)
(-.f64 (log.f64 t) z)
(-.f64 (*.f64 -1 (log.f64 (/.f64 1 t))) z)
(-.f64 (log.f64 t) z)
(-.f64 (*.f64 -1 (log.f64 (/.f64 1 t))) z)
(-.f64 (log.f64 t) z)
(-.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 t)))) z)
(-.f64 (log.f64 t) z)
(-.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 t)))) z)
(-.f64 (log.f64 t) z)
(-.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 t)))) z)
(-.f64 (log.f64 t) z)
(-.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 t)))) z)
(-.f64 (log.f64 t) z)

localize12.0ms (0.1%)

Local error

Found 3 expressions with local error:

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

Compiled 31 to 9 computations (71% saved)

series16.0ms (0.1%)

Counts
3 → 50
Calls

24 calls:

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

rewrite89.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
545×fma-def_binary64
494×log-prod_binary64
365×pow-prod-down_binary64
271×pow2_binary64
270×fma-neg_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify152.0ms (1.3%)

Algorithm
egg-herbie
Rules
767×unsub-neg_binary64
593×sub-neg_binary64
554×fma-def_binary64
335×+-commutative_binary64
325×associate-+l-_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
040577
1102560
2216444
3652444
41856444
54591444
66038444
77120444
87594444
97708444
107752444
117787444
127873444
Stop Event
node limit
Counts
280 → 249
Calls
Call 1
Inputs
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x))
(*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x)
(*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x)
(*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x)
(*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x)
(+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x)) (log.f64 t))
(+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x)) (log.f64 t))
(+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x)) (log.f64 t))
(+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x)) (log.f64 t))
(+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x) (log.f64 t))
(+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x) (log.f64 t))
(+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x) (log.f64 t))
(+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x) (log.f64 t))
(log.f64 t)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 (log.f64 (/.f64 1 t))))
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 (log.f64 (/.f64 1 t))))
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 (log.f64 (/.f64 1 t))))
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 (log.f64 (/.f64 1 t))))
(+.f64 (*.f64 (log.f64 y) x) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 t)))))
(+.f64 (*.f64 (log.f64 y) x) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 t)))))
(+.f64 (*.f64 (log.f64 y) x) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 t)))))
(+.f64 (*.f64 (log.f64 y) x) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 t)))))
(+.f64 (*.f64 (log.f64 y) x) (log.f64 t))
(+.f64 (*.f64 (log.f64 y) x) (+.f64 (*.f64 -1 y) (log.f64 t)))
(+.f64 (*.f64 (log.f64 y) x) (+.f64 (*.f64 -1 y) (log.f64 t)))
(+.f64 (*.f64 (log.f64 y) x) (+.f64 (*.f64 -1 y) (log.f64 t)))
(*.f64 -1 y)
(+.f64 (*.f64 -1 y) (+.f64 (log.f64 t) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x))))
(+.f64 (*.f64 -1 y) (+.f64 (log.f64 t) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x))))
(+.f64 (*.f64 -1 y) (+.f64 (log.f64 t) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x))))
(*.f64 -1 y)
(+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x) (+.f64 (*.f64 -1 y) (log.f64 t)))
(+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x) (+.f64 (*.f64 -1 y) (log.f64 t)))
(+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x) (+.f64 (*.f64 -1 y) (log.f64 t)))
(-.f64 (log.f64 t) y)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 (log.f64 (/.f64 1 t)))) y)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 (log.f64 (/.f64 1 t)))) y)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 (log.f64 (/.f64 1 t)))) y)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 (log.f64 (/.f64 1 t)))) y)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 t))))) y)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 t))))) y)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 t))))) y)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 t))))) y)
Outputs
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x))
(neg.f64 (*.f64 (neg.f64 (log.f64 y)) x))
(*.f64 (neg.f64 (log.f64 y)) (neg.f64 x))
(*.f64 x (log.f64 y))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x))
(neg.f64 (*.f64 (neg.f64 (log.f64 y)) x))
(*.f64 (neg.f64 (log.f64 y)) (neg.f64 x))
(*.f64 x (log.f64 y))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x))
(neg.f64 (*.f64 (neg.f64 (log.f64 y)) x))
(*.f64 (neg.f64 (log.f64 y)) (neg.f64 x))
(*.f64 x (log.f64 y))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x))
(neg.f64 (*.f64 (neg.f64 (log.f64 y)) x))
(*.f64 (neg.f64 (log.f64 y)) (neg.f64 x))
(*.f64 x (log.f64 y))
(*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x)
(neg.f64 (*.f64 (neg.f64 (log.f64 y)) x))
(*.f64 (neg.f64 (log.f64 y)) (neg.f64 x))
(*.f64 x (log.f64 y))
(*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x)
(neg.f64 (*.f64 (neg.f64 (log.f64 y)) x))
(*.f64 (neg.f64 (log.f64 y)) (neg.f64 x))
(*.f64 x (log.f64 y))
(*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x)
(neg.f64 (*.f64 (neg.f64 (log.f64 y)) x))
(*.f64 (neg.f64 (log.f64 y)) (neg.f64 x))
(*.f64 x (log.f64 y))
(*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x)
(neg.f64 (*.f64 (neg.f64 (log.f64 y)) x))
(*.f64 (neg.f64 (log.f64 y)) (neg.f64 x))
(*.f64 x (log.f64 y))
(+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x)) (log.f64 t))
(fma.f64 -1 (*.f64 (neg.f64 (log.f64 y)) x) (log.f64 t))
(-.f64 (log.f64 t) (*.f64 (neg.f64 (log.f64 y)) x))
(fma.f64 x (log.f64 y) (log.f64 t))
(+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x)) (log.f64 t))
(fma.f64 -1 (*.f64 (neg.f64 (log.f64 y)) x) (log.f64 t))
(-.f64 (log.f64 t) (*.f64 (neg.f64 (log.f64 y)) x))
(fma.f64 x (log.f64 y) (log.f64 t))
(+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x)) (log.f64 t))
(fma.f64 -1 (*.f64 (neg.f64 (log.f64 y)) x) (log.f64 t))
(-.f64 (log.f64 t) (*.f64 (neg.f64 (log.f64 y)) x))
(fma.f64 x (log.f64 y) (log.f64 t))
(+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x)) (log.f64 t))
(fma.f64 -1 (*.f64 (neg.f64 (log.f64 y)) x) (log.f64 t))
(-.f64 (log.f64 t) (*.f64 (neg.f64 (log.f64 y)) x))
(fma.f64 x (log.f64 y) (log.f64 t))
(+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x) (log.f64 t))
(fma.f64 -1 (*.f64 (neg.f64 (log.f64 y)) x) (log.f64 t))
(-.f64 (log.f64 t) (*.f64 (neg.f64 (log.f64 y)) x))
(fma.f64 x (log.f64 y) (log.f64 t))
(+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x) (log.f64 t))
(fma.f64 -1 (*.f64 (neg.f64 (log.f64 y)) x) (log.f64 t))
(-.f64 (log.f64 t) (*.f64 (neg.f64 (log.f64 y)) x))
(fma.f64 x (log.f64 y) (log.f64 t))
(+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x) (log.f64 t))
(fma.f64 -1 (*.f64 (neg.f64 (log.f64 y)) x) (log.f64 t))
(-.f64 (log.f64 t) (*.f64 (neg.f64 (log.f64 y)) x))
(fma.f64 x (log.f64 y) (log.f64 t))
(+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x) (log.f64 t))
(fma.f64 -1 (*.f64 (neg.f64 (log.f64 y)) x) (log.f64 t))
(-.f64 (log.f64 t) (*.f64 (neg.f64 (log.f64 y)) x))
(fma.f64 x (log.f64 y) (log.f64 t))
(log.f64 t)
(*.f64 (log.f64 y) x)
(neg.f64 (*.f64 (neg.f64 (log.f64 y)) x))
(*.f64 (neg.f64 (log.f64 y)) (neg.f64 x))
(*.f64 x (log.f64 y))
(*.f64 (log.f64 y) x)
(neg.f64 (*.f64 (neg.f64 (log.f64 y)) x))
(*.f64 (neg.f64 (log.f64 y)) (neg.f64 x))
(*.f64 x (log.f64 y))
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 (log.f64 (/.f64 1 t))))
(fma.f64 -1 (*.f64 (neg.f64 (log.f64 y)) x) (log.f64 t))
(-.f64 (log.f64 t) (*.f64 (neg.f64 (log.f64 y)) x))
(fma.f64 x (log.f64 y) (log.f64 t))
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 (log.f64 (/.f64 1 t))))
(fma.f64 -1 (*.f64 (neg.f64 (log.f64 y)) x) (log.f64 t))
(-.f64 (log.f64 t) (*.f64 (neg.f64 (log.f64 y)) x))
(fma.f64 x (log.f64 y) (log.f64 t))
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 (log.f64 (/.f64 1 t))))
(fma.f64 -1 (*.f64 (neg.f64 (log.f64 y)) x) (log.f64 t))
(-.f64 (log.f64 t) (*.f64 (neg.f64 (log.f64 y)) x))
(fma.f64 x (log.f64 y) (log.f64 t))
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 (log.f64 (/.f64 1 t))))
(fma.f64 -1 (*.f64 (neg.f64 (log.f64 y)) x) (log.f64 t))
(-.f64 (log.f64 t) (*.f64 (neg.f64 (log.f64 y)) x))
(fma.f64 x (log.f64 y) (log.f64 t))
(+.f64 (*.f64 (log.f64 y) x) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 t)))))
(fma.f64 -1 (*.f64 (neg.f64 (log.f64 y)) x) (log.f64 t))
(-.f64 (log.f64 t) (*.f64 (neg.f64 (log.f64 y)) x))
(fma.f64 x (log.f64 y) (log.f64 t))
(+.f64 (*.f64 (log.f64 y) x) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 t)))))
(fma.f64 -1 (*.f64 (neg.f64 (log.f64 y)) x) (log.f64 t))
(-.f64 (log.f64 t) (*.f64 (neg.f64 (log.f64 y)) x))
(fma.f64 x (log.f64 y) (log.f64 t))
(+.f64 (*.f64 (log.f64 y) x) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 t)))))
(fma.f64 -1 (*.f64 (neg.f64 (log.f64 y)) x) (log.f64 t))
(-.f64 (log.f64 t) (*.f64 (neg.f64 (log.f64 y)) x))
(fma.f64 x (log.f64 y) (log.f64 t))
(+.f64 (*.f64 (log.f64 y) x) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 t)))))
(fma.f64 -1 (*.f64 (neg.f64 (log.f64 y)) x) (log.f64 t))
(-.f64 (log.f64 t) (*.f64 (neg.f64 (log.f64 y)) x))
(fma.f64 x (log.f64 y) (log.f64 t))
(+.f64 (*.f64 (log.f64 y) x) (log.f64 t))
(fma.f64 -1 (*.f64 (neg.f64 (log.f64 y)) x) (log.f64 t))
(-.f64 (log.f64 t) (*.f64 (neg.f64 (log.f64 y)) x))
(fma.f64 x (log.f64 y) (log.f64 t))
(+.f64 (*.f64 (log.f64 y) x) (+.f64 (*.f64 -1 y) (log.f64 t)))
(fma.f64 (log.f64 y) x (-.f64 (log.f64 t) y))
(fma.f64 x (log.f64 y) (-.f64 (log.f64 t) y))
(-.f64 (fma.f64 x (log.f64 y) (log.f64 t)) y)
(+.f64 (*.f64 (log.f64 y) x) (+.f64 (*.f64 -1 y) (log.f64 t)))
(fma.f64 (log.f64 y) x (-.f64 (log.f64 t) y))
(fma.f64 x (log.f64 y) (-.f64 (log.f64 t) y))
(-.f64 (fma.f64 x (log.f64 y) (log.f64 t)) y)
(+.f64 (*.f64 (log.f64 y) x) (+.f64 (*.f64 -1 y) (log.f64 t)))
(fma.f64 (log.f64 y) x (-.f64 (log.f64 t) y))
(fma.f64 x (log.f64 y) (-.f64 (log.f64 t) y))
(-.f64 (fma.f64 x (log.f64 y) (log.f64 t)) y)
(*.f64 -1 y)
(neg.f64 y)
(+.f64 (*.f64 -1 y) (+.f64 (log.f64 t) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x))))
(fma.f64 (log.f64 y) x (-.f64 (log.f64 t) y))
(fma.f64 x (log.f64 y) (-.f64 (log.f64 t) y))
(-.f64 (fma.f64 x (log.f64 y) (log.f64 t)) y)
(+.f64 (*.f64 -1 y) (+.f64 (log.f64 t) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x))))
(fma.f64 (log.f64 y) x (-.f64 (log.f64 t) y))
(fma.f64 x (log.f64 y) (-.f64 (log.f64 t) y))
(-.f64 (fma.f64 x (log.f64 y) (log.f64 t)) y)
(+.f64 (*.f64 -1 y) (+.f64 (log.f64 t) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x))))
(fma.f64 (log.f64 y) x (-.f64 (log.f64 t) y))
(fma.f64 x (log.f64 y) (-.f64 (log.f64 t) y))
(-.f64 (fma.f64 x (log.f64 y) (log.f64 t)) y)
(*.f64 -1 y)
(neg.f64 y)
(+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x) (+.f64 (*.f64 -1 y) (log.f64 t)))
(fma.f64 (log.f64 y) x (-.f64 (log.f64 t) y))
(fma.f64 x (log.f64 y) (-.f64 (log.f64 t) y))
(-.f64 (fma.f64 x (log.f64 y) (log.f64 t)) y)
(+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x) (+.f64 (*.f64 -1 y) (log.f64 t)))
(fma.f64 (log.f64 y) x (-.f64 (log.f64 t) y))
(fma.f64 x (log.f64 y) (-.f64 (log.f64 t) y))
(-.f64 (fma.f64 x (log.f64 y) (log.f64 t)) y)
(+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x) (+.f64 (*.f64 -1 y) (log.f64 t)))
(fma.f64 (log.f64 y) x (-.f64 (log.f64 t) y))
(fma.f64 x (log.f64 y) (-.f64 (log.f64 t) y))
(-.f64 (fma.f64 x (log.f64 y) (log.f64 t)) y)
(-.f64 (log.f64 t) y)
(*.f64 (log.f64 y) x)
(neg.f64 (*.f64 (neg.f64 (log.f64 y)) x))
(*.f64 (neg.f64 (log.f64 y)) (neg.f64 x))
(*.f64 x (log.f64 y))
(*.f64 (log.f64 y) x)
(neg.f64 (*.f64 (neg.f64 (log.f64 y)) x))
(*.f64 (neg.f64 (log.f64 y)) (neg.f64 x))
(*.f64 x (log.f64 y))
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 (log.f64 (/.f64 1 t)))) y)
(fma.f64 (log.f64 y) x (-.f64 (log.f64 t) y))
(fma.f64 x (log.f64 y) (-.f64 (log.f64 t) y))
(-.f64 (fma.f64 x (log.f64 y) (log.f64 t)) y)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 (log.f64 (/.f64 1 t)))) y)
(fma.f64 (log.f64 y) x (-.f64 (log.f64 t) y))
(fma.f64 x (log.f64 y) (-.f64 (log.f64 t) y))
(-.f64 (fma.f64 x (log.f64 y) (log.f64 t)) y)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 (log.f64 (/.f64 1 t)))) y)
(fma.f64 (log.f64 y) x (-.f64 (log.f64 t) y))
(fma.f64 x (log.f64 y) (-.f64 (log.f64 t) y))
(-.f64 (fma.f64 x (log.f64 y) (log.f64 t)) y)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 (log.f64 (/.f64 1 t)))) y)
(fma.f64 (log.f64 y) x (-.f64 (log.f64 t) y))
(fma.f64 x (log.f64 y) (-.f64 (log.f64 t) y))
(-.f64 (fma.f64 x (log.f64 y) (log.f64 t)) y)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 t))))) y)
(fma.f64 (log.f64 y) x (-.f64 (log.f64 t) y))
(fma.f64 x (log.f64 y) (-.f64 (log.f64 t) y))
(-.f64 (fma.f64 x (log.f64 y) (log.f64 t)) y)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 t))))) y)
(fma.f64 (log.f64 y) x (-.f64 (log.f64 t) y))
(fma.f64 x (log.f64 y) (-.f64 (log.f64 t) y))
(-.f64 (fma.f64 x (log.f64 y) (log.f64 t)) y)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 t))))) y)
(fma.f64 (log.f64 y) x (-.f64 (log.f64 t) y))
(fma.f64 x (log.f64 y) (-.f64 (log.f64 t) y))
(-.f64 (fma.f64 x (log.f64 y) (log.f64 t)) y)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 t))))) y)
(fma.f64 (log.f64 y) x (-.f64 (log.f64 t) y))
(fma.f64 x (log.f64 y) (-.f64 (log.f64 t) y))
(-.f64 (fma.f64 x (log.f64 y) (log.f64 t)) y)

localize13.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(-.f64 (log.f64 t) z)
0.1b
(fma.f64 (log.f64 y) x (-.f64 (log.f64 t) z))
Compiler

Compiled 24 to 8 computations (66.7% saved)

series6.0ms (0.1%)

Counts
2 → 68
Calls

18 calls:

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

rewrite81.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
958×pow1_binary64
881×add-log-exp_binary64
881×log1p-expm1-u_binary64
881×expm1-log1p-u_binary64
861×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify282.0ms (2.3%)

Algorithm
egg-herbie
Rules
773×unsub-neg_binary64
686×sub-neg_binary64
578×fma-def_binary64
409×+-commutative_binary64
391×distribute-neg-in_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
043648
1104648
2217648
3623648
41746648
54381648
65840648
76867648
87417648
97486648
107486648
117720648
127942648
137954648
147966648
157966648
167966648
Stop Event
node limit
Counts
126 → 74
Calls
Call 1
Inputs
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)) z)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)) z)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)) z)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)) z)
(-.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x)) (log.f64 t)) z)
(-.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x)) (log.f64 t)) z)
(-.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x)) (log.f64 t)) z)
(-.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x)) (log.f64 t)) z)
(-.f64 (+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x) (log.f64 t)) z)
(-.f64 (+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x) (log.f64 t)) z)
(-.f64 (+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x) (log.f64 t)) z)
(-.f64 (+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x) (log.f64 t)) z)
(-.f64 (log.f64 t) z)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)) z)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)) z)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)) z)
(*.f64 (log.f64 y) x)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)) z)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)) z)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)) z)
(*.f64 (log.f64 y) x)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)) z)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)) z)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)) z)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)) z)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)) z)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)) z)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)) z)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 (log.f64 (/.f64 1 t)))) z)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 (log.f64 (/.f64 1 t)))) z)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 (log.f64 (/.f64 1 t)))) z)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 (log.f64 (/.f64 1 t)))) z)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 t))))) z)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 t))))) z)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 t))))) z)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 t))))) z)
(+.f64 (*.f64 (log.f64 y) x) (log.f64 t))
(+.f64 (*.f64 -1 z) (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)))
(+.f64 (*.f64 -1 z) (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)))
(+.f64 (*.f64 -1 z) (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)))
(*.f64 -1 z)
(+.f64 (*.f64 -1 z) (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)))
(+.f64 (*.f64 -1 z) (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)))
(+.f64 (*.f64 -1 z) (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)))
(*.f64 -1 z)
(+.f64 (*.f64 -1 z) (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)))
(+.f64 (*.f64 -1 z) (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)))
(+.f64 (*.f64 -1 z) (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)))
(-.f64 (*.f64 -1 (log.f64 (/.f64 1 t))) z)
(-.f64 (*.f64 -1 (log.f64 (/.f64 1 t))) z)
(-.f64 (*.f64 -1 (log.f64 (/.f64 1 t))) z)
(-.f64 (*.f64 -1 (log.f64 (/.f64 1 t))) z)
(-.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 t)))) z)
(-.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 t)))) z)
(-.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 t)))) z)
(-.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 t)))) z)
(log.f64 t)
(+.f64 (*.f64 -1 z) (log.f64 t))
(+.f64 (*.f64 -1 z) (log.f64 t))
(+.f64 (*.f64 -1 z) (log.f64 t))
(*.f64 -1 z)
(+.f64 (*.f64 -1 z) (log.f64 t))
(+.f64 (*.f64 -1 z) (log.f64 t))
(+.f64 (*.f64 -1 z) (log.f64 t))
(*.f64 -1 z)
(+.f64 (*.f64 -1 z) (log.f64 t))
(+.f64 (*.f64 -1 z) (log.f64 t))
(+.f64 (*.f64 -1 z) (log.f64 t))
Outputs
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)) z)
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) z)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)) z)
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) z)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)) z)
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) z)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)) z)
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) z)
(-.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x)) (log.f64 t)) z)
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) z)
(-.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x)) (log.f64 t)) z)
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) z)
(-.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x)) (log.f64 t)) z)
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) z)
(-.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x)) (log.f64 t)) z)
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) z)
(-.f64 (+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x) (log.f64 t)) z)
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) z)
(-.f64 (+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x) (log.f64 t)) z)
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) z)
(-.f64 (+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x) (log.f64 t)) z)
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) z)
(-.f64 (+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x) (log.f64 t)) z)
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) z)
(-.f64 (log.f64 t) z)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)) z)
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) z)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)) z)
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) z)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)) z)
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) z)
(*.f64 (log.f64 y) x)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)) z)
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) z)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)) z)
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) z)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)) z)
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) z)
(*.f64 (log.f64 y) x)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)) z)
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) z)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)) z)
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) z)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)) z)
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) z)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)) z)
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) z)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)) z)
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) z)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)) z)
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) z)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)) z)
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) z)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 (log.f64 (/.f64 1 t)))) z)
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) z)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 (log.f64 (/.f64 1 t)))) z)
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) z)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 (log.f64 (/.f64 1 t)))) z)
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) z)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 (log.f64 (/.f64 1 t)))) z)
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) z)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 t))))) z)
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) z)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 t))))) z)
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) z)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 t))))) z)
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) z)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 t))))) z)
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) z)
(+.f64 (*.f64 (log.f64 y) x) (log.f64 t))
(fma.f64 (log.f64 y) x (log.f64 t))
(+.f64 (*.f64 -1 z) (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)))
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) z)
(+.f64 (*.f64 -1 z) (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)))
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) z)
(+.f64 (*.f64 -1 z) (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)))
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) z)
(*.f64 -1 z)
(neg.f64 z)
(+.f64 (*.f64 -1 z) (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)))
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) z)
(+.f64 (*.f64 -1 z) (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)))
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) z)
(+.f64 (*.f64 -1 z) (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)))
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) z)
(*.f64 -1 z)
(neg.f64 z)
(+.f64 (*.f64 -1 z) (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)))
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) z)
(+.f64 (*.f64 -1 z) (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)))
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) z)
(+.f64 (*.f64 -1 z) (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)))
(-.f64 (fma.f64 (log.f64 y) x (log.f64 t)) z)
(-.f64 (*.f64 -1 (log.f64 (/.f64 1 t))) z)
(-.f64 (log.f64 t) z)
(-.f64 (*.f64 -1 (log.f64 (/.f64 1 t))) z)
(-.f64 (log.f64 t) z)
(-.f64 (*.f64 -1 (log.f64 (/.f64 1 t))) z)
(-.f64 (log.f64 t) z)
(-.f64 (*.f64 -1 (log.f64 (/.f64 1 t))) z)
(-.f64 (log.f64 t) z)
(-.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 t)))) z)
(-.f64 (log.f64 t) z)
(-.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 t)))) z)
(-.f64 (log.f64 t) z)
(-.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 t)))) z)
(-.f64 (log.f64 t) z)
(-.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 t)))) z)
(-.f64 (log.f64 t) z)
(log.f64 t)
(+.f64 (*.f64 -1 z) (log.f64 t))
(-.f64 (log.f64 t) z)
(+.f64 (*.f64 -1 z) (log.f64 t))
(-.f64 (log.f64 t) z)
(+.f64 (*.f64 -1 z) (log.f64 t))
(-.f64 (log.f64 t) z)
(*.f64 -1 z)
(neg.f64 z)
(+.f64 (*.f64 -1 z) (log.f64 t))
(-.f64 (log.f64 t) z)
(+.f64 (*.f64 -1 z) (log.f64 t))
(-.f64 (log.f64 t) z)
(+.f64 (*.f64 -1 z) (log.f64 t))
(-.f64 (log.f64 t) z)
(*.f64 -1 z)
(neg.f64 z)
(+.f64 (*.f64 -1 z) (log.f64 t))
(-.f64 (log.f64 t) z)
(+.f64 (*.f64 -1 z) (log.f64 t))
(-.f64 (log.f64 t) z)
(+.f64 (*.f64 -1 z) (log.f64 t))
(-.f64 (log.f64 t) z)

localize48.0ms (0.4%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(-.f64 (pow.f64 (cbrt.f64 (*.f64 x (log.f64 y))) 3) y)
0.2b
(*.f64 x (log.f64 y))
0.6b
(cbrt.f64 (*.f64 x (log.f64 y)))
0.7b
(pow.f64 (cbrt.f64 (*.f64 x (log.f64 y))) 3)
Compiler

Compiled 63 to 23 computations (63.5% saved)

series22.0ms (0.2%)

Counts
3 → 39
Calls

18 calls:

TimeVariablePointExpression
8.0ms
y
@0
(pow.f64 (cbrt.f64 (*.f64 x (log.f64 y))) 3)
2.0ms
y
@-inf
(pow.f64 (cbrt.f64 (*.f64 x (log.f64 y))) 3)
2.0ms
y
@inf
(pow.f64 (cbrt.f64 (*.f64 x (log.f64 y))) 3)
2.0ms
x
@-inf
(pow.f64 (cbrt.f64 (*.f64 x (log.f64 y))) 3)
1.0ms
x
@0
(pow.f64 (cbrt.f64 (*.f64 x (log.f64 y))) 3)

rewrite83.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
867×pow1_binary64
812×add-log-exp_binary64
812×log1p-expm1-u_binary64
812×expm1-log1p-u_binary64
793×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0923
119623
2227123
Stop Event
node limit
Counts
3 → 90
Calls
Call 1
Inputs
(pow.f64 (cbrt.f64 (*.f64 x (log.f64 y))) 3)
(cbrt.f64 (*.f64 x (log.f64 y)))
(-.f64 (pow.f64 (cbrt.f64 (*.f64 x (log.f64 y))) 3) y)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 x (log.f64 y))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x (log.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (log.f64 y) x)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x (log.f64 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 x (log.f64 y))) (pow.f64 (cbrt.f64 (*.f64 x (log.f64 y))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 x (log.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 x (log.f64 y))) 2) (cbrt.f64 (*.f64 x (log.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 x) (*.f64 (cbrt.f64 (log.f64 y)) (pow.f64 (cbrt.f64 (*.f64 x (log.f64 y))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 x) 2) (*.f64 (cbrt.f64 x) (log.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 x (log.f64 y)))) 2) (*.f64 (cbrt.f64 (cbrt.f64 (*.f64 x (log.f64 y)))) (pow.f64 (cbrt.f64 (*.f64 x (log.f64 y))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (log.f64 y)) 2) (*.f64 (cbrt.f64 (log.f64 y)) x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 x (log.f64 y))) (sqrt.f64 (*.f64 x (log.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) (log.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 x (log.f64 y)) 1/6) (*.f64 (pow.f64 (*.f64 x (log.f64 y)) 1/6) (pow.f64 (cbrt.f64 (*.f64 x (log.f64 y))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (log.f64 y)) (*.f64 (sqrt.f64 (log.f64 y)) x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 x (log.f64 y)))) 2) 3) (cbrt.f64 (*.f64 x (log.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (*.f64 x (log.f64 y)) 1/6) 3) (pow.f64 (pow.f64 (*.f64 x (log.f64 y)) 1/6) 3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x (pow.f64 (cbrt.f64 (log.f64 y)) 2)) (cbrt.f64 (log.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x (sqrt.f64 (log.f64 y))) (sqrt.f64 (log.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (log.f64 y) (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (log.f64 y) (sqrt.f64 x)) (sqrt.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 (cbrt.f64 (*.f64 x (log.f64 y))) 2) 1) (cbrt.f64 (*.f64 x (log.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 (cbrt.f64 (*.f64 x (log.f64 y))) 2) (cbrt.f64 x)) (cbrt.f64 (log.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 (cbrt.f64 (*.f64 x (log.f64 y))) 2) (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 x (log.f64 y)))) 2)) (cbrt.f64 (cbrt.f64 (*.f64 x (log.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 (cbrt.f64 (*.f64 x (log.f64 y))) 2) (pow.f64 (*.f64 x (log.f64 y)) 1/6)) (pow.f64 (*.f64 x (log.f64 y)) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 x (log.f64 y)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 x (log.f64 y)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 x (log.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (-.f64 (pow.f64 y x) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 x (log.f64 y))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (cbrt.f64 (*.f64 x (log.f64 y)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 x (log.f64 y))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (cbrt.f64 (*.f64 x (log.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 x) (cbrt.f64 (log.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (*.f64 x (log.f64 y)))) (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 x (log.f64 y)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (*.f64 x (log.f64 y)))) (pow.f64 (pow.f64 (cbrt.f64 (*.f64 x (log.f64 y))) 2) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 x (log.f64 y)))) 2) (cbrt.f64 (cbrt.f64 (*.f64 x (log.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (log.f64 y)) (cbrt.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 x (log.f64 y)) 1/6) (pow.f64 (*.f64 x (log.f64 y)) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 x (log.f64 y))) 2) 1/3) (cbrt.f64 (cbrt.f64 (*.f64 x (log.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/3) (cbrt.f64 (*.f64 x (log.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (*.f64 x (log.f64 y))) 1/3) (pow.f64 (sqrt.f64 (*.f64 x (log.f64 y))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 x (log.f64 y)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 x (log.f64 y))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 x (log.f64 y)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 x (log.f64 y)) 1/6) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 x (log.f64 y))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (cbrt.f64 (*.f64 x (log.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (cbrt.f64 (*.f64 x (log.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (cbrt.f64 (*.f64 x (log.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (cbrt.f64 (*.f64 x (log.f64 y)))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (log.f64 y)) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (log.f64 y)) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 x (log.f64 y)) y) (fma.f64 (neg.f64 y) 1 y))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 x (log.f64 y)) y) (fma.f64 (neg.f64 (cbrt.f64 y)) (pow.f64 (cbrt.f64 y) 2) y))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 x (log.f64 y)) y) (fma.f64 (neg.f64 (sqrt.f64 y)) (sqrt.f64 y) y))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 y) (*.f64 x (log.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 x (log.f64 y)) y) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (*.f64 x (log.f64 y)) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 (*.f64 x (log.f64 y)) y)) (pow.f64 (cbrt.f64 (-.f64 (*.f64 x (log.f64 y)) y)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 x (log.f64 y)) y)) 2) (cbrt.f64 (-.f64 (*.f64 x (log.f64 y)) y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 (*.f64 x (log.f64 y)) y)) (sqrt.f64 (-.f64 (*.f64 x (log.f64 y)) y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (*.f64 x (log.f64 y)) 3) (pow.f64 y 3)) (/.f64 1 (+.f64 (pow.f64 (*.f64 x (log.f64 y)) 2) (*.f64 y (fma.f64 x (log.f64 y) y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (*.f64 x (log.f64 y)) 2) (*.f64 y y)) (/.f64 1 (fma.f64 x (log.f64 y) y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (*.f64 x (log.f64 y))) (sqrt.f64 y)) (-.f64 (sqrt.f64 (*.f64 x (log.f64 y))) (sqrt.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (pow.f64 (*.f64 x (log.f64 y)) 2) (*.f64 y (fma.f64 x (log.f64 y) y))) (-.f64 (pow.f64 (*.f64 x (log.f64 y)) 3) (pow.f64 y 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 x (log.f64 y) y) (-.f64 (pow.f64 (*.f64 x (log.f64 y)) 2) (*.f64 y y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 x (log.f64 y)) 3) (pow.f64 y 3)) (+.f64 (pow.f64 (*.f64 x (log.f64 y)) 2) (*.f64 y (fma.f64 x (log.f64 y) y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 x (log.f64 y)) 2) (*.f64 y y)) (fma.f64 x (log.f64 y) y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 x (log.f64 y)) 3) (pow.f64 y 3))) (neg.f64 (+.f64 (pow.f64 (*.f64 x (log.f64 y)) 2) (*.f64 y (fma.f64 x (log.f64 y) y)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 x (log.f64 y)) 2) (*.f64 y y))) (neg.f64 (fma.f64 x (log.f64 y) y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 x (log.f64 y)) 3) (pow.f64 (neg.f64 y) 3)) (+.f64 (pow.f64 (*.f64 x (log.f64 y)) 2) (-.f64 (*.f64 (neg.f64 y) (neg.f64 y)) (*.f64 (*.f64 x (log.f64 y)) (neg.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 x (log.f64 y)) 2) (*.f64 (neg.f64 y) (neg.f64 y))) (-.f64 (*.f64 x (log.f64 y)) (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (*.f64 x (log.f64 y)) y) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (*.f64 x (log.f64 y)) y) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (-.f64 (*.f64 x (log.f64 y)) y)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (-.f64 (*.f64 x (log.f64 y)) y)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (-.f64 (*.f64 x (log.f64 y)) y) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (pow.f64 y x) (exp.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (-.f64 (*.f64 x (log.f64 y)) y) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (-.f64 (*.f64 x (log.f64 y)) y)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (-.f64 (*.f64 x (log.f64 y)) y)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (-.f64 (*.f64 x (log.f64 y)) y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x (log.f64 y) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (log.f64 y) x (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 x (log.f64 y))) (pow.f64 (cbrt.f64 (*.f64 x (log.f64 y))) 2) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 x (log.f64 y)) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 x (log.f64 y))) 2) (cbrt.f64 (*.f64 x (log.f64 y))) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 x (log.f64 y))) (sqrt.f64 (*.f64 x (log.f64 y))) (neg.f64 y))))))

simplify123.0ms (1%)

Algorithm
egg-herbie
Rules
1145×fma-neg_binary64
660×fma-def_binary64
418×unswap-sqr_binary64
402×associate--r-_binary64
338×sqr-pow_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
032373
192298
2197298
3409298
4804298
51640298
64067298
75407298
85590298
95773298
106001298
116338298
Stop Event
node limit
Counts
129 → 103
Calls
Call 1
Inputs
(*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 y) x))
(*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 y) x))
(*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 y) x))
(*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 y) x))
(*.f64 -1 (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 (/.f64 1 y)) x)))
(*.f64 -1 (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 (/.f64 1 y)) x)))
(*.f64 -1 (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 (/.f64 1 y)) x)))
(*.f64 -1 (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 (/.f64 1 y)) x)))
(*.f64 (pow.f64 1 1/3) (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x))
(*.f64 (pow.f64 1 1/3) (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x))
(*.f64 (pow.f64 1 1/3) (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x))
(*.f64 (pow.f64 1 1/3) (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x))
(pow.f64 (*.f64 (log.f64 y) x) 1/3)
(pow.f64 (*.f64 (log.f64 y) x) 1/3)
(pow.f64 (*.f64 (log.f64 y) x) 1/3)
(pow.f64 (*.f64 (log.f64 y) x) 1/3)
(*.f64 (pow.f64 (*.f64 1 (*.f64 (log.f64 (/.f64 1 y)) x)) 1/3) (cbrt.f64 -1))
(*.f64 (pow.f64 (*.f64 1 (*.f64 (log.f64 (/.f64 1 y)) x)) 1/3) (cbrt.f64 -1))
(*.f64 (pow.f64 (*.f64 1 (*.f64 (log.f64 (/.f64 1 y)) x)) 1/3) (cbrt.f64 -1))
(*.f64 (pow.f64 (*.f64 1 (*.f64 (log.f64 (/.f64 1 y)) x)) 1/3) (cbrt.f64 -1))
(pow.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x) 1/3)
(pow.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x) 1/3)
(pow.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x) 1/3)
(pow.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x) 1/3)
(*.f64 -1 y)
(*.f64 -1 y)
(*.f64 -1 y)
(*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 y) x))
(+.f64 (*.f64 -1 y) (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 y) x)))
(+.f64 (*.f64 -1 y) (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 y) x)))
(+.f64 (*.f64 -1 y) (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 y) x)))
(*.f64 -1 y)
(+.f64 (*.f64 -1 y) (*.f64 -1 (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 (/.f64 1 y)) x))))
(+.f64 (*.f64 -1 y) (*.f64 -1 (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 (/.f64 1 y)) x))))
(+.f64 (*.f64 -1 y) (*.f64 -1 (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 (/.f64 1 y)) x))))
(*.f64 -1 y)
(+.f64 (*.f64 (pow.f64 1 1/3) (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x)) (*.f64 -1 y))
(+.f64 (*.f64 (pow.f64 1 1/3) (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x)) (*.f64 -1 y))
(+.f64 (*.f64 (pow.f64 1 1/3) (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x)) (*.f64 -1 y))
Outputs
(*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 y) x))
(*.f64 1 (*.f64 (log.f64 y) x))
(*.f64 (log.f64 y) x)
(*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 y) x))
(*.f64 1 (*.f64 (log.f64 y) x))
(*.f64 (log.f64 y) x)
(*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 y) x))
(*.f64 1 (*.f64 (log.f64 y) x))
(*.f64 (log.f64 y) x)
(*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 y) x))
(*.f64 1 (*.f64 (log.f64 y) x))
(*.f64 (log.f64 y) x)
(*.f64 -1 (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 (/.f64 1 y)) x)))
(*.f64 1 (*.f64 (log.f64 y) x))
(*.f64 (log.f64 y) x)
(*.f64 -1 (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 (/.f64 1 y)) x)))
(*.f64 1 (*.f64 (log.f64 y) x))
(*.f64 (log.f64 y) x)
(*.f64 -1 (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 (/.f64 1 y)) x)))
(*.f64 1 (*.f64 (log.f64 y) x))
(*.f64 (log.f64 y) x)
(*.f64 -1 (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 (/.f64 1 y)) x)))
(*.f64 1 (*.f64 (log.f64 y) x))
(*.f64 (log.f64 y) x)
(*.f64 (pow.f64 1 1/3) (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x))
(*.f64 1 (*.f64 (log.f64 y) x))
(*.f64 (log.f64 y) x)
(*.f64 (pow.f64 1 1/3) (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x))
(*.f64 1 (*.f64 (log.f64 y) x))
(*.f64 (log.f64 y) x)
(*.f64 (pow.f64 1 1/3) (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x))
(*.f64 1 (*.f64 (log.f64 y) x))
(*.f64 (log.f64 y) x)
(*.f64 (pow.f64 1 1/3) (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x))
(*.f64 1 (*.f64 (log.f64 y) x))
(*.f64 (log.f64 y) x)
(pow.f64 (*.f64 (log.f64 y) x) 1/3)
(cbrt.f64 (*.f64 (log.f64 y) x))
(pow.f64 (*.f64 (log.f64 y) x) 1/3)
(cbrt.f64 (*.f64 (log.f64 y) x))
(pow.f64 (*.f64 (log.f64 y) x) 1/3)
(cbrt.f64 (*.f64 (log.f64 y) x))
(pow.f64 (*.f64 (log.f64 y) x) 1/3)
(cbrt.f64 (*.f64 (log.f64 y) x))
(*.f64 (pow.f64 (*.f64 1 (*.f64 (log.f64 (/.f64 1 y)) x)) 1/3) (cbrt.f64 -1))
(*.f64 (cbrt.f64 (*.f64 x (neg.f64 (log.f64 y)))) (cbrt.f64 -1))
(*.f64 (cbrt.f64 (neg.f64 (*.f64 (log.f64 y) x))) (cbrt.f64 -1))
(*.f64 (cbrt.f64 (*.f64 (log.f64 y) (neg.f64 x))) (cbrt.f64 -1))
(*.f64 (pow.f64 (*.f64 1 (*.f64 (log.f64 (/.f64 1 y)) x)) 1/3) (cbrt.f64 -1))
(*.f64 (cbrt.f64 (*.f64 x (neg.f64 (log.f64 y)))) (cbrt.f64 -1))
(*.f64 (cbrt.f64 (neg.f64 (*.f64 (log.f64 y) x))) (cbrt.f64 -1))
(*.f64 (cbrt.f64 (*.f64 (log.f64 y) (neg.f64 x))) (cbrt.f64 -1))
(*.f64 (pow.f64 (*.f64 1 (*.f64 (log.f64 (/.f64 1 y)) x)) 1/3) (cbrt.f64 -1))
(*.f64 (cbrt.f64 (*.f64 x (neg.f64 (log.f64 y)))) (cbrt.f64 -1))
(*.f64 (cbrt.f64 (neg.f64 (*.f64 (log.f64 y) x))) (cbrt.f64 -1))
(*.f64 (cbrt.f64 (*.f64 (log.f64 y) (neg.f64 x))) (cbrt.f64 -1))
(*.f64 (pow.f64 (*.f64 1 (*.f64 (log.f64 (/.f64 1 y)) x)) 1/3) (cbrt.f64 -1))
(*.f64 (cbrt.f64 (*.f64 x (neg.f64 (log.f64 y)))) (cbrt.f64 -1))
(*.f64 (cbrt.f64 (neg.f64 (*.f64 (log.f64 y) x))) (cbrt.f64 -1))
(*.f64 (cbrt.f64 (*.f64 (log.f64 y) (neg.f64 x))) (cbrt.f64 -1))
(pow.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x) 1/3)
(cbrt.f64 (*.f64 (log.f64 y) x))
(pow.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x) 1/3)
(cbrt.f64 (*.f64 (log.f64 y) x))
(pow.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x) 1/3)
(cbrt.f64 (*.f64 (log.f64 y) x))
(pow.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x) 1/3)
(cbrt.f64 (*.f64 (log.f64 y) x))
(*.f64 -1 y)
(neg.f64 y)
(*.f64 -1 y)
(neg.f64 y)
(*.f64 -1 y)
(neg.f64 y)
(*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 y) x))
(*.f64 1 (*.f64 (log.f64 y) x))
(*.f64 (log.f64 y) x)
(+.f64 (*.f64 -1 y) (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 y) x)))
(fma.f64 -1 y (*.f64 1 (*.f64 (log.f64 y) x)))
(-.f64 (*.f64 (log.f64 y) x) y)
(fma.f64 (log.f64 y) x (neg.f64 y))
(+.f64 (*.f64 -1 y) (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 y) x)))
(fma.f64 -1 y (*.f64 1 (*.f64 (log.f64 y) x)))
(-.f64 (*.f64 (log.f64 y) x) y)
(fma.f64 (log.f64 y) x (neg.f64 y))
(+.f64 (*.f64 -1 y) (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 y) x)))
(fma.f64 -1 y (*.f64 1 (*.f64 (log.f64 y) x)))
(-.f64 (*.f64 (log.f64 y) x) y)
(fma.f64 (log.f64 y) x (neg.f64 y))
(*.f64 -1 y)
(neg.f64 y)
(+.f64 (*.f64 -1 y) (*.f64 -1 (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 (/.f64 1 y)) x))))
(fma.f64 -1 y (*.f64 1 (*.f64 (log.f64 y) x)))
(-.f64 (*.f64 (log.f64 y) x) y)
(fma.f64 (log.f64 y) x (neg.f64 y))
(+.f64 (*.f64 -1 y) (*.f64 -1 (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 (/.f64 1 y)) x))))
(fma.f64 -1 y (*.f64 1 (*.f64 (log.f64 y) x)))
(-.f64 (*.f64 (log.f64 y) x) y)
(fma.f64 (log.f64 y) x (neg.f64 y))
(+.f64 (*.f64 -1 y) (*.f64 -1 (*.f64 (pow.f64 1 1/3) (*.f64 (log.f64 (/.f64 1 y)) x))))
(fma.f64 -1 y (*.f64 1 (*.f64 (log.f64 y) x)))
(-.f64 (*.f64 (log.f64 y) x) y)
(fma.f64 (log.f64 y) x (neg.f64 y))
(*.f64 -1 y)
(neg.f64 y)
(+.f64 (*.f64 (pow.f64 1 1/3) (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x)) (*.f64 -1 y))
(fma.f64 -1 y (*.f64 1 (*.f64 (log.f64 y) x)))
(-.f64 (*.f64 (log.f64 y) x) y)
(fma.f64 (log.f64 y) x (neg.f64 y))
(+.f64 (*.f64 (pow.f64 1 1/3) (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x)) (*.f64 -1 y))
(fma.f64 -1 y (*.f64 1 (*.f64 (log.f64 y) x)))
(-.f64 (*.f64 (log.f64 y) x) y)
(fma.f64 (log.f64 y) x (neg.f64 y))
(+.f64 (*.f64 (pow.f64 1 1/3) (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x)) (*.f64 -1 y))
(fma.f64 -1 y (*.f64 1 (*.f64 (log.f64 y) x)))
(-.f64 (*.f64 (log.f64 y) x) y)
(fma.f64 (log.f64 y) x (neg.f64 y))

eval232.0ms (1.9%)

Compiler

Compiled 10809 to 3521 computations (67.4% saved)

prune237.0ms (2%)

Pruning

19 alts after pruning (18 fresh and 1 done)

PrunedKeptTotal
New63316649
Fresh527
Picked101
Done314
Total64219661
Error
0b
Counts
661 → 19
Alt Table
Click to see full alt table
StatusErrorProgram
43.0b
(neg.f64 y)
52.5b
(log.f64 (*.f64 t (/.f64 (pow.f64 y x) (exp.f64 (+.f64 y z)))))
17.1b
(fma.f64 (*.f64 (log.f64 y) (cbrt.f64 (*.f64 x x))) (cbrt.f64 x) (-.f64 (neg.f64 y) (-.f64 z (log.f64 t))))
20.8b
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)) z)
29.9b
(+.f64 (-.f64 (-.f64 (*.f64 (*.f64 (log.f64 y) (sqrt.f64 x)) (sqrt.f64 x)) y) z) (log.f64 t))
25.0b
(-.f64 (*.f64 (log.f64 y) x) y)
38.0b
(-.f64 (log.f64 t) z)
45.3b
(*.f64 (log.f64 y) x)
0.3b
(fma.f64 (pow.f64 (pow.f64 (log.f64 y) 2) 1/3) (*.f64 (cbrt.f64 (log.f64 y)) x) (-.f64 (neg.f64 y) (-.f64 z (log.f64 t))))
0.3b
(+.f64 (-.f64 (-.f64 (*.f64 (pow.f64 (cbrt.f64 (log.f64 y)) 2) (*.f64 (cbrt.f64 (log.f64 y)) x)) y) z) (log.f64 t))
20.8b
(fma.f64 (log.f64 y) x (-.f64 (log.f64 t) z))
30.3b
(+.f64 (-.f64 (-.f64 (*.f64 (*.f64 x (sqrt.f64 (log.f64 y))) (sqrt.f64 (log.f64 y))) y) z) (log.f64 t))
30.4b
(fma.f64 (exp.f64 (*.f64 2/3 (log.f64 (log.f64 y)))) (*.f64 (cbrt.f64 (log.f64 y)) x) (-.f64 (neg.f64 y) (-.f64 z (log.f64 t))))
36.9b
(-.f64 (+.f64 (pow.f64 (sqrt.f64 (*.f64 (log.f64 y) x)) 2) (log.f64 t)) y)
14.3b
(-.f64 (+.f64 (pow.f64 (cbrt.f64 (*.f64 (log.f64 y) x)) 3) (log.f64 t)) y)
48.9b
(neg.f64 z)
31.9b
(-.f64 (log.f64 t) y)
51.4b
(log.f64 t)
18.3b
(-.f64 (-.f64 (log.f64 t) y) z)
Compiler

Compiled 512 to 356 computations (30.5% saved)

localize37.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(*.f64 (cbrt.f64 (log.f64 y)) x)
0.5b
(cbrt.f64 (log.f64 y))
0.5b
(pow.f64 (log.f64 y) 2)
1.1b
(pow.f64 (pow.f64 (log.f64 y) 2) 1/3)
Compiler

Compiled 64 to 24 computations (62.5% saved)

series11.0ms (0.1%)

Counts
2 → 16
Calls

6 calls:

TimeVariablePointExpression
6.0ms
y
@-inf
(pow.f64 (pow.f64 (log.f64 y) 2) 1/3)
2.0ms
y
@0
(pow.f64 (pow.f64 (log.f64 y) 2) 1/3)
2.0ms
y
@inf
(pow.f64 (pow.f64 (log.f64 y) 2) 1/3)
0.0ms
y
@0
(pow.f64 (log.f64 y) 2)
0.0ms
y
@-inf
(pow.f64 (log.f64 y) 2)

rewrite51.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
531×pow1_binary64
517×add-sqr-sqrt_binary64
498×add-log-exp_binary64
498×log1p-expm1-u_binary64
498×expm1-log1p-u_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0714
115014
2148014
Stop Event
node limit
Counts
2 → 35
Calls
Call 1
Inputs
(pow.f64 (pow.f64 (log.f64 y) 2) 1/3)
(pow.f64 (log.f64 y) 2)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (pow.f64 (cbrt.f64 (log.f64 y)) 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (log.f64 y)) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (cbrt.f64 (log.f64 y)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (log.f64 y)) (cbrt.f64 (log.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (log.f64 y)) 2)) (cbrt.f64 (cbrt.f64 (pow.f64 (log.f64 y) 4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (pow.f64 (log.f64 y) 4))) (cbrt.f64 (pow.f64 (cbrt.f64 (log.f64 y)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 2/3) (pow.f64 (cbrt.f64 (log.f64 y)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (log.f64 y)) 2) 2/3) (pow.f64 (cbrt.f64 (log.f64 y)) 2/3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (log.f64 y)) 2/3) (pow.f64 (sqrt.f64 (log.f64 y)) 2/3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/3) (pow.f64 (cbrt.f64 (log.f64 y)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (pow.f64 (log.f64 y) 4)) 1/3) (cbrt.f64 (pow.f64 (cbrt.f64 (log.f64 y)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (cbrt.f64 (pow.f64 (log.f64 y) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 y)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (log.f64 y) 2))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (cbrt.f64 (log.f64 y)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (cbrt.f64 (log.f64 y)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (log.f64 y)) 2/3))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (pow.f64 (log.f64 y) 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (log.f64 y) (log.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (log.f64 y) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (log.f64 y)) 2) (cbrt.f64 (pow.f64 (log.f64 y) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (log.f64 y) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (log.f64 y) 4)) (pow.f64 (cbrt.f64 (log.f64 y)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (log.f64 y)) (*.f64 (sqrt.f64 (log.f64 y)) (log.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (log.f64 y) (sqrt.f64 (log.f64 y))) (sqrt.f64 (log.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (log.f64 y) (pow.f64 (cbrt.f64 (log.f64 y)) 2)) (cbrt.f64 (log.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (pow.f64 (log.f64 y) 4)) 1) (pow.f64 (cbrt.f64 (log.f64 y)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (pow.f64 (log.f64 y) 4)) (cbrt.f64 (cbrt.f64 (pow.f64 (log.f64 y) 4)))) (cbrt.f64 (pow.f64 (cbrt.f64 (log.f64 y)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (pow.f64 (log.f64 y) 4)) (cbrt.f64 (log.f64 y))) (cbrt.f64 (log.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (log.f64 y) 4))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 y (log.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (pow.f64 (log.f64 y) 2) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (log.f64 y) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (log.f64 y) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 2 (log.f64 (log.f64 y))))))))

simplify62.0ms (0.5%)

Algorithm
egg-herbie
Rules
798×fma-neg_binary64
326×unswap-sqr_binary64
322×associate-*l*_binary64
310×fma-def_binary64
291×associate-*r*_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
017144
143144
276144
3197112
4719112
53093112
67711112
Stop Event
node limit
Counts
51 → 40
Calls
Call 1
Inputs
(pow.f64 (pow.f64 (log.f64 (/.f64 1 y)) 2) 1/3)
(pow.f64 (pow.f64 (log.f64 (/.f64 1 y)) 2) 1/3)
(pow.f64 (pow.f64 (log.f64 (/.f64 1 y)) 2) 1/3)
(pow.f64 (pow.f64 (log.f64 (/.f64 1 y)) 2) 1/3)
(pow.f64 (pow.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) 2) 1/3)
(pow.f64 (pow.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) 2) 1/3)
(pow.f64 (pow.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) 2) 1/3)
(pow.f64 (pow.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) 2) 1/3)
(pow.f64 (log.f64 (/.f64 1 y)) 2)
(pow.f64 (log.f64 (/.f64 1 y)) 2)
(pow.f64 (log.f64 (/.f64 1 y)) 2)
(pow.f64 (log.f64 (/.f64 1 y)) 2)
(pow.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) 2)
(pow.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) 2)
(pow.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) 2)
(pow.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) 2)
Outputs
(pow.f64 (pow.f64 (log.f64 (/.f64 1 y)) 2) 1/3)
(cbrt.f64 (pow.f64 (neg.f64 (log.f64 y)) 2))
(cbrt.f64 (*.f64 (log.f64 y) (log.f64 y)))
(cbrt.f64 (pow.f64 (log.f64 y) 2))
(pow.f64 (pow.f64 (log.f64 (/.f64 1 y)) 2) 1/3)
(cbrt.f64 (pow.f64 (neg.f64 (log.f64 y)) 2))
(cbrt.f64 (*.f64 (log.f64 y) (log.f64 y)))
(cbrt.f64 (pow.f64 (log.f64 y) 2))
(pow.f64 (pow.f64 (log.f64 (/.f64 1 y)) 2) 1/3)
(cbrt.f64 (pow.f64 (neg.f64 (log.f64 y)) 2))
(cbrt.f64 (*.f64 (log.f64 y) (log.f64 y)))
(cbrt.f64 (pow.f64 (log.f64 y) 2))
(pow.f64 (pow.f64 (log.f64 (/.f64 1 y)) 2) 1/3)
(cbrt.f64 (pow.f64 (neg.f64 (log.f64 y)) 2))
(cbrt.f64 (*.f64 (log.f64 y) (log.f64 y)))
(cbrt.f64 (pow.f64 (log.f64 y) 2))
(pow.f64 (pow.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) 2) 1/3)
(cbrt.f64 (pow.f64 (neg.f64 (log.f64 y)) 2))
(cbrt.f64 (*.f64 (log.f64 y) (log.f64 y)))
(cbrt.f64 (pow.f64 (log.f64 y) 2))
(pow.f64 (pow.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) 2) 1/3)
(cbrt.f64 (pow.f64 (neg.f64 (log.f64 y)) 2))
(cbrt.f64 (*.f64 (log.f64 y) (log.f64 y)))
(cbrt.f64 (pow.f64 (log.f64 y) 2))
(pow.f64 (pow.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) 2) 1/3)
(cbrt.f64 (pow.f64 (neg.f64 (log.f64 y)) 2))
(cbrt.f64 (*.f64 (log.f64 y) (log.f64 y)))
(cbrt.f64 (pow.f64 (log.f64 y) 2))
(pow.f64 (pow.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) 2) 1/3)
(cbrt.f64 (pow.f64 (neg.f64 (log.f64 y)) 2))
(cbrt.f64 (*.f64 (log.f64 y) (log.f64 y)))
(cbrt.f64 (pow.f64 (log.f64 y) 2))
(pow.f64 (log.f64 (/.f64 1 y)) 2)
(pow.f64 (neg.f64 (log.f64 y)) 2)
(*.f64 (log.f64 y) (log.f64 y))
(pow.f64 (log.f64 y) 2)
(pow.f64 (log.f64 (/.f64 1 y)) 2)
(pow.f64 (neg.f64 (log.f64 y)) 2)
(*.f64 (log.f64 y) (log.f64 y))
(pow.f64 (log.f64 y) 2)
(pow.f64 (log.f64 (/.f64 1 y)) 2)
(pow.f64 (neg.f64 (log.f64 y)) 2)
(*.f64 (log.f64 y) (log.f64 y))
(pow.f64 (log.f64 y) 2)
(pow.f64 (log.f64 (/.f64 1 y)) 2)
(pow.f64 (neg.f64 (log.f64 y)) 2)
(*.f64 (log.f64 y) (log.f64 y))
(pow.f64 (log.f64 y) 2)
(pow.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) 2)
(pow.f64 (neg.f64 (log.f64 y)) 2)
(*.f64 (log.f64 y) (log.f64 y))
(pow.f64 (log.f64 y) 2)
(pow.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) 2)
(pow.f64 (neg.f64 (log.f64 y)) 2)
(*.f64 (log.f64 y) (log.f64 y))
(pow.f64 (log.f64 y) 2)
(pow.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) 2)
(pow.f64 (neg.f64 (log.f64 y)) 2)
(*.f64 (log.f64 y) (log.f64 y))
(pow.f64 (log.f64 y) 2)
(pow.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) 2)
(pow.f64 (neg.f64 (log.f64 y)) 2)
(*.f64 (log.f64 y) (log.f64 y))
(pow.f64 (log.f64 y) 2)

localize3.0ms (0%)

Compiler

Compiled 7 to 5 computations (28.6% saved)

localize7.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(-.f64 (log.f64 t) y)
Compiler

Compiled 12 to 6 computations (50% saved)

series5.0ms (0%)

Counts
1 → 20
Calls

6 calls:

TimeVariablePointExpression
4.0ms
t
@0
(-.f64 (log.f64 t) y)
0.0ms
t
@inf
(-.f64 (log.f64 t) y)
0.0ms
t
@-inf
(-.f64 (log.f64 t) y)
0.0ms
y
@inf
(-.f64 (log.f64 t) y)
0.0ms
y
@0
(-.f64 (log.f64 t) y)

rewrite49.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
595×pow1_binary64
553×add-log-exp_binary64
553×log1p-expm1-u_binary64
553×expm1-log1p-u_binary64
541×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify158.0ms (1.3%)

Algorithm
egg-herbie
Rules
2071×fma-neg_binary64
848×distribute-rgt-in_binary64
579×distribute-lft-in_binary64
465×unsub-neg_binary64
289×distribute-neg-in_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
018179
139111
265111
3157111
4369111
5934111
62456111
74367111
84756111
94880111
104915111
114918111
124918111
136132111
146655111
157291111
167942111
Stop Event
node limit
Counts
55 → 42
Calls
Call 1
Inputs
(-.f64 (*.f64 -1 (log.f64 (/.f64 1 t))) y)
(-.f64 (*.f64 -1 (log.f64 (/.f64 1 t))) y)
(-.f64 (*.f64 -1 (log.f64 (/.f64 1 t))) y)
(-.f64 (*.f64 -1 (log.f64 (/.f64 1 t))) y)
(-.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 t)))) y)
(-.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 t)))) y)
(-.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 t)))) y)
(-.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 t)))) y)
(log.f64 t)
(+.f64 (*.f64 -1 y) (log.f64 t))
(+.f64 (*.f64 -1 y) (log.f64 t))
(+.f64 (*.f64 -1 y) (log.f64 t))
(*.f64 -1 y)
(+.f64 (*.f64 -1 y) (log.f64 t))
(+.f64 (*.f64 -1 y) (log.f64 t))
(+.f64 (*.f64 -1 y) (log.f64 t))
(*.f64 -1 y)
(+.f64 (*.f64 -1 y) (log.f64 t))
(+.f64 (*.f64 -1 y) (log.f64 t))
(+.f64 (*.f64 -1 y) (log.f64 t))
Outputs
(-.f64 (*.f64 -1 (log.f64 (/.f64 1 t))) y)
(-.f64 (neg.f64 (neg.f64 (log.f64 t))) y)
(-.f64 (log.f64 t) y)
(-.f64 (*.f64 -1 (log.f64 (/.f64 1 t))) y)
(-.f64 (neg.f64 (neg.f64 (log.f64 t))) y)
(-.f64 (log.f64 t) y)
(-.f64 (*.f64 -1 (log.f64 (/.f64 1 t))) y)
(-.f64 (neg.f64 (neg.f64 (log.f64 t))) y)
(-.f64 (log.f64 t) y)
(-.f64 (*.f64 -1 (log.f64 (/.f64 1 t))) y)
(-.f64 (neg.f64 (neg.f64 (log.f64 t))) y)
(-.f64 (log.f64 t) y)
(-.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 t)))) y)
(-.f64 (neg.f64 (neg.f64 (log.f64 t))) y)
(-.f64 (log.f64 t) y)
(-.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 t)))) y)
(-.f64 (neg.f64 (neg.f64 (log.f64 t))) y)
(-.f64 (log.f64 t) y)
(-.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 t)))) y)
(-.f64 (neg.f64 (neg.f64 (log.f64 t))) y)
(-.f64 (log.f64 t) y)
(-.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 t)))) y)
(-.f64 (neg.f64 (neg.f64 (log.f64 t))) y)
(-.f64 (log.f64 t) y)
(log.f64 t)
(+.f64 (*.f64 -1 y) (log.f64 t))
(-.f64 (neg.f64 (neg.f64 (log.f64 t))) y)
(-.f64 (log.f64 t) y)
(+.f64 (*.f64 -1 y) (log.f64 t))
(-.f64 (neg.f64 (neg.f64 (log.f64 t))) y)
(-.f64 (log.f64 t) y)
(+.f64 (*.f64 -1 y) (log.f64 t))
(-.f64 (neg.f64 (neg.f64 (log.f64 t))) y)
(-.f64 (log.f64 t) y)
(*.f64 -1 y)
(neg.f64 y)
(+.f64 (*.f64 -1 y) (log.f64 t))
(-.f64 (neg.f64 (neg.f64 (log.f64 t))) y)
(-.f64 (log.f64 t) y)
(+.f64 (*.f64 -1 y) (log.f64 t))
(-.f64 (neg.f64 (neg.f64 (log.f64 t))) y)
(-.f64 (log.f64 t) y)
(+.f64 (*.f64 -1 y) (log.f64 t))
(-.f64 (neg.f64 (neg.f64 (log.f64 t))) y)
(-.f64 (log.f64 t) y)
(*.f64 -1 y)
(neg.f64 y)
(+.f64 (*.f64 -1 y) (log.f64 t))
(-.f64 (neg.f64 (neg.f64 (log.f64 t))) y)
(-.f64 (log.f64 t) y)
(+.f64 (*.f64 -1 y) (log.f64 t))
(-.f64 (neg.f64 (neg.f64 (log.f64 t))) y)
(-.f64 (log.f64 t) y)
(+.f64 (*.f64 -1 y) (log.f64 t))
(-.f64 (neg.f64 (neg.f64 (log.f64 t))) y)
(-.f64 (log.f64 t) y)

localize14.0ms (0.1%)

Local error

Found 3 expressions with local error:

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

Compiled 32 to 9 computations (71.9% saved)

series4.0ms (0%)

Counts
1 → 31
Calls

12 calls:

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

rewrite76.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
548×fma-def_binary64
538×log-prod_binary64
386×pow-prod-down_binary64
297×pow2_binary64
273×fma-neg_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify128.0ms (1.1%)

Algorithm
egg-herbie
Rules
689×unsub-neg_binary64
567×sub-neg_binary64
552×fma-def_binary64
441×+-commutative_binary64
371×distribute-neg-in_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
039458
194433
2206333
3578333
41713333
54653333
66027333
77164333
87771333
97846333
107952333
Stop Event
node limit
Counts
178 → 159
Calls
Call 1
Inputs
(-.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x)) (log.f64 t)) z)
(-.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x)) (log.f64 t)) z)
(-.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x)) (log.f64 t)) z)
(-.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x)) (log.f64 t)) z)
(-.f64 (+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x) (log.f64 t)) z)
(-.f64 (+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x) (log.f64 t)) z)
(-.f64 (+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x) (log.f64 t)) z)
(-.f64 (+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x) (log.f64 t)) z)
(-.f64 (log.f64 t) z)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 (log.f64 (/.f64 1 t)))) z)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 (log.f64 (/.f64 1 t)))) z)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 (log.f64 (/.f64 1 t)))) z)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 (log.f64 (/.f64 1 t)))) z)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 t))))) z)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 t))))) z)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 t))))) z)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 t))))) z)
(+.f64 (*.f64 (log.f64 y) x) (log.f64 t))
(+.f64 (*.f64 -1 z) (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)))
(+.f64 (*.f64 -1 z) (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)))
(+.f64 (*.f64 -1 z) (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)))
(*.f64 -1 z)
(+.f64 (*.f64 -1 z) (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)))
(+.f64 (*.f64 -1 z) (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)))
(+.f64 (*.f64 -1 z) (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)))
(*.f64 -1 z)
(+.f64 (*.f64 -1 z) (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)))
(+.f64 (*.f64 -1 z) (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)))
(+.f64 (*.f64 -1 z) (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)))
Outputs
(-.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x)) (log.f64 t)) z)
(-.f64 (fma.f64 -1 (*.f64 (neg.f64 (log.f64 y)) x) (log.f64 t)) z)
(-.f64 (-.f64 (log.f64 t) (*.f64 (neg.f64 (log.f64 y)) x)) z)
(-.f64 (fma.f64 x (log.f64 y) (log.f64 t)) z)
(fma.f64 x (log.f64 y) (-.f64 (log.f64 t) z))
(-.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x)) (log.f64 t)) z)
(-.f64 (fma.f64 -1 (*.f64 (neg.f64 (log.f64 y)) x) (log.f64 t)) z)
(-.f64 (-.f64 (log.f64 t) (*.f64 (neg.f64 (log.f64 y)) x)) z)
(-.f64 (fma.f64 x (log.f64 y) (log.f64 t)) z)
(fma.f64 x (log.f64 y) (-.f64 (log.f64 t) z))
(-.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x)) (log.f64 t)) z)
(-.f64 (fma.f64 -1 (*.f64 (neg.f64 (log.f64 y)) x) (log.f64 t)) z)
(-.f64 (-.f64 (log.f64 t) (*.f64 (neg.f64 (log.f64 y)) x)) z)
(-.f64 (fma.f64 x (log.f64 y) (log.f64 t)) z)
(fma.f64 x (log.f64 y) (-.f64 (log.f64 t) z))
(-.f64 (+.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x)) (log.f64 t)) z)
(-.f64 (fma.f64 -1 (*.f64 (neg.f64 (log.f64 y)) x) (log.f64 t)) z)
(-.f64 (-.f64 (log.f64 t) (*.f64 (neg.f64 (log.f64 y)) x)) z)
(-.f64 (fma.f64 x (log.f64 y) (log.f64 t)) z)
(fma.f64 x (log.f64 y) (-.f64 (log.f64 t) z))
(-.f64 (+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x) (log.f64 t)) z)
(-.f64 (fma.f64 -1 (*.f64 (neg.f64 (log.f64 y)) x) (log.f64 t)) z)
(-.f64 (-.f64 (log.f64 t) (*.f64 (neg.f64 (log.f64 y)) x)) z)
(-.f64 (fma.f64 x (log.f64 y) (log.f64 t)) z)
(fma.f64 x (log.f64 y) (-.f64 (log.f64 t) z))
(-.f64 (+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x) (log.f64 t)) z)
(-.f64 (fma.f64 -1 (*.f64 (neg.f64 (log.f64 y)) x) (log.f64 t)) z)
(-.f64 (-.f64 (log.f64 t) (*.f64 (neg.f64 (log.f64 y)) x)) z)
(-.f64 (fma.f64 x (log.f64 y) (log.f64 t)) z)
(fma.f64 x (log.f64 y) (-.f64 (log.f64 t) z))
(-.f64 (+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x) (log.f64 t)) z)
(-.f64 (fma.f64 -1 (*.f64 (neg.f64 (log.f64 y)) x) (log.f64 t)) z)
(-.f64 (-.f64 (log.f64 t) (*.f64 (neg.f64 (log.f64 y)) x)) z)
(-.f64 (fma.f64 x (log.f64 y) (log.f64 t)) z)
(fma.f64 x (log.f64 y) (-.f64 (log.f64 t) z))
(-.f64 (+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x) (log.f64 t)) z)
(-.f64 (fma.f64 -1 (*.f64 (neg.f64 (log.f64 y)) x) (log.f64 t)) z)
(-.f64 (-.f64 (log.f64 t) (*.f64 (neg.f64 (log.f64 y)) x)) z)
(-.f64 (fma.f64 x (log.f64 y) (log.f64 t)) z)
(fma.f64 x (log.f64 y) (-.f64 (log.f64 t) z))
(-.f64 (log.f64 t) z)
(*.f64 (log.f64 y) x)
(*.f64 x (log.f64 y))
(*.f64 (log.f64 y) x)
(*.f64 x (log.f64 y))
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 (log.f64 (/.f64 1 t)))) z)
(-.f64 (fma.f64 -1 (*.f64 (neg.f64 (log.f64 y)) x) (log.f64 t)) z)
(-.f64 (-.f64 (log.f64 t) (*.f64 (neg.f64 (log.f64 y)) x)) z)
(-.f64 (fma.f64 x (log.f64 y) (log.f64 t)) z)
(fma.f64 x (log.f64 y) (-.f64 (log.f64 t) z))
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 (log.f64 (/.f64 1 t)))) z)
(-.f64 (fma.f64 -1 (*.f64 (neg.f64 (log.f64 y)) x) (log.f64 t)) z)
(-.f64 (-.f64 (log.f64 t) (*.f64 (neg.f64 (log.f64 y)) x)) z)
(-.f64 (fma.f64 x (log.f64 y) (log.f64 t)) z)
(fma.f64 x (log.f64 y) (-.f64 (log.f64 t) z))
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 (log.f64 (/.f64 1 t)))) z)
(-.f64 (fma.f64 -1 (*.f64 (neg.f64 (log.f64 y)) x) (log.f64 t)) z)
(-.f64 (-.f64 (log.f64 t) (*.f64 (neg.f64 (log.f64 y)) x)) z)
(-.f64 (fma.f64 x (log.f64 y) (log.f64 t)) z)
(fma.f64 x (log.f64 y) (-.f64 (log.f64 t) z))
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 (log.f64 (/.f64 1 t)))) z)
(-.f64 (fma.f64 -1 (*.f64 (neg.f64 (log.f64 y)) x) (log.f64 t)) z)
(-.f64 (-.f64 (log.f64 t) (*.f64 (neg.f64 (log.f64 y)) x)) z)
(-.f64 (fma.f64 x (log.f64 y) (log.f64 t)) z)
(fma.f64 x (log.f64 y) (-.f64 (log.f64 t) z))
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 t))))) z)
(-.f64 (fma.f64 -1 (*.f64 (neg.f64 (log.f64 y)) x) (log.f64 t)) z)
(-.f64 (-.f64 (log.f64 t) (*.f64 (neg.f64 (log.f64 y)) x)) z)
(-.f64 (fma.f64 x (log.f64 y) (log.f64 t)) z)
(fma.f64 x (log.f64 y) (-.f64 (log.f64 t) z))
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 t))))) z)
(-.f64 (fma.f64 -1 (*.f64 (neg.f64 (log.f64 y)) x) (log.f64 t)) z)
(-.f64 (-.f64 (log.f64 t) (*.f64 (neg.f64 (log.f64 y)) x)) z)
(-.f64 (fma.f64 x (log.f64 y) (log.f64 t)) z)
(fma.f64 x (log.f64 y) (-.f64 (log.f64 t) z))
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 t))))) z)
(-.f64 (fma.f64 -1 (*.f64 (neg.f64 (log.f64 y)) x) (log.f64 t)) z)
(-.f64 (-.f64 (log.f64 t) (*.f64 (neg.f64 (log.f64 y)) x)) z)
(-.f64 (fma.f64 x (log.f64 y) (log.f64 t)) z)
(fma.f64 x (log.f64 y) (-.f64 (log.f64 t) z))
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 t))))) z)
(-.f64 (fma.f64 -1 (*.f64 (neg.f64 (log.f64 y)) x) (log.f64 t)) z)
(-.f64 (-.f64 (log.f64 t) (*.f64 (neg.f64 (log.f64 y)) x)) z)
(-.f64 (fma.f64 x (log.f64 y) (log.f64 t)) z)
(fma.f64 x (log.f64 y) (-.f64 (log.f64 t) z))
(+.f64 (*.f64 (log.f64 y) x) (log.f64 t))
(fma.f64 (log.f64 y) x (log.f64 t))
(fma.f64 x (log.f64 y) (log.f64 t))
(+.f64 (*.f64 -1 z) (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)))
(-.f64 (fma.f64 -1 (*.f64 (neg.f64 (log.f64 y)) x) (log.f64 t)) z)
(-.f64 (-.f64 (log.f64 t) (*.f64 (neg.f64 (log.f64 y)) x)) z)
(-.f64 (fma.f64 x (log.f64 y) (log.f64 t)) z)
(fma.f64 x (log.f64 y) (-.f64 (log.f64 t) z))
(+.f64 (*.f64 -1 z) (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)))
(-.f64 (fma.f64 -1 (*.f64 (neg.f64 (log.f64 y)) x) (log.f64 t)) z)
(-.f64 (-.f64 (log.f64 t) (*.f64 (neg.f64 (log.f64 y)) x)) z)
(-.f64 (fma.f64 x (log.f64 y) (log.f64 t)) z)
(fma.f64 x (log.f64 y) (-.f64 (log.f64 t) z))
(+.f64 (*.f64 -1 z) (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)))
(-.f64 (fma.f64 -1 (*.f64 (neg.f64 (log.f64 y)) x) (log.f64 t)) z)
(-.f64 (-.f64 (log.f64 t) (*.f64 (neg.f64 (log.f64 y)) x)) z)
(-.f64 (fma.f64 x (log.f64 y) (log.f64 t)) z)
(fma.f64 x (log.f64 y) (-.f64 (log.f64 t) z))
(*.f64 -1 z)
(neg.f64 z)
(+.f64 (*.f64 -1 z) (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)))
(-.f64 (fma.f64 -1 (*.f64 (neg.f64 (log.f64 y)) x) (log.f64 t)) z)
(-.f64 (-.f64 (log.f64 t) (*.f64 (neg.f64 (log.f64 y)) x)) z)
(-.f64 (fma.f64 x (log.f64 y) (log.f64 t)) z)
(fma.f64 x (log.f64 y) (-.f64 (log.f64 t) z))
(+.f64 (*.f64 -1 z) (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)))
(-.f64 (fma.f64 -1 (*.f64 (neg.f64 (log.f64 y)) x) (log.f64 t)) z)
(-.f64 (-.f64 (log.f64 t) (*.f64 (neg.f64 (log.f64 y)) x)) z)
(-.f64 (fma.f64 x (log.f64 y) (log.f64 t)) z)
(fma.f64 x (log.f64 y) (-.f64 (log.f64 t) z))
(+.f64 (*.f64 -1 z) (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)))
(-.f64 (fma.f64 -1 (*.f64 (neg.f64 (log.f64 y)) x) (log.f64 t)) z)
(-.f64 (-.f64 (log.f64 t) (*.f64 (neg.f64 (log.f64 y)) x)) z)
(-.f64 (fma.f64 x (log.f64 y) (log.f64 t)) z)
(fma.f64 x (log.f64 y) (-.f64 (log.f64 t) z))
(*.f64 -1 z)
(neg.f64 z)
(+.f64 (*.f64 -1 z) (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)))
(-.f64 (fma.f64 -1 (*.f64 (neg.f64 (log.f64 y)) x) (log.f64 t)) z)
(-.f64 (-.f64 (log.f64 t) (*.f64 (neg.f64 (log.f64 y)) x)) z)
(-.f64 (fma.f64 x (log.f64 y) (log.f64 t)) z)
(fma.f64 x (log.f64 y) (-.f64 (log.f64 t) z))
(+.f64 (*.f64 -1 z) (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)))
(-.f64 (fma.f64 -1 (*.f64 (neg.f64 (log.f64 y)) x) (log.f64 t)) z)
(-.f64 (-.f64 (log.f64 t) (*.f64 (neg.f64 (log.f64 y)) x)) z)
(-.f64 (fma.f64 x (log.f64 y) (log.f64 t)) z)
(fma.f64 x (log.f64 y) (-.f64 (log.f64 t) z))
(+.f64 (*.f64 -1 z) (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)))
(-.f64 (fma.f64 -1 (*.f64 (neg.f64 (log.f64 y)) x) (log.f64 t)) z)
(-.f64 (-.f64 (log.f64 t) (*.f64 (neg.f64 (log.f64 y)) x)) z)
(-.f64 (fma.f64 x (log.f64 y) (log.f64 t)) z)
(fma.f64 x (log.f64 y) (-.f64 (log.f64 t) z))

localize22.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(-.f64 (-.f64 (*.f64 (*.f64 (log.f64 y) (sqrt.f64 x)) (sqrt.f64 x)) y) z)
0.0b
(-.f64 (*.f64 (*.f64 (log.f64 y) (sqrt.f64 x)) (sqrt.f64 x)) y)
0.2b
(*.f64 (*.f64 (log.f64 y) (sqrt.f64 x)) (sqrt.f64 x))
0.2b
(*.f64 (log.f64 y) (sqrt.f64 x))
Compiler

Compiled 64 to 12 computations (81.3% saved)

series13.0ms (0.1%)

Counts
4 → 92
Calls

27 calls:

TimeVariablePointExpression
2.0ms
x
@-inf
(-.f64 (-.f64 (*.f64 (*.f64 (log.f64 y) (sqrt.f64 x)) (sqrt.f64 x)) y) z)
1.0ms
x
@-inf
(*.f64 (log.f64 y) (sqrt.f64 x))
1.0ms
x
@-inf
(*.f64 (*.f64 (log.f64 y) (sqrt.f64 x)) (sqrt.f64 x))
1.0ms
y
@0
(*.f64 (log.f64 y) (sqrt.f64 x))
1.0ms
x
@0
(*.f64 (log.f64 y) (sqrt.f64 x))

rewrite102.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
578×log-prod_binary64
572×fma-def_binary64
431×pow-prod-down_binary64
347×fma-neg_binary64
299×pow2_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify97.0ms (0.8%)

Algorithm
egg-herbie
Rules
791×unsub-neg_binary64
533×fma-neg_binary64
321×distribute-rgt-in_binary64
308×distribute-rgt-neg-in_binary64
294×distribute-neg-in_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
044801
1123801
2315769
3766769
42155769
54941769
67438769
Stop Event
node limit
Counts
411 → 347
Calls
Call 1
Inputs
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) (sqrt.f64 x)))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) (sqrt.f64 x)))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) (sqrt.f64 x)))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) (sqrt.f64 x)))
(*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) (sqrt.f64 x))
(*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) (sqrt.f64 x))
(*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) (sqrt.f64 x))
(*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) (sqrt.f64 x))
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x))
(*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x)
(*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x)
(*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x)
(*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (log.f64 y) x)))
(*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (log.f64 y) x)))
(*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (log.f64 y) x)))
(*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (log.f64 y) x)))
(*.f64 (log.f64 y) x)
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y))
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y))
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y))
(*.f64 -1 y)
(+.f64 (*.f64 -1 y) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x)))
(+.f64 (*.f64 -1 y) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x)))
(+.f64 (*.f64 -1 y) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x)))
(*.f64 -1 y)
(+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x) (*.f64 -1 y))
(+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x) (*.f64 -1 y))
(+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x) (*.f64 -1 y))
(*.f64 -1 y)
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y))
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y))
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y))
(*.f64 (log.f64 y) x)
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y))
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y))
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y))
(*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (log.f64 y) x)))
(+.f64 (*.f64 -1 y) (*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (log.f64 y) x))))
(+.f64 (*.f64 -1 y) (*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (log.f64 y) x))))
(+.f64 (*.f64 -1 y) (*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (log.f64 y) x))))
(-.f64 (*.f64 (log.f64 y) x) z)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y)) z)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y)) z)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y)) z)
(*.f64 -1 y)
(-.f64 (+.f64 (*.f64 -1 y) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x))) z)
(-.f64 (+.f64 (*.f64 -1 y) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x))) z)
(-.f64 (+.f64 (*.f64 -1 y) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x))) z)
(*.f64 -1 y)
(-.f64 (+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x) (*.f64 -1 y)) z)
(-.f64 (+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x) (*.f64 -1 y)) z)
(-.f64 (+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x) (*.f64 -1 y)) z)
(*.f64 -1 (+.f64 y z))
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 (+.f64 y z)))
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 (+.f64 y z)))
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 (+.f64 y z)))
(*.f64 (log.f64 y) x)
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 (+.f64 y z)))
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 (+.f64 y z)))
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 (+.f64 y z)))
(*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (log.f64 y) x)))
(+.f64 (*.f64 -1 (+.f64 y z)) (*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (log.f64 y) x))))
(+.f64 (*.f64 -1 (+.f64 y z)) (*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (log.f64 y) x))))
(+.f64 (*.f64 -1 (+.f64 y z)) (*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (log.f64 y) x))))
(-.f64 (*.f64 (log.f64 y) x) y)
(-.f64 (+.f64 (*.f64 -1 z) (*.f64 (log.f64 y) x)) y)
(-.f64 (+.f64 (*.f64 -1 z) (*.f64 (log.f64 y) x)) y)
(-.f64 (+.f64 (*.f64 -1 z) (*.f64 (log.f64 y) x)) y)
(*.f64 -1 z)
(-.f64 (+.f64 (*.f64 -1 z) (*.f64 (log.f64 y) x)) y)
(-.f64 (+.f64 (*.f64 -1 z) (*.f64 (log.f64 y) x)) y)
(-.f64 (+.f64 (*.f64 -1 z) (*.f64 (log.f64 y) x)) y)
(*.f64 -1 z)
(-.f64 (+.f64 (*.f64 -1 z) (*.f64 (log.f64 y) x)) y)
(-.f64 (+.f64 (*.f64 -1 z) (*.f64 (log.f64 y) x)) y)
(-.f64 (+.f64 (*.f64 -1 z) (*.f64 (log.f64 y) x)) y)
Outputs
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) (sqrt.f64 x)))
(neg.f64 (*.f64 (neg.f64 (log.f64 y)) (sqrt.f64 x)))
(*.f64 (neg.f64 (log.f64 y)) (neg.f64 (sqrt.f64 x)))
(*.f64 (sqrt.f64 x) (log.f64 y))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) (sqrt.f64 x)))
(neg.f64 (*.f64 (neg.f64 (log.f64 y)) (sqrt.f64 x)))
(*.f64 (neg.f64 (log.f64 y)) (neg.f64 (sqrt.f64 x)))
(*.f64 (sqrt.f64 x) (log.f64 y))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) (sqrt.f64 x)))
(neg.f64 (*.f64 (neg.f64 (log.f64 y)) (sqrt.f64 x)))
(*.f64 (neg.f64 (log.f64 y)) (neg.f64 (sqrt.f64 x)))
(*.f64 (sqrt.f64 x) (log.f64 y))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) (sqrt.f64 x)))
(neg.f64 (*.f64 (neg.f64 (log.f64 y)) (sqrt.f64 x)))
(*.f64 (neg.f64 (log.f64 y)) (neg.f64 (sqrt.f64 x)))
(*.f64 (sqrt.f64 x) (log.f64 y))
(*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) (sqrt.f64 x))
(neg.f64 (*.f64 (neg.f64 (log.f64 y)) (sqrt.f64 x)))
(*.f64 (neg.f64 (log.f64 y)) (neg.f64 (sqrt.f64 x)))
(*.f64 (sqrt.f64 x) (log.f64 y))
(*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) (sqrt.f64 x))
(neg.f64 (*.f64 (neg.f64 (log.f64 y)) (sqrt.f64 x)))
(*.f64 (neg.f64 (log.f64 y)) (neg.f64 (sqrt.f64 x)))
(*.f64 (sqrt.f64 x) (log.f64 y))
(*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) (sqrt.f64 x))
(neg.f64 (*.f64 (neg.f64 (log.f64 y)) (sqrt.f64 x)))
(*.f64 (neg.f64 (log.f64 y)) (neg.f64 (sqrt.f64 x)))
(*.f64 (sqrt.f64 x) (log.f64 y))
(*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) (sqrt.f64 x))
(neg.f64 (*.f64 (neg.f64 (log.f64 y)) (sqrt.f64 x)))
(*.f64 (neg.f64 (log.f64 y)) (neg.f64 (sqrt.f64 x)))
(*.f64 (sqrt.f64 x) (log.f64 y))
(*.f64 (log.f64 y) x)
(*.f64 x (log.f64 y))
(*.f64 (log.f64 y) x)
(*.f64 x (log.f64 y))
(*.f64 (log.f64 y) x)
(*.f64 x (log.f64 y))
(*.f64 (log.f64 y) x)
(*.f64 x (log.f64 y))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x))
(*.f64 x (log.f64 y))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x))
(*.f64 x (log.f64 y))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x))
(*.f64 x (log.f64 y))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x))
(*.f64 x (log.f64 y))
(*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x)
(*.f64 x (log.f64 y))
(*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x)
(*.f64 x (log.f64 y))
(*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x)
(*.f64 x (log.f64 y))
(*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x)
(*.f64 x (log.f64 y))
(*.f64 (log.f64 y) x)
(*.f64 x (log.f64 y))
(*.f64 (log.f64 y) x)
(*.f64 x (log.f64 y))
(*.f64 (log.f64 y) x)
(*.f64 x (log.f64 y))
(*.f64 (log.f64 y) x)
(*.f64 x (log.f64 y))
(*.f64 (log.f64 y) x)
(*.f64 x (log.f64 y))
(*.f64 (log.f64 y) x)
(*.f64 x (log.f64 y))
(*.f64 (log.f64 y) x)
(*.f64 x (log.f64 y))
(*.f64 (log.f64 y) x)
(*.f64 x (log.f64 y))
(*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (log.f64 y) x)))
(*.f64 x (log.f64 y))
(*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (log.f64 y) x)))
(*.f64 x (log.f64 y))
(*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (log.f64 y) x)))
(*.f64 x (log.f64 y))
(*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (log.f64 y) x)))
(*.f64 x (log.f64 y))
(*.f64 (log.f64 y) x)
(*.f64 x (log.f64 y))
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y))
(fma.f64 (log.f64 y) x (neg.f64 y))
(fma.f64 x (log.f64 y) (neg.f64 y))
(-.f64 (*.f64 x (log.f64 y)) y)
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y))
(fma.f64 (log.f64 y) x (neg.f64 y))
(fma.f64 x (log.f64 y) (neg.f64 y))
(-.f64 (*.f64 x (log.f64 y)) y)
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y))
(fma.f64 (log.f64 y) x (neg.f64 y))
(fma.f64 x (log.f64 y) (neg.f64 y))
(-.f64 (*.f64 x (log.f64 y)) y)
(*.f64 -1 y)
(neg.f64 y)
(+.f64 (*.f64 -1 y) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x)))
(fma.f64 (log.f64 y) x (neg.f64 y))
(fma.f64 x (log.f64 y) (neg.f64 y))
(-.f64 (*.f64 x (log.f64 y)) y)
(+.f64 (*.f64 -1 y) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x)))
(fma.f64 (log.f64 y) x (neg.f64 y))
(fma.f64 x (log.f64 y) (neg.f64 y))
(-.f64 (*.f64 x (log.f64 y)) y)
(+.f64 (*.f64 -1 y) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x)))
(fma.f64 (log.f64 y) x (neg.f64 y))
(fma.f64 x (log.f64 y) (neg.f64 y))
(-.f64 (*.f64 x (log.f64 y)) y)
(*.f64 -1 y)
(neg.f64 y)
(+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x) (*.f64 -1 y))
(fma.f64 (log.f64 y) x (neg.f64 y))
(fma.f64 x (log.f64 y) (neg.f64 y))
(-.f64 (*.f64 x (log.f64 y)) y)
(+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x) (*.f64 -1 y))
(fma.f64 (log.f64 y) x (neg.f64 y))
(fma.f64 x (log.f64 y) (neg.f64 y))
(-.f64 (*.f64 x (log.f64 y)) y)
(+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x) (*.f64 -1 y))
(fma.f64 (log.f64 y) x (neg.f64 y))
(fma.f64 x (log.f64 y) (neg.f64 y))
(-.f64 (*.f64 x (log.f64 y)) y)
(*.f64 -1 y)
(neg.f64 y)
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y))
(fma.f64 (log.f64 y) x (neg.f64 y))
(fma.f64 x (log.f64 y) (neg.f64 y))
(-.f64 (*.f64 x (log.f64 y)) y)
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y))
(fma.f64 (log.f64 y) x (neg.f64 y))
(fma.f64 x (log.f64 y) (neg.f64 y))
(-.f64 (*.f64 x (log.f64 y)) y)
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y))
(fma.f64 (log.f64 y) x (neg.f64 y))
(fma.f64 x (log.f64 y) (neg.f64 y))
(-.f64 (*.f64 x (log.f64 y)) y)
(*.f64 (log.f64 y) x)
(*.f64 x (log.f64 y))
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y))
(fma.f64 (log.f64 y) x (neg.f64 y))
(fma.f64 x (log.f64 y) (neg.f64 y))
(-.f64 (*.f64 x (log.f64 y)) y)
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y))
(fma.f64 (log.f64 y) x (neg.f64 y))
(fma.f64 x (log.f64 y) (neg.f64 y))
(-.f64 (*.f64 x (log.f64 y)) y)
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y))
(fma.f64 (log.f64 y) x (neg.f64 y))
(fma.f64 x (log.f64 y) (neg.f64 y))
(-.f64 (*.f64 x (log.f64 y)) y)
(*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (log.f64 y) x)))
(*.f64 x (log.f64 y))
(+.f64 (*.f64 -1 y) (*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (log.f64 y) x))))
(fma.f64 (log.f64 y) x (neg.f64 y))
(fma.f64 x (log.f64 y) (neg.f64 y))
(-.f64 (*.f64 x (log.f64 y)) y)
(+.f64 (*.f64 -1 y) (*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (log.f64 y) x))))
(fma.f64 (log.f64 y) x (neg.f64 y))
(fma.f64 x (log.f64 y) (neg.f64 y))
(-.f64 (*.f64 x (log.f64 y)) y)
(+.f64 (*.f64 -1 y) (*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (log.f64 y) x))))
(fma.f64 (log.f64 y) x (neg.f64 y))
(fma.f64 x (log.f64 y) (neg.f64 y))
(-.f64 (*.f64 x (log.f64 y)) y)
(-.f64 (*.f64 (log.f64 y) x) z)
(-.f64 (*.f64 x (log.f64 y)) z)
(fma.f64 x (log.f64 y) (neg.f64 z))
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y)) z)
(-.f64 (fma.f64 (log.f64 y) x (neg.f64 y)) z)
(-.f64 (*.f64 x (log.f64 y)) (+.f64 y z))
(-.f64 (fma.f64 x (log.f64 y) (neg.f64 z)) y)
(fma.f64 x (log.f64 y) (-.f64 (neg.f64 y) z))
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y)) z)
(-.f64 (fma.f64 (log.f64 y) x (neg.f64 y)) z)
(-.f64 (*.f64 x (log.f64 y)) (+.f64 y z))
(-.f64 (fma.f64 x (log.f64 y) (neg.f64 z)) y)
(fma.f64 x (log.f64 y) (-.f64 (neg.f64 y) z))
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y)) z)
(-.f64 (fma.f64 (log.f64 y) x (neg.f64 y)) z)
(-.f64 (*.f64 x (log.f64 y)) (+.f64 y z))
(-.f64 (fma.f64 x (log.f64 y) (neg.f64 z)) y)
(fma.f64 x (log.f64 y) (-.f64 (neg.f64 y) z))
(*.f64 -1 y)
(neg.f64 y)
(-.f64 (+.f64 (*.f64 -1 y) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x))) z)
(-.f64 (fma.f64 (log.f64 y) x (neg.f64 y)) z)
(-.f64 (*.f64 x (log.f64 y)) (+.f64 y z))
(-.f64 (fma.f64 x (log.f64 y) (neg.f64 z)) y)
(fma.f64 x (log.f64 y) (-.f64 (neg.f64 y) z))
(-.f64 (+.f64 (*.f64 -1 y) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x))) z)
(-.f64 (fma.f64 (log.f64 y) x (neg.f64 y)) z)
(-.f64 (*.f64 x (log.f64 y)) (+.f64 y z))
(-.f64 (fma.f64 x (log.f64 y) (neg.f64 z)) y)
(fma.f64 x (log.f64 y) (-.f64 (neg.f64 y) z))
(-.f64 (+.f64 (*.f64 -1 y) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x))) z)
(-.f64 (fma.f64 (log.f64 y) x (neg.f64 y)) z)
(-.f64 (*.f64 x (log.f64 y)) (+.f64 y z))
(-.f64 (fma.f64 x (log.f64 y) (neg.f64 z)) y)
(fma.f64 x (log.f64 y) (-.f64 (neg.f64 y) z))
(*.f64 -1 y)
(neg.f64 y)
(-.f64 (+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x) (*.f64 -1 y)) z)
(-.f64 (fma.f64 (log.f64 y) x (neg.f64 y)) z)
(-.f64 (*.f64 x (log.f64 y)) (+.f64 y z))
(-.f64 (fma.f64 x (log.f64 y) (neg.f64 z)) y)
(fma.f64 x (log.f64 y) (-.f64 (neg.f64 y) z))
(-.f64 (+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x) (*.f64 -1 y)) z)
(-.f64 (fma.f64 (log.f64 y) x (neg.f64 y)) z)
(-.f64 (*.f64 x (log.f64 y)) (+.f64 y z))
(-.f64 (fma.f64 x (log.f64 y) (neg.f64 z)) y)
(fma.f64 x (log.f64 y) (-.f64 (neg.f64 y) z))
(-.f64 (+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x) (*.f64 -1 y)) z)
(-.f64 (fma.f64 (log.f64 y) x (neg.f64 y)) z)
(-.f64 (*.f64 x (log.f64 y)) (+.f64 y z))
(-.f64 (fma.f64 x (log.f64 y) (neg.f64 z)) y)
(fma.f64 x (log.f64 y) (-.f64 (neg.f64 y) z))
(*.f64 -1 (+.f64 y z))
(neg.f64 (+.f64 y z))
(-.f64 (neg.f64 y) z)
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 (+.f64 y z)))
(-.f64 (fma.f64 (log.f64 y) x (neg.f64 y)) z)
(-.f64 (*.f64 x (log.f64 y)) (+.f64 y z))
(-.f64 (fma.f64 x (log.f64 y) (neg.f64 z)) y)
(fma.f64 x (log.f64 y) (-.f64 (neg.f64 y) z))
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 (+.f64 y z)))
(-.f64 (fma.f64 (log.f64 y) x (neg.f64 y)) z)
(-.f64 (*.f64 x (log.f64 y)) (+.f64 y z))
(-.f64 (fma.f64 x (log.f64 y) (neg.f64 z)) y)
(fma.f64 x (log.f64 y) (-.f64 (neg.f64 y) z))
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 (+.f64 y z)))
(-.f64 (fma.f64 (log.f64 y) x (neg.f64 y)) z)
(-.f64 (*.f64 x (log.f64 y)) (+.f64 y z))
(-.f64 (fma.f64 x (log.f64 y) (neg.f64 z)) y)
(fma.f64 x (log.f64 y) (-.f64 (neg.f64 y) z))
(*.f64 (log.f64 y) x)
(*.f64 x (log.f64 y))
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 (+.f64 y z)))
(-.f64 (fma.f64 (log.f64 y) x (neg.f64 y)) z)
(-.f64 (*.f64 x (log.f64 y)) (+.f64 y z))
(-.f64 (fma.f64 x (log.f64 y) (neg.f64 z)) y)
(fma.f64 x (log.f64 y) (-.f64 (neg.f64 y) z))
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 (+.f64 y z)))
(-.f64 (fma.f64 (log.f64 y) x (neg.f64 y)) z)
(-.f64 (*.f64 x (log.f64 y)) (+.f64 y z))
(-.f64 (fma.f64 x (log.f64 y) (neg.f64 z)) y)
(fma.f64 x (log.f64 y) (-.f64 (neg.f64 y) z))
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 (+.f64 y z)))
(-.f64 (fma.f64 (log.f64 y) x (neg.f64 y)) z)
(-.f64 (*.f64 x (log.f64 y)) (+.f64 y z))
(-.f64 (fma.f64 x (log.f64 y) (neg.f64 z)) y)
(fma.f64 x (log.f64 y) (-.f64 (neg.f64 y) z))
(*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (log.f64 y) x)))
(*.f64 x (log.f64 y))
(+.f64 (*.f64 -1 (+.f64 y z)) (*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (log.f64 y) x))))
(-.f64 (fma.f64 (log.f64 y) x (neg.f64 y)) z)
(-.f64 (*.f64 x (log.f64 y)) (+.f64 y z))
(-.f64 (fma.f64 x (log.f64 y) (neg.f64 z)) y)
(fma.f64 x (log.f64 y) (-.f64 (neg.f64 y) z))
(+.f64 (*.f64 -1 (+.f64 y z)) (*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (log.f64 y) x))))
(-.f64 (fma.f64 (log.f64 y) x (neg.f64 y)) z)
(-.f64 (*.f64 x (log.f64 y)) (+.f64 y z))
(-.f64 (fma.f64 x (log.f64 y) (neg.f64 z)) y)
(fma.f64 x (log.f64 y) (-.f64 (neg.f64 y) z))
(+.f64 (*.f64 -1 (+.f64 y z)) (*.f64 -1 (*.f64 (pow.f64 (sqrt.f64 -1) 2) (*.f64 (log.f64 y) x))))
(-.f64 (fma.f64 (log.f64 y) x (neg.f64 y)) z)
(-.f64 (*.f64 x (log.f64 y)) (+.f64 y z))
(-.f64 (fma.f64 x (log.f64 y) (neg.f64 z)) y)
(fma.f64 x (log.f64 y) (-.f64 (neg.f64 y) z))
(-.f64 (*.f64 (log.f64 y) x) y)
(fma.f64 (log.f64 y) x (neg.f64 y))
(fma.f64 x (log.f64 y) (neg.f64 y))
(-.f64 (*.f64 x (log.f64 y)) y)
(-.f64 (+.f64 (*.f64 -1 z) (*.f64 (log.f64 y) x)) y)
(-.f64 (fma.f64 (log.f64 y) x (neg.f64 y)) z)
(-.f64 (*.f64 x (log.f64 y)) (+.f64 y z))
(-.f64 (fma.f64 x (log.f64 y) (neg.f64 z)) y)
(fma.f64 x (log.f64 y) (-.f64 (neg.f64 y) z))
(-.f64 (+.f64 (*.f64 -1 z) (*.f64 (log.f64 y) x)) y)
(-.f64 (fma.f64 (log.f64 y) x (neg.f64 y)) z)
(-.f64 (*.f64 x (log.f64 y)) (+.f64 y z))
(-.f64 (fma.f64 x (log.f64 y) (neg.f64 z)) y)
(fma.f64 x (log.f64 y) (-.f64 (neg.f64 y) z))
(-.f64 (+.f64 (*.f64 -1 z) (*.f64 (log.f64 y) x)) y)
(-.f64 (fma.f64 (log.f64 y) x (neg.f64 y)) z)
(-.f64 (*.f64 x (log.f64 y)) (+.f64 y z))
(-.f64 (fma.f64 x (log.f64 y) (neg.f64 z)) y)
(fma.f64 x (log.f64 y) (-.f64 (neg.f64 y) z))
(*.f64 -1 z)
(neg.f64 z)
(-.f64 (+.f64 (*.f64 -1 z) (*.f64 (log.f64 y) x)) y)
(-.f64 (fma.f64 (log.f64 y) x (neg.f64 y)) z)
(-.f64 (*.f64 x (log.f64 y)) (+.f64 y z))
(-.f64 (fma.f64 x (log.f64 y) (neg.f64 z)) y)
(fma.f64 x (log.f64 y) (-.f64 (neg.f64 y) z))
(-.f64 (+.f64 (*.f64 -1 z) (*.f64 (log.f64 y) x)) y)
(-.f64 (fma.f64 (log.f64 y) x (neg.f64 y)) z)
(-.f64 (*.f64 x (log.f64 y)) (+.f64 y z))
(-.f64 (fma.f64 x (log.f64 y) (neg.f64 z)) y)
(fma.f64 x (log.f64 y) (-.f64 (neg.f64 y) z))
(-.f64 (+.f64 (*.f64 -1 z) (*.f64 (log.f64 y) x)) y)
(-.f64 (fma.f64 (log.f64 y) x (neg.f64 y)) z)
(-.f64 (*.f64 x (log.f64 y)) (+.f64 y z))
(-.f64 (fma.f64 x (log.f64 y) (neg.f64 z)) y)
(fma.f64 x (log.f64 y) (-.f64 (neg.f64 y) z))
(*.f64 -1 z)
(neg.f64 z)
(-.f64 (+.f64 (*.f64 -1 z) (*.f64 (log.f64 y) x)) y)
(-.f64 (fma.f64 (log.f64 y) x (neg.f64 y)) z)
(-.f64 (*.f64 x (log.f64 y)) (+.f64 y z))
(-.f64 (fma.f64 x (log.f64 y) (neg.f64 z)) y)
(fma.f64 x (log.f64 y) (-.f64 (neg.f64 y) z))
(-.f64 (+.f64 (*.f64 -1 z) (*.f64 (log.f64 y) x)) y)
(-.f64 (fma.f64 (log.f64 y) x (neg.f64 y)) z)
(-.f64 (*.f64 x (log.f64 y)) (+.f64 y z))
(-.f64 (fma.f64 x (log.f64 y) (neg.f64 z)) y)
(fma.f64 x (log.f64 y) (-.f64 (neg.f64 y) z))
(-.f64 (+.f64 (*.f64 -1 z) (*.f64 (log.f64 y) x)) y)
(-.f64 (fma.f64 (log.f64 y) x (neg.f64 y)) z)
(-.f64 (*.f64 x (log.f64 y)) (+.f64 y z))
(-.f64 (fma.f64 x (log.f64 y) (neg.f64 z)) y)
(fma.f64 x (log.f64 y) (-.f64 (neg.f64 y) z))

eval286.0ms (2.4%)

Compiler

Compiled 13320 to 4187 computations (68.6% saved)

prune215.0ms (1.8%)

Pruning

20 alts after pruning (16 fresh and 4 done)

PrunedKeptTotal
New7269735
Fresh6713
Picked011
Done235
Total73420754
Error
0b
Counts
754 → 20
Alt Table
Click to see full alt table
StatusErrorProgram
48.9b
(neg.f64 z)
52.5b
(log.f64 (*.f64 (pow.f64 y x) (/.f64 t (exp.f64 z))))
21.1b
(-.f64 (+.f64 (pow.f64 (cbrt.f64 (*.f64 (log.f64 y) x)) 3) (log.f64 t)) z)
31.7b
(-.f64 (*.f64 (log.f64 y) x) z)
29.9b
(+.f64 (-.f64 (-.f64 (*.f64 (*.f64 (log.f64 y) (sqrt.f64 x)) (sqrt.f64 x)) y) z) (log.f64 t))
25.0b
(-.f64 (*.f64 (log.f64 y) x) y)
38.0b
(-.f64 (log.f64 t) z)
29.9b
(+.f64 (fma.f64 (pow.f64 x 1/4) (*.f64 (pow.f64 x 1/4) (*.f64 (log.f64 y) (sqrt.f64 x))) (-.f64 (neg.f64 y) z)) (log.f64 t))
44.3b
(-.f64 (log.f64 (*.f64 t (pow.f64 y x))) z)
41.4b
(-.f64 (+.f64 (pow.f64 (sqrt.f64 (*.f64 (log.f64 y) x)) 2) (log.f64 t)) z)
18.3b
(-.f64 (-.f64 (log.f64 t) y) z)
30.4b
(fma.f64 (exp.f64 (*.f64 (log.f64 (log.f64 y)) 2/3)) (*.f64 (cbrt.f64 (log.f64 y)) x) (-.f64 (neg.f64 y) (-.f64 z (log.f64 t))))
35.5b
(fma.f64 (*.f64 (log.f64 y) (cbrt.f64 (*.f64 x x))) (cbrt.f64 x) (-.f64 (log.f64 t) z))
0.3b
(+.f64 (-.f64 (-.f64 (*.f64 (pow.f64 (cbrt.f64 (log.f64 y)) 2) (*.f64 (cbrt.f64 (log.f64 y)) x)) y) z) (log.f64 t))
20.8b
(fma.f64 (log.f64 y) x (-.f64 (log.f64 t) z))
43.0b
(neg.f64 y)
31.9b
(-.f64 (log.f64 t) y)
45.3b
(*.f64 (log.f64 y) x)
51.4b
(log.f64 t)
30.3b
(+.f64 (-.f64 (-.f64 (*.f64 (*.f64 x (sqrt.f64 (log.f64 y))) (sqrt.f64 (log.f64 y))) y) z) (log.f64 t))
Compiler

Compiled 489 to 341 computations (30.3% saved)

localize56.0ms (0.5%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(*.f64 (cbrt.f64 (log.f64 y)) x)
0.4b
(*.f64 (pow.f64 (cbrt.f64 (log.f64 y)) 2) (*.f64 (cbrt.f64 (log.f64 y)) x))
0.5b
(cbrt.f64 (log.f64 y))
0.5b
(pow.f64 (cbrt.f64 (log.f64 y)) 2)
Compiler

Compiled 83 to 29 computations (65.1% saved)

series5.0ms (0%)

Counts
1 → 24
Calls

6 calls:

TimeVariablePointExpression
2.0ms
y
@inf
(*.f64 (pow.f64 (cbrt.f64 (log.f64 y)) 2) (*.f64 (cbrt.f64 (log.f64 y)) x))
1.0ms
y
@0
(*.f64 (pow.f64 (cbrt.f64 (log.f64 y)) 2) (*.f64 (cbrt.f64 (log.f64 y)) x))
1.0ms
y
@-inf
(*.f64 (pow.f64 (cbrt.f64 (log.f64 y)) 2) (*.f64 (cbrt.f64 (log.f64 y)) x))
0.0ms
x
@0
(*.f64 (pow.f64 (cbrt.f64 (log.f64 y)) 2) (*.f64 (cbrt.f64 (log.f64 y)) x))
0.0ms
x
@inf
(*.f64 (pow.f64 (cbrt.f64 (log.f64 y)) 2) (*.f64 (cbrt.f64 (log.f64 y)) x))

rewrite51.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
742×pow1_binary64
683×add-log-exp_binary64
683×log1p-expm1-u_binary64
683×expm1-log1p-u_binary64
667×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
096
11796
219706
Stop Event
node limit
Counts
1 → 14
Calls
Call 1
Inputs
(*.f64 (pow.f64 (cbrt.f64 (log.f64 y)) 2) (*.f64 (cbrt.f64 (log.f64 y)) x))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 (log.f64 y) x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (log.f64 y) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (log.f64 y) x) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (log.f64 y) x)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (log.f64 y) x)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (log.f64 y) x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (log.f64 y) x) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (log.f64 y) 3) (pow.f64 x 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (log.f64 y) 2) (pow.f64 (*.f64 (cbrt.f64 (log.f64 y)) x) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (*.f64 (cbrt.f64 (log.f64 y)) x) 3) (pow.f64 (log.f64 y) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (log.f64 y) x)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (-.f64 (pow.f64 y x) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (log.f64 y) x)))))))

simplify193.0ms (1.6%)

Algorithm
egg-herbie
Rules
3199×fma-neg_binary64
757×fma-def_binary64
390×associate--r-_binary64
351×unsub-neg_binary64
304×sub-neg_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
017144
134144
261144
3137144
4277144
5740144
61995144
73037144
83664144
93710144
103728144
113730144
126149144
136760144
147026144
157113144
167127144
177131144
187266144
197274144
Stop Event
node limit
Counts
38 → 17
Calls
Call 1
Inputs
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x))
(*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x)
(*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x)
(*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x)
(*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
Outputs
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x))
(*.f64 (log.f64 y) x)
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x))
(*.f64 (log.f64 y) x)
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x))
(*.f64 (log.f64 y) x)
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x))
(*.f64 (log.f64 y) x)
(*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x)
(*.f64 (log.f64 y) x)
(*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x)
(*.f64 (log.f64 y) x)
(*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x)
(*.f64 (log.f64 y) x)
(*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)

localize3.0ms (0%)

Compiler

Compiled 7 to 5 computations (28.6% saved)

localize8.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(-.f64 (*.f64 (log.f64 y) x) y)
0.2b
(*.f64 (log.f64 y) x)
Compiler

Compiled 18 to 7 computations (61.1% saved)

series2.0ms (0%)

Counts
1 → 24
Calls

6 calls:

TimeVariablePointExpression
0.0ms
y
@0
(-.f64 (*.f64 (log.f64 y) x) y)
0.0ms
y
@inf
(-.f64 (*.f64 (log.f64 y) x) y)
0.0ms
x
@inf
(-.f64 (*.f64 (log.f64 y) x) y)
0.0ms
y
@-inf
(-.f64 (*.f64 (log.f64 y) x) y)
0.0ms
x
@-inf
(-.f64 (*.f64 (log.f64 y) x) y)

rewrite53.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
698×pow1_binary64
647×add-log-exp_binary64
647×log1p-expm1-u_binary64
647×expm1-log1p-u_binary64
633×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify211.0ms (1.8%)

Algorithm
egg-herbie
Rules
1135×fma-neg_binary64
559×fma-def_binary64
408×associate--r-_binary64
387×associate--r+_binary64
370×associate--l+_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
021189
148189
295189
3221189
4495189
51117189
63182189
73870189
84005189
94022189
104032189
114034189
126896189
137591189
147769189
157827189
167839189
177843189
187918189
Stop Event
node limit
Counts
61 → 44
Calls
Call 1
Inputs
(*.f64 (log.f64 y) x)
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y))
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y))
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y))
(*.f64 -1 y)
(+.f64 (*.f64 -1 y) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x)))
(+.f64 (*.f64 -1 y) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x)))
(+.f64 (*.f64 -1 y) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x)))
(*.f64 -1 y)
(+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x) (*.f64 -1 y))
(+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x) (*.f64 -1 y))
(+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x) (*.f64 -1 y))
(*.f64 -1 y)
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y))
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y))
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y))
(*.f64 (log.f64 y) x)
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y))
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y))
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y))
(*.f64 (log.f64 y) x)
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y))
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y))
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y))
Outputs
(*.f64 (log.f64 y) x)
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y))
(fma.f64 (log.f64 y) x (neg.f64 y))
(-.f64 (*.f64 (log.f64 y) x) y)
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y))
(fma.f64 (log.f64 y) x (neg.f64 y))
(-.f64 (*.f64 (log.f64 y) x) y)
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y))
(fma.f64 (log.f64 y) x (neg.f64 y))
(-.f64 (*.f64 (log.f64 y) x) y)
(*.f64 -1 y)
(neg.f64 y)
(+.f64 (*.f64 -1 y) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x)))
(fma.f64 (log.f64 y) x (neg.f64 y))
(-.f64 (*.f64 (log.f64 y) x) y)
(+.f64 (*.f64 -1 y) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x)))
(fma.f64 (log.f64 y) x (neg.f64 y))
(-.f64 (*.f64 (log.f64 y) x) y)
(+.f64 (*.f64 -1 y) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x)))
(fma.f64 (log.f64 y) x (neg.f64 y))
(-.f64 (*.f64 (log.f64 y) x) y)
(*.f64 -1 y)
(neg.f64 y)
(+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x) (*.f64 -1 y))
(fma.f64 (log.f64 y) x (neg.f64 y))
(-.f64 (*.f64 (log.f64 y) x) y)
(+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x) (*.f64 -1 y))
(fma.f64 (log.f64 y) x (neg.f64 y))
(-.f64 (*.f64 (log.f64 y) x) y)
(+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x) (*.f64 -1 y))
(fma.f64 (log.f64 y) x (neg.f64 y))
(-.f64 (*.f64 (log.f64 y) x) y)
(*.f64 -1 y)
(neg.f64 y)
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y))
(fma.f64 (log.f64 y) x (neg.f64 y))
(-.f64 (*.f64 (log.f64 y) x) y)
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y))
(fma.f64 (log.f64 y) x (neg.f64 y))
(-.f64 (*.f64 (log.f64 y) x) y)
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y))
(fma.f64 (log.f64 y) x (neg.f64 y))
(-.f64 (*.f64 (log.f64 y) x) y)
(*.f64 (log.f64 y) x)
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y))
(fma.f64 (log.f64 y) x (neg.f64 y))
(-.f64 (*.f64 (log.f64 y) x) y)
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y))
(fma.f64 (log.f64 y) x (neg.f64 y))
(-.f64 (*.f64 (log.f64 y) x) y)
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y))
(fma.f64 (log.f64 y) x (neg.f64 y))
(-.f64 (*.f64 (log.f64 y) x) y)
(*.f64 (log.f64 y) x)
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y))
(fma.f64 (log.f64 y) x (neg.f64 y))
(-.f64 (*.f64 (log.f64 y) x) y)
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y))
(fma.f64 (log.f64 y) x (neg.f64 y))
(-.f64 (*.f64 (log.f64 y) x) y)
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y))
(fma.f64 (log.f64 y) x (neg.f64 y))
(-.f64 (*.f64 (log.f64 y) x) y)

localize14.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(/.f64 t (exp.f64 z))
0.2b
(*.f64 (pow.f64 y x) (/.f64 t (exp.f64 z)))
Compiler

Compiled 34 to 9 computations (73.5% saved)

series66.0ms (0.6%)

Counts
2 → 52
Calls

18 calls:

TimeVariablePointExpression
48.0ms
z
@inf
(*.f64 (pow.f64 y x) (/.f64 t (exp.f64 z)))
4.0ms
t
@0
(*.f64 (pow.f64 y x) (/.f64 t (exp.f64 z)))
1.0ms
y
@0
(*.f64 (pow.f64 y x) (/.f64 t (exp.f64 z)))
1.0ms
y
@inf
(*.f64 (pow.f64 y x) (/.f64 t (exp.f64 z)))
1.0ms
y
@-inf
(*.f64 (pow.f64 y x) (/.f64 t (exp.f64 z)))

rewrite195.0ms (1.6%)

Algorithm
batch-egg-rewrite
Rules
965×pow1_binary64
888×add-log-exp_binary64
888×log1p-expm1-u_binary64
888×expm1-log1p-u_binary64
96×add-sqr-sqrt_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify62.0ms (0.5%)

Algorithm
egg-herbie
Rules
732×fma-def_binary64
518×associate-*l*_binary64
510×associate-*r*_binary64
389×unsub-neg_binary64
264×distribute-neg-in_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
096840
1308812
21051764
36184763
Stop Event
node limit
Counts
107 → 81
Calls
Call 1
Inputs
(/.f64 (*.f64 t (exp.f64 (*.f64 (log.f64 y) x))) (exp.f64 z))
(/.f64 (*.f64 t (exp.f64 (*.f64 (log.f64 y) x))) (exp.f64 z))
(/.f64 (*.f64 t (exp.f64 (*.f64 (log.f64 y) x))) (exp.f64 z))
(/.f64 (*.f64 t (exp.f64 (*.f64 (log.f64 y) x))) (exp.f64 z))
(/.f64 (*.f64 (exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x))) t) (exp.f64 z))
(/.f64 (*.f64 (exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x))) t) (exp.f64 z))
(/.f64 (*.f64 (exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x))) t) (exp.f64 z))
(/.f64 (*.f64 (exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x))) t) (exp.f64 z))
(/.f64 (*.f64 t (exp.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x))) (exp.f64 z))
(/.f64 (*.f64 t (exp.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x))) (exp.f64 z))
(/.f64 (*.f64 t (exp.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x))) (exp.f64 z))
(/.f64 (*.f64 t (exp.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x))) (exp.f64 z))
(/.f64 t (exp.f64 z))
(+.f64 (/.f64 t (exp.f64 z)) (/.f64 (*.f64 t (*.f64 (log.f64 y) x)) (exp.f64 z)))
(+.f64 (/.f64 t (exp.f64 z)) (+.f64 (*.f64 1/2 (/.f64 (*.f64 t (*.f64 (pow.f64 (log.f64 y) 2) (pow.f64 x 2))) (exp.f64 z))) (/.f64 (*.f64 t (*.f64 (log.f64 y) x)) (exp.f64 z))))
(+.f64 (/.f64 t (exp.f64 z)) (+.f64 (*.f64 1/2 (/.f64 (*.f64 t (*.f64 (pow.f64 (log.f64 y) 2) (pow.f64 x 2))) (exp.f64 z))) (+.f64 (/.f64 (*.f64 t (*.f64 (log.f64 y) x)) (exp.f64 z)) (*.f64 1/6 (/.f64 (*.f64 t (*.f64 (pow.f64 (log.f64 y) 3) (pow.f64 x 3))) (exp.f64 z))))))
(/.f64 (*.f64 t (exp.f64 (*.f64 (log.f64 y) x))) (exp.f64 z))
(/.f64 (*.f64 t (exp.f64 (*.f64 (log.f64 y) x))) (exp.f64 z))
(/.f64 (*.f64 t (exp.f64 (*.f64 (log.f64 y) x))) (exp.f64 z))
(/.f64 (*.f64 t (exp.f64 (*.f64 (log.f64 y) x))) (exp.f64 z))
(/.f64 (*.f64 t (exp.f64 (*.f64 (log.f64 y) x))) (exp.f64 z))
(/.f64 (*.f64 t (exp.f64 (*.f64 (log.f64 y) x))) (exp.f64 z))
(/.f64 (*.f64 t (exp.f64 (*.f64 (log.f64 y) x))) (exp.f64 z))
(/.f64 (*.f64 t (exp.f64 (*.f64 (log.f64 y) x))) (exp.f64 z))
(/.f64 (*.f64 t (exp.f64 (*.f64 (log.f64 y) x))) (exp.f64 z))
(/.f64 (*.f64 t (exp.f64 (*.f64 (log.f64 y) x))) (exp.f64 z))
(/.f64 (*.f64 t (exp.f64 (*.f64 (log.f64 y) x))) (exp.f64 z))
(/.f64 (*.f64 t (exp.f64 (*.f64 (log.f64 y) x))) (exp.f64 z))
(/.f64 (*.f64 t (exp.f64 (*.f64 (log.f64 y) x))) (exp.f64 z))
(/.f64 (*.f64 t (exp.f64 (*.f64 (log.f64 y) x))) (exp.f64 z))
(/.f64 (*.f64 t (exp.f64 (*.f64 (log.f64 y) x))) (exp.f64 z))
(/.f64 (*.f64 t (exp.f64 (*.f64 (log.f64 y) x))) (exp.f64 z))
(/.f64 (*.f64 t (exp.f64 (*.f64 (log.f64 y) x))) (exp.f64 z))
(/.f64 (*.f64 t (exp.f64 (*.f64 (log.f64 y) x))) (exp.f64 z))
(/.f64 (*.f64 t (exp.f64 (*.f64 (log.f64 y) x))) (exp.f64 z))
(/.f64 (*.f64 t (exp.f64 (*.f64 (log.f64 y) x))) (exp.f64 z))
(*.f64 t (exp.f64 (*.f64 (log.f64 y) x)))
(+.f64 (*.f64 -1 (*.f64 t (*.f64 (exp.f64 (*.f64 (log.f64 y) x)) z))) (*.f64 t (exp.f64 (*.f64 (log.f64 y) x))))
(+.f64 (*.f64 -1 (*.f64 t (*.f64 (exp.f64 (*.f64 (log.f64 y) x)) z))) (+.f64 (*.f64 t (exp.f64 (*.f64 (log.f64 y) x))) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 (*.f64 t (exp.f64 (*.f64 (log.f64 y) x)))) (*.f64 1/2 (*.f64 t (exp.f64 (*.f64 (log.f64 y) x))))) (pow.f64 z 2)))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 t (exp.f64 (*.f64 (log.f64 y) x)))) (+.f64 (*.f64 -1 (+.f64 (*.f64 -1 (*.f64 t (exp.f64 (*.f64 (log.f64 y) x)))) (*.f64 1/2 (*.f64 t (exp.f64 (*.f64 (log.f64 y) x)))))) (*.f64 1/6 (*.f64 t (exp.f64 (*.f64 (log.f64 y) x)))))) (pow.f64 z 3))) (+.f64 (*.f64 -1 (*.f64 t (*.f64 (exp.f64 (*.f64 (log.f64 y) x)) z))) (+.f64 (*.f64 t (exp.f64 (*.f64 (log.f64 y) x))) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 (*.f64 t (exp.f64 (*.f64 (log.f64 y) x)))) (*.f64 1/2 (*.f64 t (exp.f64 (*.f64 (log.f64 y) x))))) (pow.f64 z 2))))))
(/.f64 (*.f64 t (exp.f64 (*.f64 (log.f64 y) x))) (exp.f64 z))
(/.f64 (*.f64 t (exp.f64 (*.f64 (log.f64 y) x))) (exp.f64 z))
(/.f64 (*.f64 t (exp.f64 (*.f64 (log.f64 y) x))) (exp.f64 z))
(/.f64 (*.f64 t (exp.f64 (*.f64 (log.f64 y) x))) (exp.f64 z))
(/.f64 (*.f64 t (exp.f64 (*.f64 (log.f64 y) x))) (exp.f64 z))
(/.f64 (*.f64 t (exp.f64 (*.f64 (log.f64 y) x))) (exp.f64 z))
(/.f64 (*.f64 t (exp.f64 (*.f64 (log.f64 y) x))) (exp.f64 z))
(/.f64 (*.f64 t (exp.f64 (*.f64 (log.f64 y) x))) (exp.f64 z))
t
(+.f64 (*.f64 -1 (*.f64 t z)) t)
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 z 2) (+.f64 (*.f64 -1 t) (*.f64 1/2 t)))) t))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 z 2) (+.f64 (*.f64 -1 t) (*.f64 1/2 t)))) (+.f64 t (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 (+.f64 (*.f64 -1 t) (*.f64 1/2 t))) (+.f64 (*.f64 1/6 t) (*.f64 -1/2 t))) (pow.f64 z 3))))))
Outputs
(/.f64 (*.f64 t (exp.f64 (*.f64 (log.f64 y) x))) (exp.f64 z))
(/.f64 (*.f64 t (pow.f64 y x)) (exp.f64 z))
(*.f64 (/.f64 t (exp.f64 z)) (pow.f64 y x))
(*.f64 t (/.f64 (pow.f64 y x) (exp.f64 z)))
(/.f64 (*.f64 t (exp.f64 (*.f64 (log.f64 y) x))) (exp.f64 z))
(/.f64 (*.f64 t (pow.f64 y x)) (exp.f64 z))
(*.f64 (/.f64 t (exp.f64 z)) (pow.f64 y x))
(*.f64 t (/.f64 (pow.f64 y x) (exp.f64 z)))
(/.f64 (*.f64 t (exp.f64 (*.f64 (log.f64 y) x))) (exp.f64 z))
(/.f64 (*.f64 t (pow.f64 y x)) (exp.f64 z))
(*.f64 (/.f64 t (exp.f64 z)) (pow.f64 y x))
(*.f64 t (/.f64 (pow.f64 y x) (exp.f64 z)))
(/.f64 (*.f64 t (exp.f64 (*.f64 (log.f64 y) x))) (exp.f64 z))
(/.f64 (*.f64 t (pow.f64 y x)) (exp.f64 z))
(*.f64 (/.f64 t (exp.f64 z)) (pow.f64 y x))
(*.f64 t (/.f64 (pow.f64 y x) (exp.f64 z)))
(/.f64 (*.f64 (exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x))) t) (exp.f64 z))
(/.f64 (*.f64 t (pow.f64 y x)) (exp.f64 z))
(*.f64 (/.f64 t (exp.f64 z)) (pow.f64 y x))
(*.f64 t (/.f64 (pow.f64 y x) (exp.f64 z)))
(/.f64 (*.f64 (exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x))) t) (exp.f64 z))
(/.f64 (*.f64 t (pow.f64 y x)) (exp.f64 z))
(*.f64 (/.f64 t (exp.f64 z)) (pow.f64 y x))
(*.f64 t (/.f64 (pow.f64 y x) (exp.f64 z)))
(/.f64 (*.f64 (exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x))) t) (exp.f64 z))
(/.f64 (*.f64 t (pow.f64 y x)) (exp.f64 z))
(*.f64 (/.f64 t (exp.f64 z)) (pow.f64 y x))
(*.f64 t (/.f64 (pow.f64 y x) (exp.f64 z)))
(/.f64 (*.f64 (exp.f64 (*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x))) t) (exp.f64 z))
(/.f64 (*.f64 t (pow.f64 y x)) (exp.f64 z))
(*.f64 (/.f64 t (exp.f64 z)) (pow.f64 y x))
(*.f64 t (/.f64 (pow.f64 y x) (exp.f64 z)))
(/.f64 (*.f64 t (exp.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x))) (exp.f64 z))
(/.f64 (*.f64 t (pow.f64 y x)) (exp.f64 z))
(*.f64 (/.f64 t (exp.f64 z)) (pow.f64 y x))
(*.f64 t (/.f64 (pow.f64 y x) (exp.f64 z)))
(/.f64 (*.f64 t (exp.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x))) (exp.f64 z))
(/.f64 (*.f64 t (pow.f64 y x)) (exp.f64 z))
(*.f64 (/.f64 t (exp.f64 z)) (pow.f64 y x))
(*.f64 t (/.f64 (pow.f64 y x) (exp.f64 z)))
(/.f64 (*.f64 t (exp.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x))) (exp.f64 z))
(/.f64 (*.f64 t (pow.f64 y x)) (exp.f64 z))
(*.f64 (/.f64 t (exp.f64 z)) (pow.f64 y x))
(*.f64 t (/.f64 (pow.f64 y x) (exp.f64 z)))
(/.f64 (*.f64 t (exp.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x))) (exp.f64 z))
(/.f64 (*.f64 t (pow.f64 y x)) (exp.f64 z))
(*.f64 (/.f64 t (exp.f64 z)) (pow.f64 y x))
(*.f64 t (/.f64 (pow.f64 y x) (exp.f64 z)))
(/.f64 t (exp.f64 z))
(+.f64 (/.f64 t (exp.f64 z)) (/.f64 (*.f64 t (*.f64 (log.f64 y) x)) (exp.f64 z)))
(+.f64 (/.f64 t (exp.f64 z)) (/.f64 t (/.f64 (exp.f64 z) (*.f64 (log.f64 y) x))))
(+.f64 (/.f64 t (exp.f64 z)) (*.f64 (/.f64 t (exp.f64 z)) (*.f64 (log.f64 y) x)))
(fma.f64 (/.f64 t (exp.f64 z)) (*.f64 (log.f64 y) x) (/.f64 t (exp.f64 z)))
(+.f64 (/.f64 t (exp.f64 z)) (+.f64 (*.f64 1/2 (/.f64 (*.f64 t (*.f64 (pow.f64 (log.f64 y) 2) (pow.f64 x 2))) (exp.f64 z))) (/.f64 (*.f64 t (*.f64 (log.f64 y) x)) (exp.f64 z))))
(+.f64 (/.f64 t (exp.f64 z)) (fma.f64 1/2 (/.f64 t (/.f64 (exp.f64 z) (*.f64 (pow.f64 (log.f64 y) 2) (*.f64 x x)))) (/.f64 t (/.f64 (exp.f64 z) (*.f64 (log.f64 y) x)))))
(+.f64 (/.f64 t (exp.f64 z)) (fma.f64 1/2 (*.f64 (/.f64 t (exp.f64 z)) (*.f64 x (*.f64 x (pow.f64 (log.f64 y) 2)))) (*.f64 (/.f64 t (exp.f64 z)) (*.f64 (log.f64 y) x))))
(fma.f64 (/.f64 t (exp.f64 z)) (*.f64 (log.f64 y) x) (fma.f64 1/2 (/.f64 (*.f64 (pow.f64 (log.f64 y) 2) (*.f64 t x)) (/.f64 (exp.f64 z) x)) (/.f64 t (exp.f64 z))))
(fma.f64 (/.f64 t (exp.f64 z)) (*.f64 (log.f64 y) x) (fma.f64 1/2 (*.f64 (/.f64 t (exp.f64 z)) (*.f64 x (*.f64 x (pow.f64 (log.f64 y) 2)))) (/.f64 t (exp.f64 z))))
(+.f64 (/.f64 t (exp.f64 z)) (+.f64 (*.f64 1/2 (/.f64 (*.f64 t (*.f64 (pow.f64 (log.f64 y) 2) (pow.f64 x 2))) (exp.f64 z))) (+.f64 (/.f64 (*.f64 t (*.f64 (log.f64 y) x)) (exp.f64 z)) (*.f64 1/6 (/.f64 (*.f64 t (*.f64 (pow.f64 (log.f64 y) 3) (pow.f64 x 3))) (exp.f64 z))))))
(+.f64 (/.f64 t (exp.f64 z)) (+.f64 (fma.f64 1/2 (/.f64 t (/.f64 (exp.f64 z) (*.f64 (pow.f64 (log.f64 y) 2) (*.f64 x x)))) (/.f64 t (/.f64 (exp.f64 z) (*.f64 (log.f64 y) x)))) (/.f64 (*.f64 1/6 (*.f64 t (*.f64 (pow.f64 (log.f64 y) 3) (pow.f64 x 3)))) (exp.f64 z))))
(+.f64 (/.f64 t (exp.f64 z)) (fma.f64 1/2 (*.f64 (/.f64 t (exp.f64 z)) (*.f64 x (*.f64 x (pow.f64 (log.f64 y) 2)))) (fma.f64 1/6 (*.f64 (/.f64 t (exp.f64 z)) (*.f64 (pow.f64 (log.f64 y) 3) (pow.f64 x 3))) (*.f64 (/.f64 t (exp.f64 z)) (*.f64 (log.f64 y) x)))))
(+.f64 (/.f64 t (exp.f64 z)) (fma.f64 (/.f64 t (exp.f64 z)) (*.f64 (log.f64 y) x) (fma.f64 1/2 (/.f64 (*.f64 (pow.f64 (log.f64 y) 2) (*.f64 t x)) (/.f64 (exp.f64 z) x)) (*.f64 1/6 (*.f64 (*.f64 (/.f64 t (exp.f64 z)) (pow.f64 (log.f64 y) 3)) (pow.f64 x 3))))))
(+.f64 (/.f64 t (exp.f64 z)) (fma.f64 (/.f64 t (exp.f64 z)) (*.f64 (log.f64 y) x) (fma.f64 1/2 (*.f64 (/.f64 t (exp.f64 z)) (*.f64 x (*.f64 x (pow.f64 (log.f64 y) 2)))) (/.f64 (*.f64 (*.f64 (*.f64 t 1/6) (pow.f64 x 3)) (pow.f64 (log.f64 y) 3)) (exp.f64 z)))))
(/.f64 (*.f64 t (exp.f64 (*.f64 (log.f64 y) x))) (exp.f64 z))
(/.f64 (*.f64 t (pow.f64 y x)) (exp.f64 z))
(*.f64 (/.f64 t (exp.f64 z)) (pow.f64 y x))
(*.f64 t (/.f64 (pow.f64 y x) (exp.f64 z)))
(/.f64 (*.f64 t (exp.f64 (*.f64 (log.f64 y) x))) (exp.f64 z))
(/.f64 (*.f64 t (pow.f64 y x)) (exp.f64 z))
(*.f64 (/.f64 t (exp.f64 z)) (pow.f64 y x))
(*.f64 t (/.f64 (pow.f64 y x) (exp.f64 z)))
(/.f64 (*.f64 t (exp.f64 (*.f64 (log.f64 y) x))) (exp.f64 z))
(/.f64 (*.f64 t (pow.f64 y x)) (exp.f64 z))
(*.f64 (/.f64 t (exp.f64 z)) (pow.f64 y x))
(*.f64 t (/.f64 (pow.f64 y x) (exp.f64 z)))
(/.f64 (*.f64 t (exp.f64 (*.f64 (log.f64 y) x))) (exp.f64 z))
(/.f64 (*.f64 t (pow.f64 y x)) (exp.f64 z))
(*.f64 (/.f64 t (exp.f64 z)) (pow.f64 y x))
(*.f64 t (/.f64 (pow.f64 y x) (exp.f64 z)))
(/.f64 (*.f64 t (exp.f64 (*.f64 (log.f64 y) x))) (exp.f64 z))
(/.f64 (*.f64 t (pow.f64 y x)) (exp.f64 z))
(*.f64 (/.f64 t (exp.f64 z)) (pow.f64 y x))
(*.f64 t (/.f64 (pow.f64 y x) (exp.f64 z)))
(/.f64 (*.f64 t (exp.f64 (*.f64 (log.f64 y) x))) (exp.f64 z))
(/.f64 (*.f64 t (pow.f64 y x)) (exp.f64 z))
(*.f64 (/.f64 t (exp.f64 z)) (pow.f64 y x))
(*.f64 t (/.f64 (pow.f64 y x) (exp.f64 z)))
(/.f64 (*.f64 t (exp.f64 (*.f64 (log.f64 y) x))) (exp.f64 z))
(/.f64 (*.f64 t (pow.f64 y x)) (exp.f64 z))
(*.f64 (/.f64 t (exp.f64 z)) (pow.f64 y x))
(*.f64 t (/.f64 (pow.f64 y x) (exp.f64 z)))
(/.f64 (*.f64 t (exp.f64 (*.f64 (log.f64 y) x))) (exp.f64 z))
(/.f64 (*.f64 t (pow.f64 y x)) (exp.f64 z))
(*.f64 (/.f64 t (exp.f64 z)) (pow.f64 y x))
(*.f64 t (/.f64 (pow.f64 y x) (exp.f64 z)))
(/.f64 (*.f64 t (exp.f64 (*.f64 (log.f64 y) x))) (exp.f64 z))
(/.f64 (*.f64 t (pow.f64 y x)) (exp.f64 z))
(*.f64 (/.f64 t (exp.f64 z)) (pow.f64 y x))
(*.f64 t (/.f64 (pow.f64 y x) (exp.f64 z)))
(/.f64 (*.f64 t (exp.f64 (*.f64 (log.f64 y) x))) (exp.f64 z))
(/.f64 (*.f64 t (pow.f64 y x)) (exp.f64 z))
(*.f64 (/.f64 t (exp.f64 z)) (pow.f64 y x))
(*.f64 t (/.f64 (pow.f64 y x) (exp.f64 z)))
(/.f64 (*.f64 t (exp.f64 (*.f64 (log.f64 y) x))) (exp.f64 z))
(/.f64 (*.f64 t (pow.f64 y x)) (exp.f64 z))
(*.f64 (/.f64 t (exp.f64 z)) (pow.f64 y x))
(*.f64 t (/.f64 (pow.f64 y x) (exp.f64 z)))
(/.f64 (*.f64 t (exp.f64 (*.f64 (log.f64 y) x))) (exp.f64 z))
(/.f64 (*.f64 t (pow.f64 y x)) (exp.f64 z))
(*.f64 (/.f64 t (exp.f64 z)) (pow.f64 y x))
(*.f64 t (/.f64 (pow.f64 y x) (exp.f64 z)))
(/.f64 (*.f64 t (exp.f64 (*.f64 (log.f64 y) x))) (exp.f64 z))
(/.f64 (*.f64 t (pow.f64 y x)) (exp.f64 z))
(*.f64 (/.f64 t (exp.f64 z)) (pow.f64 y x))
(*.f64 t (/.f64 (pow.f64 y x) (exp.f64 z)))
(/.f64 (*.f64 t (exp.f64 (*.f64 (log.f64 y) x))) (exp.f64 z))
(/.f64 (*.f64 t (pow.f64 y x)) (exp.f64 z))
(*.f64 (/.f64 t (exp.f64 z)) (pow.f64 y x))
(*.f64 t (/.f64 (pow.f64 y x) (exp.f64 z)))
(/.f64 (*.f64 t (exp.f64 (*.f64 (log.f64 y) x))) (exp.f64 z))
(/.f64 (*.f64 t (pow.f64 y x)) (exp.f64 z))
(*.f64 (/.f64 t (exp.f64 z)) (pow.f64 y x))
(*.f64 t (/.f64 (pow.f64 y x) (exp.f64 z)))
(/.f64 (*.f64 t (exp.f64 (*.f64 (log.f64 y) x))) (exp.f64 z))
(/.f64 (*.f64 t (pow.f64 y x)) (exp.f64 z))
(*.f64 (/.f64 t (exp.f64 z)) (pow.f64 y x))
(*.f64 t (/.f64 (pow.f64 y x) (exp.f64 z)))
(/.f64 (*.f64 t (exp.f64 (*.f64 (log.f64 y) x))) (exp.f64 z))
(/.f64 (*.f64 t (pow.f64 y x)) (exp.f64 z))
(*.f64 (/.f64 t (exp.f64 z)) (pow.f64 y x))
(*.f64 t (/.f64 (pow.f64 y x) (exp.f64 z)))
(/.f64 (*.f64 t (exp.f64 (*.f64 (log.f64 y) x))) (exp.f64 z))
(/.f64 (*.f64 t (pow.f64 y x)) (exp.f64 z))
(*.f64 (/.f64 t (exp.f64 z)) (pow.f64 y x))
(*.f64 t (/.f64 (pow.f64 y x) (exp.f64 z)))
(/.f64 (*.f64 t (exp.f64 (*.f64 (log.f64 y) x))) (exp.f64 z))
(/.f64 (*.f64 t (pow.f64 y x)) (exp.f64 z))
(*.f64 (/.f64 t (exp.f64 z)) (pow.f64 y x))
(*.f64 t (/.f64 (pow.f64 y x) (exp.f64 z)))
(/.f64 (*.f64 t (exp.f64 (*.f64 (log.f64 y) x))) (exp.f64 z))
(/.f64 (*.f64 t (pow.f64 y x)) (exp.f64 z))
(*.f64 (/.f64 t (exp.f64 z)) (pow.f64 y x))
(*.f64 t (/.f64 (pow.f64 y x) (exp.f64 z)))
(*.f64 t (exp.f64 (*.f64 (log.f64 y) x)))
(*.f64 t (pow.f64 y x))
(+.f64 (*.f64 -1 (*.f64 t (*.f64 (exp.f64 (*.f64 (log.f64 y) x)) z))) (*.f64 t (exp.f64 (*.f64 (log.f64 y) x))))
(fma.f64 -1 (*.f64 t (*.f64 (pow.f64 y x) z)) (*.f64 t (pow.f64 y x)))
(-.f64 (*.f64 t (pow.f64 y x)) (*.f64 t (*.f64 (pow.f64 y x) z)))
(*.f64 (pow.f64 y x) (fma.f64 t (neg.f64 z) t))
(*.f64 (pow.f64 y x) (-.f64 t (*.f64 t z)))
(+.f64 (*.f64 -1 (*.f64 t (*.f64 (exp.f64 (*.f64 (log.f64 y) x)) z))) (+.f64 (*.f64 t (exp.f64 (*.f64 (log.f64 y) x))) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 (*.f64 t (exp.f64 (*.f64 (log.f64 y) x)))) (*.f64 1/2 (*.f64 t (exp.f64 (*.f64 (log.f64 y) x))))) (pow.f64 z 2)))))
(fma.f64 -1 (*.f64 t (*.f64 (pow.f64 y x) z)) (fma.f64 t (pow.f64 y x) (*.f64 (neg.f64 (*.f64 (*.f64 t (pow.f64 y x)) -1/2)) (*.f64 z z))))
(-.f64 (fma.f64 t (pow.f64 y x) (*.f64 (*.f64 z z) (*.f64 t (*.f64 (pow.f64 y x) 1/2)))) (*.f64 t (*.f64 (pow.f64 y x) z)))
(-.f64 (*.f64 (pow.f64 y x) (fma.f64 (*.f64 z z) (*.f64 t 1/2) t)) (*.f64 t (*.f64 (pow.f64 y x) z)))
(fma.f64 (*.f64 z z) (*.f64 (pow.f64 y x) (*.f64 t 1/2)) (*.f64 (pow.f64 y x) (-.f64 t (*.f64 t z))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 t (exp.f64 (*.f64 (log.f64 y) x)))) (+.f64 (*.f64 -1 (+.f64 (*.f64 -1 (*.f64 t (exp.f64 (*.f64 (log.f64 y) x)))) (*.f64 1/2 (*.f64 t (exp.f64 (*.f64 (log.f64 y) x)))))) (*.f64 1/6 (*.f64 t (exp.f64 (*.f64 (log.f64 y) x)))))) (pow.f64 z 3))) (+.f64 (*.f64 -1 (*.f64 t (*.f64 (exp.f64 (*.f64 (log.f64 y) x)) z))) (+.f64 (*.f64 t (exp.f64 (*.f64 (log.f64 y) x))) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 (*.f64 t (exp.f64 (*.f64 (log.f64 y) x)))) (*.f64 1/2 (*.f64 t (exp.f64 (*.f64 (log.f64 y) x))))) (pow.f64 z 2))))))
(fma.f64 -1 (*.f64 (fma.f64 -1/2 (*.f64 t (pow.f64 y x)) (fma.f64 -1 (*.f64 (*.f64 t (pow.f64 y x)) -1/2) (*.f64 (*.f64 t (pow.f64 y x)) 1/6))) (pow.f64 z 3)) (fma.f64 -1 (*.f64 t (*.f64 (pow.f64 y x) z)) (fma.f64 t (pow.f64 y x) (*.f64 (neg.f64 (*.f64 (*.f64 t (pow.f64 y x)) -1/2)) (*.f64 z z)))))
(-.f64 (-.f64 (fma.f64 t (pow.f64 y x) (*.f64 (*.f64 z z) (*.f64 t (*.f64 (pow.f64 y x) 1/2)))) (*.f64 t (*.f64 (pow.f64 y x) z))) (*.f64 (+.f64 (*.f64 (*.f64 t (pow.f64 y x)) 1/6) (*.f64 0 (*.f64 t (*.f64 -1/2 (pow.f64 y x))))) (pow.f64 z 3)))
(-.f64 (*.f64 (pow.f64 y x) (fma.f64 (*.f64 z z) (*.f64 t 1/2) t)) (fma.f64 (fma.f64 t (*.f64 (pow.f64 y x) 1/6) 0) (pow.f64 z 3) (*.f64 t (*.f64 (pow.f64 y x) z))))
(-.f64 (*.f64 (pow.f64 y x) (fma.f64 (*.f64 z z) (*.f64 t 1/2) t)) (fma.f64 (*.f64 t (*.f64 (pow.f64 y x) 1/6)) (pow.f64 z 3) (*.f64 (pow.f64 y x) (*.f64 t z))))
(/.f64 (*.f64 t (exp.f64 (*.f64 (log.f64 y) x))) (exp.f64 z))
(/.f64 (*.f64 t (pow.f64 y x)) (exp.f64 z))
(*.f64 (/.f64 t (exp.f64 z)) (pow.f64 y x))
(*.f64 t (/.f64 (pow.f64 y x) (exp.f64 z)))
(/.f64 (*.f64 t (exp.f64 (*.f64 (log.f64 y) x))) (exp.f64 z))
(/.f64 (*.f64 t (pow.f64 y x)) (exp.f64 z))
(*.f64 (/.f64 t (exp.f64 z)) (pow.f64 y x))
(*.f64 t (/.f64 (pow.f64 y x) (exp.f64 z)))
(/.f64 (*.f64 t (exp.f64 (*.f64 (log.f64 y) x))) (exp.f64 z))
(/.f64 (*.f64 t (pow.f64 y x)) (exp.f64 z))
(*.f64 (/.f64 t (exp.f64 z)) (pow.f64 y x))
(*.f64 t (/.f64 (pow.f64 y x) (exp.f64 z)))
(/.f64 (*.f64 t (exp.f64 (*.f64 (log.f64 y) x))) (exp.f64 z))
(/.f64 (*.f64 t (pow.f64 y x)) (exp.f64 z))
(*.f64 (/.f64 t (exp.f64 z)) (pow.f64 y x))
(*.f64 t (/.f64 (pow.f64 y x) (exp.f64 z)))
(/.f64 (*.f64 t (exp.f64 (*.f64 (log.f64 y) x))) (exp.f64 z))
(/.f64 (*.f64 t (pow.f64 y x)) (exp.f64 z))
(*.f64 (/.f64 t (exp.f64 z)) (pow.f64 y x))
(*.f64 t (/.f64 (pow.f64 y x) (exp.f64 z)))
(/.f64 (*.f64 t (exp.f64 (*.f64 (log.f64 y) x))) (exp.f64 z))
(/.f64 (*.f64 t (pow.f64 y x)) (exp.f64 z))
(*.f64 (/.f64 t (exp.f64 z)) (pow.f64 y x))
(*.f64 t (/.f64 (pow.f64 y x) (exp.f64 z)))
(/.f64 (*.f64 t (exp.f64 (*.f64 (log.f64 y) x))) (exp.f64 z))
(/.f64 (*.f64 t (pow.f64 y x)) (exp.f64 z))
(*.f64 (/.f64 t (exp.f64 z)) (pow.f64 y x))
(*.f64 t (/.f64 (pow.f64 y x) (exp.f64 z)))
(/.f64 (*.f64 t (exp.f64 (*.f64 (log.f64 y) x))) (exp.f64 z))
(/.f64 (*.f64 t (pow.f64 y x)) (exp.f64 z))
(*.f64 (/.f64 t (exp.f64 z)) (pow.f64 y x))
(*.f64 t (/.f64 (pow.f64 y x) (exp.f64 z)))
t
(+.f64 (*.f64 -1 (*.f64 t z)) t)
(fma.f64 -1 (*.f64 t z) t)
(-.f64 t (*.f64 t z))
(fma.f64 t (neg.f64 z) t)
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 z 2) (+.f64 (*.f64 -1 t) (*.f64 1/2 t)))) t))
(fma.f64 -1 (*.f64 t z) (fma.f64 -1 (*.f64 (*.f64 z z) (*.f64 t -1/2)) t))
(+.f64 (-.f64 t (*.f64 t z)) (*.f64 t (*.f64 1/2 (*.f64 z z))))
(-.f64 t (*.f64 z (+.f64 t (*.f64 t (*.f64 -1/2 z)))))
(+.f64 t (*.f64 t (-.f64 (*.f64 z (*.f64 z 1/2)) z)))
(+.f64 (*.f64 -1 (*.f64 t z)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 z 2) (+.f64 (*.f64 -1 t) (*.f64 1/2 t)))) (+.f64 t (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 (+.f64 (*.f64 -1 t) (*.f64 1/2 t))) (+.f64 (*.f64 1/6 t) (*.f64 -1/2 t))) (pow.f64 z 3))))))
(fma.f64 -1 (*.f64 t z) (+.f64 (fma.f64 -1 (*.f64 (*.f64 z z) (*.f64 t -1/2)) t) (neg.f64 (*.f64 (pow.f64 z 3) (fma.f64 -1 (*.f64 t -1/2) (*.f64 t -1/3))))))
(+.f64 (-.f64 t (*.f64 (pow.f64 z 3) (fma.f64 t -1/3 (*.f64 t 1/2)))) (fma.f64 (neg.f64 t) z (*.f64 t (*.f64 1/2 (*.f64 z z)))))
(-.f64 (-.f64 t (*.f64 z (+.f64 t (*.f64 t (*.f64 -1/2 z))))) (*.f64 (pow.f64 z 3) (*.f64 t 1/6)))
(+.f64 t (-.f64 (*.f64 t (-.f64 (*.f64 z (*.f64 z 1/2)) z)) (*.f64 (pow.f64 z 3) (*.f64 t 1/6))))

localize32.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(-.f64 (*.f64 (*.f64 x (sqrt.f64 (log.f64 y))) (sqrt.f64 (log.f64 y))) y)
0.1b
(sqrt.f64 (log.f64 y))
0.1b
(*.f64 x (sqrt.f64 (log.f64 y)))
0.2b
(*.f64 (*.f64 x (sqrt.f64 (log.f64 y))) (sqrt.f64 (log.f64 y)))
Compiler

Compiled 69 to 12 computations (82.6% saved)

series9.0ms (0.1%)

Counts
4 → 80
Calls

21 calls:

TimeVariablePointExpression
2.0ms
x
@-inf
(-.f64 (*.f64 (*.f64 x (sqrt.f64 (log.f64 y))) (sqrt.f64 (log.f64 y))) y)
1.0ms
y
@inf
(*.f64 x (sqrt.f64 (log.f64 y)))
1.0ms
y
@-inf
(*.f64 x (sqrt.f64 (log.f64 y)))
1.0ms
x
@0
(*.f64 x (sqrt.f64 (log.f64 y)))
1.0ms
y
@0
(*.f64 x (sqrt.f64 (log.f64 y)))

rewrite77.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
877×pow1_binary64
812×add-log-exp_binary64
812×log1p-expm1-u_binary64
812×expm1-log1p-u_binary64
793×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0828
116928
2225128
Stop Event
node limit
Counts
4 → 82
Calls
Call 1
Inputs
(*.f64 (*.f64 x (sqrt.f64 (log.f64 y))) (sqrt.f64 (log.f64 y)))
(*.f64 x (sqrt.f64 (log.f64 y)))
(sqrt.f64 (log.f64 y))
(-.f64 (*.f64 (*.f64 x (sqrt.f64 (log.f64 y))) (sqrt.f64 (log.f64 y))) y)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 x (log.f64 y))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 x (log.f64 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 x (log.f64 y))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 x (log.f64 y))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 x (log.f64 y)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 x (log.f64 y)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 x) (log.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 x (log.f64 y)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 x (log.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 x (log.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 x (log.f64 y))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 x (sqrt.f64 (log.f64 y)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 x (sqrt.f64 (log.f64 y))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 x (sqrt.f64 (log.f64 y))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 x (sqrt.f64 (log.f64 y)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 x (sqrt.f64 (log.f64 y)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 x (*.f64 x (log.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (sqrt.f64 (log.f64 y))) x))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 x (sqrt.f64 (log.f64 y))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 x 3) (pow.f64 (log.f64 y) 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (log.f64 y) 3/2) (pow.f64 x 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 x (sqrt.f64 (log.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 x (sqrt.f64 (log.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 x (sqrt.f64 (log.f64 y)))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (sqrt.f64 (log.f64 y))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (log.f64 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (log.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sqrt.f64 (log.f64 y))) (cbrt.f64 (log.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (log.f64 y)) (cbrt.f64 (sqrt.f64 (log.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (log.f64 y) 1/4) (pow.f64 (log.f64 y) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (log.f64 y)) 2)) (sqrt.f64 (cbrt.f64 (log.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/2) (sqrt.f64 (log.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (log.f64 y)) 2) 1/2) (pow.f64 (cbrt.f64 (log.f64 y)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (log.f64 y) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (log.f64 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (log.f64 y) 3/2) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (sqrt.f64 (log.f64 y))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (log.f64 y) 1/4) 2)))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (sqrt.f64 (log.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (sqrt.f64 (log.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (log.f64 y) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (sqrt.f64 (log.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (sqrt.f64 (log.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (sqrt.f64 (log.f64 y))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (log.f64 y)) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (log.f64 y)) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) (fma.f64 (neg.f64 y) 1 y))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) (fma.f64 (neg.f64 (cbrt.f64 y)) (pow.f64 (cbrt.f64 y) 2) y))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) (fma.f64 (neg.f64 (sqrt.f64 y)) (sqrt.f64 y) y))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 y) (*.f64 x (log.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 x (log.f64 y) (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 x (log.f64 y) (neg.f64 y))) (pow.f64 (cbrt.f64 (fma.f64 x (log.f64 y) (neg.f64 y))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 x (log.f64 y) (neg.f64 y))) 2) (cbrt.f64 (fma.f64 x (log.f64 y) (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 x (log.f64 y) (neg.f64 y))) (sqrt.f64 (fma.f64 x (log.f64 y) (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (*.f64 x (log.f64 y)) 3) (pow.f64 y 3)) (/.f64 1 (+.f64 (pow.f64 (*.f64 x (log.f64 y)) 2) (*.f64 y (fma.f64 x (log.f64 y) y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (*.f64 x (log.f64 y)) 2) (*.f64 y y)) (/.f64 1 (fma.f64 x (log.f64 y) y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (*.f64 x (log.f64 y))) (sqrt.f64 y)) (-.f64 (sqrt.f64 (*.f64 x (log.f64 y))) (sqrt.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (pow.f64 (*.f64 x (log.f64 y)) 2) (*.f64 y (fma.f64 x (log.f64 y) y))) (-.f64 (pow.f64 (*.f64 x (log.f64 y)) 3) (pow.f64 y 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 x (log.f64 y) y) (-.f64 (pow.f64 (*.f64 x (log.f64 y)) 2) (*.f64 y y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 x (log.f64 y)) 3) (pow.f64 y 3)) (+.f64 (pow.f64 (*.f64 x (log.f64 y)) 2) (*.f64 y (fma.f64 x (log.f64 y) y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 x (log.f64 y)) 2) (*.f64 y y)) (fma.f64 x (log.f64 y) y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 x (log.f64 y)) 3) (pow.f64 y 3))) (neg.f64 (+.f64 (pow.f64 (*.f64 x (log.f64 y)) 2) (*.f64 y (fma.f64 x (log.f64 y) y)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 x (log.f64 y)) 2) (*.f64 y y))) (neg.f64 (fma.f64 x (log.f64 y) y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 x (log.f64 y)) 3) (pow.f64 (neg.f64 y) 3)) (+.f64 (pow.f64 (*.f64 x (log.f64 y)) 2) (-.f64 (*.f64 (neg.f64 y) (neg.f64 y)) (*.f64 (*.f64 x (log.f64 y)) (neg.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 x (log.f64 y)) 2) (*.f64 (neg.f64 y) (neg.f64 y))) (-.f64 (*.f64 x (log.f64 y)) (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 x (log.f64 y) (neg.f64 y))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 x (log.f64 y) (neg.f64 y))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 x (log.f64 y) (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 x (log.f64 y) (neg.f64 y)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 x (log.f64 y) (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 x (log.f64 y) (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 x (log.f64 y) (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x (log.f64 y) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (log.f64 y)) (*.f64 x (sqrt.f64 (log.f64 y))) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (sqrt.f64 (log.f64 y))) (sqrt.f64 (log.f64 y)) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 x (log.f64 y)) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 x (log.f64 y))) 2) (cbrt.f64 (*.f64 x (log.f64 y))) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 x (log.f64 y))) (sqrt.f64 (*.f64 x (log.f64 y))) (neg.f64 y))))))

simplify143.0ms (1.2%)

Algorithm
egg-herbie
Rules
1135×fma-neg_binary64
673×fma-def_binary64
416×unsub-neg_binary64
408×associate--r-_binary64
407×associate--r+_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
030657
164653
2116653
3237621
4505621
51126621
63270621
74160621
84309621
94364621
104382621
114388621
127495621
Stop Event
node limit
Counts
162 → 100
Calls
Call 1
Inputs
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x))
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x))
(*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x)
(*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x)
(*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x)
(*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x)
(*.f64 (sqrt.f64 (log.f64 y)) x)
(*.f64 (sqrt.f64 (log.f64 y)) x)
(*.f64 (sqrt.f64 (log.f64 y)) x)
(*.f64 (sqrt.f64 (log.f64 y)) x)
(*.f64 (sqrt.f64 (log.f64 y)) x)
(*.f64 (sqrt.f64 (log.f64 y)) x)
(*.f64 (sqrt.f64 (log.f64 y)) x)
(*.f64 (sqrt.f64 (log.f64 y)) x)
(*.f64 (sqrt.f64 (log.f64 y)) x)
(*.f64 (sqrt.f64 (log.f64 y)) x)
(*.f64 (sqrt.f64 (log.f64 y)) x)
(*.f64 (sqrt.f64 (log.f64 y)) x)
(*.f64 (sqrt.f64 (log.f64 y)) x)
(*.f64 (sqrt.f64 (log.f64 y)) x)
(*.f64 (sqrt.f64 (log.f64 y)) x)
(*.f64 (sqrt.f64 (log.f64 y)) x)
(*.f64 (*.f64 (sqrt.f64 -1) x) (sqrt.f64 (log.f64 (/.f64 1 y))))
(*.f64 (*.f64 (sqrt.f64 -1) x) (sqrt.f64 (log.f64 (/.f64 1 y))))
(*.f64 (*.f64 (sqrt.f64 -1) x) (sqrt.f64 (log.f64 (/.f64 1 y))))
(*.f64 (*.f64 (sqrt.f64 -1) x) (sqrt.f64 (log.f64 (/.f64 1 y))))
(*.f64 (sqrt.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) x)
(*.f64 (sqrt.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) x)
(*.f64 (sqrt.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) x)
(*.f64 (sqrt.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) x)
(*.f64 (sqrt.f64 -1) (sqrt.f64 (log.f64 (/.f64 1 y))))
(*.f64 (sqrt.f64 -1) (sqrt.f64 (log.f64 (/.f64 1 y))))
(*.f64 (sqrt.f64 -1) (sqrt.f64 (log.f64 (/.f64 1 y))))
(*.f64 (sqrt.f64 -1) (sqrt.f64 (log.f64 (/.f64 1 y))))
(sqrt.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)))
(sqrt.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)))
(sqrt.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)))
(sqrt.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)))
(*.f64 -1 y)
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y))
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y))
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y))
(*.f64 (log.f64 y) x)
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y))
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y))
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y))
(*.f64 (log.f64 y) x)
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y))
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y))
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y))
(*.f64 (log.f64 y) x)
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y))
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y))
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y))
(*.f64 -1 y)
(+.f64 (*.f64 -1 y) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x)))
(+.f64 (*.f64 -1 y) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x)))
(+.f64 (*.f64 -1 y) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x)))
(*.f64 -1 y)
(+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x) (*.f64 -1 y))
(+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x) (*.f64 -1 y))
(+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x) (*.f64 -1 y))
Outputs
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 (log.f64 y) x)
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x))
(*.f64 (log.f64 y) x)
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x))
(*.f64 (log.f64 y) x)
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x))
(*.f64 (log.f64 y) x)
(*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x))
(*.f64 (log.f64 y) x)
(*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x)
(*.f64 (log.f64 y) x)
(*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x)
(*.f64 (log.f64 y) x)
(*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x)
(*.f64 (log.f64 y) x)
(*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x)
(*.f64 (log.f64 y) x)
(*.f64 (sqrt.f64 (log.f64 y)) x)
(*.f64 x (sqrt.f64 (log.f64 y)))
(*.f64 (sqrt.f64 (log.f64 y)) x)
(*.f64 x (sqrt.f64 (log.f64 y)))
(*.f64 (sqrt.f64 (log.f64 y)) x)
(*.f64 x (sqrt.f64 (log.f64 y)))
(*.f64 (sqrt.f64 (log.f64 y)) x)
(*.f64 x (sqrt.f64 (log.f64 y)))
(*.f64 (sqrt.f64 (log.f64 y)) x)
(*.f64 x (sqrt.f64 (log.f64 y)))
(*.f64 (sqrt.f64 (log.f64 y)) x)
(*.f64 x (sqrt.f64 (log.f64 y)))
(*.f64 (sqrt.f64 (log.f64 y)) x)
(*.f64 x (sqrt.f64 (log.f64 y)))
(*.f64 (sqrt.f64 (log.f64 y)) x)
(*.f64 x (sqrt.f64 (log.f64 y)))
(*.f64 (sqrt.f64 (log.f64 y)) x)
(*.f64 x (sqrt.f64 (log.f64 y)))
(*.f64 (sqrt.f64 (log.f64 y)) x)
(*.f64 x (sqrt.f64 (log.f64 y)))
(*.f64 (sqrt.f64 (log.f64 y)) x)
(*.f64 x (sqrt.f64 (log.f64 y)))
(*.f64 (sqrt.f64 (log.f64 y)) x)
(*.f64 x (sqrt.f64 (log.f64 y)))
(*.f64 (sqrt.f64 (log.f64 y)) x)
(*.f64 x (sqrt.f64 (log.f64 y)))
(*.f64 (sqrt.f64 (log.f64 y)) x)
(*.f64 x (sqrt.f64 (log.f64 y)))
(*.f64 (sqrt.f64 (log.f64 y)) x)
(*.f64 x (sqrt.f64 (log.f64 y)))
(*.f64 (sqrt.f64 (log.f64 y)) x)
(*.f64 x (sqrt.f64 (log.f64 y)))
(*.f64 (*.f64 (sqrt.f64 -1) x) (sqrt.f64 (log.f64 (/.f64 1 y))))
(*.f64 (*.f64 x (sqrt.f64 -1)) (sqrt.f64 (neg.f64 (log.f64 y))))
(*.f64 x (*.f64 (sqrt.f64 -1) (sqrt.f64 (neg.f64 (log.f64 y)))))
(*.f64 (*.f64 (sqrt.f64 -1) x) (sqrt.f64 (log.f64 (/.f64 1 y))))
(*.f64 (*.f64 x (sqrt.f64 -1)) (sqrt.f64 (neg.f64 (log.f64 y))))
(*.f64 x (*.f64 (sqrt.f64 -1) (sqrt.f64 (neg.f64 (log.f64 y)))))
(*.f64 (*.f64 (sqrt.f64 -1) x) (sqrt.f64 (log.f64 (/.f64 1 y))))
(*.f64 (*.f64 x (sqrt.f64 -1)) (sqrt.f64 (neg.f64 (log.f64 y))))
(*.f64 x (*.f64 (sqrt.f64 -1) (sqrt.f64 (neg.f64 (log.f64 y)))))
(*.f64 (*.f64 (sqrt.f64 -1) x) (sqrt.f64 (log.f64 (/.f64 1 y))))
(*.f64 (*.f64 x (sqrt.f64 -1)) (sqrt.f64 (neg.f64 (log.f64 y))))
(*.f64 x (*.f64 (sqrt.f64 -1) (sqrt.f64 (neg.f64 (log.f64 y)))))
(*.f64 (sqrt.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) x)
(*.f64 x (sqrt.f64 (log.f64 y)))
(*.f64 (sqrt.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) x)
(*.f64 x (sqrt.f64 (log.f64 y)))
(*.f64 (sqrt.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) x)
(*.f64 x (sqrt.f64 (log.f64 y)))
(*.f64 (sqrt.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1))) x)
(*.f64 x (sqrt.f64 (log.f64 y)))
(*.f64 (sqrt.f64 -1) (sqrt.f64 (log.f64 (/.f64 1 y))))
(*.f64 (sqrt.f64 -1) (sqrt.f64 (neg.f64 (log.f64 y))))
(*.f64 (sqrt.f64 -1) (sqrt.f64 (log.f64 (/.f64 1 y))))
(*.f64 (sqrt.f64 -1) (sqrt.f64 (neg.f64 (log.f64 y))))
(*.f64 (sqrt.f64 -1) (sqrt.f64 (log.f64 (/.f64 1 y))))
(*.f64 (sqrt.f64 -1) (sqrt.f64 (neg.f64 (log.f64 y))))
(*.f64 (sqrt.f64 -1) (sqrt.f64 (log.f64 (/.f64 1 y))))
(*.f64 (sqrt.f64 -1) (sqrt.f64 (neg.f64 (log.f64 y))))
(sqrt.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)))
(sqrt.f64 (fma.f64 -1 (log.f64 (/.f64 -1 y)) (log.f64 -1)))
(sqrt.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 y))))
(sqrt.f64 (log.f64 y))
(sqrt.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)))
(sqrt.f64 (fma.f64 -1 (log.f64 (/.f64 -1 y)) (log.f64 -1)))
(sqrt.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 y))))
(sqrt.f64 (log.f64 y))
(sqrt.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)))
(sqrt.f64 (fma.f64 -1 (log.f64 (/.f64 -1 y)) (log.f64 -1)))
(sqrt.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 y))))
(sqrt.f64 (log.f64 y))
(sqrt.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)))
(sqrt.f64 (fma.f64 -1 (log.f64 (/.f64 -1 y)) (log.f64 -1)))
(sqrt.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 y))))
(sqrt.f64 (log.f64 y))
(*.f64 -1 y)
(neg.f64 y)
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y))
(fma.f64 (log.f64 y) x (neg.f64 y))
(-.f64 (*.f64 (log.f64 y) x) y)
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y))
(fma.f64 (log.f64 y) x (neg.f64 y))
(-.f64 (*.f64 (log.f64 y) x) y)
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y))
(fma.f64 (log.f64 y) x (neg.f64 y))
(-.f64 (*.f64 (log.f64 y) x) y)
(*.f64 (log.f64 y) x)
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y))
(fma.f64 (log.f64 y) x (neg.f64 y))
(-.f64 (*.f64 (log.f64 y) x) y)
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y))
(fma.f64 (log.f64 y) x (neg.f64 y))
(-.f64 (*.f64 (log.f64 y) x) y)
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y))
(fma.f64 (log.f64 y) x (neg.f64 y))
(-.f64 (*.f64 (log.f64 y) x) y)
(*.f64 (log.f64 y) x)
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y))
(fma.f64 (log.f64 y) x (neg.f64 y))
(-.f64 (*.f64 (log.f64 y) x) y)
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y))
(fma.f64 (log.f64 y) x (neg.f64 y))
(-.f64 (*.f64 (log.f64 y) x) y)
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y))
(fma.f64 (log.f64 y) x (neg.f64 y))
(-.f64 (*.f64 (log.f64 y) x) y)
(*.f64 (log.f64 y) x)
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y))
(fma.f64 (log.f64 y) x (neg.f64 y))
(-.f64 (*.f64 (log.f64 y) x) y)
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y))
(fma.f64 (log.f64 y) x (neg.f64 y))
(-.f64 (*.f64 (log.f64 y) x) y)
(+.f64 (*.f64 (log.f64 y) x) (*.f64 -1 y))
(fma.f64 (log.f64 y) x (neg.f64 y))
(-.f64 (*.f64 (log.f64 y) x) y)
(*.f64 -1 y)
(neg.f64 y)
(+.f64 (*.f64 -1 y) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x)))
(fma.f64 (log.f64 y) x (neg.f64 y))
(-.f64 (*.f64 (log.f64 y) x) y)
(+.f64 (*.f64 -1 y) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x)))
(fma.f64 (log.f64 y) x (neg.f64 y))
(-.f64 (*.f64 (log.f64 y) x) y)
(+.f64 (*.f64 -1 y) (*.f64 -1 (*.f64 (log.f64 (/.f64 1 y)) x)))
(fma.f64 (log.f64 y) x (neg.f64 y))
(-.f64 (*.f64 (log.f64 y) x) y)
(*.f64 -1 y)
(neg.f64 y)
(+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x) (*.f64 -1 y))
(fma.f64 (log.f64 y) x (neg.f64 y))
(-.f64 (*.f64 (log.f64 y) x) y)
(+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x) (*.f64 -1 y))
(fma.f64 (log.f64 y) x (neg.f64 y))
(-.f64 (*.f64 (log.f64 y) x) y)
(+.f64 (*.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 y))) (log.f64 -1)) x) (*.f64 -1 y))
(fma.f64 (log.f64 y) x (neg.f64 y))
(-.f64 (*.f64 (log.f64 y) x) y)

eval150.0ms (1.3%)

Compiler

Compiled 7107 to 2805 computations (60.5% saved)

prune82.0ms (0.7%)

Pruning

22 alts after pruning (13 fresh and 9 done)

PrunedKeptTotal
New3927399
Fresh5611
Picked011
Done088
Total39722419
Error
0b
Counts
419 → 22
Alt Table
Click to see full alt table
StatusErrorProgram
30.4b
(+.f64 (-.f64 (-.f64 (*.f64 (*.f64 x (pow.f64 (pow.f64 (log.f64 y) 3/2) 1/3)) (sqrt.f64 (log.f64 y))) y) z) (log.f64 t))
43.3b
(fma.f64 (sqrt.f64 (*.f64 (log.f64 y) x)) (sqrt.f64 (*.f64 (log.f64 y) x)) (neg.f64 y))
48.9b
(neg.f64 z)
52.5b
(log.f64 (*.f64 (pow.f64 y x) (/.f64 t (exp.f64 z))))
52.1b
(log.f64 (/.f64 t (exp.f64 z)))
31.7b
(-.f64 (*.f64 (log.f64 y) x) z)
29.9b
(+.f64 (-.f64 (-.f64 (*.f64 (*.f64 (log.f64 y) (sqrt.f64 x)) (sqrt.f64 x)) y) z) (log.f64 t))
25.0b
(-.f64 (*.f64 (log.f64 y) x) y)
38.0b
(-.f64 (log.f64 t) z)
18.3b
(-.f64 (-.f64 (log.f64 t) y) z)
35.5b
(fma.f64 (*.f64 (log.f64 y) (cbrt.f64 (*.f64 x x))) (cbrt.f64 x) (-.f64 (log.f64 t) z))
0.3b
(+.f64 (-.f64 (-.f64 (*.f64 (pow.f64 (cbrt.f64 (log.f64 y)) 2) (*.f64 (cbrt.f64 (log.f64 y)) x)) y) z) (log.f64 t))
20.8b
(fma.f64 (log.f64 y) x (-.f64 (log.f64 t) z))
30.3b
(+.f64 (-.f64 (-.f64 (*.f64 (*.f64 x (sqrt.f64 (log.f64 y))) (sqrt.f64 (log.f64 y))) y) z) (log.f64 t))
54.6b
(pow.f64 (sqrt.f64 (-.f64 (*.f64 (log.f64 y) x) y)) 2)
45.3b
(*.f64 (log.f64 y) x)
43.0b
(neg.f64 y)
0.3b
(+.f64 (-.f64 (-.f64 (*.f64 (pow.f64 (pow.f64 (log.f64 y) 2) 1/3) (*.f64 (cbrt.f64 (log.f64 y)) x)) y) z) (log.f64 t))
31.9b
(-.f64 (log.f64 t) y)
44.3b
(-.f64 (log.f64 (*.f64 t (pow.f64 y x))) z)
51.4b
(log.f64 t)
25.7b
(pow.f64 (cbrt.f64 (-.f64 (*.f64 (log.f64 y) x) y)) 3)
Compiler

Compiled 286 to 197 computations (31.1% saved)

regimes222.0ms (1.8%)

Counts
45 → 1
Calls
Call 1
Inputs
(neg.f64 y)
(neg.f64 z)
(log.f64 t)
(log.f64 t)
(*.f64 (log.f64 y) x)
(-.f64 (log.f64 t) z)
(*.f64 (log.f64 y) x)
(-.f64 (log.f64 t) y)
(+.f64 (neg.f64 z) (log.f64 t))
(-.f64 (*.f64 (log.f64 y) x) z)
(-.f64 (*.f64 (log.f64 y) x) y)
(-.f64 (-.f64 (log.f64 t) y) z)
(-.f64 (log.f64 t) (+.f64 y z))
(log.f64 (/.f64 t (exp.f64 z)))
(-.f64 (log.f64 (*.f64 t (pow.f64 y x))) z)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)) z)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)) z)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)) y)
(+.f64 (-.f64 (-.f64 (*.f64 x (log.f64 y)) y) z) (log.f64 t))
(fma.f64 (log.f64 y) x (-.f64 (log.f64 t) z))
(pow.f64 (sqrt.f64 (-.f64 (*.f64 (log.f64 y) x) y)) 2)
(pow.f64 (cbrt.f64 (-.f64 (*.f64 (log.f64 y) x) y)) 3)
(log.f64 (*.f64 (pow.f64 y x) (/.f64 t (exp.f64 z))))
(log.f64 (*.f64 t (/.f64 (pow.f64 y x) (exp.f64 (+.f64 y z)))))
(-.f64 (+.f64 (pow.f64 (cbrt.f64 (*.f64 (log.f64 y) x)) 3) (log.f64 t)) z)
(-.f64 (+.f64 (pow.f64 (sqrt.f64 (*.f64 (log.f64 y) x)) 2) (log.f64 t)) z)
(-.f64 (+.f64 (pow.f64 (sqrt.f64 (*.f64 (log.f64 y) x)) 2) (log.f64 t)) y)
(-.f64 (+.f64 (pow.f64 (cbrt.f64 (*.f64 (log.f64 y) x)) 3) (log.f64 t)) y)
(+.f64 (-.f64 (-.f64 (pow.f64 (sqrt.f64 (*.f64 x (log.f64 y))) 2) y) z) (log.f64 t))
(+.f64 (-.f64 (-.f64 (pow.f64 (cbrt.f64 (*.f64 x (log.f64 y))) 3) y) z) (log.f64 t))
(+.f64 (-.f64 (-.f64 (*.f64 (*.f64 (log.f64 y) (sqrt.f64 x)) (sqrt.f64 x)) y) z) (log.f64 t))
(fma.f64 (sqrt.f64 (*.f64 (log.f64 y) x)) (sqrt.f64 (*.f64 (log.f64 y) x)) (neg.f64 y))
(fma.f64 (*.f64 (log.f64 y) (cbrt.f64 (*.f64 x x))) (cbrt.f64 x) (-.f64 (log.f64 t) z))
(fma.f64 (*.f64 (log.f64 y) (sqrt.f64 x)) (sqrt.f64 x) (-.f64 (neg.f64 y) (-.f64 z (log.f64 t))))
(+.f64 (-.f64 (-.f64 (*.f64 (*.f64 x (sqrt.f64 (log.f64 y))) (sqrt.f64 (log.f64 y))) y) z) (log.f64 t))
(fma.f64 (*.f64 (log.f64 y) (cbrt.f64 (*.f64 x x))) (cbrt.f64 x) (-.f64 (neg.f64 y) (-.f64 z (log.f64 t))))
(fma.f64 (*.f64 x (sqrt.f64 (log.f64 y))) (sqrt.f64 (log.f64 y)) (-.f64 (neg.f64 y) (-.f64 z (log.f64 t))))
(+.f64 (-.f64 (-.f64 (*.f64 (pow.f64 (cbrt.f64 (log.f64 y)) 2) (*.f64 (cbrt.f64 (log.f64 y)) x)) y) z) (log.f64 t))
(+.f64 (-.f64 (-.f64 (*.f64 (*.f64 x (pow.f64 (pow.f64 (log.f64 y) 3/2) 1/3)) (sqrt.f64 (log.f64 y))) y) z) (log.f64 t))
(+.f64 (-.f64 (-.f64 (*.f64 (pow.f64 (pow.f64 (log.f64 y) 2) 1/3) (*.f64 (cbrt.f64 (log.f64 y)) x)) y) z) (log.f64 t))
(+.f64 (fma.f64 (pow.f64 x 1/4) (*.f64 (pow.f64 x 1/4) (*.f64 (log.f64 y) (sqrt.f64 x))) (-.f64 (neg.f64 y) z)) (log.f64 t))
(fma.f64 (pow.f64 (cbrt.f64 (log.f64 y)) 2) (*.f64 (cbrt.f64 (log.f64 y)) x) (-.f64 (neg.f64 y) (-.f64 z (log.f64 t))))
(fma.f64 (exp.f64 (*.f64 (log.f64 (log.f64 y)) 2/3)) (*.f64 (cbrt.f64 (log.f64 y)) x) (-.f64 (neg.f64 y) (-.f64 z (log.f64 t))))
(fma.f64 (pow.f64 (pow.f64 (log.f64 y) 2) 1/3) (*.f64 (cbrt.f64 (log.f64 y)) x) (-.f64 (neg.f64 y) (-.f64 z (log.f64 t))))
(fma.f64 (exp.f64 (*.f64 2/3 (log.f64 (log.f64 y)))) (*.f64 (cbrt.f64 (log.f64 y)) x) (-.f64 (neg.f64 y) (-.f64 z (log.f64 t))))
Outputs
(+.f64 (-.f64 (-.f64 (*.f64 x (log.f64 y)) y) z) (log.f64 t))
Calls

8 calls:

32.0ms
z
29.0ms
(log.f64 t)
26.0ms
(-.f64 (*.f64 x (log.f64 y)) y)
25.0ms
(-.f64 (-.f64 (*.f64 x (log.f64 y)) y) z)
24.0ms
x
Results
ErrorSegmentsBranch
0.1b1x
0.1b1y
0.1b1z
0.1b1t
0.1b1(+.f64 (-.f64 (-.f64 (*.f64 x (log.f64 y)) y) z) (log.f64 t))
0.1b1(-.f64 (-.f64 (*.f64 x (log.f64 y)) y) z)
0.1b1(-.f64 (*.f64 x (log.f64 y)) y)
0.1b1(log.f64 t)
Compiler

Compiled 550 to 193 computations (64.9% saved)

regimes182.0ms (1.5%)

Counts
18 → 4
Calls
Call 1
Inputs
(neg.f64 y)
(neg.f64 z)
(log.f64 t)
(log.f64 t)
(*.f64 (log.f64 y) x)
(-.f64 (log.f64 t) z)
(*.f64 (log.f64 y) x)
(-.f64 (log.f64 t) y)
(+.f64 (neg.f64 z) (log.f64 t))
(-.f64 (*.f64 (log.f64 y) x) z)
(-.f64 (*.f64 (log.f64 y) x) y)
(-.f64 (-.f64 (log.f64 t) y) z)
(-.f64 (log.f64 t) (+.f64 y z))
(log.f64 (/.f64 t (exp.f64 z)))
(-.f64 (log.f64 (*.f64 t (pow.f64 y x))) z)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)) z)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)) z)
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)) y)
Outputs
(-.f64 (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)) z)
(-.f64 (*.f64 (log.f64 y) x) y)
(-.f64 (-.f64 (log.f64 t) y) z)
(-.f64 (*.f64 (log.f64 y) x) y)
Calls

5 calls:

38.0ms
(log.f64 t)
38.0ms
z
37.0ms
t
36.0ms
y
28.0ms
x
Results
ErrorSegmentsBranch
5.2b3x
4.0b4y
4.0b4z
10.4b4t
10.4b4(log.f64 t)
Compiler

Compiled 123 to 48 computations (61% saved)

bsearch87.0ms (0.7%)

Algorithm
binary-search
Steps
TimeLeftRight
29.0ms
2.5336624499603674e+182
1.0497072359574847e+191
29.0ms
6.537092653243584e+105
1.306381421632514e+109
29.0ms
556578173201522800.0
2443957482025708500.0
Compiler

Compiled 22 to 16 computations (27.3% saved)

regimes257.0ms (2.1%)

Counts
15 → 3
Calls
Call 1
Inputs
(neg.f64 y)
(neg.f64 z)
(log.f64 t)
(log.f64 t)
(*.f64 (log.f64 y) x)
(-.f64 (log.f64 t) z)
(*.f64 (log.f64 y) x)
(-.f64 (log.f64 t) y)
(+.f64 (neg.f64 z) (log.f64 t))
(-.f64 (*.f64 (log.f64 y) x) z)
(-.f64 (*.f64 (log.f64 y) x) y)
(-.f64 (-.f64 (log.f64 t) y) z)
(-.f64 (log.f64 t) (+.f64 y z))
(log.f64 (/.f64 t (exp.f64 z)))
(-.f64 (log.f64 (*.f64 t (pow.f64 y x))) z)
Outputs
(-.f64 (*.f64 (log.f64 y) x) z)
(-.f64 (-.f64 (log.f64 t) y) z)
(-.f64 (*.f64 (log.f64 y) x) y)
Calls

5 calls:

82.0ms
z
53.0ms
y
46.0ms
t
46.0ms
(log.f64 t)
26.0ms
x
Results
ErrorSegmentsBranch
5.2b3x
11.1b7y
10.5b10z
15.1b5t
15.1b5(log.f64 t)
Compiler

Compiled 96 to 45 computations (53.1% saved)

bsearch62.0ms (0.5%)

Algorithm
binary-search
Steps
TimeLeftRight
31.0ms
2.5167509035584944e+64
2.4418649852894995e+75
30.0ms
-2.720528742747759e+95
-4.103239351032571e+84
Compiler

Compiled 22 to 16 computations (27.3% saved)

regimes232.0ms (1.9%)

Counts
11 → 5
Calls
Call 1
Inputs
(neg.f64 y)
(neg.f64 z)
(log.f64 t)
(log.f64 t)
(*.f64 (log.f64 y) x)
(-.f64 (log.f64 t) z)
(*.f64 (log.f64 y) x)
(-.f64 (log.f64 t) y)
(+.f64 (neg.f64 z) (log.f64 t))
(-.f64 (*.f64 (log.f64 y) x) z)
(-.f64 (*.f64 (log.f64 y) x) y)
Outputs
(-.f64 (*.f64 (log.f64 y) x) z)
(-.f64 (log.f64 t) y)
(-.f64 (log.f64 t) z)
(-.f64 (log.f64 t) y)
(-.f64 (*.f64 (log.f64 y) x) y)
Calls

5 calls:

58.0ms
(log.f64 t)
56.0ms
t
44.0ms
z
40.0ms
y
30.0ms
x
Results
ErrorSegmentsBranch
12.2b5x
12.6b5y
13.7b7z
20.9b7t
20.9b7(log.f64 t)
Compiler

Compiled 71 to 35 computations (50.7% saved)

bsearch119.0ms (1%)

Algorithm
binary-search
Steps
TimeLeftRight
30.0ms
1.4117651506705518e+34
1.7300885611439061e+34
30.0ms
1.0422922649483412e-98
5.479236490706381e-97
28.0ms
9.248134250635205e-150
4.130280985758844e-144
31.0ms
-2.7232425456921666e+24
-526499379291377.6
Compiler

Compiled 22 to 16 computations (27.3% saved)

regimes213.0ms (1.8%)

Counts
10 → 5
Calls
Call 1
Inputs
(neg.f64 y)
(neg.f64 z)
(log.f64 t)
(log.f64 t)
(*.f64 (log.f64 y) x)
(-.f64 (log.f64 t) z)
(*.f64 (log.f64 y) x)
(-.f64 (log.f64 t) y)
(+.f64 (neg.f64 z) (log.f64 t))
(-.f64 (*.f64 (log.f64 y) x) z)
Outputs
(-.f64 (*.f64 (log.f64 y) x) z)
(-.f64 (log.f64 t) y)
(-.f64 (log.f64 t) z)
(-.f64 (log.f64 t) y)
(-.f64 (*.f64 (log.f64 y) x) z)
Calls

5 calls:

52.0ms
(log.f64 t)
52.0ms
t
49.0ms
y
34.0ms
x
23.0ms
z
Results
ErrorSegmentsBranch
13.8b5x
15.9b9y
17.9b3z
22.9b9t
22.9b9(log.f64 t)
Compiler

Compiled 65 to 34 computations (47.7% saved)

bsearch117.0ms (1%)

Algorithm
binary-search
Steps
TimeLeftRight
29.0ms
4.807853983359746e+45
2.0255693443175404e+50
29.0ms
1.0422922649483412e-98
5.479236490706381e-97
29.0ms
9.248134250635205e-150
4.130280985758844e-144
29.0ms
-2.7232425456921666e+24
-526499379291377.6
Compiler

Compiled 22 to 16 computations (27.3% saved)

regimes139.0ms (1.2%)

Counts
9 → 5
Calls
Call 1
Inputs
(neg.f64 y)
(neg.f64 z)
(log.f64 t)
(log.f64 t)
(*.f64 (log.f64 y) x)
(-.f64 (log.f64 t) z)
(*.f64 (log.f64 y) x)
(-.f64 (log.f64 t) y)
(+.f64 (neg.f64 z) (log.f64 t))
Outputs
(*.f64 (log.f64 y) x)
(-.f64 (log.f64 t) y)
(-.f64 (log.f64 t) z)
(-.f64 (log.f64 t) y)
(*.f64 (log.f64 y) x)
Calls

5 calls:

28.0ms
z
28.0ms
(log.f64 t)
27.0ms
t
27.0ms
y
26.0ms
x
Results
ErrorSegmentsBranch
18.9b5x
22.0b4y
22.5b5z
28.9b5t
28.9b5(log.f64 t)
Compiler

Compiled 59 to 33 computations (44.1% saved)

bsearch117.0ms (1%)

Algorithm
binary-search
Steps
TimeLeftRight
29.0ms
1.859836357188378e+188
1.291481189152972e+190
29.0ms
1.0422922649483412e-98
5.479236490706381e-97
29.0ms
9.248134250635205e-150
4.130280985758844e-144
29.0ms
-2.720528742747759e+95
-4.103239351032571e+84
Compiler

Compiled 22 to 16 computations (27.3% saved)

regimes268.0ms (2.2%)

Counts
7 → 4
Calls
Call 1
Inputs
(neg.f64 y)
(neg.f64 z)
(log.f64 t)
(log.f64 t)
(*.f64 (log.f64 y) x)
(-.f64 (log.f64 t) z)
(*.f64 (log.f64 y) x)
Outputs
(-.f64 (log.f64 t) z)
(*.f64 (log.f64 y) x)
(-.f64 (log.f64 t) z)
(neg.f64 y)
Calls

5 calls:

81.0ms
t
79.0ms
z
48.0ms
(log.f64 t)
34.0ms
x
23.0ms
y
Results
ErrorSegmentsBranch
22.1b7x
22.0b4y
30.6b9z
31.5b9t
31.5b9(log.f64 t)
Compiler

Compiled 50 to 31 computations (38% saved)

bsearch107.0ms (0.9%)

Algorithm
binary-search
Steps
TimeLeftRight
41.0ms
556578173201522800.0
2443957482025708500.0
34.0ms
2.203655305432292e-77
2.314422096015977e-75
31.0ms
1.839854485588543e-118
1.0579909827475675e-113
Compiler

Compiled 22 to 16 computations (27.3% saved)

regimes233.0ms (1.9%)

Counts
5 → 9
Calls
Call 1
Inputs
(neg.f64 y)
(neg.f64 z)
(log.f64 t)
(log.f64 t)
(*.f64 (log.f64 y) x)
Outputs
(*.f64 (log.f64 y) x)
(neg.f64 y)
(log.f64 t)
(neg.f64 y)
(log.f64 t)
(neg.f64 y)
(neg.f64 z)
(neg.f64 y)
(*.f64 (log.f64 y) x)
Calls

5 calls:

80.0ms
z
67.0ms
x
29.0ms
(log.f64 t)
28.0ms
y
25.0ms
t
Results
ErrorSegmentsBranch
26.1b9x
27.3b6y
30.6b9z
38.2b6t
38.2b6(log.f64 t)
Compiler

Compiled 42 to 30 computations (28.6% saved)

bsearch332.0ms (2.8%)

Algorithm
binary-search
Steps
TimeLeftRight
52.0ms
1.859836357188378e+188
1.291481189152972e+190
55.0ms
1.0422922649483412e-98
5.479236490706381e-97
29.0ms
9.248134250635205e-150
4.130280985758844e-144
32.0ms
4.865272799055035e-160
9.248134250635205e-150
70.0ms
2.2222777494360173e-191
5.94120737182358e-190
32.0ms
-1.6584844398438456e-152
-3.6460840875673875e-155
30.0ms
-9.568045038199247e-28
-1.4254438361643885e-28
33.0ms
-2.720528742747759e+95
-4.103239351032571e+84
Compiler

Compiled 22 to 16 computations (27.3% saved)

regimes204.0ms (1.7%)

Counts
4 → 4
Calls
Call 1
Inputs
(neg.f64 y)
(neg.f64 z)
(log.f64 t)
(log.f64 t)
Outputs
(neg.f64 z)
(log.f64 t)
(neg.f64 z)
(neg.f64 y)
Calls

5 calls:

63.0ms
x
57.0ms
z
32.0ms
y
31.0ms
(log.f64 t)
17.0ms
t
Results
ErrorSegmentsBranch
37.8b7x
29.6b4y
32.0b7z
42.0b2t
42.0b2(log.f64 t)
Compiler

Compiled 38 to 28 computations (26.3% saved)

bsearch522.0ms (4.3%)

Algorithm
binary-search
Steps
TimeLeftRight
31.0ms
556578173201522800.0
2443957482025708500.0
31.0ms
1.0579909827475675e-113
6.629402562108955e-109
460.0ms
3.1209712169990575e-265
1.2090553229464873e-264
Compiler

Compiled 22 to 16 computations (27.3% saved)

regimes40.0ms (0.3%)

Accuracy

Total -28.3b remaining (-82.7%)

Threshold costs -28.3b (-82.7%)

Counts
2 → 2
Calls
Call 1
Inputs
(neg.f64 y)
(neg.f64 z)
Outputs
(neg.f64 z)
(neg.f64 y)
Calls

4 calls:

11.0ms
z
9.0ms
y
9.0ms
x
9.0ms
t
Results
ErrorSegmentsBranch
41.6b3x
34.2b2y
35.0b3z
41.5b3t
Compiler

Compiled 28 to 22 computations (21.4% saved)

bsearch58.0ms (0.5%)

Algorithm
binary-search
Steps
TimeLeftRight
58.0ms
556578173201522800.0
2443957482025708500.0
Compiler

Compiled 22 to 16 computations (27.3% saved)

simplify25.0ms (0.2%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
091454
1109454
2120454
3122454
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(+.f64 (-.f64 (-.f64 (*.f64 x (log.f64 y)) y) z) (log.f64 t))
(if (<=.f64 y 556578173201522816) (-.f64 (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)) z) (if (<=.f64 y 6537092653243583932676680732749183876252648984608337012475620922578952718230215662720700341287968936296448) (-.f64 (*.f64 (log.f64 y) x) y) (if (<=.f64 y 253366244996036743951645341554480038096707819100084232522465482050753089963899098515654222573288146991436746527090226532956758399946387614212267342975268409686532846983757058363359232) (-.f64 (-.f64 (log.f64 t) y) z) (-.f64 (*.f64 (log.f64 y) x) y))))
(if (<=.f64 x -272052874274775877183402022028286475023807623795047110135025087847345804031705625379570882445312) (-.f64 (*.f64 (log.f64 y) x) z) (if (<=.f64 x 25167509035584943611709261279860577283934498275859433573060706304) (-.f64 (-.f64 (log.f64 t) y) z) (-.f64 (*.f64 (log.f64 y) x) y)))
(if (<=.f64 x -2723242545692166611533824) (-.f64 (*.f64 (log.f64 y) x) z) (if (<=.f64 x 8521023232813083/921377545122446619199598286374089084696513969828232526459034741270904336521520715841339532514076847544303802497745079321233052888165232576308943909041185557531590656) (-.f64 (log.f64 t) y) (if (<=.f64 x 6416938481554465/615656346818663737691860001564743965704370926101022604186692084441339402679643915803347910232576806887603562348544) (-.f64 (log.f64 t) z) (if (<=.f64 x 14117651506705517922281449064497152) (-.f64 (log.f64 t) y) (-.f64 (*.f64 (log.f64 y) x) y)))))
(if (<=.f64 x -2723242545692166611533824) (-.f64 (*.f64 (log.f64 y) x) z) (if (<=.f64 x 8521023232813083/921377545122446619199598286374089084696513969828232526459034741270904336521520715841339532514076847544303802497745079321233052888165232576308943909041185557531590656) (-.f64 (log.f64 t) y) (if (<=.f64 x 6416938481554465/615656346818663737691860001564743965704370926101022604186692084441339402679643915803347910232576806887603562348544) (-.f64 (log.f64 t) z) (if (<=.f64 x 4807853983359745798255386726419880335642722304) (-.f64 (log.f64 t) y) (-.f64 (*.f64 (log.f64 y) x) z)))))
(if (<=.f64 x -272052874274775877183402022028286475023807623795047110135025087847345804031705625379570882445312) (*.f64 (log.f64 y) x) (if (<=.f64 x 8521023232813083/921377545122446619199598286374089084696513969828232526459034741270904336521520715841339532514076847544303802497745079321233052888165232576308943909041185557531590656) (-.f64 (log.f64 t) y) (if (<=.f64 x 6416938481554465/615656346818663737691860001564743965704370926101022604186692084441339402679643915803347910232576806887603562348544) (-.f64 (log.f64 t) z) (if (<=.f64 x 185983635718837794302691274520696983610087526415000735794353617191670688960142869179428453169547580677332529767812598982632623347923325966055069433444193077011888217762690720989327545860096) (-.f64 (log.f64 t) y) (*.f64 (log.f64 y) x)))))
(if (<=.f64 y 4178992147483521/22713710134237715329666368996500141698551292521478689383796568724394977753543685103943470334805111423773828800195818060422956300894208) (-.f64 (log.f64 t) z) (if (<=.f64 y 2872912087427801/130370302485407109521180524058200202307293977194619920040712988758680403184853549195737432064) (*.f64 (log.f64 y) x) (if (<=.f64 y 556578173201522816) (-.f64 (log.f64 t) z) (neg.f64 y))))
(if (<=.f64 x -272052874274775877183402022028286475023807623795047110135025087847345804031705625379570882445312) (*.f64 (log.f64 y) x) (if (<=.f64 x -5334363361123665/5575186299632655785383929568162090376495104) (neg.f64 y) (if (<=.f64 x -977977805956543/58968162887836583628774290327941701420576894069006881693378223441337877537377325813845730080900918242835443359855685076558915384842574884883772410178635875682021801984) (log.f64 t) (if (<=.f64 x 7134694197400217/321053216647239593947814323906257853121968982105906607635393121525191171526921436896586092302098904493834409720225721295960658706676257560005359788247795462033399882271023229870096664909931806474077957259264) (neg.f64 y) (if (<=.f64 x 1925327799466331/3957286423569672544968040336314355040562101585619389438625008897486355601704509874725062416979888719833562742816258229429621840548908019359480738481630290686665708354379186176) (log.f64 t) (if (<=.f64 x 8521023232813083/921377545122446619199598286374089084696513969828232526459034741270904336521520715841339532514076847544303802497745079321233052888165232576308943909041185557531590656) (neg.f64 y) (if (<=.f64 x 6416938481554465/615656346818663737691860001564743965704370926101022604186692084441339402679643915803347910232576806887603562348544) (neg.f64 z) (if (<=.f64 x 185983635718837794302691274520696983610087526415000735794353617191670688960142869179428453169547580677332529767812598982632623347923325966055069433444193077011888217762690720989327545860096) (neg.f64 y) (*.f64 (log.f64 y) x)))))))))
(if (<=.f64 y 5665206262878519/18152061871066687778296661354368903321914797383537530017770652579540291225102592450502542901564408576535628952517004065557306948798155587253306037366972590646764780767180906664339433713797579795779287057890032192456881698082005372169886461674177955114893128728688280185836979355648) (neg.f64 z) (if (<=.f64 y 1833412209073299/173291855882550928723650886508942731464777317210988535948154973788413831737851601439998400381508723631086950685087723239310884864) (log.f64 t) (if (<=.f64 y 556578173201522816) (neg.f64 z) (neg.f64 y))))
(if (<=.f64 y 556578173201522816) (neg.f64 z) (neg.f64 y))
(neg.f64 y)
Outputs
(+.f64 (-.f64 (-.f64 (*.f64 x (log.f64 y)) y) z) (log.f64 t))
(if (<=.f64 y 556578173201522816) (-.f64 (+.f64 (*.f64 (log.f64 y) x) (log.f64 t)) z) (if (<=.f64 y 6537092653243583932676680732749183876252648984608337012475620922578952718230215662720700341287968936296448) (-.f64 (*.f64 (log.f64 y) x) y) (if (<=.f64 y 253366244996036743951645341554480038096707819100084232522465482050753089963899098515654222573288146991436746527090226532956758399946387614212267342975268409686532846983757058363359232) (-.f64 (-.f64 (log.f64 t) y) z) (-.f64 (*.f64 (log.f64 y) x) y))))
(if (<=.f64 y 556578173201522816) (-.f64 (+.f64 (log.f64 t) (*.f64 x (log.f64 y))) z) (if (<=.f64 y 6537092653243583932676680732749183876252648984608337012475620922578952718230215662720700341287968936296448) (-.f64 (*.f64 x (log.f64 y)) y) (if (<=.f64 y 253366244996036743951645341554480038096707819100084232522465482050753089963899098515654222573288146991436746527090226532956758399946387614212267342975268409686532846983757058363359232) (-.f64 (-.f64 (log.f64 t) y) z) (-.f64 (*.f64 x (log.f64 y)) y))))
(if (<=.f64 x -272052874274775877183402022028286475023807623795047110135025087847345804031705625379570882445312) (-.f64 (*.f64 (log.f64 y) x) z) (if (<=.f64 x 25167509035584943611709261279860577283934498275859433573060706304) (-.f64 (-.f64 (log.f64 t) y) z) (-.f64 (*.f64 (log.f64 y) x) y)))
(if (<=.f64 x -272052874274775877183402022028286475023807623795047110135025087847345804031705625379570882445312) (-.f64 (*.f64 x (log.f64 y)) z) (if (<=.f64 x 25167509035584943611709261279860577283934498275859433573060706304) (-.f64 (-.f64 (log.f64 t) y) z) (-.f64 (*.f64 x (log.f64 y)) y)))
(if (<=.f64 x -2723242545692166611533824) (-.f64 (*.f64 (log.f64 y) x) z) (if (<=.f64 x 8521023232813083/921377545122446619199598286374089084696513969828232526459034741270904336521520715841339532514076847544303802497745079321233052888165232576308943909041185557531590656) (-.f64 (log.f64 t) y) (if (<=.f64 x 6416938481554465/615656346818663737691860001564743965704370926101022604186692084441339402679643915803347910232576806887603562348544) (-.f64 (log.f64 t) z) (if (<=.f64 x 14117651506705517922281449064497152) (-.f64 (log.f64 t) y) (-.f64 (*.f64 (log.f64 y) x) y)))))
(if (<=.f64 x -2723242545692166611533824) (-.f64 (*.f64 x (log.f64 y)) z) (if (<=.f64 x 8521023232813083/921377545122446619199598286374089084696513969828232526459034741270904336521520715841339532514076847544303802497745079321233052888165232576308943909041185557531590656) (-.f64 (log.f64 t) y) (if (<=.f64 x 6416938481554465/615656346818663737691860001564743965704370926101022604186692084441339402679643915803347910232576806887603562348544) (-.f64 (log.f64 t) z) (if (<=.f64 x 14117651506705517922281449064497152) (-.f64 (log.f64 t) y) (-.f64 (*.f64 x (log.f64 y)) y)))))
(if (<=.f64 x -2723242545692166611533824) (-.f64 (*.f64 (log.f64 y) x) z) (if (<=.f64 x 8521023232813083/921377545122446619199598286374089084696513969828232526459034741270904336521520715841339532514076847544303802497745079321233052888165232576308943909041185557531590656) (-.f64 (log.f64 t) y) (if (<=.f64 x 6416938481554465/615656346818663737691860001564743965704370926101022604186692084441339402679643915803347910232576806887603562348544) (-.f64 (log.f64 t) z) (if (<=.f64 x 4807853983359745798255386726419880335642722304) (-.f64 (log.f64 t) y) (-.f64 (*.f64 (log.f64 y) x) z)))))
(if (<=.f64 x -2723242545692166611533824) (-.f64 (*.f64 x (log.f64 y)) z) (if (<=.f64 x 8521023232813083/921377545122446619199598286374089084696513969828232526459034741270904336521520715841339532514076847544303802497745079321233052888165232576308943909041185557531590656) (-.f64 (log.f64 t) y) (if (<=.f64 x 6416938481554465/615656346818663737691860001564743965704370926101022604186692084441339402679643915803347910232576806887603562348544) (-.f64 (log.f64 t) z) (if (<=.f64 x 4807853983359745798255386726419880335642722304) (-.f64 (log.f64 t) y) (-.f64 (*.f64 x (log.f64 y)) z)))))
(if (<=.f64 x -272052874274775877183402022028286475023807623795047110135025087847345804031705625379570882445312) (*.f64 (log.f64 y) x) (if (<=.f64 x 8521023232813083/921377545122446619199598286374089084696513969828232526459034741270904336521520715841339532514076847544303802497745079321233052888165232576308943909041185557531590656) (-.f64 (log.f64 t) y) (if (<=.f64 x 6416938481554465/615656346818663737691860001564743965704370926101022604186692084441339402679643915803347910232576806887603562348544) (-.f64 (log.f64 t) z) (if (<=.f64 x 185983635718837794302691274520696983610087526415000735794353617191670688960142869179428453169547580677332529767812598982632623347923325966055069433444193077011888217762690720989327545860096) (-.f64 (log.f64 t) y) (*.f64 (log.f64 y) x)))))
(if (<=.f64 x -272052874274775877183402022028286475023807623795047110135025087847345804031705625379570882445312) (*.f64 x (log.f64 y)) (if (<=.f64 x 8521023232813083/921377545122446619199598286374089084696513969828232526459034741270904336521520715841339532514076847544303802497745079321233052888165232576308943909041185557531590656) (-.f64 (log.f64 t) y) (if (<=.f64 x 6416938481554465/615656346818663737691860001564743965704370926101022604186692084441339402679643915803347910232576806887603562348544) (-.f64 (log.f64 t) z) (if (<=.f64 x 185983635718837794302691274520696983610087526415000735794353617191670688960142869179428453169547580677332529767812598982632623347923325966055069433444193077011888217762690720989327545860096) (-.f64 (log.f64 t) y) (*.f64 x (log.f64 y))))))
(if (<=.f64 y 4178992147483521/22713710134237715329666368996500141698551292521478689383796568724394977753543685103943470334805111423773828800195818060422956300894208) (-.f64 (log.f64 t) z) (if (<=.f64 y 2872912087427801/130370302485407109521180524058200202307293977194619920040712988758680403184853549195737432064) (*.f64 (log.f64 y) x) (if (<=.f64 y 556578173201522816) (-.f64 (log.f64 t) z) (neg.f64 y))))
(if (<=.f64 y 4178992147483521/22713710134237715329666368996500141698551292521478689383796568724394977753543685103943470334805111423773828800195818060422956300894208) (-.f64 (log.f64 t) z) (if (<=.f64 y 2872912087427801/130370302485407109521180524058200202307293977194619920040712988758680403184853549195737432064) (*.f64 x (log.f64 y)) (if (<=.f64 y 556578173201522816) (-.f64 (log.f64 t) z) (neg.f64 y))))
(if (<=.f64 x -272052874274775877183402022028286475023807623795047110135025087847345804031705625379570882445312) (*.f64 (log.f64 y) x) (if (<=.f64 x -5334363361123665/5575186299632655785383929568162090376495104) (neg.f64 y) (if (<=.f64 x -977977805956543/58968162887836583628774290327941701420576894069006881693378223441337877537377325813845730080900918242835443359855685076558915384842574884883772410178635875682021801984) (log.f64 t) (if (<=.f64 x 7134694197400217/321053216647239593947814323906257853121968982105906607635393121525191171526921436896586092302098904493834409720225721295960658706676257560005359788247795462033399882271023229870096664909931806474077957259264) (neg.f64 y) (if (<=.f64 x 1925327799466331/3957286423569672544968040336314355040562101585619389438625008897486355601704509874725062416979888719833562742816258229429621840548908019359480738481630290686665708354379186176) (log.f64 t) (if (<=.f64 x 8521023232813083/921377545122446619199598286374089084696513969828232526459034741270904336521520715841339532514076847544303802497745079321233052888165232576308943909041185557531590656) (neg.f64 y) (if (<=.f64 x 6416938481554465/615656346818663737691860001564743965704370926101022604186692084441339402679643915803347910232576806887603562348544) (neg.f64 z) (if (<=.f64 x 185983635718837794302691274520696983610087526415000735794353617191670688960142869179428453169547580677332529767812598982632623347923325966055069433444193077011888217762690720989327545860096) (neg.f64 y) (*.f64 (log.f64 y) x)))))))))
(if (<=.f64 x -272052874274775877183402022028286475023807623795047110135025087847345804031705625379570882445312) (*.f64 x (log.f64 y)) (if (<=.f64 x -5334363361123665/5575186299632655785383929568162090376495104) (neg.f64 y) (if (<=.f64 x -977977805956543/58968162887836583628774290327941701420576894069006881693378223441337877537377325813845730080900918242835443359855685076558915384842574884883772410178635875682021801984) (log.f64 t) (if (<=.f64 x 7134694197400217/321053216647239593947814323906257853121968982105906607635393121525191171526921436896586092302098904493834409720225721295960658706676257560005359788247795462033399882271023229870096664909931806474077957259264) (neg.f64 y) (if (<=.f64 x 1925327799466331/3957286423569672544968040336314355040562101585619389438625008897486355601704509874725062416979888719833562742816258229429621840548908019359480738481630290686665708354379186176) (log.f64 t) (if (<=.f64 x 8521023232813083/921377545122446619199598286374089084696513969828232526459034741270904336521520715841339532514076847544303802497745079321233052888165232576308943909041185557531590656) (neg.f64 y) (if (<=.f64 x 6416938481554465/615656346818663737691860001564743965704370926101022604186692084441339402679643915803347910232576806887603562348544) (neg.f64 z) (if (<=.f64 x 185983635718837794302691274520696983610087526415000735794353617191670688960142869179428453169547580677332529767812598982632623347923325966055069433444193077011888217762690720989327545860096) (neg.f64 y) (*.f64 x (log.f64 y))))))))))
(if (<=.f64 y 5665206262878519/18152061871066687778296661354368903321914797383537530017770652579540291225102592450502542901564408576535628952517004065557306948798155587253306037366972590646764780767180906664339433713797579795779287057890032192456881698082005372169886461674177955114893128728688280185836979355648) (neg.f64 z) (if (<=.f64 y 1833412209073299/173291855882550928723650886508942731464777317210988535948154973788413831737851601439998400381508723631086950685087723239310884864) (log.f64 t) (if (<=.f64 y 556578173201522816) (neg.f64 z) (neg.f64 y))))
(if (<=.f64 y 556578173201522816) (neg.f64 z) (neg.f64 y))
(neg.f64 y)
Compiler

Compiled 346 to 195 computations (43.6% saved)

soundness0.0ms (0%)

end144.0ms (1.2%)

Compiler

Compiled 306 to 114 computations (62.7% saved)

Profiling

Loading profile data...