Details

Time bar (total: 4.9s)

analyze164.0ms (3.4%)

Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%99.9%0.1%0%0%0%0
0%0%99.9%0.1%0%0%0%1
0%0%99.9%0.1%0%0%0%2
0%0%99.9%0.1%0%0%0%3
0%0%99.9%0.1%0%0%0%4
0%0%99.9%0.1%0%0%0%5
0%0%99.9%0.1%0%0%0%6
12.5%12.5%87.4%0.1%0%0%0%7
18.8%18.7%81.1%0.1%0%0%0%8
24.8%23.4%71%0.1%5.5%0%0%9
38.3%35.1%56.6%0.1%8.2%0%0%10
45%41%50.1%0.1%8.8%0%0%11
52%45.1%41.6%0.1%13.2%0%0%12
Compiler

Compiled 11 to 7 computations (36.4% saved)

sample1.8s (36.1%)

Results
1.5s8256×body256valid
236.0ms1289×body256infinite
Bogosity

preprocess89.0ms (1.8%)

Algorithm
egg-herbie
Rules
1662×rational.json-simplify-19
1052×rational.json-simplify-43
976×rational.json-simplify-35
882×rational.json-simplify-21
858×rational.json-simplify-39
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01676
14276
27876
321176
4108476
5425676
6694676
033
Stop Event
saturated
node limit
Calls
Call 1
Inputs
0
1
2
Outputs
0
1
2
Call 2
Inputs
(+.f64 x (/.f64 (*.f64 y y) z))
(+.f64 y (/.f64 (*.f64 x x) z))
(+.f64 z (/.f64 (*.f64 y y) x))
(+.f64 x (/.f64 (*.f64 z z) y))
Outputs
(+.f64 x (/.f64 (*.f64 y y) z))
(+.f64 x (*.f64 y (/.f64 y z)))
(+.f64 y (/.f64 (*.f64 x x) z))
(+.f64 y (*.f64 x (/.f64 x z)))
(+.f64 z (/.f64 (*.f64 y y) x))
(+.f64 z (*.f64 y (/.f64 y x)))
(+.f64 x (/.f64 (*.f64 z z) y))
(+.f64 x (*.f64 z (/.f64 z y)))
Compiler

Compiled 13 to 9 computations (30.8% saved)

simplify108.0ms (2.2%)

Algorithm
egg-herbie
Rules
1458×rational.json-simplify-2
1118×rational.json-simplify-59
1100×rational.json-simplify-44
1012×rational.json-simplify-47
820×rational.json-simplify-1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0819
11619
22819
37019
434419
5436219
6782919
Stop Event
node limit
Counts
1 → 2
Calls
Call 1
Inputs
(+.f64 x (/.f64 (*.f64 y y) z))
Outputs
(+.f64 x (/.f64 (*.f64 y y) z))
(+.f64 x (*.f64 y (/.f64 y z)))

eval0.0ms (0%)

Compiler

Compiled 17 to 9 computations (47.1% saved)

prune1.0ms (0%)

Pruning

3 alts after pruning (3 fresh and 0 done)

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

Compiled 20 to 12 computations (40% saved)

localize7.0ms (0.1%)

Local error

Found 2 expressions with local error:

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

Compiled 21 to 6 computations (71.4% saved)

series4.0ms (0.1%)

Counts
2 → 60
Calls

15 calls:

TimeVariablePointExpression
1.0ms
y
@0
(*.f64 y (/.f64 y z))
1.0ms
y
@inf
(*.f64 y (/.f64 y z))
1.0ms
z
@inf
(*.f64 y (/.f64 y z))
0.0ms
z
@0
(*.f64 y (/.f64 y z))
0.0ms
z
@-inf
(*.f64 y (/.f64 y z))

rewrite88.0ms (1.8%)

Algorithm
batch-egg-rewrite
Rules
1536×rational.json-1
1536×rational.json-2
1536×rational.json-4
1536×rational.json-3
1528×exponential.json-3
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0832
15532
213732
334032
489632
5411632
Stop Event
node limit
Counts
2 → 128
Calls
Call 1
Inputs
(*.f64 y (/.f64 y z))
(+.f64 x (*.f64 y (/.f64 y z)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y (/.f64 y z)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 y (/.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y (/.f64 y z)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 y (/.f64 z y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 y z) (/.f64 1 y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 y z) (*.f64 1/2 (/.f64 2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (/.f64 y z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 z (*.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 y y) (*.f64 z (/.f64 2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 y y) (*.f64 -2 (/.f64 z (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 2 (*.f64 (/.f64 z y) (/.f64 2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 2 (+.f64 (/.f64 z (*.f64 y y)) (/.f64 z (*.f64 y y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (/.f64 2 z)) (/.f64 2 y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (/.f64 2 z)) (/.f64 (+.f64 y y) (*.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (/.f64 2 z)) (*.f64 2 (/.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y 4) (*.f64 (/.f64 z y) 4))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y 4) (*.f64 (/.f64 z (neg.f64 y)) -4))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (*.f64 y (/.f64 2 z))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 1 z) (*.f64 (/.f64 1 y) (/.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 1 z) (/.f64 (/.f64 1 y) y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 y) (/.f64 z (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 y) (/.f64 -1 (/.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 y) (/.f64 (neg.f64 (+.f64 z z)) (+.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 z y) (*.f64 (*.f64 (/.f64 z y) (/.f64 z y)) (/.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1 (/.f64 (/.f64 z (neg.f64 y)) y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1 (*.f64 (/.f64 1 y) (/.f64 z (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 z (/.f64 2 y)) (*.f64 (/.f64 1 y) (*.f64 2 (*.f64 (/.f64 z y) (/.f64 z y)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 z (/.f64 2 y)) (*.f64 (*.f64 (/.f64 z y) (/.f64 z y)) (/.f64 2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 4 (+.f64 (*.f64 (/.f64 z y) (/.f64 2 y)) (*.f64 (/.f64 z y) (/.f64 2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 4 (/.f64 (*.f64 (/.f64 z y) 4) y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 4 (*.f64 (/.f64 1 y) (*.f64 (/.f64 z y) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 4 (*.f64 (*.f64 z (/.f64 2 y)) (/.f64 2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 y z) 4) (+.f64 (/.f64 2 y) (/.f64 2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 y z) 4) (/.f64 4 y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 y z) 4) (*.f64 4 (/.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 y z) 4) (*.f64 2 (/.f64 2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y 8) (+.f64 (*.f64 (/.f64 z y) 4) (*.f64 (/.f64 z y) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y 8) (/.f64 (*.f64 z 8) y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y 8) (*.f64 2 (*.f64 (/.f64 z y) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y 8) (*.f64 (/.f64 z y) 8))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y 8) (*.f64 (*.f64 z 8) (/.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y 8) (*.f64 (*.f64 z (/.f64 2 y)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y -2) (+.f64 (/.f64 z (neg.f64 y)) (/.f64 z (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y -2) (/.f64 (neg.f64 (+.f64 z z)) y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y -2) (/.f64 (*.f64 z -2) y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y -2) (*.f64 2 (/.f64 z (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y -2) (*.f64 (*.f64 z -2) (/.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y -2) (*.f64 (/.f64 1 y) (neg.f64 (+.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y -2) (*.f64 (neg.f64 z) (/.f64 2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y -2) (neg.f64 (*.f64 z (/.f64 2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 y z) (*.f64 y 4)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 1/2 z) (/.f64 (/.f64 1/2 y) y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1/2 (/.f64 (/.f64 1/2 y) (/.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1/2 (/.f64 (/.f64 z (+.f64 y y)) y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1/2 (/.f64 (/.f64 z y) (+.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 y z) (/.f64 y z)) (/.f64 (*.f64 y (/.f64 2 z)) (+.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (/.f64 y z) 4)) (*.f64 (/.f64 1 y) 8))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 y 8)) (*.f64 (/.f64 1 y) (*.f64 2 (*.f64 z 8))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (/.f64 y z) (*.f64 y 4))) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (neg.f64 y) z) (/.f64 -1 y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 z y) 4) (*.f64 (*.f64 2 (*.f64 (/.f64 z y) (/.f64 z y))) (/.f64 2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 y z) (*.f64 z (/.f64 2 y))) (*.f64 (/.f64 z y) (/.f64 2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (/.f64 1/2 z)) (/.f64 1/2 y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (/.f64 1/2 z)) (*.f64 (/.f64 1 y) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y 1/2) (/.f64 z (+.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 1/2 z) (*.f64 y y)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 y) 4) (*.f64 (/.f64 1 y) (*.f64 2 (*.f64 z -2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 y) 4) (*.f64 (/.f64 1 y) (*.f64 2 (neg.f64 (+.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 y) 4) (*.f64 (/.f64 1 y) (neg.f64 (*.f64 z 4))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 y) 4) (*.f64 4 (/.f64 z (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 y -2)) (*.f64 z (/.f64 2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 (/.f64 y z) (*.f64 y 4))) (*.f64 2 (*.f64 (/.f64 y z) (*.f64 y 4)))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 y 1/2) (*.f64 z (/.f64 2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 1 (/.f64 1 y)) (/.f64 z y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 2 (/.f64 1 y)) (*.f64 z (/.f64 2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 -1 (/.f64 1 y)) (/.f64 z (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 4 (/.f64 1 y)) (*.f64 (/.f64 z y) 4))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 y 8) (/.f64 z y)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 y (/.f64 1 y)) z)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (+.f64 y y) (/.f64 1 y)) (+.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 y 4) (/.f64 1 y)) (*.f64 z 4))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (neg.f64 y) (/.f64 1 y)) (neg.f64 z))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 z y) (/.f64 1 y)) (*.f64 (/.f64 z y) (/.f64 z y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 z (/.f64 2 y)) (/.f64 1 y)) (*.f64 2 (*.f64 (/.f64 z y) (/.f64 z y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 y 8) (/.f64 1 y)) (*.f64 z 8))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 y -2) (/.f64 1 y)) (*.f64 z -2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 y -2) (/.f64 1 y)) (neg.f64 (+.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 2 (*.f64 (/.f64 y z) 4)) (/.f64 1 y)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 2 (*.f64 y 8)) (/.f64 1 y)) (*.f64 2 (*.f64 z 8)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 (neg.f64 y) z) (/.f64 1 y)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (neg.f64 y) 4) (/.f64 1 y)) (*.f64 2 (*.f64 z -2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (neg.f64 y) 4) (/.f64 1 y)) (*.f64 2 (neg.f64 (+.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (neg.f64 y) 4) (/.f64 1 y)) (neg.f64 (*.f64 z 4)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (neg.f64 (*.f64 y -2)) (/.f64 1 y)) (+.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 1 (/.f64 2 y)) (/.f64 z (+.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (+.f64 y y) (/.f64 2 y)) z)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 2 (/.f64 2 y)) (/.f64 z y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 y 4) (/.f64 2 y)) (+.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 z (/.f64 2 y)) (/.f64 2 y)) (*.f64 (/.f64 z y) (/.f64 z y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 4 (/.f64 2 y)) (*.f64 z (/.f64 2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 y -2) (/.f64 2 y)) (neg.f64 z))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (/.f64 z y) 4) (/.f64 2 y)) (*.f64 2 (*.f64 (/.f64 z y) (/.f64 z y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (/.f64 y z) (*.f64 z (/.f64 2 y))) (/.f64 2 y)) (/.f64 z y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 y (/.f64 z (neg.f64 y))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (+.f64 y y) (/.f64 z (neg.f64 y))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 y 4) (/.f64 z (neg.f64 y))) -4)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 y (/.f64 y z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (/.f64 (neg.f64 y) z) (/.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 y (/.f64 z (neg.f64 y))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 (*.f64 y (/.f64 y z)) x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (+.f64 (*.f64 y (*.f64 y (/.f64 2 z))) (+.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 y (*.f64 y (/.f64 2 z))) (+.f64 x x)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 4)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 4)) (*.f64 2 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 4))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 1)))))

simplify229.0ms (4.7%)

Algorithm
egg-herbie
Rules
1226×rational.json-simplify-35
1198×rational.json-simplify-2
758×rational.json-simplify-41
676×rational.json-simplify-51
656×rational.json-simplify-61
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02882660
110952660
241052660
365592660
Stop Event
node limit
Counts
188 → 133
Calls
Call 1
Inputs
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
x
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
x
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
x
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(/.f64 (pow.f64 y 2) z)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(/.f64 (pow.f64 y 2) z)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(/.f64 (pow.f64 y 2) z)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
x
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
x
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (*.f64 y (/.f64 y z)) 0)
(+.f64 0 (*.f64 y (/.f64 y z)))
(-.f64 (*.f64 y (/.f64 y z)) 0)
(/.f64 y (/.f64 z y))
(/.f64 (/.f64 y z) (/.f64 1 y))
(/.f64 (/.f64 y z) (*.f64 1/2 (/.f64 2 y)))
(/.f64 (*.f64 y (/.f64 y z)) 1)
(/.f64 1 (/.f64 z (*.f64 y y)))
(/.f64 (+.f64 y y) (*.f64 z (/.f64 2 y)))
(/.f64 (+.f64 y y) (*.f64 -2 (/.f64 z (neg.f64 y))))
(/.f64 2 (*.f64 (/.f64 z y) (/.f64 2 y)))
(/.f64 2 (+.f64 (/.f64 z (*.f64 y y)) (/.f64 z (*.f64 y y))))
(/.f64 (*.f64 y (/.f64 2 z)) (/.f64 2 y))
(/.f64 (*.f64 y (/.f64 2 z)) (/.f64 (+.f64 y y) (*.f64 y y)))
(/.f64 (*.f64 y (/.f64 2 z)) (*.f64 2 (/.f64 1 y)))
(/.f64 (*.f64 y 4) (*.f64 (/.f64 z y) 4))
(/.f64 (*.f64 y 4) (*.f64 (/.f64 z (neg.f64 y)) -4))
(/.f64 (*.f64 y (*.f64 y (/.f64 2 z))) 2)
(/.f64 (/.f64 1 z) (*.f64 (/.f64 1 y) (/.f64 1 y)))
(/.f64 (/.f64 1 z) (/.f64 (/.f64 1 y) y))
(/.f64 (neg.f64 y) (/.f64 z (neg.f64 y)))
(/.f64 (neg.f64 y) (/.f64 -1 (/.f64 y z)))
(/.f64 (neg.f64 y) (/.f64 (neg.f64 (+.f64 z z)) (+.f64 y y)))
(/.f64 (/.f64 z y) (*.f64 (*.f64 (/.f64 z y) (/.f64 z y)) (/.f64 1 y)))
(/.f64 -1 (/.f64 (/.f64 z (neg.f64 y)) y))
(/.f64 -1 (*.f64 (/.f64 1 y) (/.f64 z (neg.f64 y))))
(/.f64 (*.f64 z (/.f64 2 y)) (*.f64 (/.f64 1 y) (*.f64 2 (*.f64 (/.f64 z y) (/.f64 z y)))))
(/.f64 (*.f64 z (/.f64 2 y)) (*.f64 (*.f64 (/.f64 z y) (/.f64 z y)) (/.f64 2 y)))
(/.f64 4 (+.f64 (*.f64 (/.f64 z y) (/.f64 2 y)) (*.f64 (/.f64 z y) (/.f64 2 y))))
(/.f64 4 (/.f64 (*.f64 (/.f64 z y) 4) y))
(/.f64 4 (*.f64 (/.f64 1 y) (*.f64 (/.f64 z y) 4)))
(/.f64 4 (*.f64 (*.f64 z (/.f64 2 y)) (/.f64 2 y)))
(/.f64 (*.f64 (/.f64 y z) 4) (+.f64 (/.f64 2 y) (/.f64 2 y)))
(/.f64 (*.f64 (/.f64 y z) 4) (/.f64 4 y))
(/.f64 (*.f64 (/.f64 y z) 4) (*.f64 4 (/.f64 1 y)))
(/.f64 (*.f64 (/.f64 y z) 4) (*.f64 2 (/.f64 2 y)))
(/.f64 (*.f64 y 8) (+.f64 (*.f64 (/.f64 z y) 4) (*.f64 (/.f64 z y) 4)))
(/.f64 (*.f64 y 8) (/.f64 (*.f64 z 8) y))
(/.f64 (*.f64 y 8) (*.f64 2 (*.f64 (/.f64 z y) 4)))
(/.f64 (*.f64 y 8) (*.f64 (/.f64 z y) 8))
(/.f64 (*.f64 y 8) (*.f64 (*.f64 z 8) (/.f64 1 y)))
(/.f64 (*.f64 y 8) (*.f64 (*.f64 z (/.f64 2 y)) 4))
(/.f64 (*.f64 y -2) (+.f64 (/.f64 z (neg.f64 y)) (/.f64 z (neg.f64 y))))
(/.f64 (*.f64 y -2) (/.f64 (neg.f64 (+.f64 z z)) y))
(/.f64 (*.f64 y -2) (/.f64 (*.f64 z -2) y))
(/.f64 (*.f64 y -2) (*.f64 2 (/.f64 z (neg.f64 y))))
(/.f64 (*.f64 y -2) (*.f64 (*.f64 z -2) (/.f64 1 y)))
(/.f64 (*.f64 y -2) (*.f64 (/.f64 1 y) (neg.f64 (+.f64 z z))))
(/.f64 (*.f64 y -2) (*.f64 (neg.f64 z) (/.f64 2 y)))
(/.f64 (*.f64 y -2) (neg.f64 (*.f64 z (/.f64 2 y))))
(/.f64 (*.f64 (/.f64 y z) (*.f64 y 4)) 4)
(/.f64 (/.f64 1/2 z) (/.f64 (/.f64 1/2 y) y))
(/.f64 1/2 (/.f64 (/.f64 1/2 y) (/.f64 y z)))
(/.f64 1/2 (/.f64 (/.f64 z (+.f64 y y)) y))
(/.f64 1/2 (/.f64 (/.f64 z y) (+.f64 y y)))
(/.f64 (*.f64 (/.f64 y z) (/.f64 y z)) (/.f64 (*.f64 y (/.f64 2 z)) (+.f64 y y)))
(/.f64 (*.f64 2 (*.f64 (/.f64 y z) 4)) (*.f64 (/.f64 1 y) 8))
(/.f64 (*.f64 2 (*.f64 y 8)) (*.f64 (/.f64 1 y) (*.f64 2 (*.f64 z 8))))
(/.f64 (*.f64 2 (*.f64 (/.f64 y z) (*.f64 y 4))) 8)
(/.f64 (/.f64 (neg.f64 y) z) (/.f64 -1 y))
(/.f64 (*.f64 (/.f64 z y) 4) (*.f64 (*.f64 2 (*.f64 (/.f64 z y) (/.f64 z y))) (/.f64 2 y)))
(/.f64 (*.f64 (/.f64 y z) (*.f64 z (/.f64 2 y))) (*.f64 (/.f64 z y) (/.f64 2 y)))
(/.f64 (*.f64 y (/.f64 1/2 z)) (/.f64 1/2 y))
(/.f64 (*.f64 y (/.f64 1/2 z)) (*.f64 (/.f64 1 y) 1/2))
(/.f64 (*.f64 y 1/2) (/.f64 z (+.f64 y y)))
(/.f64 (*.f64 (/.f64 1/2 z) (*.f64 y y)) 1/2)
(/.f64 (*.f64 (neg.f64 y) 4) (*.f64 (/.f64 1 y) (*.f64 2 (*.f64 z -2))))
(/.f64 (*.f64 (neg.f64 y) 4) (*.f64 (/.f64 1 y) (*.f64 2 (neg.f64 (+.f64 z z)))))
(/.f64 (*.f64 (neg.f64 y) 4) (*.f64 (/.f64 1 y) (neg.f64 (*.f64 z 4))))
(/.f64 (*.f64 (neg.f64 y) 4) (*.f64 4 (/.f64 z (neg.f64 y))))
(/.f64 (neg.f64 (*.f64 y -2)) (*.f64 z (/.f64 2 y)))
(/.f64 (+.f64 (*.f64 2 (*.f64 (/.f64 y z) (*.f64 y 4))) (*.f64 2 (*.f64 (/.f64 y z) (*.f64 y 4)))) 16)
(/.f64 (/.f64 y 1/2) (*.f64 z (/.f64 2 y)))
(/.f64 (/.f64 1 (/.f64 1 y)) (/.f64 z y))
(/.f64 (/.f64 2 (/.f64 1 y)) (*.f64 z (/.f64 2 y)))
(/.f64 (/.f64 -1 (/.f64 1 y)) (/.f64 z (neg.f64 y)))
(/.f64 (/.f64 4 (/.f64 1 y)) (*.f64 (/.f64 z y) 4))
(/.f64 (/.f64 (*.f64 y 8) (/.f64 z y)) 8)
(/.f64 (/.f64 y (/.f64 1 y)) z)
(/.f64 (/.f64 (+.f64 y y) (/.f64 1 y)) (+.f64 z z))
(/.f64 (/.f64 (*.f64 y 4) (/.f64 1 y)) (*.f64 z 4))
(/.f64 (/.f64 (neg.f64 y) (/.f64 1 y)) (neg.f64 z))
(/.f64 (/.f64 (/.f64 z y) (/.f64 1 y)) (*.f64 (/.f64 z y) (/.f64 z y)))
(/.f64 (/.f64 (*.f64 z (/.f64 2 y)) (/.f64 1 y)) (*.f64 2 (*.f64 (/.f64 z y) (/.f64 z y))))
(/.f64 (/.f64 (*.f64 y 8) (/.f64 1 y)) (*.f64 z 8))
(/.f64 (/.f64 (*.f64 y -2) (/.f64 1 y)) (*.f64 z -2))
(/.f64 (/.f64 (*.f64 y -2) (/.f64 1 y)) (neg.f64 (+.f64 z z)))
(/.f64 (/.f64 (*.f64 2 (*.f64 (/.f64 y z) 4)) (/.f64 1 y)) 8)
(/.f64 (/.f64 (*.f64 2 (*.f64 y 8)) (/.f64 1 y)) (*.f64 2 (*.f64 z 8)))
(/.f64 (/.f64 (/.f64 (neg.f64 y) z) (/.f64 1 y)) -1)
(/.f64 (/.f64 (*.f64 (neg.f64 y) 4) (/.f64 1 y)) (*.f64 2 (*.f64 z -2)))
(/.f64 (/.f64 (*.f64 (neg.f64 y) 4) (/.f64 1 y)) (*.f64 2 (neg.f64 (+.f64 z z))))
(/.f64 (/.f64 (*.f64 (neg.f64 y) 4) (/.f64 1 y)) (neg.f64 (*.f64 z 4)))
(/.f64 (/.f64 (neg.f64 (*.f64 y -2)) (/.f64 1 y)) (+.f64 z z))
(/.f64 (/.f64 1 (/.f64 2 y)) (/.f64 z (+.f64 y y)))
(/.f64 (/.f64 (+.f64 y y) (/.f64 2 y)) z)
(/.f64 (/.f64 2 (/.f64 2 y)) (/.f64 z y))
(/.f64 (/.f64 (*.f64 y 4) (/.f64 2 y)) (+.f64 z z))
(/.f64 (/.f64 (*.f64 z (/.f64 2 y)) (/.f64 2 y)) (*.f64 (/.f64 z y) (/.f64 z y)))
(/.f64 (/.f64 4 (/.f64 2 y)) (*.f64 z (/.f64 2 y)))
(/.f64 (/.f64 (*.f64 y -2) (/.f64 2 y)) (neg.f64 z))
(/.f64 (/.f64 (*.f64 (/.f64 z y) 4) (/.f64 2 y)) (*.f64 2 (*.f64 (/.f64 z y) (/.f64 z y))))
(/.f64 (/.f64 (*.f64 (/.f64 y z) (*.f64 z (/.f64 2 y))) (/.f64 2 y)) (/.f64 z y))
(/.f64 (/.f64 y (/.f64 z (neg.f64 y))) -1)
(/.f64 (/.f64 (+.f64 y y) (/.f64 z (neg.f64 y))) -2)
(/.f64 (/.f64 (*.f64 y 4) (/.f64 z (neg.f64 y))) -4)
(pow.f64 (*.f64 y (/.f64 y z)) 1)
(neg.f64 (/.f64 (/.f64 (neg.f64 y) z) (/.f64 1 y)))
(neg.f64 (/.f64 y (/.f64 z (neg.f64 y))))
(-.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 0)
(*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 1)
(*.f64 1 (+.f64 (*.f64 y (/.f64 y z)) x))
(*.f64 2 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 1/2))
(*.f64 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 2) 1/2)
(*.f64 4 (/.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 4))
(*.f64 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 4) 1/4)
(*.f64 1/2 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 2))
(*.f64 1/2 (+.f64 (*.f64 y (*.f64 y (/.f64 2 z))) (+.f64 x x)))
(*.f64 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 1/2) 2)
(*.f64 1/4 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 4))
(*.f64 (/.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 4) 4)
(*.f64 (+.f64 (*.f64 y (*.f64 y (/.f64 2 z))) (+.f64 x x)) 1/2)
(/.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 1)
(/.f64 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 2) 2)
(/.f64 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 4) 4)
(/.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 4)) 8)
(/.f64 (+.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 4)) (*.f64 2 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 4))) 16)
(pow.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 1)
Outputs
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
x
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
x
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
x
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(/.f64 (pow.f64 y 2) z)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(/.f64 (pow.f64 y 2) z)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(/.f64 (pow.f64 y 2) z)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
x
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
x
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (*.f64 y (/.f64 y z)) 0)
(*.f64 y (/.f64 y z))
(+.f64 0 (*.f64 y (/.f64 y z)))
(*.f64 y (/.f64 y z))
(-.f64 (*.f64 y (/.f64 y z)) 0)
(*.f64 y (/.f64 y z))
(/.f64 y (/.f64 z y))
(*.f64 y (/.f64 y z))
(/.f64 (/.f64 y z) (/.f64 1 y))
(*.f64 y (/.f64 y z))
(/.f64 (/.f64 y z) (*.f64 1/2 (/.f64 2 y)))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y (/.f64 y z)) 1)
(*.f64 y (/.f64 y z))
(/.f64 1 (/.f64 z (*.f64 y y)))
(*.f64 y (/.f64 y z))
(/.f64 (+.f64 y y) (*.f64 z (/.f64 2 y)))
(*.f64 y (/.f64 y z))
(/.f64 (+.f64 y y) (*.f64 -2 (/.f64 z (neg.f64 y))))
(*.f64 y (/.f64 y z))
(/.f64 2 (*.f64 (/.f64 z y) (/.f64 2 y)))
(*.f64 y (/.f64 y z))
(/.f64 2 (+.f64 (/.f64 z (*.f64 y y)) (/.f64 z (*.f64 y y))))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y (/.f64 2 z)) (/.f64 2 y))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y (/.f64 2 z)) (/.f64 (+.f64 y y) (*.f64 y y)))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y (/.f64 2 z)) (*.f64 2 (/.f64 1 y)))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y 4) (*.f64 (/.f64 z y) 4))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y 4) (*.f64 (/.f64 z (neg.f64 y)) -4))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y (*.f64 y (/.f64 2 z))) 2)
(*.f64 y (/.f64 y z))
(/.f64 (/.f64 1 z) (*.f64 (/.f64 1 y) (/.f64 1 y)))
(*.f64 y (/.f64 y z))
(/.f64 (/.f64 1 z) (/.f64 (/.f64 1 y) y))
(*.f64 y (/.f64 y z))
(/.f64 (neg.f64 y) (/.f64 z (neg.f64 y)))
(*.f64 y (/.f64 y z))
(/.f64 (neg.f64 y) (/.f64 -1 (/.f64 y z)))
(*.f64 y (/.f64 y z))
(/.f64 (neg.f64 y) (/.f64 (neg.f64 (+.f64 z z)) (+.f64 y y)))
(*.f64 y (/.f64 y z))
(/.f64 (/.f64 z y) (*.f64 (*.f64 (/.f64 z y) (/.f64 z y)) (/.f64 1 y)))
(*.f64 y (/.f64 y z))
(/.f64 -1 (/.f64 (/.f64 z (neg.f64 y)) y))
(*.f64 y (/.f64 y z))
(/.f64 -1 (*.f64 (/.f64 1 y) (/.f64 z (neg.f64 y))))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 z (/.f64 2 y)) (*.f64 (/.f64 1 y) (*.f64 2 (*.f64 (/.f64 z y) (/.f64 z y)))))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 z (/.f64 2 y)) (*.f64 (*.f64 (/.f64 z y) (/.f64 z y)) (/.f64 2 y)))
(*.f64 y (/.f64 y z))
(/.f64 4 (+.f64 (*.f64 (/.f64 z y) (/.f64 2 y)) (*.f64 (/.f64 z y) (/.f64 2 y))))
(*.f64 y (/.f64 y z))
(/.f64 4 (/.f64 (*.f64 (/.f64 z y) 4) y))
(*.f64 y (/.f64 y z))
(/.f64 4 (*.f64 (/.f64 1 y) (*.f64 (/.f64 z y) 4)))
(*.f64 y (/.f64 y z))
(/.f64 4 (*.f64 (*.f64 z (/.f64 2 y)) (/.f64 2 y)))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 (/.f64 y z) 4) (+.f64 (/.f64 2 y) (/.f64 2 y)))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 (/.f64 y z) 4) (/.f64 4 y))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 (/.f64 y z) 4) (*.f64 4 (/.f64 1 y)))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 (/.f64 y z) 4) (*.f64 2 (/.f64 2 y)))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y 8) (+.f64 (*.f64 (/.f64 z y) 4) (*.f64 (/.f64 z y) 4)))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y 8) (/.f64 (*.f64 z 8) y))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y 8) (*.f64 2 (*.f64 (/.f64 z y) 4)))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y 8) (*.f64 (/.f64 z y) 8))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y 8) (*.f64 (*.f64 z 8) (/.f64 1 y)))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y 8) (*.f64 (*.f64 z (/.f64 2 y)) 4))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y -2) (+.f64 (/.f64 z (neg.f64 y)) (/.f64 z (neg.f64 y))))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y -2) (/.f64 (neg.f64 (+.f64 z z)) y))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y -2) (/.f64 (*.f64 z -2) y))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y -2) (*.f64 2 (/.f64 z (neg.f64 y))))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y -2) (*.f64 (*.f64 z -2) (/.f64 1 y)))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y -2) (*.f64 (/.f64 1 y) (neg.f64 (+.f64 z z))))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y -2) (*.f64 (neg.f64 z) (/.f64 2 y)))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y -2) (neg.f64 (*.f64 z (/.f64 2 y))))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 (/.f64 y z) (*.f64 y 4)) 4)
(*.f64 y (/.f64 y z))
(/.f64 (/.f64 1/2 z) (/.f64 (/.f64 1/2 y) y))
(*.f64 y (/.f64 y z))
(/.f64 1/2 (/.f64 (/.f64 1/2 y) (/.f64 y z)))
(*.f64 y (/.f64 y z))
(/.f64 1/2 (/.f64 (/.f64 z (+.f64 y y)) y))
(*.f64 y (/.f64 y z))
(/.f64 1/2 (/.f64 (/.f64 z y) (+.f64 y y)))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 (/.f64 y z) (/.f64 y z)) (/.f64 (*.f64 y (/.f64 2 z)) (+.f64 y y)))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 2 (*.f64 (/.f64 y z) 4)) (*.f64 (/.f64 1 y) 8))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 2 (*.f64 y 8)) (*.f64 (/.f64 1 y) (*.f64 2 (*.f64 z 8))))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 2 (*.f64 (/.f64 y z) (*.f64 y 4))) 8)
(*.f64 y (/.f64 y z))
(/.f64 (/.f64 (neg.f64 y) z) (/.f64 -1 y))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 (/.f64 z y) 4) (*.f64 (*.f64 2 (*.f64 (/.f64 z y) (/.f64 z y))) (/.f64 2 y)))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 (/.f64 y z) (*.f64 z (/.f64 2 y))) (*.f64 (/.f64 z y) (/.f64 2 y)))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y (/.f64 1/2 z)) (/.f64 1/2 y))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y (/.f64 1/2 z)) (*.f64 (/.f64 1 y) 1/2))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y 1/2) (/.f64 z (+.f64 y y)))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 (/.f64 1/2 z) (*.f64 y y)) 1/2)
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 (neg.f64 y) 4) (*.f64 (/.f64 1 y) (*.f64 2 (*.f64 z -2))))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 (neg.f64 y) 4) (*.f64 (/.f64 1 y) (*.f64 2 (neg.f64 (+.f64 z z)))))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 (neg.f64 y) 4) (*.f64 (/.f64 1 y) (neg.f64 (*.f64 z 4))))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 (neg.f64 y) 4) (*.f64 4 (/.f64 z (neg.f64 y))))
(*.f64 y (/.f64 y z))
(/.f64 (neg.f64 (*.f64 y -2)) (*.f64 z (/.f64 2 y)))
(*.f64 y (/.f64 y z))
(/.f64 (+.f64 (*.f64 2 (*.f64 (/.f64 y z) (*.f64 y 4))) (*.f64 2 (*.f64 (/.f64 y z) (*.f64 y 4)))) 16)
(*.f64 y (/.f64 y z))
(/.f64 (/.f64 y 1/2) (*.f64 z (/.f64 2 y)))
(*.f64 y (/.f64 y z))
(/.f64 (/.f64 1 (/.f64 1 y)) (/.f64 z y))
(*.f64 y (/.f64 y z))
(/.f64 (/.f64 2 (/.f64 1 y)) (*.f64 z (/.f64 2 y)))
(*.f64 y (/.f64 y z))
(/.f64 (/.f64 -1 (/.f64 1 y)) (/.f64 z (neg.f64 y)))
(*.f64 y (/.f64 y z))
(/.f64 (/.f64 4 (/.f64 1 y)) (*.f64 (/.f64 z y) 4))
(*.f64 y (/.f64 y z))
(/.f64 (/.f64 (*.f64 y 8) (/.f64 z y)) 8)
(*.f64 y (/.f64 y z))
(/.f64 (/.f64 y (/.f64 1 y)) z)
(*.f64 y (/.f64 y z))
(/.f64 (/.f64 (+.f64 y y) (/.f64 1 y)) (+.f64 z z))
(*.f64 y (/.f64 y z))
(/.f64 (/.f64 (*.f64 y 4) (/.f64 1 y)) (*.f64 z 4))
(*.f64 y (/.f64 y z))
(/.f64 (/.f64 (neg.f64 y) (/.f64 1 y)) (neg.f64 z))
(*.f64 y (/.f64 y z))
(/.f64 (/.f64 (/.f64 z y) (/.f64 1 y)) (*.f64 (/.f64 z y) (/.f64 z y)))
(*.f64 y (/.f64 y z))
(/.f64 (/.f64 (*.f64 z (/.f64 2 y)) (/.f64 1 y)) (*.f64 2 (*.f64 (/.f64 z y) (/.f64 z y))))
(*.f64 y (/.f64 y z))
(/.f64 (/.f64 (*.f64 y 8) (/.f64 1 y)) (*.f64 z 8))
(*.f64 y (/.f64 y z))
(/.f64 (/.f64 (*.f64 y -2) (/.f64 1 y)) (*.f64 z -2))
(*.f64 y (/.f64 y z))
(/.f64 (/.f64 (*.f64 y -2) (/.f64 1 y)) (neg.f64 (+.f64 z z)))
(*.f64 y (/.f64 y z))
(/.f64 (/.f64 (*.f64 2 (*.f64 (/.f64 y z) 4)) (/.f64 1 y)) 8)
(*.f64 y (/.f64 y z))
(/.f64 (/.f64 (*.f64 2 (*.f64 y 8)) (/.f64 1 y)) (*.f64 2 (*.f64 z 8)))
(*.f64 y (/.f64 y z))
(/.f64 (/.f64 (/.f64 (neg.f64 y) z) (/.f64 1 y)) -1)
(*.f64 y (/.f64 y z))
(/.f64 (/.f64 (*.f64 (neg.f64 y) 4) (/.f64 1 y)) (*.f64 2 (*.f64 z -2)))
(*.f64 y (/.f64 y z))
(/.f64 (/.f64 (*.f64 (neg.f64 y) 4) (/.f64 1 y)) (*.f64 2 (neg.f64 (+.f64 z z))))
(*.f64 y (/.f64 y z))
(/.f64 (/.f64 (*.f64 (neg.f64 y) 4) (/.f64 1 y)) (neg.f64 (*.f64 z 4)))
(*.f64 y (/.f64 y z))
(/.f64 (/.f64 (neg.f64 (*.f64 y -2)) (/.f64 1 y)) (+.f64 z z))
(*.f64 y (/.f64 y z))
(/.f64 (/.f64 1 (/.f64 2 y)) (/.f64 z (+.f64 y y)))
(*.f64 y (/.f64 y z))
(/.f64 (/.f64 (+.f64 y y) (/.f64 2 y)) z)
(*.f64 y (/.f64 y z))
(/.f64 (/.f64 2 (/.f64 2 y)) (/.f64 z y))
(*.f64 y (/.f64 y z))
(/.f64 (/.f64 (*.f64 y 4) (/.f64 2 y)) (+.f64 z z))
(*.f64 y (/.f64 y z))
(/.f64 (/.f64 (*.f64 z (/.f64 2 y)) (/.f64 2 y)) (*.f64 (/.f64 z y) (/.f64 z y)))
(*.f64 y (/.f64 y z))
(/.f64 (/.f64 4 (/.f64 2 y)) (*.f64 z (/.f64 2 y)))
(*.f64 y (/.f64 y z))
(/.f64 (/.f64 (*.f64 y -2) (/.f64 2 y)) (neg.f64 z))
(*.f64 y (/.f64 y z))
(/.f64 (/.f64 (*.f64 (/.f64 z y) 4) (/.f64 2 y)) (*.f64 2 (*.f64 (/.f64 z y) (/.f64 z y))))
(*.f64 y (/.f64 y z))
(/.f64 (/.f64 (*.f64 (/.f64 y z) (*.f64 z (/.f64 2 y))) (/.f64 2 y)) (/.f64 z y))
(*.f64 y (/.f64 y z))
(/.f64 (/.f64 y (/.f64 z (neg.f64 y))) -1)
(*.f64 y (/.f64 y z))
(/.f64 (/.f64 (+.f64 y y) (/.f64 z (neg.f64 y))) -2)
(*.f64 y (/.f64 y z))
(/.f64 (/.f64 (*.f64 y 4) (/.f64 z (neg.f64 y))) -4)
(*.f64 y (/.f64 y z))
(pow.f64 (*.f64 y (/.f64 y z)) 1)
(*.f64 y (/.f64 y z))
(neg.f64 (/.f64 (/.f64 (neg.f64 y) z) (/.f64 1 y)))
(*.f64 y (/.f64 y z))
(neg.f64 (/.f64 y (/.f64 z (neg.f64 y))))
(*.f64 y (/.f64 y z))
(-.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 0)
(+.f64 x (*.f64 y (/.f64 y z)))
(*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 1)
(+.f64 x (*.f64 y (/.f64 y z)))
(*.f64 1 (+.f64 (*.f64 y (/.f64 y z)) x))
(+.f64 x (*.f64 y (/.f64 y z)))
(*.f64 2 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 1/2))
(+.f64 x (*.f64 y (/.f64 y z)))
(*.f64 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 2) 1/2)
(+.f64 x (*.f64 y (/.f64 y z)))
(*.f64 4 (/.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 4))
(+.f64 x (*.f64 y (/.f64 y z)))
(*.f64 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 4) 1/4)
(+.f64 x (*.f64 y (/.f64 y z)))
(*.f64 1/2 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 2))
(+.f64 x (*.f64 y (/.f64 y z)))
(*.f64 1/2 (+.f64 (*.f64 y (*.f64 y (/.f64 2 z))) (+.f64 x x)))
(+.f64 x (*.f64 y (/.f64 y z)))
(*.f64 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 1/2) 2)
(+.f64 x (*.f64 y (/.f64 y z)))
(*.f64 1/4 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 4))
(+.f64 x (*.f64 y (/.f64 y z)))
(*.f64 (/.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 4) 4)
(+.f64 x (*.f64 y (/.f64 y z)))
(*.f64 (+.f64 (*.f64 y (*.f64 y (/.f64 2 z))) (+.f64 x x)) 1/2)
(+.f64 x (*.f64 y (/.f64 y z)))
(/.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 1)
(+.f64 x (*.f64 y (/.f64 y z)))
(/.f64 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 2) 2)
(+.f64 x (*.f64 y (/.f64 y z)))
(/.f64 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 4) 4)
(+.f64 x (*.f64 y (/.f64 y z)))
(/.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 4)) 8)
(+.f64 x (*.f64 y (/.f64 y z)))
(/.f64 (+.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 4)) (*.f64 2 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 4))) 16)
(+.f64 x (*.f64 y (/.f64 y z)))
(pow.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 1)
(+.f64 x (*.f64 y (/.f64 y z)))

