Details

Time bar (total: 3.3s)

analyze282.0ms (8.6%)

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
25%25%74.9%0.1%0%0%0%9
37.5%37.4%62.4%0.1%0%0%0%10
44.5%44.5%55.4%0.1%0%0%0%11
50.4%50.3%49.5%0.1%0%0%0%12
Compiler

Compiled 16 to 10 computations (37.5% saved)

sample2.1s (65.7%)

Results
856.0ms2837×body1024valid
487.0ms1275×body2048valid
478.0ms2913×body256valid
283.0ms1230×body512valid
1.0msbody4096valid
Bogosity

preprocess110.0ms (3.4%)

Algorithm
egg-herbie
Rules
1602×rational_best_oopsla_all_46_json_45_simplify-10
1518×rational_best_oopsla_all_46_json_45_simplify-30
894×rational_best_oopsla_all_46_json_45_simplify-80
718×rational_best_oopsla_all_46_json_45_simplify-49
620×rational_best_oopsla_all_46_json_45_simplify-77
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
027132
160132
2148132
3431132
41626132
53720132
66459132
033
Stop Event
saturated
node limit
Calls
Call 1
Inputs
0
1
2
Outputs
0
1
2
Call 2
Inputs
(-.f64 (fma.f64 x y z) (+.f64 1 (+.f64 (*.f64 x y) z)))
(-.f64 (fma.f64 y x z) (+.f64 1 (+.f64 (*.f64 y x) z)))
(-.f64 (fma.f64 z y x) (+.f64 1 (+.f64 (*.f64 z y) x)))
(-.f64 (fma.f64 x z y) (+.f64 1 (+.f64 (*.f64 x z) y)))
Outputs
(-.f64 (fma.f64 x y z) (+.f64 1 (+.f64 (*.f64 x y) z)))
(-.f64 (fma.f64 x y z) (+.f64 1 (+.f64 z (*.f64 x y))))
(-.f64 (fma.f64 x y z) (+.f64 z (+.f64 1 (*.f64 x y))))
(-.f64 (fma.f64 x y z) (+.f64 (*.f64 x y) (+.f64 z 1)))
(-.f64 (fma.f64 y x z) (+.f64 1 (+.f64 (*.f64 y x) z)))
(-.f64 (fma.f64 y x z) (+.f64 1 (+.f64 z (*.f64 x y))))
(-.f64 (fma.f64 y x z) (+.f64 z (+.f64 1 (*.f64 x y))))
(-.f64 (fma.f64 y x z) (+.f64 (*.f64 x y) (+.f64 z 1)))
(-.f64 -1 (-.f64 (+.f64 z (*.f64 x y)) (fma.f64 y x z)))
(-.f64 (fma.f64 z y x) (+.f64 1 (+.f64 (*.f64 z y) x)))
(-.f64 (fma.f64 z y x) (+.f64 1 (+.f64 x (*.f64 y z))))
(-.f64 (fma.f64 z y x) (+.f64 x (+.f64 1 (*.f64 y z))))
(-.f64 -1 (+.f64 x (-.f64 (*.f64 y z) (fma.f64 z y x))))
(-.f64 (fma.f64 x z y) (+.f64 1 (+.f64 (*.f64 x z) y)))
(-.f64 (fma.f64 x z y) (+.f64 1 (+.f64 y (*.f64 x z))))
(-.f64 (fma.f64 x z y) (+.f64 (*.f64 x z) (+.f64 y 1)))
Compiler

Compiled 18 to 12 computations (33.3% saved)

simplify95.0ms (2.9%)

Algorithm
egg-herbie
Rules
1098×rational_best_oopsla_all_46_json_45_simplify-49
1028×rational_best_oopsla_all_46_json_45_simplify-7
966×rational_best_oopsla_all_46_json_45_simplify-72
744×rational_best_oopsla_all_46_json_45_simplify-10
708×rational_best_oopsla_all_46_json_45_simplify-30
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01233
12133
25033
314033
449933
5251533
6533133
Stop Event
node limit
Counts
1 → 6
Calls
Call 1
Inputs
(-.f64 (fma.f64 x y z) (+.f64 1 (+.f64 (*.f64 x y) z)))
Outputs
(-.f64 (fma.f64 x y z) (+.f64 1 (+.f64 (*.f64 x y) z)))
(-.f64 (fma.f64 x y z) (+.f64 (*.f64 x y) (+.f64 1 z)))
(-.f64 (fma.f64 x y z) (+.f64 1 (+.f64 z (*.f64 x y))))
(-.f64 -1 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))))
(-.f64 (fma.f64 x y z) (+.f64 z (+.f64 1 (*.f64 x y))))
(-.f64 (fma.f64 x y z) (+.f64 (*.f64 x y) (+.f64 z 1)))

eval1.0ms (0%)

Compiler

Compiled 75 to 29 computations (61.3% saved)

prune2.0ms (0.1%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New426
Fresh101
Picked000
Done000
Total527
Error
14.8b
Counts
7 → 2
Alt Table
Click to see full alt table
StatusErrorProgram
46.5b
(-.f64 (fma.f64 x y z) (+.f64 (*.f64 x y) (+.f64 z 1)))
14.9b
(-.f64 -1 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))))
Compiler

Compiled 30 to 18 computations (40% saved)

localize14.0ms (0.4%)

Local error

Found 2 expressions with local error:

NewErrorProgram
1.9b
(-.f64 z (fma.f64 x y z))
10.5b
(+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z)))
Compiler

Compiled 42 to 10 computations (76.2% saved)

series8.0ms (0.2%)

Counts
2 → 72
Calls

18 calls:

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

rewrite97.0ms (3%)

Algorithm
batch-egg-rewrite
Rules
1850×rational_best_oopsla_all_46_json-2
1850×rational_best_oopsla_all_46_json-1
1850×rational_best_oopsla_all_46_json-4
1850×rational_best_oopsla_all_46_json-3
810×rational_best_oopsla_all_46_json_45_simplify-7
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01042
16042
217942
372742
4360242
Stop Event
node limit
Counts
2 → 75
Calls
Call 1
Inputs
(+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z)))
(-.f64 z (fma.f64 x y z))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x y) (-.f64 (fma.f64 x y z) z))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 z (-.f64 (fma.f64 x y z) (*.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 z (fma.f64 x y z)) (*.f64 y (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (-.f64 (fma.f64 x y z) (+.f64 (*.f64 x y) z)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 x y) z) (fma.f64 x y z))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (neg.f64 (fma.f64 x y z)) (-.f64 (*.f64 y (neg.f64 x)) z))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (fma.f64 x y z) -1) (*.f64 -1 (+.f64 (*.f64 x y) z)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (*.f64 x y) (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))))) (*.f64 (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z)))) (-.f64 (fma.f64 x y z) z)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 0 (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))))) (*.f64 (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z)))) (-.f64 (fma.f64 x y z) (+.f64 (*.f64 x y) z))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (+.f64 (*.f64 x y) z) (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))))) (*.f64 (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z)))) (fma.f64 x y z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (*.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (/.f64 1 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (*.f64 (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z)))) (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (*.f64 1 (*.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (/.f64 1 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (*.f64 (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z)))) (*.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (/.f64 1 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (*.f64 (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z)))) (*.f64 (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z)))) (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (*.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (/.f64 (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z)))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (*.f64 (*.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (/.f64 1 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))))) (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (*.f64 (*.f64 (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z)))) (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))))) (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z)))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z)))) (*.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (/.f64 1 (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z)))) (*.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (/.f64 (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z)))) (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (fma.f64 x y z) (+.f64 (*.f64 x y) z)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (fma.f64 x y z) (+.f64 (*.f64 x y) z)) (neg.f64 (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (-.f64 (fma.f64 x y z) (+.f64 (*.f64 x y) z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (*.f64 (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z)))) (-.f64 (fma.f64 x y z) (+.f64 (*.f64 x y) z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (/.f64 1 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z)))) (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))))) (-.f64 (fma.f64 x y z) (+.f64 (*.f64 x y) z)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (/.f64 (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z)))) (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (fma.f64 x y z) (+.f64 (*.f64 x y) z)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (-.f64 (fma.f64 x y z) (+.f64 (*.f64 x y) z)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 z (neg.f64 (fma.f64 x y z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 z (*.f64 1 (neg.f64 (fma.f64 x y z))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 z (*.f64 (fma.f64 x y z) -1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 z (fma.f64 x y z)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 z (fma.f64 x y z)) (*.f64 0 (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 z (fma.f64 x y z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (fma.f64 x y z)) z)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1 (neg.f64 (fma.f64 x y z))) z)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 z (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z)))) (*.f64 (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z))) (neg.f64 (fma.f64 x y z))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 0 (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z)))) (-.f64 z (fma.f64 x y z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (fma.f64 x y z) -1) z)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z))) (neg.f64 (fma.f64 x y z))) (*.f64 z (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 z (fma.f64 x y z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 z (fma.f64 x y z)) (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 z (fma.f64 x y z)) (*.f64 (-.f64 z (fma.f64 x y z)) (/.f64 1 (-.f64 z (fma.f64 x y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 z (fma.f64 x y z)) (*.f64 (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z))) (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 z (fma.f64 x y z)) (*.f64 1 (*.f64 (-.f64 z (fma.f64 x y z)) (/.f64 1 (-.f64 z (fma.f64 x y z))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 z (fma.f64 x y z)) (*.f64 (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z))) (*.f64 (-.f64 z (fma.f64 x y z)) (/.f64 1 (-.f64 z (fma.f64 x y z))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 z (fma.f64 x y z)) (*.f64 (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z))) (*.f64 (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z))) (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 z (fma.f64 x y z)) (*.f64 (-.f64 z (fma.f64 x y z)) (/.f64 (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z))) (-.f64 z (fma.f64 x y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 z (fma.f64 x y z)) (*.f64 (*.f64 (-.f64 z (fma.f64 x y z)) (/.f64 1 (-.f64 z (fma.f64 x y z)))) (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 z (fma.f64 x y z)) (*.f64 (*.f64 (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z))) (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z)))) (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 z (fma.f64 x y z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (fma.f64 x y z) z) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (fma.f64 x y z) z) (neg.f64 (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z))) (-.f64 z (fma.f64 x y z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z))) (*.f64 (-.f64 z (fma.f64 x y z)) (/.f64 1 (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z))) (*.f64 (-.f64 z (fma.f64 x y z)) (/.f64 (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z))) (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (-.f64 (fma.f64 x y z) z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (*.f64 (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z))) (-.f64 (fma.f64 x y z) z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 z (fma.f64 x y z)) (/.f64 1 (-.f64 z (fma.f64 x y z)))) (-.f64 z (fma.f64 x y z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z))) (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z)))) (-.f64 z (fma.f64 x y z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z)))) (-.f64 (fma.f64 x y z) z))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 z (fma.f64 x y z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 z (fma.f64 x y z)) (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 z (fma.f64 x y z)) (/.f64 (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z))) (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (fma.f64 x y z) z) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (-.f64 (fma.f64 x y z) z))))))

simplify103.0ms (3.1%)

