Details

Time bar (total: 6.0s)

analyze488.0ms (8.1%)

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
28.1%28.1%71.8%0.1%0%0%0%9
39.7%37.4%56.9%0.1%5.5%0%0%10
46.5%43.7%50.3%0.1%5.9%0%0%11
55.2%51.9%42.1%0.1%5.9%0%0%12
Compiler

Compiled 11 to 8 computations (27.3% saved)

sample2.2s (36.8%)

Results
1.9s8256×body256valid
204.0ms652×body256infinite
Bogosity

preprocess11.0ms (0.2%)

Algorithm
egg-herbie
Rules
30×rational_best.json-simplify-2
14×rational_best.json-simplify-44
swap-y-z
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01776
12476
23476
34176
033
133
Stop Event
unsound
saturated
Calls
Call 1
Inputs
0
1
2
Outputs
0
1
2
1
Call 2
Inputs
(-.f64 x (*.f64 (*.f64 y 4) z))
(-.f64 y (*.f64 (*.f64 x 4) z))
(-.f64 z (*.f64 (*.f64 y 4) x))
(-.f64 x (*.f64 (*.f64 z 4) y))
Outputs
(-.f64 x (*.f64 (*.f64 y 4) z))
(-.f64 x (*.f64 y (*.f64 4 z)))
(-.f64 y (*.f64 (*.f64 x 4) z))
(-.f64 y (*.f64 z (*.f64 x 4)))
(-.f64 y (*.f64 x (*.f64 4 z)))
(-.f64 z (*.f64 (*.f64 y 4) x))
(-.f64 z (*.f64 x (*.f64 y 4)))
(-.f64 x (*.f64 (*.f64 z 4) y))
(-.f64 x (*.f64 (*.f64 y 4) z))
(-.f64 x (*.f64 y (*.f64 4 z)))
Symmetry

(sort y z)

Compiler

Compiled 13 to 10 computations (23.1% saved)

simplify26.0ms (0.4%)

Algorithm
egg-herbie
Rules
12×rational_best.json-simplify-2
rational_best.json-simplify-44
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0919
11119
21519
31919
Stop Event
saturated
Counts
1 → 3
Calls
Call 1
Inputs
(-.f64 x (*.f64 (*.f64 y 4) z))
Outputs
(-.f64 x (*.f64 (*.f64 y 4) z))
(-.f64 x (*.f64 y (*.f64 z 4)))
(-.f64 x (*.f64 y (*.f64 4 z)))

eval1.0ms (0%)

Compiler

Compiled 24 to 15 computations (37.5% saved)

prune2.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New213
Fresh011
Picked000
Done000
Total224
Error
0.0b
Counts
4 → 1
Alt Table
Click to see full alt table
StatusErrorProgram
0.0b
(-.f64 x (*.f64 (*.f64 y 4) z))
Compiler

Compiled 10 to 7 computations (30% saved)

localize17.0ms (0.3%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(-.f64 x (*.f64 (*.f64 y 4) z))
Compiler

Compiled 22 to 13 computations (40.9% saved)

series6.0ms (0.1%)

Counts
1 → 36
Calls

9 calls:

TimeVariablePointExpression
1.0ms
z
@-inf
(-.f64 x (*.f64 (*.f64 y 4) z))
1.0ms
z
@0
(-.f64 x (*.f64 (*.f64 y 4) z))
1.0ms
y
@inf
(-.f64 x (*.f64 (*.f64 y 4) z))
1.0ms
x
@0
(-.f64 x (*.f64 (*.f64 y 4) z))
1.0ms
y
@0
(-.f64 x (*.f64 (*.f64 y 4) z))

rewrite124.0ms (2.1%)

Algorithm
batch-egg-rewrite
Rules
976×rational_best.json-simplify-57
676×rational_best.json-simplify-44
662×rational_best.json-simplify-80
564×rational_best.json-simplify-43
492×rational_best.json-5
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0919
16619
223219
399619
4457819
Stop Event
node limit
Counts
1 → 34
Calls
Call 1
Inputs
(-.f64 x (*.f64 (*.f64 y 4) z))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 x (neg.f64 (*.f64 y (*.f64 4 z))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 x (-.f64 (-.f64 x (*.f64 y (*.f64 4 z))) x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 x (*.f64 y (*.f64 4 z))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 x (*.f64 y (*.f64 4 z))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (*.f64 y (*.f64 4 z))) x)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 x x) (-.f64 0 (+.f64 x (*.f64 y (*.f64 4 z)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 x (*.f64 y (*.f64 4 z))) (neg.f64 (*.f64 y (*.f64 z 8))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (*.f64 y (*.f64 z 8))) (+.f64 x (*.f64 y (*.f64 4 z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 x (*.f64 y (*.f64 4 z))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (/.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (*.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (/.f64 1 (-.f64 x (*.f64 y (*.f64 4 z))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (/.f64 1 (/.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 x (*.f64 y (*.f64 4 z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z)))) (-.f64 x (*.f64 y (*.f64 4 z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 y (*.f64 4 z)) x) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (-.f64 x (*.f64 y (*.f64 4 z)))) (*.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z)))) (/.f64 1 (-.f64 x (*.f64 y (*.f64 4 z)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (/.f64 1 (-.f64 x (*.f64 y (*.f64 4 z))))) (-.f64 x (*.f64 y (*.f64 4 z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z))))) (-.f64 x (*.f64 y (*.f64 4 z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z))))) (*.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (*.f64 (/.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z)))) (/.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (-.f64 x (*.f64 y (*.f64 4 z)))) (*.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z))))) (*.f64 (*.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z)))) (*.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z)))) (-.f64 x (*.f64 y (*.f64 4 z)))) (*.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (/.f64 1 (-.f64 x (*.f64 y (*.f64 4 z))))) (-.f64 x (*.f64 y (*.f64 4 z)))) (*.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (/.f64 1 (-.f64 x (*.f64 y (*.f64 4 z)))) (*.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z))))) (*.f64 (*.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z)))) (*.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z)))))) (*.f64 (*.f64 (*.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z)))) (*.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z))))) (*.f64 (*.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z)))) (*.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (/.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z)))) (-.f64 x (*.f64 y (*.f64 4 z)))) (*.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z))))) (*.f64 (*.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z)))) (*.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (*.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (/.f64 1 (-.f64 x (*.f64 y (*.f64 4 z))))) (-.f64 x (*.f64 y (*.f64 4 z)))) (*.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z))))) (*.f64 (*.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z)))) (*.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (/.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z))))) (-.f64 x (*.f64 y (*.f64 4 z)))) (*.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -1 (-.f64 (*.f64 y (*.f64 4 z)) x)) (*.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 x (*.f64 y (*.f64 4 z))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (/.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 y (*.f64 4 z)) x) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 x (-.f64 (*.f64 y (*.f64 z 8)) x)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 y (*.f64 z 8)) (+.f64 x x)) -2)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (-.f64 (*.f64 y (*.f64 4 z)) x))))))

simplify236.0ms (3.9%)

Algorithm
egg-herbie
Rules
1268×rational_best.json-simplify-54
1180×rational_best.json-simplify-80
1122×rational_best.json-simplify-78
878×rational_best.json-simplify-2
804×rational_best.json-simplify-49
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0831436
11721436
28531324
330401324
449401324
Stop Event
node limit
Counts
70 → 46
Calls
Call 1
Inputs
(*.f64 -4 (*.f64 y z))
(+.f64 (*.f64 -4 (*.f64 y z)) x)
(+.f64 (*.f64 -4 (*.f64 y z)) x)
(+.f64 (*.f64 -4 (*.f64 y z)) x)
x
(+.f64 (*.f64 -4 (*.f64 y z)) x)
(+.f64 (*.f64 -4 (*.f64 y z)) x)
(+.f64 (*.f64 -4 (*.f64 y z)) x)
x
(+.f64 (*.f64 -4 (*.f64 y z)) x)
(+.f64 (*.f64 -4 (*.f64 y z)) x)
(+.f64 (*.f64 -4 (*.f64 y z)) x)
x
(+.f64 (*.f64 -4 (*.f64 y z)) x)
(+.f64 (*.f64 -4 (*.f64 y z)) x)
(+.f64 (*.f64 -4 (*.f64 y z)) x)
(*.f64 -4 (*.f64 y z))
(+.f64 (*.f64 -4 (*.f64 y z)) x)
(+.f64 (*.f64 -4 (*.f64 y z)) x)
(+.f64 (*.f64 -4 (*.f64 y z)) x)
(*.f64 -4 (*.f64 y z))
(+.f64 (*.f64 -4 (*.f64 y z)) x)
(+.f64 (*.f64 -4 (*.f64 y z)) x)
(+.f64 (*.f64 -4 (*.f64 y z)) x)
x
(+.f64 (*.f64 -4 (*.f64 y z)) x)
(+.f64 (*.f64 -4 (*.f64 y z)) x)
(+.f64 (*.f64 -4 (*.f64 y z)) x)
(*.f64 -4 (*.f64 y z))
(+.f64 (*.f64 -4 (*.f64 y z)) x)
(+.f64 (*.f64 -4 (*.f64 y z)) x)
(+.f64 (*.f64 -4 (*.f64 y z)) x)
(*.f64 -4 (*.f64 y z))
(+.f64 (*.f64 -4 (*.f64 y z)) x)
(+.f64 (*.f64 -4 (*.f64 y z)) x)
(+.f64 (*.f64 -4 (*.f64 y z)) x)
(+.f64 x (neg.f64 (*.f64 y (*.f64 4 z))))
(+.f64 x (-.f64 (-.f64 x (*.f64 y (*.f64 4 z))) x))
(+.f64 (-.f64 x (*.f64 y (*.f64 4 z))) 0)
(+.f64 0 (-.f64 x (*.f64 y (*.f64 4 z))))
(+.f64 (neg.f64 (*.f64 y (*.f64 4 z))) x)
(+.f64 (+.f64 x x) (-.f64 0 (+.f64 x (*.f64 y (*.f64 4 z)))))
(+.f64 (+.f64 x (*.f64 y (*.f64 4 z))) (neg.f64 (*.f64 y (*.f64 z 8))))
(+.f64 (neg.f64 (*.f64 y (*.f64 z 8))) (+.f64 x (*.f64 y (*.f64 4 z))))
(*.f64 (-.f64 x (*.f64 y (*.f64 4 z))) 1)
(*.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (/.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z)))))
(*.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (*.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (/.f64 1 (-.f64 x (*.f64 y (*.f64 4 z))))))
(*.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (/.f64 1 (/.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z))))))
(*.f64 1 (-.f64 x (*.f64 y (*.f64 4 z))))
(*.f64 (/.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z)))) (-.f64 x (*.f64 y (*.f64 4 z))))
(*.f64 (-.f64 (*.f64 y (*.f64 4 z)) x) -1)
(*.f64 (/.f64 1 (-.f64 x (*.f64 y (*.f64 4 z)))) (*.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z)))))
(*.f64 (*.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z)))) (/.f64 1 (-.f64 x (*.f64 y (*.f64 4 z)))))
(*.f64 (*.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (/.f64 1 (-.f64 x (*.f64 y (*.f64 4 z))))) (-.f64 x (*.f64 y (*.f64 4 z))))
(*.f64 (/.f64 1 (/.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z))))) (-.f64 x (*.f64 y (*.f64 4 z))))
(*.f64 (/.f64 1 (/.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z))))) (*.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (*.f64 (/.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z)))) (/.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z)))))))
(*.f64 (/.f64 (/.f64 1 (-.f64 x (*.f64 y (*.f64 4 z)))) (*.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z))))) (*.f64 (*.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z)))) (*.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z))))))
(*.f64 (/.f64 (/.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z)))) (-.f64 x (*.f64 y (*.f64 4 z)))) (*.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z)))))
(*.f64 (/.f64 (*.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (/.f64 1 (-.f64 x (*.f64 y (*.f64 4 z))))) (-.f64 x (*.f64 y (*.f64 4 z)))) (*.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z)))))
(*.f64 (/.f64 (/.f64 (/.f64 1 (-.f64 x (*.f64 y (*.f64 4 z)))) (*.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z))))) (*.f64 (*.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z)))) (*.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z)))))) (*.f64 (*.f64 (*.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z)))) (*.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z))))) (*.f64 (*.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z)))) (*.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z)))))))
(*.f64 (/.f64 (/.f64 (/.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z)))) (-.f64 x (*.f64 y (*.f64 4 z)))) (*.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z))))) (*.f64 (*.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z)))) (*.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z))))))
(*.f64 (/.f64 (/.f64 (*.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (/.f64 1 (-.f64 x (*.f64 y (*.f64 4 z))))) (-.f64 x (*.f64 y (*.f64 4 z)))) (*.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z))))) (*.f64 (*.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z)))) (*.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z))))))
(*.f64 (/.f64 (/.f64 1 (/.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z))))) (-.f64 x (*.f64 y (*.f64 4 z)))) (*.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z)))))
(*.f64 (/.f64 -1 (-.f64 (*.f64 y (*.f64 4 z)) x)) (*.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z)))))
(/.f64 (-.f64 x (*.f64 y (*.f64 4 z))) 1)
(/.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (/.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z)))))
(/.f64 (-.f64 (*.f64 y (*.f64 4 z)) x) -1)
(/.f64 (-.f64 x (-.f64 (*.f64 y (*.f64 z 8)) x)) 2)
(/.f64 (-.f64 (*.f64 y (*.f64 z 8)) (+.f64 x x)) -2)
(neg.f64 (-.f64 (*.f64 y (*.f64 4 z)) x))
Outputs
(*.f64 -4 (*.f64 y z))
(+.f64 (*.f64 -4 (*.f64 y z)) x)
(+.f64 (*.f64 -4 (*.f64 y z)) x)
(+.f64 (*.f64 -4 (*.f64 y z)) x)
x
(+.f64 (*.f64 -4 (*.f64 y z)) x)
(+.f64 (*.f64 -4 (*.f64 y z)) x)
(+.f64 (*.f64 -4 (*.f64 y z)) x)
x
(+.f64 (*.f64 -4 (*.f64 y z)) x)
(+.f64 (*.f64 -4 (*.f64 y z)) x)
(+.f64 (*.f64 -4 (*.f64 y z)) x)
x
(+.f64 (*.f64 -4 (*.f64 y z)) x)
(+.f64 (*.f64 -4 (*.f64 y z)) x)
(+.f64 (*.f64 -4 (*.f64 y z)) x)
(*.f64 -4 (*.f64 y z))
(+.f64 (*.f64 -4 (*.f64 y z)) x)
(+.f64 (*.f64 -4 (*.f64 y z)) x)
(+.f64 (*.f64 -4 (*.f64 y z)) x)
(*.f64 -4 (*.f64 y z))
(+.f64 (*.f64 -4 (*.f64 y z)) x)
(+.f64 (*.f64 -4 (*.f64 y z)) x)
(+.f64 (*.f64 -4 (*.f64 y z)) x)
x
(+.f64 (*.f64 -4 (*.f64 y z)) x)
(+.f64 (*.f64 -4 (*.f64 y z)) x)
(+.f64 (*.f64 -4 (*.f64 y z)) x)
(*.f64 -4 (*.f64 y z))
(+.f64 (*.f64 -4 (*.f64 y z)) x)
(+.f64 (*.f64 -4 (*.f64 y z)) x)
(+.f64 (*.f64 -4 (*.f64 y z)) x)
(*.f64 -4 (*.f64 y z))
(+.f64 (*.f64 -4 (*.f64 y z)) x)
(+.f64 (*.f64 -4 (*.f64 y z)) x)
(+.f64 (*.f64 -4 (*.f64 y z)) x)
(+.f64 x (neg.f64 (*.f64 y (*.f64 4 z))))
(+.f64 x (neg.f64 (*.f64 y (*.f64 z 4))))
(-.f64 x (*.f64 y (*.f64 z 4)))
(+.f64 x (-.f64 (-.f64 x (*.f64 y (*.f64 4 z))) x))
(+.f64 x (-.f64 (-.f64 x (*.f64 y (*.f64 z 4))) x))
(+.f64 (-.f64 x (*.f64 y (*.f64 4 z))) 0)
(+.f64 x (neg.f64 (*.f64 y (*.f64 z 4))))
(-.f64 x (*.f64 y (*.f64 z 4)))
(+.f64 0 (-.f64 x (*.f64 y (*.f64 4 z))))
(+.f64 x (neg.f64 (*.f64 y (*.f64 z 4))))
(-.f64 x (*.f64 y (*.f64 z 4)))
(+.f64 (neg.f64 (*.f64 y (*.f64 4 z))) x)
(+.f64 x (neg.f64 (*.f64 y (*.f64 z 4))))
(-.f64 x (*.f64 y (*.f64 z 4)))
(+.f64 (+.f64 x x) (-.f64 0 (+.f64 x (*.f64 y (*.f64 4 z)))))
(+.f64 (+.f64 x x) (neg.f64 (+.f64 x (*.f64 y (*.f64 z 4)))))
(+.f64 x (+.f64 x (neg.f64 (+.f64 x (*.f64 y (*.f64 z 4))))))
(+.f64 (+.f64 x (*.f64 y (*.f64 4 z))) (neg.f64 (*.f64 y (*.f64 z 8))))
(+.f64 (*.f64 y (*.f64 z 4)) (+.f64 x (neg.f64 (*.f64 y (*.f64 z 8)))))
(+.f64 x (+.f64 (*.f64 y (*.f64 z 4)) (neg.f64 (*.f64 y (*.f64 z 8)))))
(+.f64 (+.f64 x (*.f64 y (*.f64 z 4))) (neg.f64 (*.f64 y (*.f64 z 8))))
(+.f64 (neg.f64 (*.f64 y (*.f64 z 8))) (+.f64 x (*.f64 y (*.f64 4 z))))
(+.f64 (*.f64 y (*.f64 z 4)) (+.f64 x (neg.f64 (*.f64 y (*.f64 z 8)))))
(+.f64 x (+.f64 (*.f64 y (*.f64 z 4)) (neg.f64 (*.f64 y (*.f64 z 8)))))
(+.f64 (+.f64 x (*.f64 y (*.f64 z 4))) (neg.f64 (*.f64 y (*.f64 z 8))))
(*.f64 (-.f64 x (*.f64 y (*.f64 4 z))) 1)
(+.f64 x (neg.f64 (*.f64 y (*.f64 z 4))))
(-.f64 x (*.f64 y (*.f64 z 4)))
(*.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (/.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z)))))
(+.f64 x (neg.f64 (*.f64 y (*.f64 z 4))))
(-.f64 x (*.f64 y (*.f64 z 4)))
(*.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (*.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (/.f64 1 (-.f64 x (*.f64 y (*.f64 4 z))))))
(+.f64 x (neg.f64 (*.f64 y (*.f64 z 4))))
(-.f64 x (*.f64 y (*.f64 z 4)))
(*.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (/.f64 1 (/.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z))))))
(+.f64 x (neg.f64 (*.f64 y (*.f64 z 4))))
(-.f64 x (*.f64 y (*.f64 z 4)))
(*.f64 1 (-.f64 x (*.f64 y (*.f64 4 z))))
(+.f64 x (neg.f64 (*.f64 y (*.f64 z 4))))
(-.f64 x (*.f64 y (*.f64 z 4)))
(*.f64 (/.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z)))) (-.f64 x (*.f64 y (*.f64 4 z))))
(+.f64 x (neg.f64 (*.f64 y (*.f64 z 4))))
(-.f64 x (*.f64 y (*.f64 z 4)))
(*.f64 (-.f64 (*.f64 y (*.f64 4 z)) x) -1)
(+.f64 x (neg.f64 (*.f64 y (*.f64 z 4))))
(-.f64 x (*.f64 y (*.f64 z 4)))
(*.f64 (/.f64 1 (-.f64 x (*.f64 y (*.f64 4 z)))) (*.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z)))))
(+.f64 x (neg.f64 (*.f64 y (*.f64 z 4))))
(-.f64 x (*.f64 y (*.f64 z 4)))
(*.f64 (*.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z)))) (/.f64 1 (-.f64 x (*.f64 y (*.f64 4 z)))))
(+.f64 x (neg.f64 (*.f64 y (*.f64 z 4))))
(-.f64 x (*.f64 y (*.f64 z 4)))
(*.f64 (*.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (/.f64 1 (-.f64 x (*.f64 y (*.f64 4 z))))) (-.f64 x (*.f64 y (*.f64 4 z))))
(+.f64 x (neg.f64 (*.f64 y (*.f64 z 4))))
(-.f64 x (*.f64 y (*.f64 z 4)))
(*.f64 (/.f64 1 (/.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z))))) (-.f64 x (*.f64 y (*.f64 4 z))))
(+.f64 x (neg.f64 (*.f64 y (*.f64 z 4))))
(-.f64 x (*.f64 y (*.f64 z 4)))
(*.f64 (/.f64 1 (/.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z))))) (*.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (*.f64 (/.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z)))) (/.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z)))))))
(+.f64 x (neg.f64 (*.f64 y (*.f64 z 4))))
(-.f64 x (*.f64 y (*.f64 z 4)))
(*.f64 (/.f64 (/.f64 1 (-.f64 x (*.f64 y (*.f64 4 z)))) (*.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z))))) (*.f64 (*.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z)))) (*.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z))))))
(+.f64 x (neg.f64 (*.f64 y (*.f64 z 4))))
(-.f64 x (*.f64 y (*.f64 z 4)))
(*.f64 (/.f64 (/.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z)))) (-.f64 x (*.f64 y (*.f64 4 z)))) (*.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z)))))
(+.f64 x (neg.f64 (*.f64 y (*.f64 z 4))))
(-.f64 x (*.f64 y (*.f64 z 4)))
(*.f64 (/.f64 (*.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (/.f64 1 (-.f64 x (*.f64 y (*.f64 4 z))))) (-.f64 x (*.f64 y (*.f64 4 z)))) (*.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z)))))
(+.f64 x (neg.f64 (*.f64 y (*.f64 z 4))))
(-.f64 x (*.f64 y (*.f64 z 4)))
(*.f64 (/.f64 (/.f64 (/.f64 1 (-.f64 x (*.f64 y (*.f64 4 z)))) (*.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z))))) (*.f64 (*.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z)))) (*.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z)))))) (*.f64 (*.f64 (*.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z)))) (*.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z))))) (*.f64 (*.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z)))) (*.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z)))))))
(+.f64 x (neg.f64 (*.f64 y (*.f64 z 4))))
(-.f64 x (*.f64 y (*.f64 z 4)))
(*.f64 (/.f64 (/.f64 (/.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z)))) (-.f64 x (*.f64 y (*.f64 4 z)))) (*.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z))))) (*.f64 (*.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z)))) (*.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z))))))
(+.f64 x (neg.f64 (*.f64 y (*.f64 z 4))))
(-.f64 x (*.f64 y (*.f64 z 4)))
(*.f64 (/.f64 (/.f64 (*.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (/.f64 1 (-.f64 x (*.f64 y (*.f64 4 z))))) (-.f64 x (*.f64 y (*.f64 4 z)))) (*.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z))))) (*.f64 (*.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z)))) (*.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z))))))
(+.f64 x (neg.f64 (*.f64 y (*.f64 z 4))))
(-.f64 x (*.f64 y (*.f64 z 4)))
(*.f64 (/.f64 (/.f64 1 (/.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z))))) (-.f64 x (*.f64 y (*.f64 4 z)))) (*.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z)))))
(+.f64 x (neg.f64 (*.f64 y (*.f64 z 4))))
(-.f64 x (*.f64 y (*.f64 z 4)))
(*.f64 (/.f64 -1 (-.f64 (*.f64 y (*.f64 4 z)) x)) (*.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z)))))
(+.f64 x (neg.f64 (*.f64 y (*.f64 z 4))))
(-.f64 x (*.f64 y (*.f64 z 4)))
(/.f64 (-.f64 x (*.f64 y (*.f64 4 z))) 1)
(+.f64 x (neg.f64 (*.f64 y (*.f64 z 4))))
(-.f64 x (*.f64 y (*.f64 z 4)))
(/.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (/.f64 (-.f64 x (*.f64 y (*.f64 4 z))) (-.f64 x (*.f64 y (*.f64 4 z)))))
(+.f64 x (neg.f64 (*.f64 y (*.f64 z 4))))
(-.f64 x (*.f64 y (*.f64 z 4)))
(/.f64 (-.f64 (*.f64 y (*.f64 4 z)) x) -1)
(+.f64 x (neg.f64 (*.f64 y (*.f64 z 4))))
(-.f64 x (*.f64 y (*.f64 z 4)))
(/.f64 (-.f64 x (-.f64 (*.f64 y (*.f64 z 8)) x)) 2)
(/.f64 (+.f64 x (-.f64 x (*.f64 y (*.f64 z 8)))) 2)
(/.f64 (-.f64 (*.f64 y (*.f64 z 8)) (+.f64 x x)) -2)
(neg.f64 (-.f64 (*.f64 y (*.f64 4 z)) x))
(+.f64 x (neg.f64 (*.f64 y (*.f64 z 4))))
(-.f64 x (*.f64 y (*.f64 z 4)))