localize7.0ms (0.1%)

Local error

Found 2 expressions with local error:

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

Compiled 21 to 6 computations (71.4% saved)

series1.0ms (0%)

Counts
2 → 60
Calls

15 calls:

TimeVariablePointExpression
0.0ms
z
@0
(/.f64 (*.f64 y y) z)
0.0ms
y
@inf
(/.f64 (*.f64 y y) z)
0.0ms
y
@0
(/.f64 (*.f64 y y) z)
0.0ms
z
@-inf
(/.f64 (*.f64 y y) z)
0.0ms
y
@-inf
(/.f64 (*.f64 y y) z)

rewrite98.0ms (2%)

Algorithm
batch-egg-rewrite
Rules
2152×rational.json-1
2152×rational.json-2
1564×rational.json-simplify-35
934×exponential.json-3
934×rational.json-4
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0832
15832
216732
350732
4231132
5734232
Stop Event
node limit
Counts
2 → 64
Calls
Call 1
Inputs
(/.f64 (*.f64 y y) z)
(+.f64 x (/.f64 (*.f64 y y) z))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y (/.f64 y z)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 y (/.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y (/.f64 y z)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (/.f64 y z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y y) (/.f64 1 z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y y) (/.f64 (*.f64 y (/.f64 y z)) (*.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y (/.f64 y z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 y (/.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y (+.f64 y y)) (/.f64 1/2 z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y (+.f64 y y)) (*.f64 (/.f64 1 z) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y z) y)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 y y) (*.f64 y y)) (/.f64 1 (*.f64 (*.f64 y y) z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (/.f64 (*.f64 y y) (+.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (/.f64 (*.f64 y (/.f64 y z)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (*.f64 y (/.f64 1/2 z)) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (*.f64 y 1/2) (/.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (/.f64 1/2 z) (*.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 y y) (*.f64 y (/.f64 1/2 z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 y y) (*.f64 (/.f64 1 z) (*.f64 y 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 y y) (*.f64 1/2 (/.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y (*.f64 y (/.f64 2 z))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y (*.f64 y 4)) (/.f64 1 (*.f64 z 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fabs.f64 y) (/.f64 (fabs.f64 y) z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 z) (*.f64 y y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y (neg.f64 y)) (/.f64 -1 z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (/.f64 (*.f64 y y) (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y (/.f64 2 z)) (*.f64 y 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y (*.f64 y y)) (/.f64 y (*.f64 (*.f64 y y) z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 y y) (fabs.f64 y)) (/.f64 (fabs.f64 y) (*.f64 (*.f64 y y) z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y 1/2) (*.f64 y (/.f64 2 z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 y (*.f64 y (/.f64 2 z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (fabs.f64 y) z) (fabs.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y (/.f64 1/2 z)) (+.f64 y y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/2 z) (*.f64 y (+.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (fabs.f64 y)) (/.f64 (fabs.f64 y) (+.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 1 z) 1/2) (*.f64 y (+.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 1 z) (*.f64 y 1/2)) (+.f64 y y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 y (/.f64 y z)) (*.f64 y y)) (*.f64 y y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 y y) (neg.f64 z)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 y y) (+.f64 z z)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (fabs.f64 y) (+.f64 z z)) (*.f64 2 (fabs.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -1 z) (*.f64 y (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y (*.f64 (*.f64 y y) z)) (*.f64 y (*.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (*.f64 (*.f64 y y) z)) (*.f64 (*.f64 y y) (*.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (fabs.f64 y) (*.f64 (*.f64 y y) z)) (*.f64 (*.f64 y y) (fabs.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 y (/.f64 y z)) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (*.f64 z 4)) (*.f64 y (*.f64 y 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (/.f64 1/2 z) (/.f64 1/2 z)) (*.f64 y y))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 y (/.f64 y z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (*.f64 y y) (neg.f64 z)))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 (*.f64 y (/.f64 y z)) x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (/.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (+.f64 (+.f64 x x) (*.f64 y (*.f64 y (/.f64 2 z)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 4)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 4)) (*.f64 2 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 4))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 1)))))

simplify103.0ms (2.1%)

Algorithm
egg-herbie
Rules
1208×rational.json-simplify-35
1110×rational.json-simplify-2
888×rational.json-simplify-57
838×rational.json-simplify-19
722×rational.json-simplify-53
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01312080
12922068
27222068
321182068
457732068
Stop Event
node limit
Counts
124 → 85
Calls
Call 1
Inputs
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
x
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
x
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
x
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(/.f64 (pow.f64 y 2) z)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(/.f64 (pow.f64 y 2) z)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(/.f64 (pow.f64 y 2) z)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
x
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
x
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (*.f64 y (/.f64 y z)) 0)
(+.f64 0 (*.f64 y (/.f64 y z)))
(-.f64 (*.f64 y (/.f64 y z)) 0)
(*.f64 y (/.f64 y z))
(*.f64 (*.f64 y y) (/.f64 1 z))
(*.f64 (*.f64 y y) (/.f64 (*.f64 y (/.f64 y z)) (*.f64 y y)))
(*.f64 (*.f64 y (/.f64 y z)) 1)
(*.f64 1 (*.f64 y (/.f64 y z)))
(*.f64 (*.f64 y (+.f64 y y)) (/.f64 1/2 z))
(*.f64 (*.f64 y (+.f64 y y)) (*.f64 (/.f64 1 z) 1/2))
(*.f64 (/.f64 y z) y)
(*.f64 (*.f64 (*.f64 y y) (*.f64 y y)) (/.f64 1 (*.f64 (*.f64 y y) z)))
(*.f64 2 (/.f64 (*.f64 y y) (+.f64 z z)))
(*.f64 2 (/.f64 (*.f64 y (/.f64 y z)) 2))
(*.f64 2 (*.f64 (*.f64 y (/.f64 1/2 z)) y))
(*.f64 2 (*.f64 (*.f64 y 1/2) (/.f64 y z)))
(*.f64 2 (*.f64 (/.f64 1/2 z) (*.f64 y y)))
(*.f64 (+.f64 y y) (*.f64 y (/.f64 1/2 z)))
(*.f64 (+.f64 y y) (*.f64 (/.f64 1 z) (*.f64 y 1/2)))
(*.f64 (+.f64 y y) (*.f64 1/2 (/.f64 y z)))
(*.f64 (*.f64 y (*.f64 y (/.f64 2 z))) 1/2)
(*.f64 (*.f64 y (*.f64 y 4)) (/.f64 1 (*.f64 z 4)))
(*.f64 (fabs.f64 y) (/.f64 (fabs.f64 y) z))
(*.f64 (/.f64 1 z) (*.f64 y y))
(*.f64 (*.f64 y (neg.f64 y)) (/.f64 -1 z))
(*.f64 -1 (/.f64 (*.f64 y y) (neg.f64 z)))
(*.f64 (*.f64 y (/.f64 2 z)) (*.f64 y 1/2))
(*.f64 (*.f64 y (*.f64 y y)) (/.f64 y (*.f64 (*.f64 y y) z)))
(*.f64 (*.f64 (*.f64 y y) (fabs.f64 y)) (/.f64 (fabs.f64 y) (*.f64 (*.f64 y y) z)))
(*.f64 (*.f64 y 1/2) (*.f64 y (/.f64 2 z)))
(*.f64 1/2 (*.f64 y (*.f64 y (/.f64 2 z))))
(*.f64 (/.f64 (fabs.f64 y) z) (fabs.f64 y))
(*.f64 (*.f64 y (/.f64 1/2 z)) (+.f64 y y))
(*.f64 (/.f64 1/2 z) (*.f64 y (+.f64 y y)))
(*.f64 (*.f64 2 (fabs.f64 y)) (/.f64 (fabs.f64 y) (+.f64 z z)))
(*.f64 (*.f64 (/.f64 1 z) 1/2) (*.f64 y (+.f64 y y)))
(*.f64 (*.f64 (/.f64 1 z) (*.f64 y 1/2)) (+.f64 y y))
(*.f64 (/.f64 (*.f64 y (/.f64 y z)) (*.f64 y y)) (*.f64 y y))
(*.f64 (/.f64 (*.f64 y y) (neg.f64 z)) -1)
(*.f64 (/.f64 (*.f64 y y) (+.f64 z z)) 2)
(*.f64 (/.f64 (fabs.f64 y) (+.f64 z z)) (*.f64 2 (fabs.f64 y)))
(*.f64 (/.f64 -1 z) (*.f64 y (neg.f64 y)))
(*.f64 (/.f64 y (*.f64 (*.f64 y y) z)) (*.f64 y (*.f64 y y)))
(*.f64 (/.f64 1 (*.f64 (*.f64 y y) z)) (*.f64 (*.f64 y y) (*.f64 y y)))
(*.f64 (/.f64 (fabs.f64 y) (*.f64 (*.f64 y y) z)) (*.f64 (*.f64 y y) (fabs.f64 y)))
(*.f64 (/.f64 (*.f64 y (/.f64 y z)) 2) 2)
(*.f64 (/.f64 1 (*.f64 z 4)) (*.f64 y (*.f64 y 4)))
(*.f64 (+.f64 (/.f64 1/2 z) (/.f64 1/2 z)) (*.f64 y y))
(pow.f64 (*.f64 y (/.f64 y z)) 1)
(neg.f64 (/.f64 (*.f64 y y) (neg.f64 z)))
(-.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 0)
(*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 1)
(*.f64 1 (+.f64 (*.f64 y (/.f64 y z)) x))
(*.f64 2 (/.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 2))
(*.f64 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 2) 1/2)
(*.f64 1/2 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 2))
(*.f64 1/2 (+.f64 (+.f64 x x) (*.f64 y (*.f64 y (/.f64 2 z)))))
(*.f64 (/.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 2) 2)
(/.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 1)
(/.f64 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 2) 2)
(/.f64 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 4) 4)
(/.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 4)) 8)
(/.f64 (+.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 4)) (*.f64 2 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 4))) 16)
(pow.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 1)
Outputs
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
x
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
x
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
x
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(/.f64 (pow.f64 y 2) z)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(/.f64 (pow.f64 y 2) z)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(/.f64 (pow.f64 y 2) z)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
x
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
x
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (*.f64 y (/.f64 y z)) 0)
(*.f64 y (/.f64 y z))
(+.f64 0 (*.f64 y (/.f64 y z)))
(*.f64 y (/.f64 y z))
(-.f64 (*.f64 y (/.f64 y z)) 0)
(*.f64 y (/.f64 y z))
(*.f64 y (/.f64 y z))
(*.f64 (*.f64 y y) (/.f64 1 z))
(*.f64 y (*.f64 y (/.f64 1 z)))
(*.f64 (*.f64 y y) (/.f64 (*.f64 y (/.f64 y z)) (*.f64 y y)))
(*.f64 y (/.f64 y z))
(*.f64 (*.f64 y (/.f64 y z)) 1)
(*.f64 y (/.f64 y z))
(*.f64 1 (*.f64 y (/.f64 y z)))
(*.f64 y (/.f64 y z))
(*.f64 (*.f64 y (+.f64 y y)) (/.f64 1/2 z))
(*.f64 y (*.f64 (+.f64 y y) (/.f64 1/2 z)))
(*.f64 (+.f64 y y) (*.f64 y (/.f64 1/2 z)))
(*.f64 (/.f64 1/2 z) (*.f64 2 (*.f64 y y)))
(*.f64 2 (*.f64 (*.f64 y y) (/.f64 1/2 z)))
(*.f64 (*.f64 y (+.f64 y y)) (*.f64 (/.f64 1 z) 1/2))
(*.f64 y (*.f64 y (/.f64 1 z)))
(*.f64 (*.f64 y y) (/.f64 1 z))
(*.f64 (/.f64 y z) y)
(*.f64 y (/.f64 y z))
(*.f64 (*.f64 (*.f64 y y) (*.f64 y y)) (/.f64 1 (*.f64 (*.f64 y y) z)))
(*.f64 (*.f64 y y) (*.f64 (*.f64 y y) (/.f64 1 (*.f64 z (*.f64 y y)))))
(*.f64 (*.f64 y y) (*.f64 (*.f64 y y) (/.f64 1 (*.f64 y (*.f64 y z)))))
(*.f64 (*.f64 y y) (*.f64 (*.f64 y y) (/.f64 (/.f64 1 z) (*.f64 y y))))
(*.f64 (*.f64 y y) (*.f64 y (*.f64 y (/.f64 1 (*.f64 y (*.f64 y z))))))
(*.f64 2 (/.f64 (*.f64 y y) (+.f64 z z)))
(*.f64 y (/.f64 y z))
(*.f64 2 (/.f64 (*.f64 y (/.f64 y z)) 2))
(*.f64 y (/.f64 y z))
(*.f64 2 (*.f64 (*.f64 y (/.f64 1/2 z)) y))
(*.f64 y (*.f64 (+.f64 y y) (/.f64 1/2 z)))
(*.f64 (+.f64 y y) (*.f64 y (/.f64 1/2 z)))
(*.f64 (/.f64 1/2 z) (*.f64 2 (*.f64 y y)))
(*.f64 2 (*.f64 (*.f64 y y) (/.f64 1/2 z)))
(*.f64 2 (*.f64 (*.f64 y 1/2) (/.f64 y z)))
(*.f64 y (/.f64 y z))
(*.f64 2 (*.f64 (/.f64 1/2 z) (*.f64 y y)))
(*.f64 y (*.f64 (+.f64 y y) (/.f64 1/2 z)))
(*.f64 (+.f64 y y) (*.f64 y (/.f64 1/2 z)))
(*.f64 (/.f64 1/2 z) (*.f64 2 (*.f64 y y)))
(*.f64 2 (*.f64 (*.f64 y y) (/.f64 1/2 z)))
(*.f64 (+.f64 y y) (*.f64 y (/.f64 1/2 z)))
(*.f64 y (*.f64 (+.f64 y y) (/.f64 1/2 z)))
(*.f64 (/.f64 1/2 z) (*.f64 2 (*.f64 y y)))
(*.f64 2 (*.f64 (*.f64 y y) (/.f64 1/2 z)))
(*.f64 (+.f64 y y) (*.f64 (/.f64 1 z) (*.f64 y 1/2)))
(*.f64 y (*.f64 y (/.f64 1 z)))
(*.f64 (*.f64 y y) (/.f64 1 z))
(*.f64 (+.f64 y y) (*.f64 1/2 (/.f64 y z)))
(*.f64 y (/.f64 y z))
(*.f64 (*.f64 y (*.f64 y (/.f64 2 z))) 1/2)
(*.f64 y (*.f64 (*.f64 y (/.f64 2 z)) 1/2))
(*.f64 y (*.f64 y (*.f64 1/2 (/.f64 2 z))))
(*.f64 (*.f64 y (*.f64 y 4)) (/.f64 1 (*.f64 z 4)))
(*.f64 y (*.f64 (*.f64 y 4) (/.f64 1 (*.f64 z 4))))
(*.f64 (*.f64 y 4) (*.f64 (/.f64 1/4 z) y))
(*.f64 y (*.f64 4 (*.f64 y (/.f64 1/4 z))))
(*.f64 (*.f64 y 4) (*.f64 y (/.f64 1/4 z)))
(*.f64 y (*.f64 (*.f64 y 4) (/.f64 1/4 z)))
(*.f64 (fabs.f64 y) (/.f64 (fabs.f64 y) z))
(*.f64 y (/.f64 y z))
(*.f64 (/.f64 1 z) (*.f64 y y))
(*.f64 y (*.f64 y (/.f64 1 z)))
(*.f64 (*.f64 y y) (/.f64 1 z))
(*.f64 (*.f64 y (neg.f64 y)) (/.f64 -1 z))
(*.f64 y (/.f64 y z))
(*.f64 -1 (/.f64 (*.f64 y y) (neg.f64 z)))
(*.f64 y (/.f64 y z))
(*.f64 (*.f64 y (/.f64 2 z)) (*.f64 y 1/2))
(*.f64 y (*.f64 (*.f64 y (/.f64 2 z)) 1/2))
(*.f64 y (*.f64 y (*.f64 1/2 (/.f64 2 z))))
(*.f64 (*.f64 y (*.f64 y y)) (/.f64 y (*.f64 (*.f64 y y) z)))
(*.f64 y (/.f64 y z))
(*.f64 (*.f64 (*.f64 y y) (fabs.f64 y)) (/.f64 (fabs.f64 y) (*.f64 (*.f64 y y) z)))
(*.f64 y (/.f64 y z))
(*.f64 (*.f64 y 1/2) (*.f64 y (/.f64 2 z)))
(*.f64 y (*.f64 (*.f64 y (/.f64 2 z)) 1/2))
(*.f64 y (*.f64 y (*.f64 1/2 (/.f64 2 z))))
(*.f64 1/2 (*.f64 y (*.f64 y (/.f64 2 z))))
(*.f64 y (*.f64 (*.f64 y (/.f64 2 z)) 1/2))
(*.f64 y (*.f64 y (*.f64 1/2 (/.f64 2 z))))
(*.f64 (/.f64 (fabs.f64 y) z) (fabs.f64 y))
(*.f64 y (/.f64 y z))
(*.f64 (*.f64 y (/.f64 1/2 z)) (+.f64 y y))
(*.f64 y (*.f64 (+.f64 y y) (/.f64 1/2 z)))
(*.f64 (+.f64 y y) (*.f64 y (/.f64 1/2 z)))
(*.f64 (/.f64 1/2 z) (*.f64 2 (*.f64 y y)))
(*.f64 2 (*.f64 (*.f64 y y) (/.f64 1/2 z)))
(*.f64 (/.f64 1/2 z) (*.f64 y (+.f64 y y)))
(*.f64 y (*.f64 (+.f64 y y) (/.f64 1/2 z)))
(*.f64 (+.f64 y y) (*.f64 y (/.f64 1/2 z)))
(*.f64 (/.f64 1/2 z) (*.f64 2 (*.f64 y y)))
(*.f64 2 (*.f64 (*.f64 y y) (/.f64 1/2 z)))
(*.f64 (*.f64 2 (fabs.f64 y)) (/.f64 (fabs.f64 y) (+.f64 z z)))
(*.f64 y (/.f64 y z))
(*.f64 (*.f64 (/.f64 1 z) 1/2) (*.f64 y (+.f64 y y)))
(*.f64 y (*.f64 y (/.f64 1 z)))
(*.f64 (*.f64 y y) (/.f64 1 z))
(*.f64 (*.f64 (/.f64 1 z) (*.f64 y 1/2)) (+.f64 y y))
(*.f64 y (*.f64 y (/.f64 1 z)))
(*.f64 (*.f64 y y) (/.f64 1 z))
(*.f64 (/.f64 (*.f64 y (/.f64 y z)) (*.f64 y y)) (*.f64 y y))
(*.f64 y (/.f64 y z))
(*.f64 (/.f64 (*.f64 y y) (neg.f64 z)) -1)
(*.f64 y (/.f64 y z))
(*.f64 (/.f64 (*.f64 y y) (+.f64 z z)) 2)
(*.f64 y (/.f64 y z))
(*.f64 (/.f64 (fabs.f64 y) (+.f64 z z)) (*.f64 2 (fabs.f64 y)))
(*.f64 y (/.f64 y z))
(*.f64 (/.f64 -1 z) (*.f64 y (neg.f64 y)))
(*.f64 y (/.f64 y z))
(*.f64 (/.f64 y (*.f64 (*.f64 y y) z)) (*.f64 y (*.f64 y y)))
(*.f64 y (/.f64 y z))
(*.f64 (/.f64 1 (*.f64 (*.f64 y y) z)) (*.f64 (*.f64 y y) (*.f64 y y)))
(*.f64 (*.f64 y y) (*.f64 (*.f64 y y) (/.f64 1 (*.f64 z (*.f64 y y)))))
(*.f64 (*.f64 y y) (*.f64 (*.f64 y y) (/.f64 1 (*.f64 y (*.f64 y z)))))
(*.f64 (*.f64 y y) (*.f64 (*.f64 y y) (/.f64 (/.f64 1 z) (*.f64 y y))))
(*.f64 (*.f64 y y) (*.f64 y (*.f64 y (/.f64 1 (*.f64 y (*.f64 y z))))))
(*.f64 (/.f64 (fabs.f64 y) (*.f64 (*.f64 y y) z)) (*.f64 (*.f64 y y) (fabs.f64 y)))
(*.f64 y (/.f64 y z))
(*.f64 (/.f64 (*.f64 y (/.f64 y z)) 2) 2)
(*.f64 y (/.f64 y z))
(*.f64 (/.f64 1 (*.f64 z 4)) (*.f64 y (*.f64 y 4)))
(*.f64 y (*.f64 (*.f64 y 4) (/.f64 1 (*.f64 z 4))))
(*.f64 (*.f64 y 4) (*.f64 (/.f64 1/4 z) y))
(*.f64 y (*.f64 4 (*.f64 y (/.f64 1/4 z))))
(*.f64 (*.f64 y 4) (*.f64 y (/.f64 1/4 z)))
(*.f64 y (*.f64 (*.f64 y 4) (/.f64 1/4 z)))
(*.f64 (+.f64 (/.f64 1/2 z) (/.f64 1/2 z)) (*.f64 y y))
(*.f64 y (*.f64 (+.f64 y y) (/.f64 1/2 z)))
(*.f64 (+.f64 y y) (*.f64 y (/.f64 1/2 z)))
(*.f64 (/.f64 1/2 z) (*.f64 2 (*.f64 y y)))
(*.f64 2 (*.f64 (*.f64 y y) (/.f64 1/2 z)))
(pow.f64 (*.f64 y (/.f64 y z)) 1)
(*.f64 y (/.f64 y z))
(neg.f64 (/.f64 (*.f64 y y) (neg.f64 z)))
(*.f64 y (/.f64 y z))
(-.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 0)
(+.f64 x (*.f64 y (/.f64 y z)))
(*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 1)
(+.f64 x (*.f64 y (/.f64 y z)))
(*.f64 1 (+.f64 (*.f64 y (/.f64 y z)) x))
(+.f64 x (*.f64 y (/.f64 y z)))
(*.f64 2 (/.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 2))
(+.f64 x (*.f64 y (/.f64 y z)))
(*.f64 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 2) 1/2)
(+.f64 x (*.f64 y (/.f64 y z)))
(*.f64 1/2 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 2))
(+.f64 x (*.f64 y (/.f64 y z)))
(*.f64 1/2 (+.f64 (+.f64 x x) (*.f64 y (*.f64 y (/.f64 2 z)))))
(*.f64 1/2 (+.f64 (*.f64 y (*.f64 y (/.f64 2 z))) (+.f64 x x)))
(*.f64 1/2 (+.f64 (*.f64 (*.f64 y y) (/.f64 2 z)) (+.f64 x x)))
(*.f64 (/.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 2) 2)
(+.f64 x (*.f64 y (/.f64 y z)))
(/.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 1)
(+.f64 x (*.f64 y (/.f64 y z)))
(/.f64 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 2) 2)
(+.f64 x (*.f64 y (/.f64 y z)))
(/.f64 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 4) 4)
(+.f64 x (*.f64 y (/.f64 y z)))
(/.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 4)) 8)
(+.f64 x (*.f64 y (/.f64 y z)))
(/.f64 (+.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 4)) (*.f64 2 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 4))) 16)
(+.f64 x (*.f64 y (/.f64 y z)))
(pow.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 1)
(+.f64 x (*.f64 y (/.f64 y z)))