Algorithm
egg-herbie
Rules
1030×rational_best_oopsla_all_46_json_45_simplify-49
830×rational_best_oopsla_all_46_json_45_simplify-23
732×rational_best_oopsla_all_46_json_45_simplify-36
636×rational_best_oopsla_all_46_json_45_simplify-35
630×rational_best_oopsla_all_46_json_45_simplify-13
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01442297
15722073
245242073
Stop Event
node limit
Counts
147 → 83
Calls
Call 1
Inputs
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
(*.f64 -1 (*.f64 y x))
(*.f64 -1 (*.f64 y x))
(*.f64 -1 (*.f64 y x))
(*.f64 -1 (*.f64 y x))
(*.f64 -1 (*.f64 y x))
(*.f64 -1 (*.f64 y x))
(*.f64 -1 (*.f64 y x))
(*.f64 -1 (*.f64 y x))
(*.f64 -1 (*.f64 y x))
(*.f64 -1 (*.f64 y x))
(*.f64 -1 (*.f64 y x))
(*.f64 -1 (*.f64 y x))
(*.f64 -1 (*.f64 y x))
(*.f64 -1 (*.f64 y x))
(*.f64 -1 (*.f64 y x))
(*.f64 -1 (*.f64 y x))
(*.f64 -1 (*.f64 y x))
(*.f64 -1 (*.f64 y x))
(*.f64 -1 (*.f64 y x))
(*.f64 -1 (*.f64 y x))
(*.f64 -1 (*.f64 y x))
(*.f64 -1 (*.f64 y x))
(*.f64 -1 (*.f64 y x))
(*.f64 -1 (*.f64 y x))
(*.f64 -1 (*.f64 y x))
(*.f64 -1 (*.f64 y x))
(*.f64 -1 (*.f64 y x))
(*.f64 -1 (*.f64 y x))
(*.f64 -1 (*.f64 y x))
(*.f64 -1 (*.f64 y x))
(*.f64 -1 (*.f64 y x))
(*.f64 -1 (*.f64 y x))
(*.f64 -1 (*.f64 y x))
(*.f64 -1 (*.f64 y x))
(*.f64 -1 (*.f64 y x))
(*.f64 -1 (*.f64 y x))
(-.f64 (*.f64 x y) (-.f64 (fma.f64 x y z) z))
(-.f64 z (-.f64 (fma.f64 x y z) (*.f64 x y)))
(-.f64 (-.f64 z (fma.f64 x y z)) (*.f64 y (neg.f64 x)))
(-.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) 0)
(-.f64 0 (-.f64 (fma.f64 x y z) (+.f64 (*.f64 x y) z)))
(-.f64 (+.f64 (*.f64 x y) z) (fma.f64 x y z))
(-.f64 (neg.f64 (fma.f64 x y z)) (-.f64 (*.f64 y (neg.f64 x)) z))
(-.f64 (*.f64 (fma.f64 x y z) -1) (*.f64 -1 (+.f64 (*.f64 x y) z)))
(-.f64 (*.f64 (*.f64 x y) (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))))) (*.f64 (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z)))) (-.f64 (fma.f64 x y z) z)))
(-.f64 (*.f64 0 (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))))) (*.f64 (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z)))) (-.f64 (fma.f64 x y z) (+.f64 (*.f64 x y) z))))
(-.f64 (*.f64 (+.f64 (*.f64 x y) z) (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))))) (*.f64 (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z)))) (fma.f64 x y z)))
(*.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) 1)
(*.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z)))))
(*.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (*.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (/.f64 1 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))))))
(*.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (*.f64 (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z)))) (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))))))
(*.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (*.f64 1 (*.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (/.f64 1 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z)))))))
(*.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (*.f64 (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z)))) (*.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (/.f64 1 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z)))))))
(*.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (*.f64 (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z)))) (*.f64 (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z)))) (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z)))))))
(*.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (*.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (/.f64 (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z)))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))))))
(*.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (*.f64 (*.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (/.f64 1 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))))) (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))))))
(*.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (*.f64 (*.f64 (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z)))) (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))))) (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))))))
(*.f64 1 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))))
(*.f64 (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z)))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))))
(*.f64 (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z)))) (*.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (/.f64 1 (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z)))))))
(*.f64 (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z)))) (*.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (/.f64 (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z)))) (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z)))))))
(*.f64 (-.f64 (fma.f64 x y z) (+.f64 (*.f64 x y) z)) -1)
(*.f64 (-.f64 (fma.f64 x y z) (+.f64 (*.f64 x y) z)) (neg.f64 (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))))))
(*.f64 -1 (-.f64 (fma.f64 x y z) (+.f64 (*.f64 x y) z)))
(*.f64 -1 (*.f64 (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z)))) (-.f64 (fma.f64 x y z) (+.f64 (*.f64 x y) z))))
(*.f64 (*.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (/.f64 1 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))))
(*.f64 (*.f64 (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z)))) (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))))
(*.f64 (neg.f64 (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))))) (-.f64 (fma.f64 x y z) (+.f64 (*.f64 x y) z)))
(/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) 1)
(/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z)))))
(/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (/.f64 (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z)))) (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))))))
(/.f64 (-.f64 (fma.f64 x y z) (+.f64 (*.f64 x y) z)) -1)
(neg.f64 (-.f64 (fma.f64 x y z) (+.f64 (*.f64 x y) z)))
(+.f64 z (neg.f64 (fma.f64 x y z)))
(+.f64 z (*.f64 1 (neg.f64 (fma.f64 x y z))))
(+.f64 z (*.f64 (fma.f64 x y z) -1))
(+.f64 (-.f64 z (fma.f64 x y z)) 0)
(+.f64 (-.f64 z (fma.f64 x y z)) (*.f64 0 (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z)))))
(+.f64 0 (-.f64 z (fma.f64 x y z)))
(+.f64 (neg.f64 (fma.f64 x y z)) z)
(+.f64 (*.f64 1 (neg.f64 (fma.f64 x y z))) z)
(+.f64 (*.f64 z (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z)))) (*.f64 (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z))) (neg.f64 (fma.f64 x y z))))
(+.f64 (*.f64 0 (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z)))) (-.f64 z (fma.f64 x y z)))
(+.f64 (*.f64 (fma.f64 x y z) -1) z)
(+.f64 (*.f64 (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z))) (neg.f64 (fma.f64 x y z))) (*.f64 z (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z)))))
(*.f64 (-.f64 z (fma.f64 x y z)) 1)
(*.f64 (-.f64 z (fma.f64 x y z)) (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z))))
(*.f64 (-.f64 z (fma.f64 x y z)) (*.f64 (-.f64 z (fma.f64 x y z)) (/.f64 1 (-.f64 z (fma.f64 x y z)))))
(*.f64 (-.f64 z (fma.f64 x y z)) (*.f64 (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z))) (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z)))))
(*.f64 (-.f64 z (fma.f64 x y z)) (*.f64 1 (*.f64 (-.f64 z (fma.f64 x y z)) (/.f64 1 (-.f64 z (fma.f64 x y z))))))
(*.f64 (-.f64 z (fma.f64 x y z)) (*.f64 (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z))) (*.f64 (-.f64 z (fma.f64 x y z)) (/.f64 1 (-.f64 z (fma.f64 x y z))))))
(*.f64 (-.f64 z (fma.f64 x y z)) (*.f64 (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z))) (*.f64 (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z))) (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z))))))
(*.f64 (-.f64 z (fma.f64 x y z)) (*.f64 (-.f64 z (fma.f64 x y z)) (/.f64 (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z))) (-.f64 z (fma.f64 x y z)))))
(*.f64 (-.f64 z (fma.f64 x y z)) (*.f64 (*.f64 (-.f64 z (fma.f64 x y z)) (/.f64 1 (-.f64 z (fma.f64 x y z)))) (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z)))))
(*.f64 (-.f64 z (fma.f64 x y z)) (*.f64 (*.f64 (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z))) (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z)))) (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z)))))
(*.f64 1 (-.f64 z (fma.f64 x y z)))
(*.f64 (-.f64 (fma.f64 x y z) z) -1)
(*.f64 (-.f64 (fma.f64 x y z) z) (neg.f64 (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z)))))
(*.f64 (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z))) (-.f64 z (fma.f64 x y z)))
(*.f64 (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z))) (*.f64 (-.f64 z (fma.f64 x y z)) (/.f64 1 (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z))))))
(*.f64 (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z))) (*.f64 (-.f64 z (fma.f64 x y z)) (/.f64 (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z))) (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z))))))
(*.f64 -1 (-.f64 (fma.f64 x y z) z))
(*.f64 -1 (*.f64 (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z))) (-.f64 (fma.f64 x y z) z)))
(*.f64 (*.f64 (-.f64 z (fma.f64 x y z)) (/.f64 1 (-.f64 z (fma.f64 x y z)))) (-.f64 z (fma.f64 x y z)))
(*.f64 (*.f64 (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z))) (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z)))) (-.f64 z (fma.f64 x y z)))
(*.f64 (neg.f64 (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z)))) (-.f64 (fma.f64 x y z) z))
(/.f64 (-.f64 z (fma.f64 x y z)) 1)
(/.f64 (-.f64 z (fma.f64 x y z)) (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z))))
(/.f64 (-.f64 z (fma.f64 x y z)) (/.f64 (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z))) (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z)))))
(/.f64 (-.f64 (fma.f64 x y z) z) -1)
(neg.f64 (-.f64 (fma.f64 x y z) z))
Outputs
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
(*.f64 -1 (*.f64 y x))
(*.f64 y (neg.f64 x))
(*.f64 -1 (*.f64 y x))
(*.f64 y (neg.f64 x))
(*.f64 -1 (*.f64 y x))
(*.f64 y (neg.f64 x))
(*.f64 -1 (*.f64 y x))
(*.f64 y (neg.f64 x))
(*.f64 -1 (*.f64 y x))
(*.f64 y (neg.f64 x))
(*.f64 -1 (*.f64 y x))
(*.f64 y (neg.f64 x))
(*.f64 -1 (*.f64 y x))
(*.f64 y (neg.f64 x))
(*.f64 -1 (*.f64 y x))
(*.f64 y (neg.f64 x))
(*.f64 -1 (*.f64 y x))
(*.f64 y (neg.f64 x))
(*.f64 -1 (*.f64 y x))
(*.f64 y (neg.f64 x))
(*.f64 -1 (*.f64 y x))
(*.f64 y (neg.f64 x))
(*.f64 -1 (*.f64 y x))
(*.f64 y (neg.f64 x))
(*.f64 -1 (*.f64 y x))
(*.f64 y (neg.f64 x))
(*.f64 -1 (*.f64 y x))
(*.f64 y (neg.f64 x))
(*.f64 -1 (*.f64 y x))
(*.f64 y (neg.f64 x))
(*.f64 -1 (*.f64 y x))
(*.f64 y (neg.f64 x))
(*.f64 -1 (*.f64 y x))
(*.f64 y (neg.f64 x))
(*.f64 -1 (*.f64 y x))
(*.f64 y (neg.f64 x))
(*.f64 -1 (*.f64 y x))
(*.f64 y (neg.f64 x))
(*.f64 -1 (*.f64 y x))
(*.f64 y (neg.f64 x))
(*.f64 -1 (*.f64 y x))
(*.f64 y (neg.f64 x))
(*.f64 -1 (*.f64 y x))
(*.f64 y (neg.f64 x))
(*.f64 -1 (*.f64 y x))
(*.f64 y (neg.f64 x))
(*.f64 -1 (*.f64 y x))
(*.f64 y (neg.f64 x))
(*.f64 -1 (*.f64 y x))
(*.f64 y (neg.f64 x))
(*.f64 -1 (*.f64 y x))
(*.f64 y (neg.f64 x))
(*.f64 -1 (*.f64 y x))
(*.f64 y (neg.f64 x))
(*.f64 -1 (*.f64 y x))
(*.f64 y (neg.f64 x))
(*.f64 -1 (*.f64 y x))
(*.f64 y (neg.f64 x))
(*.f64 -1 (*.f64 y x))
(*.f64 y (neg.f64 x))
(*.f64 -1 (*.f64 y x))
(*.f64 y (neg.f64 x))
(*.f64 -1 (*.f64 y x))
(*.f64 y (neg.f64 x))
(*.f64 -1 (*.f64 y x))
(*.f64 y (neg.f64 x))
(*.f64 -1 (*.f64 y x))
(*.f64 y (neg.f64 x))
(*.f64 -1 (*.f64 y x))
(*.f64 y (neg.f64 x))
(*.f64 -1 (*.f64 y x))
(*.f64 y (neg.f64 x))
(-.f64 (*.f64 x y) (-.f64 (fma.f64 x y z) z))
(-.f64 (*.f64 y x) (-.f64 (fma.f64 x y z) z))
(-.f64 z (-.f64 (fma.f64 x y z) (*.f64 x y)))
(-.f64 (*.f64 y x) (-.f64 (fma.f64 x y z) z))
(-.f64 (-.f64 z (fma.f64 x y z)) (*.f64 y (neg.f64 x)))
(-.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) 0)
(+.f64 (*.f64 y x) (-.f64 z (fma.f64 x y z)))
(-.f64 0 (-.f64 (fma.f64 x y z) (+.f64 (*.f64 x y) z)))
(+.f64 (*.f64 y x) (-.f64 z (fma.f64 x y z)))
(-.f64 (+.f64 (*.f64 x y) z) (fma.f64 x y z))
(+.f64 (*.f64 y x) (-.f64 z (fma.f64 x y z)))
(-.f64 (neg.f64 (fma.f64 x y z)) (-.f64 (*.f64 y (neg.f64 x)) z))
(-.f64 (-.f64 z (fma.f64 x y z)) (*.f64 y (neg.f64 x)))
(-.f64 (*.f64 (fma.f64 x y z) -1) (*.f64 -1 (+.f64 (*.f64 x y) z)))
(+.f64 (*.f64 y x) (-.f64 z (fma.f64 x y z)))
(-.f64 (*.f64 (*.f64 x y) (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))))) (*.f64 (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z)))) (-.f64 (fma.f64 x y z) z)))
(*.f64 (/.f64 (+.f64 (*.f64 y x) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 y x) (-.f64 z (fma.f64 x y z)))) (-.f64 (*.f64 y x) (-.f64 (fma.f64 x y z) z)))
(*.f64 (-.f64 (*.f64 y x) (-.f64 (fma.f64 x y z) z)) (/.f64 (+.f64 (*.f64 y x) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 y x) (-.f64 z (fma.f64 x y z)))))
(-.f64 (*.f64 0 (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))))) (*.f64 (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z)))) (-.f64 (fma.f64 x y z) (+.f64 (*.f64 x y) z))))
(+.f64 (*.f64 y x) (-.f64 z (fma.f64 x y z)))
(-.f64 (*.f64 (+.f64 (*.f64 x y) z) (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))))) (*.f64 (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z)))) (fma.f64 x y z)))
(+.f64 (*.f64 y x) (-.f64 z (fma.f64 x y z)))
(*.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) 1)
(+.f64 (*.f64 y x) (-.f64 z (fma.f64 x y z)))
(*.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z)))))
(+.f64 (*.f64 y x) (-.f64 z (fma.f64 x y z)))
(*.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (*.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (/.f64 1 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))))))
(+.f64 (*.f64 y x) (-.f64 z (fma.f64 x y z)))
(*.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (*.f64 (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z)))) (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))))))
(+.f64 (*.f64 y x) (-.f64 z (fma.f64 x y z)))
(*.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (*.f64 1 (*.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (/.f64 1 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z)))))))
(+.f64 (*.f64 y x) (-.f64 z (fma.f64 x y z)))
(*.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (*.f64 (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z)))) (*.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (/.f64 1 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z)))))))
(+.f64 (*.f64 y x) (-.f64 z (fma.f64 x y z)))
(*.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (*.f64 (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z)))) (*.f64 (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z)))) (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z)))))))
(+.f64 (*.f64 y x) (-.f64 z (fma.f64 x y z)))
(*.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (*.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (/.f64 (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z)))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))))))
(+.f64 (*.f64 y x) (-.f64 z (fma.f64 x y z)))
(*.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (*.f64 (*.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (/.f64 1 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))))) (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))))))
(+.f64 (*.f64 y x) (-.f64 z (fma.f64 x y z)))
(*.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (*.f64 (*.f64 (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z)))) (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))))) (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))))))
(+.f64 (*.f64 y x) (-.f64 z (fma.f64 x y z)))
(*.f64 1 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))))
(+.f64 (*.f64 y x) (-.f64 z (fma.f64 x y z)))
(*.f64 (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z)))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))))
(+.f64 (*.f64 y x) (-.f64 z (fma.f64 x y z)))
(*.f64 (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z)))) (*.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (/.f64 1 (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z)))))))
(+.f64 (*.f64 y x) (-.f64 z (fma.f64 x y z)))
(*.f64 (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z)))) (*.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (/.f64 (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z)))) (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z)))))))
(+.f64 (*.f64 y x) (-.f64 z (fma.f64 x y z)))
(*.f64 (-.f64 (fma.f64 x y z) (+.f64 (*.f64 x y) z)) -1)
(+.f64 (*.f64 y x) (-.f64 z (fma.f64 x y z)))
(*.f64 (-.f64 (fma.f64 x y z) (+.f64 (*.f64 x y) z)) (neg.f64 (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))))))
(+.f64 (*.f64 y x) (-.f64 z (fma.f64 x y z)))
(*.f64 -1 (-.f64 (fma.f64 x y z) (+.f64 (*.f64 x y) z)))
(+.f64 (*.f64 y x) (-.f64 z (fma.f64 x y z)))
(*.f64 -1 (*.f64 (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z)))) (-.f64 (fma.f64 x y z) (+.f64 (*.f64 x y) z))))
(+.f64 (*.f64 y x) (-.f64 z (fma.f64 x y z)))
(*.f64 (*.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (/.f64 1 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))))
(+.f64 (*.f64 y x) (-.f64 z (fma.f64 x y z)))
(*.f64 (*.f64 (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z)))) (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))))
(+.f64 (*.f64 y x) (-.f64 z (fma.f64 x y z)))
(*.f64 (neg.f64 (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))))) (-.f64 (fma.f64 x y z) (+.f64 (*.f64 x y) z)))
(+.f64 (*.f64 y x) (-.f64 z (fma.f64 x y z)))
(/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) 1)
(+.f64 (*.f64 y x) (-.f64 z (fma.f64 x y z)))
(/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z)))))
(+.f64 (*.f64 y x) (-.f64 z (fma.f64 x y z)))
(/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (/.f64 (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z)))) (/.f64 (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))) (+.f64 (*.f64 x y) (-.f64 z (fma.f64 x y z))))))
(+.f64 (*.f64 y x) (-.f64 z (fma.f64 x y z)))
(/.f64 (-.f64 (fma.f64 x y z) (+.f64 (*.f64 x y) z)) -1)
(+.f64 (*.f64 y x) (-.f64 z (fma.f64 x y z)))
(neg.f64 (-.f64 (fma.f64 x y z) (+.f64 (*.f64 x y) z)))
(+.f64 (*.f64 y x) (-.f64 z (fma.f64 x y z)))
(+.f64 z (neg.f64 (fma.f64 x y z)))
(-.f64 z (fma.f64 x y z))
(+.f64 z (*.f64 1 (neg.f64 (fma.f64 x y z))))
(+.f64 z (neg.f64 (fma.f64 x y z)))
(-.f64 z (fma.f64 x y z))
(+.f64 z (*.f64 (fma.f64 x y z) -1))
(+.f64 z (neg.f64 (fma.f64 x y z)))
(-.f64 z (fma.f64 x y z))
(+.f64 (-.f64 z (fma.f64 x y z)) 0)
(+.f64 z (neg.f64 (fma.f64 x y z)))
(-.f64 z (fma.f64 x y z))
(+.f64 (-.f64 z (fma.f64 x y z)) (*.f64 0 (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z)))))
(+.f64 z (neg.f64 (fma.f64 x y z)))
(-.f64 z (fma.f64 x y z))
(+.f64 0 (-.f64 z (fma.f64 x y z)))
(+.f64 z (neg.f64 (fma.f64 x y z)))
(-.f64 z (fma.f64 x y z))
(+.f64 (neg.f64 (fma.f64 x y z)) z)
(+.f64 z (neg.f64 (fma.f64 x y z)))
(-.f64 z (fma.f64 x y z))
(+.f64 (*.f64 1 (neg.f64 (fma.f64 x y z))) z)
(+.f64 z (neg.f64 (fma.f64 x y z)))
(-.f64 z (fma.f64 x y z))
(+.f64 (*.f64 z (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z)))) (*.f64 (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z))) (neg.f64 (fma.f64 x y z))))
(+.f64 z (neg.f64 (fma.f64 x y z)))
(-.f64 z (fma.f64 x y z))
(+.f64 (*.f64 0 (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z)))) (-.f64 z (fma.f64 x y z)))
(+.f64 z (neg.f64 (fma.f64 x y z)))
(-.f64 z (fma.f64 x y z))
(+.f64 (*.f64 (fma.f64 x y z) -1) z)
(+.f64 z (neg.f64 (fma.f64 x y z)))
(-.f64 z (fma.f64 x y z))
(+.f64 (*.f64 (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z))) (neg.f64 (fma.f64 x y z))) (*.f64 z (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z)))))
(+.f64 z (neg.f64 (fma.f64 x y z)))
(-.f64 z (fma.f64 x y z))
(*.f64 (-.f64 z (fma.f64 x y z)) 1)
(+.f64 z (neg.f64 (fma.f64 x y z)))
(-.f64 z (fma.f64 x y z))
(*.f64 (-.f64 z (fma.f64 x y z)) (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z))))
(+.f64 z (neg.f64 (fma.f64 x y z)))
(-.f64 z (fma.f64 x y z))
(*.f64 (-.f64 z (fma.f64 x y z)) (*.f64 (-.f64 z (fma.f64 x y z)) (/.f64 1 (-.f64 z (fma.f64 x y z)))))
(+.f64 z (neg.f64 (fma.f64 x y z)))
(-.f64 z (fma.f64 x y z))
(*.f64 (-.f64 z (fma.f64 x y z)) (*.f64 (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z))) (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z)))))
(+.f64 z (neg.f64 (fma.f64 x y z)))
(-.f64 z (fma.f64 x y z))
(*.f64 (-.f64 z (fma.f64 x y z)) (*.f64 1 (*.f64 (-.f64 z (fma.f64 x y z)) (/.f64 1 (-.f64 z (fma.f64 x y z))))))
(+.f64 z (neg.f64 (fma.f64 x y z)))
(-.f64 z (fma.f64 x y z))
(*.f64 (-.f64 z (fma.f64 x y z)) (*.f64 (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z))) (*.f64 (-.f64 z (fma.f64 x y z)) (/.f64 1 (-.f64 z (fma.f64 x y z))))))
(+.f64 z (neg.f64 (fma.f64 x y z)))
(-.f64 z (fma.f64 x y z))
(*.f64 (-.f64 z (fma.f64 x y z)) (*.f64 (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z))) (*.f64 (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z))) (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z))))))
(+.f64 z (neg.f64 (fma.f64 x y z)))
(-.f64 z (fma.f64 x y z))
(*.f64 (-.f64 z (fma.f64 x y z)) (*.f64 (-.f64 z (fma.f64 x y z)) (/.f64 (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z))) (-.f64 z (fma.f64 x y z)))))
(+.f64 z (neg.f64 (fma.f64 x y z)))
(-.f64 z (fma.f64 x y z))
(*.f64 (-.f64 z (fma.f64 x y z)) (*.f64 (*.f64 (-.f64 z (fma.f64 x y z)) (/.f64 1 (-.f64 z (fma.f64 x y z)))) (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z)))))
(+.f64 z (neg.f64 (fma.f64 x y z)))
(-.f64 z (fma.f64 x y z))
(*.f64 (-.f64 z (fma.f64 x y z)) (*.f64 (*.f64 (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z))) (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z)))) (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z)))))
(+.f64 z (neg.f64 (fma.f64 x y z)))
(-.f64 z (fma.f64 x y z))
(*.f64 1 (-.f64 z (fma.f64 x y z)))
(+.f64 z (neg.f64 (fma.f64 x y z)))
(-.f64 z (fma.f64 x y z))
(*.f64 (-.f64 (fma.f64 x y z) z) -1)
(+.f64 z (neg.f64 (fma.f64 x y z)))
(-.f64 z (fma.f64 x y z))
(*.f64 (-.f64 (fma.f64 x y z) z) (neg.f64 (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z)))))
(+.f64 z (neg.f64 (fma.f64 x y z)))
(-.f64 z (fma.f64 x y z))
(*.f64 (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z))) (-.f64 z (fma.f64 x y z)))
(+.f64 z (neg.f64 (fma.f64 x y z)))
(-.f64 z (fma.f64 x y z))
(*.f64 (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z))) (*.f64 (-.f64 z (fma.f64 x y z)) (/.f64 1 (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z))))))
(+.f64 z (neg.f64 (fma.f64 x y z)))
(-.f64 z (fma.f64 x y z))
(*.f64 (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z))) (*.f64 (-.f64 z (fma.f64 x y z)) (/.f64 (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z))) (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z))))))
(+.f64 z (neg.f64 (fma.f64 x y z)))
(-.f64 z (fma.f64 x y z))
(*.f64 -1 (-.f64 (fma.f64 x y z) z))
(+.f64 z (neg.f64 (fma.f64 x y z)))
(-.f64 z (fma.f64 x y z))
(*.f64 -1 (*.f64 (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z))) (-.f64 (fma.f64 x y z) z)))
(+.f64 z (neg.f64 (fma.f64 x y z)))
(-.f64 z (fma.f64 x y z))
(*.f64 (*.f64 (-.f64 z (fma.f64 x y z)) (/.f64 1 (-.f64 z (fma.f64 x y z)))) (-.f64 z (fma.f64 x y z)))
(+.f64 z (neg.f64 (fma.f64 x y z)))
(-.f64 z (fma.f64 x y z))
(*.f64 (*.f64 (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z))) (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z)))) (-.f64 z (fma.f64 x y z)))
(+.f64 z (neg.f64 (fma.f64 x y z)))
(-.f64 z (fma.f64 x y z))
(*.f64 (neg.f64 (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z)))) (-.f64 (fma.f64 x y z) z))
(+.f64 z (neg.f64 (fma.f64 x y z)))
(-.f64 z (fma.f64 x y z))
(/.f64 (-.f64 z (fma.f64 x y z)) 1)
(+.f64 z (neg.f64 (fma.f64 x y z)))
(-.f64 z (fma.f64 x y z))
(/.f64 (-.f64 z (fma.f64 x y z)) (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z))))
(+.f64 z (neg.f64 (fma.f64 x y z)))
(-.f64 z (fma.f64 x y z))
(/.f64 (-.f64 z (fma.f64 x y z)) (/.f64 (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z))) (/.f64 (-.f64 z (fma.f64 x y z)) (-.f64 z (fma.f64 x y z)))))
(+.f64 z (neg.f64 (fma.f64 x y z)))
(-.f64 z (fma.f64 x y z))
(/.f64 (-.f64 (fma.f64 x y z) z) -1)
(+.f64 z (neg.f64 (fma.f64 x y z)))
(-.f64 z (fma.f64 x y z))
(neg.f64 (-.f64 (fma.f64 x y z) z))
(+.f64 z (neg.f64 (fma.f64 x y z)))
(-.f64 z (fma.f64 x y z))