eval16.0ms (0.3%)

Compiler

Compiled 1024 to 641 computations (37.4% saved)

prune8.0ms (0.1%)

Pruning

4 alts after pruning (3 fresh and 1 done)

PrunedKeptTotal
New43346
Fresh000
Picked011
Done000
Total43447
Error
0b
Counts
47 → 4
Alt Table
Click to see full alt table
StatusErrorProgram
0.0b
(-.f64 x (*.f64 (*.f64 y 4) z))
0b
(+.f64 (+.f64 x (*.f64 y (*.f64 z 4))) (neg.f64 (*.f64 y (*.f64 z 8))))
35.1b
(*.f64 -4 (*.f64 y z))
27.4b
x
Compiler

Compiled 39 to 28 computations (28.2% saved)

localize5.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(*.f64 -4 (*.f64 y z))
Compiler

Compiled 14 to 7 computations (50% saved)

series2.0ms (0%)

Counts
1 → 0
Calls

6 calls:

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

rewrite239.0ms (4%)

Algorithm
batch-egg-rewrite
Rules
1924×rational_best.json-5
1922×rational_best.json-2
1922×rational_best.json-3
1922×rational_best.json-1
1922×rational_best.json-4
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0713
15413
218713
378313
4365013
Stop Event
node limit
Counts
1 → 6
Calls
Call 1
Inputs
(*.f64 -4 (*.f64 y z))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 -4 (*.f64 y z)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 -4 (*.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 -4 (*.f64 y z)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -4 (*.f64 y z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -4 (*.f64 y z)) (/.f64 (*.f64 y (*.f64 z -8)) (*.f64 y (*.f64 z -8))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (*.f64 z -8)) 2)))))

simplify377.0ms (6.3%)

Algorithm
egg-herbie
Rules
2334×rational_best.json-simplify-82
2022×rational_best.json-simplify-83
1398×rational_best.json-simplify-80
1080×rational_best.json-simplify-74
1022×rational_best.json-simplify-2
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02078
13578
27378
317578
467278
5160278
6249978
7385178
8546078
9612278
10620278
11624078
12627778
13628178
Stop Event
node limit
Counts
6 → 7
Calls
Call 1
Inputs
(+.f64 (*.f64 -4 (*.f64 y z)) 0)
(+.f64 0 (*.f64 -4 (*.f64 y z)))
(-.f64 (*.f64 -4 (*.f64 y z)) 0)
(/.f64 (*.f64 -4 (*.f64 y z)) 1)
(/.f64 (*.f64 -4 (*.f64 y z)) (/.f64 (*.f64 y (*.f64 z -8)) (*.f64 y (*.f64 z -8))))
(/.f64 (*.f64 y (*.f64 z -8)) 2)
Outputs
(+.f64 (*.f64 -4 (*.f64 y z)) 0)
(*.f64 -4 (*.f64 y z))
(+.f64 0 (*.f64 -4 (*.f64 y z)))
(*.f64 -4 (*.f64 y z))
(-.f64 (*.f64 -4 (*.f64 y z)) 0)
(*.f64 -4 (*.f64 y z))
(/.f64 (*.f64 -4 (*.f64 y z)) 1)
(*.f64 -4 (*.f64 y z))
(/.f64 (*.f64 -4 (*.f64 y z)) (/.f64 (*.f64 y (*.f64 z -8)) (*.f64 y (*.f64 z -8))))
(*.f64 -4 (*.f64 y z))
(/.f64 (*.f64 y (*.f64 z -8)) 2)
(*.f64 -4 (*.f64 y z))

localize24.0ms (0.4%)

Local error

Found 2 expressions with local error:

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

Compiled 51 to 32 computations (37.3% saved)

series3.0ms (0.1%)

Counts
2 → 72
Calls

18 calls:

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

rewrite252.0ms (4.2%)

Algorithm
batch-egg-rewrite
Rules
1440×rational_best.json-simplify-57
814×rational_best.json-simplify-47
794×rational_best.json-5
792×rational_best.json-2
792×rational_best.json-3
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01560
111960
240260
3168154
4660754
Stop Event
node limit
Counts
2 → 38
Calls
Call 1
Inputs
(+.f64 x (*.f64 y (*.f64 z 4)))
(+.f64 (+.f64 x (*.f64 y (*.f64 z 4))) (neg.f64 (*.f64 y (*.f64 z 8))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 x (*.f64 y (*.f64 z 4))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (+.f64 x (*.f64 y (*.f64 z 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 x (*.f64 y (*.f64 z 4))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 x (*.f64 y (*.f64 z 4))) (/.f64 (+.f64 x (*.f64 y (*.f64 z 4))) (+.f64 x (*.f64 y (*.f64 z 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 x (*.f64 y (*.f64 z 4))) (*.f64 (+.f64 x (*.f64 y (*.f64 z 4))) (/.f64 1 (+.f64 x (*.f64 y (*.f64 z 4))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 x (*.f64 y (*.f64 z 4))) (/.f64 1 (/.f64 (+.f64 x (*.f64 y (*.f64 z 4))) (+.f64 x (*.f64 y (*.f64 z 4))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 x (*.f64 y (*.f64 z 4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 x (*.f64 y (*.f64 z 4))) (+.f64 x (*.f64 y (*.f64 z 4)))) (+.f64 x (*.f64 y (*.f64 z 4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (+.f64 x (*.f64 y (*.f64 z 4)))) (*.f64 (+.f64 x (*.f64 y (*.f64 z 4))) (+.f64 x (*.f64 y (*.f64 z 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 x (*.f64 y (*.f64 z 4))) (+.f64 x (*.f64 y (*.f64 z 4)))) (/.f64 1 (+.f64 x (*.f64 y (*.f64 z 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 x (*.f64 y (*.f64 z 4))) (/.f64 1 (+.f64 x (*.f64 y (*.f64 z 4))))) (+.f64 x (*.f64 y (*.f64 z 4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (+.f64 x (*.f64 y (*.f64 z 4)))) (*.f64 (+.f64 x (*.f64 y (*.f64 z 4))) (+.f64 x (*.f64 y (*.f64 z 4))))) (*.f64 (*.f64 (+.f64 x (*.f64 y (*.f64 z 4))) (+.f64 x (*.f64 y (*.f64 z 4)))) (*.f64 (+.f64 x (*.f64 y (*.f64 z 4))) (+.f64 x (*.f64 y (*.f64 z 4))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (+.f64 x (*.f64 y (*.f64 z 4))) (+.f64 x (*.f64 y (*.f64 z 4)))) (+.f64 x (*.f64 y (*.f64 z 4)))) (*.f64 (+.f64 x (*.f64 y (*.f64 z 4))) (+.f64 x (*.f64 y (*.f64 z 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (+.f64 x (*.f64 y (*.f64 z 4))) (/.f64 1 (+.f64 x (*.f64 y (*.f64 z 4))))) (+.f64 x (*.f64 y (*.f64 z 4)))) (*.f64 (+.f64 x (*.f64 y (*.f64 z 4))) (+.f64 x (*.f64 y (*.f64 z 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (/.f64 (+.f64 x (*.f64 y (*.f64 z 4))) (+.f64 x (*.f64 y (*.f64 z 4))))) (+.f64 x (*.f64 y (*.f64 z 4)))) (*.f64 (+.f64 x (*.f64 y (*.f64 z 4))) (+.f64 x (*.f64 y (*.f64 z 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 x (*.f64 y (*.f64 z 4))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 x (*.f64 y (*.f64 z 4))) (/.f64 (+.f64 x (*.f64 y (*.f64 z 4))) (+.f64 x (*.f64 y (*.f64 z 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 x (+.f64 x (*.f64 y (*.f64 z 8)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (+.f64 x (*.f64 y (*.f64 z 4)))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))) (/.f64 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))) (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))) (*.f64 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))) (/.f64 1 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))) (/.f64 1 (/.f64 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))) (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))) (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8)))))) (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8)))))) (*.f64 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))) (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))) (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8)))))) (/.f64 1 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))) (/.f64 1 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))))) (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8)))))) (*.f64 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))) (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))))) (*.f64 (*.f64 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))) (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8)))))) (*.f64 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))) (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))) (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8)))))) (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8)))))) (*.f64 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))) (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))) (/.f64 1 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))))) (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8)))))) (*.f64 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))) (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (/.f64 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))) (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))))) (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8)))))) (*.f64 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))) (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))) (/.f64 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))) (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8)))))))))))