eval162.0ms (3.3%)

Compiler

Compiled 2647 to 1257 computations (52.5% saved)

prune104.0ms (2.1%)

Pruning

6 alts after pruning (4 fresh and 2 done)

PrunedKeptTotal
New2144218
Fresh000
Picked011
Done011
Total2146220
Error
0.0b
Counts
220 → 6
Alt Table
Click to see full alt table
StatusErrorProgram
6.7b
(+.f64 x (/.f64 (*.f64 y y) z))
0.1b
(+.f64 x (/.f64 y (/.f64 z y)))
0.1b
(+.f64 x (/.f64 -1 (/.f64 (/.f64 z (neg.f64 y)) y)))
0.1b
(+.f64 x (*.f64 y (/.f64 y z)))
0.1b
(+.f64 x (*.f64 y (*.f64 y (/.f64 1 z))))
18.9b
x
Compiler

Compiled 59 to 38 computations (35.6% saved)

localize74.0ms (1.5%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(+.f64 x (*.f64 y (*.f64 y (/.f64 1 z))))
0.1b
(*.f64 y (*.f64 y (/.f64 1 z)))
0.3b
(*.f64 y (/.f64 1 z))
Compiler

Compiled 31 to 18 computations (41.9% saved)

series3.0ms (0.1%)

Counts
3 → 84
Calls

21 calls:

TimeVariablePointExpression
1.0ms
z
@0
(*.f64 y (/.f64 1 z))
0.0ms
y
@inf
(*.f64 y (/.f64 1 z))
0.0ms
y
@-inf
(*.f64 y (/.f64 1 z))
0.0ms
z
@-inf
(*.f64 y (/.f64 1 z))
0.0ms
y
@0
(*.f64 y (/.f64 1 z))

rewrite108.0ms (2.2%)

Algorithm
batch-egg-rewrite
Rules
1756×rational.json-1
1756×rational.json-2
1756×rational.json-3
1372×rational.json-simplify-35
872×rational.json-4
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01057
17839
217639
336839
483239
5269939
6694439
Stop Event
node limit
Counts
3 → 160
Calls
Call 1
Inputs
(*.f64 y (/.f64 1 z))
(*.f64 y (*.f64 y (/.f64 1 z)))
(+.f64 x (*.f64 y (*.f64 y (/.f64 1 z))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 y z) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 y z))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (/.f64 y z) 1/2) (*.f64 (/.f64 y z) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 y z) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 y z)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 y (/.f64 (*.f64 z z) z))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 z y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 1 z) (/.f64 1 y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 y z) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 2 (*.f64 z (/.f64 2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 4 (/.f64 4 (/.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 2 z) (/.f64 2 y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 2 z) (+.f64 (/.f64 1 y) (/.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 y y) (+.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (/.f64 2 z)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1 (/.f64 z (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1 (neg.f64 (/.f64 z y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 8 (*.f64 2 (/.f64 4 (/.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 8 (/.f64 (*.f64 z 8) y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 4 z) (+.f64 (/.f64 2 y) (/.f64 2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -2 (neg.f64 (*.f64 z (/.f64 2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -2 (+.f64 (neg.f64 (/.f64 z y)) (neg.f64 (/.f64 z y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -2 (+.f64 (/.f64 z (neg.f64 y)) (/.f64 z (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y 4) (*.f64 z 4))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (/.f64 4 z)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1/2 (/.f64 (/.f64 z 2) y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 y) (neg.f64 z))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 z y) (*.f64 z (/.f64 (/.f64 z y) y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 z (/.f64 2 y)) (*.f64 (/.f64 z y) (*.f64 z (/.f64 2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 16 (+.f64 (*.f64 2 (/.f64 4 (/.f64 y z))) (*.f64 2 (/.f64 4 (/.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 16 (+.f64 (/.f64 (*.f64 z 8) y) (/.f64 (*.f64 z 8) y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y 8) (*.f64 z 8))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -4 (+.f64 (neg.f64 (*.f64 z (/.f64 2 y))) (neg.f64 (*.f64 z (/.f64 2 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -4 (-.f64 0 (/.f64 4 (/.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 y z) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y -2) (*.f64 z -2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 4 (/.f64 y z)) (*.f64 (*.f64 z (/.f64 2 y)) (*.f64 z (/.f64 2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 4 (/.f64 y z)) (+.f64 (*.f64 (/.f64 z y) (*.f64 z (/.f64 2 y))) (*.f64 (/.f64 z y) (*.f64 z (/.f64 2 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 y z) 1/2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y 1/2) (/.f64 z 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y 1/2) (/.f64 (*.f64 z z) (+.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 y 8)) (*.f64 2 (*.f64 z 8)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 y -2)) (*.f64 (neg.f64 z) 4))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 y 8)) (neg.f64 (*.f64 z 8)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1/2 (-.f64 0 (/.f64 (/.f64 z 2) y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (/.f64 y z) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 y 8) z) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 y (neg.f64 z)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 y (*.f64 z 4)) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (/.f64 z y)) (-.f64 0 (*.f64 z (/.f64 (/.f64 z y) y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 y 4)) (neg.f64 (*.f64 z 4)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 y -2)) (+.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (/.f64 y (*.f64 z 4)) (/.f64 y (*.f64 z 4))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (neg.f64 (*.f64 y 4)) (neg.f64 (*.f64 y 4))) (*.f64 2 (neg.f64 (*.f64 z 4))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 y -2)) (*.f64 2 (*.f64 y -2))) (*.f64 2 (*.f64 (neg.f64 z) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 (/.f64 y z) 8)) (*.f64 2 (*.f64 (/.f64 y z) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (neg.f64 (*.f64 y -2)) (neg.f64 (*.f64 y -2))) (*.f64 z 4))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (/.f64 (*.f64 y 8) z) (/.f64 (*.f64 y 8) z)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (/.f64 y (neg.f64 z)) (/.f64 y (neg.f64 z))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (/.f64 1 z)) (-.f64 0 (/.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (/.f64 2 z)) (-.f64 0 (/.f64 2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 y 1/2)) (-.f64 0 (/.f64 z 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (neg.f64 (*.f64 y 4))) (*.f64 z 4))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (neg.f64 (*.f64 y 4))) (-.f64 0 (neg.f64 (*.f64 z 4))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 2 (*.f64 y -2))) (-.f64 0 (*.f64 (neg.f64 z) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (neg.f64 (*.f64 y -2))) (*.f64 z -2))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 y z) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 y (neg.f64 z)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y (/.f64 y z)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 y (/.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (/.f64 y z) (*.f64 y 1/2)) (*.f64 (/.f64 y z) (*.f64 y 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y (/.f64 y z)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 y (/.f64 z y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (/.f64 z y) y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 z (*.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 1 z) (/.f64 (/.f64 (*.f64 y y) (*.f64 y y)) (*.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 1 z) (/.f64 (+.f64 (/.f64 1 (*.f64 y y)) (/.f64 1 (*.f64 y y))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 y z) (/.f64 1 y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (/.f64 y z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 2 (/.f64 (*.f64 z (/.f64 2 y)) y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 2 (/.f64 (+.f64 z z) (*.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 2 (+.f64 (/.f64 (/.f64 z y) y) (/.f64 (/.f64 z y) y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 2 (+.f64 (/.f64 z (*.f64 y y)) (/.f64 z (*.f64 y y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 4 (/.f64 (/.f64 4 (/.f64 y z)) y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 4 (/.f64 (*.f64 z 4) (*.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 4 (+.f64 (/.f64 (*.f64 z (/.f64 2 y)) y) (/.f64 (*.f64 z (/.f64 2 y)) y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 4 (+.f64 (/.f64 (+.f64 z z) (*.f64 y y)) (/.f64 (+.f64 z z) (*.f64 y y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (*.f64 y (/.f64 2 z))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 y y) (*.f64 z (/.f64 2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (/.f64 2 z)) (/.f64 2 y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (/.f64 2 z)) (+.f64 (/.f64 1 y) (/.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y y) z)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y y) (/.f64 (*.f64 z z) z))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 8 (/.f64 (*.f64 z 8) (*.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 8 (+.f64 (/.f64 (/.f64 4 (/.f64 y z)) y) (/.f64 (/.f64 4 (/.f64 y z)) y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 8 (+.f64 (/.f64 (*.f64 z 4) (*.f64 y y)) (/.f64 (*.f64 z 4) (*.f64 y y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y 4) (/.f64 4 (/.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 y z) (*.f64 y 4)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (/.f64 4 z)) (/.f64 4 y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (/.f64 4 z)) (+.f64 (/.f64 2 y) (/.f64 2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 y) (/.f64 z (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 y) (neg.f64 (/.f64 z y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 y y) (*.f64 y y)) (*.f64 z (*.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 16 (+.f64 (/.f64 (*.f64 z 8) (*.f64 y y)) (/.f64 (*.f64 z 8) (*.f64 y y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 y (/.f64 y z)) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (+.f64 y y)) (+.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y 8) (*.f64 2 (/.f64 4 (/.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y 8) (*.f64 8 (/.f64 z y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 y z) 8) (+.f64 (/.f64 4 y) (/.f64 4 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y -2) (neg.f64 (*.f64 z (/.f64 2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y -2) (+.f64 (neg.f64 (/.f64 z y)) (neg.f64 (/.f64 z y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y -2) (+.f64 (/.f64 z (neg.f64 y)) (/.f64 z (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y 1/2) (/.f64 (/.f64 z 2) y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 y z) (*.f64 y 1/2)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 y y)) (neg.f64 z))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (*.f64 y (/.f64 y z)) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (*.f64 y y) (*.f64 y y))) (+.f64 (*.f64 z (*.f64 y y)) (*.f64 z (*.f64 y y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 y 8)) (+.f64 (*.f64 8 (/.f64 z y)) (*.f64 8 (/.f64 z y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (*.f64 y 4)) (*.f64 z 4))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 y 8) (/.f64 z y)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (*.f64 y y) (*.f64 y y)) z) (*.f64 y y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 y y) 2) (/.f64 z 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 y y) (*.f64 z 4)) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (/.f64 y z)) (-.f64 0 (/.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 y (/.f64 2 z))) (-.f64 0 (/.f64 2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 y 4)) (-.f64 0 (/.f64 4 (/.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (neg.f64 (*.f64 y y)) (neg.f64 (*.f64 y y))) (*.f64 z -2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 (*.f64 y (/.f64 y z)) 8)) (*.f64 2 (*.f64 (*.f64 y (/.f64 y z)) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (/.f64 (*.f64 y 8) (/.f64 z y)) (/.f64 (*.f64 y 8) (/.f64 z y))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (/.f64 (*.f64 (*.f64 y y) (*.f64 y y)) z) (/.f64 (*.f64 (*.f64 y y) (*.f64 y y)) z)) (*.f64 y (+.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (/.f64 (*.f64 y y) 2) (/.f64 (*.f64 y y) 2)) z)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (/.f64 (*.f64 y y) (*.f64 z 4)) (/.f64 (*.f64 y y) (*.f64 z 4))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 y (+.f64 y y))) (*.f64 z -2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 y 1/2)) (-.f64 0 (/.f64 (/.f64 z 2) y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (neg.f64 (*.f64 y y))) z)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (/.f64 (*.f64 (*.f64 y y) (*.f64 y y)) z)) (neg.f64 (*.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (/.f64 (*.f64 y y) 2)) (-.f64 0 (/.f64 z 2)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 y (/.f64 y z)) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 (*.f64 y (/.f64 y z)) x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (+.f64 (*.f64 x 1/2) (*.f64 (/.f64 y z) (*.f64 y 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (+.f64 (*.f64 (/.f64 y z) (*.f64 y 1/2)) (*.f64 x 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (+.f64 (+.f64 x x) (*.f64 y (*.f64 y (/.f64 2 z)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (+.f64 (*.f64 y (*.f64 y (/.f64 2 z))) (+.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 8)) (*.f64 2 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 1)))))

simplify303.0ms (6.2%)

Algorithm
egg-herbie
Rules
1048×rational.json-simplify-35
1006×rational.json-simplify-2
996×rational.json-simplify-50
816×rational.json-simplify-1
572×rational.json-simplify-51
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03293046
110393022
234242998
357382998
477092998
Stop Event
node limit
Counts
244 → 177
Calls
Call 1
Inputs
(/.f64 y z)
(/.f64 y z)
(/.f64 y z)
(/.f64 y z)
(/.f64 y z)
(/.f64 y z)
(/.f64 y z)
(/.f64 y z)
(/.f64 y z)
(/.f64 y z)
(/.f64 y z)
(/.f64 y z)
(/.f64 y z)
(/.f64 y z)
(/.f64 y z)
(/.f64 y z)
(/.f64 y z)
(/.f64 y z)
(/.f64 y z)
(/.f64 y z)
(/.f64 y z)
(/.f64 y z)
(/.f64 y z)
(/.f64 y z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
x
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
x
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
x
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(/.f64 (pow.f64 y 2) z)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(/.f64 (pow.f64 y 2) z)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(/.f64 (pow.f64 y 2) z)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
x
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
x
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 y z) 0)
(+.f64 0 (/.f64 y z))
(+.f64 (*.f64 (/.f64 y z) 1/2) (*.f64 (/.f64 y z) 1/2))
(-.f64 (/.f64 y z) 0)
(/.f64 y z)
(/.f64 y (/.f64 (*.f64 z z) z))
(/.f64 1 (/.f64 z y))
(/.f64 (/.f64 1 z) (/.f64 1 y))
(/.f64 (/.f64 y z) 1)
(/.f64 2 (*.f64 z (/.f64 2 y)))
(/.f64 4 (/.f64 4 (/.f64 y z)))
(/.f64 (/.f64 2 z) (/.f64 2 y))
(/.f64 (/.f64 2 z) (+.f64 (/.f64 1 y) (/.f64 1 y)))
(/.f64 (+.f64 y y) (+.f64 z z))
(/.f64 (*.f64 y (/.f64 2 z)) 2)
(/.f64 -1 (/.f64 z (neg.f64 y)))
(/.f64 -1 (neg.f64 (/.f64 z y)))
(/.f64 8 (*.f64 2 (/.f64 4 (/.f64 y z))))
(/.f64 8 (/.f64 (*.f64 z 8) y))
(/.f64 (/.f64 4 z) (+.f64 (/.f64 2 y) (/.f64 2 y)))
(/.f64 -2 (neg.f64 (*.f64 z (/.f64 2 y))))
(/.f64 -2 (+.f64 (neg.f64 (/.f64 z y)) (neg.f64 (/.f64 z y))))
(/.f64 -2 (+.f64 (/.f64 z (neg.f64 y)) (/.f64 z (neg.f64 y))))
(/.f64 (*.f64 y 4) (*.f64 z 4))
(/.f64 (*.f64 y (/.f64 4 z)) 4)
(/.f64 1/2 (/.f64 (/.f64 z 2) y))
(/.f64 (neg.f64 y) (neg.f64 z))
(/.f64 (/.f64 z y) (*.f64 z (/.f64 (/.f64 z y) y)))
(/.f64 (*.f64 z (/.f64 2 y)) (*.f64 (/.f64 z y) (*.f64 z (/.f64 2 y))))
(/.f64 16 (+.f64 (*.f64 2 (/.f64 4 (/.f64 y z))) (*.f64 2 (/.f64 4 (/.f64 y z)))))
(/.f64 16 (+.f64 (/.f64 (*.f64 z 8) y) (/.f64 (*.f64 z 8) y)))
(/.f64 (*.f64 y 8) (*.f64 z 8))
(/.f64 -4 (+.f64 (neg.f64 (*.f64 z (/.f64 2 y))) (neg.f64 (*.f64 z (/.f64 2 y)))))
(/.f64 -4 (-.f64 0 (/.f64 4 (/.f64 y z))))
(/.f64 (*.f64 (/.f64 y z) 8) 8)
(/.f64 (*.f64 y -2) (*.f64 z -2))
(/.f64 (/.f64 4 (/.f64 y z)) (*.f64 (*.f64 z (/.f64 2 y)) (*.f64 z (/.f64 2 y))))
(/.f64 (/.f64 4 (/.f64 y z)) (+.f64 (*.f64 (/.f64 z y) (*.f64 z (/.f64 2 y))) (*.f64 (/.f64 z y) (*.f64 z (/.f64 2 y)))))
(/.f64 (*.f64 (/.f64 y z) 1/2) 1/2)
(/.f64 (*.f64 y 1/2) (/.f64 z 2))
(/.f64 (*.f64 y 1/2) (/.f64 (*.f64 z z) (+.f64 z z)))
(/.f64 (*.f64 2 (*.f64 y 8)) (*.f64 2 (*.f64 z 8)))
(/.f64 (*.f64 2 (*.f64 y -2)) (*.f64 (neg.f64 z) 4))
(/.f64 (neg.f64 (*.f64 y 8)) (neg.f64 (*.f64 z 8)))
(/.f64 -1/2 (-.f64 0 (/.f64 (/.f64 z 2) y)))
(/.f64 (*.f64 2 (*.f64 (/.f64 y z) 8)) 16)
(/.f64 (/.f64 (*.f64 y 8) z) 8)
(/.f64 (/.f64 y (neg.f64 z)) -1)
(/.f64 (/.f64 y (*.f64 z 4)) 1/4)
(/.f64 (neg.f64 (/.f64 z y)) (-.f64 0 (*.f64 z (/.f64 (/.f64 z y) y))))
(/.f64 (neg.f64 (*.f64 y 4)) (neg.f64 (*.f64 z 4)))
(/.f64 (neg.f64 (*.f64 y -2)) (+.f64 z z))
(/.f64 (+.f64 (/.f64 y (*.f64 z 4)) (/.f64 y (*.f64 z 4))) 1/2)
(/.f64 (+.f64 (neg.f64 (*.f64 y 4)) (neg.f64 (*.f64 y 4))) (*.f64 2 (neg.f64 (*.f64 z 4))))
(/.f64 (+.f64 (*.f64 2 (*.f64 y -2)) (*.f64 2 (*.f64 y -2))) (*.f64 2 (*.f64 (neg.f64 z) 4)))
(/.f64 (+.f64 (*.f64 2 (*.f64 (/.f64 y z) 8)) (*.f64 2 (*.f64 (/.f64 y z) 8))) 32)
(/.f64 (+.f64 (neg.f64 (*.f64 y -2)) (neg.f64 (*.f64 y -2))) (*.f64 z 4))
(/.f64 (+.f64 (/.f64 (*.f64 y 8) z) (/.f64 (*.f64 y 8) z)) 16)
(/.f64 (+.f64 (/.f64 y (neg.f64 z)) (/.f64 y (neg.f64 z))) -2)
(/.f64 (neg.f64 (/.f64 1 z)) (-.f64 0 (/.f64 1 y)))
(/.f64 (neg.f64 (/.f64 2 z)) (-.f64 0 (/.f64 2 y)))
(/.f64 (neg.f64 (*.f64 y 1/2)) (-.f64 0 (/.f64 z 2)))
(/.f64 (neg.f64 (neg.f64 (*.f64 y 4))) (*.f64 z 4))
(/.f64 (neg.f64 (neg.f64 (*.f64 y 4))) (-.f64 0 (neg.f64 (*.f64 z 4))))
(/.f64 (neg.f64 (*.f64 2 (*.f64 y -2))) (-.f64 0 (*.f64 (neg.f64 z) 4)))
(/.f64 (neg.f64 (neg.f64 (*.f64 y -2))) (*.f64 z -2))
(pow.f64 (/.f64 y z) 1)
(neg.f64 (/.f64 y (neg.f64 z)))
(+.f64 (*.f64 y (/.f64 y z)) 0)
(+.f64 0 (*.f64 y (/.f64 y z)))
(+.f64 (*.f64 (/.f64 y z) (*.f64 y 1/2)) (*.f64 (/.f64 y z) (*.f64 y 1/2)))
(-.f64 (*.f64 y (/.f64 y z)) 0)
(/.f64 y (/.f64 z y))
(/.f64 1 (/.f64 (/.f64 z y) y))
(/.f64 1 (/.f64 z (*.f64 y y)))
(/.f64 (/.f64 1 z) (/.f64 (/.f64 (*.f64 y y) (*.f64 y y)) (*.f64 y y)))
(/.f64 (/.f64 1 z) (/.f64 (+.f64 (/.f64 1 (*.f64 y y)) (/.f64 1 (*.f64 y y))) 2))
(/.f64 (/.f64 y z) (/.f64 1 y))
(/.f64 (*.f64 y (/.f64 y z)) 1)
(/.f64 2 (/.f64 (*.f64 z (/.f64 2 y)) y))
(/.f64 2 (/.f64 (+.f64 z z) (*.f64 y y)))
(/.f64 2 (+.f64 (/.f64 (/.f64 z y) y) (/.f64 (/.f64 z y) y)))
(/.f64 2 (+.f64 (/.f64 z (*.f64 y y)) (/.f64 z (*.f64 y y))))
(/.f64 4 (/.f64 (/.f64 4 (/.f64 y z)) y))
(/.f64 4 (/.f64 (*.f64 z 4) (*.f64 y y)))
(/.f64 4 (+.f64 (/.f64 (*.f64 z (/.f64 2 y)) y) (/.f64 (*.f64 z (/.f64 2 y)) y)))
(/.f64 4 (+.f64 (/.f64 (+.f64 z z) (*.f64 y y)) (/.f64 (+.f64 z z) (*.f64 y y))))
(/.f64 (*.f64 y (*.f64 y (/.f64 2 z))) 2)
(/.f64 (+.f64 y y) (*.f64 z (/.f64 2 y)))
(/.f64 (*.f64 y (/.f64 2 z)) (/.f64 2 y))
(/.f64 (*.f64 y (/.f64 2 z)) (+.f64 (/.f64 1 y) (/.f64 1 y)))
(/.f64 (*.f64 y y) z)
(/.f64 (*.f64 y y) (/.f64 (*.f64 z z) z))
(/.f64 8 (/.f64 (*.f64 z 8) (*.f64 y y)))
(/.f64 8 (+.f64 (/.f64 (/.f64 4 (/.f64 y z)) y) (/.f64 (/.f64 4 (/.f64 y z)) y)))
(/.f64 8 (+.f64 (/.f64 (*.f64 z 4) (*.f64 y y)) (/.f64 (*.f64 z 4) (*.f64 y y))))
(/.f64 (*.f64 y 4) (/.f64 4 (/.f64 y z)))
(/.f64 (*.f64 (/.f64 y z) (*.f64 y 4)) 4)
(/.f64 (*.f64 y (/.f64 4 z)) (/.f64 4 y))
(/.f64 (*.f64 y (/.f64 4 z)) (+.f64 (/.f64 2 y) (/.f64 2 y)))
(/.f64 (neg.f64 y) (/.f64 z (neg.f64 y)))
(/.f64 (neg.f64 y) (neg.f64 (/.f64 z y)))
(/.f64 (*.f64 (*.f64 y y) (*.f64 y y)) (*.f64 z (*.f64 y y)))
(/.f64 16 (+.f64 (/.f64 (*.f64 z 8) (*.f64 y y)) (/.f64 (*.f64 z 8) (*.f64 y y))))
(/.f64 (*.f64 (*.f64 y (/.f64 y z)) 8) 8)
(/.f64 (*.f64 y (+.f64 y y)) (+.f64 z z))
(/.f64 (*.f64 y 8) (*.f64 2 (/.f64 4 (/.f64 y z))))
(/.f64 (*.f64 y 8) (*.f64 8 (/.f64 z y)))
(/.f64 (*.f64 (/.f64 y z) 8) (+.f64 (/.f64 4 y) (/.f64 4 y)))
(/.f64 (*.f64 y -2) (neg.f64 (*.f64 z (/.f64 2 y))))
(/.f64 (*.f64 y -2) (+.f64 (neg.f64 (/.f64 z y)) (neg.f64 (/.f64 z y))))
(/.f64 (*.f64 y -2) (+.f64 (/.f64 z (neg.f64 y)) (/.f64 z (neg.f64 y))))
(/.f64 (*.f64 y 1/2) (/.f64 (/.f64 z 2) y))
(/.f64 (*.f64 (/.f64 y z) (*.f64 y 1/2)) 1/2)
(/.f64 (neg.f64 (*.f64 y y)) (neg.f64 z))
(/.f64 (*.f64 2 (*.f64 (*.f64 y (/.f64 y z)) 8)) 16)
(/.f64 (*.f64 2 (*.f64 (*.f64 y y) (*.f64 y y))) (+.f64 (*.f64 z (*.f64 y y)) (*.f64 z (*.f64 y y))))
(/.f64 (*.f64 2 (*.f64 y 8)) (+.f64 (*.f64 8 (/.f64 z y)) (*.f64 8 (/.f64 z y))))
(/.f64 (*.f64 y (*.f64 y 4)) (*.f64 z 4))
(/.f64 (/.f64 (*.f64 y 8) (/.f64 z y)) 8)
(/.f64 (/.f64 (*.f64 (*.f64 y y) (*.f64 y y)) z) (*.f64 y y))
(/.f64 (/.f64 (*.f64 y y) 2) (/.f64 z 2))
(/.f64 (/.f64 (*.f64 y y) (*.f64 z 4)) 1/4)
(/.f64 (neg.f64 (/.f64 y z)) (-.f64 0 (/.f64 1 y)))
(/.f64 (neg.f64 (*.f64 y (/.f64 2 z))) (-.f64 0 (/.f64 2 y)))
(/.f64 (neg.f64 (*.f64 y 4)) (-.f64 0 (/.f64 4 (/.f64 y z))))
(/.f64 (+.f64 (neg.f64 (*.f64 y y)) (neg.f64 (*.f64 y y))) (*.f64 z -2))
(/.f64 (+.f64 (*.f64 2 (*.f64 (*.f64 y (/.f64 y z)) 8)) (*.f64 2 (*.f64 (*.f64 y (/.f64 y z)) 8))) 32)
(/.f64 (+.f64 (/.f64 (*.f64 y 8) (/.f64 z y)) (/.f64 (*.f64 y 8) (/.f64 z y))) 16)
(/.f64 (+.f64 (/.f64 (*.f64 (*.f64 y y) (*.f64 y y)) z) (/.f64 (*.f64 (*.f64 y y) (*.f64 y y)) z)) (*.f64 y (+.f64 y y)))
(/.f64 (+.f64 (/.f64 (*.f64 y y) 2) (/.f64 (*.f64 y y) 2)) z)
(/.f64 (+.f64 (/.f64 (*.f64 y y) (*.f64 z 4)) (/.f64 (*.f64 y y) (*.f64 z 4))) 1/2)
(/.f64 (neg.f64 (*.f64 y (+.f64 y y))) (*.f64 z -2))
(/.f64 (neg.f64 (*.f64 y 1/2)) (-.f64 0 (/.f64 (/.f64 z 2) y)))
(/.f64 (neg.f64 (neg.f64 (*.f64 y y))) z)
(/.f64 (neg.f64 (/.f64 (*.f64 (*.f64 y y) (*.f64 y y)) z)) (neg.f64 (*.f64 y y)))
(/.f64 (neg.f64 (/.f64 (*.f64 y y) 2)) (-.f64 0 (/.f64 z 2)))
(pow.f64 (*.f64 y (/.f64 y z)) 1)
(-.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 0)
(*.f64 1 (+.f64 (*.f64 y (/.f64 y z)) x))
(*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 1)
(*.f64 2 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 1/2))
(*.f64 2 (+.f64 (*.f64 x 1/2) (*.f64 (/.f64 y z) (*.f64 y 1/2))))
(*.f64 2 (+.f64 (*.f64 (/.f64 y z) (*.f64 y 1/2)) (*.f64 x 1/2)))
(*.f64 4 (/.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 4))
(*.f64 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 2) 1/2)
(*.f64 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 4) 1/4)
(*.f64 1/2 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 2))
(*.f64 1/2 (+.f64 (+.f64 x x) (*.f64 y (*.f64 y (/.f64 2 z)))))
(*.f64 1/2 (+.f64 (*.f64 y (*.f64 y (/.f64 2 z))) (+.f64 x x)))
(*.f64 1/4 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 4))
(*.f64 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 1/2) 2)
(*.f64 (/.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 4) 4)
(/.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 1)
(/.f64 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 2) 2)
(/.f64 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 4) 4)
(/.f64 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 8) 8)
(/.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 8)) 16)
(/.f64 (+.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 8)) (*.f64 2 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 8))) 32)
(pow.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 1)
Outputs
(/.f64 y z)
(/.f64 y z)
(/.f64 y z)
(/.f64 y z)
(/.f64 y z)
(/.f64 y z)
(/.f64 y z)
(/.f64 y z)
(/.f64 y z)
(/.f64 y z)
(/.f64 y z)
(/.f64 y z)
(/.f64 y z)
(/.f64 y z)
(/.f64 y z)
(/.f64 y z)
(/.f64 y z)
(/.f64 y z)
(/.f64 y z)
(/.f64 y z)
(/.f64 y z)
(/.f64 y z)
(/.f64 y z)
(/.f64 y z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
x
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
x
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
x
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(/.f64 (pow.f64 y 2) z)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(/.f64 (pow.f64 y 2) z)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(/.f64 (pow.f64 y 2) z)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
x
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
x
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 y z) 0)
(/.f64 y z)
(+.f64 0 (/.f64 y z))
(/.f64 y z)
(+.f64 (*.f64 (/.f64 y z) 1/2) (*.f64 (/.f64 y z) 1/2))
(/.f64 y z)
(-.f64 (/.f64 y z) 0)
(/.f64 y z)
(/.f64 y z)
(/.f64 y (/.f64 (*.f64 z z) z))
(/.f64 y z)
(/.f64 1 (/.f64 z y))
(/.f64 y z)
(/.f64 (/.f64 1 z) (/.f64 1 y))
(/.f64 y z)
(/.f64 (/.f64 y z) 1)
(/.f64 y z)
(/.f64 2 (*.f64 z (/.f64 2 y)))
(/.f64 y z)
(/.f64 4 (/.f64 4 (/.f64 y z)))
(/.f64 y z)
(/.f64 (/.f64 2 z) (/.f64 2 y))
(/.f64 y z)
(/.f64 (/.f64 2 z) (+.f64 (/.f64 1 y) (/.f64 1 y)))
(/.f64 y z)
(/.f64 (+.f64 y y) (+.f64 z z))
(/.f64 y z)
(/.f64 (*.f64 y (/.f64 2 z)) 2)
(/.f64 y z)
(/.f64 -1 (/.f64 z (neg.f64 y)))
(/.f64 y z)
(/.f64 -1 (neg.f64 (/.f64 z y)))
(/.f64 y z)
(/.f64 8 (*.f64 2 (/.f64 4 (/.f64 y z))))
(/.f64 y z)
(/.f64 8 (/.f64 (*.f64 z 8) y))
(/.f64 y z)
(/.f64 (/.f64 4 z) (+.f64 (/.f64 2 y) (/.f64 2 y)))
(/.f64 y z)
(/.f64 -2 (neg.f64 (*.f64 z (/.f64 2 y))))
(/.f64 y z)
(/.f64 -2 (+.f64 (neg.f64 (/.f64 z y)) (neg.f64 (/.f64 z y))))
(/.f64 y z)
(/.f64 -2 (+.f64 (/.f64 z (neg.f64 y)) (/.f64 z (neg.f64 y))))
(/.f64 y z)
(/.f64 (*.f64 y 4) (*.f64 z 4))
(/.f64 y z)
(/.f64 (*.f64 y (/.f64 4 z)) 4)
(/.f64 y z)
(/.f64 1/2 (/.f64 (/.f64 z 2) y))
(/.f64 y z)
(/.f64 (neg.f64 y) (neg.f64 z))
(/.f64 y z)
(/.f64 (/.f64 z y) (*.f64 z (/.f64 (/.f64 z y) y)))
(/.f64 (/.f64 (/.f64 z y) z) (/.f64 z (*.f64 y y)))
(/.f64 (/.f64 z y) (*.f64 z (/.f64 z (*.f64 y y))))
(/.f64 (/.f64 (*.f64 y y) z) y)
(/.f64 (*.f64 z (/.f64 2 y)) (*.f64 (/.f64 z y) (*.f64 z (/.f64 2 y))))
(/.f64 (*.f64 z (/.f64 2 y)) (*.f64 z (*.f64 (/.f64 2 y) (/.f64 z y))))
(*.f64 (/.f64 2 y) (/.f64 (/.f64 z z) (*.f64 z (/.f64 (/.f64 2 y) y))))
(/.f64 16 (+.f64 (*.f64 2 (/.f64 4 (/.f64 y z))) (*.f64 2 (/.f64 4 (/.f64 y z)))))
(/.f64 y z)
(/.f64 16 (+.f64 (/.f64 (*.f64 z 8) y) (/.f64 (*.f64 z 8) y)))
(/.f64 y z)
(/.f64 (*.f64 y 8) (*.f64 z 8))
(/.f64 y z)
(/.f64 -4 (+.f64 (neg.f64 (*.f64 z (/.f64 2 y))) (neg.f64 (*.f64 z (/.f64 2 y)))))
(/.f64 y z)
(/.f64 -4 (-.f64 0 (/.f64 4 (/.f64 y z))))
(/.f64 y z)
(/.f64 (*.f64 (/.f64 y z) 8) 8)
(/.f64 y z)
(/.f64 (*.f64 y -2) (*.f64 z -2))
(/.f64 y z)
(/.f64 (/.f64 4 (/.f64 y z)) (*.f64 (*.f64 z (/.f64 2 y)) (*.f64 z (/.f64 2 y))))
(/.f64 (/.f64 (/.f64 z (/.f64 y 4)) (*.f64 z (/.f64 2 y))) (*.f64 z (/.f64 2 y)))
(/.f64 4 (*.f64 (/.f64 y z) (*.f64 (*.f64 z (/.f64 2 y)) (*.f64 z (/.f64 2 y)))))
(/.f64 (/.f64 (/.f64 4 (*.f64 z (/.f64 2 y))) (*.f64 z (/.f64 2 y))) (/.f64 y z))
(/.f64 (/.f64 4 (/.f64 y z)) (+.f64 (*.f64 (/.f64 z y) (*.f64 z (/.f64 2 y))) (*.f64 (/.f64 z y) (*.f64 z (/.f64 2 y)))))
(/.f64 4 (*.f64 (/.f64 y z) (+.f64 (*.f64 z (*.f64 (/.f64 2 y) (/.f64 z y))) (*.f64 z (*.f64 (/.f64 2 y) (/.f64 z y))))))
(/.f64 z (*.f64 (/.f64 y 4) (*.f64 (/.f64 z y) (*.f64 (/.f64 2 y) (+.f64 z z)))))
(/.f64 z (*.f64 (*.f64 (/.f64 z y) (*.f64 (/.f64 2 y) (+.f64 z z))) (/.f64 y 4)))
(/.f64 (*.f64 (/.f64 y z) 1/2) 1/2)
(/.f64 y z)
(/.f64 (*.f64 y 1/2) (/.f64 z 2))
(/.f64 y z)
(/.f64 (*.f64 y 1/2) (/.f64 (*.f64 z z) (+.f64 z z)))
(/.f64 y z)
(/.f64 (*.f64 2 (*.f64 y 8)) (*.f64 2 (*.f64 z 8)))
(/.f64 y z)
(/.f64 (*.f64 2 (*.f64 y -2)) (*.f64 (neg.f64 z) 4))
(/.f64 y z)
(/.f64 (neg.f64 (*.f64 y 8)) (neg.f64 (*.f64 z 8)))
(/.f64 y z)
(/.f64 -1/2 (-.f64 0 (/.f64 (/.f64 z 2) y)))
(/.f64 y z)
(/.f64 (*.f64 2 (*.f64 (/.f64 y z) 8)) 16)
(/.f64 y z)
(/.f64 (/.f64 (*.f64 y 8) z) 8)
(/.f64 y z)
(/.f64 (/.f64 y (neg.f64 z)) -1)
(/.f64 y z)
(/.f64 (/.f64 y (*.f64 z 4)) 1/4)
(/.f64 y z)
(/.f64 (neg.f64 (/.f64 z y)) (-.f64 0 (*.f64 z (/.f64 (/.f64 z y) y))))
(/.f64 (/.f64 (/.f64 z y) z) (/.f64 z (*.f64 y y)))
(/.f64 (/.f64 z y) (*.f64 z (/.f64 z (*.f64 y y))))
(/.f64 (/.f64 (*.f64 y y) z) y)
(/.f64 (neg.f64 (*.f64 y 4)) (neg.f64 (*.f64 z 4)))
(/.f64 y z)
(/.f64 (neg.f64 (*.f64 y -2)) (+.f64 z z))
(/.f64 y z)
(/.f64 (+.f64 (/.f64 y (*.f64 z 4)) (/.f64 y (*.f64 z 4))) 1/2)
(/.f64 y z)
(/.f64 (+.f64 (neg.f64 (*.f64 y 4)) (neg.f64 (*.f64 y 4))) (*.f64 2 (neg.f64 (*.f64 z 4))))
(/.f64 y z)
(/.f64 (+.f64 (*.f64 2 (*.f64 y -2)) (*.f64 2 (*.f64 y -2))) (*.f64 2 (*.f64 (neg.f64 z) 4)))
(/.f64 y z)
(/.f64 (+.f64 (*.f64 2 (*.f64 (/.f64 y z) 8)) (*.f64 2 (*.f64 (/.f64 y z) 8))) 32)
(/.f64 y z)
(/.f64 (+.f64 (neg.f64 (*.f64 y -2)) (neg.f64 (*.f64 y -2))) (*.f64 z 4))
(/.f64 y z)
(/.f64 (+.f64 (/.f64 (*.f64 y 8) z) (/.f64 (*.f64 y 8) z)) 16)
(/.f64 y z)
(/.f64 (+.f64 (/.f64 y (neg.f64 z)) (/.f64 y (neg.f64 z))) -2)
(/.f64 y z)
(/.f64 (neg.f64 (/.f64 1 z)) (-.f64 0 (/.f64 1 y)))
(/.f64 y z)
(/.f64 (neg.f64 (/.f64 2 z)) (-.f64 0 (/.f64 2 y)))
(/.f64 y z)
(/.f64 (neg.f64 (*.f64 y 1/2)) (-.f64 0 (/.f64 z 2)))
(/.f64 y z)
(/.f64 (neg.f64 (neg.f64 (*.f64 y 4))) (*.f64 z 4))
(/.f64 y z)
(/.f64 (neg.f64 (neg.f64 (*.f64 y 4))) (-.f64 0 (neg.f64 (*.f64 z 4))))
(/.f64 y z)
(/.f64 (neg.f64 (*.f64 2 (*.f64 y -2))) (-.f64 0 (*.f64 (neg.f64 z) 4)))
(/.f64 y z)
(/.f64 (neg.f64 (neg.f64 (*.f64 y -2))) (*.f64 z -2))
(/.f64 y z)
(pow.f64 (/.f64 y z) 1)
(/.f64 y z)
(neg.f64 (/.f64 y (neg.f64 z)))
(/.f64 y z)
(+.f64 (*.f64 y (/.f64 y z)) 0)
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y y) z)
(+.f64 0 (*.f64 y (/.f64 y z)))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y y) z)
(+.f64 (*.f64 (/.f64 y z) (*.f64 y 1/2)) (*.f64 (/.f64 y z) (*.f64 y 1/2)))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y y) z)
(-.f64 (*.f64 y (/.f64 y z)) 0)
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y y) z)
(/.f64 y (/.f64 z y))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y y) z)
(/.f64 1 (/.f64 (/.f64 z y) y))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y y) z)
(/.f64 1 (/.f64 z (*.f64 y y)))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y y) z)
(/.f64 (/.f64 1 z) (/.f64 (/.f64 (*.f64 y y) (*.f64 y y)) (*.f64 y y)))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y y) z)
(/.f64 (/.f64 1 z) (/.f64 (+.f64 (/.f64 1 (*.f64 y y)) (/.f64 1 (*.f64 y y))) 2))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y y) z)
(/.f64 (/.f64 y z) (/.f64 1 y))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y y) z)
(/.f64 (*.f64 y (/.f64 y z)) 1)
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y y) z)
(/.f64 2 (/.f64 (*.f64 z (/.f64 2 y)) y))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y y) z)
(/.f64 2 (/.f64 (+.f64 z z) (*.f64 y y)))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y y) z)
(/.f64 2 (+.f64 (/.f64 (/.f64 z y) y) (/.f64 (/.f64 z y) y)))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y y) z)
(/.f64 2 (+.f64 (/.f64 z (*.f64 y y)) (/.f64 z (*.f64 y y))))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y y) z)
(/.f64 4 (/.f64 (/.f64 4 (/.f64 y z)) y))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y y) z)
(/.f64 4 (/.f64 (*.f64 z 4) (*.f64 y y)))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y y) z)
(/.f64 4 (+.f64 (/.f64 (*.f64 z (/.f64 2 y)) y) (/.f64 (*.f64 z (/.f64 2 y)) y)))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y y) z)
(/.f64 4 (+.f64 (/.f64 (+.f64 z z) (*.f64 y y)) (/.f64 (+.f64 z z) (*.f64 y y))))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y y) z)
(/.f64 (*.f64 y (*.f64 y (/.f64 2 z))) 2)
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y y) z)
(/.f64 (+.f64 y y) (*.f64 z (/.f64 2 y)))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y y) z)
(/.f64 (*.f64 y (/.f64 2 z)) (/.f64 2 y))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y y) z)
(/.f64 (*.f64 y (/.f64 2 z)) (+.f64 (/.f64 1 y) (/.f64 1 y)))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y y) z)
(/.f64 (*.f64 y y) z)
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y y) (/.f64 (*.f64 z z) z))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y y) z)
(/.f64 8 (/.f64 (*.f64 z 8) (*.f64 y y)))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y y) z)
(/.f64 8 (+.f64 (/.f64 (/.f64 4 (/.f64 y z)) y) (/.f64 (/.f64 4 (/.f64 y z)) y)))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y y) z)
(/.f64 8 (+.f64 (/.f64 (*.f64 z 4) (*.f64 y y)) (/.f64 (*.f64 z 4) (*.f64 y y))))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y y) z)
(/.f64 (*.f64 y 4) (/.f64 4 (/.f64 y z)))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y y) z)
(/.f64 (*.f64 (/.f64 y z) (*.f64 y 4)) 4)
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y y) z)
(/.f64 (*.f64 y (/.f64 4 z)) (/.f64 4 y))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y y) z)
(/.f64 (*.f64 y (/.f64 4 z)) (+.f64 (/.f64 2 y) (/.f64 2 y)))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y y) z)
(/.f64 (neg.f64 y) (/.f64 z (neg.f64 y)))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y y) z)
(/.f64 (neg.f64 y) (neg.f64 (/.f64 z y)))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y y) z)
(/.f64 (*.f64 (*.f64 y y) (*.f64 y y)) (*.f64 z (*.f64 y y)))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y y) z)
(/.f64 16 (+.f64 (/.f64 (*.f64 z 8) (*.f64 y y)) (/.f64 (*.f64 z 8) (*.f64 y y))))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y y) z)
(/.f64 (*.f64 (*.f64 y (/.f64 y z)) 8) 8)
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y y) z)
(/.f64 (*.f64 y (+.f64 y y)) (+.f64 z z))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y y) z)
(/.f64 (*.f64 y 8) (*.f64 2 (/.f64 4 (/.f64 y z))))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y y) z)
(/.f64 (*.f64 y 8) (*.f64 8 (/.f64 z y)))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y y) z)
(/.f64 (*.f64 (/.f64 y z) 8) (+.f64 (/.f64 4 y) (/.f64 4 y)))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y y) z)
(/.f64 (*.f64 y -2) (neg.f64 (*.f64 z (/.f64 2 y))))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y y) z)
(/.f64 (*.f64 y -2) (+.f64 (neg.f64 (/.f64 z y)) (neg.f64 (/.f64 z y))))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y y) z)
(/.f64 (*.f64 y -2) (+.f64 (/.f64 z (neg.f64 y)) (/.f64 z (neg.f64 y))))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y y) z)
(/.f64 (*.f64 y 1/2) (/.f64 (/.f64 z 2) y))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y y) z)
(/.f64 (*.f64 (/.f64 y z) (*.f64 y 1/2)) 1/2)
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y y) z)
(/.f64 (neg.f64 (*.f64 y y)) (neg.f64 z))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y y) z)
(/.f64 (*.f64 2 (*.f64 (*.f64 y (/.f64 y z)) 8)) 16)
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y y) z)
(/.f64 (*.f64 2 (*.f64 (*.f64 y y) (*.f64 y y))) (+.f64 (*.f64 z (*.f64 y y)) (*.f64 z (*.f64 y y))))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y y) z)
(/.f64 (*.f64 2 (*.f64 y 8)) (+.f64 (*.f64 8 (/.f64 z y)) (*.f64 8 (/.f64 z y))))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y y) z)
(/.f64 (*.f64 y (*.f64 y 4)) (*.f64 z 4))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y y) z)
(/.f64 (/.f64 (*.f64 y 8) (/.f64 z y)) 8)
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y y) z)
(/.f64 (/.f64 (*.f64 (*.f64 y y) (*.f64 y y)) z) (*.f64 y y))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y y) z)
(/.f64 (/.f64 (*.f64 y y) 2) (/.f64 z 2))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y y) z)
(/.f64 (/.f64 (*.f64 y y) (*.f64 z 4)) 1/4)
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y y) z)
(/.f64 (neg.f64 (/.f64 y z)) (-.f64 0 (/.f64 1 y)))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y y) z)
(/.f64 (neg.f64 (*.f64 y (/.f64 2 z))) (-.f64 0 (/.f64 2 y)))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y y) z)
(/.f64 (neg.f64 (*.f64 y 4)) (-.f64 0 (/.f64 4 (/.f64 y z))))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y y) z)
(/.f64 (+.f64 (neg.f64 (*.f64 y y)) (neg.f64 (*.f64 y y))) (*.f64 z -2))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y y) z)
(/.f64 (+.f64 (*.f64 2 (*.f64 (*.f64 y (/.f64 y z)) 8)) (*.f64 2 (*.f64 (*.f64 y (/.f64 y z)) 8))) 32)
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y y) z)
(/.f64 (+.f64 (/.f64 (*.f64 y 8) (/.f64 z y)) (/.f64 (*.f64 y 8) (/.f64 z y))) 16)
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y y) z)
(/.f64 (+.f64 (/.f64 (*.f64 (*.f64 y y) (*.f64 y y)) z) (/.f64 (*.f64 (*.f64 y y) (*.f64 y y)) z)) (*.f64 y (+.f64 y y)))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y y) z)
(/.f64 (+.f64 (/.f64 (*.f64 y y) 2) (/.f64 (*.f64 y y) 2)) z)
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y y) z)
(/.f64 (+.f64 (/.f64 (*.f64 y y) (*.f64 z 4)) (/.f64 (*.f64 y y) (*.f64 z 4))) 1/2)
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y y) z)
(/.f64 (neg.f64 (*.f64 y (+.f64 y y))) (*.f64 z -2))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y y) z)
(/.f64 (neg.f64 (*.f64 y 1/2)) (-.f64 0 (/.f64 (/.f64 z 2) y)))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y y) z)
(/.f64 (neg.f64 (neg.f64 (*.f64 y y))) z)
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y y) z)
(/.f64 (neg.f64 (/.f64 (*.f64 (*.f64 y y) (*.f64 y y)) z)) (neg.f64 (*.f64 y y)))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y y) z)
(/.f64 (neg.f64 (/.f64 (*.f64 y y) 2)) (-.f64 0 (/.f64 z 2)))
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y y) z)
(pow.f64 (*.f64 y (/.f64 y z)) 1)
(*.f64 y (/.f64 y z))
(/.f64 (*.f64 y y) z)
(-.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 0)
(+.f64 x (*.f64 y (/.f64 y z)))
(+.f64 x (/.f64 (*.f64 y y) z))
(*.f64 1 (+.f64 (*.f64 y (/.f64 y z)) x))
(+.f64 x (*.f64 y (/.f64 y z)))
(+.f64 x (/.f64 (*.f64 y y) z))
(*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 1)
(+.f64 x (*.f64 y (/.f64 y z)))
(+.f64 x (/.f64 (*.f64 y y) z))
(*.f64 2 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 1/2))
(+.f64 x (*.f64 y (/.f64 y z)))
(+.f64 x (/.f64 (*.f64 y y) z))
(*.f64 2 (+.f64 (*.f64 x 1/2) (*.f64 (/.f64 y z) (*.f64 y 1/2))))
(+.f64 x (*.f64 y (/.f64 y z)))
(+.f64 x (/.f64 (*.f64 y y) z))
(*.f64 2 (+.f64 (*.f64 (/.f64 y z) (*.f64 y 1/2)) (*.f64 x 1/2)))
(+.f64 x (*.f64 y (/.f64 y z)))
(+.f64 x (/.f64 (*.f64 y y) z))
(*.f64 4 (/.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 4))
(+.f64 x (*.f64 y (/.f64 y z)))
(+.f64 x (/.f64 (*.f64 y y) z))
(*.f64 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 2) 1/2)
(+.f64 x (*.f64 y (/.f64 y z)))
(+.f64 x (/.f64 (*.f64 y y) z))
(*.f64 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 4) 1/4)
(+.f64 x (*.f64 y (/.f64 y z)))
(+.f64 x (/.f64 (*.f64 y y) z))
(*.f64 1/2 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 2))
(+.f64 x (*.f64 y (/.f64 y z)))
(+.f64 x (/.f64 (*.f64 y y) z))
(*.f64 1/2 (+.f64 (+.f64 x x) (*.f64 y (*.f64 y (/.f64 2 z)))))
(+.f64 x (*.f64 y (/.f64 y z)))
(+.f64 x (/.f64 (*.f64 y y) z))
(*.f64 1/2 (+.f64 (*.f64 y (*.f64 y (/.f64 2 z))) (+.f64 x x)))
(+.f64 x (*.f64 y (/.f64 y z)))
(+.f64 x (/.f64 (*.f64 y y) z))
(*.f64 1/4 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 4))
(+.f64 x (*.f64 y (/.f64 y z)))
(+.f64 x (/.f64 (*.f64 y y) z))
(*.f64 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 1/2) 2)
(+.f64 x (*.f64 y (/.f64 y z)))
(+.f64 x (/.f64 (*.f64 y y) z))
(*.f64 (/.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 4) 4)
(+.f64 x (*.f64 y (/.f64 y z)))
(+.f64 x (/.f64 (*.f64 y y) z))
(/.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 1)
(+.f64 x (*.f64 y (/.f64 y z)))
(+.f64 x (/.f64 (*.f64 y y) z))
(/.f64 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 2) 2)
(+.f64 x (*.f64 y (/.f64 y z)))
(+.f64 x (/.f64 (*.f64 y y) z))
(/.f64 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 4) 4)
(+.f64 x (*.f64 y (/.f64 y z)))
(+.f64 x (/.f64 (*.f64 y y) z))
(/.f64 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 8) 8)
(+.f64 x (*.f64 y (/.f64 y z)))
(+.f64 x (/.f64 (*.f64 y y) z))
(/.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 8)) 16)
(+.f64 x (*.f64 y (/.f64 y z)))
(+.f64 x (/.f64 (*.f64 y y) z))
(/.f64 (+.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 8)) (*.f64 2 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 8))) 32)
(+.f64 x (*.f64 y (/.f64 y z)))
(+.f64 x (/.f64 (*.f64 y y) z))
(pow.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 1)
(+.f64 x (*.f64 y (/.f64 y z)))
(+.f64 x (/.f64 (*.f64 y y) z))