localize15.0ms (0.5%)

Local error

Found 2 expressions with local error:

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

Compiled 36 to 15 computations (58.3% saved)

series1.0ms (0%)

Counts
2 → 72
Calls

18 calls:

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

rewrite78.0ms (2.4%)

Algorithm
batch-egg-rewrite
Rules
2048×rational_best_oopsla_all_46_json-2
2048×rational_best_oopsla_all_46_json-1
2048×rational_best_oopsla_all_46_json-4
2048×rational_best_oopsla_all_46_json-3
864×rational_best_oopsla_all_46_json_45_simplify-7
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01252
17252
220152
380252
4397452
Stop Event
node limit
Counts
2 → 86
Calls
Call 1
Inputs
(-.f64 (fma.f64 x y z) (+.f64 (*.f64 x y) (+.f64 z 1)))
(+.f64 (*.f64 x y) (+.f64 z 1))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x y z) (*.f64 1 (-.f64 -1 (+.f64 z (*.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x y z) (*.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) -1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (*.f64 (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y))))) 0))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (*.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) 0))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (*.f64 0 (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 -1 (+.f64 z (*.f64 x y))) (fma.f64 x y z))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1 (-.f64 -1 (+.f64 z (*.f64 x y)))) (fma.f64 x y z))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y))))) 0) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) 0) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) -1) (fma.f64 x y z))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (+.f64 z 1) -1) (*.f64 -1 (-.f64 (*.f64 x y) (fma.f64 x y z))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (fma.f64 x y z) (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))))) (*.f64 (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y))))) (-.f64 -1 (+.f64 z (*.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 0 (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 z -1) (*.f64 -1 (+.f64 (*.f64 x y) (-.f64 1 (fma.f64 x y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 -1 (+.f64 (*.f64 x y) (-.f64 1 (fma.f64 x y z)))) (*.f64 z -1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 x y) -1) (*.f64 -1 (+.f64 1 (-.f64 z (fma.f64 x y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 -1 (+.f64 1 (-.f64 z (fma.f64 x y z)))) (*.f64 (*.f64 x y) -1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 -1 (-.f64 (*.f64 x y) (fma.f64 x y z))) (*.f64 (+.f64 z 1) -1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (+.f64 (*.f64 x y) 1) -1) (*.f64 -1 (-.f64 z (fma.f64 x y z))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 -1 (-.f64 z (fma.f64 x y z))) (*.f64 (+.f64 (*.f64 x y) 1) -1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (+.f64 z (*.f64 x y)) -1) (*.f64 -1 (-.f64 1 (fma.f64 x y z))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 -1 (-.f64 1 (fma.f64 x y z))) (*.f64 (+.f64 z (*.f64 x y)) -1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y))))) (-.f64 -1 (+.f64 z (*.f64 x y)))) (*.f64 (fma.f64 x y z) (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (*.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (/.f64 1 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (*.f64 (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y))))) (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (*.f64 1 (*.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (/.f64 1 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y))))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (*.f64 (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y))))) (*.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (/.f64 1 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y))))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (*.f64 (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y))))) (*.f64 (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y))))) (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y))))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (*.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (/.f64 (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y))))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (*.f64 (*.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (/.f64 1 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))))) (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (*.f64 (*.f64 (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y))))) (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))))) (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (+.f64 (+.f64 (*.f64 x y) 1) (-.f64 z (fma.f64 x y z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (*.f64 (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y))))) (+.f64 (+.f64 (*.f64 x y) 1) (-.f64 z (fma.f64 x y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y))))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y))))) (*.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (/.f64 1 (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y))))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y))))) (*.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (/.f64 (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y))))) (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y))))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (+.f64 (*.f64 x y) 1) (-.f64 z (fma.f64 x y z))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (+.f64 (*.f64 x y) 1) (-.f64 z (fma.f64 x y z))) (neg.f64 (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (/.f64 1 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y))))) (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))))) (+.f64 (+.f64 (*.f64 x y) 1) (-.f64 z (fma.f64 x y z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (/.f64 (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y))))) (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (+.f64 (*.f64 x y) 1) (-.f64 z (fma.f64 x y z))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (+.f64 (+.f64 (*.f64 x y) 1) (-.f64 z (fma.f64 x y z))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 1 (*.f64 -1 (+.f64 z (*.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 z 1) (*.f64 x (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (*.f64 (/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (+.f64 z (+.f64 (*.f64 x y) 1))) 0))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (*.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) 0))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (*.f64 -1 (+.f64 z (+.f64 (*.f64 x y) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 z (*.f64 x y)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (+.f64 z (*.f64 x y)) (/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (+.f64 z (+.f64 (*.f64 x y) 1)))) (*.f64 (/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (+.f64 z (+.f64 (*.f64 x y) 1))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 z (+.f64 (*.f64 x y) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (+.f64 z (+.f64 (*.f64 x y) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (*.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (/.f64 1 (+.f64 z (+.f64 (*.f64 x y) 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (*.f64 (/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (+.f64 z (+.f64 (*.f64 x y) 1))) (/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (+.f64 z (+.f64 (*.f64 x y) 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (*.f64 1 (*.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (/.f64 1 (+.f64 z (+.f64 (*.f64 x y) 1))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (*.f64 (/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (+.f64 z (+.f64 (*.f64 x y) 1))) (*.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (/.f64 1 (+.f64 z (+.f64 (*.f64 x y) 1))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (*.f64 (/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (+.f64 z (+.f64 (*.f64 x y) 1))) (*.f64 (/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (+.f64 z (+.f64 (*.f64 x y) 1))) (/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (+.f64 z (+.f64 (*.f64 x y) 1))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (*.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (/.f64 (/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (+.f64 z (+.f64 (*.f64 x y) 1))) (+.f64 z (+.f64 (*.f64 x y) 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (*.f64 (*.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (/.f64 1 (+.f64 z (+.f64 (*.f64 x y) 1)))) (/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (+.f64 z (+.f64 (*.f64 x y) 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (*.f64 (*.f64 (/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (+.f64 z (+.f64 (*.f64 x y) 1))) (/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (+.f64 z (+.f64 (*.f64 x y) 1)))) (/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (+.f64 z (+.f64 (*.f64 x y) 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (-.f64 -1 (+.f64 z (*.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (*.f64 1 (-.f64 -1 (+.f64 z (*.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (*.f64 (/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (+.f64 z (+.f64 (*.f64 x y) 1))) (-.f64 -1 (+.f64 z (*.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (+.f64 z (+.f64 (*.f64 x y) 1))) (+.f64 z (+.f64 (*.f64 x y) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (+.f64 z (+.f64 (*.f64 x y) 1))) (*.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (/.f64 1 (/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (+.f64 z (+.f64 (*.f64 x y) 1))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (+.f64 z (+.f64 (*.f64 x y) 1))) (*.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (/.f64 (/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (+.f64 z (+.f64 (*.f64 x y) 1))) (/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (+.f64 z (+.f64 (*.f64 x y) 1))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (/.f64 1 (+.f64 z (+.f64 (*.f64 x y) 1)))) (+.f64 z (+.f64 (*.f64 x y) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 -1 (+.f64 z (*.f64 x y))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 -1 (+.f64 z (*.f64 x y))) (neg.f64 (/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (+.f64 z (+.f64 (*.f64 x y) 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (+.f64 z (+.f64 (*.f64 x y) 1))) (/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (+.f64 z (+.f64 (*.f64 x y) 1)))) (+.f64 z (+.f64 (*.f64 x y) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (+.f64 z (+.f64 (*.f64 x y) 1)))) (-.f64 -1 (+.f64 z (*.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (+.f64 z (+.f64 (*.f64 x y) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (/.f64 (/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (+.f64 z (+.f64 (*.f64 x y) 1))) (/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (+.f64 z (+.f64 (*.f64 x y) 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 -1 (+.f64 z (+.f64 (*.f64 x y) 1))))))))

simplify89.0ms (2.7%)

Algorithm
egg-herbie
Rules
1054×rational_best_oopsla_all_46_json_45_simplify-72
1010×rational_best_oopsla_all_46_json_45_simplify-49
910×rational_best_oopsla_all_46_json_45_simplify-35
778×rational_best_oopsla_all_46_json_45_simplify-23
650×rational_best_oopsla_all_46_json_45_simplify-37
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01733074
16782972
243802972
Stop Event
node limit
Counts
158 → 101
Calls
Call 1
Inputs
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
(+.f64 1 z)
(+.f64 1 (+.f64 (*.f64 y x) z))
(+.f64 1 (+.f64 (*.f64 y x) z))
(+.f64 1 (+.f64 (*.f64 y x) z))
(*.f64 y x)
(+.f64 1 (+.f64 (*.f64 y x) z))
(+.f64 1 (+.f64 (*.f64 y x) z))
(+.f64 1 (+.f64 (*.f64 y x) z))
(*.f64 y x)
(+.f64 1 (+.f64 (*.f64 y x) z))
(+.f64 1 (+.f64 (*.f64 y x) z))
(+.f64 1 (+.f64 (*.f64 y x) z))
(+.f64 1 z)
(+.f64 1 (+.f64 (*.f64 y x) z))
(+.f64 1 (+.f64 (*.f64 y x) z))
(+.f64 1 (+.f64 (*.f64 y x) z))
(*.f64 y x)
(+.f64 1 (+.f64 (*.f64 y x) z))
(+.f64 1 (+.f64 (*.f64 y x) z))
(+.f64 1 (+.f64 (*.f64 y x) z))
(*.f64 y x)
(+.f64 1 (+.f64 (*.f64 y x) z))
(+.f64 1 (+.f64 (*.f64 y x) z))
(+.f64 1 (+.f64 (*.f64 y x) z))
(+.f64 1 (*.f64 y x))
(+.f64 1 (+.f64 (*.f64 y x) z))
(+.f64 1 (+.f64 (*.f64 y x) z))
(+.f64 1 (+.f64 (*.f64 y x) z))
z
(+.f64 1 (+.f64 (*.f64 y x) z))
(+.f64 1 (+.f64 (*.f64 y x) z))
(+.f64 1 (+.f64 (*.f64 y x) z))
z
(+.f64 1 (+.f64 (*.f64 y x) z))
(+.f64 1 (+.f64 (*.f64 y x) z))
(+.f64 1 (+.f64 (*.f64 y x) z))
(+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y))))
(+.f64 (fma.f64 x y z) (*.f64 1 (-.f64 -1 (+.f64 z (*.f64 x y)))))
(+.f64 (fma.f64 x y z) (*.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) -1))
(+.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) 0)
(+.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (*.f64 (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y))))) 0))
(+.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (*.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) 0))
(+.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (*.f64 0 (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))))))
(+.f64 0 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))))
(+.f64 (-.f64 -1 (+.f64 z (*.f64 x y))) (fma.f64 x y z))
(+.f64 (*.f64 1 (-.f64 -1 (+.f64 z (*.f64 x y)))) (fma.f64 x y z))
(+.f64 (*.f64 (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y))))) 0) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))))
(+.f64 (*.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) 0) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))))
(+.f64 (*.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) -1) (fma.f64 x y z))
(+.f64 (*.f64 (+.f64 z 1) -1) (*.f64 -1 (-.f64 (*.f64 x y) (fma.f64 x y z))))
(+.f64 (*.f64 (fma.f64 x y z) (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))))) (*.f64 (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y))))) (-.f64 -1 (+.f64 z (*.f64 x y)))))
(+.f64 (*.f64 0 (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))))
(+.f64 (*.f64 z -1) (*.f64 -1 (+.f64 (*.f64 x y) (-.f64 1 (fma.f64 x y z)))))
(+.f64 (*.f64 -1 (+.f64 (*.f64 x y) (-.f64 1 (fma.f64 x y z)))) (*.f64 z -1))
(+.f64 (*.f64 (*.f64 x y) -1) (*.f64 -1 (+.f64 1 (-.f64 z (fma.f64 x y z)))))
(+.f64 (*.f64 -1 (+.f64 1 (-.f64 z (fma.f64 x y z)))) (*.f64 (*.f64 x y) -1))
(+.f64 (*.f64 -1 (-.f64 (*.f64 x y) (fma.f64 x y z))) (*.f64 (+.f64 z 1) -1))
(+.f64 (*.f64 (+.f64 (*.f64 x y) 1) -1) (*.f64 -1 (-.f64 z (fma.f64 x y z))))
(+.f64 (*.f64 -1 (-.f64 z (fma.f64 x y z))) (*.f64 (+.f64 (*.f64 x y) 1) -1))
(+.f64 (*.f64 (+.f64 z (*.f64 x y)) -1) (*.f64 -1 (-.f64 1 (fma.f64 x y z))))
(+.f64 (*.f64 -1 (-.f64 1 (fma.f64 x y z))) (*.f64 (+.f64 z (*.f64 x y)) -1))
(+.f64 (*.f64 (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y))))) (-.f64 -1 (+.f64 z (*.f64 x y)))) (*.f64 (fma.f64 x y z) (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))))))
(*.f64 1 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))))
(*.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) 1)
(*.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y))))))
(*.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (*.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (/.f64 1 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))))))
(*.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (*.f64 (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y))))) (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))))))
(*.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (*.f64 1 (*.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (/.f64 1 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y))))))))
(*.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (*.f64 (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y))))) (*.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (/.f64 1 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y))))))))
(*.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (*.f64 (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y))))) (*.f64 (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y))))) (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y))))))))
(*.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (*.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (/.f64 (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y))))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))))))
(*.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (*.f64 (*.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (/.f64 1 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))))) (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))))))
(*.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (*.f64 (*.f64 (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y))))) (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))))) (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))))))
(*.f64 -1 (+.f64 (+.f64 (*.f64 x y) 1) (-.f64 z (fma.f64 x y z))))
(*.f64 -1 (*.f64 (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y))))) (+.f64 (+.f64 (*.f64 x y) 1) (-.f64 z (fma.f64 x y z)))))
(*.f64 (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y))))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))))
(*.f64 (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y))))) (*.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (/.f64 1 (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y))))))))
(*.f64 (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y))))) (*.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (/.f64 (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y))))) (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y))))))))
(*.f64 (+.f64 (+.f64 (*.f64 x y) 1) (-.f64 z (fma.f64 x y z))) -1)
(*.f64 (+.f64 (+.f64 (*.f64 x y) 1) (-.f64 z (fma.f64 x y z))) (neg.f64 (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))))))
(*.f64 (*.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (/.f64 1 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))))
(*.f64 (*.f64 (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y))))) (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))))
(*.f64 (neg.f64 (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))))) (+.f64 (+.f64 (*.f64 x y) 1) (-.f64 z (fma.f64 x y z))))
(/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) 1)
(/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y))))))
(/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (/.f64 (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y))))) (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))))))
(/.f64 (+.f64 (+.f64 (*.f64 x y) 1) (-.f64 z (fma.f64 x y z))) -1)
(neg.f64 (+.f64 (+.f64 (*.f64 x y) 1) (-.f64 z (fma.f64 x y z))))
(-.f64 1 (*.f64 -1 (+.f64 z (*.f64 x y))))
(-.f64 (+.f64 z 1) (*.f64 x (neg.f64 y)))
(-.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) 0)
(-.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (*.f64 (/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (+.f64 z (+.f64 (*.f64 x y) 1))) 0))
(-.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (*.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) 0))
(-.f64 0 (*.f64 -1 (+.f64 z (+.f64 (*.f64 x y) 1))))
(-.f64 (+.f64 z (*.f64 x y)) -1)
(-.f64 (*.f64 (+.f64 z (*.f64 x y)) (/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (+.f64 z (+.f64 (*.f64 x y) 1)))) (*.f64 (/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (+.f64 z (+.f64 (*.f64 x y) 1))) -1))
(*.f64 1 (+.f64 z (+.f64 (*.f64 x y) 1)))
(*.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) 1)
(*.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (+.f64 z (+.f64 (*.f64 x y) 1))))
(*.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (*.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (/.f64 1 (+.f64 z (+.f64 (*.f64 x y) 1)))))
(*.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (*.f64 (/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (+.f64 z (+.f64 (*.f64 x y) 1))) (/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (+.f64 z (+.f64 (*.f64 x y) 1)))))
(*.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (*.f64 1 (*.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (/.f64 1 (+.f64 z (+.f64 (*.f64 x y) 1))))))
(*.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (*.f64 (/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (+.f64 z (+.f64 (*.f64 x y) 1))) (*.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (/.f64 1 (+.f64 z (+.f64 (*.f64 x y) 1))))))
(*.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (*.f64 (/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (+.f64 z (+.f64 (*.f64 x y) 1))) (*.f64 (/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (+.f64 z (+.f64 (*.f64 x y) 1))) (/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (+.f64 z (+.f64 (*.f64 x y) 1))))))
(*.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (*.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (/.f64 (/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (+.f64 z (+.f64 (*.f64 x y) 1))) (+.f64 z (+.f64 (*.f64 x y) 1)))))
(*.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (*.f64 (*.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (/.f64 1 (+.f64 z (+.f64 (*.f64 x y) 1)))) (/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (+.f64 z (+.f64 (*.f64 x y) 1)))))
(*.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (*.f64 (*.f64 (/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (+.f64 z (+.f64 (*.f64 x y) 1))) (/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (+.f64 z (+.f64 (*.f64 x y) 1)))) (/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (+.f64 z (+.f64 (*.f64 x y) 1)))))
(*.f64 -1 (-.f64 -1 (+.f64 z (*.f64 x y))))
(*.f64 -1 (*.f64 1 (-.f64 -1 (+.f64 z (*.f64 x y)))))
(*.f64 -1 (*.f64 (/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (+.f64 z (+.f64 (*.f64 x y) 1))) (-.f64 -1 (+.f64 z (*.f64 x y)))))
(*.f64 (/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (+.f64 z (+.f64 (*.f64 x y) 1))) (+.f64 z (+.f64 (*.f64 x y) 1)))
(*.f64 (/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (+.f64 z (+.f64 (*.f64 x y) 1))) (*.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (/.f64 1 (/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (+.f64 z (+.f64 (*.f64 x y) 1))))))
(*.f64 (/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (+.f64 z (+.f64 (*.f64 x y) 1))) (*.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (/.f64 (/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (+.f64 z (+.f64 (*.f64 x y) 1))) (/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (+.f64 z (+.f64 (*.f64 x y) 1))))))
(*.f64 (*.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (/.f64 1 (+.f64 z (+.f64 (*.f64 x y) 1)))) (+.f64 z (+.f64 (*.f64 x y) 1)))
(*.f64 (-.f64 -1 (+.f64 z (*.f64 x y))) -1)
(*.f64 (-.f64 -1 (+.f64 z (*.f64 x y))) (neg.f64 (/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (+.f64 z (+.f64 (*.f64 x y) 1)))))
(*.f64 (*.f64 (/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (+.f64 z (+.f64 (*.f64 x y) 1))) (/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (+.f64 z (+.f64 (*.f64 x y) 1)))) (+.f64 z (+.f64 (*.f64 x y) 1)))
(*.f64 (neg.f64 (/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (+.f64 z (+.f64 (*.f64 x y) 1)))) (-.f64 -1 (+.f64 z (*.f64 x y))))
(/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) 1)
(/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (+.f64 z (+.f64 (*.f64 x y) 1))))
(/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (/.f64 (/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (+.f64 z (+.f64 (*.f64 x y) 1))) (/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (+.f64 z (+.f64 (*.f64 x y) 1)))))
(neg.f64 (*.f64 -1 (+.f64 z (+.f64 (*.f64 x y) 1))))
Outputs
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
(+.f64 1 z)
(+.f64 1 (+.f64 (*.f64 y x) z))
(+.f64 1 (+.f64 z (*.f64 y x)))
(+.f64 (*.f64 y x) (+.f64 1 z))
(+.f64 1 (+.f64 (*.f64 y x) z))
(+.f64 1 (+.f64 z (*.f64 y x)))
(+.f64 (*.f64 y x) (+.f64 1 z))
(+.f64 1 (+.f64 (*.f64 y x) z))
(+.f64 1 (+.f64 z (*.f64 y x)))
(+.f64 (*.f64 y x) (+.f64 1 z))
(*.f64 y x)
(+.f64 1 (+.f64 (*.f64 y x) z))
(+.f64 1 (+.f64 z (*.f64 y x)))
(+.f64 (*.f64 y x) (+.f64 1 z))
(+.f64 1 (+.f64 (*.f64 y x) z))
(+.f64 1 (+.f64 z (*.f64 y x)))
(+.f64 (*.f64 y x) (+.f64 1 z))
(+.f64 1 (+.f64 (*.f64 y x) z))
(+.f64 1 (+.f64 z (*.f64 y x)))
(+.f64 (*.f64 y x) (+.f64 1 z))
(*.f64 y x)
(+.f64 1 (+.f64 (*.f64 y x) z))
(+.f64 1 (+.f64 z (*.f64 y x)))
(+.f64 (*.f64 y x) (+.f64 1 z))
(+.f64 1 (+.f64 (*.f64 y x) z))
(+.f64 1 (+.f64 z (*.f64 y x)))
(+.f64 (*.f64 y x) (+.f64 1 z))
(+.f64 1 (+.f64 (*.f64 y x) z))
(+.f64 1 (+.f64 z (*.f64 y x)))
(+.f64 (*.f64 y x) (+.f64 1 z))
(+.f64 1 z)
(+.f64 1 (+.f64 (*.f64 y x) z))
(+.f64 1 (+.f64 z (*.f64 y x)))
(+.f64 (*.f64 y x) (+.f64 1 z))
(+.f64 1 (+.f64 (*.f64 y x) z))
(+.f64 1 (+.f64 z (*.f64 y x)))
(+.f64 (*.f64 y x) (+.f64 1 z))
(+.f64 1 (+.f64 (*.f64 y x) z))
(+.f64 1 (+.f64 z (*.f64 y x)))
(+.f64 (*.f64 y x) (+.f64 1 z))
(*.f64 y x)
(+.f64 1 (+.f64 (*.f64 y x) z))
(+.f64 1 (+.f64 z (*.f64 y x)))
(+.f64 (*.f64 y x) (+.f64 1 z))
(+.f64 1 (+.f64 (*.f64 y x) z))
(+.f64 1 (+.f64 z (*.f64 y x)))
(+.f64 (*.f64 y x) (+.f64 1 z))
(+.f64 1 (+.f64 (*.f64 y x) z))
(+.f64 1 (+.f64 z (*.f64 y x)))
(+.f64 (*.f64 y x) (+.f64 1 z))
(*.f64 y x)
(+.f64 1 (+.f64 (*.f64 y x) z))
(+.f64 1 (+.f64 z (*.f64 y x)))
(+.f64 (*.f64 y x) (+.f64 1 z))
(+.f64 1 (+.f64 (*.f64 y x) z))
(+.f64 1 (+.f64 z (*.f64 y x)))
(+.f64 (*.f64 y x) (+.f64 1 z))
(+.f64 1 (+.f64 (*.f64 y x) z))
(+.f64 1 (+.f64 z (*.f64 y x)))
(+.f64 (*.f64 y x) (+.f64 1 z))
(+.f64 1 (*.f64 y x))
(+.f64 1 (+.f64 (*.f64 y x) z))
(+.f64 1 (+.f64 z (*.f64 y x)))
(+.f64 (*.f64 y x) (+.f64 1 z))
(+.f64 1 (+.f64 (*.f64 y x) z))
(+.f64 1 (+.f64 z (*.f64 y x)))
(+.f64 (*.f64 y x) (+.f64 1 z))
(+.f64 1 (+.f64 (*.f64 y x) z))
(+.f64 1 (+.f64 z (*.f64 y x)))
(+.f64 (*.f64 y x) (+.f64 1 z))
z
(+.f64 1 (+.f64 (*.f64 y x) z))
(+.f64 1 (+.f64 z (*.f64 y x)))
(+.f64 (*.f64 y x) (+.f64 1 z))
(+.f64 1 (+.f64 (*.f64 y x) z))
(+.f64 1 (+.f64 z (*.f64 y x)))
(+.f64 (*.f64 y x) (+.f64 1 z))
(+.f64 1 (+.f64 (*.f64 y x) z))
(+.f64 1 (+.f64 z (*.f64 y x)))
(+.f64 (*.f64 y x) (+.f64 1 z))
z
(+.f64 1 (+.f64 (*.f64 y x) z))
(+.f64 1 (+.f64 z (*.f64 y x)))
(+.f64 (*.f64 y x) (+.f64 1 z))
(+.f64 1 (+.f64 (*.f64 y x) z))
(+.f64 1 (+.f64 z (*.f64 y x)))
(+.f64 (*.f64 y x) (+.f64 1 z))
(+.f64 1 (+.f64 (*.f64 y x) z))
(+.f64 1 (+.f64 z (*.f64 y x)))
(+.f64 (*.f64 y x) (+.f64 1 z))
(+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y))))
(+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 y x))))
(-.f64 (+.f64 -1 (fma.f64 x y z)) (+.f64 z (*.f64 y x)))
(+.f64 (fma.f64 x y z) (*.f64 1 (-.f64 -1 (+.f64 z (*.f64 x y)))))
(+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 y x))))
(-.f64 (+.f64 -1 (fma.f64 x y z)) (+.f64 z (*.f64 y x)))
(+.f64 (fma.f64 x y z) (*.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) -1))
(+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 y x))))
(-.f64 (+.f64 -1 (fma.f64 x y z)) (+.f64 z (*.f64 y x)))
(+.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) 0)
(+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 y x))))
(-.f64 (+.f64 -1 (fma.f64 x y z)) (+.f64 z (*.f64 y x)))
(+.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (*.f64 (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y))))) 0))
(+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 y x))))
(-.f64 (+.f64 -1 (fma.f64 x y z)) (+.f64 z (*.f64 y x)))
(+.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (*.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) 0))
(+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 y x))))
(-.f64 (+.f64 -1 (fma.f64 x y z)) (+.f64 z (*.f64 y x)))
(+.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (*.f64 0 (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))))))
(+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 y x))))
(-.f64 (+.f64 -1 (fma.f64 x y z)) (+.f64 z (*.f64 y x)))
(+.f64 0 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))))
(+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 y x))))
(-.f64 (+.f64 -1 (fma.f64 x y z)) (+.f64 z (*.f64 y x)))
(+.f64 (-.f64 -1 (+.f64 z (*.f64 x y))) (fma.f64 x y z))
(+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 y x))))
(-.f64 (+.f64 -1 (fma.f64 x y z)) (+.f64 z (*.f64 y x)))
(+.f64 (*.f64 1 (-.f64 -1 (+.f64 z (*.f64 x y)))) (fma.f64 x y z))
(+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 y x))))
(-.f64 (+.f64 -1 (fma.f64 x y z)) (+.f64 z (*.f64 y x)))
(+.f64 (*.f64 (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y))))) 0) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))))
(+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 y x))))
(-.f64 (+.f64 -1 (fma.f64 x y z)) (+.f64 z (*.f64 y x)))
(+.f64 (*.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) 0) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))))
(+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 y x))))
(-.f64 (+.f64 -1 (fma.f64 x y z)) (+.f64 z (*.f64 y x)))
(+.f64 (*.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) -1) (fma.f64 x y z))
(+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 y x))))
(-.f64 (+.f64 -1 (fma.f64 x y z)) (+.f64 z (*.f64 y x)))
(+.f64 (*.f64 (+.f64 z 1) -1) (*.f64 -1 (-.f64 (*.f64 x y) (fma.f64 x y z))))
(*.f64 -1 (+.f64 (+.f64 1 z) (-.f64 (*.f64 y x) (fma.f64 x y z))))
(-.f64 (fma.f64 x y z) (+.f64 (*.f64 y x) (+.f64 1 z)))
(+.f64 (-.f64 -1 z) (-.f64 (fma.f64 x y z) (*.f64 y x)))
(+.f64 (*.f64 (fma.f64 x y z) (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))))) (*.f64 (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y))))) (-.f64 -1 (+.f64 z (*.f64 x y)))))
(+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 y x))))
(-.f64 (+.f64 -1 (fma.f64 x y z)) (+.f64 z (*.f64 y x)))
(+.f64 (*.f64 0 (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))))
(+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 y x))))
(-.f64 (+.f64 -1 (fma.f64 x y z)) (+.f64 z (*.f64 y x)))
(+.f64 (*.f64 z -1) (*.f64 -1 (+.f64 (*.f64 x y) (-.f64 1 (fma.f64 x y z)))))
(*.f64 -1 (+.f64 (+.f64 1 z) (-.f64 (*.f64 y x) (fma.f64 x y z))))
(-.f64 (fma.f64 x y z) (+.f64 (*.f64 y x) (+.f64 1 z)))
(+.f64 (-.f64 -1 z) (-.f64 (fma.f64 x y z) (*.f64 y x)))
(+.f64 (*.f64 -1 (+.f64 (*.f64 x y) (-.f64 1 (fma.f64 x y z)))) (*.f64 z -1))
(*.f64 -1 (+.f64 (+.f64 1 z) (-.f64 (*.f64 y x) (fma.f64 x y z))))
(-.f64 (fma.f64 x y z) (+.f64 (*.f64 y x) (+.f64 1 z)))
(+.f64 (-.f64 -1 z) (-.f64 (fma.f64 x y z) (*.f64 y x)))
(+.f64 (*.f64 (*.f64 x y) -1) (*.f64 -1 (+.f64 1 (-.f64 z (fma.f64 x y z)))))
(*.f64 -1 (+.f64 (+.f64 1 z) (-.f64 (*.f64 y x) (fma.f64 x y z))))
(-.f64 (fma.f64 x y z) (+.f64 (*.f64 y x) (+.f64 1 z)))
(+.f64 (-.f64 -1 z) (-.f64 (fma.f64 x y z) (*.f64 y x)))
(+.f64 (*.f64 -1 (+.f64 1 (-.f64 z (fma.f64 x y z)))) (*.f64 (*.f64 x y) -1))
(*.f64 -1 (+.f64 (+.f64 1 z) (-.f64 (*.f64 y x) (fma.f64 x y z))))
(-.f64 (fma.f64 x y z) (+.f64 (*.f64 y x) (+.f64 1 z)))
(+.f64 (-.f64 -1 z) (-.f64 (fma.f64 x y z) (*.f64 y x)))
(+.f64 (*.f64 -1 (-.f64 (*.f64 x y) (fma.f64 x y z))) (*.f64 (+.f64 z 1) -1))
(*.f64 -1 (+.f64 (+.f64 1 z) (-.f64 (*.f64 y x) (fma.f64 x y z))))
(-.f64 (fma.f64 x y z) (+.f64 (*.f64 y x) (+.f64 1 z)))
(+.f64 (-.f64 -1 z) (-.f64 (fma.f64 x y z) (*.f64 y x)))
(+.f64 (*.f64 (+.f64 (*.f64 x y) 1) -1) (*.f64 -1 (-.f64 z (fma.f64 x y z))))
(*.f64 -1 (+.f64 (+.f64 1 z) (-.f64 (*.f64 y x) (fma.f64 x y z))))
(-.f64 (fma.f64 x y z) (+.f64 (*.f64 y x) (+.f64 1 z)))
(+.f64 (-.f64 -1 z) (-.f64 (fma.f64 x y z) (*.f64 y x)))
(+.f64 (*.f64 -1 (-.f64 z (fma.f64 x y z))) (*.f64 (+.f64 (*.f64 x y) 1) -1))
(*.f64 -1 (+.f64 (+.f64 1 z) (-.f64 (*.f64 y x) (fma.f64 x y z))))
(-.f64 (fma.f64 x y z) (+.f64 (*.f64 y x) (+.f64 1 z)))
(+.f64 (-.f64 -1 z) (-.f64 (fma.f64 x y z) (*.f64 y x)))
(+.f64 (*.f64 (+.f64 z (*.f64 x y)) -1) (*.f64 -1 (-.f64 1 (fma.f64 x y z))))
(*.f64 -1 (+.f64 (+.f64 1 z) (-.f64 (*.f64 y x) (fma.f64 x y z))))
(-.f64 (fma.f64 x y z) (+.f64 (*.f64 y x) (+.f64 1 z)))
(+.f64 (-.f64 -1 z) (-.f64 (fma.f64 x y z) (*.f64 y x)))
(+.f64 (*.f64 -1 (-.f64 1 (fma.f64 x y z))) (*.f64 (+.f64 z (*.f64 x y)) -1))
(*.f64 -1 (+.f64 (+.f64 1 z) (-.f64 (*.f64 y x) (fma.f64 x y z))))
(-.f64 (fma.f64 x y z) (+.f64 (*.f64 y x) (+.f64 1 z)))
(+.f64 (-.f64 -1 z) (-.f64 (fma.f64 x y z) (*.f64 y x)))
(+.f64 (*.f64 (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y))))) (-.f64 -1 (+.f64 z (*.f64 x y)))) (*.f64 (fma.f64 x y z) (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))))))
(+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 y x))))
(-.f64 (+.f64 -1 (fma.f64 x y z)) (+.f64 z (*.f64 y x)))
(*.f64 1 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))))
(+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 y x))))
(-.f64 (+.f64 -1 (fma.f64 x y z)) (+.f64 z (*.f64 y x)))
(*.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) 1)
(+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 y x))))
(-.f64 (+.f64 -1 (fma.f64 x y z)) (+.f64 z (*.f64 y x)))
(*.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y))))))
(+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 y x))))
(-.f64 (+.f64 -1 (fma.f64 x y z)) (+.f64 z (*.f64 y x)))
(*.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (*.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (/.f64 1 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))))))
(+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 y x))))
(-.f64 (+.f64 -1 (fma.f64 x y z)) (+.f64 z (*.f64 y x)))
(*.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (*.f64 (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y))))) (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))))))
(+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 y x))))
(-.f64 (+.f64 -1 (fma.f64 x y z)) (+.f64 z (*.f64 y x)))
(*.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (*.f64 1 (*.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (/.f64 1 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y))))))))
(+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 y x))))
(-.f64 (+.f64 -1 (fma.f64 x y z)) (+.f64 z (*.f64 y x)))
(*.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (*.f64 (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y))))) (*.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (/.f64 1 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y))))))))
(+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 y x))))
(-.f64 (+.f64 -1 (fma.f64 x y z)) (+.f64 z (*.f64 y x)))
(*.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (*.f64 (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y))))) (*.f64 (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y))))) (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y))))))))
(+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 y x))))
(-.f64 (+.f64 -1 (fma.f64 x y z)) (+.f64 z (*.f64 y x)))
(*.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (*.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (/.f64 (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y))))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))))))
(+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 y x))))
(-.f64 (+.f64 -1 (fma.f64 x y z)) (+.f64 z (*.f64 y x)))
(*.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (*.f64 (*.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (/.f64 1 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))))) (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))))))
(+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 y x))))
(-.f64 (+.f64 -1 (fma.f64 x y z)) (+.f64 z (*.f64 y x)))
(*.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (*.f64 (*.f64 (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y))))) (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))))) (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))))))
(+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 y x))))
(-.f64 (+.f64 -1 (fma.f64 x y z)) (+.f64 z (*.f64 y x)))
(*.f64 -1 (+.f64 (+.f64 (*.f64 x y) 1) (-.f64 z (fma.f64 x y z))))
(*.f64 -1 (+.f64 (+.f64 1 z) (-.f64 (*.f64 y x) (fma.f64 x y z))))
(-.f64 (fma.f64 x y z) (+.f64 (*.f64 y x) (+.f64 1 z)))
(+.f64 (-.f64 -1 z) (-.f64 (fma.f64 x y z) (*.f64 y x)))
(*.f64 -1 (*.f64 (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y))))) (+.f64 (+.f64 (*.f64 x y) 1) (-.f64 z (fma.f64 x y z)))))
(*.f64 -1 (+.f64 (+.f64 1 z) (-.f64 (*.f64 y x) (fma.f64 x y z))))
(-.f64 (fma.f64 x y z) (+.f64 (*.f64 y x) (+.f64 1 z)))
(+.f64 (-.f64 -1 z) (-.f64 (fma.f64 x y z) (*.f64 y x)))
(*.f64 (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y))))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))))
(+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 y x))))
(-.f64 (+.f64 -1 (fma.f64 x y z)) (+.f64 z (*.f64 y x)))
(*.f64 (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y))))) (*.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (/.f64 1 (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y))))))))
(+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 y x))))
(-.f64 (+.f64 -1 (fma.f64 x y z)) (+.f64 z (*.f64 y x)))
(*.f64 (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y))))) (*.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (/.f64 (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y))))) (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y))))))))
(+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 y x))))
(-.f64 (+.f64 -1 (fma.f64 x y z)) (+.f64 z (*.f64 y x)))
(*.f64 (+.f64 (+.f64 (*.f64 x y) 1) (-.f64 z (fma.f64 x y z))) -1)
(*.f64 -1 (+.f64 (+.f64 1 z) (-.f64 (*.f64 y x) (fma.f64 x y z))))
(-.f64 (fma.f64 x y z) (+.f64 (*.f64 y x) (+.f64 1 z)))
(+.f64 (-.f64 -1 z) (-.f64 (fma.f64 x y z) (*.f64 y x)))
(*.f64 (+.f64 (+.f64 (*.f64 x y) 1) (-.f64 z (fma.f64 x y z))) (neg.f64 (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))))))
(*.f64 -1 (+.f64 (+.f64 1 z) (-.f64 (*.f64 y x) (fma.f64 x y z))))
(-.f64 (fma.f64 x y z) (+.f64 (*.f64 y x) (+.f64 1 z)))
(+.f64 (-.f64 -1 z) (-.f64 (fma.f64 x y z) (*.f64 y x)))
(*.f64 (*.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (/.f64 1 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))))
(+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 y x))))
(-.f64 (+.f64 -1 (fma.f64 x y z)) (+.f64 z (*.f64 y x)))
(*.f64 (*.f64 (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y))))) (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))))
(+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 y x))))
(-.f64 (+.f64 -1 (fma.f64 x y z)) (+.f64 z (*.f64 y x)))
(*.f64 (neg.f64 (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))))) (+.f64 (+.f64 (*.f64 x y) 1) (-.f64 z (fma.f64 x y z))))
(*.f64 -1 (+.f64 (+.f64 1 z) (-.f64 (*.f64 y x) (fma.f64 x y z))))
(-.f64 (fma.f64 x y z) (+.f64 (*.f64 y x) (+.f64 1 z)))
(+.f64 (-.f64 -1 z) (-.f64 (fma.f64 x y z) (*.f64 y x)))
(/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) 1)
(+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 y x))))
(-.f64 (+.f64 -1 (fma.f64 x y z)) (+.f64 z (*.f64 y x)))
(/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y))))))
(+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 y x))))
(-.f64 (+.f64 -1 (fma.f64 x y z)) (+.f64 z (*.f64 y x)))
(/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (/.f64 (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y))))) (/.f64 (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))) (+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 x y)))))))
(+.f64 (fma.f64 x y z) (-.f64 -1 (+.f64 z (*.f64 y x))))
(-.f64 (+.f64 -1 (fma.f64 x y z)) (+.f64 z (*.f64 y x)))
(/.f64 (+.f64 (+.f64 (*.f64 x y) 1) (-.f64 z (fma.f64 x y z))) -1)
(*.f64 -1 (+.f64 (+.f64 1 z) (-.f64 (*.f64 y x) (fma.f64 x y z))))
(-.f64 (fma.f64 x y z) (+.f64 (*.f64 y x) (+.f64 1 z)))
(+.f64 (-.f64 -1 z) (-.f64 (fma.f64 x y z) (*.f64 y x)))
(neg.f64 (+.f64 (+.f64 (*.f64 x y) 1) (-.f64 z (fma.f64 x y z))))
(*.f64 -1 (+.f64 (+.f64 1 z) (-.f64 (*.f64 y x) (fma.f64 x y z))))
(-.f64 (fma.f64 x y z) (+.f64 (*.f64 y x) (+.f64 1 z)))
(+.f64 (-.f64 -1 z) (-.f64 (fma.f64 x y z) (*.f64 y x)))
(-.f64 1 (*.f64 -1 (+.f64 z (*.f64 x y))))
(+.f64 1 (+.f64 z (*.f64 y x)))
(+.f64 (*.f64 y x) (+.f64 1 z))
(-.f64 (+.f64 z 1) (*.f64 x (neg.f64 y)))
(+.f64 1 (-.f64 z (*.f64 x (neg.f64 y))))
(+.f64 z (-.f64 1 (*.f64 x (neg.f64 y))))
(-.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) 0)
(+.f64 1 (+.f64 z (*.f64 y x)))
(+.f64 (*.f64 y x) (+.f64 1 z))
(-.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (*.f64 (/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (+.f64 z (+.f64 (*.f64 x y) 1))) 0))
(+.f64 1 (+.f64 z (*.f64 y x)))
(+.f64 (*.f64 y x) (+.f64 1 z))
(-.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (*.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) 0))
(+.f64 1 (+.f64 z (*.f64 y x)))
(+.f64 (*.f64 y x) (+.f64 1 z))
(-.f64 0 (*.f64 -1 (+.f64 z (+.f64 (*.f64 x y) 1))))
(+.f64 1 (+.f64 z (*.f64 y x)))
(+.f64 (*.f64 y x) (+.f64 1 z))
(-.f64 (+.f64 z (*.f64 x y)) -1)
(+.f64 1 (+.f64 z (*.f64 y x)))
(+.f64 (*.f64 y x) (+.f64 1 z))
(-.f64 (*.f64 (+.f64 z (*.f64 x y)) (/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (+.f64 z (+.f64 (*.f64 x y) 1)))) (*.f64 (/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (+.f64 z (+.f64 (*.f64 x y) 1))) -1))
(+.f64 1 (+.f64 z (*.f64 y x)))
(+.f64 (*.f64 y x) (+.f64 1 z))
(*.f64 1 (+.f64 z (+.f64 (*.f64 x y) 1)))
(+.f64 1 (+.f64 z (*.f64 y x)))
(+.f64 (*.f64 y x) (+.f64 1 z))
(*.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) 1)
(+.f64 1 (+.f64 z (*.f64 y x)))
(+.f64 (*.f64 y x) (+.f64 1 z))
(*.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (+.f64 z (+.f64 (*.f64 x y) 1))))
(+.f64 1 (+.f64 z (*.f64 y x)))
(+.f64 (*.f64 y x) (+.f64 1 z))
(*.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (*.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (/.f64 1 (+.f64 z (+.f64 (*.f64 x y) 1)))))
(+.f64 1 (+.f64 z (*.f64 y x)))
(+.f64 (*.f64 y x) (+.f64 1 z))
(*.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (*.f64 (/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (+.f64 z (+.f64 (*.f64 x y) 1))) (/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (+.f64 z (+.f64 (*.f64 x y) 1)))))
(+.f64 1 (+.f64 z (*.f64 y x)))
(+.f64 (*.f64 y x) (+.f64 1 z))
(*.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (*.f64 1 (*.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (/.f64 1 (+.f64 z (+.f64 (*.f64 x y) 1))))))
(+.f64 1 (+.f64 z (*.f64 y x)))
(+.f64 (*.f64 y x) (+.f64 1 z))
(*.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (*.f64 (/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (+.f64 z (+.f64 (*.f64 x y) 1))) (*.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (/.f64 1 (+.f64 z (+.f64 (*.f64 x y) 1))))))
(+.f64 1 (+.f64 z (*.f64 y x)))
(+.f64 (*.f64 y x) (+.f64 1 z))
(*.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (*.f64 (/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (+.f64 z (+.f64 (*.f64 x y) 1))) (*.f64 (/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (+.f64 z (+.f64 (*.f64 x y) 1))) (/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (+.f64 z (+.f64 (*.f64 x y) 1))))))
(+.f64 1 (+.f64 z (*.f64 y x)))
(+.f64 (*.f64 y x) (+.f64 1 z))
(*.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (*.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (/.f64 (/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (+.f64 z (+.f64 (*.f64 x y) 1))) (+.f64 z (+.f64 (*.f64 x y) 1)))))
(+.f64 1 (+.f64 z (*.f64 y x)))
(+.f64 (*.f64 y x) (+.f64 1 z))
(*.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (*.f64 (*.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (/.f64 1 (+.f64 z (+.f64 (*.f64 x y) 1)))) (/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (+.f64 z (+.f64 (*.f64 x y) 1)))))
(+.f64 1 (+.f64 z (*.f64 y x)))
(+.f64 (*.f64 y x) (+.f64 1 z))
(*.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (*.f64 (*.f64 (/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (+.f64 z (+.f64 (*.f64 x y) 1))) (/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (+.f64 z (+.f64 (*.f64 x y) 1)))) (/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (+.f64 z (+.f64 (*.f64 x y) 1)))))
(+.f64 1 (+.f64 z (*.f64 y x)))
(+.f64 (*.f64 y x) (+.f64 1 z))
(*.f64 -1 (-.f64 -1 (+.f64 z (*.f64 x y))))
(+.f64 1 (+.f64 z (*.f64 y x)))
(+.f64 (*.f64 y x) (+.f64 1 z))
(*.f64 -1 (*.f64 1 (-.f64 -1 (+.f64 z (*.f64 x y)))))
(+.f64 1 (+.f64 z (*.f64 y x)))
(+.f64 (*.f64 y x) (+.f64 1 z))
(*.f64 -1 (*.f64 (/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (+.f64 z (+.f64 (*.f64 x y) 1))) (-.f64 -1 (+.f64 z (*.f64 x y)))))
(+.f64 1 (+.f64 z (*.f64 y x)))
(+.f64 (*.f64 y x) (+.f64 1 z))
(*.f64 (/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (+.f64 z (+.f64 (*.f64 x y) 1))) (+.f64 z (+.f64 (*.f64 x y) 1)))
(+.f64 1 (+.f64 z (*.f64 y x)))
(+.f64 (*.f64 y x) (+.f64 1 z))
(*.f64 (/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (+.f64 z (+.f64 (*.f64 x y) 1))) (*.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (/.f64 1 (/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (+.f64 z (+.f64 (*.f64 x y) 1))))))
(+.f64 1 (+.f64 z (*.f64 y x)))
(+.f64 (*.f64 y x) (+.f64 1 z))
(*.f64 (/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (+.f64 z (+.f64 (*.f64 x y) 1))) (*.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (/.f64 (/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (+.f64 z (+.f64 (*.f64 x y) 1))) (/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (+.f64 z (+.f64 (*.f64 x y) 1))))))
(+.f64 1 (+.f64 z (*.f64 y x)))
(+.f64 (*.f64 y x) (+.f64 1 z))
(*.f64 (*.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (/.f64 1 (+.f64 z (+.f64 (*.f64 x y) 1)))) (+.f64 z (+.f64 (*.f64 x y) 1)))
(+.f64 1 (+.f64 z (*.f64 y x)))
(+.f64 (*.f64 y x) (+.f64 1 z))
(*.f64 (-.f64 -1 (+.f64 z (*.f64 x y))) -1)
(+.f64 1 (+.f64 z (*.f64 y x)))
(+.f64 (*.f64 y x) (+.f64 1 z))
(*.f64 (-.f64 -1 (+.f64 z (*.f64 x y))) (neg.f64 (/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (+.f64 z (+.f64 (*.f64 x y) 1)))))
(+.f64 1 (+.f64 z (*.f64 y x)))
(+.f64 (*.f64 y x) (+.f64 1 z))
(*.f64 (*.f64 (/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (+.f64 z (+.f64 (*.f64 x y) 1))) (/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (+.f64 z (+.f64 (*.f64 x y) 1)))) (+.f64 z (+.f64 (*.f64 x y) 1)))
(+.f64 1 (+.f64 z (*.f64 y x)))
(+.f64 (*.f64 y x) (+.f64 1 z))
(*.f64 (neg.f64 (/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (+.f64 z (+.f64 (*.f64 x y) 1)))) (-.f64 -1 (+.f64 z (*.f64 x y))))
(+.f64 1 (+.f64 z (*.f64 y x)))
(+.f64 (*.f64 y x) (+.f64 1 z))
(/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) 1)
(+.f64 1 (+.f64 z (*.f64 y x)))
(+.f64 (*.f64 y x) (+.f64 1 z))
(/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (+.f64 z (+.f64 (*.f64 x y) 1))))
(+.f64 1 (+.f64 z (*.f64 y x)))
(+.f64 (*.f64 y x) (+.f64 1 z))
(/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (/.f64 (/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (+.f64 z (+.f64 (*.f64 x y) 1))) (/.f64 (+.f64 z (+.f64 (*.f64 x y) 1)) (+.f64 z (+.f64 (*.f64 x y) 1)))))
(+.f64 1 (+.f64 z (*.f64 y x)))
(+.f64 (*.f64 y x) (+.f64 1 z))
(neg.f64 (*.f64 -1 (+.f64 z (+.f64 (*.f64 x y) 1))))
(+.f64 1 (+.f64 z (*.f64 y x)))
(+.f64 (*.f64 y x) (+.f64 1 z))