simplify193.0ms (3.2%)

Algorithm
egg-herbie
Rules
1458×rational_best.json-simplify-78
936×rational_best.json-simplify-80
852×rational_best.json-simplify-2
816×rational_best.json-simplify-132
566×rational_best.json-simplify-43
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01142706
12302396
29192396
323762396
447592396
Stop Event
node limit
Counts
110 → 68
Calls
Call 1
Inputs
(*.f64 4 (*.f64 y z))
(+.f64 (*.f64 4 (*.f64 y z)) x)
(+.f64 (*.f64 4 (*.f64 y z)) x)
(+.f64 (*.f64 4 (*.f64 y z)) x)
x
(+.f64 (*.f64 4 (*.f64 y z)) x)
(+.f64 (*.f64 4 (*.f64 y z)) x)
(+.f64 (*.f64 4 (*.f64 y z)) x)
x
(+.f64 (*.f64 4 (*.f64 y z)) x)
(+.f64 (*.f64 4 (*.f64 y z)) x)
(+.f64 (*.f64 4 (*.f64 y z)) x)
x
(+.f64 (*.f64 4 (*.f64 y z)) x)
(+.f64 (*.f64 4 (*.f64 y z)) x)
(+.f64 (*.f64 4 (*.f64 y z)) x)
(*.f64 4 (*.f64 y z))
(+.f64 (*.f64 4 (*.f64 y z)) x)
(+.f64 (*.f64 4 (*.f64 y z)) x)
(+.f64 (*.f64 4 (*.f64 y z)) x)
(*.f64 4 (*.f64 y z))
(+.f64 (*.f64 4 (*.f64 y z)) x)
(+.f64 (*.f64 4 (*.f64 y z)) x)
(+.f64 (*.f64 4 (*.f64 y z)) x)
x
(+.f64 (*.f64 4 (*.f64 y z)) x)
(+.f64 (*.f64 4 (*.f64 y z)) x)
(+.f64 (*.f64 4 (*.f64 y z)) x)
(*.f64 4 (*.f64 y z))
(+.f64 (*.f64 4 (*.f64 y z)) x)
(+.f64 (*.f64 4 (*.f64 y z)) x)
(+.f64 (*.f64 4 (*.f64 y z)) x)
(*.f64 4 (*.f64 y z))
(+.f64 (*.f64 4 (*.f64 y z)) x)
(+.f64 (*.f64 4 (*.f64 y z)) x)
(+.f64 (*.f64 4 (*.f64 y z)) x)
(-.f64 (*.f64 4 (*.f64 y z)) (*.f64 8 (*.f64 y z)))
(-.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (*.f64 8 (*.f64 y z)))
(-.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (*.f64 8 (*.f64 y z)))
(-.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (*.f64 8 (*.f64 y z)))
x
(-.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (*.f64 8 (*.f64 y z)))
(-.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (*.f64 8 (*.f64 y z)))
(-.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (*.f64 8 (*.f64 y z)))
x
(-.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (*.f64 8 (*.f64 y z)))
(-.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (*.f64 8 (*.f64 y z)))
(-.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (*.f64 8 (*.f64 y z)))
x
(+.f64 (*.f64 y (-.f64 (*.f64 4 z) (*.f64 8 z))) x)
(+.f64 (*.f64 y (-.f64 (*.f64 4 z) (*.f64 8 z))) x)
(+.f64 (*.f64 y (-.f64 (*.f64 4 z) (*.f64 8 z))) x)
(*.f64 y (-.f64 (*.f64 4 z) (*.f64 8 z)))
(+.f64 (*.f64 y (-.f64 (*.f64 4 z) (*.f64 8 z))) x)
(+.f64 (*.f64 y (-.f64 (*.f64 4 z) (*.f64 8 z))) x)
(+.f64 (*.f64 y (-.f64 (*.f64 4 z) (*.f64 8 z))) x)
(*.f64 -1 (*.f64 y (-.f64 (*.f64 -4 z) (*.f64 -8 z))))
(+.f64 (*.f64 -1 (*.f64 y (-.f64 (*.f64 -4 z) (*.f64 -8 z)))) x)
(+.f64 (*.f64 -1 (*.f64 y (-.f64 (*.f64 -4 z) (*.f64 -8 z)))) x)
(+.f64 (*.f64 -1 (*.f64 y (-.f64 (*.f64 -4 z) (*.f64 -8 z)))) x)
x
(+.f64 (*.f64 (-.f64 (*.f64 4 y) (*.f64 8 y)) z) x)
(+.f64 (*.f64 (-.f64 (*.f64 4 y) (*.f64 8 y)) z) x)
(+.f64 (*.f64 (-.f64 (*.f64 4 y) (*.f64 8 y)) z) x)
(*.f64 (-.f64 (*.f64 4 y) (*.f64 8 y)) z)
(+.f64 (*.f64 (-.f64 (*.f64 4 y) (*.f64 8 y)) z) x)
(+.f64 (*.f64 (-.f64 (*.f64 4 y) (*.f64 8 y)) z) x)
(+.f64 (*.f64 (-.f64 (*.f64 4 y) (*.f64 8 y)) z) x)
(*.f64 -1 (*.f64 (-.f64 (*.f64 -4 y) (*.f64 -8 y)) z))
(+.f64 (*.f64 -1 (*.f64 (-.f64 (*.f64 -4 y) (*.f64 -8 y)) z)) x)
(+.f64 (*.f64 -1 (*.f64 (-.f64 (*.f64 -4 y) (*.f64 -8 y)) z)) x)
(+.f64 (*.f64 -1 (*.f64 (-.f64 (*.f64 -4 y) (*.f64 -8 y)) z)) x)
(-.f64 (+.f64 x (*.f64 y (*.f64 z 4))) 0)
(-.f64 0 (neg.f64 (+.f64 x (*.f64 y (*.f64 z 4)))))
(*.f64 (+.f64 x (*.f64 y (*.f64 z 4))) 1)
(*.f64 (+.f64 x (*.f64 y (*.f64 z 4))) (/.f64 (+.f64 x (*.f64 y (*.f64 z 4))) (+.f64 x (*.f64 y (*.f64 z 4)))))
(*.f64 (+.f64 x (*.f64 y (*.f64 z 4))) (*.f64 (+.f64 x (*.f64 y (*.f64 z 4))) (/.f64 1 (+.f64 x (*.f64 y (*.f64 z 4))))))
(*.f64 (+.f64 x (*.f64 y (*.f64 z 4))) (/.f64 1 (/.f64 (+.f64 x (*.f64 y (*.f64 z 4))) (+.f64 x (*.f64 y (*.f64 z 4))))))
(*.f64 1 (+.f64 x (*.f64 y (*.f64 z 4))))
(*.f64 (/.f64 (+.f64 x (*.f64 y (*.f64 z 4))) (+.f64 x (*.f64 y (*.f64 z 4)))) (+.f64 x (*.f64 y (*.f64 z 4))))
(*.f64 (/.f64 1 (+.f64 x (*.f64 y (*.f64 z 4)))) (*.f64 (+.f64 x (*.f64 y (*.f64 z 4))) (+.f64 x (*.f64 y (*.f64 z 4)))))
(*.f64 (*.f64 (+.f64 x (*.f64 y (*.f64 z 4))) (+.f64 x (*.f64 y (*.f64 z 4)))) (/.f64 1 (+.f64 x (*.f64 y (*.f64 z 4)))))
(*.f64 (*.f64 (+.f64 x (*.f64 y (*.f64 z 4))) (/.f64 1 (+.f64 x (*.f64 y (*.f64 z 4))))) (+.f64 x (*.f64 y (*.f64 z 4))))
(*.f64 (/.f64 (/.f64 1 (+.f64 x (*.f64 y (*.f64 z 4)))) (*.f64 (+.f64 x (*.f64 y (*.f64 z 4))) (+.f64 x (*.f64 y (*.f64 z 4))))) (*.f64 (*.f64 (+.f64 x (*.f64 y (*.f64 z 4))) (+.f64 x (*.f64 y (*.f64 z 4)))) (*.f64 (+.f64 x (*.f64 y (*.f64 z 4))) (+.f64 x (*.f64 y (*.f64 z 4))))))
(*.f64 (/.f64 (/.f64 (+.f64 x (*.f64 y (*.f64 z 4))) (+.f64 x (*.f64 y (*.f64 z 4)))) (+.f64 x (*.f64 y (*.f64 z 4)))) (*.f64 (+.f64 x (*.f64 y (*.f64 z 4))) (+.f64 x (*.f64 y (*.f64 z 4)))))
(*.f64 (/.f64 (*.f64 (+.f64 x (*.f64 y (*.f64 z 4))) (/.f64 1 (+.f64 x (*.f64 y (*.f64 z 4))))) (+.f64 x (*.f64 y (*.f64 z 4)))) (*.f64 (+.f64 x (*.f64 y (*.f64 z 4))) (+.f64 x (*.f64 y (*.f64 z 4)))))
(*.f64 (/.f64 (/.f64 1 (/.f64 (+.f64 x (*.f64 y (*.f64 z 4))) (+.f64 x (*.f64 y (*.f64 z 4))))) (+.f64 x (*.f64 y (*.f64 z 4)))) (*.f64 (+.f64 x (*.f64 y (*.f64 z 4))) (+.f64 x (*.f64 y (*.f64 z 4)))))
(/.f64 (+.f64 x (*.f64 y (*.f64 z 4))) 1)
(/.f64 (+.f64 x (*.f64 y (*.f64 z 4))) (/.f64 (+.f64 x (*.f64 y (*.f64 z 4))) (+.f64 x (*.f64 y (*.f64 z 4)))))
(/.f64 (+.f64 x (+.f64 x (*.f64 y (*.f64 z 8)))) 2)
(neg.f64 (neg.f64 (+.f64 x (*.f64 y (*.f64 z 4)))))
(-.f64 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))) 0)
(-.f64 0 (neg.f64 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8)))))))
(*.f64 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))) 1)
(*.f64 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))) (/.f64 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))) (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8)))))))
(*.f64 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))) (*.f64 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))) (/.f64 1 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))))))
(*.f64 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))) (/.f64 1 (/.f64 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))) (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))))))
(*.f64 1 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))))
(*.f64 (/.f64 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))) (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8)))))) (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))))
(*.f64 (/.f64 1 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8)))))) (*.f64 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))) (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8)))))))
(*.f64 (*.f64 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))) (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8)))))) (/.f64 1 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8)))))))
(*.f64 (*.f64 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))) (/.f64 1 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))))) (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))))
(*.f64 (/.f64 (/.f64 1 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8)))))) (*.f64 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))) (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))))) (*.f64 (*.f64 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))) (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8)))))) (*.f64 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))) (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))))))
(*.f64 (/.f64 (/.f64 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))) (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8)))))) (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8)))))) (*.f64 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))) (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8)))))))
(*.f64 (/.f64 (*.f64 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))) (/.f64 1 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))))) (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8)))))) (*.f64 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))) (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8)))))))
(*.f64 (/.f64 (/.f64 1 (/.f64 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))) (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))))) (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8)))))) (*.f64 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))) (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8)))))))
(/.f64 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))) 1)
(/.f64 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))) (/.f64 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))) (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8)))))))
(/.f64 (*.f64 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))) 2) 2)
(neg.f64 (neg.f64 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8)))))))
Outputs
(*.f64 4 (*.f64 y z))
(+.f64 (*.f64 4 (*.f64 y z)) x)
(+.f64 (*.f64 4 (*.f64 y z)) x)
(+.f64 (*.f64 4 (*.f64 y z)) x)
x
(+.f64 (*.f64 4 (*.f64 y z)) x)
(+.f64 (*.f64 4 (*.f64 y z)) x)
(+.f64 (*.f64 4 (*.f64 y z)) x)
x
(+.f64 (*.f64 4 (*.f64 y z)) x)
(+.f64 (*.f64 4 (*.f64 y z)) x)
(+.f64 (*.f64 4 (*.f64 y z)) x)
x
(+.f64 (*.f64 4 (*.f64 y z)) x)
(+.f64 (*.f64 4 (*.f64 y z)) x)
(+.f64 (*.f64 4 (*.f64 y z)) x)
(*.f64 4 (*.f64 y z))
(+.f64 (*.f64 4 (*.f64 y z)) x)
(+.f64 (*.f64 4 (*.f64 y z)) x)
(+.f64 (*.f64 4 (*.f64 y z)) x)
(*.f64 4 (*.f64 y z))
(+.f64 (*.f64 4 (*.f64 y z)) x)
(+.f64 (*.f64 4 (*.f64 y z)) x)
(+.f64 (*.f64 4 (*.f64 y z)) x)
x
(+.f64 (*.f64 4 (*.f64 y z)) x)
(+.f64 (*.f64 4 (*.f64 y z)) x)
(+.f64 (*.f64 4 (*.f64 y z)) x)
(*.f64 4 (*.f64 y z))
(+.f64 (*.f64 4 (*.f64 y z)) x)
(+.f64 (*.f64 4 (*.f64 y z)) x)
(+.f64 (*.f64 4 (*.f64 y z)) x)
(*.f64 4 (*.f64 y z))
(+.f64 (*.f64 4 (*.f64 y z)) x)
(+.f64 (*.f64 4 (*.f64 y z)) x)
(+.f64 (*.f64 4 (*.f64 y z)) x)
(-.f64 (*.f64 4 (*.f64 y z)) (*.f64 8 (*.f64 y z)))
(-.f64 (*.f64 4 (*.f64 y z)) (*.f64 y (*.f64 z 8)))
(*.f64 y (*.f64 z -4))
(*.f64 (*.f64 y z) -4)
(-.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (*.f64 8 (*.f64 y z)))
(-.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (*.f64 y (*.f64 z 8)))
(-.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (*.f64 z (*.f64 y 8)))
(-.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (*.f64 8 (*.f64 y z)))
(-.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (*.f64 y (*.f64 z 8)))
(-.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (*.f64 z (*.f64 y 8)))
(-.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (*.f64 8 (*.f64 y z)))
(-.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (*.f64 y (*.f64 z 8)))
(-.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (*.f64 z (*.f64 y 8)))
x
(-.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (*.f64 8 (*.f64 y z)))
(-.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (*.f64 y (*.f64 z 8)))
(-.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (*.f64 z (*.f64 y 8)))
(-.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (*.f64 8 (*.f64 y z)))
(-.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (*.f64 y (*.f64 z 8)))
(-.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (*.f64 z (*.f64 y 8)))
(-.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (*.f64 8 (*.f64 y z)))
(-.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (*.f64 y (*.f64 z 8)))
(-.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (*.f64 z (*.f64 y 8)))
x
(-.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (*.f64 8 (*.f64 y z)))
(-.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (*.f64 y (*.f64 z 8)))
(-.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (*.f64 z (*.f64 y 8)))
(-.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (*.f64 8 (*.f64 y z)))
(-.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (*.f64 y (*.f64 z 8)))
(-.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (*.f64 z (*.f64 y 8)))
(-.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (*.f64 8 (*.f64 y z)))
(-.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (*.f64 y (*.f64 z 8)))
(-.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (*.f64 z (*.f64 y 8)))
x
(+.f64 (*.f64 y (-.f64 (*.f64 4 z) (*.f64 8 z))) x)
(+.f64 x (*.f64 y (-.f64 (*.f64 4 z) (*.f64 z 8))))
(+.f64 x (*.f64 y (*.f64 z -4)))
(+.f64 x (*.f64 (*.f64 y z) -4))
(+.f64 (*.f64 y (-.f64 (*.f64 4 z) (*.f64 8 z))) x)
(+.f64 x (*.f64 y (-.f64 (*.f64 4 z) (*.f64 z 8))))
(+.f64 x (*.f64 y (*.f64 z -4)))
(+.f64 x (*.f64 (*.f64 y z) -4))
(+.f64 (*.f64 y (-.f64 (*.f64 4 z) (*.f64 8 z))) x)
(+.f64 x (*.f64 y (-.f64 (*.f64 4 z) (*.f64 z 8))))
(+.f64 x (*.f64 y (*.f64 z -4)))
(+.f64 x (*.f64 (*.f64 y z) -4))
(*.f64 y (-.f64 (*.f64 4 z) (*.f64 8 z)))
(-.f64 (*.f64 4 (*.f64 y z)) (*.f64 y (*.f64 z 8)))
(*.f64 y (*.f64 z -4))
(*.f64 (*.f64 y z) -4)
(+.f64 (*.f64 y (-.f64 (*.f64 4 z) (*.f64 8 z))) x)
(+.f64 x (*.f64 y (-.f64 (*.f64 4 z) (*.f64 z 8))))
(+.f64 x (*.f64 y (*.f64 z -4)))
(+.f64 x (*.f64 (*.f64 y z) -4))
(+.f64 (*.f64 y (-.f64 (*.f64 4 z) (*.f64 8 z))) x)
(+.f64 x (*.f64 y (-.f64 (*.f64 4 z) (*.f64 z 8))))
(+.f64 x (*.f64 y (*.f64 z -4)))
(+.f64 x (*.f64 (*.f64 y z) -4))
(+.f64 (*.f64 y (-.f64 (*.f64 4 z) (*.f64 8 z))) x)
(+.f64 x (*.f64 y (-.f64 (*.f64 4 z) (*.f64 z 8))))
(+.f64 x (*.f64 y (*.f64 z -4)))
(+.f64 x (*.f64 (*.f64 y z) -4))
(*.f64 -1 (*.f64 y (-.f64 (*.f64 -4 z) (*.f64 -8 z))))
(*.f64 y (*.f64 -1 (-.f64 (*.f64 z -4) (*.f64 z -8))))
(neg.f64 (*.f64 4 (*.f64 y z)))
(*.f64 y (neg.f64 (*.f64 4 z)))
(+.f64 (*.f64 -1 (*.f64 y (-.f64 (*.f64 -4 z) (*.f64 -8 z)))) x)
(+.f64 x (*.f64 y (*.f64 -1 (-.f64 (*.f64 z -4) (*.f64 z -8)))))
(+.f64 x (neg.f64 (*.f64 4 (*.f64 y z))))
(+.f64 x (*.f64 y (neg.f64 (*.f64 4 z))))
(+.f64 (*.f64 -1 (*.f64 y (-.f64 (*.f64 -4 z) (*.f64 -8 z)))) x)
(+.f64 x (*.f64 y (*.f64 -1 (-.f64 (*.f64 z -4) (*.f64 z -8)))))
(+.f64 x (neg.f64 (*.f64 4 (*.f64 y z))))
(+.f64 x (*.f64 y (neg.f64 (*.f64 4 z))))
(+.f64 (*.f64 -1 (*.f64 y (-.f64 (*.f64 -4 z) (*.f64 -8 z)))) x)
(+.f64 x (*.f64 y (*.f64 -1 (-.f64 (*.f64 z -4) (*.f64 z -8)))))
(+.f64 x (neg.f64 (*.f64 4 (*.f64 y z))))
(+.f64 x (*.f64 y (neg.f64 (*.f64 4 z))))
x
(+.f64 (*.f64 (-.f64 (*.f64 4 y) (*.f64 8 y)) z) x)
(+.f64 x (*.f64 y (-.f64 (*.f64 4 z) (*.f64 z 8))))
(+.f64 x (*.f64 y (*.f64 z -4)))
(+.f64 x (*.f64 (*.f64 y z) -4))
(+.f64 (*.f64 (-.f64 (*.f64 4 y) (*.f64 8 y)) z) x)
(+.f64 x (*.f64 y (-.f64 (*.f64 4 z) (*.f64 z 8))))
(+.f64 x (*.f64 y (*.f64 z -4)))
(+.f64 x (*.f64 (*.f64 y z) -4))
(+.f64 (*.f64 (-.f64 (*.f64 4 y) (*.f64 8 y)) z) x)
(+.f64 x (*.f64 y (-.f64 (*.f64 4 z) (*.f64 z 8))))
(+.f64 x (*.f64 y (*.f64 z -4)))
(+.f64 x (*.f64 (*.f64 y z) -4))
(*.f64 (-.f64 (*.f64 4 y) (*.f64 8 y)) z)
(-.f64 (*.f64 4 (*.f64 y z)) (*.f64 y (*.f64 z 8)))
(*.f64 y (*.f64 z -4))
(*.f64 (*.f64 y z) -4)
(+.f64 (*.f64 (-.f64 (*.f64 4 y) (*.f64 8 y)) z) x)
(+.f64 x (*.f64 y (-.f64 (*.f64 4 z) (*.f64 z 8))))
(+.f64 x (*.f64 y (*.f64 z -4)))
(+.f64 x (*.f64 (*.f64 y z) -4))
(+.f64 (*.f64 (-.f64 (*.f64 4 y) (*.f64 8 y)) z) x)
(+.f64 x (*.f64 y (-.f64 (*.f64 4 z) (*.f64 z 8))))
(+.f64 x (*.f64 y (*.f64 z -4)))
(+.f64 x (*.f64 (*.f64 y z) -4))
(+.f64 (*.f64 (-.f64 (*.f64 4 y) (*.f64 8 y)) z) x)
(+.f64 x (*.f64 y (-.f64 (*.f64 4 z) (*.f64 z 8))))
(+.f64 x (*.f64 y (*.f64 z -4)))
(+.f64 x (*.f64 (*.f64 y z) -4))
(*.f64 -1 (*.f64 (-.f64 (*.f64 -4 y) (*.f64 -8 y)) z))
(*.f64 y (*.f64 -1 (-.f64 (*.f64 z -4) (*.f64 z -8))))
(neg.f64 (*.f64 4 (*.f64 y z)))
(*.f64 y (neg.f64 (*.f64 4 z)))
(+.f64 (*.f64 -1 (*.f64 (-.f64 (*.f64 -4 y) (*.f64 -8 y)) z)) x)
(+.f64 x (*.f64 y (*.f64 -1 (-.f64 (*.f64 z -4) (*.f64 z -8)))))
(+.f64 x (neg.f64 (*.f64 4 (*.f64 y z))))
(+.f64 x (*.f64 y (neg.f64 (*.f64 4 z))))
(+.f64 (*.f64 -1 (*.f64 (-.f64 (*.f64 -4 y) (*.f64 -8 y)) z)) x)
(+.f64 x (*.f64 y (*.f64 -1 (-.f64 (*.f64 z -4) (*.f64 z -8)))))
(+.f64 x (neg.f64 (*.f64 4 (*.f64 y z))))
(+.f64 x (*.f64 y (neg.f64 (*.f64 4 z))))
(+.f64 (*.f64 -1 (*.f64 (-.f64 (*.f64 -4 y) (*.f64 -8 y)) z)) x)
(+.f64 x (*.f64 y (*.f64 -1 (-.f64 (*.f64 z -4) (*.f64 z -8)))))
(+.f64 x (neg.f64 (*.f64 4 (*.f64 y z))))
(+.f64 x (*.f64 y (neg.f64 (*.f64 4 z))))
(-.f64 (+.f64 x (*.f64 y (*.f64 z 4))) 0)
(+.f64 (*.f64 4 (*.f64 y z)) x)
(-.f64 0 (neg.f64 (+.f64 x (*.f64 y (*.f64 z 4)))))
(+.f64 (*.f64 4 (*.f64 y z)) x)
(*.f64 (+.f64 x (*.f64 y (*.f64 z 4))) 1)
(+.f64 (*.f64 4 (*.f64 y z)) x)
(*.f64 (+.f64 x (*.f64 y (*.f64 z 4))) (/.f64 (+.f64 x (*.f64 y (*.f64 z 4))) (+.f64 x (*.f64 y (*.f64 z 4)))))
(+.f64 (*.f64 4 (*.f64 y z)) x)
(*.f64 (+.f64 x (*.f64 y (*.f64 z 4))) (*.f64 (+.f64 x (*.f64 y (*.f64 z 4))) (/.f64 1 (+.f64 x (*.f64 y (*.f64 z 4))))))
(+.f64 (*.f64 4 (*.f64 y z)) x)
(*.f64 (+.f64 x (*.f64 y (*.f64 z 4))) (/.f64 1 (/.f64 (+.f64 x (*.f64 y (*.f64 z 4))) (+.f64 x (*.f64 y (*.f64 z 4))))))
(+.f64 (*.f64 4 (*.f64 y z)) x)
(*.f64 1 (+.f64 x (*.f64 y (*.f64 z 4))))
(+.f64 (*.f64 4 (*.f64 y z)) x)
(*.f64 (/.f64 (+.f64 x (*.f64 y (*.f64 z 4))) (+.f64 x (*.f64 y (*.f64 z 4)))) (+.f64 x (*.f64 y (*.f64 z 4))))
(+.f64 (*.f64 4 (*.f64 y z)) x)
(*.f64 (/.f64 1 (+.f64 x (*.f64 y (*.f64 z 4)))) (*.f64 (+.f64 x (*.f64 y (*.f64 z 4))) (+.f64 x (*.f64 y (*.f64 z 4)))))
(+.f64 (*.f64 4 (*.f64 y z)) x)
(*.f64 (*.f64 (+.f64 x (*.f64 y (*.f64 z 4))) (+.f64 x (*.f64 y (*.f64 z 4)))) (/.f64 1 (+.f64 x (*.f64 y (*.f64 z 4)))))
(+.f64 (*.f64 4 (*.f64 y z)) x)
(*.f64 (*.f64 (+.f64 x (*.f64 y (*.f64 z 4))) (/.f64 1 (+.f64 x (*.f64 y (*.f64 z 4))))) (+.f64 x (*.f64 y (*.f64 z 4))))
(+.f64 (*.f64 4 (*.f64 y z)) x)
(*.f64 (/.f64 (/.f64 1 (+.f64 x (*.f64 y (*.f64 z 4)))) (*.f64 (+.f64 x (*.f64 y (*.f64 z 4))) (+.f64 x (*.f64 y (*.f64 z 4))))) (*.f64 (*.f64 (+.f64 x (*.f64 y (*.f64 z 4))) (+.f64 x (*.f64 y (*.f64 z 4)))) (*.f64 (+.f64 x (*.f64 y (*.f64 z 4))) (+.f64 x (*.f64 y (*.f64 z 4))))))
(+.f64 (*.f64 4 (*.f64 y z)) x)
(*.f64 (/.f64 (/.f64 (+.f64 x (*.f64 y (*.f64 z 4))) (+.f64 x (*.f64 y (*.f64 z 4)))) (+.f64 x (*.f64 y (*.f64 z 4)))) (*.f64 (+.f64 x (*.f64 y (*.f64 z 4))) (+.f64 x (*.f64 y (*.f64 z 4)))))
(+.f64 (*.f64 4 (*.f64 y z)) x)
(*.f64 (/.f64 (*.f64 (+.f64 x (*.f64 y (*.f64 z 4))) (/.f64 1 (+.f64 x (*.f64 y (*.f64 z 4))))) (+.f64 x (*.f64 y (*.f64 z 4)))) (*.f64 (+.f64 x (*.f64 y (*.f64 z 4))) (+.f64 x (*.f64 y (*.f64 z 4)))))
(+.f64 (*.f64 4 (*.f64 y z)) x)
(*.f64 (/.f64 (/.f64 1 (/.f64 (+.f64 x (*.f64 y (*.f64 z 4))) (+.f64 x (*.f64 y (*.f64 z 4))))) (+.f64 x (*.f64 y (*.f64 z 4)))) (*.f64 (+.f64 x (*.f64 y (*.f64 z 4))) (+.f64 x (*.f64 y (*.f64 z 4)))))
(+.f64 (*.f64 4 (*.f64 y z)) x)
(/.f64 (+.f64 x (*.f64 y (*.f64 z 4))) 1)
(+.f64 (*.f64 4 (*.f64 y z)) x)
(/.f64 (+.f64 x (*.f64 y (*.f64 z 4))) (/.f64 (+.f64 x (*.f64 y (*.f64 z 4))) (+.f64 x (*.f64 y (*.f64 z 4)))))
(+.f64 (*.f64 4 (*.f64 y z)) x)
(/.f64 (+.f64 x (+.f64 x (*.f64 y (*.f64 z 8)))) 2)
(/.f64 (+.f64 (*.f64 y (*.f64 z 8)) (+.f64 x x)) 2)
(/.f64 (+.f64 (*.f64 z (*.f64 y 8)) (+.f64 x x)) 2)
(neg.f64 (neg.f64 (+.f64 x (*.f64 y (*.f64 z 4)))))
(+.f64 (*.f64 4 (*.f64 y z)) x)
(-.f64 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))) 0)
(+.f64 x (*.f64 y (+.f64 (*.f64 4 z) (neg.f64 (*.f64 z 8)))))
(-.f64 0 (neg.f64 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8)))))))
(+.f64 x (*.f64 y (+.f64 (*.f64 4 z) (neg.f64 (*.f64 z 8)))))
(*.f64 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))) 1)
(+.f64 x (*.f64 y (+.f64 (*.f64 4 z) (neg.f64 (*.f64 z 8)))))
(*.f64 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))) (/.f64 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))) (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8)))))))
(+.f64 x (*.f64 y (+.f64 (*.f64 4 z) (neg.f64 (*.f64 z 8)))))
(*.f64 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))) (*.f64 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))) (/.f64 1 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))))))
(+.f64 x (*.f64 y (+.f64 (*.f64 4 z) (neg.f64 (*.f64 z 8)))))
(*.f64 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))) (/.f64 1 (/.f64 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))) (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))))))
(+.f64 x (*.f64 y (+.f64 (*.f64 4 z) (neg.f64 (*.f64 z 8)))))
(*.f64 1 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))))
(+.f64 x (*.f64 y (+.f64 (*.f64 4 z) (neg.f64 (*.f64 z 8)))))
(*.f64 (/.f64 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))) (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8)))))) (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))))
(+.f64 x (*.f64 y (+.f64 (*.f64 4 z) (neg.f64 (*.f64 z 8)))))
(*.f64 (/.f64 1 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8)))))) (*.f64 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))) (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8)))))))
(+.f64 x (*.f64 y (+.f64 (*.f64 4 z) (neg.f64 (*.f64 z 8)))))
(*.f64 (*.f64 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))) (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8)))))) (/.f64 1 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8)))))))
(+.f64 x (*.f64 y (+.f64 (*.f64 4 z) (neg.f64 (*.f64 z 8)))))
(*.f64 (*.f64 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))) (/.f64 1 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))))) (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))))
(+.f64 x (*.f64 y (+.f64 (*.f64 4 z) (neg.f64 (*.f64 z 8)))))
(*.f64 (/.f64 (/.f64 1 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8)))))) (*.f64 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))) (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))))) (*.f64 (*.f64 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))) (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8)))))) (*.f64 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))) (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))))))
(+.f64 x (*.f64 y (+.f64 (*.f64 4 z) (neg.f64 (*.f64 z 8)))))
(*.f64 (/.f64 (/.f64 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))) (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8)))))) (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8)))))) (*.f64 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))) (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8)))))))
(+.f64 x (*.f64 y (+.f64 (*.f64 4 z) (neg.f64 (*.f64 z 8)))))
(*.f64 (/.f64 (*.f64 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))) (/.f64 1 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))))) (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8)))))) (*.f64 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))) (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8)))))))
(+.f64 x (*.f64 y (+.f64 (*.f64 4 z) (neg.f64 (*.f64 z 8)))))
(*.f64 (/.f64 (/.f64 1 (/.f64 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))) (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))))) (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8)))))) (*.f64 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))) (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8)))))))
(+.f64 x (*.f64 y (+.f64 (*.f64 4 z) (neg.f64 (*.f64 z 8)))))
(/.f64 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))) 1)
(+.f64 x (*.f64 y (+.f64 (*.f64 4 z) (neg.f64 (*.f64 z 8)))))
(/.f64 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))) (/.f64 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))) (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8)))))))
(+.f64 x (*.f64 y (+.f64 (*.f64 4 z) (neg.f64 (*.f64 z 8)))))
(/.f64 (*.f64 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8))))) 2) 2)
(+.f64 x (*.f64 y (+.f64 (*.f64 4 z) (neg.f64 (*.f64 z 8)))))
(neg.f64 (neg.f64 (+.f64 x (*.f64 y (+.f64 (*.f64 z 4) (neg.f64 (*.f64 z 8)))))))
(+.f64 x (*.f64 y (+.f64 (*.f64 4 z) (neg.f64 (*.f64 z 8)))))