localize12.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(+.f64 x (/.f64 -1 (/.f64 (/.f64 z (neg.f64 y)) y)))
0.2b
(/.f64 (/.f64 z (neg.f64 y)) y)
0.5b
(/.f64 -1 (/.f64 (/.f64 z (neg.f64 y)) y))
Compiler

Compiled 37 to 12 computations (67.6% saved)

series3.0ms (0.1%)

Counts
3 → 84
Calls

21 calls:

TimeVariablePointExpression
1.0ms
z
@0
(/.f64 (/.f64 z (neg.f64 y)) y)
0.0ms
y
@0
(/.f64 (/.f64 z (neg.f64 y)) y)
0.0ms
z
@inf
(/.f64 (/.f64 z (neg.f64 y)) y)
0.0ms
z
@-inf
(/.f64 (/.f64 z (neg.f64 y)) y)
0.0ms
y
@inf
(/.f64 -1 (/.f64 (/.f64 z (neg.f64 y)) y))

rewrite114.0ms (2.3%)

Algorithm
batch-egg-rewrite
Rules
1724×rational.json-1
1724×rational.json-2
1718×rational.json-simplify-35
1098×rational.json-simplify-2
900×exponential.json-3
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01269
19765
231149
3113049
4350549
5738049
Stop Event
node limit
Counts
3 → 142
Calls
Call 1
Inputs
(/.f64 -1 (/.f64 (/.f64 z (neg.f64 y)) y))
(/.f64 (/.f64 z (neg.f64 y)) y)
(+.f64 x (/.f64 -1 (/.f64 (/.f64 z (neg.f64 y)) y)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 -1 (-.f64 1 (*.f64 y (/.f64 (neg.f64 y) z))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y (/.f64 y z)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 y (/.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y (/.f64 y z)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (*.f64 y (/.f64 (neg.f64 y) z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (*.f64 y (/.f64 (neg.f64 y) z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (/.f64 y z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 y) (/.f64 (neg.f64 y) z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y (/.f64 y z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 y (/.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 y y) (/.f64 1/2 (/.f64 z y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 y y) (*.f64 (/.f64 y z) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -2 (/.f64 y (*.f64 -2 (/.f64 z y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -2 (*.f64 (/.f64 y (*.f64 z -2)) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y -2) (/.f64 y (*.f64 z -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y -2) (/.f64 1 (*.f64 -2 (/.f64 z y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y -2) (*.f64 (/.f64 1 (*.f64 z -2)) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y (neg.f64 y)) (/.f64 -1 z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (/.f64 y (*.f64 z (/.f64 2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (/.f64 (*.f64 y (/.f64 y z)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (*.f64 (/.f64 y z) 1/2) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (/.f64 1/2 (/.f64 z y)) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y -4) (/.f64 -1 (/.f64 (*.f64 z 4) y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y (*.f64 y -2)) (/.f64 1 (*.f64 z -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y 4) (/.f64 1 (/.f64 (*.f64 z 4) y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y z) y)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y z) (/.f64 -1 (/.f64 -1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (neg.f64 y) z) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (neg.f64 y) z) (/.f64 -1 (/.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y (/.f64 (neg.f64 y) z)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y (*.f64 2 (/.f64 y z))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y (*.f64 y (/.f64 -2 z))) -1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -1 z) (*.f64 y (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -1 z) (/.f64 y (/.f64 -1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 y (*.f64 2 (/.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1/2 (*.f64 y (*.f64 y (/.f64 -2 z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 z) (*.f64 y y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 z) (/.f64 y (/.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/2 (/.f64 z y)) (+.f64 y y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y y) (/.f64 1 z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 y z) 1/2) (+.f64 y y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y (/.f64 -1 y)) (/.f64 -1 z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y (/.f64 1 y)) (/.f64 1 z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y (*.f64 z (/.f64 2 y))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y (*.f64 z -2)) (*.f64 y -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (*.f64 -2 (/.f64 z y))) (*.f64 y -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -1 (/.f64 1 y)) (/.f64 (neg.f64 y) z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -1 (/.f64 -1 y)) (/.f64 y z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (*.f64 z -2)) (*.f64 y (*.f64 y -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y (*.f64 -2 (/.f64 z y))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -1 (/.f64 (*.f64 z 4) y)) (*.f64 y -4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 (*.f64 z 4) y)) (*.f64 y 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 y (/.f64 y z)) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (/.f64 1/2 (/.f64 z y)) (/.f64 1/2 (/.f64 z y))) y)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 y (/.f64 y z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 y (/.f64 (neg.f64 y) z)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 -1 (-.f64 1 (/.f64 z (*.f64 y y))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 z (*.f64 y (neg.f64 y))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 z (*.f64 y (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 1 (/.f64 z (*.f64 y y))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 z (*.f64 y (neg.f64 y))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (/.f64 z (*.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (/.f64 z (*.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 z (/.f64 -1 (*.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 z (neg.f64 y)) (/.f64 1 y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 z (*.f64 y (neg.f64 y))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 z (*.f64 y (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -2 (/.f64 (/.f64 z y) (+.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -2 (/.f64 z (*.f64 y (+.f64 y y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 z -2) (*.f64 y y)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 z z) (/.f64 -1/2 (*.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 z z) (*.f64 (/.f64 -1 (*.f64 y y)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 z y) (/.f64 -1 y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (/.f64 (/.f64 z y) (*.f64 y -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (/.f64 (/.f64 z (*.f64 y (neg.f64 y))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (/.f64 z (*.f64 y (*.f64 y -2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (/.f64 -1/2 (*.f64 y y)) z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (/.f64 -1/2 y) (/.f64 z y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (/.f64 1/2 y) (/.f64 z (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 z 4) (/.f64 1 (*.f64 y (*.f64 y -4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 z y) -4) (/.f64 -1 (*.f64 y -4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 z (/.f64 2 y)) (/.f64 -1/2 y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 z (*.f64 y (neg.f64 y))) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 z -2) (/.f64 1 (*.f64 y (+.f64 y y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -1 y) (/.f64 z y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -1 (*.f64 y y)) z)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 y) (/.f64 z (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 z) (/.f64 (/.f64 1 y) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 z) (/.f64 1 (*.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 z) (neg.f64 (/.f64 -1 (*.f64 y y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 z (*.f64 y y)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (/.f64 -1 (*.f64 y y))) (/.f64 z 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 2 y) (/.f64 z (*.f64 y -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 2 y) (/.f64 (/.f64 z (neg.f64 y)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (/.f64 -1 y)) (/.f64 z (+.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 -2 (/.f64 z y)) (/.f64 1/2 y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 -2 (/.f64 z y)) (*.f64 (/.f64 1 y) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 -2 (/.f64 z y)) (*.f64 (/.f64 -1 y) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 z y) (/.f64 2 y)) -1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (/.f64 (*.f64 z -2) (*.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1/2 (*.f64 (/.f64 z y) (/.f64 2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -1/2 y) (*.f64 z (/.f64 2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/2 y) (*.f64 -2 (/.f64 z y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -1/2 (*.f64 y y)) (+.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 1 y) 1/2) (*.f64 -2 (/.f64 z y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 -1 y) -1/2) (*.f64 -2 (/.f64 z y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 -1 (*.f64 y y)) 1/2) (+.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 z (+.f64 y y)) (*.f64 2 (/.f64 -1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 z (*.f64 y -2)) (/.f64 2 y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 z y) (*.f64 y -2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 y) y) (neg.f64 z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 z y) (+.f64 y y)) -2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -1 (*.f64 y -4)) (*.f64 (/.f64 z y) -4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 z 2) (*.f64 2 (/.f64 -1 (*.f64 y y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 z (neg.f64 y)) 2) (/.f64 2 y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (/.f64 z (*.f64 y (neg.f64 y))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 z (*.f64 y (neg.f64 y))) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 z (*.f64 y (*.f64 y -2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (*.f64 y (*.f64 y -4))) (*.f64 z 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 z (*.f64 y (+.f64 y y))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (*.f64 y (+.f64 y y))) (*.f64 z -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (*.f64 y y)) (neg.f64 z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (/.f64 -1 (*.f64 y y))) (neg.f64 z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (/.f64 1/2 y) (/.f64 1/2 y)) (/.f64 z (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (/.f64 -1/2 y) (/.f64 -1/2 y)) (/.f64 z y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (/.f64 -1/2 (*.f64 y y)) (/.f64 -1/2 (*.f64 y y))) z)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 z (*.f64 y (neg.f64 y))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 z (*.f64 y y)))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 (*.f64 y (/.f64 y z)) x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (/.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (+.f64 (+.f64 x x) (*.f64 y (*.f64 2 (/.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 4)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 4)) (*.f64 2 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 4))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 1)))))

simplify136.0ms (2.8%)

Algorithm
egg-herbie
Rules
1382×rational.json-simplify-53
1128×rational.json-simplify-51
926×rational.json-simplify-1
734×rational.json-simplify-35
680×rational.json-simplify-2
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
02625028
15314496
212543844
338173844
462073828
Stop Event
node limit
Counts
226 → 179
Calls
Call 1
Inputs
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(*.f64 -1 (/.f64 z (pow.f64 y 2)))
(*.f64 -1 (/.f64 z (pow.f64 y 2)))
(*.f64 -1 (/.f64 z (pow.f64 y 2)))
(*.f64 -1 (/.f64 z (pow.f64 y 2)))
(*.f64 -1 (/.f64 z (pow.f64 y 2)))
(*.f64 -1 (/.f64 z (pow.f64 y 2)))
(*.f64 -1 (/.f64 z (pow.f64 y 2)))
(*.f64 -1 (/.f64 z (pow.f64 y 2)))
(*.f64 -1 (/.f64 z (pow.f64 y 2)))
(*.f64 -1 (/.f64 z (pow.f64 y 2)))
(*.f64 -1 (/.f64 z (pow.f64 y 2)))
(*.f64 -1 (/.f64 z (pow.f64 y 2)))
(*.f64 -1 (/.f64 z (pow.f64 y 2)))
(*.f64 -1 (/.f64 z (pow.f64 y 2)))
(*.f64 -1 (/.f64 z (pow.f64 y 2)))
(*.f64 -1 (/.f64 z (pow.f64 y 2)))
(*.f64 -1 (/.f64 z (pow.f64 y 2)))
(*.f64 -1 (/.f64 z (pow.f64 y 2)))
(*.f64 -1 (/.f64 z (pow.f64 y 2)))
(*.f64 -1 (/.f64 z (pow.f64 y 2)))
(*.f64 -1 (/.f64 z (pow.f64 y 2)))
(*.f64 -1 (/.f64 z (pow.f64 y 2)))
(*.f64 -1 (/.f64 z (pow.f64 y 2)))
(*.f64 -1 (/.f64 z (pow.f64 y 2)))
(/.f64 (pow.f64 y 2) z)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
x
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
x
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(/.f64 (pow.f64 y 2) z)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
x
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
x
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
x
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(/.f64 (pow.f64 y 2) z)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(/.f64 (pow.f64 y 2) z)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 -1 (-.f64 1 (*.f64 y (/.f64 (neg.f64 y) z))))
(+.f64 (*.f64 y (/.f64 y z)) 0)
(+.f64 0 (*.f64 y (/.f64 y z)))
(-.f64 (*.f64 y (/.f64 y z)) 0)
(-.f64 0 (*.f64 y (/.f64 (neg.f64 y) z)))
(*.f64 -1 (*.f64 y (/.f64 (neg.f64 y) z)))
(*.f64 y (/.f64 y z))
(*.f64 (neg.f64 y) (/.f64 (neg.f64 y) z))
(*.f64 (*.f64 y (/.f64 y z)) 1)
(*.f64 1 (*.f64 y (/.f64 y z)))
(*.f64 (+.f64 y y) (/.f64 1/2 (/.f64 z y)))
(*.f64 (+.f64 y y) (*.f64 (/.f64 y z) 1/2))
(*.f64 -2 (/.f64 y (*.f64 -2 (/.f64 z y))))
(*.f64 -2 (*.f64 (/.f64 y (*.f64 z -2)) y))
(*.f64 (*.f64 y -2) (/.f64 y (*.f64 z -2)))
(*.f64 (*.f64 y -2) (/.f64 1 (*.f64 -2 (/.f64 z y))))
(*.f64 (*.f64 y -2) (*.f64 (/.f64 1 (*.f64 z -2)) y))
(*.f64 (*.f64 y (neg.f64 y)) (/.f64 -1 z))
(*.f64 2 (/.f64 y (*.f64 z (/.f64 2 y))))
(*.f64 2 (/.f64 (*.f64 y (/.f64 y z)) 2))
(*.f64 2 (*.f64 (*.f64 (/.f64 y z) 1/2) y))
(*.f64 2 (*.f64 (/.f64 1/2 (/.f64 z y)) y))
(*.f64 (*.f64 y -4) (/.f64 -1 (/.f64 (*.f64 z 4) y)))
(*.f64 (*.f64 y (*.f64 y -2)) (/.f64 1 (*.f64 z -2)))
(*.f64 (*.f64 y 4) (/.f64 1 (/.f64 (*.f64 z 4) y)))
(*.f64 (/.f64 y z) y)
(*.f64 (/.f64 y z) (/.f64 -1 (/.f64 -1 y)))
(*.f64 (/.f64 (neg.f64 y) z) (neg.f64 y))
(*.f64 (/.f64 (neg.f64 y) z) (/.f64 -1 (/.f64 1 y)))
(*.f64 (*.f64 y (/.f64 (neg.f64 y) z)) -1)
(*.f64 (*.f64 y (*.f64 2 (/.f64 y z))) 1/2)
(*.f64 (*.f64 y (*.f64 y (/.f64 -2 z))) -1/2)
(*.f64 (/.f64 -1 z) (*.f64 y (neg.f64 y)))
(*.f64 (/.f64 -1 z) (/.f64 y (/.f64 -1 y)))
(*.f64 1/2 (*.f64 y (*.f64 2 (/.f64 y z))))
(*.f64 -1/2 (*.f64 y (*.f64 y (/.f64 -2 z))))
(*.f64 (/.f64 1 z) (*.f64 y y))
(*.f64 (/.f64 1 z) (/.f64 y (/.f64 1 y)))
(*.f64 (/.f64 1/2 (/.f64 z y)) (+.f64 y y))
(*.f64 (*.f64 y y) (/.f64 1 z))
(*.f64 (*.f64 (/.f64 y z) 1/2) (+.f64 y y))
(*.f64 (/.f64 y (/.f64 -1 y)) (/.f64 -1 z))
(*.f64 (/.f64 y (/.f64 1 y)) (/.f64 1 z))
(*.f64 (/.f64 y (*.f64 z (/.f64 2 y))) 2)
(*.f64 (/.f64 y (*.f64 z -2)) (*.f64 y -2))
(*.f64 (/.f64 1 (*.f64 -2 (/.f64 z y))) (*.f64 y -2))
(*.f64 (/.f64 -1 (/.f64 1 y)) (/.f64 (neg.f64 y) z))
(*.f64 (/.f64 -1 (/.f64 -1 y)) (/.f64 y z))
(*.f64 (/.f64 1 (*.f64 z -2)) (*.f64 y (*.f64 y -2)))
(*.f64 (/.f64 y (*.f64 -2 (/.f64 z y))) -2)
(*.f64 (/.f64 -1 (/.f64 (*.f64 z 4) y)) (*.f64 y -4))
(*.f64 (/.f64 1 (/.f64 (*.f64 z 4) y)) (*.f64 y 4))
(*.f64 (/.f64 (*.f64 y (/.f64 y z)) 2) 2)
(*.f64 (+.f64 (/.f64 1/2 (/.f64 z y)) (/.f64 1/2 (/.f64 z y))) y)
(pow.f64 (*.f64 y (/.f64 y z)) 1)
(neg.f64 (*.f64 y (/.f64 (neg.f64 y) z)))
(+.f64 -1 (-.f64 1 (/.f64 z (*.f64 y y))))
(+.f64 (/.f64 z (*.f64 y (neg.f64 y))) 0)
(+.f64 0 (/.f64 z (*.f64 y (neg.f64 y))))
(+.f64 (-.f64 1 (/.f64 z (*.f64 y y))) -1)
(-.f64 (/.f64 z (*.f64 y (neg.f64 y))) 0)
(-.f64 0 (/.f64 z (*.f64 y y)))
(*.f64 -1 (/.f64 z (*.f64 y y)))
(*.f64 z (/.f64 -1 (*.f64 y y)))
(*.f64 (/.f64 z (neg.f64 y)) (/.f64 1 y))
(*.f64 (/.f64 z (*.f64 y (neg.f64 y))) 1)
(*.f64 1 (/.f64 z (*.f64 y (neg.f64 y))))
(*.f64 -2 (/.f64 (/.f64 z y) (+.f64 y y)))
(*.f64 -2 (/.f64 z (*.f64 y (+.f64 y y))))
(*.f64 (/.f64 (*.f64 z -2) (*.f64 y y)) 1/2)
(*.f64 (+.f64 z z) (/.f64 -1/2 (*.f64 y y)))
(*.f64 (+.f64 z z) (*.f64 (/.f64 -1 (*.f64 y y)) 1/2))
(*.f64 (/.f64 z y) (/.f64 -1 y))
(*.f64 2 (/.f64 (/.f64 z y) (*.f64 y -2)))
(*.f64 2 (/.f64 (/.f64 z (*.f64 y (neg.f64 y))) 2))
(*.f64 2 (/.f64 z (*.f64 y (*.f64 y -2))))
(*.f64 2 (*.f64 (/.f64 -1/2 (*.f64 y y)) z))
(*.f64 2 (*.f64 (/.f64 -1/2 y) (/.f64 z y)))
(*.f64 2 (*.f64 (/.f64 1/2 y) (/.f64 z (neg.f64 y))))
(*.f64 (*.f64 z 4) (/.f64 1 (*.f64 y (*.f64 y -4))))
(*.f64 (*.f64 (/.f64 z y) -4) (/.f64 -1 (*.f64 y -4)))
(*.f64 (*.f64 z (/.f64 2 y)) (/.f64 -1/2 y))
(*.f64 (*.f64 (/.f64 z (*.f64 y (neg.f64 y))) 4) 1/4)
(*.f64 (*.f64 z -2) (/.f64 1 (*.f64 y (+.f64 y y))))
(*.f64 (/.f64 -1 y) (/.f64 z y))
(*.f64 (/.f64 -1 (*.f64 y y)) z)
(*.f64 (/.f64 1 y) (/.f64 z (neg.f64 y)))
(*.f64 (neg.f64 z) (/.f64 (/.f64 1 y) y))
(*.f64 (neg.f64 z) (/.f64 1 (*.f64 y y)))
(*.f64 (neg.f64 z) (neg.f64 (/.f64 -1 (*.f64 y y))))
(*.f64 (/.f64 z (*.f64 y y)) -1)
(*.f64 (*.f64 2 (/.f64 -1 (*.f64 y y))) (/.f64 z 2))
(*.f64 (/.f64 2 y) (/.f64 z (*.f64 y -2)))
(*.f64 (/.f64 2 y) (/.f64 (/.f64 z (neg.f64 y)) 2))
(*.f64 (*.f64 2 (/.f64 -1 y)) (/.f64 z (+.f64 y y)))
(*.f64 (*.f64 -2 (/.f64 z y)) (/.f64 1/2 y))
(*.f64 (*.f64 -2 (/.f64 z y)) (*.f64 (/.f64 1 y) 1/2))
(*.f64 (*.f64 -2 (/.f64 z y)) (*.f64 (/.f64 -1 y) -1/2))
(*.f64 (*.f64 (/.f64 z y) (/.f64 2 y)) -1/2)
(*.f64 1/2 (/.f64 (*.f64 z -2) (*.f64 y y)))
(*.f64 -1/2 (*.f64 (/.f64 z y) (/.f64 2 y)))
(*.f64 (/.f64 -1/2 y) (*.f64 z (/.f64 2 y)))
(*.f64 (/.f64 1/2 y) (*.f64 -2 (/.f64 z y)))
(*.f64 (/.f64 -1/2 (*.f64 y y)) (+.f64 z z))
(*.f64 (*.f64 (/.f64 1 y) 1/2) (*.f64 -2 (/.f64 z y)))
(*.f64 (*.f64 (/.f64 -1 y) -1/2) (*.f64 -2 (/.f64 z y)))
(*.f64 (*.f64 (/.f64 -1 (*.f64 y y)) 1/2) (+.f64 z z))
(*.f64 (/.f64 z (+.f64 y y)) (*.f64 2 (/.f64 -1 y)))
(*.f64 (/.f64 z (*.f64 y -2)) (/.f64 2 y))
(*.f64 (/.f64 (/.f64 z y) (*.f64 y -2)) 2)
(*.f64 (/.f64 (/.f64 1 y) y) (neg.f64 z))
(*.f64 (/.f64 (/.f64 z y) (+.f64 y y)) -2)
(*.f64 (/.f64 -1 (*.f64 y -4)) (*.f64 (/.f64 z y) -4))
(*.f64 (/.f64 z 2) (*.f64 2 (/.f64 -1 (*.f64 y y))))
(*.f64 (/.f64 (/.f64 z (neg.f64 y)) 2) (/.f64 2 y))
(*.f64 1/4 (*.f64 (/.f64 z (*.f64 y (neg.f64 y))) 4))
(*.f64 (/.f64 (/.f64 z (*.f64 y (neg.f64 y))) 2) 2)
(*.f64 (/.f64 z (*.f64 y (*.f64 y -2))) 2)
(*.f64 (/.f64 1 (*.f64 y (*.f64 y -4))) (*.f64 z 4))
(*.f64 (/.f64 z (*.f64 y (+.f64 y y))) -2)
(*.f64 (/.f64 1 (*.f64 y (+.f64 y y))) (*.f64 z -2))
(*.f64 (/.f64 1 (*.f64 y y)) (neg.f64 z))
(*.f64 (neg.f64 (/.f64 -1 (*.f64 y y))) (neg.f64 z))
(*.f64 (+.f64 (/.f64 1/2 y) (/.f64 1/2 y)) (/.f64 z (neg.f64 y)))
(*.f64 (+.f64 (/.f64 -1/2 y) (/.f64 -1/2 y)) (/.f64 z y))
(*.f64 (+.f64 (/.f64 -1/2 (*.f64 y y)) (/.f64 -1/2 (*.f64 y y))) z)
(pow.f64 (/.f64 z (*.f64 y (neg.f64 y))) 1)
(neg.f64 (/.f64 z (*.f64 y y)))
(-.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 0)
(*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 1)
(*.f64 1 (+.f64 (*.f64 y (/.f64 y z)) x))
(*.f64 2 (/.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 2))
(*.f64 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 2) 1/2)
(*.f64 1/2 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 2))
(*.f64 1/2 (+.f64 (+.f64 x x) (*.f64 y (*.f64 2 (/.f64 y z)))))
(*.f64 (/.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 2) 2)
(/.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 1)
(/.f64 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 2) 2)
(/.f64 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 4) 4)
(/.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 4)) 8)
(/.f64 (+.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 4)) (*.f64 2 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 4))) 16)
(pow.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 1)
Outputs
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(*.f64 -1 (/.f64 z (pow.f64 y 2)))
(neg.f64 (/.f64 z (pow.f64 y 2)))
(*.f64 -1 (/.f64 z (pow.f64 y 2)))
(neg.f64 (/.f64 z (pow.f64 y 2)))
(*.f64 -1 (/.f64 z (pow.f64 y 2)))
(neg.f64 (/.f64 z (pow.f64 y 2)))
(*.f64 -1 (/.f64 z (pow.f64 y 2)))
(neg.f64 (/.f64 z (pow.f64 y 2)))
(*.f64 -1 (/.f64 z (pow.f64 y 2)))
(neg.f64 (/.f64 z (pow.f64 y 2)))
(*.f64 -1 (/.f64 z (pow.f64 y 2)))
(neg.f64 (/.f64 z (pow.f64 y 2)))
(*.f64 -1 (/.f64 z (pow.f64 y 2)))
(neg.f64 (/.f64 z (pow.f64 y 2)))
(*.f64 -1 (/.f64 z (pow.f64 y 2)))
(neg.f64 (/.f64 z (pow.f64 y 2)))
(*.f64 -1 (/.f64 z (pow.f64 y 2)))
(neg.f64 (/.f64 z (pow.f64 y 2)))
(*.f64 -1 (/.f64 z (pow.f64 y 2)))
(neg.f64 (/.f64 z (pow.f64 y 2)))
(*.f64 -1 (/.f64 z (pow.f64 y 2)))
(neg.f64 (/.f64 z (pow.f64 y 2)))
(*.f64 -1 (/.f64 z (pow.f64 y 2)))
(neg.f64 (/.f64 z (pow.f64 y 2)))
(*.f64 -1 (/.f64 z (pow.f64 y 2)))
(neg.f64 (/.f64 z (pow.f64 y 2)))
(*.f64 -1 (/.f64 z (pow.f64 y 2)))
(neg.f64 (/.f64 z (pow.f64 y 2)))
(*.f64 -1 (/.f64 z (pow.f64 y 2)))
(neg.f64 (/.f64 z (pow.f64 y 2)))
(*.f64 -1 (/.f64 z (pow.f64 y 2)))
(neg.f64 (/.f64 z (pow.f64 y 2)))
(*.f64 -1 (/.f64 z (pow.f64 y 2)))
(neg.f64 (/.f64 z (pow.f64 y 2)))
(*.f64 -1 (/.f64 z (pow.f64 y 2)))
(neg.f64 (/.f64 z (pow.f64 y 2)))
(*.f64 -1 (/.f64 z (pow.f64 y 2)))
(neg.f64 (/.f64 z (pow.f64 y 2)))
(*.f64 -1 (/.f64 z (pow.f64 y 2)))
(neg.f64 (/.f64 z (pow.f64 y 2)))
(*.f64 -1 (/.f64 z (pow.f64 y 2)))
(neg.f64 (/.f64 z (pow.f64 y 2)))
(*.f64 -1 (/.f64 z (pow.f64 y 2)))
(neg.f64 (/.f64 z (pow.f64 y 2)))
(*.f64 -1 (/.f64 z (pow.f64 y 2)))
(neg.f64 (/.f64 z (pow.f64 y 2)))
(*.f64 -1 (/.f64 z (pow.f64 y 2)))
(neg.f64 (/.f64 z (pow.f64 y 2)))
(/.f64 (pow.f64 y 2) z)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
x
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
x
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(/.f64 (pow.f64 y 2) z)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
x
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
x
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
x
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(/.f64 (pow.f64 y 2) z)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(/.f64 (pow.f64 y 2) z)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 -1 (-.f64 1 (*.f64 y (/.f64 (neg.f64 y) z))))
(*.f64 y (/.f64 y z))
(/.f64 y (/.f64 z y))
(+.f64 (*.f64 y (/.f64 y z)) 0)
(+.f64 -1 (-.f64 1 (*.f64 y (/.f64 (neg.f64 y) z))))
(*.f64 y (/.f64 y z))
(/.f64 y (/.f64 z y))
(+.f64 0 (*.f64 y (/.f64 y z)))
(+.f64 -1 (-.f64 1 (*.f64 y (/.f64 (neg.f64 y) z))))
(*.f64 y (/.f64 y z))
(/.f64 y (/.f64 z y))
(-.f64 (*.f64 y (/.f64 y z)) 0)
(+.f64 -1 (-.f64 1 (*.f64 y (/.f64 (neg.f64 y) z))))
(*.f64 y (/.f64 y z))
(/.f64 y (/.f64 z y))
(-.f64 0 (*.f64 y (/.f64 (neg.f64 y) z)))
(+.f64 -1 (-.f64 1 (*.f64 y (/.f64 (neg.f64 y) z))))
(*.f64 y (/.f64 y z))
(/.f64 y (/.f64 z y))
(*.f64 -1 (*.f64 y (/.f64 (neg.f64 y) z)))
(+.f64 -1 (-.f64 1 (*.f64 y (/.f64 (neg.f64 y) z))))
(*.f64 y (/.f64 y z))
(/.f64 y (/.f64 z y))
(*.f64 y (/.f64 y z))
(+.f64 -1 (-.f64 1 (*.f64 y (/.f64 (neg.f64 y) z))))
(/.f64 y (/.f64 z y))
(*.f64 (neg.f64 y) (/.f64 (neg.f64 y) z))
(+.f64 -1 (-.f64 1 (*.f64 y (/.f64 (neg.f64 y) z))))
(*.f64 y (/.f64 y z))
(/.f64 y (/.f64 z y))
(*.f64 (*.f64 y (/.f64 y z)) 1)
(+.f64 -1 (-.f64 1 (*.f64 y (/.f64 (neg.f64 y) z))))
(*.f64 y (/.f64 y z))
(/.f64 y (/.f64 z y))
(*.f64 1 (*.f64 y (/.f64 y z)))
(+.f64 -1 (-.f64 1 (*.f64 y (/.f64 (neg.f64 y) z))))
(*.f64 y (/.f64 y z))
(/.f64 y (/.f64 z y))
(*.f64 (+.f64 y y) (/.f64 1/2 (/.f64 z y)))
(+.f64 -1 (-.f64 1 (*.f64 y (/.f64 (neg.f64 y) z))))
(*.f64 y (/.f64 y z))
(/.f64 y (/.f64 z y))
(*.f64 (+.f64 y y) (*.f64 (/.f64 y z) 1/2))
(+.f64 -1 (-.f64 1 (*.f64 y (/.f64 (neg.f64 y) z))))
(*.f64 y (/.f64 y z))
(/.f64 y (/.f64 z y))
(*.f64 -2 (/.f64 y (*.f64 -2 (/.f64 z y))))
(*.f64 -2 (/.f64 (/.f64 y -2) (/.f64 z y)))
(*.f64 -2 (/.f64 y (/.f64 (*.f64 z -2) y)))
(*.f64 -2 (/.f64 y (*.f64 z (/.f64 -2 y))))
(*.f64 -2 (*.f64 y (*.f64 y (/.f64 -1/2 z))))
(*.f64 y (*.f64 (*.f64 y -2) (/.f64 -1/2 z)))
(*.f64 -2 (*.f64 (/.f64 y (*.f64 z -2)) y))
(*.f64 -2 (/.f64 (/.f64 y -2) (/.f64 z y)))
(*.f64 -2 (/.f64 y (/.f64 (*.f64 z -2) y)))
(*.f64 -2 (/.f64 y (*.f64 z (/.f64 -2 y))))
(*.f64 -2 (*.f64 y (*.f64 y (/.f64 -1/2 z))))
(*.f64 y (*.f64 (*.f64 y -2) (/.f64 -1/2 z)))
(*.f64 (*.f64 y -2) (/.f64 y (*.f64 z -2)))
(*.f64 -2 (/.f64 (/.f64 y -2) (/.f64 z y)))
(*.f64 -2 (/.f64 y (/.f64 (*.f64 z -2) y)))
(*.f64 -2 (/.f64 y (*.f64 z (/.f64 -2 y))))
(*.f64 -2 (*.f64 y (*.f64 y (/.f64 -1/2 z))))
(*.f64 y (*.f64 (*.f64 y -2) (/.f64 -1/2 z)))
(*.f64 (*.f64 y -2) (/.f64 1 (*.f64 -2 (/.f64 z y))))
(*.f64 -2 (/.f64 (/.f64 y -2) (/.f64 z y)))
(*.f64 -2 (/.f64 y (/.f64 (*.f64 z -2) y)))
(*.f64 -2 (/.f64 y (*.f64 z (/.f64 -2 y))))
(*.f64 -2 (*.f64 y (*.f64 y (/.f64 -1/2 z))))
(*.f64 y (*.f64 (*.f64 y -2) (/.f64 -1/2 z)))
(*.f64 (*.f64 y -2) (*.f64 (/.f64 1 (*.f64 z -2)) y))
(*.f64 -2 (/.f64 (/.f64 y -2) (/.f64 z y)))
(*.f64 -2 (/.f64 y (/.f64 (*.f64 z -2) y)))
(*.f64 -2 (/.f64 y (*.f64 z (/.f64 -2 y))))
(*.f64 -2 (*.f64 y (*.f64 y (/.f64 -1/2 z))))
(*.f64 y (*.f64 (*.f64 y -2) (/.f64 -1/2 z)))
(*.f64 (*.f64 y (neg.f64 y)) (/.f64 -1 z))
(+.f64 -1 (-.f64 1 (*.f64 y (/.f64 (neg.f64 y) z))))
(*.f64 y (/.f64 y z))
(/.f64 y (/.f64 z y))
(*.f64 2 (/.f64 y (*.f64 z (/.f64 2 y))))
(+.f64 -1 (-.f64 1 (*.f64 y (/.f64 (neg.f64 y) z))))
(*.f64 y (/.f64 y z))
(/.f64 y (/.f64 z y))
(*.f64 2 (/.f64 (*.f64 y (/.f64 y z)) 2))
(+.f64 -1 (-.f64 1 (*.f64 y (/.f64 (neg.f64 y) z))))
(*.f64 y (/.f64 y z))
(/.f64 y (/.f64 z y))
(*.f64 2 (*.f64 (*.f64 (/.f64 y z) 1/2) y))
(+.f64 -1 (-.f64 1 (*.f64 y (/.f64 (neg.f64 y) z))))
(*.f64 y (/.f64 y z))
(/.f64 y (/.f64 z y))
(*.f64 2 (*.f64 (/.f64 1/2 (/.f64 z y)) y))
(+.f64 -1 (-.f64 1 (*.f64 y (/.f64 (neg.f64 y) z))))
(*.f64 y (/.f64 y z))
(/.f64 y (/.f64 z y))
(*.f64 (*.f64 y -4) (/.f64 -1 (/.f64 (*.f64 z 4) y)))
(*.f64 -4 (*.f64 (/.f64 -1/4 (/.f64 z y)) y))
(*.f64 -4 (*.f64 y (/.f64 y (*.f64 z -4))))
(*.f64 y (*.f64 -4 (/.f64 -1/4 (/.f64 z y))))
(*.f64 (*.f64 y (*.f64 y -2)) (/.f64 1 (*.f64 z -2)))
(*.f64 -2 (/.f64 (/.f64 y -2) (/.f64 z y)))
(*.f64 -2 (/.f64 y (/.f64 (*.f64 z -2) y)))
(*.f64 -2 (/.f64 y (*.f64 z (/.f64 -2 y))))
(*.f64 -2 (*.f64 y (*.f64 y (/.f64 -1/2 z))))
(*.f64 y (*.f64 (*.f64 y -2) (/.f64 -1/2 z)))
(*.f64 (*.f64 y 4) (/.f64 1 (/.f64 (*.f64 z 4) y)))
(*.f64 (*.f64 y 4) (/.f64 y (/.f64 (*.f64 z 4) 1)))
(*.f64 4 (*.f64 (/.f64 y (*.f64 z 4)) y))
(*.f64 (*.f64 y 4) (/.f64 y (*.f64 z 4)))
(*.f64 (/.f64 y (*.f64 z 4)) (*.f64 y 4))
(*.f64 4 (*.f64 y (/.f64 y (*.f64 z 4))))
(*.f64 (/.f64 y z) y)
(+.f64 -1 (-.f64 1 (*.f64 y (/.f64 (neg.f64 y) z))))
(*.f64 y (/.f64 y z))
(/.f64 y (/.f64 z y))
(*.f64 (/.f64 y z) (/.f64 -1 (/.f64 -1 y)))
(+.f64 -1 (-.f64 1 (*.f64 y (/.f64 (neg.f64 y) z))))
(*.f64 y (/.f64 y z))
(/.f64 y (/.f64 z y))
(*.f64 (/.f64 (neg.f64 y) z) (neg.f64 y))
(+.f64 -1 (-.f64 1 (*.f64 y (/.f64 (neg.f64 y) z))))
(*.f64 y (/.f64 y z))
(/.f64 y (/.f64 z y))
(*.f64 (/.f64 (neg.f64 y) z) (/.f64 -1 (/.f64 1 y)))
(+.f64 -1 (-.f64 1 (*.f64 y (/.f64 (neg.f64 y) z))))
(*.f64 y (/.f64 y z))
(/.f64 y (/.f64 z y))
(*.f64 (*.f64 y (/.f64 (neg.f64 y) z)) -1)
(+.f64 -1 (-.f64 1 (*.f64 y (/.f64 (neg.f64 y) z))))
(*.f64 y (/.f64 y z))
(/.f64 y (/.f64 z y))
(*.f64 (*.f64 y (*.f64 2 (/.f64 y z))) 1/2)
(+.f64 -1 (-.f64 1 (*.f64 y (/.f64 (neg.f64 y) z))))
(*.f64 y (/.f64 y z))
(/.f64 y (/.f64 z y))
(*.f64 (*.f64 y (*.f64 y (/.f64 -2 z))) -1/2)
(*.f64 (*.f64 y (/.f64 -2 z)) (*.f64 -1/2 y))
(*.f64 y (*.f64 y (*.f64 (/.f64 -2 z) -1/2)))
(*.f64 (/.f64 -2 z) (*.f64 (*.f64 y y) -1/2))
(*.f64 (/.f64 -1 z) (*.f64 y (neg.f64 y)))
(+.f64 -1 (-.f64 1 (*.f64 y (/.f64 (neg.f64 y) z))))
(*.f64 y (/.f64 y z))
(/.f64 y (/.f64 z y))
(*.f64 (/.f64 -1 z) (/.f64 y (/.f64 -1 y)))
(+.f64 -1 (-.f64 1 (*.f64 y (/.f64 (neg.f64 y) z))))
(*.f64 y (/.f64 y z))
(/.f64 y (/.f64 z y))
(*.f64 1/2 (*.f64 y (*.f64 2 (/.f64 y z))))
(+.f64 -1 (-.f64 1 (*.f64 y (/.f64 (neg.f64 y) z))))
(*.f64 y (/.f64 y z))
(/.f64 y (/.f64 z y))
(*.f64 -1/2 (*.f64 y (*.f64 y (/.f64 -2 z))))
(*.f64 (*.f64 y (*.f64 y (/.f64 -2 z))) -1/2)
(*.f64 (*.f64 y (/.f64 -2 z)) (*.f64 -1/2 y))
(*.f64 y (*.f64 y (*.f64 (/.f64 -2 z) -1/2)))
(*.f64 (/.f64 -2 z) (*.f64 (*.f64 y y) -1/2))
(*.f64 (/.f64 1 z) (*.f64 y y))
(+.f64 -1 (-.f64 1 (*.f64 y (/.f64 (neg.f64 y) z))))
(*.f64 y (/.f64 y z))
(/.f64 y (/.f64 z y))
(*.f64 (/.f64 1 z) (/.f64 y (/.f64 1 y)))
(+.f64 -1 (-.f64 1 (*.f64 y (/.f64 (neg.f64 y) z))))
(*.f64 y (/.f64 y z))
(/.f64 y (/.f64 z y))
(*.f64 (/.f64 1/2 (/.f64 z y)) (+.f64 y y))
(+.f64 -1 (-.f64 1 (*.f64 y (/.f64 (neg.f64 y) z))))
(*.f64 y (/.f64 y z))
(/.f64 y (/.f64 z y))
(*.f64 (*.f64 y y) (/.f64 1 z))
(+.f64 -1 (-.f64 1 (*.f64 y (/.f64 (neg.f64 y) z))))
(*.f64 y (/.f64 y z))
(/.f64 y (/.f64 z y))
(*.f64 (*.f64 (/.f64 y z) 1/2) (+.f64 y y))
(+.f64 -1 (-.f64 1 (*.f64 y (/.f64 (neg.f64 y) z))))
(*.f64 y (/.f64 y z))
(/.f64 y (/.f64 z y))
(*.f64 (/.f64 y (/.f64 -1 y)) (/.f64 -1 z))
(+.f64 -1 (-.f64 1 (*.f64 y (/.f64 (neg.f64 y) z))))
(*.f64 y (/.f64 y z))
(/.f64 y (/.f64 z y))
(*.f64 (/.f64 y (/.f64 1 y)) (/.f64 1 z))
(+.f64 -1 (-.f64 1 (*.f64 y (/.f64 (neg.f64 y) z))))
(*.f64 y (/.f64 y z))
(/.f64 y (/.f64 z y))
(*.f64 (/.f64 y (*.f64 z (/.f64 2 y))) 2)
(+.f64 -1 (-.f64 1 (*.f64 y (/.f64 (neg.f64 y) z))))
(*.f64 y (/.f64 y z))
(/.f64 y (/.f64 z y))
(*.f64 (/.f64 y (*.f64 z -2)) (*.f64 y -2))
(*.f64 -2 (/.f64 (/.f64 y -2) (/.f64 z y)))
(*.f64 -2 (/.f64 y (/.f64 (*.f64 z -2) y)))
(*.f64 -2 (/.f64 y (*.f64 z (/.f64 -2 y))))
(*.f64 -2 (*.f64 y (*.f64 y (/.f64 -1/2 z))))
(*.f64 y (*.f64 (*.f64 y -2) (/.f64 -1/2 z)))
(*.f64 (/.f64 1 (*.f64 -2 (/.f64 z y))) (*.f64 y -2))
(*.f64 -2 (/.f64 (/.f64 y -2) (/.f64 z y)))
(*.f64 -2 (/.f64 y (/.f64 (*.f64 z -2) y)))
(*.f64 -2 (/.f64 y (*.f64 z (/.f64 -2 y))))
(*.f64 -2 (*.f64 y (*.f64 y (/.f64 -1/2 z))))
(*.f64 y (*.f64 (*.f64 y -2) (/.f64 -1/2 z)))
(*.f64 (/.f64 -1 (/.f64 1 y)) (/.f64 (neg.f64 y) z))
(+.f64 -1 (-.f64 1 (*.f64 y (/.f64 (neg.f64 y) z))))
(*.f64 y (/.f64 y z))
(/.f64 y (/.f64 z y))
(*.f64 (/.f64 -1 (/.f64 -1 y)) (/.f64 y z))
(+.f64 -1 (-.f64 1 (*.f64 y (/.f64 (neg.f64 y) z))))
(*.f64 y (/.f64 y z))
(/.f64 y (/.f64 z y))
(*.f64 (/.f64 1 (*.f64 z -2)) (*.f64 y (*.f64 y -2)))
(*.f64 -2 (/.f64 (/.f64 y -2) (/.f64 z y)))
(*.f64 -2 (/.f64 y (/.f64 (*.f64 z -2) y)))
(*.f64 -2 (/.f64 y (*.f64 z (/.f64 -2 y))))
(*.f64 -2 (*.f64 y (*.f64 y (/.f64 -1/2 z))))
(*.f64 y (*.f64 (*.f64 y -2) (/.f64 -1/2 z)))
(*.f64 (/.f64 y (*.f64 -2 (/.f64 z y))) -2)
(*.f64 -2 (/.f64 (/.f64 y -2) (/.f64 z y)))
(*.f64 -2 (/.f64 y (/.f64 (*.f64 z -2) y)))
(*.f64 -2 (/.f64 y (*.f64 z (/.f64 -2 y))))
(*.f64 -2 (*.f64 y (*.f64 y (/.f64 -1/2 z))))
(*.f64 y (*.f64 (*.f64 y -2) (/.f64 -1/2 z)))
(*.f64 (/.f64 -1 (/.f64 (*.f64 z 4) y)) (*.f64 y -4))
(*.f64 (*.f64 y -4) (/.f64 -1 (/.f64 (*.f64 z 4) y)))
(*.f64 -4 (*.f64 (/.f64 -1/4 (/.f64 z y)) y))
(*.f64 -4 (*.f64 y (/.f64 y (*.f64 z -4))))
(*.f64 y (*.f64 -4 (/.f64 -1/4 (/.f64 z y))))
(*.f64 (/.f64 1 (/.f64 (*.f64 z 4) y)) (*.f64 y 4))
(*.f64 (*.f64 y 4) (/.f64 y (/.f64 (*.f64 z 4) 1)))
(*.f64 4 (*.f64 (/.f64 y (*.f64 z 4)) y))
(*.f64 (*.f64 y 4) (/.f64 y (*.f64 z 4)))
(*.f64 (/.f64 y (*.f64 z 4)) (*.f64 y 4))
(*.f64 4 (*.f64 y (/.f64 y (*.f64 z 4))))
(*.f64 (/.f64 (*.f64 y (/.f64 y z)) 2) 2)
(+.f64 -1 (-.f64 1 (*.f64 y (/.f64 (neg.f64 y) z))))
(*.f64 y (/.f64 y z))
(/.f64 y (/.f64 z y))
(*.f64 (+.f64 (/.f64 1/2 (/.f64 z y)) (/.f64 1/2 (/.f64 z y))) y)
(+.f64 -1 (-.f64 1 (*.f64 y (/.f64 (neg.f64 y) z))))
(*.f64 y (/.f64 y z))
(/.f64 y (/.f64 z y))
(pow.f64 (*.f64 y (/.f64 y z)) 1)
(+.f64 -1 (-.f64 1 (*.f64 y (/.f64 (neg.f64 y) z))))
(*.f64 y (/.f64 y z))
(/.f64 y (/.f64 z y))
(neg.f64 (*.f64 y (/.f64 (neg.f64 y) z)))
(+.f64 -1 (-.f64 1 (*.f64 y (/.f64 (neg.f64 y) z))))
(*.f64 y (/.f64 y z))
(/.f64 y (/.f64 z y))
(+.f64 -1 (-.f64 1 (/.f64 z (*.f64 y y))))
(/.f64 z (*.f64 y (neg.f64 y)))
(/.f64 (/.f64 z y) (neg.f64 y))
(+.f64 (/.f64 z (*.f64 y (neg.f64 y))) 0)
(+.f64 -1 (-.f64 1 (/.f64 z (*.f64 y y))))
(/.f64 z (*.f64 y (neg.f64 y)))
(/.f64 (/.f64 z y) (neg.f64 y))
(+.f64 0 (/.f64 z (*.f64 y (neg.f64 y))))
(+.f64 -1 (-.f64 1 (/.f64 z (*.f64 y y))))
(/.f64 z (*.f64 y (neg.f64 y)))
(/.f64 (/.f64 z y) (neg.f64 y))
(+.f64 (-.f64 1 (/.f64 z (*.f64 y y))) -1)
(+.f64 -1 (-.f64 1 (/.f64 z (*.f64 y y))))
(/.f64 z (*.f64 y (neg.f64 y)))
(/.f64 (/.f64 z y) (neg.f64 y))
(-.f64 (/.f64 z (*.f64 y (neg.f64 y))) 0)
(+.f64 -1 (-.f64 1 (/.f64 z (*.f64 y y))))
(/.f64 z (*.f64 y (neg.f64 y)))
(/.f64 (/.f64 z y) (neg.f64 y))
(-.f64 0 (/.f64 z (*.f64 y y)))
(+.f64 -1 (-.f64 1 (/.f64 z (*.f64 y y))))
(/.f64 z (*.f64 y (neg.f64 y)))
(/.f64 (/.f64 z y) (neg.f64 y))
(*.f64 -1 (/.f64 z (*.f64 y y)))
(+.f64 -1 (-.f64 1 (/.f64 z (*.f64 y y))))
(/.f64 z (*.f64 y (neg.f64 y)))
(/.f64 (/.f64 z y) (neg.f64 y))
(*.f64 z (/.f64 -1 (*.f64 y y)))
(+.f64 -1 (-.f64 1 (/.f64 z (*.f64 y y))))
(/.f64 z (*.f64 y (neg.f64 y)))
(/.f64 (/.f64 z y) (neg.f64 y))
(*.f64 (/.f64 z (neg.f64 y)) (/.f64 1 y))
(+.f64 -1 (-.f64 1 (/.f64 z (*.f64 y y))))
(/.f64 z (*.f64 y (neg.f64 y)))
(/.f64 (/.f64 z y) (neg.f64 y))
(*.f64 (/.f64 z (*.f64 y (neg.f64 y))) 1)
(+.f64 -1 (-.f64 1 (/.f64 z (*.f64 y y))))
(/.f64 z (*.f64 y (neg.f64 y)))
(/.f64 (/.f64 z y) (neg.f64 y))
(*.f64 1 (/.f64 z (*.f64 y (neg.f64 y))))
(+.f64 -1 (-.f64 1 (/.f64 z (*.f64 y y))))
(/.f64 z (*.f64 y (neg.f64 y)))
(/.f64 (/.f64 z y) (neg.f64 y))
(*.f64 -2 (/.f64 (/.f64 z y) (+.f64 y y)))
(*.f64 -2 (/.f64 z (*.f64 y (+.f64 y y))))
(*.f64 (*.f64 z -2) (/.f64 1/2 (*.f64 y y)))
(*.f64 -2 (/.f64 z (*.f64 y (+.f64 y y))))
(*.f64 -2 (/.f64 (/.f64 z y) (+.f64 y y)))
(*.f64 (*.f64 z -2) (/.f64 1/2 (*.f64 y y)))
(*.f64 (/.f64 (*.f64 z -2) (*.f64 y y)) 1/2)
(+.f64 -1 (-.f64 1 (/.f64 z (*.f64 y y))))
(/.f64 z (*.f64 y (neg.f64 y)))
(/.f64 (/.f64 z y) (neg.f64 y))
(*.f64 (+.f64 z z) (/.f64 -1/2 (*.f64 y y)))
(+.f64 -1 (-.f64 1 (/.f64 z (*.f64 y y))))
(/.f64 z (*.f64 y (neg.f64 y)))
(/.f64 (/.f64 z y) (neg.f64 y))
(*.f64 (+.f64 z z) (*.f64 (/.f64 -1 (*.f64 y y)) 1/2))
(+.f64 -1 (-.f64 1 (/.f64 z (*.f64 y y))))
(/.f64 z (*.f64 y (neg.f64 y)))
(/.f64 (/.f64 z y) (neg.f64 y))
(*.f64 (/.f64 z y) (/.f64 -1 y))
(+.f64 -1 (-.f64 1 (/.f64 z (*.f64 y y))))
(/.f64 z (*.f64 y (neg.f64 y)))
(/.f64 (/.f64 z y) (neg.f64 y))
(*.f64 2 (/.f64 (/.f64 z y) (*.f64 y -2)))
(+.f64 -1 (-.f64 1 (/.f64 z (*.f64 y y))))
(/.f64 z (*.f64 y (neg.f64 y)))
(/.f64 (/.f64 z y) (neg.f64 y))
(*.f64 2 (/.f64 (/.f64 z (*.f64 y (neg.f64 y))) 2))
(+.f64 -1 (-.f64 1 (/.f64 z (*.f64 y y))))
(/.f64 z (*.f64 y (neg.f64 y)))
(/.f64 (/.f64 z y) (neg.f64 y))
(*.f64 2 (/.f64 z (*.f64 y (*.f64 y -2))))
(+.f64 -1 (-.f64 1 (/.f64 z (*.f64 y y))))
(/.f64 z (*.f64 y (neg.f64 y)))
(/.f64 (/.f64 z y) (neg.f64 y))
(*.f64 2 (*.f64 (/.f64 -1/2 (*.f64 y y)) z))
(+.f64 -1 (-.f64 1 (/.f64 z (*.f64 y y))))
(/.f64 z (*.f64 y (neg.f64 y)))
(/.f64 (/.f64 z y) (neg.f64 y))
(*.f64 2 (*.f64 (/.f64 -1/2 y) (/.f64 z y)))
(+.f64 -1 (-.f64 1 (/.f64 z (*.f64 y y))))
(/.f64 z (*.f64 y (neg.f64 y)))
(/.f64 (/.f64 z y) (neg.f64 y))
(*.f64 2 (*.f64 (/.f64 1/2 y) (/.f64 z (neg.f64 y))))
(*.f64 2 (*.f64 (/.f64 z (neg.f64 y)) (/.f64 1/2 y)))
(*.f64 z (*.f64 (/.f64 -2 y) (/.f64 1/2 y)))
(*.f64 (*.f64 z 4) (/.f64 1 (*.f64 y (*.f64 y -4))))
(*.f64 4 (*.f64 (/.f64 1 (*.f64 y (*.f64 y -4))) z))
(*.f64 (*.f64 z 4) (/.f64 (/.f64 -1/4 y) y))
(*.f64 z (*.f64 4 (/.f64 (/.f64 -1/4 y) y)))
(*.f64 (*.f64 (/.f64 z y) -4) (/.f64 -1 (*.f64 y -4)))
(*.f64 (/.f64 z y) (*.f64 -4 (/.f64 -1 (*.f64 y -4))))
(*.f64 (/.f64 z y) (*.f64 -4 (/.f64 1/4 y)))
(*.f64 -4 (*.f64 (/.f64 z y) (/.f64 1/4 y)))
(*.f64 (*.f64 z (/.f64 2 y)) (/.f64 -1/2 y))
(+.f64 -1 (-.f64 1 (/.f64 z (*.f64 y y))))
(/.f64 z (*.f64 y (neg.f64 y)))
(/.f64 (/.f64 z y) (neg.f64 y))
(*.f64 (*.f64 (/.f64 z (*.f64 y (neg.f64 y))) 4) 1/4)
(+.f64 -1 (-.f64 1 (/.f64 z (*.f64 y y))))
(/.f64 z (*.f64 y (neg.f64 y)))
(/.f64 (/.f64 z y) (neg.f64 y))
(*.f64 (*.f64 z -2) (/.f64 1 (*.f64 y (+.f64 y y))))
(*.f64 -2 (/.f64 z (*.f64 y (+.f64 y y))))
(*.f64 -2 (/.f64 (/.f64 z y) (+.f64 y y)))
(*.f64 (*.f64 z -2) (/.f64 1/2 (*.f64 y y)))
(*.f64 (/.f64 -1 y) (/.f64 z y))
(+.f64 -1 (-.f64 1 (/.f64 z (*.f64 y y))))
(/.f64 z (*.f64 y (neg.f64 y)))
(/.f64 (/.f64 z y) (neg.f64 y))
(*.f64 (/.f64 -1 (*.f64 y y)) z)
(+.f64 -1 (-.f64 1 (/.f64 z (*.f64 y y))))
(/.f64 z (*.f64 y (neg.f64 y)))
(/.f64 (/.f64 z y) (neg.f64 y))
(*.f64 (/.f64 1 y) (/.f64 z (neg.f64 y)))
(+.f64 -1 (-.f64 1 (/.f64 z (*.f64 y y))))
(/.f64 z (*.f64 y (neg.f64 y)))
(/.f64 (/.f64 z y) (neg.f64 y))
(*.f64 (neg.f64 z) (/.f64 (/.f64 1 y) y))
(+.f64 -1 (-.f64 1 (/.f64 z (*.f64 y y))))
(/.f64 z (*.f64 y (neg.f64 y)))
(/.f64 (/.f64 z y) (neg.f64 y))
(*.f64 (neg.f64 z) (/.f64 1 (*.f64 y y)))
(+.f64 -1 (-.f64 1 (/.f64 z (*.f64 y y))))
(/.f64 z (*.f64 y (neg.f64 y)))
(/.f64 (/.f64 z y) (neg.f64 y))
(*.f64 (neg.f64 z) (neg.f64 (/.f64 -1 (*.f64 y y))))
(+.f64 -1 (-.f64 1 (/.f64 z (*.f64 y y))))
(/.f64 z (*.f64 y (neg.f64 y)))
(/.f64 (/.f64 z y) (neg.f64 y))
(*.f64 (/.f64 z (*.f64 y y)) -1)
(+.f64 -1 (-.f64 1 (/.f64 z (*.f64 y y))))
(/.f64 z (*.f64 y (neg.f64 y)))
(/.f64 (/.f64 z y) (neg.f64 y))
(*.f64 (*.f64 2 (/.f64 -1 (*.f64 y y))) (/.f64 z 2))
(+.f64 -1 (-.f64 1 (/.f64 z (*.f64 y y))))
(/.f64 z (*.f64 y (neg.f64 y)))
(/.f64 (/.f64 z y) (neg.f64 y))
(*.f64 (/.f64 2 y) (/.f64 z (*.f64 y -2)))
(+.f64 -1 (-.f64 1 (/.f64 z (*.f64 y y))))
(/.f64 z (*.f64 y (neg.f64 y)))
(/.f64 (/.f64 z y) (neg.f64 y))
(*.f64 (/.f64 2 y) (/.f64 (/.f64 z (neg.f64 y)) 2))
(+.f64 -1 (-.f64 1 (/.f64 z (*.f64 y y))))
(/.f64 z (*.f64 y (neg.f64 y)))
(/.f64 (/.f64 z y) (neg.f64 y))
(*.f64 (*.f64 2 (/.f64 -1 y)) (/.f64 z (+.f64 y y)))
(+.f64 -1 (-.f64 1 (/.f64 z (*.f64 y y))))
(/.f64 z (*.f64 y (neg.f64 y)))
(/.f64 (/.f64 z y) (neg.f64 y))
(*.f64 (*.f64 -2 (/.f64 z y)) (/.f64 1/2 y))
(*.f64 2 (*.f64 (/.f64 z (neg.f64 y)) (/.f64 1/2 y)))
(*.f64 z (*.f64 (/.f64 -2 y) (/.f64 1/2 y)))
(*.f64 (*.f64 -2 (/.f64 z y)) (*.f64 (/.f64 1 y) 1/2))
(+.f64 -1 (-.f64 1 (/.f64 z (*.f64 y y))))
(/.f64 z (*.f64 y (neg.f64 y)))
(/.f64 (/.f64 z y) (neg.f64 y))
(*.f64 (*.f64 -2 (/.f64 z y)) (*.f64 (/.f64 -1 y) -1/2))
(+.f64 -1 (-.f64 1 (/.f64 z (*.f64 y y))))
(/.f64 z (*.f64 y (neg.f64 y)))
(/.f64 (/.f64 z y) (neg.f64 y))
(*.f64 (*.f64 (/.f64 z y) (/.f64 2 y)) -1/2)
(*.f64 (/.f64 z y) (*.f64 (/.f64 2 y) -1/2))
(*.f64 (/.f64 2 y) (*.f64 (/.f64 z y) -1/2))
(*.f64 1/2 (/.f64 (*.f64 z -2) (*.f64 y y)))
(+.f64 -1 (-.f64 1 (/.f64 z (*.f64 y y))))
(/.f64 z (*.f64 y (neg.f64 y)))
(/.f64 (/.f64 z y) (neg.f64 y))
(*.f64 -1/2 (*.f64 (/.f64 z y) (/.f64 2 y)))
(*.f64 (/.f64 z y) (*.f64 (/.f64 2 y) -1/2))
(*.f64 (/.f64 2 y) (*.f64 (/.f64 z y) -1/2))
(*.f64 (/.f64 -1/2 y) (*.f64 z (/.f64 2 y)))
(+.f64 -1 (-.f64 1 (/.f64 z (*.f64 y y))))
(/.f64 z (*.f64 y (neg.f64 y)))
(/.f64 (/.f64 z y) (neg.f64 y))
(*.f64 (/.f64 1/2 y) (*.f64 -2 (/.f64 z y)))
(*.f64 2 (*.f64 (/.f64 z (neg.f64 y)) (/.f64 1/2 y)))
(*.f64 z (*.f64 (/.f64 -2 y) (/.f64 1/2 y)))
(*.f64 (/.f64 -1/2 (*.f64 y y)) (+.f64 z z))
(+.f64 -1 (-.f64 1 (/.f64 z (*.f64 y y))))
(/.f64 z (*.f64 y (neg.f64 y)))
(/.f64 (/.f64 z y) (neg.f64 y))
(*.f64 (*.f64 (/.f64 1 y) 1/2) (*.f64 -2 (/.f64 z y)))
(+.f64 -1 (-.f64 1 (/.f64 z (*.f64 y y))))
(/.f64 z (*.f64 y (neg.f64 y)))
(/.f64 (/.f64 z y) (neg.f64 y))
(*.f64 (*.f64 (/.f64 -1 y) -1/2) (*.f64 -2 (/.f64 z y)))
(+.f64 -1 (-.f64 1 (/.f64 z (*.f64 y y))))
(/.f64 z (*.f64 y (neg.f64 y)))
(/.f64 (/.f64 z y) (neg.f64 y))
(*.f64 (*.f64 (/.f64 -1 (*.f64 y y)) 1/2) (+.f64 z z))
(+.f64 -1 (-.f64 1 (/.f64 z (*.f64 y y))))
(/.f64 z (*.f64 y (neg.f64 y)))
(/.f64 (/.f64 z y) (neg.f64 y))
(*.f64 (/.f64 z (+.f64 y y)) (*.f64 2 (/.f64 -1 y)))
(+.f64 -1 (-.f64 1 (/.f64 z (*.f64 y y))))
(/.f64 z (*.f64 y (neg.f64 y)))
(/.f64 (/.f64 z y) (neg.f64 y))
(*.f64 (/.f64 z (*.f64 y -2)) (/.f64 2 y))
(+.f64 -1 (-.f64 1 (/.f64 z (*.f64 y y))))
(/.f64 z (*.f64 y (neg.f64 y)))
(/.f64 (/.f64 z y) (neg.f64 y))
(*.f64 (/.f64 (/.f64 z y) (*.f64 y -2)) 2)
(+.f64 -1 (-.f64 1 (/.f64 z (*.f64 y y))))
(/.f64 z (*.f64 y (neg.f64 y)))
(/.f64 (/.f64 z y) (neg.f64 y))
(*.f64 (/.f64 (/.f64 1 y) y) (neg.f64 z))
(+.f64 -1 (-.f64 1 (/.f64 z (*.f64 y y))))
(/.f64 z (*.f64 y (neg.f64 y)))
(/.f64 (/.f64 z y) (neg.f64 y))
(*.f64 (/.f64 (/.f64 z y) (+.f64 y y)) -2)
(*.f64 -2 (/.f64 z (*.f64 y (+.f64 y y))))
(*.f64 -2 (/.f64 (/.f64 z y) (+.f64 y y)))
(*.f64 (*.f64 z -2) (/.f64 1/2 (*.f64 y y)))
(*.f64 (/.f64 -1 (*.f64 y -4)) (*.f64 (/.f64 z y) -4))
(*.f64 (/.f64 z y) (*.f64 -4 (/.f64 -1 (*.f64 y -4))))
(*.f64 (/.f64 z y) (*.f64 -4 (/.f64 1/4 y)))
(*.f64 -4 (*.f64 (/.f64 z y) (/.f64 1/4 y)))
(*.f64 (/.f64 z 2) (*.f64 2 (/.f64 -1 (*.f64 y y))))
(+.f64 -1 (-.f64 1 (/.f64 z (*.f64 y y))))
(/.f64 z (*.f64 y (neg.f64 y)))
(/.f64 (/.f64 z y) (neg.f64 y))
(*.f64 (/.f64 (/.f64 z (neg.f64 y)) 2) (/.f64 2 y))
(+.f64 -1 (-.f64 1 (/.f64 z (*.f64 y y))))
(/.f64 z (*.f64 y (neg.f64 y)))
(/.f64 (/.f64 z y) (neg.f64 y))
(*.f64 1/4 (*.f64 (/.f64 z (*.f64 y (neg.f64 y))) 4))
(+.f64 -1 (-.f64 1 (/.f64 z (*.f64 y y))))
(/.f64 z (*.f64 y (neg.f64 y)))
(/.f64 (/.f64 z y) (neg.f64 y))
(*.f64 (/.f64 (/.f64 z (*.f64 y (neg.f64 y))) 2) 2)
(+.f64 -1 (-.f64 1 (/.f64 z (*.f64 y y))))
(/.f64 z (*.f64 y (neg.f64 y)))
(/.f64 (/.f64 z y) (neg.f64 y))
(*.f64 (/.f64 z (*.f64 y (*.f64 y -2))) 2)
(+.f64 -1 (-.f64 1 (/.f64 z (*.f64 y y))))
(/.f64 z (*.f64 y (neg.f64 y)))
(/.f64 (/.f64 z y) (neg.f64 y))
(*.f64 (/.f64 1 (*.f64 y (*.f64 y -4))) (*.f64 z 4))
(*.f64 (*.f64 z 4) (/.f64 1 (*.f64 y (*.f64 y -4))))
(*.f64 4 (*.f64 (/.f64 1 (*.f64 y (*.f64 y -4))) z))
(*.f64 (*.f64 z 4) (/.f64 (/.f64 -1/4 y) y))
(*.f64 z (*.f64 4 (/.f64 (/.f64 -1/4 y) y)))
(*.f64 (/.f64 z (*.f64 y (+.f64 y y))) -2)
(*.f64 -2 (/.f64 z (*.f64 y (+.f64 y y))))
(*.f64 -2 (/.f64 (/.f64 z y) (+.f64 y y)))
(*.f64 (*.f64 z -2) (/.f64 1/2 (*.f64 y y)))
(*.f64 (/.f64 1 (*.f64 y (+.f64 y y))) (*.f64 z -2))
(*.f64 -2 (/.f64 z (*.f64 y (+.f64 y y))))
(*.f64 -2 (/.f64 (/.f64 z y) (+.f64 y y)))
(*.f64 (*.f64 z -2) (/.f64 1/2 (*.f64 y y)))
(*.f64 (/.f64 1 (*.f64 y y)) (neg.f64 z))
(+.f64 -1 (-.f64 1 (/.f64 z (*.f64 y y))))
(/.f64 z (*.f64 y (neg.f64 y)))
(/.f64 (/.f64 z y) (neg.f64 y))
(*.f64 (neg.f64 (/.f64 -1 (*.f64 y y))) (neg.f64 z))
(+.f64 -1 (-.f64 1 (/.f64 z (*.f64 y y))))
(/.f64 z (*.f64 y (neg.f64 y)))
(/.f64 (/.f64 z y) (neg.f64 y))
(*.f64 (+.f64 (/.f64 1/2 y) (/.f64 1/2 y)) (/.f64 z (neg.f64 y)))
(*.f64 2 (*.f64 (/.f64 z (neg.f64 y)) (/.f64 1/2 y)))
(*.f64 z (*.f64 (/.f64 -2 y) (/.f64 1/2 y)))
(*.f64 (+.f64 (/.f64 -1/2 y) (/.f64 -1/2 y)) (/.f64 z y))
(+.f64 -1 (-.f64 1 (/.f64 z (*.f64 y y))))
(/.f64 z (*.f64 y (neg.f64 y)))
(/.f64 (/.f64 z y) (neg.f64 y))
(*.f64 (+.f64 (/.f64 -1/2 (*.f64 y y)) (/.f64 -1/2 (*.f64 y y))) z)
(+.f64 -1 (-.f64 1 (/.f64 z (*.f64 y y))))
(/.f64 z (*.f64 y (neg.f64 y)))
(/.f64 (/.f64 z y) (neg.f64 y))
(pow.f64 (/.f64 z (*.f64 y (neg.f64 y))) 1)
(+.f64 -1 (-.f64 1 (/.f64 z (*.f64 y y))))
(/.f64 z (*.f64 y (neg.f64 y)))
(/.f64 (/.f64 z y) (neg.f64 y))
(neg.f64 (/.f64 z (*.f64 y y)))
(+.f64 -1 (-.f64 1 (/.f64 z (*.f64 y y))))
(/.f64 z (*.f64 y (neg.f64 y)))
(/.f64 (/.f64 z y) (neg.f64 y))
(-.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 0)
(+.f64 x (*.f64 y (/.f64 y z)))
(+.f64 x (/.f64 y (/.f64 z y)))
(*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 1)
(+.f64 x (*.f64 y (/.f64 y z)))
(+.f64 x (/.f64 y (/.f64 z y)))
(*.f64 1 (+.f64 (*.f64 y (/.f64 y z)) x))
(+.f64 x (*.f64 y (/.f64 y z)))
(+.f64 x (/.f64 y (/.f64 z y)))
(*.f64 2 (/.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 2))
(+.f64 x (*.f64 y (/.f64 y z)))
(+.f64 x (/.f64 y (/.f64 z y)))
(*.f64 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 2) 1/2)
(+.f64 x (*.f64 y (/.f64 y z)))
(+.f64 x (/.f64 y (/.f64 z y)))
(*.f64 1/2 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 2))
(+.f64 x (*.f64 y (/.f64 y z)))
(+.f64 x (/.f64 y (/.f64 z y)))
(*.f64 1/2 (+.f64 (+.f64 x x) (*.f64 y (*.f64 2 (/.f64 y z)))))
(+.f64 x (*.f64 y (/.f64 y z)))
(+.f64 x (/.f64 y (/.f64 z y)))
(*.f64 (/.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 2) 2)
(+.f64 x (*.f64 y (/.f64 y z)))
(+.f64 x (/.f64 y (/.f64 z y)))
(/.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 1)
(+.f64 x (*.f64 y (/.f64 y z)))
(+.f64 x (/.f64 y (/.f64 z y)))
(/.f64 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 2) 2)
(+.f64 x (*.f64 y (/.f64 y z)))
(+.f64 x (/.f64 y (/.f64 z y)))
(/.f64 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 4) 4)
(+.f64 x (*.f64 y (/.f64 y z)))
(+.f64 x (/.f64 y (/.f64 z y)))
(/.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 4)) 8)
(+.f64 x (*.f64 y (/.f64 y z)))
(+.f64 x (/.f64 y (/.f64 z y)))
(/.f64 (+.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 4)) (*.f64 2 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 4))) 16)
(+.f64 x (*.f64 y (/.f64 y z)))
(+.f64 x (/.f64 y (/.f64 z y)))
(pow.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 1)
(+.f64 x (*.f64 y (/.f64 y z)))
(+.f64 x (/.f64 y (/.f64 z y)))

localize7.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(+.f64 x (/.f64 y (/.f64 z y)))
0.1b
(/.f64 y (/.f64 z y))
Compiler

Compiled 21 to 6 computations (71.4% saved)

series1.0ms (0%)

Counts
2 → 60
Calls

15 calls:

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

rewrite74.0ms (1.5%)

Algorithm
batch-egg-rewrite
Rules
1154×rational.json-1
1154×rational.json-2
1154×rational.json-4
1154×rational.json-3
1142×rational.json-simplify-50
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0832
15632
215632
347232
4161632
5425232
Stop Event
node limit
Counts
2 → 55
Calls
Call 1
Inputs
(/.f64 y (/.f64 z y))
(+.f64 x (/.f64 y (/.f64 z y)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 y (/.f64 z y)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 y (/.f64 z y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -1 (-.f64 1 (/.f64 (neg.f64 y) (/.f64 z y))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 y (*.f64 z (/.f64 2 y))) (/.f64 y (*.f64 z (/.f64 2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (/.f64 y (/.f64 z y)) 2) (/.f64 (/.f64 y (/.f64 z y)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 y (/.f64 z y)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (/.f64 (neg.f64 y) (/.f64 z y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (/.f64 y z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y (/.f64 z y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 y (/.f64 z y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 y y) (*.f64 (/.f64 y z) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (/.f64 y (*.f64 z (/.f64 2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (/.f64 (/.f64 y (/.f64 z y)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (/.f64 1 (*.f64 (/.f64 z y) 4)) (+.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (/.f64 2 (/.f64 2 y)) (*.f64 (/.f64 y z) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y 4) (/.f64 1 (*.f64 (/.f64 z y) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y 4) (*.f64 1/2 (*.f64 (/.f64 y z) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y (/.f64 (+.f64 y y) z)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 y) (/.f64 -1 (/.f64 z y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y z) y)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y z) (/.f64 2 (/.f64 2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (/.f64 (neg.f64 y) (/.f64 z y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 y y) z) (*.f64 y 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (*.f64 (/.f64 y 2) (*.f64 (/.f64 y z) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 y y) 4) (*.f64 1/4 (*.f64 (/.f64 y z) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y -2) (*.f64 -1 (*.f64 (/.f64 y z) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 z) (*.f64 y y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 z) (/.f64 y (/.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 y (/.f64 (+.f64 y y) z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 y z) 1/2) (+.f64 y y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -2 (*.f64 (neg.f64 y) (*.f64 (/.f64 y z) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 2 (/.f64 2 y)) (/.f64 y z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (neg.f64 y) (/.f64 z y)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y (/.f64 1 y)) (/.f64 1 z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y (*.f64 z (/.f64 2 y))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (*.f64 (/.f64 z y) 4)) (*.f64 y 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 y (/.f64 z y)) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -1 (/.f64 z y)) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 y (/.f64 z y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (neg.f64 y) (/.f64 z y)))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (/.f64 y (/.f64 z y)) x) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (/.f64 y (/.f64 z y)) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 (/.f64 y (/.f64 z y)) x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (/.f64 (+.f64 (/.f64 y (/.f64 z y)) x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (/.f64 y (/.f64 z y)) x) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (+.f64 (/.f64 y (/.f64 z y)) x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (+.f64 (*.f64 y (/.f64 (+.f64 y y) z)) (+.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 (/.f64 y (/.f64 z y)) x) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 y (/.f64 (+.f64 y y) z)) (+.f64 x x)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (/.f64 y (/.f64 z y)) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (/.f64 y (/.f64 z y)) x) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (/.f64 y (/.f64 z y)) x) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (+.f64 (/.f64 y (/.f64 z y)) x) 4)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (/.f64 y (/.f64 z y)) x) 4))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 (/.f64 y (/.f64 z y)) x) 1)))))

simplify118.0ms (2.4%)

Algorithm
egg-herbie
Rules
1154×rational.json-simplify-2
1076×rational.json-simplify-55
976×rational.json-simplify-35
782×rational.json-simplify-54
544×rational.json-simplify-46
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01161687
12601687
25981687
317221687
437511687
565441687
Stop Event
node limit
Counts
115 → 61
Calls
Call 1
Inputs
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
x
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
x
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
x
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(/.f64 (pow.f64 y 2) z)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(/.f64 (pow.f64 y 2) z)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(/.f64 (pow.f64 y 2) z)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
x
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
x
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 y (/.f64 z y)) 0)
(+.f64 0 (/.f64 y (/.f64 z y)))
(+.f64 -1 (-.f64 1 (/.f64 (neg.f64 y) (/.f64 z y))))
(+.f64 (/.f64 y (*.f64 z (/.f64 2 y))) (/.f64 y (*.f64 z (/.f64 2 y))))
(+.f64 (/.f64 (/.f64 y (/.f64 z y)) 2) (/.f64 (/.f64 y (/.f64 z y)) 2))
(-.f64 (/.f64 y (/.f64 z y)) 0)
(-.f64 0 (/.f64 (neg.f64 y) (/.f64 z y)))
(*.f64 y (/.f64 y z))
(*.f64 (/.f64 y (/.f64 z y)) 1)
(*.f64 1 (/.f64 y (/.f64 z y)))
(*.f64 (+.f64 y y) (*.f64 (/.f64 y z) 1/2))
(*.f64 2 (/.f64 y (*.f64 z (/.f64 2 y))))
(*.f64 2 (/.f64 (/.f64 y (/.f64 z y)) 2))
(*.f64 2 (*.f64 (/.f64 1 (*.f64 (/.f64 z y) 4)) (+.f64 y y)))
(*.f64 2 (*.f64 (/.f64 2 (/.f64 2 y)) (*.f64 (/.f64 y z) 1/2)))
(*.f64 (*.f64 y 4) (/.f64 1 (*.f64 (/.f64 z y) 4)))
(*.f64 (*.f64 y 4) (*.f64 1/2 (*.f64 (/.f64 y z) 1/2)))
(*.f64 (*.f64 y (/.f64 (+.f64 y y) z)) 1/2)
(*.f64 (neg.f64 y) (/.f64 -1 (/.f64 z y)))
(*.f64 (/.f64 y z) y)
(*.f64 (/.f64 y z) (/.f64 2 (/.f64 2 y)))
(*.f64 -1 (/.f64 (neg.f64 y) (/.f64 z y)))
(*.f64 (/.f64 (+.f64 y y) z) (*.f64 y 1/2))
(*.f64 4 (*.f64 (/.f64 y 2) (*.f64 (/.f64 y z) 1/2)))
(*.f64 (*.f64 (+.f64 y y) 4) (*.f64 1/4 (*.f64 (/.f64 y z) 1/2)))
(*.f64 (*.f64 y -2) (*.f64 -1 (*.f64 (/.f64 y z) 1/2)))
(*.f64 (/.f64 1 z) (*.f64 y y))
(*.f64 (/.f64 1 z) (/.f64 y (/.f64 1 y)))
(*.f64 1/2 (*.f64 y (/.f64 (+.f64 y y) z)))
(*.f64 (*.f64 (/.f64 y z) 1/2) (+.f64 y y))
(*.f64 -2 (*.f64 (neg.f64 y) (*.f64 (/.f64 y z) 1/2)))
(*.f64 (/.f64 2 (/.f64 2 y)) (/.f64 y z))
(*.f64 (/.f64 (neg.f64 y) (/.f64 z y)) -1)
(*.f64 (/.f64 y (/.f64 1 y)) (/.f64 1 z))
(*.f64 (/.f64 y (*.f64 z (/.f64 2 y))) 2)
(*.f64 (/.f64 1 (*.f64 (/.f64 z y) 4)) (*.f64 y 4))
(*.f64 (/.f64 (/.f64 y (/.f64 z y)) 2) 2)
(*.f64 (/.f64 -1 (/.f64 z y)) (neg.f64 y))
(pow.f64 (/.f64 y (/.f64 z y)) 1)
(neg.f64 (/.f64 (neg.f64 y) (/.f64 z y)))
(-.f64 (+.f64 (/.f64 y (/.f64 z y)) x) 0)
(*.f64 (+.f64 (/.f64 y (/.f64 z y)) x) 1)
(*.f64 1 (+.f64 (/.f64 y (/.f64 z y)) x))
(*.f64 2 (/.f64 (+.f64 (/.f64 y (/.f64 z y)) x) 2))
(*.f64 (*.f64 (+.f64 (/.f64 y (/.f64 z y)) x) 2) 1/2)
(*.f64 1/2 (*.f64 (+.f64 (/.f64 y (/.f64 z y)) x) 2))
(*.f64 1/2 (+.f64 (*.f64 y (/.f64 (+.f64 y y) z)) (+.f64 x x)))
(*.f64 (/.f64 (+.f64 (/.f64 y (/.f64 z y)) x) 2) 2)
(*.f64 (+.f64 (*.f64 y (/.f64 (+.f64 y y) z)) (+.f64 x x)) 1/2)
(/.f64 (+.f64 (/.f64 y (/.f64 z y)) x) 1)
(/.f64 (*.f64 (+.f64 (/.f64 y (/.f64 z y)) x) 2) 2)
(/.f64 (*.f64 (+.f64 (/.f64 y (/.f64 z y)) x) 4) 4)
(/.f64 (*.f64 2 (*.f64 (+.f64 (/.f64 y (/.f64 z y)) x) 4)) 8)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (/.f64 y (/.f64 z y)) x) 4))) 16)
(pow.f64 (+.f64 (/.f64 y (/.f64 z y)) x) 1)
Outputs
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
x
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
x
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
x
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(/.f64 (pow.f64 y 2) z)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(/.f64 (pow.f64 y 2) z)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(/.f64 (pow.f64 y 2) z)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
x
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
x
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 y (/.f64 z y)) 0)
(/.f64 y (/.f64 z y))
(*.f64 y (/.f64 y z))
(+.f64 0 (/.f64 y (/.f64 z y)))
(/.f64 y (/.f64 z y))
(*.f64 y (/.f64 y z))
(+.f64 -1 (-.f64 1 (/.f64 (neg.f64 y) (/.f64 z y))))
(/.f64 y (/.f64 z y))
(*.f64 y (/.f64 y z))
(+.f64 (/.f64 y (*.f64 z (/.f64 2 y))) (/.f64 y (*.f64 z (/.f64 2 y))))
(/.f64 y (/.f64 z y))
(*.f64 y (/.f64 y z))
(+.f64 (/.f64 (/.f64 y (/.f64 z y)) 2) (/.f64 (/.f64 y (/.f64 z y)) 2))
(/.f64 y (/.f64 z y))
(*.f64 y (/.f64 y z))
(-.f64 (/.f64 y (/.f64 z y)) 0)
(/.f64 y (/.f64 z y))
(*.f64 y (/.f64 y z))
(-.f64 0 (/.f64 (neg.f64 y) (/.f64 z y)))
(/.f64 y (/.f64 z y))
(*.f64 y (/.f64 y z))
(*.f64 y (/.f64 y z))
(/.f64 y (/.f64 z y))
(*.f64 (/.f64 y (/.f64 z y)) 1)
(/.f64 y (/.f64 z y))
(*.f64 y (/.f64 y z))
(*.f64 1 (/.f64 y (/.f64 z y)))
(/.f64 y (/.f64 z y))
(*.f64 y (/.f64 y z))
(*.f64 (+.f64 y y) (*.f64 (/.f64 y z) 1/2))
(/.f64 y (/.f64 z y))
(*.f64 y (/.f64 y z))
(*.f64 2 (/.f64 y (*.f64 z (/.f64 2 y))))
(/.f64 y (/.f64 z y))
(*.f64 y (/.f64 y z))
(*.f64 2 (/.f64 (/.f64 y (/.f64 z y)) 2))
(/.f64 y (/.f64 z y))
(*.f64 y (/.f64 y z))
(*.f64 2 (*.f64 (/.f64 1 (*.f64 (/.f64 z y) 4)) (+.f64 y y)))
(/.f64 y (/.f64 z y))
(*.f64 y (/.f64 y z))
(*.f64 2 (*.f64 (/.f64 2 (/.f64 2 y)) (*.f64 (/.f64 y z) 1/2)))
(/.f64 y (/.f64 z y))
(*.f64 y (/.f64 y z))
(*.f64 (*.f64 y 4) (/.f64 1 (*.f64 (/.f64 z y) 4)))
(/.f64 y (/.f64 z y))
(*.f64 y (/.f64 y z))
(*.f64 (*.f64 y 4) (*.f64 1/2 (*.f64 (/.f64 y z) 1/2)))
(/.f64 y (/.f64 z y))
(*.f64 y (/.f64 y z))
(*.f64 (*.f64 y (/.f64 (+.f64 y y) z)) 1/2)
(/.f64 y (/.f64 z y))
(*.f64 y (/.f64 y z))
(*.f64 (neg.f64 y) (/.f64 -1 (/.f64 z y)))
(/.f64 y (/.f64 z y))
(*.f64 y (/.f64 y z))
(*.f64 (/.f64 y z) y)
(/.f64 y (/.f64 z y))
(*.f64 y (/.f64 y z))
(*.f64 (/.f64 y z) (/.f64 2 (/.f64 2 y)))
(/.f64 y (/.f64 z y))
(*.f64 y (/.f64 y z))
(*.f64 -1 (/.f64 (neg.f64 y) (/.f64 z y)))
(/.f64 y (/.f64 z y))
(*.f64 y (/.f64 y z))
(*.f64 (/.f64 (+.f64 y y) z) (*.f64 y 1/2))
(/.f64 y (/.f64 z y))
(*.f64 y (/.f64 y z))
(*.f64 4 (*.f64 (/.f64 y 2) (*.f64 (/.f64 y z) 1/2)))
(/.f64 y (/.f64 z y))
(*.f64 y (/.f64 y z))
(*.f64 (*.f64 (+.f64 y y) 4) (*.f64 1/4 (*.f64 (/.f64 y z) 1/2)))
(/.f64 y (/.f64 z y))
(*.f64 y (/.f64 y z))
(*.f64 (*.f64 y -2) (*.f64 -1 (*.f64 (/.f64 y z) 1/2)))
(/.f64 y (/.f64 z y))
(*.f64 y (/.f64 y z))
(*.f64 (/.f64 1 z) (*.f64 y y))
(/.f64 y (/.f64 z y))
(*.f64 y (/.f64 y z))
(*.f64 (/.f64 1 z) (/.f64 y (/.f64 1 y)))
(/.f64 y (/.f64 z y))
(*.f64 y (/.f64 y z))
(*.f64 1/2 (*.f64 y (/.f64 (+.f64 y y) z)))
(/.f64 y (/.f64 z y))
(*.f64 y (/.f64 y z))
(*.f64 (*.f64 (/.f64 y z) 1/2) (+.f64 y y))
(/.f64 y (/.f64 z y))
(*.f64 y (/.f64 y z))
(*.f64 -2 (*.f64 (neg.f64 y) (*.f64 (/.f64 y z) 1/2)))
(/.f64 y (/.f64 z y))
(*.f64 y (/.f64 y z))
(*.f64 (/.f64 2 (/.f64 2 y)) (/.f64 y z))
(/.f64 y (/.f64 z y))
(*.f64 y (/.f64 y z))
(*.f64 (/.f64 (neg.f64 y) (/.f64 z y)) -1)
(/.f64 y (/.f64 z y))
(*.f64 y (/.f64 y z))
(*.f64 (/.f64 y (/.f64 1 y)) (/.f64 1 z))
(/.f64 y (/.f64 z y))
(*.f64 y (/.f64 y z))
(*.f64 (/.f64 y (*.f64 z (/.f64 2 y))) 2)
(/.f64 y (/.f64 z y))
(*.f64 y (/.f64 y z))
(*.f64 (/.f64 1 (*.f64 (/.f64 z y) 4)) (*.f64 y 4))
(/.f64 y (/.f64 z y))
(*.f64 y (/.f64 y z))
(*.f64 (/.f64 (/.f64 y (/.f64 z y)) 2) 2)
(/.f64 y (/.f64 z y))
(*.f64 y (/.f64 y z))
(*.f64 (/.f64 -1 (/.f64 z y)) (neg.f64 y))
(/.f64 y (/.f64 z y))
(*.f64 y (/.f64 y z))
(pow.f64 (/.f64 y (/.f64 z y)) 1)
(/.f64 y (/.f64 z y))
(*.f64 y (/.f64 y z))
(neg.f64 (/.f64 (neg.f64 y) (/.f64 z y)))
(/.f64 y (/.f64 z y))
(*.f64 y (/.f64 y z))
(-.f64 (+.f64 (/.f64 y (/.f64 z y)) x) 0)
(+.f64 x (/.f64 y (/.f64 z y)))
(+.f64 x (*.f64 y (/.f64 y z)))
(*.f64 (+.f64 (/.f64 y (/.f64 z y)) x) 1)
(+.f64 x (/.f64 y (/.f64 z y)))
(+.f64 x (*.f64 y (/.f64 y z)))
(*.f64 1 (+.f64 (/.f64 y (/.f64 z y)) x))
(+.f64 x (/.f64 y (/.f64 z y)))
(+.f64 x (*.f64 y (/.f64 y z)))
(*.f64 2 (/.f64 (+.f64 (/.f64 y (/.f64 z y)) x) 2))
(+.f64 x (/.f64 y (/.f64 z y)))
(+.f64 x (*.f64 y (/.f64 y z)))
(*.f64 (*.f64 (+.f64 (/.f64 y (/.f64 z y)) x) 2) 1/2)
(+.f64 x (/.f64 y (/.f64 z y)))
(+.f64 x (*.f64 y (/.f64 y z)))
(*.f64 1/2 (*.f64 (+.f64 (/.f64 y (/.f64 z y)) x) 2))
(+.f64 x (/.f64 y (/.f64 z y)))
(+.f64 x (*.f64 y (/.f64 y z)))
(*.f64 1/2 (+.f64 (*.f64 y (/.f64 (+.f64 y y) z)) (+.f64 x x)))
(+.f64 x (/.f64 y (/.f64 z y)))
(+.f64 x (*.f64 y (/.f64 y z)))
(*.f64 (/.f64 (+.f64 (/.f64 y (/.f64 z y)) x) 2) 2)
(+.f64 x (/.f64 y (/.f64 z y)))
(+.f64 x (*.f64 y (/.f64 y z)))
(*.f64 (+.f64 (*.f64 y (/.f64 (+.f64 y y) z)) (+.f64 x x)) 1/2)
(+.f64 x (/.f64 y (/.f64 z y)))
(+.f64 x (*.f64 y (/.f64 y z)))
(/.f64 (+.f64 (/.f64 y (/.f64 z y)) x) 1)
(+.f64 x (/.f64 y (/.f64 z y)))
(+.f64 x (*.f64 y (/.f64 y z)))
(/.f64 (*.f64 (+.f64 (/.f64 y (/.f64 z y)) x) 2) 2)
(+.f64 x (/.f64 y (/.f64 z y)))
(+.f64 x (*.f64 y (/.f64 y z)))
(/.f64 (*.f64 (+.f64 (/.f64 y (/.f64 z y)) x) 4) 4)
(+.f64 x (/.f64 y (/.f64 z y)))
(+.f64 x (*.f64 y (/.f64 y z)))
(/.f64 (*.f64 2 (*.f64 (+.f64 (/.f64 y (/.f64 z y)) x) 4)) 8)
(+.f64 x (/.f64 y (/.f64 z y)))
(+.f64 x (*.f64 y (/.f64 y z)))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (/.f64 y (/.f64 z y)) x) 4))) 16)
(+.f64 x (/.f64 y (/.f64 z y)))
(+.f64 x (*.f64 y (/.f64 y z)))
(pow.f64 (+.f64 (/.f64 y (/.f64 z y)) x) 1)
(+.f64 x (/.f64 y (/.f64 z y)))
(+.f64 x (*.f64 y (/.f64 y z)))

eval89.0ms (1.8%)

Compiler

Compiled 5130 to 2583 computations (49.6% saved)

prune127.0ms (2.6%)

Pruning

6 alts after pruning (2 fresh and 4 done)

PrunedKeptTotal
New4161417
Fresh011
Picked011
Done134
Total4176423
Error
0.0b
Counts
423 → 6
Alt Table
Click to see full alt table
StatusErrorProgram
6.7b
(+.f64 x (/.f64 (*.f64 y y) z))
0.1b
(+.f64 x (/.f64 y (/.f64 z y)))
0.1b
(+.f64 x (/.f64 1 (/.f64 (/.f64 z y) y)))
0.1b
(+.f64 x (*.f64 y (/.f64 y z)))
0.1b
(+.f64 x (*.f64 y (*.f64 y (/.f64 1 z))))
18.9b
x
Compiler

Compiled 58 to 37 computations (36.2% saved)

localize10.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(+.f64 x (/.f64 1 (/.f64 (/.f64 z y) y)))
0.2b
(/.f64 (/.f64 z y) y)
0.5b
(/.f64 1 (/.f64 (/.f64 z y) y))
Compiler

Compiled 31 to 11 computations (64.5% saved)

series1.0ms (0%)

Counts
3 → 84
Calls

21 calls:

TimeVariablePointExpression
0.0ms
z
@0
(/.f64 1 (/.f64 (/.f64 z y) y))
0.0ms
z
@-inf
(/.f64 1 (/.f64 (/.f64 z y) y))
0.0ms
y
@inf
(/.f64 (/.f64 z y) y)
0.0ms
z
@inf
(/.f64 1 (/.f64 (/.f64 z y) y))
0.0ms
y
@inf
(/.f64 1 (/.f64 (/.f64 z y) y))

rewrite177.0ms (3.6%)

Algorithm
batch-egg-rewrite
Rules
1714×rational.json-1
1714×rational.json-2
1714×rational.json-4
1714×rational.json-3
1696×exponential.json-3
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01045
18445
223745
365945
4220945
5605445
Stop Event
node limit
Counts
3 → 109
Calls
Call 1
Inputs
(/.f64 1 (/.f64 (/.f64 z y) y))
(/.f64 (/.f64 z y) y)
(+.f64 x (/.f64 1 (/.f64 (/.f64 z y) y)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y (/.f64 y z)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 y (/.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 1 (/.f64 (+.f64 z z) (*.f64 y y))) (/.f64 1 (/.f64 (+.f64 z z) (*.f64 y y))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 y (*.f64 z (/.f64 2 y))) (/.f64 y (*.f64 z (/.f64 2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 y y) (+.f64 z z)) (/.f64 (*.f64 y y) (+.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y (/.f64 y z)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 y (/.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (/.f64 y z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y (/.f64 y z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 y y) (*.f64 (/.f64 y z) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (/.f64 y (*.f64 z (/.f64 2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (/.f64 (*.f64 y (/.f64 y z)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (*.f64 (/.f64 y z) 1/2) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y y) (/.f64 1 z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y (*.f64 2 (/.f64 y z))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y 4) (/.f64 1 (/.f64 4 (/.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y (+.f64 y y)) (/.f64 1 (+.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (/.f64 y (/.f64 (neg.f64 z) y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 y) (/.f64 -1 (/.f64 z y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y z) y)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y z) (/.f64 1 (/.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fabs.f64 y) (/.f64 (fabs.f64 y) z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 z) (*.f64 y y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 z) (/.f64 y (/.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 y (*.f64 2 (/.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 y z) 1/2) (+.f64 y y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 1 y)) (/.f64 y z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y (/.f64 (neg.f64 z) y)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y (/.f64 1 y)) (/.f64 1 z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (+.f64 z z)) (*.f64 y (+.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -1 (/.f64 z y)) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y (*.f64 z (/.f64 2 y))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (fabs.f64 y) z) (fabs.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 y (/.f64 y z)) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 4 (/.f64 y z))) (*.f64 y 4))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 y (/.f64 y z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (*.f64 y (/.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 y (/.f64 (neg.f64 z) y)))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (neg.f64 (*.f64 y y)) z))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 z (*.f64 y y)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 z (*.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -1 (-.f64 1 (neg.f64 (/.f64 z (*.f64 y y)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (/.f64 z y) (+.f64 y y)) (/.f64 (/.f64 z y) (+.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 z (*.f64 y y)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (/.f64 z (*.f64 y y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 z (*.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 z (/.f64 1 (*.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 z y) (/.f64 1 y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 z (*.f64 y y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 z z) (/.f64 (/.f64 1/2 y) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 z z) (*.f64 (/.f64 1 (*.f64 y y)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 z (/.f64 2 y)) (/.f64 1/2 y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 z (/.f64 2 y)) (*.f64 (/.f64 1 y) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (/.f64 (/.f64 z y) (+.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (/.f64 z (*.f64 y (+.f64 y y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (/.f64 (/.f64 z (*.f64 y y)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (/.f64 (/.f64 1/2 y) y) z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (/.f64 1/2 y) (/.f64 z y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 z z) (*.f64 y y)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 z (*.f64 y y)) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 z 4) (/.f64 1 (*.f64 y (*.f64 y 4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 4 (/.f64 y z)) (/.f64 1 (*.f64 y 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 y) (/.f64 z y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (*.f64 y y)) z)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (neg.f64 (/.f64 z (*.f64 y y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (/.f64 z (neg.f64 (*.f64 y y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (/.f64 (/.f64 z y) (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (/.f64 z (*.f64 y y))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 z) (/.f64 -1 (*.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (neg.f64 z) y) (/.f64 -1 y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (/.f64 1 (*.f64 y y))) (/.f64 z 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 2 y) (/.f64 z (+.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 2 y) (/.f64 (/.f64 z y) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/2 y) (*.f64 z (/.f64 2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (/.f64 (+.f64 z z) (*.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1/2 y) y) (+.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 1 y) 1/2) (*.f64 z (/.f64 2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 1 (*.f64 y y)) 1/2) (+.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -1 y) (/.f64 (neg.f64 z) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 z (neg.f64 (*.f64 y y))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 z y) (neg.f64 y)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 z (+.f64 y y)) (/.f64 2 y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 z y) (+.f64 y y)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 z 2) (*.f64 2 (/.f64 1 (*.f64 y y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (/.f64 z (*.f64 y y)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 z y) 2) (/.f64 2 y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (*.f64 y 4)) (/.f64 4 (/.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 z (*.f64 y (+.f64 y y))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 z (*.f64 y y)) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (*.f64 y (*.f64 y 4))) (*.f64 z 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -1 (*.f64 y y)) (neg.f64 z))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 z (*.f64 y y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (/.f64 z (*.f64 y y))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 z (neg.f64 (*.f64 y y))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (/.f64 z y) (neg.f64 y)))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 (*.f64 y (/.f64 y z)) x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (/.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (+.f64 (+.f64 x x) (*.f64 y (*.f64 2 (/.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 4)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 4)) (*.f64 2 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 4))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 1)))))

simplify280.0ms (5.7%)

Algorithm
egg-herbie
Rules
1336×rational.json-simplify-2
952×rational.json-simplify-51
864×rational.json-simplify-1
828×rational.json-simplify-38
704×rational.json-simplify-44
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01972755
14132743
210052743
335992743
467492743
Stop Event
node limit
Counts
193 → 121
Calls
Call 1
Inputs
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 z (pow.f64 y 2))
(/.f64 z (pow.f64 y 2))
(/.f64 z (pow.f64 y 2))
(/.f64 z (pow.f64 y 2))
(/.f64 z (pow.f64 y 2))
(/.f64 z (pow.f64 y 2))
(/.f64 z (pow.f64 y 2))
(/.f64 z (pow.f64 y 2))
(/.f64 z (pow.f64 y 2))
(/.f64 z (pow.f64 y 2))
(/.f64 z (pow.f64 y 2))
(/.f64 z (pow.f64 y 2))
(/.f64 z (pow.f64 y 2))
(/.f64 z (pow.f64 y 2))
(/.f64 z (pow.f64 y 2))
(/.f64 z (pow.f64 y 2))
(/.f64 z (pow.f64 y 2))
(/.f64 z (pow.f64 y 2))
(/.f64 z (pow.f64 y 2))
(/.f64 z (pow.f64 y 2))
(/.f64 z (pow.f64 y 2))
(/.f64 z (pow.f64 y 2))
(/.f64 z (pow.f64 y 2))
(/.f64 z (pow.f64 y 2))
(/.f64 (pow.f64 y 2) z)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
x
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
x
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(/.f64 (pow.f64 y 2) z)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
x
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
x
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
x
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(/.f64 (pow.f64 y 2) z)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(/.f64 (pow.f64 y 2) z)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (*.f64 y (/.f64 y z)) 0)
(+.f64 0 (*.f64 y (/.f64 y z)))
(+.f64 (/.f64 1 (/.f64 (+.f64 z z) (*.f64 y y))) (/.f64 1 (/.f64 (+.f64 z z) (*.f64 y y))))
(+.f64 (/.f64 y (*.f64 z (/.f64 2 y))) (/.f64 y (*.f64 z (/.f64 2 y))))
(+.f64 (/.f64 (*.f64 y y) (+.f64 z z)) (/.f64 (*.f64 y y) (+.f64 z z)))
(-.f64 (*.f64 y (/.f64 y z)) 0)
(*.f64 1 (*.f64 y (/.f64 y z)))
(*.f64 y (/.f64 y z))
(*.f64 (*.f64 y (/.f64 y z)) 1)
(*.f64 (+.f64 y y) (*.f64 (/.f64 y z) 1/2))
(*.f64 2 (/.f64 y (*.f64 z (/.f64 2 y))))
(*.f64 2 (/.f64 (*.f64 y (/.f64 y z)) 2))
(*.f64 2 (*.f64 (*.f64 (/.f64 y z) 1/2) y))
(*.f64 (*.f64 y y) (/.f64 1 z))
(*.f64 (*.f64 y (*.f64 2 (/.f64 y z))) 1/2)
(*.f64 (*.f64 y 4) (/.f64 1 (/.f64 4 (/.f64 y z))))
(*.f64 (*.f64 y (+.f64 y y)) (/.f64 1 (+.f64 z z)))
(*.f64 -1 (/.f64 y (/.f64 (neg.f64 z) y)))
(*.f64 (neg.f64 y) (/.f64 -1 (/.f64 z y)))
(*.f64 (/.f64 y z) y)
(*.f64 (/.f64 y z) (/.f64 1 (/.f64 1 y)))
(*.f64 (fabs.f64 y) (/.f64 (fabs.f64 y) z))
(*.f64 (/.f64 1 z) (*.f64 y y))
(*.f64 (/.f64 1 z) (/.f64 y (/.f64 1 y)))
(*.f64 1/2 (*.f64 y (*.f64 2 (/.f64 y z))))
(*.f64 (*.f64 (/.f64 y z) 1/2) (+.f64 y y))
(*.f64 (/.f64 1 (/.f64 1 y)) (/.f64 y z))
(*.f64 (/.f64 y (/.f64 (neg.f64 z) y)) -1)
(*.f64 (/.f64 y (/.f64 1 y)) (/.f64 1 z))
(*.f64 (/.f64 1 (+.f64 z z)) (*.f64 y (+.f64 y y)))
(*.f64 (/.f64 -1 (/.f64 z y)) (neg.f64 y))
(*.f64 (/.f64 y (*.f64 z (/.f64 2 y))) 2)
(*.f64 (/.f64 (fabs.f64 y) z) (fabs.f64 y))
(*.f64 (/.f64 (*.f64 y (/.f64 y z)) 2) 2)
(*.f64 (/.f64 1 (/.f64 4 (/.f64 y z))) (*.f64 y 4))
(pow.f64 (*.f64 y (/.f64 y z)) 1)
(neg.f64 (neg.f64 (*.f64 y (/.f64 y z))))
(neg.f64 (/.f64 y (/.f64 (neg.f64 z) y)))
(neg.f64 (/.f64 (neg.f64 (*.f64 y y)) z))
(+.f64 (/.f64 z (*.f64 y y)) 0)
(+.f64 0 (/.f64 z (*.f64 y y)))
(+.f64 -1 (-.f64 1 (neg.f64 (/.f64 z (*.f64 y y)))))
(+.f64 (/.f64 (/.f64 z y) (+.f64 y y)) (/.f64 (/.f64 z y) (+.f64 y y)))
(-.f64 (/.f64 z (*.f64 y y)) 0)
(-.f64 0 (neg.f64 (/.f64 z (*.f64 y y))))
(*.f64 1 (/.f64 z (*.f64 y y)))
(*.f64 z (/.f64 1 (*.f64 y y)))
(*.f64 (/.f64 z y) (/.f64 1 y))
(*.f64 (/.f64 z (*.f64 y y)) 1)
(*.f64 (+.f64 z z) (/.f64 (/.f64 1/2 y) y))
(*.f64 (+.f64 z z) (*.f64 (/.f64 1 (*.f64 y y)) 1/2))
(*.f64 (*.f64 z (/.f64 2 y)) (/.f64 1/2 y))
(*.f64 (*.f64 z (/.f64 2 y)) (*.f64 (/.f64 1 y) 1/2))
(*.f64 2 (/.f64 (/.f64 z y) (+.f64 y y)))
(*.f64 2 (/.f64 z (*.f64 y (+.f64 y y))))
(*.f64 2 (/.f64 (/.f64 z (*.f64 y y)) 2))
(*.f64 2 (*.f64 (/.f64 (/.f64 1/2 y) y) z))
(*.f64 2 (*.f64 (/.f64 1/2 y) (/.f64 z y)))
(*.f64 (/.f64 (+.f64 z z) (*.f64 y y)) 1/2)
(*.f64 (*.f64 (/.f64 z (*.f64 y y)) 4) 1/4)
(*.f64 (*.f64 z 4) (/.f64 1 (*.f64 y (*.f64 y 4))))
(*.f64 (/.f64 4 (/.f64 y z)) (/.f64 1 (*.f64 y 4)))
(*.f64 (/.f64 1 y) (/.f64 z y))
(*.f64 (/.f64 1 (*.f64 y y)) z)
(*.f64 -1 (neg.f64 (/.f64 z (*.f64 y y))))
(*.f64 -1 (/.f64 z (neg.f64 (*.f64 y y))))
(*.f64 -1 (/.f64 (/.f64 z y) (neg.f64 y)))
(*.f64 (neg.f64 (/.f64 z (*.f64 y y))) -1)
(*.f64 (neg.f64 z) (/.f64 -1 (*.f64 y y)))
(*.f64 (/.f64 (neg.f64 z) y) (/.f64 -1 y))
(*.f64 (*.f64 2 (/.f64 1 (*.f64 y y))) (/.f64 z 2))
(*.f64 (/.f64 2 y) (/.f64 z (+.f64 y y)))
(*.f64 (/.f64 2 y) (/.f64 (/.f64 z y) 2))
(*.f64 (/.f64 1/2 y) (*.f64 z (/.f64 2 y)))
(*.f64 1/2 (/.f64 (+.f64 z z) (*.f64 y y)))
(*.f64 (/.f64 (/.f64 1/2 y) y) (+.f64 z z))
(*.f64 (*.f64 (/.f64 1 y) 1/2) (*.f64 z (/.f64 2 y)))
(*.f64 (*.f64 (/.f64 1 (*.f64 y y)) 1/2) (+.f64 z z))
(*.f64 (/.f64 -1 y) (/.f64 (neg.f64 z) y))
(*.f64 (/.f64 z (neg.f64 (*.f64 y y))) -1)
(*.f64 (/.f64 (/.f64 z y) (neg.f64 y)) -1)
(*.f64 (/.f64 z (+.f64 y y)) (/.f64 2 y))
(*.f64 (/.f64 (/.f64 z y) (+.f64 y y)) 2)
(*.f64 (/.f64 z 2) (*.f64 2 (/.f64 1 (*.f64 y y))))
(*.f64 1/4 (*.f64 (/.f64 z (*.f64 y y)) 4))
(*.f64 (/.f64 (/.f64 z y) 2) (/.f64 2 y))
(*.f64 (/.f64 1 (*.f64 y 4)) (/.f64 4 (/.f64 y z)))
(*.f64 (/.f64 z (*.f64 y (+.f64 y y))) 2)
(*.f64 (/.f64 (/.f64 z (*.f64 y y)) 2) 2)
(*.f64 (/.f64 1 (*.f64 y (*.f64 y 4))) (*.f64 z 4))
(*.f64 (/.f64 -1 (*.f64 y y)) (neg.f64 z))
(pow.f64 (/.f64 z (*.f64 y y)) 1)
(neg.f64 (neg.f64 (/.f64 z (*.f64 y y))))
(neg.f64 (/.f64 z (neg.f64 (*.f64 y y))))
(neg.f64 (/.f64 (/.f64 z y) (neg.f64 y)))
(-.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 0)
(*.f64 1 (+.f64 (*.f64 y (/.f64 y z)) x))
(*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 1)
(*.f64 2 (/.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 2))
(*.f64 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 2) 1/2)
(*.f64 1/2 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 2))
(*.f64 1/2 (+.f64 (+.f64 x x) (*.f64 y (*.f64 2 (/.f64 y z)))))
(*.f64 (/.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 2) 2)
(/.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 1)
(/.f64 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 2) 2)
(/.f64 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 4) 4)
(/.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 4)) 8)
(/.f64 (+.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 4)) (*.f64 2 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 4))) 16)
(pow.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 1)
Outputs
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 (pow.f64 y 2) z)
(/.f64 z (pow.f64 y 2))
(/.f64 z (pow.f64 y 2))
(/.f64 z (pow.f64 y 2))
(/.f64 z (pow.f64 y 2))
(/.f64 z (pow.f64 y 2))
(/.f64 z (pow.f64 y 2))
(/.f64 z (pow.f64 y 2))
(/.f64 z (pow.f64 y 2))
(/.f64 z (pow.f64 y 2))
(/.f64 z (pow.f64 y 2))
(/.f64 z (pow.f64 y 2))
(/.f64 z (pow.f64 y 2))
(/.f64 z (pow.f64 y 2))
(/.f64 z (pow.f64 y 2))
(/.f64 z (pow.f64 y 2))
(/.f64 z (pow.f64 y 2))
(/.f64 z (pow.f64 y 2))
(/.f64 z (pow.f64 y 2))
(/.f64 z (pow.f64 y 2))
(/.f64 z (pow.f64 y 2))
(/.f64 z (pow.f64 y 2))
(/.f64 z (pow.f64 y 2))
(/.f64 z (pow.f64 y 2))
(/.f64 z (pow.f64 y 2))
(/.f64 (pow.f64 y 2) z)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
x
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
x
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(/.f64 (pow.f64 y 2) z)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
x
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
x
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
x
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(/.f64 (pow.f64 y 2) z)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(/.f64 (pow.f64 y 2) z)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (/.f64 (pow.f64 y 2) z) x)
(+.f64 (*.f64 y (/.f64 y z)) 0)
(*.f64 y (/.f64 y z))
(+.f64 0 (*.f64 y (/.f64 y z)))
(*.f64 y (/.f64 y z))
(+.f64 (/.f64 1 (/.f64 (+.f64 z z) (*.f64 y y))) (/.f64 1 (/.f64 (+.f64 z z) (*.f64 y y))))
(*.f64 y (/.f64 y z))
(+.f64 (/.f64 y (*.f64 z (/.f64 2 y))) (/.f64 y (*.f64 z (/.f64 2 y))))
(*.f64 y (/.f64 y z))
(+.f64 (/.f64 (*.f64 y y) (+.f64 z z)) (/.f64 (*.f64 y y) (+.f64 z z)))
(*.f64 y (/.f64 y z))
(-.f64 (*.f64 y (/.f64 y z)) 0)
(*.f64 y (/.f64 y z))
(*.f64 1 (*.f64 y (/.f64 y z)))
(*.f64 y (/.f64 y z))
(*.f64 y (/.f64 y z))
(*.f64 (*.f64 y (/.f64 y z)) 1)
(*.f64 y (/.f64 y z))
(*.f64 (+.f64 y y) (*.f64 (/.f64 y z) 1/2))
(*.f64 y (/.f64 y z))
(*.f64 2 (/.f64 y (*.f64 z (/.f64 2 y))))
(*.f64 y (/.f64 y z))
(*.f64 2 (/.f64 (*.f64 y (/.f64 y z)) 2))
(*.f64 y (/.f64 y z))
(*.f64 2 (*.f64 (*.f64 (/.f64 y z) 1/2) y))
(*.f64 y (/.f64 y z))
(*.f64 (*.f64 y y) (/.f64 1 z))
(*.f64 y (/.f64 y z))
(*.f64 (*.f64 y (*.f64 2 (/.f64 y z))) 1/2)
(*.f64 y (/.f64 y z))
(*.f64 (*.f64 y 4) (/.f64 1 (/.f64 4 (/.f64 y z))))
(*.f64 y (*.f64 4 (/.f64 (/.f64 y z) 4)))
(*.f64 y (*.f64 4 (/.f64 y (*.f64 z 4))))
(*.f64 4 (*.f64 y (/.f64 y (*.f64 z 4))))
(*.f64 (*.f64 y (+.f64 y y)) (/.f64 1 (+.f64 z z)))
(*.f64 y (/.f64 y z))
(*.f64 -1 (/.f64 y (/.f64 (neg.f64 z) y)))
(*.f64 y (/.f64 y z))
(*.f64 (neg.f64 y) (/.f64 -1 (/.f64 z y)))
(*.f64 y (/.f64 y z))
(*.f64 (/.f64 y z) y)
(*.f64 y (/.f64 y z))
(*.f64 (/.f64 y z) (/.f64 1 (/.f64 1 y)))
(*.f64 y (/.f64 y z))
(*.f64 (fabs.f64 y) (/.f64 (fabs.f64 y) z))
(*.f64 y (/.f64 y z))
(*.f64 (/.f64 1 z) (*.f64 y y))
(*.f64 y (/.f64 y z))
(*.f64 (/.f64 1 z) (/.f64 y (/.f64 1 y)))
(*.f64 y (/.f64 y z))
(*.f64 1/2 (*.f64 y (*.f64 2 (/.f64 y z))))
(*.f64 y (/.f64 y z))
(*.f64 (*.f64 (/.f64 y z) 1/2) (+.f64 y y))
(*.f64 y (/.f64 y z))
(*.f64 (/.f64 1 (/.f64 1 y)) (/.f64 y z))
(*.f64 y (/.f64 y z))
(*.f64 (/.f64 y (/.f64 (neg.f64 z) y)) -1)
(*.f64 y (/.f64 y z))
(*.f64 (/.f64 y (/.f64 1 y)) (/.f64 1 z))
(*.f64 y (/.f64 y z))
(*.f64 (/.f64 1 (+.f64 z z)) (*.f64 y (+.f64 y y)))
(*.f64 y (/.f64 y z))
(*.f64 (/.f64 -1 (/.f64 z y)) (neg.f64 y))
(*.f64 y (/.f64 y z))
(*.f64 (/.f64 y (*.f64 z (/.f64 2 y))) 2)
(*.f64 y (/.f64 y z))
(*.f64 (/.f64 (fabs.f64 y) z) (fabs.f64 y))
(*.f64 y (/.f64 y z))
(*.f64 (/.f64 (*.f64 y (/.f64 y z)) 2) 2)
(*.f64 y (/.f64 y z))
(*.f64 (/.f64 1 (/.f64 4 (/.f64 y z))) (*.f64 y 4))
(*.f64 y (*.f64 4 (/.f64 (/.f64 y z) 4)))
(*.f64 y (*.f64 4 (/.f64 y (*.f64 z 4))))
(*.f64 4 (*.f64 y (/.f64 y (*.f64 z 4))))
(pow.f64 (*.f64 y (/.f64 y z)) 1)
(*.f64 y (/.f64 y z))
(neg.f64 (neg.f64 (*.f64 y (/.f64 y z))))
(*.f64 y (/.f64 y z))
(neg.f64 (/.f64 y (/.f64 (neg.f64 z) y)))
(*.f64 y (/.f64 y z))
(neg.f64 (/.f64 (neg.f64 (*.f64 y y)) z))
(*.f64 y (/.f64 y z))
(+.f64 (/.f64 z (*.f64 y y)) 0)
(/.f64 z (*.f64 y y))
(/.f64 (/.f64 z y) y)
(+.f64 0 (/.f64 z (*.f64 y y)))
(/.f64 z (*.f64 y y))
(/.f64 (/.f64 z y) y)
(+.f64 -1 (-.f64 1 (neg.f64 (/.f64 z (*.f64 y y)))))
(/.f64 z (*.f64 y y))
(/.f64 (/.f64 z y) y)
(+.f64 (/.f64 (/.f64 z y) (+.f64 y y)) (/.f64 (/.f64 z y) (+.f64 y y)))
(/.f64 z (*.f64 y y))
(/.f64 (/.f64 z y) y)
(-.f64 (/.f64 z (*.f64 y y)) 0)
(/.f64 z (*.f64 y y))
(/.f64 (/.f64 z y) y)
(-.f64 0 (neg.f64 (/.f64 z (*.f64 y y))))
(/.f64 z (*.f64 y y))
(/.f64 (/.f64 z y) y)
(*.f64 1 (/.f64 z (*.f64 y y)))
(/.f64 z (*.f64 y y))
(/.f64 (/.f64 z y) y)
(*.f64 z (/.f64 1 (*.f64 y y)))
(/.f64 z (*.f64 y y))
(/.f64 (/.f64 z y) y)
(*.f64 (/.f64 z y) (/.f64 1 y))
(/.f64 z (*.f64 y y))
(/.f64 (/.f64 z y) y)
(*.f64 (/.f64 z (*.f64 y y)) 1)
(/.f64 z (*.f64 y y))
(/.f64 (/.f64 z y) y)
(*.f64 (+.f64 z z) (/.f64 (/.f64 1/2 y) y))
(/.f64 z (*.f64 y y))
(/.f64 (/.f64 z y) y)
(*.f64 (+.f64 z z) (*.f64 (/.f64 1 (*.f64 y y)) 1/2))
(/.f64 z (*.f64 y y))
(/.f64 (/.f64 z y) y)
(*.f64 (*.f64 z (/.f64 2 y)) (/.f64 1/2 y))
(/.f64 z (*.f64 y y))
(/.f64 (/.f64 z y) y)
(*.f64 (*.f64 z (/.f64 2 y)) (*.f64 (/.f64 1 y) 1/2))
(/.f64 z (*.f64 y y))
(/.f64 (/.f64 z y) y)
(*.f64 2 (/.f64 (/.f64 z y) (+.f64 y y)))
(/.f64 z (*.f64 y y))
(/.f64 (/.f64 z y) y)
(*.f64 2 (/.f64 z (*.f64 y (+.f64 y y))))
(/.f64 z (*.f64 y y))
(/.f64 (/.f64 z y) y)
(*.f64 2 (/.f64 (/.f64 z (*.f64 y y)) 2))
(/.f64 z (*.f64 y y))
(/.f64 (/.f64 z y) y)
(*.f64 2 (*.f64 (/.f64 (/.f64 1/2 y) y) z))
(/.f64 z (*.f64 y y))
(/.f64 (/.f64 z y) y)
(*.f64 2 (*.f64 (/.f64 1/2 y) (/.f64 z y)))
(/.f64 z (*.f64 y y))
(/.f64 (/.f64 z y) y)
(*.f64 (/.f64 (+.f64 z z) (*.f64 y y)) 1/2)
(/.f64 z (*.f64 y y))
(/.f64 (/.f64 z y) y)
(*.f64 (*.f64 (/.f64 z (*.f64 y y)) 4) 1/4)
(/.f64 z (*.f64 y y))
(/.f64 (/.f64 z y) y)
(*.f64 (*.f64 z 4) (/.f64 1 (*.f64 y (*.f64 y 4))))
(*.f64 4 (*.f64 z (/.f64 (/.f64 1/4 y) y)))
(*.f64 (*.f64 z 4) (/.f64 (/.f64 1/4 y) y))
(*.f64 (/.f64 4 (/.f64 y z)) (/.f64 1 (*.f64 y 4)))
(/.f64 z (*.f64 y y))
(/.f64 (/.f64 z y) y)
(*.f64 (/.f64 1 y) (/.f64 z y))
(/.f64 z (*.f64 y y))
(/.f64 (/.f64 z y) y)
(*.f64 (/.f64 1 (*.f64 y y)) z)
(/.f64 z (*.f64 y y))
(/.f64 (/.f64 z y) y)
(*.f64 -1 (neg.f64 (/.f64 z (*.f64 y y))))
(/.f64 z (*.f64 y y))
(/.f64 (/.f64 z y) y)
(*.f64 -1 (/.f64 z (neg.f64 (*.f64 y y))))
(/.f64 z (*.f64 y y))
(/.f64 (/.f64 z y) y)
(*.f64 -1 (/.f64 (/.f64 z y) (neg.f64 y)))
(/.f64 z (*.f64 y y))
(/.f64 (/.f64 z y) y)
(*.f64 (neg.f64 (/.f64 z (*.f64 y y))) -1)
(/.f64 z (*.f64 y y))
(/.f64 (/.f64 z y) y)
(*.f64 (neg.f64 z) (/.f64 -1 (*.f64 y y)))
(/.f64 z (*.f64 y y))
(/.f64 (/.f64 z y) y)
(*.f64 (/.f64 (neg.f64 z) y) (/.f64 -1 y))
(/.f64 z (*.f64 y y))
(/.f64 (/.f64 z y) y)
(*.f64 (*.f64 2 (/.f64 1 (*.f64 y y))) (/.f64 z 2))
(/.f64 z (*.f64 y y))
(/.f64 (/.f64 z y) y)
(*.f64 (/.f64 2 y) (/.f64 z (+.f64 y y)))
(/.f64 z (*.f64 y y))
(/.f64 (/.f64 z y) y)
(*.f64 (/.f64 2 y) (/.f64 (/.f64 z y) 2))
(/.f64 z (*.f64 y y))
(/.f64 (/.f64 z y) y)
(*.f64 (/.f64 1/2 y) (*.f64 z (/.f64 2 y)))
(/.f64 z (*.f64 y y))
(/.f64 (/.f64 z y) y)
(*.f64 1/2 (/.f64 (+.f64 z z) (*.f64 y y)))
(/.f64 z (*.f64 y y))
(/.f64 (/.f64 z y) y)
(*.f64 (/.f64 (/.f64 1/2 y) y) (+.f64 z z))
(/.f64 z (*.f64 y y))
(/.f64 (/.f64 z y) y)
(*.f64 (*.f64 (/.f64 1 y) 1/2) (*.f64 z (/.f64 2 y)))
(/.f64 z (*.f64 y y))
(/.f64 (/.f64 z y) y)
(*.f64 (*.f64 (/.f64 1 (*.f64 y y)) 1/2) (+.f64 z z))
(/.f64 z (*.f64 y y))
(/.f64 (/.f64 z y) y)
(*.f64 (/.f64 -1 y) (/.f64 (neg.f64 z) y))
(/.f64 z (*.f64 y y))
(/.f64 (/.f64 z y) y)
(*.f64 (/.f64 z (neg.f64 (*.f64 y y))) -1)
(/.f64 z (*.f64 y y))
(/.f64 (/.f64 z y) y)
(*.f64 (/.f64 (/.f64 z y) (neg.f64 y)) -1)
(/.f64 z (*.f64 y y))
(/.f64 (/.f64 z y) y)
(*.f64 (/.f64 z (+.f64 y y)) (/.f64 2 y))
(/.f64 z (*.f64 y y))
(/.f64 (/.f64 z y) y)
(*.f64 (/.f64 (/.f64 z y) (+.f64 y y)) 2)
(/.f64 z (*.f64 y y))
(/.f64 (/.f64 z y) y)
(*.f64 (/.f64 z 2) (*.f64 2 (/.f64 1 (*.f64 y y))))
(/.f64 z (*.f64 y y))
(/.f64 (/.f64 z y) y)
(*.f64 1/4 (*.f64 (/.f64 z (*.f64 y y)) 4))
(/.f64 z (*.f64 y y))
(/.f64 (/.f64 z y) y)
(*.f64 (/.f64 (/.f64 z y) 2) (/.f64 2 y))
(/.f64 z (*.f64 y y))
(/.f64 (/.f64 z y) y)
(*.f64 (/.f64 1 (*.f64 y 4)) (/.f64 4 (/.f64 y z)))
(/.f64 z (*.f64 y y))
(/.f64 (/.f64 z y) y)
(*.f64 (/.f64 z (*.f64 y (+.f64 y y))) 2)
(/.f64 z (*.f64 y y))
(/.f64 (/.f64 z y) y)
(*.f64 (/.f64 (/.f64 z (*.f64 y y)) 2) 2)
(/.f64 z (*.f64 y y))
(/.f64 (/.f64 z y) y)
(*.f64 (/.f64 1 (*.f64 y (*.f64 y 4))) (*.f64 z 4))
(*.f64 (*.f64 z 4) (/.f64 1 (*.f64 y (*.f64 y 4))))
(*.f64 4 (*.f64 z (/.f64 (/.f64 1/4 y) y)))
(*.f64 (*.f64 z 4) (/.f64 (/.f64 1/4 y) y))
(*.f64 (/.f64 -1 (*.f64 y y)) (neg.f64 z))
(/.f64 z (*.f64 y y))
(/.f64 (/.f64 z y) y)
(pow.f64 (/.f64 z (*.f64 y y)) 1)
(/.f64 z (*.f64 y y))
(/.f64 (/.f64 z y) y)
(neg.f64 (neg.f64 (/.f64 z (*.f64 y y))))
(/.f64 z (*.f64 y y))
(/.f64 (/.f64 z y) y)
(neg.f64 (/.f64 z (neg.f64 (*.f64 y y))))
(/.f64 z (*.f64 y y))
(/.f64 (/.f64 z y) y)
(neg.f64 (/.f64 (/.f64 z y) (neg.f64 y)))
(/.f64 z (*.f64 y y))
(/.f64 (/.f64 z y) y)
(-.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 0)
(+.f64 x (*.f64 y (/.f64 y z)))
(*.f64 1 (+.f64 (*.f64 y (/.f64 y z)) x))
(+.f64 x (*.f64 y (/.f64 y z)))
(*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 1)
(+.f64 x (*.f64 y (/.f64 y z)))
(*.f64 2 (/.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 2))
(+.f64 x (*.f64 y (/.f64 y z)))
(*.f64 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 2) 1/2)
(+.f64 x (*.f64 y (/.f64 y z)))
(*.f64 1/2 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 2))
(+.f64 x (*.f64 y (/.f64 y z)))
(*.f64 1/2 (+.f64 (+.f64 x x) (*.f64 y (*.f64 2 (/.f64 y z)))))
(+.f64 x (*.f64 y (/.f64 y z)))
(*.f64 (/.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 2) 2)
(+.f64 x (*.f64 y (/.f64 y z)))
(/.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 1)
(+.f64 x (*.f64 y (/.f64 y z)))
(/.f64 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 2) 2)
(+.f64 x (*.f64 y (/.f64 y z)))
(/.f64 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 4) 4)
(+.f64 x (*.f64 y (/.f64 y z)))
(/.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 4)) 8)
(+.f64 x (*.f64 y (/.f64 y z)))
(/.f64 (+.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 4)) (*.f64 2 (*.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 4))) 16)
(+.f64 x (*.f64 y (/.f64 y z)))
(pow.f64 (+.f64 (*.f64 y (/.f64 y z)) x) 1)
(+.f64 x (*.f64 y (/.f64 y z)))

eval26.0ms (0.5%)

Compiler

Compiled 1412 to 688 computations (51.3% saved)

prune24.0ms (0.5%)

Pruning

6 alts after pruning (1 fresh and 5 done)

PrunedKeptTotal
New1210121
Fresh011
Picked011
Done044
Total1216127
Error
0.0b
Counts
127 → 6
Alt Table
Click to see full alt table
StatusErrorProgram
6.7b
(+.f64 x (/.f64 (*.f64 y y) z))
0.1b
(+.f64 x (/.f64 y (/.f64 z y)))
0.1b
(+.f64 x (/.f64 1 (/.f64 (/.f64 z y) y)))
0.1b
(+.f64 x (*.f64 y (/.f64 y z)))
0.1b
(+.f64 x (*.f64 y (*.f64 y (/.f64 1 z))))
18.9b
x
Compiler

Compiled 58 to 37 computations (36.2% saved)

eval0.0ms (0%)

Compiler

Compiled 3 to 3 computations (0% saved)

prune2.0ms (0%)

Pruning

6 alts after pruning (1 fresh and 5 done)

PrunedKeptTotal
New000
Fresh011
Picked000
Done055
Total066
Error
0.0b
Counts
6 → 6
Alt Table
Click to see full alt table
StatusErrorProgram
6.7b
(+.f64 x (/.f64 (*.f64 y y) z))
0.1b
(+.f64 x (/.f64 y (/.f64 z y)))
0.1b
(+.f64 x (/.f64 1 (/.f64 (/.f64 z y) y)))
0.1b
(+.f64 x (*.f64 y (/.f64 y z)))
0.1b
(+.f64 x (*.f64 y (*.f64 y (/.f64 1 z))))
18.9b
x
Compiler

Compiled 58 to 37 computations (36.2% saved)

regimes85.0ms (1.7%)

Counts
7 → 1
Calls
Call 1
Inputs
x
(+.f64 x (*.f64 y (/.f64 y z)))
(+.f64 x (/.f64 y (/.f64 z y)))
(+.f64 x (/.f64 (*.f64 y y) z))
(+.f64 x (*.f64 y (*.f64 y (/.f64 1 z))))
(+.f64 x (/.f64 1 (/.f64 (/.f64 z y) y)))
(+.f64 x (/.f64 -1 (/.f64 (/.f64 z (neg.f64 y)) y)))
Outputs
(+.f64 x (/.f64 y (/.f64 z y)))
Calls

6 calls:

59.0ms
(*.f64 y y)
5.0ms
x
5.0ms
(+.f64 x (/.f64 (*.f64 y y) z))
5.0ms
y
5.0ms
z
Results
ErrorSegmentsBranch
0.1b1x
0.1b1y
0.1b1z
0.1b1(+.f64 x (/.f64 (*.f64 y y) z))
0.1b1(/.f64 (*.f64 y y) z)
0.1b1(*.f64 y y)
Compiler

Compiled 89 to 51 computations (42.7% saved)

regimes11.0ms (0.2%)

Accuracy

Total -18.8b remaining (-26807%)

Threshold costs -18.8b (-26807%)

Counts
2 → 1
Calls
Call 1
Inputs
x
(+.f64 x (*.f64 y (/.f64 y z)))
Outputs
(+.f64 x (*.f64 y (/.f64 y z)))
Calls

3 calls:

4.0ms
y
3.0ms
x
3.0ms
z
Results
ErrorSegmentsBranch
0.1b1x
0.1b1y
0.1b1z
Compiler

Compiled 23 to 15 computations (34.8% saved)

simplify2.0ms (0%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01139
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(+.f64 x (/.f64 y (/.f64 z y)))
(+.f64 x (*.f64 y (/.f64 y z)))
x
Outputs
(+.f64 x (/.f64 y (/.f64 z y)))
(+.f64 x (*.f64 y (/.f64 y z)))
x
Compiler

Compiled 24 to 15 computations (37.5% saved)

soundness150.0ms (3.1%)

Algorithm
egg-herbie
Rules
1458×rational.json-simplify-2
1118×rational.json-simplify-59
1100×rational.json-simplify-44
1012×rational.json-simplify-47
820×rational.json-simplify-1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0819
11619
22819
37019
434419
5436219
6782919
Stop Event
node limit
Compiler

Compiled 17 to 9 computations (47.1% saved)

end18.0ms (0.4%)

Compiler

Compiled 18 to 9 computations (50% saved)

Profiling

Loading profile data...