eval62.0ms (1.9%)

Compiler

Compiled 5462 to 1503 computations (72.5% saved)

prune26.0ms (0.8%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New1831184
Fresh000
Picked101
Done101
Total1851186
Error
0b
Counts
186 → 1
Alt Table
Click to see full alt table
StatusErrorProgram
0b
-1
Compiler

Compiled 4 to 4 computations (0% saved)

eval0.0ms (0%)

Compiler

Compiled 3 to 3 computations (0% saved)

prune1.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New000
Fresh011
Picked000
Done000
Total011
Error
0b
Counts
1 → 1
Alt Table
Click to see full alt table
StatusErrorProgram
0b
-1
Compiler

Compiled 4 to 4 computations (0% saved)

eval0.0ms (0%)

Compiler

Compiled 3 to 3 computations (0% saved)

prune1.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New000
Fresh011
Picked000
Done000
Total011
Error
0b
Counts
1 → 1
Alt Table
Click to see full alt table
StatusErrorProgram
0b
-1
Compiler

Compiled 4 to 4 computations (0% saved)

eval0.0ms (0%)

Compiler

Compiled 3 to 3 computations (0% saved)

prune1.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New000
Fresh011
Picked000
Done000
Total011
Error
0b
Counts
1 → 1
Alt Table
Click to see full alt table
StatusErrorProgram
0b
-1
Compiler

Compiled 4 to 4 computations (0% saved)

regimes14.0ms (0.4%)

Accuracy

Total -46.6b remaining (-∞%)

Threshold costs -46.6b (-∞%)

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

4 calls:

3.0ms
y
3.0ms
x
3.0ms
z
2.0ms
(-.f64 (fma.f64 x y z) (+.f64 1 (+.f64 (*.f64 x y) z)))
Results
ErrorSegmentsBranch
0b1x
0b1y
0b1z
0b1(-.f64 (fma.f64 x y z) (+.f64 1 (+.f64 (*.f64 x y) z)))
Compiler

Compiled 67 to 36 computations (46.3% saved)

simplify1.0ms (0%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
011
Stop Event
fuel
saturated
Calls
Call 1
Inputs
-1
Outputs
-1
Compiler

Compiled 4 to 4 computations (0% saved)

soundness112.0ms (3.4%)

Algorithm
egg-herbie
Rules
1098×rational_best_oopsla_all_46_json_45_simplify-49
1028×rational_best_oopsla_all_46_json_45_simplify-7
966×rational_best_oopsla_all_46_json_45_simplify-72
744×rational_best_oopsla_all_46_json_45_simplify-10
708×rational_best_oopsla_all_46_json_45_simplify-30
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01233
12133
25033
314033
449933
5251533
6533133
Stop Event
node limit
Compiler

Compiled 39 to 17 computations (56.4% saved)

end10.0ms (0.3%)

Compiler

Compiled 4 to 4 computations (0% saved)

Profiling

Loading profile data...