eval148.0ms (2.5%)

Compiler

Compiled 1652 to 1095 computations (33.7% saved)

prune22.0ms (0.4%)

Pruning

4 alts after pruning (2 fresh and 2 done)

PrunedKeptTotal
New74175
Fresh011
Picked101
Done022
Total75479
Error
0b
Counts
79 → 4
Alt Table
Click to see full alt table
StatusErrorProgram
0b
(-.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (*.f64 z (*.f64 y 8)))
0.0b
(-.f64 x (*.f64 (*.f64 y 4) z))
35.1b
(*.f64 -4 (*.f64 y z))
27.4b
x
Compiler

Compiled 38 to 27 computations (28.9% saved)

localize30.0ms (0.5%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(-.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (*.f64 z (*.f64 y 8)))
0.0b
(+.f64 (*.f64 4 (*.f64 y z)) x)
0.0b
(*.f64 4 (*.f64 y z))
Compiler

Compiled 44 to 23 computations (47.7% saved)

series4.0ms (0.1%)

Counts
3 → 45
Calls

24 calls:

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

rewrite156.0ms (2.6%)

Algorithm
batch-egg-rewrite
Rules
1262×rational_best.json-simplify-57
706×rational_best.json-simplify-47
706×rational_best.json-5
704×rational_best.json-2
704×rational_best.json-3
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
01369
110069
233969
3144563
4588051
Stop Event
node limit
Counts
3 → 61
Calls
Call 1
Inputs
(*.f64 4 (*.f64 y z))
(+.f64 (*.f64 4 (*.f64 y z)) x)
(-.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (*.f64 z (*.f64 y 8)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y z) (+.f64 (*.f64 y z) (*.f64 y (+.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 4 (*.f64 y z)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 4 (*.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y (+.f64 z z)) (*.f64 y (+.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (*.f64 y z) (*.f64 y (+.f64 z z))) (*.f64 y z))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 4 (*.f64 y z)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (*.f64 4 (*.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 4 (*.f64 y z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 4 (*.f64 y z)) (/.f64 (*.f64 y z) (*.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (*.f64 z 8)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (*.f64 4 (*.f64 y z))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (+.f64 (*.f64 4 (*.f64 y z)) x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (/.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (+.f64 (*.f64 4 (*.f64 y z)) x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (*.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (/.f64 1 (+.f64 (*.f64 4 (*.f64 y z)) x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (/.f64 1 (/.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (+.f64 (*.f64 4 (*.f64 y z)) x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 (*.f64 4 (*.f64 y z)) x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (+.f64 (*.f64 4 (*.f64 y z)) x)) (+.f64 (*.f64 4 (*.f64 y z)) x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (+.f64 (*.f64 4 (*.f64 y z)) x)) (*.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (+.f64 (*.f64 4 (*.f64 y z)) x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (+.f64 (*.f64 4 (*.f64 y z)) x)) (/.f64 1 (+.f64 (*.f64 4 (*.f64 y z)) x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (/.f64 1 (+.f64 (*.f64 4 (*.f64 y z)) x))) (+.f64 (*.f64 4 (*.f64 y z)) x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (+.f64 (*.f64 4 (*.f64 y z)) x)) (*.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (+.f64 (*.f64 4 (*.f64 y z)) x))) (*.f64 (*.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (+.f64 (*.f64 4 (*.f64 y z)) x)) (*.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (+.f64 (*.f64 4 (*.f64 y z)) x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (+.f64 (*.f64 4 (*.f64 y z)) x)) (+.f64 (*.f64 4 (*.f64 y z)) x)) (*.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (+.f64 (*.f64 4 (*.f64 y z)) x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (/.f64 1 (+.f64 (*.f64 4 (*.f64 y z)) x))) (+.f64 (*.f64 4 (*.f64 y z)) x)) (*.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (+.f64 (*.f64 4 (*.f64 y z)) x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (/.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (+.f64 (*.f64 4 (*.f64 y z)) x))) (+.f64 (*.f64 4 (*.f64 y z)) x)) (*.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (+.f64 (*.f64 4 (*.f64 y z)) x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (/.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (+.f64 (*.f64 4 (*.f64 y z)) x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 x (+.f64 x (*.f64 y (*.f64 z 8)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (+.f64 (*.f64 4 (*.f64 y z)) x)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 x (neg.f64 (*.f64 4 (*.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (neg.f64 (*.f64 y (*.f64 z 8))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (-.f64 (-.f64 x (*.f64 4 (*.f64 y z))) (+.f64 (*.f64 4 (*.f64 y z)) x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 x (*.f64 4 (*.f64 y z))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 x (*.f64 4 (*.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (*.f64 4 (*.f64 y z))) x)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (*.f64 y (*.f64 z 8))) (+.f64 (*.f64 4 (*.f64 y z)) x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 x (+.f64 x (*.f64 y (*.f64 z 8)))) (-.f64 0 (+.f64 (*.f64 4 (*.f64 y z)) (+.f64 x (*.f64 y (*.f64 z 8))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (*.f64 4 (*.f64 y z)) (+.f64 x (*.f64 y (*.f64 z 8)))) (neg.f64 (*.f64 y (*.f64 z 16))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (*.f64 y (*.f64 z 16))) (+.f64 (*.f64 4 (*.f64 y z)) (+.f64 x (*.f64 y (*.f64 z 8)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 x (*.f64 4 (*.f64 y z))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 x (*.f64 4 (*.f64 y z))) (/.f64 (-.f64 (*.f64 4 (*.f64 y z)) x) (-.f64 (*.f64 4 (*.f64 y z)) x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 x (*.f64 4 (*.f64 y z))) (*.f64 (-.f64 x (*.f64 4 (*.f64 y z))) (/.f64 1 (-.f64 x (*.f64 4 (*.f64 y z))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 x (*.f64 4 (*.f64 y z))) (/.f64 1 (/.f64 (-.f64 (*.f64 4 (*.f64 y z)) x) (-.f64 (*.f64 4 (*.f64 y z)) x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 x (*.f64 4 (*.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 (*.f64 4 (*.f64 y z)) x) (-.f64 (*.f64 4 (*.f64 y z)) x)) (-.f64 x (*.f64 4 (*.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 4 (*.f64 y z)) x) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (-.f64 x (*.f64 4 (*.f64 y z)))) (*.f64 (-.f64 x (*.f64 4 (*.f64 y z))) (-.f64 x (*.f64 4 (*.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 x (*.f64 4 (*.f64 y z))) (-.f64 x (*.f64 4 (*.f64 y z)))) (/.f64 1 (-.f64 x (*.f64 4 (*.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 x (*.f64 4 (*.f64 y z))) (/.f64 1 (-.f64 x (*.f64 4 (*.f64 y z))))) (-.f64 x (*.f64 4 (*.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (-.f64 x (*.f64 4 (*.f64 y z)))) (*.f64 (-.f64 x (*.f64 4 (*.f64 y z))) (-.f64 x (*.f64 4 (*.f64 y z))))) (*.f64 (*.f64 (-.f64 x (*.f64 4 (*.f64 y z))) (-.f64 x (*.f64 4 (*.f64 y z)))) (*.f64 (-.f64 x (*.f64 4 (*.f64 y z))) (-.f64 x (*.f64 4 (*.f64 y z))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (-.f64 (*.f64 4 (*.f64 y z)) x) (-.f64 (*.f64 4 (*.f64 y z)) x)) (-.f64 x (*.f64 4 (*.f64 y z)))) (*.f64 (-.f64 x (*.f64 4 (*.f64 y z))) (-.f64 x (*.f64 4 (*.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (-.f64 x (*.f64 4 (*.f64 y z))) (/.f64 1 (-.f64 x (*.f64 4 (*.f64 y z))))) (-.f64 x (*.f64 4 (*.f64 y z)))) (*.f64 (-.f64 x (*.f64 4 (*.f64 y z))) (-.f64 x (*.f64 4 (*.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (/.f64 (-.f64 (*.f64 4 (*.f64 y z)) x) (-.f64 (*.f64 4 (*.f64 y z)) x))) (-.f64 x (*.f64 4 (*.f64 y z)))) (*.f64 (-.f64 x (*.f64 4 (*.f64 y z))) (-.f64 x (*.f64 4 (*.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -1 (-.f64 (*.f64 4 (*.f64 y z)) x)) (*.f64 (-.f64 x (*.f64 4 (*.f64 y z))) (-.f64 x (*.f64 4 (*.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 x (*.f64 4 (*.f64 y z))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 x (*.f64 4 (*.f64 y z))) (/.f64 (-.f64 (*.f64 4 (*.f64 y z)) x) (-.f64 (*.f64 4 (*.f64 y z)) x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 4 (*.f64 y z)) x) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 x (*.f64 4 (*.f64 y z))) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 4 (*.f64 y z)) x) 2) -2)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (-.f64 (*.f64 4 (*.f64 y z)) x))))))

simplify198.0ms (3.3%)

Algorithm
egg-herbie
Rules
1034×rational_best.json-simplify-2
710×rational_best.json-simplify-78
576×rational_best.json-simplify-80
548×rational_best.json-simplify-49
514×rational_best.json-simplify-1
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01472674
13061918
28251918
318841918
445061918
Stop Event
node limit
Counts
106 → 96
Calls
Call 1
Inputs
x
(*.f64 4 (*.f64 y z))
(*.f64 4 (*.f64 y z))
x
(*.f64 4 (*.f64 y z))
(*.f64 4 (*.f64 y z))
(*.f64 4 (*.f64 y z))
x
x
x
(+.f64 (*.f64 y (-.f64 (*.f64 4 z) (*.f64 8 z))) x)
(+.f64 (*.f64 y (-.f64 (*.f64 4 z) (*.f64 8 z))) x)
(+.f64 (*.f64 y (-.f64 (*.f64 4 z) (*.f64 8 z))) x)
(*.f64 y (-.f64 (*.f64 4 z) (*.f64 8 z)))
(+.f64 (*.f64 y (-.f64 (*.f64 4 z) (*.f64 8 z))) x)
(+.f64 (*.f64 y (-.f64 (*.f64 4 z) (*.f64 8 z))) x)
(+.f64 (*.f64 y (-.f64 (*.f64 4 z) (*.f64 8 z))) x)
(*.f64 -1 (*.f64 y (-.f64 (*.f64 -4 z) (*.f64 -8 z))))
(+.f64 (*.f64 -1 (*.f64 y (-.f64 (*.f64 -4 z) (*.f64 -8 z)))) x)
(+.f64 (*.f64 -1 (*.f64 y (-.f64 (*.f64 -4 z) (*.f64 -8 z)))) x)
(+.f64 (*.f64 -1 (*.f64 y (-.f64 (*.f64 -4 z) (*.f64 -8 z)))) x)
x
(+.f64 (*.f64 (-.f64 (*.f64 4 y) (*.f64 8 y)) z) x)
(+.f64 (*.f64 (-.f64 (*.f64 4 y) (*.f64 8 y)) z) x)
(+.f64 (*.f64 (-.f64 (*.f64 4 y) (*.f64 8 y)) z) x)
(*.f64 (-.f64 (*.f64 4 y) (*.f64 8 y)) z)
(+.f64 (*.f64 (-.f64 (*.f64 4 y) (*.f64 8 y)) z) x)
(+.f64 (*.f64 (-.f64 (*.f64 4 y) (*.f64 8 y)) z) x)
(+.f64 (*.f64 (-.f64 (*.f64 4 y) (*.f64 8 y)) z) x)
(*.f64 -1 (*.f64 (-.f64 (*.f64 -4 y) (*.f64 -8 y)) z))
(+.f64 (*.f64 -1 (*.f64 (-.f64 (*.f64 -4 y) (*.f64 -8 y)) z)) x)
(+.f64 (*.f64 -1 (*.f64 (-.f64 (*.f64 -4 y) (*.f64 -8 y)) z)) x)
(+.f64 (*.f64 -1 (*.f64 (-.f64 (*.f64 -4 y) (*.f64 -8 y)) z)) x)
(-.f64 (*.f64 4 (*.f64 y z)) (*.f64 8 (*.f64 y z)))
(-.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (*.f64 8 (*.f64 y z)))
(-.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (*.f64 8 (*.f64 y z)))
(-.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (*.f64 8 (*.f64 y z)))
x
(-.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (*.f64 8 (*.f64 y z)))
(-.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (*.f64 8 (*.f64 y z)))
(-.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (*.f64 8 (*.f64 y z)))
x
(-.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (*.f64 8 (*.f64 y z)))
(-.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (*.f64 8 (*.f64 y z)))
(-.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (*.f64 8 (*.f64 y z)))
(+.f64 (*.f64 y z) (+.f64 (*.f64 y z) (*.f64 y (+.f64 z z))))
(+.f64 (*.f64 4 (*.f64 y z)) 0)
(+.f64 0 (*.f64 4 (*.f64 y z)))
(+.f64 (*.f64 y (+.f64 z z)) (*.f64 y (+.f64 z z)))
(+.f64 (+.f64 (*.f64 y z) (*.f64 y (+.f64 z z))) (*.f64 y z))
(-.f64 (*.f64 4 (*.f64 y z)) 0)
(-.f64 0 (neg.f64 (*.f64 4 (*.f64 y z))))
(/.f64 (*.f64 4 (*.f64 y z)) 1)
(/.f64 (*.f64 4 (*.f64 y z)) (/.f64 (*.f64 y z) (*.f64 y z)))
(/.f64 (*.f64 y (*.f64 z 8)) 2)
(neg.f64 (neg.f64 (*.f64 4 (*.f64 y z))))
(-.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) 0)
(-.f64 0 (neg.f64 (+.f64 (*.f64 4 (*.f64 y z)) x)))
(*.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) 1)
(*.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (/.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (+.f64 (*.f64 4 (*.f64 y z)) x)))
(*.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (*.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (/.f64 1 (+.f64 (*.f64 4 (*.f64 y z)) x))))
(*.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (/.f64 1 (/.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (+.f64 (*.f64 4 (*.f64 y z)) x))))
(*.f64 1 (+.f64 (*.f64 4 (*.f64 y z)) x))
(*.f64 (/.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (+.f64 (*.f64 4 (*.f64 y z)) x)) (+.f64 (*.f64 4 (*.f64 y z)) x))
(*.f64 (/.f64 1 (+.f64 (*.f64 4 (*.f64 y z)) x)) (*.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (+.f64 (*.f64 4 (*.f64 y z)) x)))
(*.f64 (*.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (+.f64 (*.f64 4 (*.f64 y z)) x)) (/.f64 1 (+.f64 (*.f64 4 (*.f64 y z)) x)))
(*.f64 (*.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (/.f64 1 (+.f64 (*.f64 4 (*.f64 y z)) x))) (+.f64 (*.f64 4 (*.f64 y z)) x))
(*.f64 (/.f64 (/.f64 1 (+.f64 (*.f64 4 (*.f64 y z)) x)) (*.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (+.f64 (*.f64 4 (*.f64 y z)) x))) (*.f64 (*.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (+.f64 (*.f64 4 (*.f64 y z)) x)) (*.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (+.f64 (*.f64 4 (*.f64 y z)) x))))
(*.f64 (/.f64 (/.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (+.f64 (*.f64 4 (*.f64 y z)) x)) (+.f64 (*.f64 4 (*.f64 y z)) x)) (*.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (+.f64 (*.f64 4 (*.f64 y z)) x)))
(*.f64 (/.f64 (*.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (/.f64 1 (+.f64 (*.f64 4 (*.f64 y z)) x))) (+.f64 (*.f64 4 (*.f64 y z)) x)) (*.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (+.f64 (*.f64 4 (*.f64 y z)) x)))
(*.f64 (/.f64 (/.f64 1 (/.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (+.f64 (*.f64 4 (*.f64 y z)) x))) (+.f64 (*.f64 4 (*.f64 y z)) x)) (*.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (+.f64 (*.f64 4 (*.f64 y z)) x)))
(/.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) 1)
(/.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (/.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (+.f64 (*.f64 4 (*.f64 y z)) x)))
(/.f64 (+.f64 x (+.f64 x (*.f64 y (*.f64 z 8)))) 2)
(neg.f64 (neg.f64 (+.f64 (*.f64 4 (*.f64 y z)) x)))
(+.f64 x (neg.f64 (*.f64 4 (*.f64 y z))))
(+.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (neg.f64 (*.f64 y (*.f64 z 8))))
(+.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (-.f64 (-.f64 x (*.f64 4 (*.f64 y z))) (+.f64 (*.f64 4 (*.f64 y z)) x)))
(+.f64 (-.f64 x (*.f64 4 (*.f64 y z))) 0)
(+.f64 0 (-.f64 x (*.f64 4 (*.f64 y z))))
(+.f64 (neg.f64 (*.f64 4 (*.f64 y z))) x)
(+.f64 (neg.f64 (*.f64 y (*.f64 z 8))) (+.f64 (*.f64 4 (*.f64 y z)) x))
(+.f64 (+.f64 x (+.f64 x (*.f64 y (*.f64 z 8)))) (-.f64 0 (+.f64 (*.f64 4 (*.f64 y z)) (+.f64 x (*.f64 y (*.f64 z 8))))))
(+.f64 (+.f64 (*.f64 4 (*.f64 y z)) (+.f64 x (*.f64 y (*.f64 z 8)))) (neg.f64 (*.f64 y (*.f64 z 16))))
(+.f64 (neg.f64 (*.f64 y (*.f64 z 16))) (+.f64 (*.f64 4 (*.f64 y z)) (+.f64 x (*.f64 y (*.f64 z 8)))))
(*.f64 (-.f64 x (*.f64 4 (*.f64 y z))) 1)
(*.f64 (-.f64 x (*.f64 4 (*.f64 y z))) (/.f64 (-.f64 (*.f64 4 (*.f64 y z)) x) (-.f64 (*.f64 4 (*.f64 y z)) x)))
(*.f64 (-.f64 x (*.f64 4 (*.f64 y z))) (*.f64 (-.f64 x (*.f64 4 (*.f64 y z))) (/.f64 1 (-.f64 x (*.f64 4 (*.f64 y z))))))
(*.f64 (-.f64 x (*.f64 4 (*.f64 y z))) (/.f64 1 (/.f64 (-.f64 (*.f64 4 (*.f64 y z)) x) (-.f64 (*.f64 4 (*.f64 y z)) x))))
(*.f64 1 (-.f64 x (*.f64 4 (*.f64 y z))))
(*.f64 (/.f64 (-.f64 (*.f64 4 (*.f64 y z)) x) (-.f64 (*.f64 4 (*.f64 y z)) x)) (-.f64 x (*.f64 4 (*.f64 y z))))
(*.f64 (-.f64 (*.f64 4 (*.f64 y z)) x) -1)
(*.f64 (/.f64 1 (-.f64 x (*.f64 4 (*.f64 y z)))) (*.f64 (-.f64 x (*.f64 4 (*.f64 y z))) (-.f64 x (*.f64 4 (*.f64 y z)))))
(*.f64 (*.f64 (-.f64 x (*.f64 4 (*.f64 y z))) (-.f64 x (*.f64 4 (*.f64 y z)))) (/.f64 1 (-.f64 x (*.f64 4 (*.f64 y z)))))
(*.f64 (*.f64 (-.f64 x (*.f64 4 (*.f64 y z))) (/.f64 1 (-.f64 x (*.f64 4 (*.f64 y z))))) (-.f64 x (*.f64 4 (*.f64 y z))))
(*.f64 (/.f64 (/.f64 1 (-.f64 x (*.f64 4 (*.f64 y z)))) (*.f64 (-.f64 x (*.f64 4 (*.f64 y z))) (-.f64 x (*.f64 4 (*.f64 y z))))) (*.f64 (*.f64 (-.f64 x (*.f64 4 (*.f64 y z))) (-.f64 x (*.f64 4 (*.f64 y z)))) (*.f64 (-.f64 x (*.f64 4 (*.f64 y z))) (-.f64 x (*.f64 4 (*.f64 y z))))))
(*.f64 (/.f64 (/.f64 (-.f64 (*.f64 4 (*.f64 y z)) x) (-.f64 (*.f64 4 (*.f64 y z)) x)) (-.f64 x (*.f64 4 (*.f64 y z)))) (*.f64 (-.f64 x (*.f64 4 (*.f64 y z))) (-.f64 x (*.f64 4 (*.f64 y z)))))
(*.f64 (/.f64 (*.f64 (-.f64 x (*.f64 4 (*.f64 y z))) (/.f64 1 (-.f64 x (*.f64 4 (*.f64 y z))))) (-.f64 x (*.f64 4 (*.f64 y z)))) (*.f64 (-.f64 x (*.f64 4 (*.f64 y z))) (-.f64 x (*.f64 4 (*.f64 y z)))))
(*.f64 (/.f64 (/.f64 1 (/.f64 (-.f64 (*.f64 4 (*.f64 y z)) x) (-.f64 (*.f64 4 (*.f64 y z)) x))) (-.f64 x (*.f64 4 (*.f64 y z)))) (*.f64 (-.f64 x (*.f64 4 (*.f64 y z))) (-.f64 x (*.f64 4 (*.f64 y z)))))
(*.f64 (/.f64 -1 (-.f64 (*.f64 4 (*.f64 y z)) x)) (*.f64 (-.f64 x (*.f64 4 (*.f64 y z))) (-.f64 x (*.f64 4 (*.f64 y z)))))
(/.f64 (-.f64 x (*.f64 4 (*.f64 y z))) 1)
(/.f64 (-.f64 x (*.f64 4 (*.f64 y z))) (/.f64 (-.f64 (*.f64 4 (*.f64 y z)) x) (-.f64 (*.f64 4 (*.f64 y z)) x)))
(/.f64 (-.f64 (*.f64 4 (*.f64 y z)) x) -1)
(/.f64 (*.f64 (-.f64 x (*.f64 4 (*.f64 y z))) 2) 2)
(/.f64 (*.f64 (-.f64 (*.f64 4 (*.f64 y z)) x) 2) -2)
(neg.f64 (-.f64 (*.f64 4 (*.f64 y z)) x))
Outputs
x
(*.f64 4 (*.f64 y z))
(*.f64 z (*.f64 4 y))
(*.f64 4 (*.f64 y z))
(*.f64 z (*.f64 4 y))
x
(*.f64 4 (*.f64 y z))
(*.f64 z (*.f64 4 y))
(*.f64 4 (*.f64 y z))
(*.f64 z (*.f64 4 y))
(*.f64 4 (*.f64 y z))
(*.f64 z (*.f64 4 y))
x
x
x
(+.f64 (*.f64 y (-.f64 (*.f64 4 z) (*.f64 8 z))) x)
(+.f64 x (*.f64 y (-.f64 (*.f64 4 z) (*.f64 z 8))))
(+.f64 x (*.f64 y (*.f64 z -4)))
(-.f64 x (*.f64 z (*.f64 4 y)))
(-.f64 x (*.f64 4 (*.f64 y z)))
(+.f64 (*.f64 y (-.f64 (*.f64 4 z) (*.f64 8 z))) x)
(+.f64 x (*.f64 y (-.f64 (*.f64 4 z) (*.f64 z 8))))
(+.f64 x (*.f64 y (*.f64 z -4)))
(-.f64 x (*.f64 z (*.f64 4 y)))
(-.f64 x (*.f64 4 (*.f64 y z)))
(+.f64 (*.f64 y (-.f64 (*.f64 4 z) (*.f64 8 z))) x)
(+.f64 x (*.f64 y (-.f64 (*.f64 4 z) (*.f64 z 8))))
(+.f64 x (*.f64 y (*.f64 z -4)))
(-.f64 x (*.f64 z (*.f64 4 y)))
(-.f64 x (*.f64 4 (*.f64 y z)))
(*.f64 y (-.f64 (*.f64 4 z) (*.f64 8 z)))
(*.f64 y (-.f64 (*.f64 4 z) (*.f64 z 8)))
(*.f64 y (*.f64 z -4))
(+.f64 (*.f64 y (-.f64 (*.f64 4 z) (*.f64 8 z))) x)
(+.f64 x (*.f64 y (-.f64 (*.f64 4 z) (*.f64 z 8))))
(+.f64 x (*.f64 y (*.f64 z -4)))
(-.f64 x (*.f64 z (*.f64 4 y)))
(-.f64 x (*.f64 4 (*.f64 y z)))
(+.f64 (*.f64 y (-.f64 (*.f64 4 z) (*.f64 8 z))) x)
(+.f64 x (*.f64 y (-.f64 (*.f64 4 z) (*.f64 z 8))))
(+.f64 x (*.f64 y (*.f64 z -4)))
(-.f64 x (*.f64 z (*.f64 4 y)))
(-.f64 x (*.f64 4 (*.f64 y z)))
(+.f64 (*.f64 y (-.f64 (*.f64 4 z) (*.f64 8 z))) x)
(+.f64 x (*.f64 y (-.f64 (*.f64 4 z) (*.f64 z 8))))
(+.f64 x (*.f64 y (*.f64 z -4)))
(-.f64 x (*.f64 z (*.f64 4 y)))
(-.f64 x (*.f64 4 (*.f64 y z)))
(*.f64 -1 (*.f64 y (-.f64 (*.f64 -4 z) (*.f64 -8 z))))
(*.f64 y (-.f64 (*.f64 4 z) (*.f64 z 8)))
(*.f64 y (*.f64 z -4))
(+.f64 (*.f64 -1 (*.f64 y (-.f64 (*.f64 -4 z) (*.f64 -8 z)))) x)
(+.f64 x (*.f64 y (-.f64 (*.f64 4 z) (*.f64 z 8))))
(+.f64 x (*.f64 y (*.f64 z -4)))
(-.f64 x (*.f64 z (*.f64 4 y)))
(-.f64 x (*.f64 4 (*.f64 y z)))
(+.f64 (*.f64 -1 (*.f64 y (-.f64 (*.f64 -4 z) (*.f64 -8 z)))) x)
(+.f64 x (*.f64 y (-.f64 (*.f64 4 z) (*.f64 z 8))))
(+.f64 x (*.f64 y (*.f64 z -4)))
(-.f64 x (*.f64 z (*.f64 4 y)))
(-.f64 x (*.f64 4 (*.f64 y z)))
(+.f64 (*.f64 -1 (*.f64 y (-.f64 (*.f64 -4 z) (*.f64 -8 z)))) x)
(+.f64 x (*.f64 y (-.f64 (*.f64 4 z) (*.f64 z 8))))
(+.f64 x (*.f64 y (*.f64 z -4)))
(-.f64 x (*.f64 z (*.f64 4 y)))
(-.f64 x (*.f64 4 (*.f64 y z)))
x
(+.f64 (*.f64 (-.f64 (*.f64 4 y) (*.f64 8 y)) z) x)
(+.f64 x (*.f64 y (-.f64 (*.f64 4 z) (*.f64 z 8))))
(+.f64 x (*.f64 y (*.f64 z -4)))
(-.f64 x (*.f64 z (*.f64 4 y)))
(-.f64 x (*.f64 4 (*.f64 y z)))
(+.f64 (*.f64 (-.f64 (*.f64 4 y) (*.f64 8 y)) z) x)
(+.f64 x (*.f64 y (-.f64 (*.f64 4 z) (*.f64 z 8))))
(+.f64 x (*.f64 y (*.f64 z -4)))
(-.f64 x (*.f64 z (*.f64 4 y)))
(-.f64 x (*.f64 4 (*.f64 y z)))
(+.f64 (*.f64 (-.f64 (*.f64 4 y) (*.f64 8 y)) z) x)
(+.f64 x (*.f64 y (-.f64 (*.f64 4 z) (*.f64 z 8))))
(+.f64 x (*.f64 y (*.f64 z -4)))
(-.f64 x (*.f64 z (*.f64 4 y)))
(-.f64 x (*.f64 4 (*.f64 y z)))
(*.f64 (-.f64 (*.f64 4 y) (*.f64 8 y)) z)
(*.f64 y (-.f64 (*.f64 4 z) (*.f64 z 8)))
(*.f64 y (*.f64 z -4))
(+.f64 (*.f64 (-.f64 (*.f64 4 y) (*.f64 8 y)) z) x)
(+.f64 x (*.f64 y (-.f64 (*.f64 4 z) (*.f64 z 8))))
(+.f64 x (*.f64 y (*.f64 z -4)))
(-.f64 x (*.f64 z (*.f64 4 y)))
(-.f64 x (*.f64 4 (*.f64 y z)))
(+.f64 (*.f64 (-.f64 (*.f64 4 y) (*.f64 8 y)) z) x)
(+.f64 x (*.f64 y (-.f64 (*.f64 4 z) (*.f64 z 8))))
(+.f64 x (*.f64 y (*.f64 z -4)))
(-.f64 x (*.f64 z (*.f64 4 y)))
(-.f64 x (*.f64 4 (*.f64 y z)))
(+.f64 (*.f64 (-.f64 (*.f64 4 y) (*.f64 8 y)) z) x)
(+.f64 x (*.f64 y (-.f64 (*.f64 4 z) (*.f64 z 8))))
(+.f64 x (*.f64 y (*.f64 z -4)))
(-.f64 x (*.f64 z (*.f64 4 y)))
(-.f64 x (*.f64 4 (*.f64 y z)))
(*.f64 -1 (*.f64 (-.f64 (*.f64 -4 y) (*.f64 -8 y)) z))
(*.f64 y (-.f64 (*.f64 4 z) (*.f64 z 8)))
(*.f64 y (*.f64 z -4))
(+.f64 (*.f64 -1 (*.f64 (-.f64 (*.f64 -4 y) (*.f64 -8 y)) z)) x)
(+.f64 x (*.f64 y (-.f64 (*.f64 4 z) (*.f64 z 8))))
(+.f64 x (*.f64 y (*.f64 z -4)))
(-.f64 x (*.f64 z (*.f64 4 y)))
(-.f64 x (*.f64 4 (*.f64 y z)))
(+.f64 (*.f64 -1 (*.f64 (-.f64 (*.f64 -4 y) (*.f64 -8 y)) z)) x)
(+.f64 x (*.f64 y (-.f64 (*.f64 4 z) (*.f64 z 8))))
(+.f64 x (*.f64 y (*.f64 z -4)))
(-.f64 x (*.f64 z (*.f64 4 y)))
(-.f64 x (*.f64 4 (*.f64 y z)))
(+.f64 (*.f64 -1 (*.f64 (-.f64 (*.f64 -4 y) (*.f64 -8 y)) z)) x)
(+.f64 x (*.f64 y (-.f64 (*.f64 4 z) (*.f64 z 8))))
(+.f64 x (*.f64 y (*.f64 z -4)))
(-.f64 x (*.f64 z (*.f64 4 y)))
(-.f64 x (*.f64 4 (*.f64 y z)))
(-.f64 (*.f64 4 (*.f64 y z)) (*.f64 8 (*.f64 y z)))
(*.f64 y (-.f64 (*.f64 4 z) (*.f64 z 8)))
(*.f64 y (*.f64 z -4))
(-.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (*.f64 8 (*.f64 y z)))
(+.f64 x (*.f64 y (-.f64 (*.f64 4 z) (*.f64 z 8))))
(+.f64 x (*.f64 y (*.f64 z -4)))
(-.f64 x (*.f64 z (*.f64 4 y)))
(-.f64 x (*.f64 4 (*.f64 y z)))
(-.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (*.f64 8 (*.f64 y z)))
(+.f64 x (*.f64 y (-.f64 (*.f64 4 z) (*.f64 z 8))))
(+.f64 x (*.f64 y (*.f64 z -4)))
(-.f64 x (*.f64 z (*.f64 4 y)))
(-.f64 x (*.f64 4 (*.f64 y z)))
(-.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (*.f64 8 (*.f64 y z)))
(+.f64 x (*.f64 y (-.f64 (*.f64 4 z) (*.f64 z 8))))
(+.f64 x (*.f64 y (*.f64 z -4)))
(-.f64 x (*.f64 z (*.f64 4 y)))
(-.f64 x (*.f64 4 (*.f64 y z)))
x
(-.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (*.f64 8 (*.f64 y z)))
(+.f64 x (*.f64 y (-.f64 (*.f64 4 z) (*.f64 z 8))))
(+.f64 x (*.f64 y (*.f64 z -4)))
(-.f64 x (*.f64 z (*.f64 4 y)))
(-.f64 x (*.f64 4 (*.f64 y z)))
(-.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (*.f64 8 (*.f64 y z)))
(+.f64 x (*.f64 y (-.f64 (*.f64 4 z) (*.f64 z 8))))
(+.f64 x (*.f64 y (*.f64 z -4)))
(-.f64 x (*.f64 z (*.f64 4 y)))
(-.f64 x (*.f64 4 (*.f64 y z)))
(-.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (*.f64 8 (*.f64 y z)))
(+.f64 x (*.f64 y (-.f64 (*.f64 4 z) (*.f64 z 8))))
(+.f64 x (*.f64 y (*.f64 z -4)))
(-.f64 x (*.f64 z (*.f64 4 y)))
(-.f64 x (*.f64 4 (*.f64 y z)))
x
(-.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (*.f64 8 (*.f64 y z)))
(+.f64 x (*.f64 y (-.f64 (*.f64 4 z) (*.f64 z 8))))
(+.f64 x (*.f64 y (*.f64 z -4)))
(-.f64 x (*.f64 z (*.f64 4 y)))
(-.f64 x (*.f64 4 (*.f64 y z)))
(-.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (*.f64 8 (*.f64 y z)))
(+.f64 x (*.f64 y (-.f64 (*.f64 4 z) (*.f64 z 8))))
(+.f64 x (*.f64 y (*.f64 z -4)))
(-.f64 x (*.f64 z (*.f64 4 y)))
(-.f64 x (*.f64 4 (*.f64 y z)))
(-.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (*.f64 8 (*.f64 y z)))
(+.f64 x (*.f64 y (-.f64 (*.f64 4 z) (*.f64 z 8))))
(+.f64 x (*.f64 y (*.f64 z -4)))
(-.f64 x (*.f64 z (*.f64 4 y)))
(-.f64 x (*.f64 4 (*.f64 y z)))
(+.f64 (*.f64 y z) (+.f64 (*.f64 y z) (*.f64 y (+.f64 z z))))
(+.f64 (*.f64 y z) (*.f64 y (+.f64 (+.f64 z z) z)))
(*.f64 (+.f64 z z) (+.f64 y y))
(+.f64 (*.f64 4 (*.f64 y z)) 0)
(*.f64 4 (*.f64 y z))
(*.f64 z (*.f64 4 y))
(+.f64 0 (*.f64 4 (*.f64 y z)))
(*.f64 4 (*.f64 y z))
(*.f64 z (*.f64 4 y))
(+.f64 (*.f64 y (+.f64 z z)) (*.f64 y (+.f64 z z)))
(+.f64 (*.f64 y z) (*.f64 y (+.f64 (+.f64 z z) z)))
(*.f64 (+.f64 z z) (+.f64 y y))
(+.f64 (+.f64 (*.f64 y z) (*.f64 y (+.f64 z z))) (*.f64 y z))
(+.f64 (*.f64 y z) (*.f64 y (+.f64 (+.f64 z z) z)))
(*.f64 (+.f64 z z) (+.f64 y y))
(-.f64 (*.f64 4 (*.f64 y z)) 0)
(*.f64 4 (*.f64 y z))
(*.f64 z (*.f64 4 y))
(-.f64 0 (neg.f64 (*.f64 4 (*.f64 y z))))
(*.f64 4 (*.f64 y z))
(*.f64 z (*.f64 4 y))
(/.f64 (*.f64 4 (*.f64 y z)) 1)
(*.f64 4 (*.f64 y z))
(*.f64 z (*.f64 4 y))
(/.f64 (*.f64 4 (*.f64 y z)) (/.f64 (*.f64 y z) (*.f64 y z)))
(*.f64 (*.f64 z (*.f64 4 y)) (/.f64 (*.f64 y z) (*.f64 y z)))
(*.f64 (*.f64 4 (*.f64 y z)) (/.f64 (*.f64 y z) (*.f64 y z)))
(/.f64 (*.f64 y (*.f64 z 8)) 2)
(*.f64 4 (*.f64 y z))
(*.f64 z (*.f64 4 y))
(neg.f64 (neg.f64 (*.f64 4 (*.f64 y z))))
(*.f64 4 (*.f64 y z))
(*.f64 z (*.f64 4 y))
(-.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) 0)
(+.f64 x (*.f64 4 (*.f64 y z)))
(+.f64 x (*.f64 z (*.f64 4 y)))
(-.f64 0 (neg.f64 (+.f64 (*.f64 4 (*.f64 y z)) x)))
(+.f64 x (*.f64 4 (*.f64 y z)))
(+.f64 x (*.f64 z (*.f64 4 y)))
(*.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) 1)
(+.f64 x (*.f64 4 (*.f64 y z)))
(+.f64 x (*.f64 z (*.f64 4 y)))
(*.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (/.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (+.f64 (*.f64 4 (*.f64 y z)) x)))
(+.f64 x (*.f64 4 (*.f64 y z)))
(+.f64 x (*.f64 z (*.f64 4 y)))
(*.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (*.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (/.f64 1 (+.f64 (*.f64 4 (*.f64 y z)) x))))
(+.f64 x (*.f64 4 (*.f64 y z)))
(+.f64 x (*.f64 z (*.f64 4 y)))
(*.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (/.f64 1 (/.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (+.f64 (*.f64 4 (*.f64 y z)) x))))
(+.f64 x (*.f64 4 (*.f64 y z)))
(+.f64 x (*.f64 z (*.f64 4 y)))
(*.f64 1 (+.f64 (*.f64 4 (*.f64 y z)) x))
(+.f64 x (*.f64 4 (*.f64 y z)))
(+.f64 x (*.f64 z (*.f64 4 y)))
(*.f64 (/.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (+.f64 (*.f64 4 (*.f64 y z)) x)) (+.f64 (*.f64 4 (*.f64 y z)) x))
(+.f64 x (*.f64 4 (*.f64 y z)))
(+.f64 x (*.f64 z (*.f64 4 y)))
(*.f64 (/.f64 1 (+.f64 (*.f64 4 (*.f64 y z)) x)) (*.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (+.f64 (*.f64 4 (*.f64 y z)) x)))
(+.f64 x (*.f64 4 (*.f64 y z)))
(+.f64 x (*.f64 z (*.f64 4 y)))
(*.f64 (*.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (+.f64 (*.f64 4 (*.f64 y z)) x)) (/.f64 1 (+.f64 (*.f64 4 (*.f64 y z)) x)))
(+.f64 x (*.f64 4 (*.f64 y z)))
(+.f64 x (*.f64 z (*.f64 4 y)))
(*.f64 (*.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (/.f64 1 (+.f64 (*.f64 4 (*.f64 y z)) x))) (+.f64 (*.f64 4 (*.f64 y z)) x))
(+.f64 x (*.f64 4 (*.f64 y z)))
(+.f64 x (*.f64 z (*.f64 4 y)))
(*.f64 (/.f64 (/.f64 1 (+.f64 (*.f64 4 (*.f64 y z)) x)) (*.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (+.f64 (*.f64 4 (*.f64 y z)) x))) (*.f64 (*.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (+.f64 (*.f64 4 (*.f64 y z)) x)) (*.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (+.f64 (*.f64 4 (*.f64 y z)) x))))
(+.f64 x (*.f64 4 (*.f64 y z)))
(+.f64 x (*.f64 z (*.f64 4 y)))
(*.f64 (/.f64 (/.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (+.f64 (*.f64 4 (*.f64 y z)) x)) (+.f64 (*.f64 4 (*.f64 y z)) x)) (*.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (+.f64 (*.f64 4 (*.f64 y z)) x)))
(+.f64 x (*.f64 4 (*.f64 y z)))
(+.f64 x (*.f64 z (*.f64 4 y)))
(*.f64 (/.f64 (*.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (/.f64 1 (+.f64 (*.f64 4 (*.f64 y z)) x))) (+.f64 (*.f64 4 (*.f64 y z)) x)) (*.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (+.f64 (*.f64 4 (*.f64 y z)) x)))
(+.f64 x (*.f64 4 (*.f64 y z)))
(+.f64 x (*.f64 z (*.f64 4 y)))
(*.f64 (/.f64 (/.f64 1 (/.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (+.f64 (*.f64 4 (*.f64 y z)) x))) (+.f64 (*.f64 4 (*.f64 y z)) x)) (*.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (+.f64 (*.f64 4 (*.f64 y z)) x)))
(+.f64 x (*.f64 4 (*.f64 y z)))
(+.f64 x (*.f64 z (*.f64 4 y)))
(/.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) 1)
(+.f64 x (*.f64 4 (*.f64 y z)))
(+.f64 x (*.f64 z (*.f64 4 y)))
(/.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (/.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (+.f64 (*.f64 4 (*.f64 y z)) x)))
(+.f64 x (*.f64 4 (*.f64 y z)))
(+.f64 x (*.f64 z (*.f64 4 y)))
(/.f64 (+.f64 x (+.f64 x (*.f64 y (*.f64 z 8)))) 2)
(+.f64 x (*.f64 4 (*.f64 y z)))
(+.f64 x (*.f64 z (*.f64 4 y)))
(neg.f64 (neg.f64 (+.f64 (*.f64 4 (*.f64 y z)) x)))
(+.f64 x (*.f64 4 (*.f64 y z)))
(+.f64 x (*.f64 z (*.f64 4 y)))
(+.f64 x (neg.f64 (*.f64 4 (*.f64 y z))))
(+.f64 x (*.f64 y (-.f64 (*.f64 4 z) (*.f64 z 8))))
(+.f64 x (*.f64 y (*.f64 z -4)))
(-.f64 x (*.f64 z (*.f64 4 y)))
(-.f64 x (*.f64 4 (*.f64 y z)))
(+.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (neg.f64 (*.f64 y (*.f64 z 8))))
(+.f64 x (*.f64 y (-.f64 (*.f64 4 z) (*.f64 z 8))))
(+.f64 x (*.f64 y (*.f64 z -4)))
(-.f64 x (*.f64 z (*.f64 4 y)))
(-.f64 x (*.f64 4 (*.f64 y z)))
(+.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (-.f64 (-.f64 x (*.f64 4 (*.f64 y z))) (+.f64 (*.f64 4 (*.f64 y z)) x)))
(+.f64 x (*.f64 y (-.f64 (*.f64 4 z) (*.f64 z 8))))
(+.f64 x (*.f64 y (*.f64 z -4)))
(-.f64 x (*.f64 z (*.f64 4 y)))
(-.f64 x (*.f64 4 (*.f64 y z)))
(+.f64 (-.f64 x (*.f64 4 (*.f64 y z))) 0)
(+.f64 x (*.f64 y (-.f64 (*.f64 4 z) (*.f64 z 8))))
(+.f64 x (*.f64 y (*.f64 z -4)))
(-.f64 x (*.f64 z (*.f64 4 y)))
(-.f64 x (*.f64 4 (*.f64 y z)))
(+.f64 0 (-.f64 x (*.f64 4 (*.f64 y z))))
(+.f64 x (*.f64 y (-.f64 (*.f64 4 z) (*.f64 z 8))))
(+.f64 x (*.f64 y (*.f64 z -4)))
(-.f64 x (*.f64 z (*.f64 4 y)))
(-.f64 x (*.f64 4 (*.f64 y z)))
(+.f64 (neg.f64 (*.f64 4 (*.f64 y z))) x)
(+.f64 x (*.f64 y (-.f64 (*.f64 4 z) (*.f64 z 8))))
(+.f64 x (*.f64 y (*.f64 z -4)))
(-.f64 x (*.f64 z (*.f64 4 y)))
(-.f64 x (*.f64 4 (*.f64 y z)))
(+.f64 (neg.f64 (*.f64 y (*.f64 z 8))) (+.f64 (*.f64 4 (*.f64 y z)) x))
(+.f64 x (*.f64 y (-.f64 (*.f64 4 z) (*.f64 z 8))))
(+.f64 x (*.f64 y (*.f64 z -4)))
(-.f64 x (*.f64 z (*.f64 4 y)))
(-.f64 x (*.f64 4 (*.f64 y z)))
(+.f64 (+.f64 x (+.f64 x (*.f64 y (*.f64 z 8)))) (-.f64 0 (+.f64 (*.f64 4 (*.f64 y z)) (+.f64 x (*.f64 y (*.f64 z 8))))))
(+.f64 (+.f64 (*.f64 (*.f64 y z) 8) (+.f64 x x)) (neg.f64 (+.f64 (*.f64 4 (*.f64 y z)) (+.f64 x (*.f64 (*.f64 y z) 8)))))
(+.f64 x (+.f64 (+.f64 x (*.f64 y (*.f64 z 8))) (neg.f64 (+.f64 x (+.f64 (*.f64 y (*.f64 z 8)) (*.f64 4 (*.f64 y z)))))))
(+.f64 x (+.f64 (+.f64 x (*.f64 y (*.f64 z 8))) (neg.f64 (+.f64 x (+.f64 (*.f64 z (*.f64 4 y)) (*.f64 y (*.f64 z 8)))))))
(+.f64 x (+.f64 (+.f64 x (*.f64 (*.f64 y z) 8)) (neg.f64 (+.f64 x (+.f64 (*.f64 4 (*.f64 y z)) (*.f64 (*.f64 y z) 8))))))
(+.f64 x (+.f64 (+.f64 x (*.f64 y (*.f64 z 8))) (neg.f64 (+.f64 x (+.f64 (*.f64 4 (*.f64 y z)) (*.f64 y (*.f64 z 8)))))))
(+.f64 (+.f64 (*.f64 4 (*.f64 y z)) (+.f64 x (*.f64 y (*.f64 z 8)))) (neg.f64 (*.f64 y (*.f64 z 16))))
(+.f64 (+.f64 x (*.f64 (*.f64 y z) 8)) (+.f64 (*.f64 4 (*.f64 y z)) (neg.f64 (*.f64 z (*.f64 y 16)))))
(+.f64 (+.f64 x (*.f64 4 (*.f64 y z))) (+.f64 (*.f64 y (*.f64 z 8)) (neg.f64 (*.f64 y (*.f64 z 16)))))
(+.f64 (*.f64 y (*.f64 z 8)) (+.f64 (+.f64 x (*.f64 z (*.f64 4 y))) (neg.f64 (*.f64 y (*.f64 z 16)))))
(+.f64 x (+.f64 (*.f64 (*.f64 y z) 8) (+.f64 (*.f64 4 (*.f64 y z)) (neg.f64 (*.f64 y (*.f64 z 16))))))
(+.f64 (*.f64 4 (*.f64 y z)) (+.f64 (*.f64 y (*.f64 z 8)) (+.f64 x (neg.f64 (*.f64 z (*.f64 y 16))))))
(+.f64 (neg.f64 (*.f64 y (*.f64 z 16))) (+.f64 (*.f64 4 (*.f64 y z)) (+.f64 x (*.f64 y (*.f64 z 8)))))
(+.f64 (+.f64 x (*.f64 (*.f64 y z) 8)) (+.f64 (*.f64 4 (*.f64 y z)) (neg.f64 (*.f64 z (*.f64 y 16)))))
(+.f64 (+.f64 x (*.f64 4 (*.f64 y z))) (+.f64 (*.f64 y (*.f64 z 8)) (neg.f64 (*.f64 y (*.f64 z 16)))))
(+.f64 (*.f64 y (*.f64 z 8)) (+.f64 (+.f64 x (*.f64 z (*.f64 4 y))) (neg.f64 (*.f64 y (*.f64 z 16)))))
(+.f64 x (+.f64 (*.f64 (*.f64 y z) 8) (+.f64 (*.f64 4 (*.f64 y z)) (neg.f64 (*.f64 y (*.f64 z 16))))))
(+.f64 (*.f64 4 (*.f64 y z)) (+.f64 (*.f64 y (*.f64 z 8)) (+.f64 x (neg.f64 (*.f64 z (*.f64 y 16))))))
(*.f64 (-.f64 x (*.f64 4 (*.f64 y z))) 1)
(+.f64 x (*.f64 y (-.f64 (*.f64 4 z) (*.f64 z 8))))
(+.f64 x (*.f64 y (*.f64 z -4)))
(-.f64 x (*.f64 z (*.f64 4 y)))
(-.f64 x (*.f64 4 (*.f64 y z)))
(*.f64 (-.f64 x (*.f64 4 (*.f64 y z))) (/.f64 (-.f64 (*.f64 4 (*.f64 y z)) x) (-.f64 (*.f64 4 (*.f64 y z)) x)))
(+.f64 x (*.f64 y (-.f64 (*.f64 4 z) (*.f64 z 8))))
(+.f64 x (*.f64 y (*.f64 z -4)))
(-.f64 x (*.f64 z (*.f64 4 y)))
(-.f64 x (*.f64 4 (*.f64 y z)))
(*.f64 (-.f64 x (*.f64 4 (*.f64 y z))) (*.f64 (-.f64 x (*.f64 4 (*.f64 y z))) (/.f64 1 (-.f64 x (*.f64 4 (*.f64 y z))))))
(+.f64 x (*.f64 y (-.f64 (*.f64 4 z) (*.f64 z 8))))
(+.f64 x (*.f64 y (*.f64 z -4)))
(-.f64 x (*.f64 z (*.f64 4 y)))
(-.f64 x (*.f64 4 (*.f64 y z)))
(*.f64 (-.f64 x (*.f64 4 (*.f64 y z))) (/.f64 1 (/.f64 (-.f64 (*.f64 4 (*.f64 y z)) x) (-.f64 (*.f64 4 (*.f64 y z)) x))))
(+.f64 x (*.f64 y (-.f64 (*.f64 4 z) (*.f64 z 8))))
(+.f64 x (*.f64 y (*.f64 z -4)))
(-.f64 x (*.f64 z (*.f64 4 y)))
(-.f64 x (*.f64 4 (*.f64 y z)))
(*.f64 1 (-.f64 x (*.f64 4 (*.f64 y z))))
(+.f64 x (*.f64 y (-.f64 (*.f64 4 z) (*.f64 z 8))))
(+.f64 x (*.f64 y (*.f64 z -4)))
(-.f64 x (*.f64 z (*.f64 4 y)))
(-.f64 x (*.f64 4 (*.f64 y z)))
(*.f64 (/.f64 (-.f64 (*.f64 4 (*.f64 y z)) x) (-.f64 (*.f64 4 (*.f64 y z)) x)) (-.f64 x (*.f64 4 (*.f64 y z))))
(+.f64 x (*.f64 y (-.f64 (*.f64 4 z) (*.f64 z 8))))
(+.f64 x (*.f64 y (*.f64 z -4)))
(-.f64 x (*.f64 z (*.f64 4 y)))
(-.f64 x (*.f64 4 (*.f64 y z)))
(*.f64 (-.f64 (*.f64 4 (*.f64 y z)) x) -1)
(+.f64 x (*.f64 y (-.f64 (*.f64 4 z) (*.f64 z 8))))
(+.f64 x (*.f64 y (*.f64 z -4)))
(-.f64 x (*.f64 z (*.f64 4 y)))
(-.f64 x (*.f64 4 (*.f64 y z)))
(*.f64 (/.f64 1 (-.f64 x (*.f64 4 (*.f64 y z)))) (*.f64 (-.f64 x (*.f64 4 (*.f64 y z))) (-.f64 x (*.f64 4 (*.f64 y z)))))
(+.f64 x (*.f64 y (-.f64 (*.f64 4 z) (*.f64 z 8))))
(+.f64 x (*.f64 y (*.f64 z -4)))
(-.f64 x (*.f64 z (*.f64 4 y)))
(-.f64 x (*.f64 4 (*.f64 y z)))
(*.f64 (*.f64 (-.f64 x (*.f64 4 (*.f64 y z))) (-.f64 x (*.f64 4 (*.f64 y z)))) (/.f64 1 (-.f64 x (*.f64 4 (*.f64 y z)))))
(+.f64 x (*.f64 y (-.f64 (*.f64 4 z) (*.f64 z 8))))
(+.f64 x (*.f64 y (*.f64 z -4)))
(-.f64 x (*.f64 z (*.f64 4 y)))
(-.f64 x (*.f64 4 (*.f64 y z)))
(*.f64 (*.f64 (-.f64 x (*.f64 4 (*.f64 y z))) (/.f64 1 (-.f64 x (*.f64 4 (*.f64 y z))))) (-.f64 x (*.f64 4 (*.f64 y z))))
(+.f64 x (*.f64 y (-.f64 (*.f64 4 z) (*.f64 z 8))))
(+.f64 x (*.f64 y (*.f64 z -4)))
(-.f64 x (*.f64 z (*.f64 4 y)))
(-.f64 x (*.f64 4 (*.f64 y z)))
(*.f64 (/.f64 (/.f64 1 (-.f64 x (*.f64 4 (*.f64 y z)))) (*.f64 (-.f64 x (*.f64 4 (*.f64 y z))) (-.f64 x (*.f64 4 (*.f64 y z))))) (*.f64 (*.f64 (-.f64 x (*.f64 4 (*.f64 y z))) (-.f64 x (*.f64 4 (*.f64 y z)))) (*.f64 (-.f64 x (*.f64 4 (*.f64 y z))) (-.f64 x (*.f64 4 (*.f64 y z))))))
(+.f64 x (*.f64 y (-.f64 (*.f64 4 z) (*.f64 z 8))))
(+.f64 x (*.f64 y (*.f64 z -4)))
(-.f64 x (*.f64 z (*.f64 4 y)))
(-.f64 x (*.f64 4 (*.f64 y z)))
(*.f64 (/.f64 (/.f64 (-.f64 (*.f64 4 (*.f64 y z)) x) (-.f64 (*.f64 4 (*.f64 y z)) x)) (-.f64 x (*.f64 4 (*.f64 y z)))) (*.f64 (-.f64 x (*.f64 4 (*.f64 y z))) (-.f64 x (*.f64 4 (*.f64 y z)))))
(+.f64 x (*.f64 y (-.f64 (*.f64 4 z) (*.f64 z 8))))
(+.f64 x (*.f64 y (*.f64 z -4)))
(-.f64 x (*.f64 z (*.f64 4 y)))
(-.f64 x (*.f64 4 (*.f64 y z)))
(*.f64 (/.f64 (*.f64 (-.f64 x (*.f64 4 (*.f64 y z))) (/.f64 1 (-.f64 x (*.f64 4 (*.f64 y z))))) (-.f64 x (*.f64 4 (*.f64 y z)))) (*.f64 (-.f64 x (*.f64 4 (*.f64 y z))) (-.f64 x (*.f64 4 (*.f64 y z)))))
(+.f64 x (*.f64 y (-.f64 (*.f64 4 z) (*.f64 z 8))))
(+.f64 x (*.f64 y (*.f64 z -4)))
(-.f64 x (*.f64 z (*.f64 4 y)))
(-.f64 x (*.f64 4 (*.f64 y z)))
(*.f64 (/.f64 (/.f64 1 (/.f64 (-.f64 (*.f64 4 (*.f64 y z)) x) (-.f64 (*.f64 4 (*.f64 y z)) x))) (-.f64 x (*.f64 4 (*.f64 y z)))) (*.f64 (-.f64 x (*.f64 4 (*.f64 y z))) (-.f64 x (*.f64 4 (*.f64 y z)))))
(+.f64 x (*.f64 y (-.f64 (*.f64 4 z) (*.f64 z 8))))
(+.f64 x (*.f64 y (*.f64 z -4)))
(-.f64 x (*.f64 z (*.f64 4 y)))
(-.f64 x (*.f64 4 (*.f64 y z)))
(*.f64 (/.f64 -1 (-.f64 (*.f64 4 (*.f64 y z)) x)) (*.f64 (-.f64 x (*.f64 4 (*.f64 y z))) (-.f64 x (*.f64 4 (*.f64 y z)))))
(+.f64 x (*.f64 y (-.f64 (*.f64 4 z) (*.f64 z 8))))
(+.f64 x (*.f64 y (*.f64 z -4)))
(-.f64 x (*.f64 z (*.f64 4 y)))
(-.f64 x (*.f64 4 (*.f64 y z)))
(/.f64 (-.f64 x (*.f64 4 (*.f64 y z))) 1)
(+.f64 x (*.f64 y (-.f64 (*.f64 4 z) (*.f64 z 8))))
(+.f64 x (*.f64 y (*.f64 z -4)))
(-.f64 x (*.f64 z (*.f64 4 y)))
(-.f64 x (*.f64 4 (*.f64 y z)))
(/.f64 (-.f64 x (*.f64 4 (*.f64 y z))) (/.f64 (-.f64 (*.f64 4 (*.f64 y z)) x) (-.f64 (*.f64 4 (*.f64 y z)) x)))
(+.f64 x (*.f64 y (-.f64 (*.f64 4 z) (*.f64 z 8))))
(+.f64 x (*.f64 y (*.f64 z -4)))
(-.f64 x (*.f64 z (*.f64 4 y)))
(-.f64 x (*.f64 4 (*.f64 y z)))
(/.f64 (-.f64 (*.f64 4 (*.f64 y z)) x) -1)
(+.f64 x (*.f64 y (-.f64 (*.f64 4 z) (*.f64 z 8))))
(+.f64 x (*.f64 y (*.f64 z -4)))
(-.f64 x (*.f64 z (*.f64 4 y)))
(-.f64 x (*.f64 4 (*.f64 y z)))
(/.f64 (*.f64 (-.f64 x (*.f64 4 (*.f64 y z))) 2) 2)
(+.f64 x (*.f64 y (-.f64 (*.f64 4 z) (*.f64 z 8))))
(+.f64 x (*.f64 y (*.f64 z -4)))
(-.f64 x (*.f64 z (*.f64 4 y)))
(-.f64 x (*.f64 4 (*.f64 y z)))
(/.f64 (*.f64 (-.f64 (*.f64 4 (*.f64 y z)) x) 2) -2)
(+.f64 x (*.f64 y (-.f64 (*.f64 4 z) (*.f64 z 8))))
(+.f64 x (*.f64 y (*.f64 z -4)))
(-.f64 x (*.f64 z (*.f64 4 y)))
(-.f64 x (*.f64 4 (*.f64 y z)))
(neg.f64 (-.f64 (*.f64 4 (*.f64 y z)) x))
(+.f64 x (*.f64 y (-.f64 (*.f64 4 z) (*.f64 z 8))))
(+.f64 x (*.f64 y (*.f64 z -4)))
(-.f64 x (*.f64 z (*.f64 4 y)))
(-.f64 x (*.f64 4 (*.f64 y z)))

eval78.0ms (1.3%)

Compiler

Compiled 1874 to 1017 computations (45.7% saved)

prune131.0ms (2.2%)

Pruning

4 alts after pruning (1 fresh and 3 done)

PrunedKeptTotal
New96096
Fresh011
Picked011
Done022
Total964100
Error
0b
Counts
100 → 4
Alt Table
Click to see full alt table
StatusErrorProgram
0b
(-.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (*.f64 z (*.f64 y 8)))
0.0b
(-.f64 x (*.f64 (*.f64 y 4) z))
35.1b
(*.f64 -4 (*.f64 y z))
27.4b
x
Compiler

Compiled 38 to 27 computations (28.9% saved)

eval0.0ms (0%)

Compiler

Compiled 3 to 3 computations (0% saved)

prune3.0ms (0.1%)

Pruning

4 alts after pruning (1 fresh and 3 done)

PrunedKeptTotal
New000
Fresh011
Picked000
Done033
Total044
Error
0b
Counts
4 → 4
Alt Table
Click to see full alt table
StatusErrorProgram
0b
(-.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (*.f64 z (*.f64 y 8)))
0.0b
(-.f64 x (*.f64 (*.f64 y 4) z))
35.1b
(*.f64 -4 (*.f64 y z))
27.4b
x
Compiler

Compiled 38 to 27 computations (28.9% saved)

regimes57.0ms (1%)

Counts
5 → 1
Calls
Call 1
Inputs
x
(*.f64 -4 (*.f64 y z))
(-.f64 x (*.f64 (*.f64 y 4) z))
(-.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (*.f64 z (*.f64 y 8)))
(+.f64 (+.f64 x (*.f64 y (*.f64 z 4))) (neg.f64 (*.f64 y (*.f64 z 8))))
Outputs
(-.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (*.f64 z (*.f64 y 8)))
Calls

6 calls:

11.0ms
y
10.0ms
(-.f64 x (*.f64 (*.f64 y 4) z))
9.0ms
(*.f64 y 4)
9.0ms
x
8.0ms
(*.f64 (*.f64 y 4) z)
Results
ErrorSegmentsBranch
0b1x
0b1y
0b1z
0b1(-.f64 x (*.f64 (*.f64 y 4) z))
0b1(*.f64 (*.f64 y 4) z)
0b1(*.f64 y 4)
Compiler

Compiled 79 to 53 computations (32.9% saved)

regimes48.0ms (0.8%)

Counts
3 → 1
Calls
Call 1
Inputs
x
(*.f64 -4 (*.f64 y z))
(-.f64 x (*.f64 (*.f64 y 4) z))
Outputs
(-.f64 x (*.f64 (*.f64 y 4) z))
Calls

6 calls:

10.0ms
(-.f64 x (*.f64 (*.f64 y 4) z))
9.0ms
x
7.0ms
(*.f64 y 4)
7.0ms
y
7.0ms
z
Results
ErrorSegmentsBranch
0.0b1x
0.0b1y
0.0b1z
0.0b1(-.f64 x (*.f64 (*.f64 y 4) z))
0.0b1(*.f64 (*.f64 y 4) z)
0.0b1(*.f64 y 4)
Compiler

Compiled 52 to 37 computations (28.8% saved)

regimes72.0ms (1.2%)

Accuracy

Total -49.5b remaining (-404.6%)

Threshold costs -49.5b (-404.6%)

Counts
2 → 3
Calls
Call 1
Inputs
x
(*.f64 -4 (*.f64 y z))
Outputs
x
(*.f64 -4 (*.f64 y z))
x
Calls

3 calls:

28.0ms
y
24.0ms
z
19.0ms
x
Results
ErrorSegmentsBranch
12.2b3x
18.6b5y
17.4b3z
Compiler

Compiled 21 to 15 computations (28.6% saved)

bsearch59.0ms (1%)

Algorithm
binary-search
Steps
TimeLeftRight
31.0ms
1.0579620215151426e+33
1.8802875928013255e+36
27.0ms
-3.869485368245894e-22
-5.131621861195516e-37
Results
52.0ms288×body256valid
Compiler

Compiled 268 to 210 computations (21.6% saved)

simplify5.0ms (0.1%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02790
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(-.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (*.f64 z (*.f64 y 8)))
(-.f64 x (*.f64 (*.f64 y 4) z))
(if (<=.f64 x -4957413553826423/46768052394588893382517914646921056628989841375232) x (if (<=.f64 x 72000000000000000693102649494470656) (*.f64 -4 (*.f64 y z)) x))
x
Outputs
(-.f64 (+.f64 (*.f64 4 (*.f64 y z)) x) (*.f64 z (*.f64 y 8)))
(-.f64 x (*.f64 (*.f64 y 4) z))
(if (<=.f64 x -4957413553826423/46768052394588893382517914646921056628989841375232) x (if (<=.f64 x 72000000000000000693102649494470656) (*.f64 -4 (*.f64 y z)) x))
x
Compiler

Compiled 48 to 33 computations (31.3% saved)

soundness703.0ms (11.7%)

Algorithm
egg-herbie
Rules
1458×rational_best.json-simplify-78
1268×rational_best.json-simplify-54
1180×rational_best.json-simplify-80
1122×rational_best.json-simplify-78
936×rational_best.json-simplify-80
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0831436
11721436
28531324
330401324
449401324
01142706
12302396
29192396
323762396
447592396
Stop Event
node limit
node limit
Compiler

Compiled 86 to 52 computations (39.5% saved)

end54.0ms (0.9%)

Remove

(sort y z)

Compiler

Compiled 71 to 45 computations (36.6% saved)

Profiling

Loading profile data...