Details

Time bar (total: 8.9s)

analyze288.0ms (3.2%)

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
18.8%18.7%81.1%0.1%0%0%0%9
28.1%28.1%71.8%0.1%0%0%0%10
32.8%32.8%67.1%0.1%0%0%0%11
39.8%39.8%60.1%0.1%0%0%0%12
Compiler

Compiled 19 to 10 computations (47.4% saved)

sample4.2s (46.7%)

Results
1.7s6354×body256valid
688.0ms839×body1024valid
600.0ms1762×body256infinite
366.0ms486×body2048valid
337.0ms577×body512valid
253.0ms198×body1024infinite
215.0ms295×body512infinite
Bogosity

preprocess19.0ms (0.2%)

Algorithm
egg-herbie
Rules
60×rational.json-simplify-2
32×rational.json-simplify-48
30×rational.json-simplify-1
18×rational.json-simplify-47
14×rational.json-simplify-42
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
025172
152148
284124
3119100
4150100
5158100
033
Stop Event
saturated
saturated
Calls
Call 1
Inputs
0
1
2
Outputs
0
1
2
Call 2
Inputs
(+.f64 (-.f64 (-.f64 (*.f64 x y) (*.f64 y z)) (*.f64 y y)) (*.f64 y y))
(+.f64 (-.f64 (-.f64 (*.f64 y x) (*.f64 x z)) (*.f64 x x)) (*.f64 x x))
(+.f64 (-.f64 (-.f64 (*.f64 z y) (*.f64 y x)) (*.f64 y y)) (*.f64 y y))
(+.f64 (-.f64 (-.f64 (*.f64 x z) (*.f64 z y)) (*.f64 z z)) (*.f64 z z))
Outputs
(+.f64 (-.f64 (-.f64 (*.f64 x y) (*.f64 y z)) (*.f64 y y)) (*.f64 y y))
(+.f64 (*.f64 y y) (-.f64 (-.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y z)))
(+.f64 (*.f64 y y) (-.f64 (*.f64 x y) (*.f64 y (+.f64 y z))))
(+.f64 (*.f64 y y) (*.f64 y (-.f64 (-.f64 x z) y)))
(*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))
(+.f64 (-.f64 (-.f64 (*.f64 y x) (*.f64 x z)) (*.f64 x x)) (*.f64 x x))
(+.f64 (*.f64 x x) (-.f64 (*.f64 x y) (+.f64 (*.f64 x z) (*.f64 x x))))
(+.f64 (*.f64 x x) (-.f64 (*.f64 x y) (*.f64 x (+.f64 x z))))
(+.f64 (*.f64 x x) (*.f64 x (-.f64 (-.f64 y z) x)))
(*.f64 x (+.f64 x (-.f64 y (+.f64 x z))))
(+.f64 (-.f64 (-.f64 (*.f64 z y) (*.f64 y x)) (*.f64 y y)) (*.f64 y y))
(+.f64 (*.f64 y y) (-.f64 (*.f64 y z) (+.f64 (*.f64 x y) (*.f64 y y))))
(+.f64 (*.f64 y y) (-.f64 (*.f64 y z) (*.f64 y (+.f64 y x))))
(+.f64 (*.f64 y y) (*.f64 y (-.f64 (-.f64 z x) y)))
(*.f64 y (+.f64 y (-.f64 z (+.f64 x y))))
(+.f64 (-.f64 (-.f64 (*.f64 x z) (*.f64 z y)) (*.f64 z z)) (*.f64 z z))
(+.f64 (*.f64 z z) (-.f64 (*.f64 x z) (+.f64 (*.f64 y z) (*.f64 z z))))
(+.f64 (*.f64 z z) (-.f64 (*.f64 x z) (*.f64 z (+.f64 z y))))
(+.f64 (*.f64 z z) (*.f64 z (-.f64 (-.f64 x z) y)))
(*.f64 z (+.f64 z (-.f64 x (+.f64 y z))))
Compiler

Compiled 21 to 12 computations (42.9% saved)

simplify134.0ms (1.5%)

Algorithm
egg-herbie
Rules
18×rational.json-simplify-2
rational.json-simplify-48
rational.json-simplify-1
rational.json-simplify-47
rational.json-simplify-54
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01143
12037
22931
33925
44825
55025
Stop Event
saturated
Counts
1 → 5
Calls
Call 1
Inputs
(+.f64 (-.f64 (-.f64 (*.f64 x y) (*.f64 y z)) (*.f64 y y)) (*.f64 y y))
Outputs
(+.f64 (-.f64 (-.f64 (*.f64 x y) (*.f64 y z)) (*.f64 y y)) (*.f64 y y))
(+.f64 (*.f64 y y) (-.f64 (*.f64 x y) (+.f64 (*.f64 y z) (*.f64 y y))))
(+.f64 (*.f64 y y) (-.f64 (*.f64 x y) (*.f64 y (+.f64 y z))))
(+.f64 (*.f64 y y) (*.f64 y (-.f64 (-.f64 x z) y)))
(*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))

eval2.0ms (0%)

Compiler

Compiled 66 to 23 computations (65.2% saved)

prune5.0ms (0.1%)

Pruning

5 alts after pruning (5 fresh and 0 done)

PrunedKeptTotal
New145
Fresh011
Picked000
Done000
Total156
Error
16.7b
Counts
6 → 4
Alt Table
Click to see full alt table
StatusErrorProgram
16.9b
(+.f64 (-.f64 (-.f64 (*.f64 x y) (*.f64 y z)) (*.f64 y y)) (*.f64 y y))
16.9b
(+.f64 (*.f64 y y) (-.f64 (*.f64 x y) (*.f64 y (+.f64 y z))))
16.9b
(+.f64 (*.f64 y y) (*.f64 y (-.f64 (-.f64 x z) y)))
16.8b
(*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))
Compiler

Compiled 60 to 33 computations (45% saved)

localize17.0ms (0.2%)

Local error

Found 2 expressions with local error:

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

Compiled 30 to 7 computations (76.7% saved)

series6.0ms (0.1%)

Counts
2 → 72
Calls

18 calls:

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

rewrite149.0ms (1.7%)

Algorithm
batch-egg-rewrite
Rules
978×rational.json-simplify-2
936×rational.json-simplify-79
560×rational.json-simplify-47
510×rational.json-simplify-54
502×rational.json-simplify-41
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
0944
17944
227544
3103244
4403420
Stop Event
node limit
Counts
2 → 57
Calls
Call 1
Inputs
(+.f64 y (-.f64 x (+.f64 y z)))
(*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 y (+.f64 z (-.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 y (+.f64 y (-.f64 z x)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 x z)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 x (-.f64 (+.f64 y z) y))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 x (+.f64 (+.f64 y z) (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 x (+.f64 y z)) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 x z) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 x z) (+.f64 y (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (-.f64 z x))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (+.f64 (+.f64 z (-.f64 y x)) (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (+.f64 (+.f64 y (-.f64 z x)) (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 x y) (-.f64 z y))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 x y) (+.f64 z (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (neg.f64 z) (neg.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (neg.f64 z) (+.f64 (-.f64 y x) (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (neg.f64 y) (-.f64 (-.f64 z x) y))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (neg.f64 y) (+.f64 (-.f64 z x) (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 y (-.f64 x z)) y)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 y (neg.f64 x)) (+.f64 y z))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 y (-.f64 z x)) y)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 y z) (-.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 x (neg.f64 z)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (-.f64 x y) (neg.f64 z)) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 y (-.f64 x y)) z)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 y x) (+.f64 y z))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 y (neg.f64 z)) (-.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (neg.f64 y) (neg.f64 y)) (-.f64 z x))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 0 (-.f64 -1 y)) (-.f64 z (-.f64 -1 (-.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 0 (-.f64 (+.f64 y z) (-.f64 x -1))) (-.f64 1 y))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 0 (-.f64 -1 (-.f64 x z))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 y (-.f64 (+.f64 y z) (-.f64 x -1))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (-.f64 x (+.f64 y z)) (-.f64 -1 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 x z) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 x z) (/.f64 (-.f64 z x) (-.f64 z x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 x z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 z x) (-.f64 z x)) (-.f64 x z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 z x) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 x z) (-.f64 x z)) (/.f64 1 (-.f64 x z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 x z) (-.f64 x z)) (/.f64 (/.f64 (-.f64 z x) (-.f64 z x)) (-.f64 x z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (-.f64 x z)) (*.f64 (-.f64 x z) (-.f64 x z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (-.f64 x z) (-.f64 x z)) (*.f64 (-.f64 x z) (-.f64 x z))) (/.f64 (/.f64 1 (-.f64 x z)) (*.f64 (-.f64 x z) (-.f64 x z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (-.f64 x z)) (*.f64 (-.f64 x z) (-.f64 x z))) (*.f64 (*.f64 (-.f64 x z) (-.f64 x z)) (*.f64 (-.f64 x z) (-.f64 x z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (*.f64 (-.f64 x z) (-.f64 x z)) (*.f64 (-.f64 x z) (-.f64 x z))) (*.f64 (*.f64 (-.f64 x z) (-.f64 x z)) (*.f64 (-.f64 x z) (-.f64 x z)))) (/.f64 (/.f64 (/.f64 1 (-.f64 x z)) (*.f64 (-.f64 x z) (-.f64 x z))) (*.f64 (*.f64 (-.f64 x z) (-.f64 x z)) (*.f64 (-.f64 x z) (-.f64 x z)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 x z) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 x z) (/.f64 (-.f64 z x) (-.f64 z x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 z x) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 x z) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (-.f64 z x))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y (-.f64 x z)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 y (-.f64 x z)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y (-.f64 x z)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (*.f64 y (-.f64 x z))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 0 (-.f64 -1 (*.f64 y (-.f64 x z)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (-.f64 x z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (-.f64 x z)) (/.f64 (*.f64 y (-.f64 x z)) (*.f64 y (-.f64 x z))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 y (-.f64 x z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (*.f64 y (-.f64 x z))))))))

simplify172.0ms (1.9%)

Algorithm
egg-herbie
Rules
1136×rational.json-simplify-47
1082×rational.json-simplify-41
958×rational.json-simplify-42
882×rational.json-simplify-2
856×rational.json-simplify-45
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01281137
13271137
27021137
333891137
Stop Event
node limit
Counts
129 → 71
Calls
Call 1
Inputs
(-.f64 x z)
(-.f64 x z)
(-.f64 x z)
(-.f64 x z)
(-.f64 x z)
(-.f64 x z)
(-.f64 x z)
(-.f64 x z)
(-.f64 x z)
(-.f64 x z)
(-.f64 x z)
(-.f64 x z)
(*.f64 -1 z)
(+.f64 (*.f64 -1 z) x)
(+.f64 (*.f64 -1 z) x)
(+.f64 (*.f64 -1 z) x)
x
(+.f64 (*.f64 -1 z) x)
(+.f64 (*.f64 -1 z) x)
(+.f64 (*.f64 -1 z) x)
x
(+.f64 (*.f64 -1 z) x)
(+.f64 (*.f64 -1 z) x)
(+.f64 (*.f64 -1 z) x)
x
(+.f64 (*.f64 -1 z) x)
(+.f64 (*.f64 -1 z) x)
(+.f64 (*.f64 -1 z) x)
(*.f64 -1 z)
(+.f64 (*.f64 -1 z) x)
(+.f64 (*.f64 -1 z) x)
(+.f64 (*.f64 -1 z) x)
(*.f64 -1 z)
(+.f64 (*.f64 -1 z) x)
(+.f64 (*.f64 -1 z) x)
(+.f64 (*.f64 -1 z) x)
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 -1 (*.f64 y z))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(*.f64 y x)
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(*.f64 -1 (*.f64 y z))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(*.f64 -1 (*.f64 y z))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(-.f64 y (+.f64 z (-.f64 y x)))
(-.f64 y (+.f64 y (-.f64 z x)))
(-.f64 x z)
(-.f64 x (-.f64 (+.f64 y z) y))
(-.f64 x (+.f64 (+.f64 y z) (neg.f64 y)))
(-.f64 (-.f64 x (+.f64 y z)) (neg.f64 y))
(-.f64 (-.f64 x z) 0)
(-.f64 (-.f64 x z) (+.f64 y (neg.f64 y)))
(-.f64 0 (-.f64 z x))
(-.f64 0 (+.f64 (+.f64 z (-.f64 y x)) (neg.f64 y)))
(-.f64 0 (+.f64 (+.f64 y (-.f64 z x)) (neg.f64 y)))
(-.f64 (-.f64 x y) (-.f64 z y))
(-.f64 (-.f64 x y) (+.f64 z (neg.f64 y)))
(-.f64 (neg.f64 z) (neg.f64 x))
(-.f64 (neg.f64 z) (+.f64 (-.f64 y x) (neg.f64 y)))
(-.f64 (neg.f64 y) (-.f64 (-.f64 z x) y))
(-.f64 (neg.f64 y) (+.f64 (-.f64 z x) (neg.f64 y)))
(-.f64 (+.f64 y (-.f64 x z)) y)
(-.f64 (-.f64 y (neg.f64 x)) (+.f64 y z))
(-.f64 (-.f64 y (-.f64 z x)) y)
(-.f64 (-.f64 y z) (-.f64 y x))
(-.f64 (+.f64 x (neg.f64 z)) 0)
(-.f64 (+.f64 (-.f64 x y) (neg.f64 z)) (neg.f64 y))
(-.f64 (+.f64 y (-.f64 x y)) z)
(-.f64 (+.f64 y x) (+.f64 y z))
(-.f64 (+.f64 y (neg.f64 z)) (-.f64 y x))
(-.f64 (-.f64 (neg.f64 y) (neg.f64 y)) (-.f64 z x))
(-.f64 (-.f64 0 (-.f64 -1 y)) (-.f64 z (-.f64 -1 (-.f64 y x))))
(-.f64 (-.f64 0 (-.f64 (+.f64 y z) (-.f64 x -1))) (-.f64 1 y))
(-.f64 (-.f64 0 (-.f64 -1 (-.f64 x z))) 1)
(-.f64 (-.f64 y (-.f64 (+.f64 y z) (-.f64 x -1))) 1)
(-.f64 (-.f64 (-.f64 x (+.f64 y z)) (-.f64 -1 y)) 1)
(*.f64 (-.f64 x z) 1)
(*.f64 (-.f64 x z) (/.f64 (-.f64 z x) (-.f64 z x)))
(*.f64 1 (-.f64 x z))
(*.f64 (/.f64 (-.f64 z x) (-.f64 z x)) (-.f64 x z))
(*.f64 (-.f64 z x) -1)
(*.f64 (*.f64 (-.f64 x z) (-.f64 x z)) (/.f64 1 (-.f64 x z)))
(*.f64 (*.f64 (-.f64 x z) (-.f64 x z)) (/.f64 (/.f64 (-.f64 z x) (-.f64 z x)) (-.f64 x z)))
(*.f64 (/.f64 1 (-.f64 x z)) (*.f64 (-.f64 x z) (-.f64 x z)))
(*.f64 (*.f64 (*.f64 (-.f64 x z) (-.f64 x z)) (*.f64 (-.f64 x z) (-.f64 x z))) (/.f64 (/.f64 1 (-.f64 x z)) (*.f64 (-.f64 x z) (-.f64 x z))))
(*.f64 (/.f64 (/.f64 1 (-.f64 x z)) (*.f64 (-.f64 x z) (-.f64 x z))) (*.f64 (*.f64 (-.f64 x z) (-.f64 x z)) (*.f64 (-.f64 x z) (-.f64 x z))))
(*.f64 (*.f64 (*.f64 (*.f64 (-.f64 x z) (-.f64 x z)) (*.f64 (-.f64 x z) (-.f64 x z))) (*.f64 (*.f64 (-.f64 x z) (-.f64 x z)) (*.f64 (-.f64 x z) (-.f64 x z)))) (/.f64 (/.f64 (/.f64 1 (-.f64 x z)) (*.f64 (-.f64 x z) (-.f64 x z))) (*.f64 (*.f64 (-.f64 x z) (-.f64 x z)) (*.f64 (-.f64 x z) (-.f64 x z)))))
(/.f64 (-.f64 x z) 1)
(/.f64 (-.f64 x z) (/.f64 (-.f64 z x) (-.f64 z x)))
(/.f64 (-.f64 z x) -1)
(pow.f64 (-.f64 x z) 1)
(neg.f64 (-.f64 z x))
(+.f64 (*.f64 y (-.f64 x z)) 0)
(+.f64 0 (*.f64 y (-.f64 x z)))
(-.f64 (*.f64 y (-.f64 x z)) 0)
(-.f64 0 (neg.f64 (*.f64 y (-.f64 x z))))
(-.f64 (-.f64 0 (-.f64 -1 (*.f64 y (-.f64 x z)))) 1)
(/.f64 (*.f64 y (-.f64 x z)) 1)
(/.f64 (*.f64 y (-.f64 x z)) (/.f64 (*.f64 y (-.f64 x z)) (*.f64 y (-.f64 x z))))
(pow.f64 (*.f64 y (-.f64 x z)) 1)
(neg.f64 (neg.f64 (*.f64 y (-.f64 x z))))
Outputs
(-.f64 x z)
(-.f64 x z)
(-.f64 x z)
(-.f64 x z)
(-.f64 x z)
(-.f64 x z)
(-.f64 x z)
(-.f64 x z)
(-.f64 x z)
(-.f64 x z)
(-.f64 x z)
(-.f64 x z)
(*.f64 -1 z)
(neg.f64 z)
(+.f64 (*.f64 -1 z) x)
(-.f64 x z)
(+.f64 (*.f64 -1 z) x)
(-.f64 x z)
(+.f64 (*.f64 -1 z) x)
(-.f64 x z)
x
(+.f64 (*.f64 -1 z) x)
(-.f64 x z)
(+.f64 (*.f64 -1 z) x)
(-.f64 x z)
(+.f64 (*.f64 -1 z) x)
(-.f64 x z)
x
(+.f64 (*.f64 -1 z) x)
(-.f64 x z)
(+.f64 (*.f64 -1 z) x)
(-.f64 x z)
(+.f64 (*.f64 -1 z) x)
(-.f64 x z)
x
(+.f64 (*.f64 -1 z) x)
(-.f64 x z)
(+.f64 (*.f64 -1 z) x)
(-.f64 x z)
(+.f64 (*.f64 -1 z) x)
(-.f64 x z)
(*.f64 -1 z)
(neg.f64 z)
(+.f64 (*.f64 -1 z) x)
(-.f64 x z)
(+.f64 (*.f64 -1 z) x)
(-.f64 x z)
(+.f64 (*.f64 -1 z) x)
(-.f64 x z)
(*.f64 -1 z)
(neg.f64 z)
(+.f64 (*.f64 -1 z) x)
(-.f64 x z)
(+.f64 (*.f64 -1 z) x)
(-.f64 x z)
(+.f64 (*.f64 -1 z) x)
(-.f64 x z)
(*.f64 y (-.f64 x z))
(*.f64 (-.f64 x z) y)
(*.f64 y (-.f64 x z))
(*.f64 (-.f64 x z) y)
(*.f64 y (-.f64 x z))
(*.f64 (-.f64 x z) y)
(*.f64 y (-.f64 x z))
(*.f64 (-.f64 x z) y)
(*.f64 y (-.f64 x z))
(*.f64 (-.f64 x z) y)
(*.f64 y (-.f64 x z))
(*.f64 (-.f64 x z) y)
(*.f64 y (-.f64 x z))
(*.f64 (-.f64 x z) y)
(*.f64 y (-.f64 x z))
(*.f64 (-.f64 x z) y)
(*.f64 y (-.f64 x z))
(*.f64 (-.f64 x z) y)
(*.f64 y (-.f64 x z))
(*.f64 (-.f64 x z) y)
(*.f64 y (-.f64 x z))
(*.f64 (-.f64 x z) y)
(*.f64 y (-.f64 x z))
(*.f64 (-.f64 x z) y)
(*.f64 -1 (*.f64 y z))
(*.f64 y (neg.f64 z))
(neg.f64 (*.f64 z y))
(*.f64 z (neg.f64 y))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(*.f64 (-.f64 x z) y)
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(*.f64 (-.f64 x z) y)
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(*.f64 (-.f64 x z) y)
(*.f64 y x)
(*.f64 x y)
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(*.f64 (-.f64 x z) y)
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(*.f64 (-.f64 x z) y)
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(*.f64 (-.f64 x z) y)
(*.f64 y x)
(*.f64 x y)
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(*.f64 (-.f64 x z) y)
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(*.f64 (-.f64 x z) y)
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(*.f64 (-.f64 x z) y)
(*.f64 y x)
(*.f64 x y)
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(*.f64 (-.f64 x z) y)
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(*.f64 (-.f64 x z) y)
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(*.f64 (-.f64 x z) y)
(*.f64 -1 (*.f64 y z))
(*.f64 y (neg.f64 z))
(neg.f64 (*.f64 z y))
(*.f64 z (neg.f64 y))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(*.f64 (-.f64 x z) y)
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(*.f64 (-.f64 x z) y)
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(*.f64 (-.f64 x z) y)
(*.f64 -1 (*.f64 y z))
(*.f64 y (neg.f64 z))
(neg.f64 (*.f64 z y))
(*.f64 z (neg.f64 y))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(*.f64 (-.f64 x z) y)
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(*.f64 (-.f64 x z) y)
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(*.f64 (-.f64 x z) y)
(-.f64 y (+.f64 z (-.f64 y x)))
(-.f64 x z)
(-.f64 y (+.f64 y (-.f64 z x)))
(-.f64 x z)
(-.f64 x z)
(-.f64 x (-.f64 (+.f64 y z) y))
(-.f64 x z)
(-.f64 x (+.f64 (+.f64 y z) (neg.f64 y)))
(-.f64 x z)
(-.f64 (-.f64 x (+.f64 y z)) (neg.f64 y))
(-.f64 x z)
(-.f64 (-.f64 x z) 0)
(-.f64 x z)
(-.f64 (-.f64 x z) (+.f64 y (neg.f64 y)))
(-.f64 x z)
(-.f64 0 (-.f64 z x))
(-.f64 x z)
(-.f64 0 (+.f64 (+.f64 z (-.f64 y x)) (neg.f64 y)))
(-.f64 x z)
(-.f64 0 (+.f64 (+.f64 y (-.f64 z x)) (neg.f64 y)))
(-.f64 x z)
(-.f64 (-.f64 x y) (-.f64 z y))
(-.f64 x z)
(-.f64 (-.f64 x y) (+.f64 z (neg.f64 y)))
(-.f64 x z)
(-.f64 (neg.f64 z) (neg.f64 x))
(-.f64 x z)
(-.f64 (neg.f64 z) (+.f64 (-.f64 y x) (neg.f64 y)))
(-.f64 x z)
(-.f64 (neg.f64 y) (-.f64 (-.f64 z x) y))
(-.f64 x z)
(-.f64 (neg.f64 y) (+.f64 (-.f64 z x) (neg.f64 y)))
(-.f64 x z)
(-.f64 (+.f64 y (-.f64 x z)) y)
(-.f64 x z)
(-.f64 (-.f64 y (neg.f64 x)) (+.f64 y z))
(-.f64 x z)
(-.f64 (-.f64 y (-.f64 z x)) y)
(-.f64 x z)
(-.f64 (-.f64 y z) (-.f64 y x))
(-.f64 x z)
(-.f64 (+.f64 x (neg.f64 z)) 0)
(-.f64 x z)
(-.f64 (+.f64 (-.f64 x y) (neg.f64 z)) (neg.f64 y))
(-.f64 x z)
(-.f64 (+.f64 y (-.f64 x y)) z)
(-.f64 (+.f64 y x) (+.f64 y z))
(-.f64 x z)
(-.f64 (+.f64 y (neg.f64 z)) (-.f64 y x))
(-.f64 x z)
(-.f64 (-.f64 (neg.f64 y) (neg.f64 y)) (-.f64 z x))
(-.f64 x z)
(-.f64 (-.f64 0 (-.f64 -1 y)) (-.f64 z (-.f64 -1 (-.f64 y x))))
(-.f64 x z)
(-.f64 (-.f64 0 (-.f64 (+.f64 y z) (-.f64 x -1))) (-.f64 1 y))
(-.f64 x z)
(-.f64 (-.f64 0 (-.f64 -1 (-.f64 x z))) 1)
(-.f64 x z)
(-.f64 (-.f64 y (-.f64 (+.f64 y z) (-.f64 x -1))) 1)
(-.f64 x z)
(-.f64 (-.f64 (-.f64 x (+.f64 y z)) (-.f64 -1 y)) 1)
(-.f64 x z)
(*.f64 (-.f64 x z) 1)
(-.f64 x z)
(*.f64 (-.f64 x z) (/.f64 (-.f64 z x) (-.f64 z x)))
(-.f64 x z)
(*.f64 1 (-.f64 x z))
(-.f64 x z)
(*.f64 (/.f64 (-.f64 z x) (-.f64 z x)) (-.f64 x z))
(-.f64 x z)
(*.f64 (-.f64 z x) -1)
(-.f64 x z)
(*.f64 (*.f64 (-.f64 x z) (-.f64 x z)) (/.f64 1 (-.f64 x z)))
(-.f64 x z)
(*.f64 (*.f64 (-.f64 x z) (-.f64 x z)) (/.f64 (/.f64 (-.f64 z x) (-.f64 z x)) (-.f64 x z)))
(-.f64 x z)
(*.f64 (/.f64 1 (-.f64 x z)) (*.f64 (-.f64 x z) (-.f64 x z)))
(-.f64 x z)
(*.f64 (*.f64 (*.f64 (-.f64 x z) (-.f64 x z)) (*.f64 (-.f64 x z) (-.f64 x z))) (/.f64 (/.f64 1 (-.f64 x z)) (*.f64 (-.f64 x z) (-.f64 x z))))
(-.f64 x z)
(*.f64 (/.f64 (/.f64 1 (-.f64 x z)) (*.f64 (-.f64 x z) (-.f64 x z))) (*.f64 (*.f64 (-.f64 x z) (-.f64 x z)) (*.f64 (-.f64 x z) (-.f64 x z))))
(-.f64 x z)
(*.f64 (*.f64 (*.f64 (*.f64 (-.f64 x z) (-.f64 x z)) (*.f64 (-.f64 x z) (-.f64 x z))) (*.f64 (*.f64 (-.f64 x z) (-.f64 x z)) (*.f64 (-.f64 x z) (-.f64 x z)))) (/.f64 (/.f64 (/.f64 1 (-.f64 x z)) (*.f64 (-.f64 x z) (-.f64 x z))) (*.f64 (*.f64 (-.f64 x z) (-.f64 x z)) (*.f64 (-.f64 x z) (-.f64 x z)))))
(-.f64 x z)
(/.f64 (-.f64 x z) 1)
(-.f64 x z)
(/.f64 (-.f64 x z) (/.f64 (-.f64 z x) (-.f64 z x)))
(-.f64 x z)
(/.f64 (-.f64 z x) -1)
(-.f64 x z)
(pow.f64 (-.f64 x z) 1)
(-.f64 x z)
(neg.f64 (-.f64 z x))
(-.f64 x z)
(+.f64 (*.f64 y (-.f64 x z)) 0)
(*.f64 (-.f64 x z) y)
(+.f64 0 (*.f64 y (-.f64 x z)))
(*.f64 (-.f64 x z) y)
(-.f64 (*.f64 y (-.f64 x z)) 0)
(*.f64 (-.f64 x z) y)
(-.f64 0 (neg.f64 (*.f64 y (-.f64 x z))))
(*.f64 (-.f64 x z) y)
(-.f64 (-.f64 0 (-.f64 -1 (*.f64 y (-.f64 x z)))) 1)
(*.f64 (-.f64 x z) y)
(/.f64 (*.f64 y (-.f64 x z)) 1)
(*.f64 (-.f64 x z) y)
(/.f64 (*.f64 y (-.f64 x z)) (/.f64 (*.f64 y (-.f64 x z)) (*.f64 y (-.f64 x z))))
(*.f64 (-.f64 x z) y)
(pow.f64 (*.f64 y (-.f64 x z)) 1)
(*.f64 (-.f64 x z) y)
(neg.f64 (neg.f64 (*.f64 y (-.f64 x z))))
(*.f64 (-.f64 x z) y)

localize17.0ms (0.2%)

Local error

Found 2 expressions with local error:

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

Compiled 35 to 8 computations (77.1% saved)

series154.0ms (1.7%)

Counts
2 → 72
Calls

18 calls:

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

rewrite145.0ms (1.6%)

Algorithm
batch-egg-rewrite
Rules
770×rational.json-simplify-47
704×rational.json-simplify-54
632×rational.json-simplify-49
616×rational.json-simplify-50
582×rational.json-simplify-58
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01050
19044
233044
3123044
4489244
Stop Event
node limit
Counts
2 → 38
Calls
Call 1
Inputs
(+.f64 (*.f64 y y) (*.f64 y (-.f64 (-.f64 x z) y)))
(*.f64 y (-.f64 (-.f64 x z) y))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y y) (neg.f64 (*.f64 y (-.f64 x (+.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y (-.f64 x (+.f64 y z))) (neg.f64 (*.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 y y) (-.f64 -1 (*.f64 y (-.f64 x (+.f64 y z))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 0 (-.f64 -1 (*.f64 y y))) (-.f64 1 (*.f64 y (-.f64 x (+.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 y (-.f64 x (+.f64 y z))) (-.f64 -1 (*.f64 y y))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 0 (-.f64 -1 (*.f64 y (-.f64 x (+.f64 y z))))) (-.f64 1 (*.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 0 (-.f64 -1 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (+.f64 y (-.f64 x (+.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y y) (*.f64 (+.f64 y (-.f64 x (+.f64 y z))) (/.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y y) (+.f64 1 (*.f64 (-.f64 x (+.f64 y z)) (/.f64 1 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y y) (+.f64 (/.f64 y y) (*.f64 (-.f64 x (+.f64 y z)) (/.f64 1 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))) (/.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))) (*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))) (*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))) (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 y (-.f64 x (+.f64 y z))) y)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))) (*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))) (/.f64 1 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))) (*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))) (*.f64 (/.f64 1 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))) (*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))) (/.f64 (/.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))) (*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))) (*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))) (*.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))) (*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))) (*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))) (*.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))) (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))))) (/.f64 (/.f64 1 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))) (*.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))) (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))) (*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))) (*.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))) (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))))) (/.f64 (*.f64 (/.f64 1 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))) 1) (*.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))) (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (*.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))) (*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))) (*.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))) (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))))) (*.f64 (*.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))) (*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))) (*.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))) (*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))))) (/.f64 (/.f64 (/.f64 1 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))) (*.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))) (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))))) (*.f64 (*.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))) (*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))) (*.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))) (*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))) (/.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))) (*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y (-.f64 x (+.f64 y z))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 y (-.f64 x (+.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y (-.f64 x (+.f64 y z))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (*.f64 y (-.f64 x (+.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 0 (-.f64 -1 (*.f64 y (-.f64 x (+.f64 y z))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (-.f64 x (+.f64 y z))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (-.f64 x (+.f64 y z))) (/.f64 (*.f64 y (-.f64 x (+.f64 y z))) (*.f64 y (-.f64 x (+.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 y (-.f64 x (+.f64 y z))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (*.f64 y (-.f64 x (+.f64 y z)))))))))

simplify355.0ms (4%)

Algorithm
egg-herbie
Rules
1080×rational.json-simplify-49
1026×rational.json-simplify-111
908×rational.json-simplify-2
840×rational.json-simplify-1
830×rational.json-simplify-54
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01053182
12512752
26922590
321192590
462042590
Stop Event
node limit
Counts
110 → 86
Calls
Call 1
Inputs
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 -1 (*.f64 y (+.f64 y z))) (pow.f64 y 2))
(+.f64 (*.f64 y x) (+.f64 (pow.f64 y 2) (*.f64 -1 (*.f64 y (+.f64 y z)))))
(+.f64 (*.f64 y x) (+.f64 (pow.f64 y 2) (*.f64 -1 (*.f64 y (+.f64 y z)))))
(+.f64 (*.f64 y x) (+.f64 (pow.f64 y 2) (*.f64 -1 (*.f64 y (+.f64 y z)))))
(*.f64 y x)
(+.f64 (*.f64 y x) (+.f64 (*.f64 -1 (*.f64 y (+.f64 y z))) (pow.f64 y 2)))
(+.f64 (*.f64 y x) (+.f64 (*.f64 -1 (*.f64 y (+.f64 y z))) (pow.f64 y 2)))
(+.f64 (*.f64 y x) (+.f64 (*.f64 -1 (*.f64 y (+.f64 y z))) (pow.f64 y 2)))
(*.f64 y x)
(+.f64 (*.f64 y x) (+.f64 (pow.f64 y 2) (*.f64 -1 (*.f64 y (+.f64 y z)))))
(+.f64 (*.f64 y x) (+.f64 (pow.f64 y 2) (*.f64 -1 (*.f64 y (+.f64 y z)))))
(+.f64 (*.f64 y x) (+.f64 (pow.f64 y 2) (*.f64 -1 (*.f64 y (+.f64 y z)))))
(+.f64 (*.f64 y (-.f64 x y)) (pow.f64 y 2))
(+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 (pow.f64 y 2) (*.f64 y (-.f64 x y))))
(+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 (pow.f64 y 2) (*.f64 y (-.f64 x y))))
(+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 (pow.f64 y 2) (*.f64 y (-.f64 x y))))
(*.f64 -1 (*.f64 y z))
(+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 (*.f64 y (-.f64 x y)) (pow.f64 y 2)))
(+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 (*.f64 y (-.f64 x y)) (pow.f64 y 2)))
(+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 (*.f64 y (-.f64 x y)) (pow.f64 y 2)))
(*.f64 -1 (*.f64 y z))
(+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 (pow.f64 y 2) (*.f64 y (-.f64 x y))))
(+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 (pow.f64 y 2) (*.f64 y (-.f64 x y))))
(+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 (pow.f64 y 2) (*.f64 y (-.f64 x y))))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (*.f64 y (-.f64 x z)))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (*.f64 y (-.f64 x z)))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (*.f64 y (-.f64 x z)))
(*.f64 -1 (pow.f64 y 2))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (*.f64 y (-.f64 x z)))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (*.f64 y (-.f64 x z)))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (*.f64 y (-.f64 x z)))
(*.f64 -1 (pow.f64 y 2))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (*.f64 y (-.f64 x z)))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (*.f64 y (-.f64 x z)))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (*.f64 y (-.f64 x z)))
(*.f64 -1 (*.f64 y (+.f64 y z)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y (+.f64 y z))))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y (+.f64 y z))))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y (+.f64 y z))))
(*.f64 y x)
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y (+.f64 y z))))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y (+.f64 y z))))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y (+.f64 y z))))
(*.f64 y x)
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y (+.f64 y z))))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y (+.f64 y z))))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y (+.f64 y z))))
(*.f64 y (-.f64 x y))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y (-.f64 x y)))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y (-.f64 x y)))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y (-.f64 x y)))
(*.f64 -1 (*.f64 y z))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y (-.f64 x y)))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y (-.f64 x y)))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y (-.f64 x y)))
(*.f64 -1 (*.f64 y z))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y (-.f64 x y)))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y (-.f64 x y)))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y (-.f64 x y)))
(-.f64 (*.f64 y y) (neg.f64 (*.f64 y (-.f64 x (+.f64 y z)))))
(-.f64 (*.f64 y (-.f64 x (+.f64 y z))) (neg.f64 (*.f64 y y)))
(-.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))) 0)
(-.f64 0 (neg.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))))
(-.f64 (-.f64 (*.f64 y y) (-.f64 -1 (*.f64 y (-.f64 x (+.f64 y z))))) 1)
(-.f64 (-.f64 0 (-.f64 -1 (*.f64 y y))) (-.f64 1 (*.f64 y (-.f64 x (+.f64 y z)))))
(-.f64 (-.f64 (*.f64 y (-.f64 x (+.f64 y z))) (-.f64 -1 (*.f64 y y))) 1)
(-.f64 (-.f64 0 (-.f64 -1 (*.f64 y (-.f64 x (+.f64 y z))))) (-.f64 1 (*.f64 y y)))
(-.f64 (-.f64 0 (-.f64 -1 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))))) 1)
(*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))
(*.f64 (*.f64 y y) (*.f64 (+.f64 y (-.f64 x (+.f64 y z))) (/.f64 1 y)))
(*.f64 (*.f64 y y) (+.f64 1 (*.f64 (-.f64 x (+.f64 y z)) (/.f64 1 y))))
(*.f64 (*.f64 y y) (+.f64 (/.f64 y y) (*.f64 (-.f64 x (+.f64 y z)) (/.f64 1 y))))
(*.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))) 1)
(*.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))) (/.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))) (*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))))
(*.f64 1 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))))
(*.f64 (/.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))) (*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))) (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))))
(*.f64 (+.f64 y (-.f64 x (+.f64 y z))) y)
(*.f64 (*.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))) (*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))) (/.f64 1 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))))
(*.f64 (*.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))) (*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))) (*.f64 (/.f64 1 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))) 1))
(*.f64 (*.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))) (*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))) (/.f64 (/.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))) (*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))) (*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))))
(*.f64 (/.f64 1 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))) (*.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))) (*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))))
(*.f64 (*.f64 (*.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))) (*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))) (*.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))) (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))))) (/.f64 (/.f64 1 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))) (*.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))) (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))))))
(*.f64 (*.f64 (*.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))) (*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))) (*.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))) (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))))) (/.f64 (*.f64 (/.f64 1 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))) 1) (*.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))) (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))))))
(*.f64 (*.f64 (*.f64 (*.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))) (*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))) (*.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))) (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))))) (*.f64 (*.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))) (*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))) (*.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))) (*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))))) (/.f64 (/.f64 (/.f64 1 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))) (*.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))) (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))))) (*.f64 (*.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))) (*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))) (*.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))) (*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))))))
(/.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))) 1)
(/.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))) (/.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))) (*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))))
(pow.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))) 1)
(neg.f64 (neg.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))))
(+.f64 (*.f64 y (-.f64 x (+.f64 y z))) 0)
(+.f64 0 (*.f64 y (-.f64 x (+.f64 y z))))
(-.f64 (*.f64 y (-.f64 x (+.f64 y z))) 0)
(-.f64 0 (neg.f64 (*.f64 y (-.f64 x (+.f64 y z)))))
(-.f64 (-.f64 0 (-.f64 -1 (*.f64 y (-.f64 x (+.f64 y z))))) 1)
(/.f64 (*.f64 y (-.f64 x (+.f64 y z))) 1)
(/.f64 (*.f64 y (-.f64 x (+.f64 y z))) (/.f64 (*.f64 y (-.f64 x (+.f64 y z))) (*.f64 y (-.f64 x (+.f64 y z)))))
(pow.f64 (*.f64 y (-.f64 x (+.f64 y z))) 1)
(neg.f64 (neg.f64 (*.f64 y (-.f64 x (+.f64 y z)))))
Outputs
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 -1 (*.f64 y (+.f64 y z))) (pow.f64 y 2))
(+.f64 (*.f64 y (*.f64 (+.f64 y z) -1)) (pow.f64 y 2))
(+.f64 (*.f64 y (neg.f64 (+.f64 y z))) (pow.f64 y 2))
(+.f64 (*.f64 y (-.f64 (neg.f64 z) y)) (pow.f64 y 2))
(+.f64 (*.f64 y (-.f64 (neg.f64 y) z)) (pow.f64 y 2))
(+.f64 (*.f64 y x) (+.f64 (pow.f64 y 2) (*.f64 -1 (*.f64 y (+.f64 y z)))))
(+.f64 (*.f64 y (*.f64 (+.f64 y z) -1)) (+.f64 (pow.f64 y 2) (*.f64 y x)))
(+.f64 (pow.f64 y 2) (*.f64 y (+.f64 x (neg.f64 (+.f64 y z)))))
(+.f64 (pow.f64 y 2) (*.f64 y (+.f64 x (-.f64 (neg.f64 z) y))))
(+.f64 (pow.f64 y 2) (*.f64 y (+.f64 x (-.f64 (neg.f64 y) z))))
(+.f64 (*.f64 y x) (+.f64 (pow.f64 y 2) (*.f64 -1 (*.f64 y (+.f64 y z)))))
(+.f64 (*.f64 y (*.f64 (+.f64 y z) -1)) (+.f64 (pow.f64 y 2) (*.f64 y x)))
(+.f64 (pow.f64 y 2) (*.f64 y (+.f64 x (neg.f64 (+.f64 y z)))))
(+.f64 (pow.f64 y 2) (*.f64 y (+.f64 x (-.f64 (neg.f64 z) y))))
(+.f64 (pow.f64 y 2) (*.f64 y (+.f64 x (-.f64 (neg.f64 y) z))))
(+.f64 (*.f64 y x) (+.f64 (pow.f64 y 2) (*.f64 -1 (*.f64 y (+.f64 y z)))))
(+.f64 (*.f64 y (*.f64 (+.f64 y z) -1)) (+.f64 (pow.f64 y 2) (*.f64 y x)))
(+.f64 (pow.f64 y 2) (*.f64 y (+.f64 x (neg.f64 (+.f64 y z)))))
(+.f64 (pow.f64 y 2) (*.f64 y (+.f64 x (-.f64 (neg.f64 z) y))))
(+.f64 (pow.f64 y 2) (*.f64 y (+.f64 x (-.f64 (neg.f64 y) z))))
(*.f64 y x)
(+.f64 (*.f64 y x) (+.f64 (*.f64 -1 (*.f64 y (+.f64 y z))) (pow.f64 y 2)))
(+.f64 (*.f64 y (*.f64 (+.f64 y z) -1)) (+.f64 (pow.f64 y 2) (*.f64 y x)))
(+.f64 (pow.f64 y 2) (*.f64 y (+.f64 x (neg.f64 (+.f64 y z)))))
(+.f64 (pow.f64 y 2) (*.f64 y (+.f64 x (-.f64 (neg.f64 z) y))))
(+.f64 (pow.f64 y 2) (*.f64 y (+.f64 x (-.f64 (neg.f64 y) z))))
(+.f64 (*.f64 y x) (+.f64 (*.f64 -1 (*.f64 y (+.f64 y z))) (pow.f64 y 2)))
(+.f64 (*.f64 y (*.f64 (+.f64 y z) -1)) (+.f64 (pow.f64 y 2) (*.f64 y x)))
(+.f64 (pow.f64 y 2) (*.f64 y (+.f64 x (neg.f64 (+.f64 y z)))))
(+.f64 (pow.f64 y 2) (*.f64 y (+.f64 x (-.f64 (neg.f64 z) y))))
(+.f64 (pow.f64 y 2) (*.f64 y (+.f64 x (-.f64 (neg.f64 y) z))))
(+.f64 (*.f64 y x) (+.f64 (*.f64 -1 (*.f64 y (+.f64 y z))) (pow.f64 y 2)))
(+.f64 (*.f64 y (*.f64 (+.f64 y z) -1)) (+.f64 (pow.f64 y 2) (*.f64 y x)))
(+.f64 (pow.f64 y 2) (*.f64 y (+.f64 x (neg.f64 (+.f64 y z)))))
(+.f64 (pow.f64 y 2) (*.f64 y (+.f64 x (-.f64 (neg.f64 z) y))))
(+.f64 (pow.f64 y 2) (*.f64 y (+.f64 x (-.f64 (neg.f64 y) z))))
(*.f64 y x)
(+.f64 (*.f64 y x) (+.f64 (pow.f64 y 2) (*.f64 -1 (*.f64 y (+.f64 y z)))))
(+.f64 (*.f64 y (*.f64 (+.f64 y z) -1)) (+.f64 (pow.f64 y 2) (*.f64 y x)))
(+.f64 (pow.f64 y 2) (*.f64 y (+.f64 x (neg.f64 (+.f64 y z)))))
(+.f64 (pow.f64 y 2) (*.f64 y (+.f64 x (-.f64 (neg.f64 z) y))))
(+.f64 (pow.f64 y 2) (*.f64 y (+.f64 x (-.f64 (neg.f64 y) z))))
(+.f64 (*.f64 y x) (+.f64 (pow.f64 y 2) (*.f64 -1 (*.f64 y (+.f64 y z)))))
(+.f64 (*.f64 y (*.f64 (+.f64 y z) -1)) (+.f64 (pow.f64 y 2) (*.f64 y x)))
(+.f64 (pow.f64 y 2) (*.f64 y (+.f64 x (neg.f64 (+.f64 y z)))))
(+.f64 (pow.f64 y 2) (*.f64 y (+.f64 x (-.f64 (neg.f64 z) y))))
(+.f64 (pow.f64 y 2) (*.f64 y (+.f64 x (-.f64 (neg.f64 y) z))))
(+.f64 (*.f64 y x) (+.f64 (pow.f64 y 2) (*.f64 -1 (*.f64 y (+.f64 y z)))))
(+.f64 (*.f64 y (*.f64 (+.f64 y z) -1)) (+.f64 (pow.f64 y 2) (*.f64 y x)))
(+.f64 (pow.f64 y 2) (*.f64 y (+.f64 x (neg.f64 (+.f64 y z)))))
(+.f64 (pow.f64 y 2) (*.f64 y (+.f64 x (-.f64 (neg.f64 z) y))))
(+.f64 (pow.f64 y 2) (*.f64 y (+.f64 x (-.f64 (neg.f64 y) z))))
(+.f64 (*.f64 y (-.f64 x y)) (pow.f64 y 2))
(+.f64 (pow.f64 y 2) (*.f64 y (-.f64 x y)))
(+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 (pow.f64 y 2) (*.f64 y (-.f64 x y))))
(+.f64 (pow.f64 y 2) (+.f64 (*.f64 y (-.f64 x y)) (*.f64 y (*.f64 z -1))))
(+.f64 (pow.f64 y 2) (*.f64 y (+.f64 (-.f64 x y) (neg.f64 z))))
(+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 (pow.f64 y 2) (*.f64 y (-.f64 x y))))
(+.f64 (pow.f64 y 2) (+.f64 (*.f64 y (-.f64 x y)) (*.f64 y (*.f64 z -1))))
(+.f64 (pow.f64 y 2) (*.f64 y (+.f64 (-.f64 x y) (neg.f64 z))))
(+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 (pow.f64 y 2) (*.f64 y (-.f64 x y))))
(+.f64 (pow.f64 y 2) (+.f64 (*.f64 y (-.f64 x y)) (*.f64 y (*.f64 z -1))))
(+.f64 (pow.f64 y 2) (*.f64 y (+.f64 (-.f64 x y) (neg.f64 z))))
(*.f64 -1 (*.f64 y z))
(*.f64 y (*.f64 z -1))
(*.f64 y (neg.f64 z))
(+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 (*.f64 y (-.f64 x y)) (pow.f64 y 2)))
(+.f64 (pow.f64 y 2) (+.f64 (*.f64 y (-.f64 x y)) (*.f64 y (*.f64 z -1))))
(+.f64 (pow.f64 y 2) (*.f64 y (+.f64 (-.f64 x y) (neg.f64 z))))
(+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 (*.f64 y (-.f64 x y)) (pow.f64 y 2)))
(+.f64 (pow.f64 y 2) (+.f64 (*.f64 y (-.f64 x y)) (*.f64 y (*.f64 z -1))))
(+.f64 (pow.f64 y 2) (*.f64 y (+.f64 (-.f64 x y) (neg.f64 z))))
(+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 (*.f64 y (-.f64 x y)) (pow.f64 y 2)))
(+.f64 (pow.f64 y 2) (+.f64 (*.f64 y (-.f64 x y)) (*.f64 y (*.f64 z -1))))
(+.f64 (pow.f64 y 2) (*.f64 y (+.f64 (-.f64 x y) (neg.f64 z))))
(*.f64 -1 (*.f64 y z))
(*.f64 y (*.f64 z -1))
(*.f64 y (neg.f64 z))
(+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 (pow.f64 y 2) (*.f64 y (-.f64 x y))))
(+.f64 (pow.f64 y 2) (+.f64 (*.f64 y (-.f64 x y)) (*.f64 y (*.f64 z -1))))
(+.f64 (pow.f64 y 2) (*.f64 y (+.f64 (-.f64 x y) (neg.f64 z))))
(+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 (pow.f64 y 2) (*.f64 y (-.f64 x y))))
(+.f64 (pow.f64 y 2) (+.f64 (*.f64 y (-.f64 x y)) (*.f64 y (*.f64 z -1))))
(+.f64 (pow.f64 y 2) (*.f64 y (+.f64 (-.f64 x y) (neg.f64 z))))
(+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 (pow.f64 y 2) (*.f64 y (-.f64 x y))))
(+.f64 (pow.f64 y 2) (+.f64 (*.f64 y (-.f64 x y)) (*.f64 y (*.f64 z -1))))
(+.f64 (pow.f64 y 2) (*.f64 y (+.f64 (-.f64 x y) (neg.f64 z))))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (*.f64 y (-.f64 x z)))
(+.f64 (*.f64 y (-.f64 x z)) (*.f64 -1 (pow.f64 y 2)))
(+.f64 (*.f64 y (-.f64 x z)) (neg.f64 (pow.f64 y 2)))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (*.f64 y (-.f64 x z)))
(+.f64 (*.f64 y (-.f64 x z)) (*.f64 -1 (pow.f64 y 2)))
(+.f64 (*.f64 y (-.f64 x z)) (neg.f64 (pow.f64 y 2)))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (*.f64 y (-.f64 x z)))
(+.f64 (*.f64 y (-.f64 x z)) (*.f64 -1 (pow.f64 y 2)))
(+.f64 (*.f64 y (-.f64 x z)) (neg.f64 (pow.f64 y 2)))
(*.f64 -1 (pow.f64 y 2))
(neg.f64 (pow.f64 y 2))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (*.f64 y (-.f64 x z)))
(+.f64 (*.f64 y (-.f64 x z)) (*.f64 -1 (pow.f64 y 2)))
(+.f64 (*.f64 y (-.f64 x z)) (neg.f64 (pow.f64 y 2)))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (*.f64 y (-.f64 x z)))
(+.f64 (*.f64 y (-.f64 x z)) (*.f64 -1 (pow.f64 y 2)))
(+.f64 (*.f64 y (-.f64 x z)) (neg.f64 (pow.f64 y 2)))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (*.f64 y (-.f64 x z)))
(+.f64 (*.f64 y (-.f64 x z)) (*.f64 -1 (pow.f64 y 2)))
(+.f64 (*.f64 y (-.f64 x z)) (neg.f64 (pow.f64 y 2)))
(*.f64 -1 (pow.f64 y 2))
(neg.f64 (pow.f64 y 2))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (*.f64 y (-.f64 x z)))
(+.f64 (*.f64 y (-.f64 x z)) (*.f64 -1 (pow.f64 y 2)))
(+.f64 (*.f64 y (-.f64 x z)) (neg.f64 (pow.f64 y 2)))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (*.f64 y (-.f64 x z)))
(+.f64 (*.f64 y (-.f64 x z)) (*.f64 -1 (pow.f64 y 2)))
(+.f64 (*.f64 y (-.f64 x z)) (neg.f64 (pow.f64 y 2)))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (*.f64 y (-.f64 x z)))
(+.f64 (*.f64 y (-.f64 x z)) (*.f64 -1 (pow.f64 y 2)))
(+.f64 (*.f64 y (-.f64 x z)) (neg.f64 (pow.f64 y 2)))
(*.f64 -1 (*.f64 y (+.f64 y z)))
(*.f64 y (*.f64 (+.f64 y z) -1))
(*.f64 y (neg.f64 (+.f64 y z)))
(*.f64 y (-.f64 (neg.f64 z) y))
(*.f64 y (-.f64 (neg.f64 y) z))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y (+.f64 y z))))
(+.f64 (*.f64 y (*.f64 (+.f64 y z) -1)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 (+.f64 y z))))
(*.f64 y (+.f64 x (-.f64 (neg.f64 z) y)))
(*.f64 y (+.f64 x (-.f64 (neg.f64 y) z)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y (+.f64 y z))))
(+.f64 (*.f64 y (*.f64 (+.f64 y z) -1)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 (+.f64 y z))))
(*.f64 y (+.f64 x (-.f64 (neg.f64 z) y)))
(*.f64 y (+.f64 x (-.f64 (neg.f64 y) z)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y (+.f64 y z))))
(+.f64 (*.f64 y (*.f64 (+.f64 y z) -1)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 (+.f64 y z))))
(*.f64 y (+.f64 x (-.f64 (neg.f64 z) y)))
(*.f64 y (+.f64 x (-.f64 (neg.f64 y) z)))
(*.f64 y x)
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y (+.f64 y z))))
(+.f64 (*.f64 y (*.f64 (+.f64 y z) -1)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 (+.f64 y z))))
(*.f64 y (+.f64 x (-.f64 (neg.f64 z) y)))
(*.f64 y (+.f64 x (-.f64 (neg.f64 y) z)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y (+.f64 y z))))
(+.f64 (*.f64 y (*.f64 (+.f64 y z) -1)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 (+.f64 y z))))
(*.f64 y (+.f64 x (-.f64 (neg.f64 z) y)))
(*.f64 y (+.f64 x (-.f64 (neg.f64 y) z)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y (+.f64 y z))))
(+.f64 (*.f64 y (*.f64 (+.f64 y z) -1)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 (+.f64 y z))))
(*.f64 y (+.f64 x (-.f64 (neg.f64 z) y)))
(*.f64 y (+.f64 x (-.f64 (neg.f64 y) z)))
(*.f64 y x)
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y (+.f64 y z))))
(+.f64 (*.f64 y (*.f64 (+.f64 y z) -1)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 (+.f64 y z))))
(*.f64 y (+.f64 x (-.f64 (neg.f64 z) y)))
(*.f64 y (+.f64 x (-.f64 (neg.f64 y) z)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y (+.f64 y z))))
(+.f64 (*.f64 y (*.f64 (+.f64 y z) -1)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 (+.f64 y z))))
(*.f64 y (+.f64 x (-.f64 (neg.f64 z) y)))
(*.f64 y (+.f64 x (-.f64 (neg.f64 y) z)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y (+.f64 y z))))
(+.f64 (*.f64 y (*.f64 (+.f64 y z) -1)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 (+.f64 y z))))
(*.f64 y (+.f64 x (-.f64 (neg.f64 z) y)))
(*.f64 y (+.f64 x (-.f64 (neg.f64 y) z)))
(*.f64 y (-.f64 x y))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y (-.f64 x y)))
(+.f64 (*.f64 y (-.f64 x y)) (*.f64 y (*.f64 z -1)))
(*.f64 y (+.f64 (-.f64 x y) (neg.f64 z)))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y (-.f64 x y)))
(+.f64 (*.f64 y (-.f64 x y)) (*.f64 y (*.f64 z -1)))
(*.f64 y (+.f64 (-.f64 x y) (neg.f64 z)))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y (-.f64 x y)))
(+.f64 (*.f64 y (-.f64 x y)) (*.f64 y (*.f64 z -1)))
(*.f64 y (+.f64 (-.f64 x y) (neg.f64 z)))
(*.f64 -1 (*.f64 y z))
(*.f64 y (*.f64 z -1))
(*.f64 y (neg.f64 z))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y (-.f64 x y)))
(+.f64 (*.f64 y (-.f64 x y)) (*.f64 y (*.f64 z -1)))
(*.f64 y (+.f64 (-.f64 x y) (neg.f64 z)))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y (-.f64 x y)))
(+.f64 (*.f64 y (-.f64 x y)) (*.f64 y (*.f64 z -1)))
(*.f64 y (+.f64 (-.f64 x y) (neg.f64 z)))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y (-.f64 x y)))
(+.f64 (*.f64 y (-.f64 x y)) (*.f64 y (*.f64 z -1)))
(*.f64 y (+.f64 (-.f64 x y) (neg.f64 z)))
(*.f64 -1 (*.f64 y z))
(*.f64 y (*.f64 z -1))
(*.f64 y (neg.f64 z))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y (-.f64 x y)))
(+.f64 (*.f64 y (-.f64 x y)) (*.f64 y (*.f64 z -1)))
(*.f64 y (+.f64 (-.f64 x y) (neg.f64 z)))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y (-.f64 x y)))
(+.f64 (*.f64 y (-.f64 x y)) (*.f64 y (*.f64 z -1)))
(*.f64 y (+.f64 (-.f64 x y) (neg.f64 z)))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y (-.f64 x y)))
(+.f64 (*.f64 y (-.f64 x y)) (*.f64 y (*.f64 z -1)))
(*.f64 y (+.f64 (-.f64 x y) (neg.f64 z)))
(-.f64 (*.f64 y y) (neg.f64 (*.f64 y (-.f64 x (+.f64 y z)))))
(+.f64 (*.f64 y y) (*.f64 y (-.f64 (-.f64 x y) z)))
(*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))
(-.f64 (*.f64 y (-.f64 x (+.f64 y z))) (neg.f64 (*.f64 y y)))
(-.f64 (*.f64 y y) (neg.f64 (*.f64 y (-.f64 x (+.f64 y z)))))
(+.f64 (*.f64 y y) (*.f64 y (-.f64 (-.f64 x y) z)))
(*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))
(-.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))) 0)
(-.f64 (*.f64 y y) (neg.f64 (*.f64 y (-.f64 x (+.f64 y z)))))
(+.f64 (*.f64 y y) (*.f64 y (-.f64 (-.f64 x y) z)))
(*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))
(-.f64 0 (neg.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))))
(-.f64 (*.f64 y y) (neg.f64 (*.f64 y (-.f64 x (+.f64 y z)))))
(+.f64 (*.f64 y y) (*.f64 y (-.f64 (-.f64 x y) z)))
(*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))
(-.f64 (-.f64 (*.f64 y y) (-.f64 -1 (*.f64 y (-.f64 x (+.f64 y z))))) 1)
(-.f64 (*.f64 y y) (neg.f64 (*.f64 y (-.f64 x (+.f64 y z)))))
(+.f64 (*.f64 y y) (*.f64 y (-.f64 (-.f64 x y) z)))
(*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))
(-.f64 (-.f64 0 (-.f64 -1 (*.f64 y y))) (-.f64 1 (*.f64 y (-.f64 x (+.f64 y z)))))
(-.f64 (*.f64 y y) (neg.f64 (*.f64 y (-.f64 x (+.f64 y z)))))
(+.f64 (*.f64 y y) (*.f64 y (-.f64 (-.f64 x y) z)))
(*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))
(-.f64 (-.f64 (*.f64 y (-.f64 x (+.f64 y z))) (-.f64 -1 (*.f64 y y))) 1)
(-.f64 (*.f64 y y) (neg.f64 (*.f64 y (-.f64 x (+.f64 y z)))))
(+.f64 (*.f64 y y) (*.f64 y (-.f64 (-.f64 x y) z)))
(*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))
(-.f64 (-.f64 0 (-.f64 -1 (*.f64 y (-.f64 x (+.f64 y z))))) (-.f64 1 (*.f64 y y)))
(-.f64 (*.f64 y y) (neg.f64 (*.f64 y (-.f64 x (+.f64 y z)))))
(+.f64 (*.f64 y y) (*.f64 y (-.f64 (-.f64 x y) z)))
(*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))
(-.f64 (-.f64 0 (-.f64 -1 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))))) 1)
(-.f64 (*.f64 y y) (neg.f64 (*.f64 y (-.f64 x (+.f64 y z)))))
(+.f64 (*.f64 y y) (*.f64 y (-.f64 (-.f64 x y) z)))
(*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))
(*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))
(-.f64 (*.f64 y y) (neg.f64 (*.f64 y (-.f64 x (+.f64 y z)))))
(+.f64 (*.f64 y y) (*.f64 y (-.f64 (-.f64 x y) z)))
(*.f64 (*.f64 y y) (*.f64 (+.f64 y (-.f64 x (+.f64 y z))) (/.f64 1 y)))
(-.f64 (*.f64 y y) (neg.f64 (*.f64 y (-.f64 x (+.f64 y z)))))
(+.f64 (*.f64 y y) (*.f64 y (-.f64 (-.f64 x y) z)))
(*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))
(*.f64 (*.f64 y y) (+.f64 1 (*.f64 (-.f64 x (+.f64 y z)) (/.f64 1 y))))
(*.f64 (*.f64 y y) (+.f64 1 (*.f64 (-.f64 (-.f64 x y) z) (/.f64 1 y))))
(*.f64 (*.f64 y y) (+.f64 (/.f64 y y) (*.f64 (-.f64 x (+.f64 y z)) (/.f64 1 y))))
(*.f64 (*.f64 y y) (+.f64 (*.f64 (-.f64 x (+.f64 y z)) (/.f64 1 y)) (/.f64 y y)))
(*.f64 y (*.f64 y (+.f64 (*.f64 (-.f64 (-.f64 x y) z) (/.f64 1 y)) (/.f64 y y))))
(*.f64 y (*.f64 y (+.f64 (*.f64 (-.f64 x (+.f64 y z)) (/.f64 1 y)) (/.f64 y y))))
(*.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))) 1)
(-.f64 (*.f64 y y) (neg.f64 (*.f64 y (-.f64 x (+.f64 y z)))))
(+.f64 (*.f64 y y) (*.f64 y (-.f64 (-.f64 x y) z)))
(*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))
(*.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))) (/.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))) (*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))))
(-.f64 (*.f64 y y) (neg.f64 (*.f64 y (-.f64 x (+.f64 y z)))))
(+.f64 (*.f64 y y) (*.f64 y (-.f64 (-.f64 x y) z)))
(*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))
(*.f64 1 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))))
(-.f64 (*.f64 y y) (neg.f64 (*.f64 y (-.f64 x (+.f64 y z)))))
(+.f64 (*.f64 y y) (*.f64 y (-.f64 (-.f64 x y) z)))
(*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))
(*.f64 (/.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))) (*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))) (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))))
(-.f64 (*.f64 y y) (neg.f64 (*.f64 y (-.f64 x (+.f64 y z)))))
(+.f64 (*.f64 y y) (*.f64 y (-.f64 (-.f64 x y) z)))
(*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))
(*.f64 (+.f64 y (-.f64 x (+.f64 y z))) y)
(-.f64 (*.f64 y y) (neg.f64 (*.f64 y (-.f64 x (+.f64 y z)))))
(+.f64 (*.f64 y y) (*.f64 y (-.f64 (-.f64 x y) z)))
(*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))
(*.f64 (*.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))) (*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))) (/.f64 1 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))))
(-.f64 (*.f64 y y) (neg.f64 (*.f64 y (-.f64 x (+.f64 y z)))))
(+.f64 (*.f64 y y) (*.f64 y (-.f64 (-.f64 x y) z)))
(*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))
(*.f64 (*.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))) (*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))) (*.f64 (/.f64 1 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))) 1))
(-.f64 (*.f64 y y) (neg.f64 (*.f64 y (-.f64 x (+.f64 y z)))))
(+.f64 (*.f64 y y) (*.f64 y (-.f64 (-.f64 x y) z)))
(*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))
(*.f64 (*.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))) (*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))) (/.f64 (/.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))) (*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))) (*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))))
(-.f64 (*.f64 y y) (neg.f64 (*.f64 y (-.f64 x (+.f64 y z)))))
(+.f64 (*.f64 y y) (*.f64 y (-.f64 (-.f64 x y) z)))
(*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))
(*.f64 (/.f64 1 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))) (*.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))) (*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))))
(-.f64 (*.f64 y y) (neg.f64 (*.f64 y (-.f64 x (+.f64 y z)))))
(+.f64 (*.f64 y y) (*.f64 y (-.f64 (-.f64 x y) z)))
(*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))
(*.f64 (*.f64 (*.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))) (*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))) (*.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))) (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))))) (/.f64 (/.f64 1 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))) (*.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))) (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))))))
(-.f64 (*.f64 y y) (neg.f64 (*.f64 y (-.f64 x (+.f64 y z)))))
(+.f64 (*.f64 y y) (*.f64 y (-.f64 (-.f64 x y) z)))
(*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))
(*.f64 (*.f64 (*.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))) (*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))) (*.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))) (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))))) (/.f64 (*.f64 (/.f64 1 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))) 1) (*.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))) (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))))))
(-.f64 (*.f64 y y) (neg.f64 (*.f64 y (-.f64 x (+.f64 y z)))))
(+.f64 (*.f64 y y) (*.f64 y (-.f64 (-.f64 x y) z)))
(*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))
(*.f64 (*.f64 (*.f64 (*.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))) (*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))) (*.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))) (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))))) (*.f64 (*.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))) (*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))) (*.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))) (*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))))) (/.f64 (/.f64 (/.f64 1 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))) (*.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))) (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))))) (*.f64 (*.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))) (*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))) (*.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))) (*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))))))
(-.f64 (*.f64 y y) (neg.f64 (*.f64 y (-.f64 x (+.f64 y z)))))
(+.f64 (*.f64 y y) (*.f64 y (-.f64 (-.f64 x y) z)))
(*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))
(/.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))) 1)
(-.f64 (*.f64 y y) (neg.f64 (*.f64 y (-.f64 x (+.f64 y z)))))
(+.f64 (*.f64 y y) (*.f64 y (-.f64 (-.f64 x y) z)))
(*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))
(/.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))) (/.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))) (*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))))
(-.f64 (*.f64 y y) (neg.f64 (*.f64 y (-.f64 x (+.f64 y z)))))
(+.f64 (*.f64 y y) (*.f64 y (-.f64 (-.f64 x y) z)))
(*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))
(pow.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))) 1)
(-.f64 (*.f64 y y) (neg.f64 (*.f64 y (-.f64 x (+.f64 y z)))))
(+.f64 (*.f64 y y) (*.f64 y (-.f64 (-.f64 x y) z)))
(*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))
(neg.f64 (neg.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))))
(-.f64 (*.f64 y y) (neg.f64 (*.f64 y (-.f64 x (+.f64 y z)))))
(+.f64 (*.f64 y y) (*.f64 y (-.f64 (-.f64 x y) z)))
(*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))
(+.f64 (*.f64 y (-.f64 x (+.f64 y z))) 0)
(*.f64 y (-.f64 x (+.f64 y z)))
(*.f64 y (-.f64 (-.f64 x y) z))
(+.f64 0 (*.f64 y (-.f64 x (+.f64 y z))))
(*.f64 y (-.f64 x (+.f64 y z)))
(*.f64 y (-.f64 (-.f64 x y) z))
(-.f64 (*.f64 y (-.f64 x (+.f64 y z))) 0)
(*.f64 y (-.f64 x (+.f64 y z)))
(*.f64 y (-.f64 (-.f64 x y) z))
(-.f64 0 (neg.f64 (*.f64 y (-.f64 x (+.f64 y z)))))
(*.f64 y (-.f64 x (+.f64 y z)))
(*.f64 y (-.f64 (-.f64 x y) z))
(-.f64 (-.f64 0 (-.f64 -1 (*.f64 y (-.f64 x (+.f64 y z))))) 1)
(*.f64 y (-.f64 x (+.f64 y z)))
(*.f64 y (-.f64 (-.f64 x y) z))
(/.f64 (*.f64 y (-.f64 x (+.f64 y z))) 1)
(*.f64 y (-.f64 x (+.f64 y z)))
(*.f64 y (-.f64 (-.f64 x y) z))
(/.f64 (*.f64 y (-.f64 x (+.f64 y z))) (/.f64 (*.f64 y (-.f64 x (+.f64 y z))) (*.f64 y (-.f64 x (+.f64 y z)))))
(*.f64 y (-.f64 x (+.f64 y z)))
(*.f64 y (-.f64 (-.f64 x y) z))
(pow.f64 (*.f64 y (-.f64 x (+.f64 y z))) 1)
(*.f64 y (-.f64 x (+.f64 y z)))
(*.f64 y (-.f64 (-.f64 x y) z))
(neg.f64 (neg.f64 (*.f64 y (-.f64 x (+.f64 y z)))))
(*.f64 y (-.f64 x (+.f64 y z)))
(*.f64 y (-.f64 (-.f64 x y) z))

localize22.0ms (0.2%)

Local error

Found 3 expressions with local error:

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

Compiled 42 to 9 computations (78.6% saved)

series144.0ms (1.6%)

Counts
3 → 96
Calls

24 calls:

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

rewrite166.0ms (1.9%)

Algorithm
batch-egg-rewrite
Rules
840×rational.json-simplify-47
750×rational.json-simplify-49
716×rational.json-simplify-50
606×rational.json-simplify-58
590×rational.json-5
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01175
19663
232457
3123157
4519257
Stop Event
node limit
Counts
3 → 70
Calls
Call 1
Inputs
(+.f64 (*.f64 y y) (-.f64 (*.f64 x y) (*.f64 y (+.f64 y z))))
(-.f64 (*.f64 x y) (*.f64 y (+.f64 y z)))
(*.f64 y (+.f64 y z))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y y) (*.f64 y (-.f64 z (-.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y x) (*.f64 y (-.f64 (+.f64 y z) y)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y x) (+.f64 (*.f64 y (+.f64 y z)) (neg.f64 (*.f64 y y))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y (-.f64 (-.f64 x y) z)) (neg.f64 (*.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y (+.f64 y (-.f64 (-.f64 x y) z))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (+.f64 (*.f64 y (-.f64 z (-.f64 x y))) (neg.f64 (*.f64 y y))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 y y) (neg.f64 (*.f64 y x))) (*.f64 y (+.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y (+.f64 y x)) (*.f64 y (+.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 0 (-.f64 -1 (*.f64 y y))) (-.f64 1 (*.f64 y (-.f64 (-.f64 x y) z))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 y (-.f64 (-.f64 x y) z)) (-.f64 -1 (*.f64 y y))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 0 (-.f64 (*.f64 y (-.f64 z (-.f64 x y))) 1)) (-.f64 1 (*.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 0 (-.f64 -1 (*.f64 y (+.f64 y (-.f64 (-.f64 x y) z))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 y y) (-.f64 (*.f64 y (-.f64 z (-.f64 x y))) 1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (+.f64 y (-.f64 (-.f64 x y) z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (*.f64 (+.f64 y (-.f64 (-.f64 x y) z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (-.f64 y (-.f64 z (-.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y y) (+.f64 1 (*.f64 (-.f64 (-.f64 x y) z) (/.f64 1 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y y) (+.f64 (/.f64 y y) (*.f64 (-.f64 (-.f64 x y) z) (/.f64 1 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y (+.f64 y (-.f64 (-.f64 x y) z))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y (+.f64 y (-.f64 (-.f64 x y) z))) (/.f64 (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y)) (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 y (+.f64 y (-.f64 (-.f64 x y) z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y)) (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y))) (*.f64 y (+.f64 y (-.f64 (-.f64 x y) z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y)) (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y))) (/.f64 1 (*.f64 y (+.f64 y (-.f64 (-.f64 x y) z)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y)) (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y))) (*.f64 (/.f64 1 (*.f64 y (+.f64 y (-.f64 (-.f64 x y) z)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y)) (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y))) (/.f64 (/.f64 (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y)) (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y))) (*.f64 y (+.f64 y (-.f64 (-.f64 x y) z)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 y (-.f64 (-.f64 x y) z)) y)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (*.f64 y (+.f64 y (-.f64 (-.f64 x y) z)))) (*.f64 (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y)) (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y)) (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y))) (*.f64 (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y)) (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y)))) (/.f64 (/.f64 1 (*.f64 y (+.f64 y (-.f64 (-.f64 x y) z)))) (*.f64 (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y)) (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y)) (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y))) (*.f64 (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y)) (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y)))) (/.f64 (*.f64 (/.f64 1 (*.f64 y (+.f64 y (-.f64 (-.f64 x y) z)))) 1) (*.f64 (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y)) (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (*.f64 (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y)) (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y))) (*.f64 (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y)) (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y)))) (*.f64 (*.f64 (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y)) (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y))) (*.f64 (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y)) (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y))))) (/.f64 (/.f64 (/.f64 1 (*.f64 y (+.f64 y (-.f64 (-.f64 x y) z)))) (*.f64 (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y)) (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y)))) (*.f64 (*.f64 (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y)) (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y))) (*.f64 (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y)) (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (+.f64 y (-.f64 (-.f64 x y) z))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (+.f64 y (-.f64 (-.f64 x y) z))) (/.f64 (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y)) (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 y (+.f64 y (-.f64 (-.f64 x y) z))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y (-.f64 (-.f64 x y) z)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 y (-.f64 (-.f64 x y) z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 1 (-.f64 (*.f64 y (-.f64 (-.f64 x y) z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 y (-.f64 (-.f64 x y) z)) 1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (-.f64 (-.f64 x y) z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y y) (*.f64 (-.f64 (-.f64 x y) z) (/.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y (-.f64 (-.f64 x y) z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y (-.f64 (-.f64 x y) z)) (/.f64 (*.f64 y (-.f64 (-.f64 x y) z)) (*.f64 y (-.f64 (-.f64 x y) z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 y (-.f64 (-.f64 x y) z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 y (-.f64 (-.f64 x y) z)) (*.f64 y (-.f64 (-.f64 x y) z))) (*.f64 y (-.f64 (-.f64 x y) z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y (-.f64 z (-.f64 x y))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (-.f64 x y) z) y)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 y (-.f64 z (-.f64 x y))) (*.f64 y (-.f64 z (-.f64 x y)))) (/.f64 1 (*.f64 y (-.f64 (-.f64 x y) z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 y (-.f64 z (-.f64 x y))) (*.f64 y (-.f64 z (-.f64 x y)))) (*.f64 (/.f64 1 (*.f64 y (-.f64 (-.f64 x y) z))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 y (-.f64 z (-.f64 x y))) (*.f64 y (-.f64 z (-.f64 x y)))) (/.f64 (/.f64 (*.f64 y (-.f64 (-.f64 x y) z)) (*.f64 y (-.f64 (-.f64 x y) z))) (*.f64 y (-.f64 (-.f64 x y) z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 y (-.f64 z (-.f64 x y))) (*.f64 y (-.f64 z (-.f64 x y)))) (/.f64 -1 (*.f64 y (-.f64 z (-.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (/.f64 (*.f64 y (-.f64 (-.f64 x y) z)) (*.f64 y (-.f64 (-.f64 x y) z)))) (-.f64 -1 (-.f64 (*.f64 y (-.f64 (-.f64 x y) z)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (*.f64 y (-.f64 (-.f64 x y) z))) (*.f64 (*.f64 y (-.f64 z (-.f64 x y))) (*.f64 y (-.f64 z (-.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y (*.f64 (*.f64 (*.f64 y (-.f64 z (-.f64 x y))) (*.f64 y (-.f64 z (-.f64 x y)))) (*.f64 y (*.f64 (-.f64 (-.f64 x y) z) (-.f64 (-.f64 x y) z))))) (/.f64 (/.f64 1 (*.f64 y (-.f64 (-.f64 x y) z))) (*.f64 (*.f64 y (-.f64 z (-.f64 x y))) (*.f64 y (-.f64 z (-.f64 x y))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y (*.f64 (*.f64 (*.f64 y (-.f64 z (-.f64 x y))) (*.f64 y (-.f64 z (-.f64 x y)))) (*.f64 y (*.f64 (-.f64 (-.f64 x y) z) (-.f64 (-.f64 x y) z))))) (/.f64 (*.f64 (/.f64 1 (*.f64 y (-.f64 (-.f64 x y) z))) 1) (*.f64 (*.f64 y (-.f64 z (-.f64 x y))) (*.f64 y (-.f64 z (-.f64 x y))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 y (*.f64 (*.f64 (*.f64 y (-.f64 z (-.f64 x y))) (*.f64 y (-.f64 z (-.f64 x y)))) (*.f64 y (*.f64 (-.f64 (-.f64 x y) z) (-.f64 (-.f64 x y) z))))) (*.f64 y (*.f64 (*.f64 (*.f64 y (-.f64 z (-.f64 x y))) (*.f64 y (-.f64 z (-.f64 x y)))) (*.f64 y (*.f64 (-.f64 (-.f64 x y) z) (-.f64 (-.f64 x y) z)))))) (/.f64 (/.f64 (/.f64 1 (*.f64 y (-.f64 (-.f64 x y) z))) (*.f64 (*.f64 y (-.f64 z (-.f64 x y))) (*.f64 y (-.f64 z (-.f64 x y))))) (*.f64 y (*.f64 (*.f64 (*.f64 y (-.f64 z (-.f64 x y))) (*.f64 y (-.f64 z (-.f64 x y)))) (*.f64 y (*.f64 (-.f64 (-.f64 x y) z) (-.f64 (-.f64 x y) z)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (-.f64 (-.f64 x y) z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (-.f64 (-.f64 x y) z)) (/.f64 (*.f64 y (-.f64 (-.f64 x y) z)) (*.f64 y (-.f64 (-.f64 x y) z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (-.f64 z (-.f64 x y))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 y (-.f64 (-.f64 x y) z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 y (-.f64 z (-.f64 x y))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y (+.f64 y z)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 y (+.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y (+.f64 y z)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (*.f64 y (+.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 0 (-.f64 -1 (*.f64 y (+.f64 y z)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (+.f64 y z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (+.f64 y z)) (/.f64 (*.f64 y (+.f64 y z)) (*.f64 y (+.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 y (+.f64 y z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (*.f64 y (+.f64 y z))))))))

simplify456.0ms (5.1%)

Algorithm
egg-herbie
Rules
1076×rational.json-simplify-43
996×rational.json-simplify-47
976×rational.json-simplify-54
656×rational.json-simplify-50
622×rational.json-simplify-46
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
01724386
13994050
29593852
331273552
468623498
Stop Event
node limit
Counts
166 → 133
Calls
Call 1
Inputs
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 x) (*.f64 -1 z))))
(*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 x) (*.f64 -1 z))))
(*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 x) (*.f64 -1 z))))
(*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 x) (*.f64 -1 z))))
(-.f64 (pow.f64 y 2) (*.f64 y (+.f64 y z)))
(-.f64 (+.f64 (*.f64 y x) (pow.f64 y 2)) (*.f64 y (+.f64 y z)))
(-.f64 (+.f64 (*.f64 y x) (pow.f64 y 2)) (*.f64 y (+.f64 y z)))
(-.f64 (+.f64 (*.f64 y x) (pow.f64 y 2)) (*.f64 y (+.f64 y z)))
(*.f64 y x)
(-.f64 (+.f64 (*.f64 y x) (pow.f64 y 2)) (*.f64 y (+.f64 y z)))
(-.f64 (+.f64 (*.f64 y x) (pow.f64 y 2)) (*.f64 y (+.f64 y z)))
(-.f64 (+.f64 (*.f64 y x) (pow.f64 y 2)) (*.f64 y (+.f64 y z)))
(*.f64 y x)
(-.f64 (+.f64 (*.f64 y x) (pow.f64 y 2)) (*.f64 y (+.f64 y z)))
(-.f64 (+.f64 (*.f64 y x) (pow.f64 y 2)) (*.f64 y (+.f64 y z)))
(-.f64 (+.f64 (*.f64 y x) (pow.f64 y 2)) (*.f64 y (+.f64 y z)))
(*.f64 y x)
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(*.f64 -1 (*.f64 y z))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(*.f64 -1 (*.f64 y z))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(*.f64 -1 (*.f64 y (+.f64 y z)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y (+.f64 y z))))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y (+.f64 y z))))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y (+.f64 y z))))
(*.f64 y x)
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y (+.f64 y z))))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y (+.f64 y z))))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y (+.f64 y z))))
(*.f64 y x)
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y (+.f64 y z))))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y (+.f64 y z))))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y (+.f64 y z))))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (*.f64 y (-.f64 x z)))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (*.f64 y (-.f64 x z)))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (*.f64 y (-.f64 x z)))
(*.f64 -1 (pow.f64 y 2))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (*.f64 y (-.f64 x z)))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (*.f64 y (-.f64 x z)))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (*.f64 y (-.f64 x z)))
(*.f64 -1 (pow.f64 y 2))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 x) (*.f64 -1 z)))))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 x) (*.f64 -1 z)))))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 x) (*.f64 -1 z)))))
(-.f64 (*.f64 y x) (pow.f64 y 2))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x)) (pow.f64 y 2))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x)) (pow.f64 y 2))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x)) (pow.f64 y 2))
(*.f64 -1 (*.f64 y z))
(-.f64 (+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z))) (pow.f64 y 2))
(-.f64 (+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z))) (pow.f64 y 2))
(-.f64 (+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z))) (pow.f64 y 2))
(*.f64 -1 (*.f64 y z))
(-.f64 (+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z))) (pow.f64 y 2))
(-.f64 (+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z))) (pow.f64 y 2))
(-.f64 (+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z))) (pow.f64 y 2))
(*.f64 y z)
(+.f64 (*.f64 y z) (pow.f64 y 2))
(+.f64 (*.f64 y z) (pow.f64 y 2))
(+.f64 (*.f64 y z) (pow.f64 y 2))
(pow.f64 y 2)
(+.f64 (*.f64 y z) (pow.f64 y 2))
(+.f64 (*.f64 y z) (pow.f64 y 2))
(+.f64 (*.f64 y z) (pow.f64 y 2))
(pow.f64 y 2)
(+.f64 (*.f64 y z) (pow.f64 y 2))
(+.f64 (*.f64 y z) (pow.f64 y 2))
(+.f64 (*.f64 y z) (pow.f64 y 2))
(pow.f64 y 2)
(+.f64 (*.f64 y z) (pow.f64 y 2))
(+.f64 (*.f64 y z) (pow.f64 y 2))
(+.f64 (*.f64 y z) (pow.f64 y 2))
(*.f64 y z)
(+.f64 (*.f64 y z) (pow.f64 y 2))
(+.f64 (*.f64 y z) (pow.f64 y 2))
(+.f64 (*.f64 y z) (pow.f64 y 2))
(*.f64 y z)
(+.f64 (*.f64 y z) (pow.f64 y 2))
(+.f64 (*.f64 y z) (pow.f64 y 2))
(+.f64 (*.f64 y z) (pow.f64 y 2))
(-.f64 (*.f64 y y) (*.f64 y (-.f64 z (-.f64 x y))))
(-.f64 (*.f64 y x) (*.f64 y (-.f64 (+.f64 y z) y)))
(-.f64 (*.f64 y x) (+.f64 (*.f64 y (+.f64 y z)) (neg.f64 (*.f64 y y))))
(-.f64 (*.f64 y (-.f64 (-.f64 x y) z)) (neg.f64 (*.f64 y y)))
(-.f64 (*.f64 y (+.f64 y (-.f64 (-.f64 x y) z))) 0)
(-.f64 0 (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y)))
(-.f64 0 (+.f64 (*.f64 y (-.f64 z (-.f64 x y))) (neg.f64 (*.f64 y y))))
(-.f64 (-.f64 (*.f64 y y) (neg.f64 (*.f64 y x))) (*.f64 y (+.f64 y z)))
(-.f64 (*.f64 y (+.f64 y x)) (*.f64 y (+.f64 y z)))
(-.f64 (-.f64 0 (-.f64 -1 (*.f64 y y))) (-.f64 1 (*.f64 y (-.f64 (-.f64 x y) z))))
(-.f64 (-.f64 (*.f64 y (-.f64 (-.f64 x y) z)) (-.f64 -1 (*.f64 y y))) 1)
(-.f64 (-.f64 0 (-.f64 (*.f64 y (-.f64 z (-.f64 x y))) 1)) (-.f64 1 (*.f64 y y)))
(-.f64 (-.f64 0 (-.f64 -1 (*.f64 y (+.f64 y (-.f64 (-.f64 x y) z))))) 1)
(-.f64 (-.f64 (*.f64 y y) (-.f64 (*.f64 y (-.f64 z (-.f64 x y))) 1)) 1)
(*.f64 y (+.f64 y (-.f64 (-.f64 x y) z)))
(*.f64 y (*.f64 (+.f64 y (-.f64 (-.f64 x y) z)) 1))
(*.f64 y (-.f64 y (-.f64 z (-.f64 x y))))
(*.f64 (*.f64 y y) (+.f64 1 (*.f64 (-.f64 (-.f64 x y) z) (/.f64 1 y))))
(*.f64 (*.f64 y y) (+.f64 (/.f64 y y) (*.f64 (-.f64 (-.f64 x y) z) (/.f64 1 y))))
(*.f64 (*.f64 y (+.f64 y (-.f64 (-.f64 x y) z))) 1)
(*.f64 (*.f64 y (+.f64 y (-.f64 (-.f64 x y) z))) (/.f64 (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y)) (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y))))
(*.f64 1 (*.f64 y (+.f64 y (-.f64 (-.f64 x y) z))))
(*.f64 (/.f64 (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y)) (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y))) (*.f64 y (+.f64 y (-.f64 (-.f64 x y) z))))
(*.f64 (*.f64 (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y)) (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y))) (/.f64 1 (*.f64 y (+.f64 y (-.f64 (-.f64 x y) z)))))
(*.f64 (*.f64 (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y)) (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y))) (*.f64 (/.f64 1 (*.f64 y (+.f64 y (-.f64 (-.f64 x y) z)))) 1))
(*.f64 (*.f64 (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y)) (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y))) (/.f64 (/.f64 (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y)) (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y))) (*.f64 y (+.f64 y (-.f64 (-.f64 x y) z)))))
(*.f64 (+.f64 y (-.f64 (-.f64 x y) z)) y)
(*.f64 (/.f64 1 (*.f64 y (+.f64 y (-.f64 (-.f64 x y) z)))) (*.f64 (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y)) (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y))))
(*.f64 (*.f64 (*.f64 (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y)) (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y))) (*.f64 (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y)) (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y)))) (/.f64 (/.f64 1 (*.f64 y (+.f64 y (-.f64 (-.f64 x y) z)))) (*.f64 (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y)) (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y)))))
(*.f64 (*.f64 (*.f64 (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y)) (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y))) (*.f64 (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y)) (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y)))) (/.f64 (*.f64 (/.f64 1 (*.f64 y (+.f64 y (-.f64 (-.f64 x y) z)))) 1) (*.f64 (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y)) (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y)))))
(*.f64 (*.f64 (*.f64 (*.f64 (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y)) (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y))) (*.f64 (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y)) (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y)))) (*.f64 (*.f64 (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y)) (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y))) (*.f64 (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y)) (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y))))) (/.f64 (/.f64 (/.f64 1 (*.f64 y (+.f64 y (-.f64 (-.f64 x y) z)))) (*.f64 (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y)) (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y)))) (*.f64 (*.f64 (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y)) (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y))) (*.f64 (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y)) (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y))))))
(/.f64 (*.f64 y (+.f64 y (-.f64 (-.f64 x y) z))) 1)
(/.f64 (*.f64 y (+.f64 y (-.f64 (-.f64 x y) z))) (/.f64 (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y)) (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y))))
(pow.f64 (*.f64 y (+.f64 y (-.f64 (-.f64 x y) z))) 1)
(neg.f64 (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y)))
(+.f64 (*.f64 y (-.f64 (-.f64 x y) z)) 0)
(+.f64 0 (*.f64 y (-.f64 (-.f64 x y) z)))
(+.f64 1 (-.f64 (*.f64 y (-.f64 (-.f64 x y) z)) 1))
(+.f64 (-.f64 (*.f64 y (-.f64 (-.f64 x y) z)) 1) 1)
(*.f64 y (-.f64 (-.f64 x y) z))
(*.f64 (*.f64 y y) (*.f64 (-.f64 (-.f64 x y) z) (/.f64 1 y)))
(*.f64 (*.f64 y (-.f64 (-.f64 x y) z)) 1)
(*.f64 (*.f64 y (-.f64 (-.f64 x y) z)) (/.f64 (*.f64 y (-.f64 (-.f64 x y) z)) (*.f64 y (-.f64 (-.f64 x y) z))))
(*.f64 1 (*.f64 y (-.f64 (-.f64 x y) z)))
(*.f64 (/.f64 (*.f64 y (-.f64 (-.f64 x y) z)) (*.f64 y (-.f64 (-.f64 x y) z))) (*.f64 y (-.f64 (-.f64 x y) z)))
(*.f64 (*.f64 y (-.f64 z (-.f64 x y))) -1)
(*.f64 (-.f64 (-.f64 x y) z) y)
(*.f64 (*.f64 (*.f64 y (-.f64 z (-.f64 x y))) (*.f64 y (-.f64 z (-.f64 x y)))) (/.f64 1 (*.f64 y (-.f64 (-.f64 x y) z))))
(*.f64 (*.f64 (*.f64 y (-.f64 z (-.f64 x y))) (*.f64 y (-.f64 z (-.f64 x y)))) (*.f64 (/.f64 1 (*.f64 y (-.f64 (-.f64 x y) z))) 1))
(*.f64 (*.f64 (*.f64 y (-.f64 z (-.f64 x y))) (*.f64 y (-.f64 z (-.f64 x y)))) (/.f64 (/.f64 (*.f64 y (-.f64 (-.f64 x y) z)) (*.f64 y (-.f64 (-.f64 x y) z))) (*.f64 y (-.f64 (-.f64 x y) z))))
(*.f64 (*.f64 (*.f64 y (-.f64 z (-.f64 x y))) (*.f64 y (-.f64 z (-.f64 x y)))) (/.f64 -1 (*.f64 y (-.f64 z (-.f64 x y)))))
(*.f64 (neg.f64 (/.f64 (*.f64 y (-.f64 (-.f64 x y) z)) (*.f64 y (-.f64 (-.f64 x y) z)))) (-.f64 -1 (-.f64 (*.f64 y (-.f64 (-.f64 x y) z)) 1)))
(*.f64 (/.f64 1 (*.f64 y (-.f64 (-.f64 x y) z))) (*.f64 (*.f64 y (-.f64 z (-.f64 x y))) (*.f64 y (-.f64 z (-.f64 x y)))))
(*.f64 (*.f64 y (*.f64 (*.f64 (*.f64 y (-.f64 z (-.f64 x y))) (*.f64 y (-.f64 z (-.f64 x y)))) (*.f64 y (*.f64 (-.f64 (-.f64 x y) z) (-.f64 (-.f64 x y) z))))) (/.f64 (/.f64 1 (*.f64 y (-.f64 (-.f64 x y) z))) (*.f64 (*.f64 y (-.f64 z (-.f64 x y))) (*.f64 y (-.f64 z (-.f64 x y))))))
(*.f64 (*.f64 y (*.f64 (*.f64 (*.f64 y (-.f64 z (-.f64 x y))) (*.f64 y (-.f64 z (-.f64 x y)))) (*.f64 y (*.f64 (-.f64 (-.f64 x y) z) (-.f64 (-.f64 x y) z))))) (/.f64 (*.f64 (/.f64 1 (*.f64 y (-.f64 (-.f64 x y) z))) 1) (*.f64 (*.f64 y (-.f64 z (-.f64 x y))) (*.f64 y (-.f64 z (-.f64 x y))))))
(*.f64 (*.f64 (*.f64 y (*.f64 (*.f64 (*.f64 y (-.f64 z (-.f64 x y))) (*.f64 y (-.f64 z (-.f64 x y)))) (*.f64 y (*.f64 (-.f64 (-.f64 x y) z) (-.f64 (-.f64 x y) z))))) (*.f64 y (*.f64 (*.f64 (*.f64 y (-.f64 z (-.f64 x y))) (*.f64 y (-.f64 z (-.f64 x y)))) (*.f64 y (*.f64 (-.f64 (-.f64 x y) z) (-.f64 (-.f64 x y) z)))))) (/.f64 (/.f64 (/.f64 1 (*.f64 y (-.f64 (-.f64 x y) z))) (*.f64 (*.f64 y (-.f64 z (-.f64 x y))) (*.f64 y (-.f64 z (-.f64 x y))))) (*.f64 y (*.f64 (*.f64 (*.f64 y (-.f64 z (-.f64 x y))) (*.f64 y (-.f64 z (-.f64 x y)))) (*.f64 y (*.f64 (-.f64 (-.f64 x y) z) (-.f64 (-.f64 x y) z)))))))
(/.f64 (*.f64 y (-.f64 (-.f64 x y) z)) 1)
(/.f64 (*.f64 y (-.f64 (-.f64 x y) z)) (/.f64 (*.f64 y (-.f64 (-.f64 x y) z)) (*.f64 y (-.f64 (-.f64 x y) z))))
(/.f64 (*.f64 y (-.f64 z (-.f64 x y))) -1)
(pow.f64 (*.f64 y (-.f64 (-.f64 x y) z)) 1)
(neg.f64 (*.f64 y (-.f64 z (-.f64 x y))))
(+.f64 (*.f64 y (+.f64 y z)) 0)
(+.f64 0 (*.f64 y (+.f64 y z)))
(-.f64 (*.f64 y (+.f64 y z)) 0)
(-.f64 0 (neg.f64 (*.f64 y (+.f64 y z))))
(-.f64 (-.f64 0 (-.f64 -1 (*.f64 y (+.f64 y z)))) 1)
(/.f64 (*.f64 y (+.f64 y z)) 1)
(/.f64 (*.f64 y (+.f64 y z)) (/.f64 (*.f64 y (+.f64 y z)) (*.f64 y (+.f64 y z))))
(pow.f64 (*.f64 y (+.f64 y z)) 1)
(neg.f64 (neg.f64 (*.f64 y (+.f64 y z))))
Outputs
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 x) (*.f64 -1 z))))
(*.f64 y (-.f64 x z))
(*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 x) (*.f64 -1 z))))
(*.f64 y (-.f64 x z))
(*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 x) (*.f64 -1 z))))
(*.f64 y (-.f64 x z))
(*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 x) (*.f64 -1 z))))
(*.f64 y (-.f64 x z))
(-.f64 (pow.f64 y 2) (*.f64 y (+.f64 y z)))
(-.f64 (+.f64 (*.f64 y x) (pow.f64 y 2)) (*.f64 y (+.f64 y z)))
(-.f64 (+.f64 (pow.f64 y 2) (*.f64 y x)) (*.f64 y (+.f64 y z)))
(neg.f64 (-.f64 (*.f64 y (-.f64 (+.f64 y z) x)) (pow.f64 y 2)))
(-.f64 (+.f64 (*.f64 y x) (pow.f64 y 2)) (*.f64 y (+.f64 y z)))
(-.f64 (+.f64 (pow.f64 y 2) (*.f64 y x)) (*.f64 y (+.f64 y z)))
(neg.f64 (-.f64 (*.f64 y (-.f64 (+.f64 y z) x)) (pow.f64 y 2)))
(-.f64 (+.f64 (*.f64 y x) (pow.f64 y 2)) (*.f64 y (+.f64 y z)))
(-.f64 (+.f64 (pow.f64 y 2) (*.f64 y x)) (*.f64 y (+.f64 y z)))
(neg.f64 (-.f64 (*.f64 y (-.f64 (+.f64 y z) x)) (pow.f64 y 2)))
(*.f64 y x)
(-.f64 (+.f64 (*.f64 y x) (pow.f64 y 2)) (*.f64 y (+.f64 y z)))
(-.f64 (+.f64 (pow.f64 y 2) (*.f64 y x)) (*.f64 y (+.f64 y z)))
(neg.f64 (-.f64 (*.f64 y (-.f64 (+.f64 y z) x)) (pow.f64 y 2)))
(-.f64 (+.f64 (*.f64 y x) (pow.f64 y 2)) (*.f64 y (+.f64 y z)))
(-.f64 (+.f64 (pow.f64 y 2) (*.f64 y x)) (*.f64 y (+.f64 y z)))
(neg.f64 (-.f64 (*.f64 y (-.f64 (+.f64 y z) x)) (pow.f64 y 2)))
(-.f64 (+.f64 (*.f64 y x) (pow.f64 y 2)) (*.f64 y (+.f64 y z)))
(-.f64 (+.f64 (pow.f64 y 2) (*.f64 y x)) (*.f64 y (+.f64 y z)))
(neg.f64 (-.f64 (*.f64 y (-.f64 (+.f64 y z) x)) (pow.f64 y 2)))
(*.f64 y x)
(-.f64 (+.f64 (*.f64 y x) (pow.f64 y 2)) (*.f64 y (+.f64 y z)))
(-.f64 (+.f64 (pow.f64 y 2) (*.f64 y x)) (*.f64 y (+.f64 y z)))
(neg.f64 (-.f64 (*.f64 y (-.f64 (+.f64 y z) x)) (pow.f64 y 2)))
(-.f64 (+.f64 (*.f64 y x) (pow.f64 y 2)) (*.f64 y (+.f64 y z)))
(-.f64 (+.f64 (pow.f64 y 2) (*.f64 y x)) (*.f64 y (+.f64 y z)))
(neg.f64 (-.f64 (*.f64 y (-.f64 (+.f64 y z) x)) (pow.f64 y 2)))
(-.f64 (+.f64 (*.f64 y x) (pow.f64 y 2)) (*.f64 y (+.f64 y z)))
(-.f64 (+.f64 (pow.f64 y 2) (*.f64 y x)) (*.f64 y (+.f64 y z)))
(neg.f64 (-.f64 (*.f64 y (-.f64 (+.f64 y z) x)) (pow.f64 y 2)))
(*.f64 y x)
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(*.f64 y (-.f64 x z))
(*.f64 -1 (*.f64 y z))
(*.f64 y (*.f64 z -1))
(*.f64 y (neg.f64 z))
(*.f64 z (neg.f64 y))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(*.f64 y (-.f64 x z))
(*.f64 -1 (*.f64 y z))
(*.f64 y (*.f64 z -1))
(*.f64 y (neg.f64 z))
(*.f64 z (neg.f64 y))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(*.f64 y (-.f64 x z))
(*.f64 -1 (*.f64 y (+.f64 y z)))
(neg.f64 (*.f64 y (+.f64 y z)))
(*.f64 y (neg.f64 (+.f64 y z)))
(*.f64 (+.f64 y z) (neg.f64 y))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y (+.f64 y z))))
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y (+.f64 y z))))
(*.f64 y (+.f64 x (neg.f64 (+.f64 y z))))
(*.f64 y (+.f64 x (-.f64 (neg.f64 z) y)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y (+.f64 y z))))
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y (+.f64 y z))))
(*.f64 y (+.f64 x (neg.f64 (+.f64 y z))))
(*.f64 y (+.f64 x (-.f64 (neg.f64 z) y)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y (+.f64 y z))))
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y (+.f64 y z))))
(*.f64 y (+.f64 x (neg.f64 (+.f64 y z))))
(*.f64 y (+.f64 x (-.f64 (neg.f64 z) y)))
(*.f64 y x)
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y (+.f64 y z))))
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y (+.f64 y z))))
(*.f64 y (+.f64 x (neg.f64 (+.f64 y z))))
(*.f64 y (+.f64 x (-.f64 (neg.f64 z) y)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y (+.f64 y z))))
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y (+.f64 y z))))
(*.f64 y (+.f64 x (neg.f64 (+.f64 y z))))
(*.f64 y (+.f64 x (-.f64 (neg.f64 z) y)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y (+.f64 y z))))
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y (+.f64 y z))))
(*.f64 y (+.f64 x (neg.f64 (+.f64 y z))))
(*.f64 y (+.f64 x (-.f64 (neg.f64 z) y)))
(*.f64 y x)
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y (+.f64 y z))))
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y (+.f64 y z))))
(*.f64 y (+.f64 x (neg.f64 (+.f64 y z))))
(*.f64 y (+.f64 x (-.f64 (neg.f64 z) y)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y (+.f64 y z))))
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y (+.f64 y z))))
(*.f64 y (+.f64 x (neg.f64 (+.f64 y z))))
(*.f64 y (+.f64 x (-.f64 (neg.f64 z) y)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y (+.f64 y z))))
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y (+.f64 y z))))
(*.f64 y (+.f64 x (neg.f64 (+.f64 y z))))
(*.f64 y (+.f64 x (-.f64 (neg.f64 z) y)))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (*.f64 y (-.f64 x z)))
(+.f64 (*.f64 y (-.f64 x z)) (*.f64 -1 (pow.f64 y 2)))
(+.f64 (*.f64 y (-.f64 x z)) (neg.f64 (pow.f64 y 2)))
(+.f64 (neg.f64 (pow.f64 y 2)) (*.f64 y (-.f64 x z)))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (*.f64 y (-.f64 x z)))
(+.f64 (*.f64 y (-.f64 x z)) (*.f64 -1 (pow.f64 y 2)))
(+.f64 (*.f64 y (-.f64 x z)) (neg.f64 (pow.f64 y 2)))
(+.f64 (neg.f64 (pow.f64 y 2)) (*.f64 y (-.f64 x z)))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (*.f64 y (-.f64 x z)))
(+.f64 (*.f64 y (-.f64 x z)) (*.f64 -1 (pow.f64 y 2)))
(+.f64 (*.f64 y (-.f64 x z)) (neg.f64 (pow.f64 y 2)))
(+.f64 (neg.f64 (pow.f64 y 2)) (*.f64 y (-.f64 x z)))
(*.f64 -1 (pow.f64 y 2))
(neg.f64 (pow.f64 y 2))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (*.f64 y (-.f64 x z)))
(+.f64 (*.f64 y (-.f64 x z)) (*.f64 -1 (pow.f64 y 2)))
(+.f64 (*.f64 y (-.f64 x z)) (neg.f64 (pow.f64 y 2)))
(+.f64 (neg.f64 (pow.f64 y 2)) (*.f64 y (-.f64 x z)))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (*.f64 y (-.f64 x z)))
(+.f64 (*.f64 y (-.f64 x z)) (*.f64 -1 (pow.f64 y 2)))
(+.f64 (*.f64 y (-.f64 x z)) (neg.f64 (pow.f64 y 2)))
(+.f64 (neg.f64 (pow.f64 y 2)) (*.f64 y (-.f64 x z)))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (*.f64 y (-.f64 x z)))
(+.f64 (*.f64 y (-.f64 x z)) (*.f64 -1 (pow.f64 y 2)))
(+.f64 (*.f64 y (-.f64 x z)) (neg.f64 (pow.f64 y 2)))
(+.f64 (neg.f64 (pow.f64 y 2)) (*.f64 y (-.f64 x z)))
(*.f64 -1 (pow.f64 y 2))
(neg.f64 (pow.f64 y 2))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 x) (*.f64 -1 z)))))
(+.f64 (*.f64 y (-.f64 x z)) (*.f64 -1 (pow.f64 y 2)))
(+.f64 (*.f64 y (-.f64 x z)) (neg.f64 (pow.f64 y 2)))
(+.f64 (neg.f64 (pow.f64 y 2)) (*.f64 y (-.f64 x z)))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 x) (*.f64 -1 z)))))
(+.f64 (*.f64 y (-.f64 x z)) (*.f64 -1 (pow.f64 y 2)))
(+.f64 (*.f64 y (-.f64 x z)) (neg.f64 (pow.f64 y 2)))
(+.f64 (neg.f64 (pow.f64 y 2)) (*.f64 y (-.f64 x z)))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 x) (*.f64 -1 z)))))
(+.f64 (*.f64 y (-.f64 x z)) (*.f64 -1 (pow.f64 y 2)))
(+.f64 (*.f64 y (-.f64 x z)) (neg.f64 (pow.f64 y 2)))
(+.f64 (neg.f64 (pow.f64 y 2)) (*.f64 y (-.f64 x z)))
(-.f64 (*.f64 y x) (pow.f64 y 2))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x)) (pow.f64 y 2))
(-.f64 (+.f64 (*.f64 y x) (*.f64 y (*.f64 z -1))) (pow.f64 y 2))
(-.f64 (*.f64 y (+.f64 x (neg.f64 z))) (pow.f64 y 2))
(-.f64 (*.f64 y (-.f64 x z)) (pow.f64 y 2))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x)) (pow.f64 y 2))
(-.f64 (+.f64 (*.f64 y x) (*.f64 y (*.f64 z -1))) (pow.f64 y 2))
(-.f64 (*.f64 y (+.f64 x (neg.f64 z))) (pow.f64 y 2))
(-.f64 (*.f64 y (-.f64 x z)) (pow.f64 y 2))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x)) (pow.f64 y 2))
(-.f64 (+.f64 (*.f64 y x) (*.f64 y (*.f64 z -1))) (pow.f64 y 2))
(-.f64 (*.f64 y (+.f64 x (neg.f64 z))) (pow.f64 y 2))
(-.f64 (*.f64 y (-.f64 x z)) (pow.f64 y 2))
(*.f64 -1 (*.f64 y z))
(*.f64 y (*.f64 z -1))
(*.f64 y (neg.f64 z))
(*.f64 z (neg.f64 y))
(-.f64 (+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z))) (pow.f64 y 2))
(-.f64 (+.f64 (*.f64 y x) (*.f64 y (*.f64 z -1))) (pow.f64 y 2))
(-.f64 (*.f64 y (+.f64 x (neg.f64 z))) (pow.f64 y 2))
(-.f64 (*.f64 y (-.f64 x z)) (pow.f64 y 2))
(-.f64 (+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z))) (pow.f64 y 2))
(-.f64 (+.f64 (*.f64 y x) (*.f64 y (*.f64 z -1))) (pow.f64 y 2))
(-.f64 (*.f64 y (+.f64 x (neg.f64 z))) (pow.f64 y 2))
(-.f64 (*.f64 y (-.f64 x z)) (pow.f64 y 2))
(-.f64 (+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z))) (pow.f64 y 2))
(-.f64 (+.f64 (*.f64 y x) (*.f64 y (*.f64 z -1))) (pow.f64 y 2))
(-.f64 (*.f64 y (+.f64 x (neg.f64 z))) (pow.f64 y 2))
(-.f64 (*.f64 y (-.f64 x z)) (pow.f64 y 2))
(*.f64 -1 (*.f64 y z))
(*.f64 y (*.f64 z -1))
(*.f64 y (neg.f64 z))
(*.f64 z (neg.f64 y))
(-.f64 (+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z))) (pow.f64 y 2))
(-.f64 (+.f64 (*.f64 y x) (*.f64 y (*.f64 z -1))) (pow.f64 y 2))
(-.f64 (*.f64 y (+.f64 x (neg.f64 z))) (pow.f64 y 2))
(-.f64 (*.f64 y (-.f64 x z)) (pow.f64 y 2))
(-.f64 (+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z))) (pow.f64 y 2))
(-.f64 (+.f64 (*.f64 y x) (*.f64 y (*.f64 z -1))) (pow.f64 y 2))
(-.f64 (*.f64 y (+.f64 x (neg.f64 z))) (pow.f64 y 2))
(-.f64 (*.f64 y (-.f64 x z)) (pow.f64 y 2))
(-.f64 (+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z))) (pow.f64 y 2))
(-.f64 (+.f64 (*.f64 y x) (*.f64 y (*.f64 z -1))) (pow.f64 y 2))
(-.f64 (*.f64 y (+.f64 x (neg.f64 z))) (pow.f64 y 2))
(-.f64 (*.f64 y (-.f64 x z)) (pow.f64 y 2))
(*.f64 y z)
(+.f64 (*.f64 y z) (pow.f64 y 2))
(+.f64 (pow.f64 y 2) (*.f64 y z))
(+.f64 (*.f64 y z) (pow.f64 y 2))
(+.f64 (pow.f64 y 2) (*.f64 y z))
(+.f64 (*.f64 y z) (pow.f64 y 2))
(+.f64 (pow.f64 y 2) (*.f64 y z))
(pow.f64 y 2)
(+.f64 (*.f64 y z) (pow.f64 y 2))
(+.f64 (pow.f64 y 2) (*.f64 y z))
(+.f64 (*.f64 y z) (pow.f64 y 2))
(+.f64 (pow.f64 y 2) (*.f64 y z))
(+.f64 (*.f64 y z) (pow.f64 y 2))
(+.f64 (pow.f64 y 2) (*.f64 y z))
(pow.f64 y 2)
(+.f64 (*.f64 y z) (pow.f64 y 2))
(+.f64 (pow.f64 y 2) (*.f64 y z))
(+.f64 (*.f64 y z) (pow.f64 y 2))
(+.f64 (pow.f64 y 2) (*.f64 y z))
(+.f64 (*.f64 y z) (pow.f64 y 2))
(+.f64 (pow.f64 y 2) (*.f64 y z))
(pow.f64 y 2)
(+.f64 (*.f64 y z) (pow.f64 y 2))
(+.f64 (pow.f64 y 2) (*.f64 y z))
(+.f64 (*.f64 y z) (pow.f64 y 2))
(+.f64 (pow.f64 y 2) (*.f64 y z))
(+.f64 (*.f64 y z) (pow.f64 y 2))
(+.f64 (pow.f64 y 2) (*.f64 y z))
(*.f64 y z)
(+.f64 (*.f64 y z) (pow.f64 y 2))
(+.f64 (pow.f64 y 2) (*.f64 y z))
(+.f64 (*.f64 y z) (pow.f64 y 2))
(+.f64 (pow.f64 y 2) (*.f64 y z))
(+.f64 (*.f64 y z) (pow.f64 y 2))
(+.f64 (pow.f64 y 2) (*.f64 y z))
(*.f64 y z)
(+.f64 (*.f64 y z) (pow.f64 y 2))
(+.f64 (pow.f64 y 2) (*.f64 y z))
(+.f64 (*.f64 y z) (pow.f64 y 2))
(+.f64 (pow.f64 y 2) (*.f64 y z))
(+.f64 (*.f64 y z) (pow.f64 y 2))
(+.f64 (pow.f64 y 2) (*.f64 y z))
(-.f64 (*.f64 y y) (*.f64 y (-.f64 z (-.f64 x y))))
(*.f64 y (-.f64 x z))
(-.f64 (*.f64 y x) (*.f64 y (-.f64 (+.f64 y z) y)))
(*.f64 y (-.f64 x z))
(-.f64 (*.f64 y x) (+.f64 (*.f64 y (+.f64 y z)) (neg.f64 (*.f64 y y))))
(*.f64 y (-.f64 x z))
(-.f64 (*.f64 y (-.f64 (-.f64 x y) z)) (neg.f64 (*.f64 y y)))
(*.f64 y (-.f64 x z))
(-.f64 (*.f64 y (+.f64 y (-.f64 (-.f64 x y) z))) 0)
(*.f64 y (-.f64 x z))
(-.f64 0 (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y)))
(*.f64 y (-.f64 x z))
(-.f64 0 (+.f64 (*.f64 y (-.f64 z (-.f64 x y))) (neg.f64 (*.f64 y y))))
(*.f64 y (-.f64 x z))
(-.f64 (-.f64 (*.f64 y y) (neg.f64 (*.f64 y x))) (*.f64 y (+.f64 y z)))
(*.f64 y (-.f64 x z))
(-.f64 (*.f64 y (+.f64 y x)) (*.f64 y (+.f64 y z)))
(*.f64 y (-.f64 x z))
(-.f64 (-.f64 0 (-.f64 -1 (*.f64 y y))) (-.f64 1 (*.f64 y (-.f64 (-.f64 x y) z))))
(*.f64 y (-.f64 x z))
(-.f64 (-.f64 (*.f64 y (-.f64 (-.f64 x y) z)) (-.f64 -1 (*.f64 y y))) 1)
(*.f64 y (-.f64 x z))
(-.f64 (-.f64 0 (-.f64 (*.f64 y (-.f64 z (-.f64 x y))) 1)) (-.f64 1 (*.f64 y y)))
(*.f64 y (-.f64 x z))
(-.f64 (-.f64 0 (-.f64 -1 (*.f64 y (+.f64 y (-.f64 (-.f64 x y) z))))) 1)
(*.f64 y (-.f64 x z))
(-.f64 (-.f64 (*.f64 y y) (-.f64 (*.f64 y (-.f64 z (-.f64 x y))) 1)) 1)
(*.f64 y (-.f64 x z))
(*.f64 y (+.f64 y (-.f64 (-.f64 x y) z)))
(*.f64 y (-.f64 x z))
(*.f64 y (*.f64 (+.f64 y (-.f64 (-.f64 x y) z)) 1))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 y (-.f64 z (-.f64 x y))))
(*.f64 y (-.f64 x z))
(*.f64 (*.f64 y y) (+.f64 1 (*.f64 (-.f64 (-.f64 x y) z) (/.f64 1 y))))
(*.f64 y (-.f64 x z))
(*.f64 (*.f64 y y) (+.f64 (/.f64 y y) (*.f64 (-.f64 (-.f64 x y) z) (/.f64 1 y))))
(*.f64 (*.f64 y y) (+.f64 (*.f64 (-.f64 x (+.f64 y z)) (/.f64 1 y)) (/.f64 y y)))
(*.f64 y (*.f64 y (+.f64 (*.f64 (-.f64 x (+.f64 y z)) (/.f64 1 y)) (/.f64 y y))))
(*.f64 (*.f64 y (+.f64 y (-.f64 (-.f64 x y) z))) 1)
(*.f64 y (-.f64 x z))
(*.f64 (*.f64 y (+.f64 y (-.f64 (-.f64 x y) z))) (/.f64 (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y)) (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y))))
(*.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))) (/.f64 (*.f64 y (-.f64 z (+.f64 (-.f64 x y) y))) (*.f64 y (-.f64 z (+.f64 (-.f64 x y) y)))))
(*.f64 (+.f64 y (-.f64 x (+.f64 y z))) (*.f64 (/.f64 (*.f64 y (-.f64 z (+.f64 y (-.f64 x y)))) (*.f64 y (-.f64 z (+.f64 y (-.f64 x y))))) y))
(*.f64 (+.f64 y (-.f64 x (+.f64 y z))) (*.f64 y (/.f64 (*.f64 y (-.f64 x (+.f64 z 0))) (*.f64 y (-.f64 x (+.f64 z 0))))))
(*.f64 (*.f64 y (-.f64 x z)) (/.f64 (*.f64 y (-.f64 z x)) (*.f64 y (-.f64 z x))))
(*.f64 1 (*.f64 y (+.f64 y (-.f64 (-.f64 x y) z))))
(*.f64 y (-.f64 x z))
(*.f64 (/.f64 (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y)) (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y))) (*.f64 y (+.f64 y (-.f64 (-.f64 x y) z))))
(*.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))) (/.f64 (*.f64 y (-.f64 z (+.f64 (-.f64 x y) y))) (*.f64 y (-.f64 z (+.f64 (-.f64 x y) y)))))
(*.f64 (+.f64 y (-.f64 x (+.f64 y z))) (*.f64 (/.f64 (*.f64 y (-.f64 z (+.f64 y (-.f64 x y)))) (*.f64 y (-.f64 z (+.f64 y (-.f64 x y))))) y))
(*.f64 (+.f64 y (-.f64 x (+.f64 y z))) (*.f64 y (/.f64 (*.f64 y (-.f64 x (+.f64 z 0))) (*.f64 y (-.f64 x (+.f64 z 0))))))
(*.f64 (*.f64 y (-.f64 x z)) (/.f64 (*.f64 y (-.f64 z x)) (*.f64 y (-.f64 z x))))
(*.f64 (*.f64 (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y)) (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y))) (/.f64 1 (*.f64 y (+.f64 y (-.f64 (-.f64 x y) z)))))
(*.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))) (/.f64 (*.f64 y (-.f64 z (+.f64 (-.f64 x y) y))) (*.f64 y (-.f64 z (+.f64 (-.f64 x y) y)))))
(*.f64 (+.f64 y (-.f64 x (+.f64 y z))) (*.f64 (/.f64 (*.f64 y (-.f64 z (+.f64 y (-.f64 x y)))) (*.f64 y (-.f64 z (+.f64 y (-.f64 x y))))) y))
(*.f64 (+.f64 y (-.f64 x (+.f64 y z))) (*.f64 y (/.f64 (*.f64 y (-.f64 x (+.f64 z 0))) (*.f64 y (-.f64 x (+.f64 z 0))))))
(*.f64 (*.f64 y (-.f64 x z)) (/.f64 (*.f64 y (-.f64 z x)) (*.f64 y (-.f64 z x))))
(*.f64 (*.f64 (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y)) (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y))) (*.f64 (/.f64 1 (*.f64 y (+.f64 y (-.f64 (-.f64 x y) z)))) 1))
(*.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))) (/.f64 (*.f64 y (-.f64 z (+.f64 (-.f64 x y) y))) (*.f64 y (-.f64 z (+.f64 (-.f64 x y) y)))))
(*.f64 (+.f64 y (-.f64 x (+.f64 y z))) (*.f64 (/.f64 (*.f64 y (-.f64 z (+.f64 y (-.f64 x y)))) (*.f64 y (-.f64 z (+.f64 y (-.f64 x y))))) y))
(*.f64 (+.f64 y (-.f64 x (+.f64 y z))) (*.f64 y (/.f64 (*.f64 y (-.f64 x (+.f64 z 0))) (*.f64 y (-.f64 x (+.f64 z 0))))))
(*.f64 (*.f64 y (-.f64 x z)) (/.f64 (*.f64 y (-.f64 z x)) (*.f64 y (-.f64 z x))))
(*.f64 (*.f64 (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y)) (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y))) (/.f64 (/.f64 (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y)) (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y))) (*.f64 y (+.f64 y (-.f64 (-.f64 x y) z)))))
(*.f64 (*.f64 (*.f64 y (-.f64 z (+.f64 (-.f64 x y) y))) (*.f64 y (-.f64 z (+.f64 (-.f64 x y) y)))) (/.f64 (/.f64 (*.f64 y (-.f64 z (+.f64 (-.f64 x y) y))) (*.f64 y (-.f64 z (+.f64 (-.f64 x y) y)))) (*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))))
(*.f64 (*.f64 (-.f64 z (+.f64 y (-.f64 x y))) (*.f64 (*.f64 y (-.f64 z (+.f64 y (-.f64 x y)))) y)) (/.f64 (/.f64 (*.f64 y (-.f64 z (+.f64 y (-.f64 x y)))) (*.f64 y (-.f64 z (+.f64 y (-.f64 x y))))) (*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))))
(*.f64 y (*.f64 (/.f64 (/.f64 (*.f64 y (-.f64 x (+.f64 z 0))) (*.f64 y (-.f64 x (+.f64 z 0)))) (*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))) (*.f64 y (*.f64 (-.f64 z (-.f64 x 0)) (-.f64 z (-.f64 x 0))))))
(*.f64 y (*.f64 (/.f64 (/.f64 (*.f64 y (-.f64 z x)) (*.f64 y (-.f64 z x))) (*.f64 y (-.f64 x z))) (*.f64 y (*.f64 (-.f64 z x) (-.f64 z x)))))
(*.f64 (+.f64 y (-.f64 (-.f64 x y) z)) y)
(*.f64 y (-.f64 x z))
(*.f64 (/.f64 1 (*.f64 y (+.f64 y (-.f64 (-.f64 x y) z)))) (*.f64 (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y)) (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y))))
(*.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))) (/.f64 (*.f64 y (-.f64 z (+.f64 (-.f64 x y) y))) (*.f64 y (-.f64 z (+.f64 (-.f64 x y) y)))))
(*.f64 (+.f64 y (-.f64 x (+.f64 y z))) (*.f64 (/.f64 (*.f64 y (-.f64 z (+.f64 y (-.f64 x y)))) (*.f64 y (-.f64 z (+.f64 y (-.f64 x y))))) y))
(*.f64 (+.f64 y (-.f64 x (+.f64 y z))) (*.f64 y (/.f64 (*.f64 y (-.f64 x (+.f64 z 0))) (*.f64 y (-.f64 x (+.f64 z 0))))))
(*.f64 (*.f64 y (-.f64 x z)) (/.f64 (*.f64 y (-.f64 z x)) (*.f64 y (-.f64 z x))))
(*.f64 (*.f64 (*.f64 (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y)) (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y))) (*.f64 (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y)) (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y)))) (/.f64 (/.f64 1 (*.f64 y (+.f64 y (-.f64 (-.f64 x y) z)))) (*.f64 (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y)) (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y)))))
(*.f64 (*.f64 (*.f64 y (-.f64 z (+.f64 (-.f64 x y) y))) (*.f64 (*.f64 y (-.f64 z (+.f64 (-.f64 x y) y))) (/.f64 1 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))))) (/.f64 (*.f64 y (-.f64 z (+.f64 (-.f64 x y) y))) (*.f64 y (-.f64 z (+.f64 (-.f64 x y) y)))))
(*.f64 (/.f64 (*.f64 y (-.f64 z (+.f64 y (-.f64 x y)))) (*.f64 y (-.f64 z (+.f64 y (-.f64 x y))))) (*.f64 (*.f64 (-.f64 z (+.f64 y (-.f64 x y))) (*.f64 (*.f64 y (-.f64 z (+.f64 y (-.f64 x y)))) y)) (/.f64 1 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))))))
(*.f64 (/.f64 1 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))) (*.f64 (*.f64 y (*.f64 y (*.f64 (-.f64 z (-.f64 x 0)) (-.f64 z (-.f64 x 0))))) (/.f64 (*.f64 y (-.f64 x (+.f64 z 0))) (*.f64 y (-.f64 x (+.f64 z 0))))))
(*.f64 (*.f64 y (*.f64 y (*.f64 (-.f64 z x) (-.f64 z x)))) (*.f64 (/.f64 1 (*.f64 y (-.f64 x z))) (/.f64 (*.f64 y (-.f64 z x)) (*.f64 y (-.f64 z x)))))
(*.f64 (/.f64 (*.f64 y (-.f64 z x)) (*.f64 y (-.f64 z x))) (*.f64 (*.f64 y (-.f64 x z)) (/.f64 (*.f64 y (-.f64 z x)) (*.f64 y (-.f64 z x)))))
(*.f64 (*.f64 (*.f64 (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y)) (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y))) (*.f64 (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y)) (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y)))) (/.f64 (*.f64 (/.f64 1 (*.f64 y (+.f64 y (-.f64 (-.f64 x y) z)))) 1) (*.f64 (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y)) (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y)))))
(*.f64 (*.f64 (*.f64 y (-.f64 z (+.f64 (-.f64 x y) y))) (*.f64 (*.f64 y (-.f64 z (+.f64 (-.f64 x y) y))) (/.f64 1 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))))) (/.f64 (*.f64 y (-.f64 z (+.f64 (-.f64 x y) y))) (*.f64 y (-.f64 z (+.f64 (-.f64 x y) y)))))
(*.f64 (/.f64 (*.f64 y (-.f64 z (+.f64 y (-.f64 x y)))) (*.f64 y (-.f64 z (+.f64 y (-.f64 x y))))) (*.f64 (*.f64 (-.f64 z (+.f64 y (-.f64 x y))) (*.f64 (*.f64 y (-.f64 z (+.f64 y (-.f64 x y)))) y)) (/.f64 1 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))))))
(*.f64 (/.f64 1 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))) (*.f64 (*.f64 y (*.f64 y (*.f64 (-.f64 z (-.f64 x 0)) (-.f64 z (-.f64 x 0))))) (/.f64 (*.f64 y (-.f64 x (+.f64 z 0))) (*.f64 y (-.f64 x (+.f64 z 0))))))
(*.f64 (*.f64 y (*.f64 y (*.f64 (-.f64 z x) (-.f64 z x)))) (*.f64 (/.f64 1 (*.f64 y (-.f64 x z))) (/.f64 (*.f64 y (-.f64 z x)) (*.f64 y (-.f64 z x)))))
(*.f64 (/.f64 (*.f64 y (-.f64 z x)) (*.f64 y (-.f64 z x))) (*.f64 (*.f64 y (-.f64 x z)) (/.f64 (*.f64 y (-.f64 z x)) (*.f64 y (-.f64 z x)))))
(*.f64 (*.f64 (*.f64 (*.f64 (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y)) (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y))) (*.f64 (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y)) (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y)))) (*.f64 (*.f64 (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y)) (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y))) (*.f64 (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y)) (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y))))) (/.f64 (/.f64 (/.f64 1 (*.f64 y (+.f64 y (-.f64 (-.f64 x y) z)))) (*.f64 (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y)) (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y)))) (*.f64 (*.f64 (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y)) (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y))) (*.f64 (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y)) (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y))))))
(*.f64 (*.f64 (*.f64 (*.f64 y (-.f64 z (+.f64 (-.f64 x y) y))) (*.f64 (*.f64 y (-.f64 z (+.f64 (-.f64 x y) y))) (/.f64 1 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))))) (/.f64 (*.f64 y (-.f64 z (+.f64 (-.f64 x y) y))) (*.f64 y (-.f64 z (+.f64 (-.f64 x y) y))))) (/.f64 (*.f64 (*.f64 (*.f64 y (-.f64 z (+.f64 (-.f64 x y) y))) (*.f64 y (-.f64 z (+.f64 (-.f64 x y) y)))) (*.f64 (*.f64 y (-.f64 z (+.f64 (-.f64 x y) y))) (*.f64 y (-.f64 z (+.f64 (-.f64 x y) y))))) (*.f64 (*.f64 (*.f64 y (-.f64 z (+.f64 (-.f64 x y) y))) (*.f64 y (-.f64 z (+.f64 (-.f64 x y) y)))) (*.f64 (*.f64 y (-.f64 z (+.f64 (-.f64 x y) y))) (*.f64 y (-.f64 z (+.f64 (-.f64 x y) y)))))))
(*.f64 (/.f64 (*.f64 y (-.f64 z (+.f64 y (-.f64 x y)))) (*.f64 y (-.f64 z (+.f64 y (-.f64 x y))))) (*.f64 (/.f64 (*.f64 y (-.f64 z (+.f64 y (-.f64 x y)))) (*.f64 y (-.f64 z (+.f64 y (-.f64 x y))))) (*.f64 (*.f64 (-.f64 z (+.f64 y (-.f64 x y))) (*.f64 (*.f64 y (-.f64 z (+.f64 y (-.f64 x y)))) y)) (/.f64 1 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))))))
(*.f64 (/.f64 (*.f64 y (-.f64 x (+.f64 z 0))) (*.f64 y (-.f64 x (+.f64 z 0)))) (*.f64 (/.f64 1 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z))))) (*.f64 (*.f64 y (*.f64 y (*.f64 (-.f64 z (-.f64 x 0)) (-.f64 z (-.f64 x 0))))) (/.f64 (*.f64 y (-.f64 x (+.f64 z 0))) (*.f64 y (-.f64 x (+.f64 z 0)))))))
(*.f64 (/.f64 (*.f64 y (-.f64 z x)) (*.f64 y (-.f64 z x))) (*.f64 (*.f64 y (*.f64 y (*.f64 (-.f64 z x) (-.f64 z x)))) (*.f64 (/.f64 1 (*.f64 y (-.f64 x z))) (/.f64 (*.f64 y (-.f64 z x)) (*.f64 y (-.f64 z x))))))
(*.f64 (*.f64 (*.f64 y (-.f64 x z)) (/.f64 (*.f64 y (-.f64 z x)) (*.f64 y (-.f64 z x)))) (*.f64 (/.f64 (*.f64 y (-.f64 z x)) (*.f64 y (-.f64 z x))) (/.f64 (*.f64 y (-.f64 z x)) (*.f64 y (-.f64 z x)))))
(/.f64 (*.f64 y (+.f64 y (-.f64 (-.f64 x y) z))) 1)
(*.f64 y (-.f64 x z))
(/.f64 (*.f64 y (+.f64 y (-.f64 (-.f64 x y) z))) (/.f64 (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y)) (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y))))
(*.f64 (*.f64 y (+.f64 y (-.f64 x (+.f64 y z)))) (/.f64 (*.f64 y (-.f64 z (+.f64 (-.f64 x y) y))) (*.f64 y (-.f64 z (+.f64 (-.f64 x y) y)))))
(*.f64 (+.f64 y (-.f64 x (+.f64 y z))) (*.f64 (/.f64 (*.f64 y (-.f64 z (+.f64 y (-.f64 x y)))) (*.f64 y (-.f64 z (+.f64 y (-.f64 x y))))) y))
(*.f64 (+.f64 y (-.f64 x (+.f64 y z))) (*.f64 y (/.f64 (*.f64 y (-.f64 x (+.f64 z 0))) (*.f64 y (-.f64 x (+.f64 z 0))))))
(*.f64 (*.f64 y (-.f64 x z)) (/.f64 (*.f64 y (-.f64 z x)) (*.f64 y (-.f64 z x))))
(pow.f64 (*.f64 y (+.f64 y (-.f64 (-.f64 x y) z))) 1)
(*.f64 y (-.f64 x z))
(neg.f64 (*.f64 y (-.f64 (-.f64 z (-.f64 x y)) y)))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 y (-.f64 (-.f64 x y) z)) 0)
(*.f64 y (-.f64 x (+.f64 y z)))
(+.f64 0 (*.f64 y (-.f64 (-.f64 x y) z)))
(*.f64 y (-.f64 x (+.f64 y z)))
(+.f64 1 (-.f64 (*.f64 y (-.f64 (-.f64 x y) z)) 1))
(*.f64 y (-.f64 x (+.f64 y z)))
(+.f64 (-.f64 (*.f64 y (-.f64 (-.f64 x y) z)) 1) 1)
(*.f64 y (-.f64 x (+.f64 y z)))
(*.f64 y (-.f64 (-.f64 x y) z))
(*.f64 y (-.f64 x (+.f64 y z)))
(*.f64 (*.f64 y y) (*.f64 (-.f64 (-.f64 x y) z) (/.f64 1 y)))
(*.f64 y (-.f64 x (+.f64 y z)))
(*.f64 (*.f64 y (-.f64 (-.f64 x y) z)) 1)
(*.f64 y (-.f64 x (+.f64 y z)))
(*.f64 (*.f64 y (-.f64 (-.f64 x y) z)) (/.f64 (*.f64 y (-.f64 (-.f64 x y) z)) (*.f64 y (-.f64 (-.f64 x y) z))))
(*.f64 y (-.f64 x (+.f64 y z)))
(*.f64 1 (*.f64 y (-.f64 (-.f64 x y) z)))
(*.f64 y (-.f64 x (+.f64 y z)))
(*.f64 (/.f64 (*.f64 y (-.f64 (-.f64 x y) z)) (*.f64 y (-.f64 (-.f64 x y) z))) (*.f64 y (-.f64 (-.f64 x y) z)))
(*.f64 y (-.f64 x (+.f64 y z)))
(*.f64 (*.f64 y (-.f64 z (-.f64 x y))) -1)
(neg.f64 (*.f64 y (-.f64 y (-.f64 x z))))
(*.f64 (-.f64 y (-.f64 x z)) (neg.f64 y))
(*.f64 y (neg.f64 (-.f64 y (-.f64 x z))))
(*.f64 (-.f64 (-.f64 x y) z) y)
(*.f64 y (-.f64 x (+.f64 y z)))
(*.f64 (*.f64 (*.f64 y (-.f64 z (-.f64 x y))) (*.f64 y (-.f64 z (-.f64 x y)))) (/.f64 1 (*.f64 y (-.f64 (-.f64 x y) z))))
(*.f64 y (-.f64 x (+.f64 y z)))
(*.f64 (*.f64 (*.f64 y (-.f64 z (-.f64 x y))) (*.f64 y (-.f64 z (-.f64 x y)))) (*.f64 (/.f64 1 (*.f64 y (-.f64 (-.f64 x y) z))) 1))
(*.f64 y (-.f64 x (+.f64 y z)))
(*.f64 (*.f64 (*.f64 y (-.f64 z (-.f64 x y))) (*.f64 y (-.f64 z (-.f64 x y)))) (/.f64 (/.f64 (*.f64 y (-.f64 (-.f64 x y) z)) (*.f64 y (-.f64 (-.f64 x y) z))) (*.f64 y (-.f64 (-.f64 x y) z))))
(*.f64 y (-.f64 x (+.f64 y z)))
(*.f64 (*.f64 (*.f64 y (-.f64 z (-.f64 x y))) (*.f64 y (-.f64 z (-.f64 x y)))) (/.f64 -1 (*.f64 y (-.f64 z (-.f64 x y)))))
(neg.f64 (*.f64 y (-.f64 y (-.f64 x z))))
(*.f64 (-.f64 y (-.f64 x z)) (neg.f64 y))
(*.f64 y (neg.f64 (-.f64 y (-.f64 x z))))
(*.f64 (neg.f64 (/.f64 (*.f64 y (-.f64 (-.f64 x y) z)) (*.f64 y (-.f64 (-.f64 x y) z)))) (-.f64 -1 (-.f64 (*.f64 y (-.f64 (-.f64 x y) z)) 1)))
(*.f64 y (-.f64 x (+.f64 y z)))
(*.f64 (/.f64 1 (*.f64 y (-.f64 (-.f64 x y) z))) (*.f64 (*.f64 y (-.f64 z (-.f64 x y))) (*.f64 y (-.f64 z (-.f64 x y)))))
(*.f64 y (-.f64 x (+.f64 y z)))
(*.f64 (*.f64 y (*.f64 (*.f64 (*.f64 y (-.f64 z (-.f64 x y))) (*.f64 y (-.f64 z (-.f64 x y)))) (*.f64 y (*.f64 (-.f64 (-.f64 x y) z) (-.f64 (-.f64 x y) z))))) (/.f64 (/.f64 1 (*.f64 y (-.f64 (-.f64 x y) z))) (*.f64 (*.f64 y (-.f64 z (-.f64 x y))) (*.f64 y (-.f64 z (-.f64 x y))))))
(*.f64 y (-.f64 x (+.f64 y z)))
(*.f64 (*.f64 y (*.f64 (*.f64 (*.f64 y (-.f64 z (-.f64 x y))) (*.f64 y (-.f64 z (-.f64 x y)))) (*.f64 y (*.f64 (-.f64 (-.f64 x y) z) (-.f64 (-.f64 x y) z))))) (/.f64 (*.f64 (/.f64 1 (*.f64 y (-.f64 (-.f64 x y) z))) 1) (*.f64 (*.f64 y (-.f64 z (-.f64 x y))) (*.f64 y (-.f64 z (-.f64 x y))))))
(*.f64 y (-.f64 x (+.f64 y z)))
(*.f64 (*.f64 (*.f64 y (*.f64 (*.f64 (*.f64 y (-.f64 z (-.f64 x y))) (*.f64 y (-.f64 z (-.f64 x y)))) (*.f64 y (*.f64 (-.f64 (-.f64 x y) z) (-.f64 (-.f64 x y) z))))) (*.f64 y (*.f64 (*.f64 (*.f64 y (-.f64 z (-.f64 x y))) (*.f64 y (-.f64 z (-.f64 x y)))) (*.f64 y (*.f64 (-.f64 (-.f64 x y) z) (-.f64 (-.f64 x y) z)))))) (/.f64 (/.f64 (/.f64 1 (*.f64 y (-.f64 (-.f64 x y) z))) (*.f64 (*.f64 y (-.f64 z (-.f64 x y))) (*.f64 y (-.f64 z (-.f64 x y))))) (*.f64 y (*.f64 (*.f64 (*.f64 y (-.f64 z (-.f64 x y))) (*.f64 y (-.f64 z (-.f64 x y)))) (*.f64 y (*.f64 (-.f64 (-.f64 x y) z) (-.f64 (-.f64 x y) z)))))))
(*.f64 y (-.f64 x (+.f64 y z)))
(/.f64 (*.f64 y (-.f64 (-.f64 x y) z)) 1)
(*.f64 y (-.f64 x (+.f64 y z)))
(/.f64 (*.f64 y (-.f64 (-.f64 x y) z)) (/.f64 (*.f64 y (-.f64 (-.f64 x y) z)) (*.f64 y (-.f64 (-.f64 x y) z))))
(*.f64 y (-.f64 x (+.f64 y z)))
(/.f64 (*.f64 y (-.f64 z (-.f64 x y))) -1)
(neg.f64 (*.f64 y (-.f64 y (-.f64 x z))))
(*.f64 (-.f64 y (-.f64 x z)) (neg.f64 y))
(*.f64 y (neg.f64 (-.f64 y (-.f64 x z))))
(pow.f64 (*.f64 y (-.f64 (-.f64 x y) z)) 1)
(*.f64 y (-.f64 x (+.f64 y z)))
(neg.f64 (*.f64 y (-.f64 z (-.f64 x y))))
(neg.f64 (*.f64 y (-.f64 y (-.f64 x z))))
(*.f64 (-.f64 y (-.f64 x z)) (neg.f64 y))
(*.f64 y (neg.f64 (-.f64 y (-.f64 x z))))
(+.f64 (*.f64 y (+.f64 y z)) 0)
(*.f64 y (+.f64 y z))
(+.f64 0 (*.f64 y (+.f64 y z)))
(*.f64 y (+.f64 y z))
(-.f64 (*.f64 y (+.f64 y z)) 0)
(*.f64 y (+.f64 y z))
(-.f64 0 (neg.f64 (*.f64 y (+.f64 y z))))
(*.f64 y (+.f64 y z))
(-.f64 (-.f64 0 (-.f64 -1 (*.f64 y (+.f64 y z)))) 1)
(*.f64 y (+.f64 y z))
(/.f64 (*.f64 y (+.f64 y z)) 1)
(*.f64 y (+.f64 y z))
(/.f64 (*.f64 y (+.f64 y z)) (/.f64 (*.f64 y (+.f64 y z)) (*.f64 y (+.f64 y z))))
(*.f64 y (+.f64 y z))
(pow.f64 (*.f64 y (+.f64 y z)) 1)
(*.f64 y (+.f64 y z))
(neg.f64 (neg.f64 (*.f64 y (+.f64 y z))))
(*.f64 y (+.f64 y z))

localize82.0ms (0.9%)

Local error

Found 3 expressions with local error:

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

Compiled 48 to 9 computations (81.3% saved)

series7.0ms (0.1%)

Counts
3 → 108
Calls

27 calls:

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

rewrite283.0ms (3.2%)

Algorithm
batch-egg-rewrite
Rules
956×rational.json-simplify-47
772×rational.json-simplify-49
640×rational.json-5
638×exponential.json-3
638×rational.json-1
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
011117
19999
235881
3136669
4560745
Stop Event
node limit
Counts
3 → 119
Calls
Call 1
Inputs
(+.f64 (-.f64 (-.f64 (*.f64 x y) (*.f64 y z)) (*.f64 y y)) (*.f64 y y))
(-.f64 (*.f64 x y) (*.f64 y z))
(-.f64 (-.f64 (*.f64 x y) (*.f64 y z)) (*.f64 y y))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x y) (*.f64 y z))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x y) (*.f64 y (-.f64 (+.f64 y z) y)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x y) (-.f64 (-.f64 (*.f64 y z) (neg.f64 (*.f64 y y))) (*.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x y) (+.f64 (*.f64 y (+.f64 y z)) (neg.f64 (*.f64 y y))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x y) (+.f64 (-.f64 (*.f64 y z) (neg.f64 (*.f64 y y))) (neg.f64 (*.f64 y y))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y (-.f64 x z)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y y) (*.f64 y (-.f64 y (-.f64 x z))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y (-.f64 (-.f64 x z) y)) (neg.f64 (*.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (*.f64 y (-.f64 z x)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (+.f64 (*.f64 y (-.f64 y (-.f64 x z))) (neg.f64 (*.f64 y y))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y (-.f64 x y)) (*.f64 y (-.f64 z y)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y (-.f64 x y)) (+.f64 (*.f64 y z) (neg.f64 (*.f64 y y))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (neg.f64 (*.f64 y y)) (*.f64 y (-.f64 (-.f64 z x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (neg.f64 (*.f64 y y)) (+.f64 (*.f64 y (-.f64 z x)) (neg.f64 (*.f64 y y))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (neg.f64 (*.f64 y z)) (neg.f64 (*.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (neg.f64 (*.f64 y z)) (+.f64 (*.f64 y (-.f64 y x)) (neg.f64 (*.f64 y y))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y (+.f64 y (-.f64 x z))) (*.f64 y y))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (neg.f64 (*.f64 y (+.f64 y z))) (+.f64 (neg.f64 (*.f64 x y)) (neg.f64 (*.f64 y y))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 x y) (neg.f64 (*.f64 y y))) (*.f64 y (+.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 x y) (neg.f64 (*.f64 y y))) (-.f64 (*.f64 y z) (neg.f64 (*.f64 y y))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 y y) (*.f64 y (-.f64 z x))) (*.f64 y y))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 y y) (*.f64 y z)) (*.f64 y (-.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 x y) (neg.f64 (*.f64 y z))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 y (-.f64 x y)) (neg.f64 (*.f64 y z))) (neg.f64 (*.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 x y) (neg.f64 (*.f64 y y))) (*.f64 y (-.f64 z y)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 y (-.f64 x z)) (neg.f64 (*.f64 y y))) (neg.f64 (*.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y (+.f64 y (-.f64 x y))) (*.f64 y z))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y (+.f64 y x)) (*.f64 y (+.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 y y) (neg.f64 (*.f64 y z))) (*.f64 y (-.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 1 (*.f64 y (-.f64 z x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (neg.f64 (*.f64 y (+.f64 y z))) (neg.f64 (*.f64 y y))) (neg.f64 (*.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 0 (-.f64 -1 (*.f64 y y))) (-.f64 1 (*.f64 y (-.f64 (-.f64 x z) y))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 y (-.f64 (-.f64 x z) y)) (-.f64 -1 (*.f64 y y))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 y y) (-.f64 (*.f64 y (-.f64 z x)) 1)) (-.f64 (*.f64 y y) -1))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 y y) (-.f64 (*.f64 y (-.f64 y (-.f64 x z))) 1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 0 (-.f64 (*.f64 y (-.f64 y (-.f64 x z))) 1)) (-.f64 1 (*.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (-.f64 x z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (+.f64 y (-.f64 (-.f64 x z) y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (-.f64 y (-.f64 y (-.f64 x z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (+.f64 y (*.f64 (-.f64 (-.f64 x z) y) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y (-.f64 x z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y (-.f64 x z)) (/.f64 (*.f64 y (-.f64 z x)) (*.f64 y (-.f64 z x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y y) (*.f64 (/.f64 1 y) (-.f64 x z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 y (-.f64 x z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y (-.f64 z x)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 x z) y)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 y (-.f64 x z)) (*.f64 y (-.f64 x z))) (/.f64 1 (*.f64 y (-.f64 x z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 y (-.f64 x z)) (*.f64 y (-.f64 x z))) (*.f64 (/.f64 1 (*.f64 y (-.f64 x z))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (*.f64 y (-.f64 x z))) (*.f64 (*.f64 y (-.f64 x z)) (*.f64 y (-.f64 x z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y (*.f64 (*.f64 y (*.f64 (-.f64 x z) (-.f64 x z))) (*.f64 (*.f64 y (-.f64 x z)) (*.f64 y (-.f64 x z))))) (/.f64 (/.f64 1 (*.f64 y (-.f64 x z))) (*.f64 (*.f64 y (-.f64 x z)) (*.f64 y (-.f64 x z)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (-.f64 x z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (-.f64 x z)) (/.f64 (*.f64 y (-.f64 z x)) (*.f64 y (-.f64 z x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (-.f64 z x)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 y (-.f64 x z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 y (-.f64 z x)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y (-.f64 x z)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y y) (*.f64 y (-.f64 (-.f64 x z) y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y (-.f64 (-.f64 x z) y)) (*.f64 y y))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 y (-.f64 x z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 1 (-.f64 -1 (*.f64 y (-.f64 z x))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 -1 (*.f64 y (-.f64 z x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 -1 (*.f64 y (-.f64 z x))) (+.f64 (-.f64 1 (*.f64 y y)) (*.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 y (-.f64 x y)) 1) (+.f64 (-.f64 1 (*.f64 y z)) (*.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 y (-.f64 (-.f64 x z) y)) 1) (+.f64 1 (*.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 -1 (*.f64 y y)) (+.f64 (-.f64 1 (*.f64 y (-.f64 z x))) (*.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 -1 (*.f64 y z)) (+.f64 (-.f64 1 (*.f64 y (-.f64 y x))) (*.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (-.f64 x z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (+.f64 y (-.f64 (-.f64 x z) y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (-.f64 y (-.f64 y (-.f64 x z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (+.f64 y (*.f64 (-.f64 (-.f64 x z) y) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y (-.f64 x z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y (-.f64 x z)) (/.f64 (*.f64 y (-.f64 z x)) (*.f64 y (-.f64 z x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y y) (*.f64 (/.f64 1 y) (-.f64 x z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 y (-.f64 x z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y (-.f64 z x)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 x z) y)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 y (-.f64 x z)) (*.f64 y (-.f64 x z))) (/.f64 1 (*.f64 y (-.f64 x z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 y (-.f64 x z)) (*.f64 y (-.f64 x z))) (*.f64 (/.f64 1 (*.f64 y (-.f64 x z))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (*.f64 y (-.f64 x z))) (*.f64 (*.f64 y (-.f64 x z)) (*.f64 y (-.f64 x z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y (*.f64 (*.f64 y (*.f64 (-.f64 x z) (-.f64 x z))) (*.f64 (*.f64 y (-.f64 x z)) (*.f64 y (-.f64 x z))))) (/.f64 (/.f64 1 (*.f64 y (-.f64 x z))) (*.f64 (*.f64 y (-.f64 x z)) (*.f64 y (-.f64 x z)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (-.f64 x z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (-.f64 x z)) (/.f64 (*.f64 y (-.f64 z x)) (*.f64 y (-.f64 z x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (-.f64 z x)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 y (-.f64 x z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 y (-.f64 z x)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y (-.f64 (-.f64 x z) y)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 y (-.f64 (-.f64 x z) y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 1 (-.f64 (*.f64 y (-.f64 (-.f64 x z) y)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 -1 (*.f64 y (-.f64 z x))) (-.f64 1 (*.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 -1 (*.f64 y (-.f64 z x))) (+.f64 (-.f64 1 (*.f64 y y)) 0))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 y (-.f64 x y)) 1) (-.f64 1 (*.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 y (-.f64 x y)) 1) (+.f64 (-.f64 1 (*.f64 y z)) 0))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 1 (*.f64 y y)) (-.f64 -1 (*.f64 y (-.f64 z x))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 y (-.f64 (-.f64 x z) y)) 1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 1 (*.f64 y z)) (-.f64 (*.f64 y (-.f64 x y)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 -1 (*.f64 y y)) (-.f64 1 (*.f64 y (-.f64 z x))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 -1 (*.f64 y y)) (+.f64 (-.f64 1 (*.f64 y (-.f64 z x))) 0))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 1 (*.f64 y (-.f64 z x))) (-.f64 -1 (*.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 -1 (*.f64 y z)) (-.f64 1 (*.f64 y (-.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 -1 (*.f64 y z)) (+.f64 (-.f64 1 (*.f64 y (-.f64 y x))) 0))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 1 (*.f64 y (-.f64 y x))) (-.f64 -1 (*.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (-.f64 (-.f64 x z) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (*.f64 (-.f64 (-.f64 x z) y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y y) (-.f64 (*.f64 (/.f64 1 y) (-.f64 x z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y y) (-.f64 (*.f64 (/.f64 1 y) (-.f64 x z)) (/.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y (-.f64 (-.f64 x z) y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y (-.f64 (-.f64 x z) y)) (/.f64 (*.f64 y (-.f64 (-.f64 x z) y)) (*.f64 y (-.f64 (-.f64 x z) y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 y (-.f64 (-.f64 x z) y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y (-.f64 y (-.f64 x z))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y (*.f64 (-.f64 y (-.f64 x z)) (*.f64 y (-.f64 y (-.f64 x z))))) (/.f64 1 (*.f64 y (-.f64 (-.f64 x z) y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y (*.f64 (-.f64 y (-.f64 x z)) (*.f64 y (-.f64 y (-.f64 x z))))) (*.f64 (/.f64 1 (*.f64 y (-.f64 (-.f64 x z) y))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (-.f64 x z) y) y)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (*.f64 y (-.f64 (-.f64 x z) y))) (*.f64 y (*.f64 (-.f64 y (-.f64 x z)) (*.f64 y (-.f64 y (-.f64 x z))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 y (-.f64 (-.f64 x z) y)) (*.f64 (*.f64 y (-.f64 (-.f64 x z) y)) (*.f64 y (*.f64 (-.f64 y (-.f64 x z)) (*.f64 y (-.f64 y (-.f64 x z))))))) (/.f64 (/.f64 1 (*.f64 y (-.f64 (-.f64 x z) y))) (*.f64 y (*.f64 (-.f64 y (-.f64 x z)) (*.f64 y (-.f64 y (-.f64 x z)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (-.f64 (-.f64 x z) y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (-.f64 (-.f64 x z) y)) (/.f64 (*.f64 y (-.f64 (-.f64 x z) y)) (*.f64 y (-.f64 (-.f64 x z) y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (-.f64 y (-.f64 x z))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 y (-.f64 (-.f64 x z) y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 y (-.f64 y (-.f64 x z))))))))

simplify202.0ms (2.3%)

Algorithm
egg-herbie
Rules
1274×rational.json-simplify-55
962×rational.json-simplify-43
898×rational.json-simplify-47
728×rational.json-simplify-1
620×rational.json-simplify-54
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02314187
15113869
211353869
333903863
Stop Event
node limit
Counts
227 → 138
Calls
Call 1
Inputs
(*.f64 -1 (*.f64 y z))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(*.f64 y x)
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 x) (*.f64 -1 z))))
(*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 x) (*.f64 -1 z))))
(*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 x) (*.f64 -1 z))))
(*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 x) (*.f64 -1 z))))
(*.f64 y x)
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(*.f64 -1 (*.f64 y z))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(*.f64 -1 (*.f64 y z))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(*.f64 -1 (*.f64 y z))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(*.f64 y x)
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 x) (*.f64 -1 z))))
(*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 x) (*.f64 -1 z))))
(*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 x) (*.f64 -1 z))))
(*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 x) (*.f64 -1 z))))
(*.f64 y x)
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(*.f64 -1 (*.f64 y z))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(*.f64 -1 (*.f64 y z))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(*.f64 -1 (+.f64 (*.f64 y z) (pow.f64 y 2)))
(+.f64 (*.f64 y x) (*.f64 -1 (+.f64 (*.f64 y z) (pow.f64 y 2))))
(+.f64 (*.f64 y x) (*.f64 -1 (+.f64 (*.f64 y z) (pow.f64 y 2))))
(+.f64 (*.f64 y x) (*.f64 -1 (+.f64 (*.f64 y z) (pow.f64 y 2))))
(*.f64 y x)
(+.f64 (*.f64 y x) (*.f64 -1 (+.f64 (*.f64 y z) (pow.f64 y 2))))
(+.f64 (*.f64 y x) (*.f64 -1 (+.f64 (*.f64 y z) (pow.f64 y 2))))
(+.f64 (*.f64 y x) (*.f64 -1 (+.f64 (*.f64 y z) (pow.f64 y 2))))
(*.f64 y x)
(+.f64 (*.f64 y x) (*.f64 -1 (+.f64 (*.f64 y z) (pow.f64 y 2))))
(+.f64 (*.f64 y x) (*.f64 -1 (+.f64 (*.f64 y z) (pow.f64 y 2))))
(+.f64 (*.f64 y x) (*.f64 -1 (+.f64 (*.f64 y z) (pow.f64 y 2))))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (*.f64 y (-.f64 x z)))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (*.f64 y (-.f64 x z)))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (*.f64 y (-.f64 x z)))
(*.f64 -1 (pow.f64 y 2))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (*.f64 y (-.f64 x z)))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (*.f64 y (-.f64 x z)))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (*.f64 y (-.f64 x z)))
(*.f64 -1 (pow.f64 y 2))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 x) (*.f64 -1 z)))))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 x) (*.f64 -1 z)))))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 x) (*.f64 -1 z)))))
(-.f64 (*.f64 y x) (pow.f64 y 2))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x)) (pow.f64 y 2))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x)) (pow.f64 y 2))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x)) (pow.f64 y 2))
(*.f64 -1 (*.f64 y z))
(-.f64 (+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z))) (pow.f64 y 2))
(-.f64 (+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z))) (pow.f64 y 2))
(-.f64 (+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z))) (pow.f64 y 2))
(*.f64 -1 (*.f64 y z))
(-.f64 (+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z))) (pow.f64 y 2))
(-.f64 (+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z))) (pow.f64 y 2))
(-.f64 (+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z))) (pow.f64 y 2))
(-.f64 (*.f64 x y) (*.f64 y z))
(-.f64 (*.f64 x y) (*.f64 y (-.f64 (+.f64 y z) y)))
(-.f64 (*.f64 x y) (-.f64 (-.f64 (*.f64 y z) (neg.f64 (*.f64 y y))) (*.f64 y y)))
(-.f64 (*.f64 x y) (+.f64 (*.f64 y (+.f64 y z)) (neg.f64 (*.f64 y y))))
(-.f64 (*.f64 x y) (+.f64 (-.f64 (*.f64 y z) (neg.f64 (*.f64 y y))) (neg.f64 (*.f64 y y))))
(-.f64 (*.f64 y (-.f64 x z)) 0)
(-.f64 (*.f64 y y) (*.f64 y (-.f64 y (-.f64 x z))))
(-.f64 (*.f64 y (-.f64 (-.f64 x z) y)) (neg.f64 (*.f64 y y)))
(-.f64 0 (*.f64 y (-.f64 z x)))
(-.f64 0 (+.f64 (*.f64 y (-.f64 y (-.f64 x z))) (neg.f64 (*.f64 y y))))
(-.f64 (*.f64 y (-.f64 x y)) (*.f64 y (-.f64 z y)))
(-.f64 (*.f64 y (-.f64 x y)) (+.f64 (*.f64 y z) (neg.f64 (*.f64 y y))))
(-.f64 (neg.f64 (*.f64 y y)) (*.f64 y (-.f64 (-.f64 z x) y)))
(-.f64 (neg.f64 (*.f64 y y)) (+.f64 (*.f64 y (-.f64 z x)) (neg.f64 (*.f64 y y))))
(-.f64 (neg.f64 (*.f64 y z)) (neg.f64 (*.f64 x y)))
(-.f64 (neg.f64 (*.f64 y z)) (+.f64 (*.f64 y (-.f64 y x)) (neg.f64 (*.f64 y y))))
(-.f64 (*.f64 y (+.f64 y (-.f64 x z))) (*.f64 y y))
(-.f64 (neg.f64 (*.f64 y (+.f64 y z))) (+.f64 (neg.f64 (*.f64 x y)) (neg.f64 (*.f64 y y))))
(-.f64 (-.f64 (*.f64 x y) (neg.f64 (*.f64 y y))) (*.f64 y (+.f64 y z)))
(-.f64 (-.f64 (*.f64 x y) (neg.f64 (*.f64 y y))) (-.f64 (*.f64 y z) (neg.f64 (*.f64 y y))))
(-.f64 (-.f64 (*.f64 y y) (*.f64 y (-.f64 z x))) (*.f64 y y))
(-.f64 (-.f64 (*.f64 y y) (*.f64 y z)) (*.f64 y (-.f64 y x)))
(-.f64 (+.f64 (*.f64 x y) (neg.f64 (*.f64 y z))) 0)
(-.f64 (+.f64 (*.f64 y (-.f64 x y)) (neg.f64 (*.f64 y z))) (neg.f64 (*.f64 y y)))
(-.f64 (+.f64 (*.f64 x y) (neg.f64 (*.f64 y y))) (*.f64 y (-.f64 z y)))
(-.f64 (+.f64 (*.f64 y (-.f64 x z)) (neg.f64 (*.f64 y y))) (neg.f64 (*.f64 y y)))
(-.f64 (*.f64 y (+.f64 y (-.f64 x y))) (*.f64 y z))
(-.f64 (*.f64 y (+.f64 y x)) (*.f64 y (+.f64 y z)))
(-.f64 (+.f64 (*.f64 y y) (neg.f64 (*.f64 y z))) (*.f64 y (-.f64 y x)))
(-.f64 (-.f64 1 (*.f64 y (-.f64 z x))) 1)
(-.f64 (-.f64 (neg.f64 (*.f64 y (+.f64 y z))) (neg.f64 (*.f64 y y))) (neg.f64 (*.f64 x y)))
(-.f64 (-.f64 0 (-.f64 -1 (*.f64 y y))) (-.f64 1 (*.f64 y (-.f64 (-.f64 x z) y))))
(-.f64 (-.f64 (*.f64 y (-.f64 (-.f64 x z) y)) (-.f64 -1 (*.f64 y y))) 1)
(-.f64 (-.f64 (*.f64 y y) (-.f64 (*.f64 y (-.f64 z x)) 1)) (-.f64 (*.f64 y y) -1))
(-.f64 (-.f64 (*.f64 y y) (-.f64 (*.f64 y (-.f64 y (-.f64 x z))) 1)) 1)
(-.f64 (-.f64 0 (-.f64 (*.f64 y (-.f64 y (-.f64 x z))) 1)) (-.f64 1 (*.f64 y y)))
(*.f64 y (-.f64 x z))
(*.f64 y (+.f64 y (-.f64 (-.f64 x z) y)))
(*.f64 y (-.f64 y (-.f64 y (-.f64 x z))))
(*.f64 y (+.f64 y (*.f64 (-.f64 (-.f64 x z) y) 1)))
(*.f64 (*.f64 y (-.f64 x z)) 1)
(*.f64 (*.f64 y (-.f64 x z)) (/.f64 (*.f64 y (-.f64 z x)) (*.f64 y (-.f64 z x))))
(*.f64 (*.f64 y y) (*.f64 (/.f64 1 y) (-.f64 x z)))
(*.f64 1 (*.f64 y (-.f64 x z)))
(*.f64 (*.f64 y (-.f64 z x)) -1)
(*.f64 (-.f64 x z) y)
(*.f64 (*.f64 (*.f64 y (-.f64 x z)) (*.f64 y (-.f64 x z))) (/.f64 1 (*.f64 y (-.f64 x z))))
(*.f64 (*.f64 (*.f64 y (-.f64 x z)) (*.f64 y (-.f64 x z))) (*.f64 (/.f64 1 (*.f64 y (-.f64 x z))) 1))
(*.f64 (/.f64 1 (*.f64 y (-.f64 x z))) (*.f64 (*.f64 y (-.f64 x z)) (*.f64 y (-.f64 x z))))
(*.f64 (*.f64 y (*.f64 (*.f64 y (*.f64 (-.f64 x z) (-.f64 x z))) (*.f64 (*.f64 y (-.f64 x z)) (*.f64 y (-.f64 x z))))) (/.f64 (/.f64 1 (*.f64 y (-.f64 x z))) (*.f64 (*.f64 y (-.f64 x z)) (*.f64 y (-.f64 x z)))))
(/.f64 (*.f64 y (-.f64 x z)) 1)
(/.f64 (*.f64 y (-.f64 x z)) (/.f64 (*.f64 y (-.f64 z x)) (*.f64 y (-.f64 z x))))
(/.f64 (*.f64 y (-.f64 z x)) -1)
(pow.f64 (*.f64 y (-.f64 x z)) 1)
(neg.f64 (*.f64 y (-.f64 z x)))
(+.f64 (*.f64 y (-.f64 x z)) 0)
(+.f64 (*.f64 y y) (*.f64 y (-.f64 (-.f64 x z) y)))
(+.f64 (*.f64 y (-.f64 (-.f64 x z) y)) (*.f64 y y))
(+.f64 0 (*.f64 y (-.f64 x z)))
(+.f64 1 (-.f64 -1 (*.f64 y (-.f64 z x))))
(+.f64 (-.f64 -1 (*.f64 y (-.f64 z x))) 1)
(+.f64 (-.f64 -1 (*.f64 y (-.f64 z x))) (+.f64 (-.f64 1 (*.f64 y y)) (*.f64 y y)))
(+.f64 (-.f64 (*.f64 y (-.f64 x y)) 1) (+.f64 (-.f64 1 (*.f64 y z)) (*.f64 y y)))
(+.f64 (-.f64 (*.f64 y (-.f64 (-.f64 x z) y)) 1) (+.f64 1 (*.f64 y y)))
(+.f64 (-.f64 -1 (*.f64 y y)) (+.f64 (-.f64 1 (*.f64 y (-.f64 z x))) (*.f64 y y)))
(+.f64 (-.f64 -1 (*.f64 y z)) (+.f64 (-.f64 1 (*.f64 y (-.f64 y x))) (*.f64 y y)))
(*.f64 y (-.f64 x z))
(*.f64 y (+.f64 y (-.f64 (-.f64 x z) y)))
(*.f64 y (-.f64 y (-.f64 y (-.f64 x z))))
(*.f64 y (+.f64 y (*.f64 (-.f64 (-.f64 x z) y) 1)))
(*.f64 (*.f64 y (-.f64 x z)) 1)
(*.f64 (*.f64 y (-.f64 x z)) (/.f64 (*.f64 y (-.f64 z x)) (*.f64 y (-.f64 z x))))
(*.f64 (*.f64 y y) (*.f64 (/.f64 1 y) (-.f64 x z)))
(*.f64 1 (*.f64 y (-.f64 x z)))
(*.f64 (*.f64 y (-.f64 z x)) -1)
(*.f64 (-.f64 x z) y)
(*.f64 (*.f64 (*.f64 y (-.f64 x z)) (*.f64 y (-.f64 x z))) (/.f64 1 (*.f64 y (-.f64 x z))))
(*.f64 (*.f64 (*.f64 y (-.f64 x z)) (*.f64 y (-.f64 x z))) (*.f64 (/.f64 1 (*.f64 y (-.f64 x z))) 1))
(*.f64 (/.f64 1 (*.f64 y (-.f64 x z))) (*.f64 (*.f64 y (-.f64 x z)) (*.f64 y (-.f64 x z))))
(*.f64 (*.f64 y (*.f64 (*.f64 y (*.f64 (-.f64 x z) (-.f64 x z))) (*.f64 (*.f64 y (-.f64 x z)) (*.f64 y (-.f64 x z))))) (/.f64 (/.f64 1 (*.f64 y (-.f64 x z))) (*.f64 (*.f64 y (-.f64 x z)) (*.f64 y (-.f64 x z)))))
(/.f64 (*.f64 y (-.f64 x z)) 1)
(/.f64 (*.f64 y (-.f64 x z)) (/.f64 (*.f64 y (-.f64 z x)) (*.f64 y (-.f64 z x))))
(/.f64 (*.f64 y (-.f64 z x)) -1)
(pow.f64 (*.f64 y (-.f64 x z)) 1)
(neg.f64 (*.f64 y (-.f64 z x)))
(+.f64 (*.f64 y (-.f64 (-.f64 x z) y)) 0)
(+.f64 0 (*.f64 y (-.f64 (-.f64 x z) y)))
(+.f64 1 (-.f64 (*.f64 y (-.f64 (-.f64 x z) y)) 1))
(+.f64 (-.f64 -1 (*.f64 y (-.f64 z x))) (-.f64 1 (*.f64 y y)))
(+.f64 (-.f64 -1 (*.f64 y (-.f64 z x))) (+.f64 (-.f64 1 (*.f64 y y)) 0))
(+.f64 (-.f64 (*.f64 y (-.f64 x y)) 1) (-.f64 1 (*.f64 y z)))
(+.f64 (-.f64 (*.f64 y (-.f64 x y)) 1) (+.f64 (-.f64 1 (*.f64 y z)) 0))
(+.f64 (-.f64 1 (*.f64 y y)) (-.f64 -1 (*.f64 y (-.f64 z x))))
(+.f64 (-.f64 (*.f64 y (-.f64 (-.f64 x z) y)) 1) 1)
(+.f64 (-.f64 1 (*.f64 y z)) (-.f64 (*.f64 y (-.f64 x y)) 1))
(+.f64 (-.f64 -1 (*.f64 y y)) (-.f64 1 (*.f64 y (-.f64 z x))))
(+.f64 (-.f64 -1 (*.f64 y y)) (+.f64 (-.f64 1 (*.f64 y (-.f64 z x))) 0))
(+.f64 (-.f64 1 (*.f64 y (-.f64 z x))) (-.f64 -1 (*.f64 y y)))
(+.f64 (-.f64 -1 (*.f64 y z)) (-.f64 1 (*.f64 y (-.f64 y x))))
(+.f64 (-.f64 -1 (*.f64 y z)) (+.f64 (-.f64 1 (*.f64 y (-.f64 y x))) 0))
(+.f64 (-.f64 1 (*.f64 y (-.f64 y x))) (-.f64 -1 (*.f64 y z)))
(*.f64 y (-.f64 (-.f64 x z) y))
(*.f64 y (*.f64 (-.f64 (-.f64 x z) y) 1))
(*.f64 (*.f64 y y) (-.f64 (*.f64 (/.f64 1 y) (-.f64 x z)) 1))
(*.f64 (*.f64 y y) (-.f64 (*.f64 (/.f64 1 y) (-.f64 x z)) (/.f64 y y)))
(*.f64 (*.f64 y (-.f64 (-.f64 x z) y)) 1)
(*.f64 (*.f64 y (-.f64 (-.f64 x z) y)) (/.f64 (*.f64 y (-.f64 (-.f64 x z) y)) (*.f64 y (-.f64 (-.f64 x z) y))))
(*.f64 1 (*.f64 y (-.f64 (-.f64 x z) y)))
(*.f64 (*.f64 y (-.f64 y (-.f64 x z))) -1)
(*.f64 (*.f64 y (*.f64 (-.f64 y (-.f64 x z)) (*.f64 y (-.f64 y (-.f64 x z))))) (/.f64 1 (*.f64 y (-.f64 (-.f64 x z) y))))
(*.f64 (*.f64 y (*.f64 (-.f64 y (-.f64 x z)) (*.f64 y (-.f64 y (-.f64 x z))))) (*.f64 (/.f64 1 (*.f64 y (-.f64 (-.f64 x z) y))) 1))
(*.f64 (-.f64 (-.f64 x z) y) y)
(*.f64 (/.f64 1 (*.f64 y (-.f64 (-.f64 x z) y))) (*.f64 y (*.f64 (-.f64 y (-.f64 x z)) (*.f64 y (-.f64 y (-.f64 x z))))))
(*.f64 (*.f64 (*.f64 y (-.f64 (-.f64 x z) y)) (*.f64 (*.f64 y (-.f64 (-.f64 x z) y)) (*.f64 y (*.f64 (-.f64 y (-.f64 x z)) (*.f64 y (-.f64 y (-.f64 x z))))))) (/.f64 (/.f64 1 (*.f64 y (-.f64 (-.f64 x z) y))) (*.f64 y (*.f64 (-.f64 y (-.f64 x z)) (*.f64 y (-.f64 y (-.f64 x z)))))))
(/.f64 (*.f64 y (-.f64 (-.f64 x z) y)) 1)
(/.f64 (*.f64 y (-.f64 (-.f64 x z) y)) (/.f64 (*.f64 y (-.f64 (-.f64 x z) y)) (*.f64 y (-.f64 (-.f64 x z) y))))
(/.f64 (*.f64 y (-.f64 y (-.f64 x z))) -1)
(pow.f64 (*.f64 y (-.f64 (-.f64 x z) y)) 1)
(neg.f64 (*.f64 y (-.f64 y (-.f64 x z))))
Outputs
(*.f64 -1 (*.f64 y z))
(neg.f64 (*.f64 y z))
(*.f64 y (neg.f64 z))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z)))
(*.f64 y (+.f64 x (neg.f64 z)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z)))
(*.f64 y (+.f64 x (neg.f64 z)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z)))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y x)
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z)))
(*.f64 y (+.f64 x (neg.f64 z)))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z)))
(*.f64 y (+.f64 x (neg.f64 z)))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z)))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y x)
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z)))
(*.f64 y (+.f64 x (neg.f64 z)))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z)))
(*.f64 y (+.f64 x (neg.f64 z)))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z)))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 x) (*.f64 -1 z))))
(*.f64 y (-.f64 x z))
(*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 x) (*.f64 -1 z))))
(*.f64 y (-.f64 x z))
(*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 x) (*.f64 -1 z))))
(*.f64 y (-.f64 x z))
(*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 x) (*.f64 -1 z))))
(*.f64 y (-.f64 x z))
(*.f64 y x)
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z)))
(*.f64 y (+.f64 x (neg.f64 z)))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z)))
(*.f64 y (+.f64 x (neg.f64 z)))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z)))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 -1 (*.f64 y z))
(neg.f64 (*.f64 y z))
(*.f64 y (neg.f64 z))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z)))
(*.f64 y (+.f64 x (neg.f64 z)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z)))
(*.f64 y (+.f64 x (neg.f64 z)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z)))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 -1 (*.f64 y z))
(neg.f64 (*.f64 y z))
(*.f64 y (neg.f64 z))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z)))
(*.f64 y (+.f64 x (neg.f64 z)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z)))
(*.f64 y (+.f64 x (neg.f64 z)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z)))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 -1 (*.f64 y z))
(neg.f64 (*.f64 y z))
(*.f64 y (neg.f64 z))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z)))
(*.f64 y (+.f64 x (neg.f64 z)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z)))
(*.f64 y (+.f64 x (neg.f64 z)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z)))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y x)
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z)))
(*.f64 y (+.f64 x (neg.f64 z)))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z)))
(*.f64 y (+.f64 x (neg.f64 z)))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z)))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y x)
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z)))
(*.f64 y (+.f64 x (neg.f64 z)))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z)))
(*.f64 y (+.f64 x (neg.f64 z)))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z)))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 x) (*.f64 -1 z))))
(*.f64 y (-.f64 x z))
(*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 x) (*.f64 -1 z))))
(*.f64 y (-.f64 x z))
(*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 x) (*.f64 -1 z))))
(*.f64 y (-.f64 x z))
(*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 x) (*.f64 -1 z))))
(*.f64 y (-.f64 x z))
(*.f64 y x)
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z)))
(*.f64 y (+.f64 x (neg.f64 z)))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z)))
(*.f64 y (+.f64 x (neg.f64 z)))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z)))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 -1 (*.f64 y z))
(neg.f64 (*.f64 y z))
(*.f64 y (neg.f64 z))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z)))
(*.f64 y (+.f64 x (neg.f64 z)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z)))
(*.f64 y (+.f64 x (neg.f64 z)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z)))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 -1 (*.f64 y z))
(neg.f64 (*.f64 y z))
(*.f64 y (neg.f64 z))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z)))
(*.f64 y (+.f64 x (neg.f64 z)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z)))
(*.f64 y (+.f64 x (neg.f64 z)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z)))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 -1 (+.f64 (*.f64 y z) (pow.f64 y 2)))
(neg.f64 (+.f64 (*.f64 y z) (pow.f64 y 2)))
(+.f64 (*.f64 y x) (*.f64 -1 (+.f64 (*.f64 y z) (pow.f64 y 2))))
(+.f64 (*.f64 -1 (+.f64 (*.f64 y z) (pow.f64 y 2))) (*.f64 y x))
(+.f64 (neg.f64 (+.f64 (*.f64 y z) (pow.f64 y 2))) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 -1 (+.f64 (*.f64 y z) (pow.f64 y 2))))
(+.f64 (*.f64 -1 (+.f64 (*.f64 y z) (pow.f64 y 2))) (*.f64 y x))
(+.f64 (neg.f64 (+.f64 (*.f64 y z) (pow.f64 y 2))) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 -1 (+.f64 (*.f64 y z) (pow.f64 y 2))))
(+.f64 (*.f64 -1 (+.f64 (*.f64 y z) (pow.f64 y 2))) (*.f64 y x))
(+.f64 (neg.f64 (+.f64 (*.f64 y z) (pow.f64 y 2))) (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 y x) (*.f64 -1 (+.f64 (*.f64 y z) (pow.f64 y 2))))
(+.f64 (*.f64 -1 (+.f64 (*.f64 y z) (pow.f64 y 2))) (*.f64 y x))
(+.f64 (neg.f64 (+.f64 (*.f64 y z) (pow.f64 y 2))) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 -1 (+.f64 (*.f64 y z) (pow.f64 y 2))))
(+.f64 (*.f64 -1 (+.f64 (*.f64 y z) (pow.f64 y 2))) (*.f64 y x))
(+.f64 (neg.f64 (+.f64 (*.f64 y z) (pow.f64 y 2))) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 -1 (+.f64 (*.f64 y z) (pow.f64 y 2))))
(+.f64 (*.f64 -1 (+.f64 (*.f64 y z) (pow.f64 y 2))) (*.f64 y x))
(+.f64 (neg.f64 (+.f64 (*.f64 y z) (pow.f64 y 2))) (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 y x) (*.f64 -1 (+.f64 (*.f64 y z) (pow.f64 y 2))))
(+.f64 (*.f64 -1 (+.f64 (*.f64 y z) (pow.f64 y 2))) (*.f64 y x))
(+.f64 (neg.f64 (+.f64 (*.f64 y z) (pow.f64 y 2))) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 -1 (+.f64 (*.f64 y z) (pow.f64 y 2))))
(+.f64 (*.f64 -1 (+.f64 (*.f64 y z) (pow.f64 y 2))) (*.f64 y x))
(+.f64 (neg.f64 (+.f64 (*.f64 y z) (pow.f64 y 2))) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 -1 (+.f64 (*.f64 y z) (pow.f64 y 2))))
(+.f64 (*.f64 -1 (+.f64 (*.f64 y z) (pow.f64 y 2))) (*.f64 y x))
(+.f64 (neg.f64 (+.f64 (*.f64 y z) (pow.f64 y 2))) (*.f64 y x))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (*.f64 y (-.f64 x z)))
(+.f64 (*.f64 y (-.f64 x z)) (*.f64 -1 (pow.f64 y 2)))
(+.f64 (*.f64 y (-.f64 x z)) (neg.f64 (pow.f64 y 2)))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (*.f64 y (-.f64 x z)))
(+.f64 (*.f64 y (-.f64 x z)) (*.f64 -1 (pow.f64 y 2)))
(+.f64 (*.f64 y (-.f64 x z)) (neg.f64 (pow.f64 y 2)))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (*.f64 y (-.f64 x z)))
(+.f64 (*.f64 y (-.f64 x z)) (*.f64 -1 (pow.f64 y 2)))
(+.f64 (*.f64 y (-.f64 x z)) (neg.f64 (pow.f64 y 2)))
(*.f64 -1 (pow.f64 y 2))
(neg.f64 (pow.f64 y 2))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (*.f64 y (-.f64 x z)))
(+.f64 (*.f64 y (-.f64 x z)) (*.f64 -1 (pow.f64 y 2)))
(+.f64 (*.f64 y (-.f64 x z)) (neg.f64 (pow.f64 y 2)))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (*.f64 y (-.f64 x z)))
(+.f64 (*.f64 y (-.f64 x z)) (*.f64 -1 (pow.f64 y 2)))
(+.f64 (*.f64 y (-.f64 x z)) (neg.f64 (pow.f64 y 2)))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (*.f64 y (-.f64 x z)))
(+.f64 (*.f64 y (-.f64 x z)) (*.f64 -1 (pow.f64 y 2)))
(+.f64 (*.f64 y (-.f64 x z)) (neg.f64 (pow.f64 y 2)))
(*.f64 -1 (pow.f64 y 2))
(neg.f64 (pow.f64 y 2))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 x) (*.f64 -1 z)))))
(+.f64 (*.f64 y (-.f64 x z)) (*.f64 -1 (pow.f64 y 2)))
(+.f64 (*.f64 y (-.f64 x z)) (neg.f64 (pow.f64 y 2)))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 x) (*.f64 -1 z)))))
(+.f64 (*.f64 y (-.f64 x z)) (*.f64 -1 (pow.f64 y 2)))
(+.f64 (*.f64 y (-.f64 x z)) (neg.f64 (pow.f64 y 2)))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 x) (*.f64 -1 z)))))
(+.f64 (*.f64 y (-.f64 x z)) (*.f64 -1 (pow.f64 y 2)))
(+.f64 (*.f64 y (-.f64 x z)) (neg.f64 (pow.f64 y 2)))
(-.f64 (*.f64 y x) (pow.f64 y 2))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x)) (pow.f64 y 2))
(-.f64 (+.f64 (*.f64 y x) (neg.f64 (*.f64 y z))) (pow.f64 y 2))
(-.f64 (*.f64 y (+.f64 x (neg.f64 z))) (pow.f64 y 2))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x)) (pow.f64 y 2))
(-.f64 (+.f64 (*.f64 y x) (neg.f64 (*.f64 y z))) (pow.f64 y 2))
(-.f64 (*.f64 y (+.f64 x (neg.f64 z))) (pow.f64 y 2))
(-.f64 (+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x)) (pow.f64 y 2))
(-.f64 (+.f64 (*.f64 y x) (neg.f64 (*.f64 y z))) (pow.f64 y 2))
(-.f64 (*.f64 y (+.f64 x (neg.f64 z))) (pow.f64 y 2))
(*.f64 -1 (*.f64 y z))
(neg.f64 (*.f64 y z))
(*.f64 y (neg.f64 z))
(-.f64 (+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z))) (pow.f64 y 2))
(-.f64 (+.f64 (*.f64 y x) (neg.f64 (*.f64 y z))) (pow.f64 y 2))
(-.f64 (*.f64 y (+.f64 x (neg.f64 z))) (pow.f64 y 2))
(-.f64 (+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z))) (pow.f64 y 2))
(-.f64 (+.f64 (*.f64 y x) (neg.f64 (*.f64 y z))) (pow.f64 y 2))
(-.f64 (*.f64 y (+.f64 x (neg.f64 z))) (pow.f64 y 2))
(-.f64 (+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z))) (pow.f64 y 2))
(-.f64 (+.f64 (*.f64 y x) (neg.f64 (*.f64 y z))) (pow.f64 y 2))
(-.f64 (*.f64 y (+.f64 x (neg.f64 z))) (pow.f64 y 2))
(*.f64 -1 (*.f64 y z))
(neg.f64 (*.f64 y z))
(*.f64 y (neg.f64 z))
(-.f64 (+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z))) (pow.f64 y 2))
(-.f64 (+.f64 (*.f64 y x) (neg.f64 (*.f64 y z))) (pow.f64 y 2))
(-.f64 (*.f64 y (+.f64 x (neg.f64 z))) (pow.f64 y 2))
(-.f64 (+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z))) (pow.f64 y 2))
(-.f64 (+.f64 (*.f64 y x) (neg.f64 (*.f64 y z))) (pow.f64 y 2))
(-.f64 (*.f64 y (+.f64 x (neg.f64 z))) (pow.f64 y 2))
(-.f64 (+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z))) (pow.f64 y 2))
(-.f64 (+.f64 (*.f64 y x) (neg.f64 (*.f64 y z))) (pow.f64 y 2))
(-.f64 (*.f64 y (+.f64 x (neg.f64 z))) (pow.f64 y 2))
(-.f64 (*.f64 x y) (*.f64 y z))
(*.f64 y (-.f64 x z))
(-.f64 (*.f64 x y) (*.f64 y (-.f64 (+.f64 y z) y)))
(*.f64 y (-.f64 x z))
(-.f64 (*.f64 x y) (-.f64 (-.f64 (*.f64 y z) (neg.f64 (*.f64 y y))) (*.f64 y y)))
(*.f64 y (-.f64 x z))
(-.f64 (*.f64 x y) (+.f64 (*.f64 y (+.f64 y z)) (neg.f64 (*.f64 y y))))
(*.f64 y (-.f64 x z))
(-.f64 (*.f64 x y) (+.f64 (-.f64 (*.f64 y z) (neg.f64 (*.f64 y y))) (neg.f64 (*.f64 y y))))
(*.f64 y (-.f64 x z))
(-.f64 (*.f64 y (-.f64 x z)) 0)
(*.f64 y (-.f64 x z))
(-.f64 (*.f64 y y) (*.f64 y (-.f64 y (-.f64 x z))))
(*.f64 y (-.f64 x z))
(-.f64 (*.f64 y (-.f64 (-.f64 x z) y)) (neg.f64 (*.f64 y y)))
(*.f64 y (-.f64 x z))
(-.f64 0 (*.f64 y (-.f64 z x)))
(*.f64 y (-.f64 x z))
(-.f64 0 (+.f64 (*.f64 y (-.f64 y (-.f64 x z))) (neg.f64 (*.f64 y y))))
(*.f64 y (-.f64 x z))
(-.f64 (*.f64 y (-.f64 x y)) (*.f64 y (-.f64 z y)))
(*.f64 y (-.f64 x z))
(-.f64 (*.f64 y (-.f64 x y)) (+.f64 (*.f64 y z) (neg.f64 (*.f64 y y))))
(*.f64 y (-.f64 x z))
(-.f64 (neg.f64 (*.f64 y y)) (*.f64 y (-.f64 (-.f64 z x) y)))
(*.f64 y (-.f64 x z))
(-.f64 (neg.f64 (*.f64 y y)) (+.f64 (*.f64 y (-.f64 z x)) (neg.f64 (*.f64 y y))))
(*.f64 y (-.f64 x z))
(-.f64 (neg.f64 (*.f64 y z)) (neg.f64 (*.f64 x y)))
(*.f64 y (-.f64 x z))
(-.f64 (neg.f64 (*.f64 y z)) (+.f64 (*.f64 y (-.f64 y x)) (neg.f64 (*.f64 y y))))
(*.f64 y (-.f64 x z))
(-.f64 (*.f64 y (+.f64 y (-.f64 x z))) (*.f64 y y))
(*.f64 y (-.f64 x z))
(-.f64 (neg.f64 (*.f64 y (+.f64 y z))) (+.f64 (neg.f64 (*.f64 x y)) (neg.f64 (*.f64 y y))))
(*.f64 y (-.f64 x z))
(-.f64 (-.f64 (*.f64 x y) (neg.f64 (*.f64 y y))) (*.f64 y (+.f64 y z)))
(*.f64 y (-.f64 x z))
(-.f64 (-.f64 (*.f64 x y) (neg.f64 (*.f64 y y))) (-.f64 (*.f64 y z) (neg.f64 (*.f64 y y))))
(*.f64 y (-.f64 x z))
(-.f64 (-.f64 (*.f64 y y) (*.f64 y (-.f64 z x))) (*.f64 y y))
(*.f64 y (-.f64 x z))
(-.f64 (-.f64 (*.f64 y y) (*.f64 y z)) (*.f64 y (-.f64 y x)))
(*.f64 y (-.f64 x z))
(-.f64 (+.f64 (*.f64 x y) (neg.f64 (*.f64 y z))) 0)
(+.f64 (*.f64 y x) (neg.f64 (*.f64 y z)))
(*.f64 y (+.f64 x (neg.f64 z)))
(-.f64 (+.f64 (*.f64 y (-.f64 x y)) (neg.f64 (*.f64 y z))) (neg.f64 (*.f64 y y)))
(*.f64 y (-.f64 x z))
(-.f64 (+.f64 (*.f64 x y) (neg.f64 (*.f64 y y))) (*.f64 y (-.f64 z y)))
(*.f64 y (-.f64 x z))
(-.f64 (+.f64 (*.f64 y (-.f64 x z)) (neg.f64 (*.f64 y y))) (neg.f64 (*.f64 y y)))
(*.f64 y (-.f64 x z))
(-.f64 (*.f64 y (+.f64 y (-.f64 x y))) (*.f64 y z))
(*.f64 y (-.f64 x z))
(-.f64 (*.f64 y (+.f64 y x)) (*.f64 y (+.f64 y z)))
(*.f64 y (-.f64 x z))
(-.f64 (+.f64 (*.f64 y y) (neg.f64 (*.f64 y z))) (*.f64 y (-.f64 y x)))
(*.f64 y (-.f64 x z))
(-.f64 (-.f64 1 (*.f64 y (-.f64 z x))) 1)
(*.f64 y (-.f64 x z))
(-.f64 (-.f64 (neg.f64 (*.f64 y (+.f64 y z))) (neg.f64 (*.f64 y y))) (neg.f64 (*.f64 x y)))
(*.f64 y (-.f64 x z))
(-.f64 (-.f64 0 (-.f64 -1 (*.f64 y y))) (-.f64 1 (*.f64 y (-.f64 (-.f64 x z) y))))
(*.f64 y (-.f64 x z))
(-.f64 (-.f64 (*.f64 y (-.f64 (-.f64 x z) y)) (-.f64 -1 (*.f64 y y))) 1)
(*.f64 y (-.f64 x z))
(-.f64 (-.f64 (*.f64 y y) (-.f64 (*.f64 y (-.f64 z x)) 1)) (-.f64 (*.f64 y y) -1))
(*.f64 y (-.f64 x z))
(-.f64 (-.f64 (*.f64 y y) (-.f64 (*.f64 y (-.f64 y (-.f64 x z))) 1)) 1)
(*.f64 y (-.f64 x z))
(-.f64 (-.f64 0 (-.f64 (*.f64 y (-.f64 y (-.f64 x z))) 1)) (-.f64 1 (*.f64 y y)))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (+.f64 y (-.f64 (-.f64 x z) y)))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 y (-.f64 y (-.f64 x z))))
(*.f64 y (-.f64 x z))
(*.f64 y (+.f64 y (*.f64 (-.f64 (-.f64 x z) y) 1)))
(*.f64 y (-.f64 x z))
(*.f64 (*.f64 y (-.f64 x z)) 1)
(*.f64 y (-.f64 x z))
(*.f64 (*.f64 y (-.f64 x z)) (/.f64 (*.f64 y (-.f64 z x)) (*.f64 y (-.f64 z x))))
(*.f64 y (-.f64 x z))
(*.f64 (*.f64 y y) (*.f64 (/.f64 1 y) (-.f64 x z)))
(*.f64 y (-.f64 x z))
(*.f64 1 (*.f64 y (-.f64 x z)))
(*.f64 y (-.f64 x z))
(*.f64 (*.f64 y (-.f64 z x)) -1)
(*.f64 y (-.f64 x z))
(*.f64 (-.f64 x z) y)
(*.f64 y (-.f64 x z))
(*.f64 (*.f64 (*.f64 y (-.f64 x z)) (*.f64 y (-.f64 x z))) (/.f64 1 (*.f64 y (-.f64 x z))))
(*.f64 y (-.f64 x z))
(*.f64 (*.f64 (*.f64 y (-.f64 x z)) (*.f64 y (-.f64 x z))) (*.f64 (/.f64 1 (*.f64 y (-.f64 x z))) 1))
(*.f64 y (-.f64 x z))
(*.f64 (/.f64 1 (*.f64 y (-.f64 x z))) (*.f64 (*.f64 y (-.f64 x z)) (*.f64 y (-.f64 x z))))
(*.f64 y (-.f64 x z))
(*.f64 (*.f64 y (*.f64 (*.f64 y (*.f64 (-.f64 x z) (-.f64 x z))) (*.f64 (*.f64 y (-.f64 x z)) (*.f64 y (-.f64 x z))))) (/.f64 (/.f64 1 (*.f64 y (-.f64 x z))) (*.f64 (*.f64 y (-.f64 x z)) (*.f64 y (-.f64 x z)))))
(*.f64 y (-.f64 x z))
(/.f64 (*.f64 y (-.f64 x z)) 1)
(*.f64 y (-.f64 x z))
(/.f64 (*.f64 y (-.f64 x z)) (/.f64 (*.f64 y (-.f64 z x)) (*.f64 y (-.f64 z x))))
(*.f64 y (-.f64 x z))
(/.f64 (*.f64 y (-.f64 z x)) -1)
(*.f64 y (-.f64 x z))
(pow.f64 (*.f64 y (-.f64 x z)) 1)
(*.f64 y (-.f64 x z))
(neg.f64 (*.f64 y (-.f64 z x)))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 y (-.f64 x z)) 0)
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 y y) (*.f64 y (-.f64 (-.f64 x z) y)))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 y (-.f64 (-.f64 x z) y)) (*.f64 y y))
(*.f64 y (-.f64 x z))
(+.f64 0 (*.f64 y (-.f64 x z)))
(*.f64 y (-.f64 x z))
(+.f64 1 (-.f64 -1 (*.f64 y (-.f64 z x))))
(*.f64 y (-.f64 x z))
(+.f64 (-.f64 -1 (*.f64 y (-.f64 z x))) 1)
(*.f64 y (-.f64 x z))
(+.f64 (-.f64 -1 (*.f64 y (-.f64 z x))) (+.f64 (-.f64 1 (*.f64 y y)) (*.f64 y y)))
(*.f64 y (-.f64 x z))
(+.f64 (-.f64 (*.f64 y (-.f64 x y)) 1) (+.f64 (-.f64 1 (*.f64 y z)) (*.f64 y y)))
(+.f64 (+.f64 (*.f64 y (-.f64 x y)) -1) (+.f64 (*.f64 y y) (-.f64 1 (*.f64 y z))))
(+.f64 (*.f64 y y) (+.f64 (*.f64 y (-.f64 x y)) (+.f64 -1 (-.f64 1 (*.f64 y z)))))
(+.f64 -1 (+.f64 (*.f64 y (-.f64 x y)) (+.f64 (*.f64 y y) (-.f64 1 (*.f64 y z)))))
(+.f64 (-.f64 1 (*.f64 y z)) (+.f64 -1 (*.f64 y (+.f64 y (-.f64 x y)))))
(+.f64 (-.f64 (*.f64 y (-.f64 (-.f64 x z) y)) 1) (+.f64 1 (*.f64 y y)))
(*.f64 y (-.f64 x z))
(+.f64 (-.f64 -1 (*.f64 y y)) (+.f64 (-.f64 1 (*.f64 y (-.f64 z x))) (*.f64 y y)))
(*.f64 y (-.f64 x z))
(+.f64 (-.f64 -1 (*.f64 y z)) (+.f64 (-.f64 1 (*.f64 y (-.f64 y x))) (*.f64 y y)))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (+.f64 y (-.f64 (-.f64 x z) y)))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 y (-.f64 y (-.f64 x z))))
(*.f64 y (-.f64 x z))
(*.f64 y (+.f64 y (*.f64 (-.f64 (-.f64 x z) y) 1)))
(*.f64 y (-.f64 x z))
(*.f64 (*.f64 y (-.f64 x z)) 1)
(*.f64 y (-.f64 x z))
(*.f64 (*.f64 y (-.f64 x z)) (/.f64 (*.f64 y (-.f64 z x)) (*.f64 y (-.f64 z x))))
(*.f64 y (-.f64 x z))
(*.f64 (*.f64 y y) (*.f64 (/.f64 1 y) (-.f64 x z)))
(*.f64 y (-.f64 x z))
(*.f64 1 (*.f64 y (-.f64 x z)))
(*.f64 y (-.f64 x z))
(*.f64 (*.f64 y (-.f64 z x)) -1)
(*.f64 y (-.f64 x z))
(*.f64 (-.f64 x z) y)
(*.f64 y (-.f64 x z))
(*.f64 (*.f64 (*.f64 y (-.f64 x z)) (*.f64 y (-.f64 x z))) (/.f64 1 (*.f64 y (-.f64 x z))))
(*.f64 y (-.f64 x z))
(*.f64 (*.f64 (*.f64 y (-.f64 x z)) (*.f64 y (-.f64 x z))) (*.f64 (/.f64 1 (*.f64 y (-.f64 x z))) 1))
(*.f64 y (-.f64 x z))
(*.f64 (/.f64 1 (*.f64 y (-.f64 x z))) (*.f64 (*.f64 y (-.f64 x z)) (*.f64 y (-.f64 x z))))
(*.f64 y (-.f64 x z))
(*.f64 (*.f64 y (*.f64 (*.f64 y (*.f64 (-.f64 x z) (-.f64 x z))) (*.f64 (*.f64 y (-.f64 x z)) (*.f64 y (-.f64 x z))))) (/.f64 (/.f64 1 (*.f64 y (-.f64 x z))) (*.f64 (*.f64 y (-.f64 x z)) (*.f64 y (-.f64 x z)))))
(*.f64 y (-.f64 x z))
(/.f64 (*.f64 y (-.f64 x z)) 1)
(*.f64 y (-.f64 x z))
(/.f64 (*.f64 y (-.f64 x z)) (/.f64 (*.f64 y (-.f64 z x)) (*.f64 y (-.f64 z x))))
(*.f64 y (-.f64 x z))
(/.f64 (*.f64 y (-.f64 z x)) -1)
(*.f64 y (-.f64 x z))
(pow.f64 (*.f64 y (-.f64 x z)) 1)
(*.f64 y (-.f64 x z))
(neg.f64 (*.f64 y (-.f64 z x)))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 y (-.f64 (-.f64 x z) y)) 0)
(*.f64 y (-.f64 x (+.f64 y z)))
(+.f64 0 (*.f64 y (-.f64 (-.f64 x z) y)))
(*.f64 y (-.f64 x (+.f64 y z)))
(+.f64 1 (-.f64 (*.f64 y (-.f64 (-.f64 x z) y)) 1))
(*.f64 y (-.f64 x (+.f64 y z)))
(+.f64 (-.f64 -1 (*.f64 y (-.f64 z x))) (-.f64 1 (*.f64 y y)))
(*.f64 y (-.f64 x (+.f64 y z)))
(+.f64 (-.f64 -1 (*.f64 y (-.f64 z x))) (+.f64 (-.f64 1 (*.f64 y y)) 0))
(*.f64 y (-.f64 x (+.f64 y z)))
(+.f64 (-.f64 (*.f64 y (-.f64 x y)) 1) (-.f64 1 (*.f64 y z)))
(+.f64 (+.f64 (*.f64 y (-.f64 x y)) -1) (-.f64 1 (*.f64 y z)))
(+.f64 (*.f64 y (-.f64 x y)) (+.f64 -1 (-.f64 1 (*.f64 y z))))
(+.f64 -1 (+.f64 (-.f64 1 (*.f64 y z)) (*.f64 y (-.f64 x y))))
(+.f64 -1 (+.f64 (*.f64 y (-.f64 x y)) (-.f64 1 (*.f64 y z))))
(+.f64 (-.f64 (*.f64 y (-.f64 x y)) 1) (+.f64 (-.f64 1 (*.f64 y z)) 0))
(+.f64 (+.f64 (*.f64 y (-.f64 x y)) -1) (-.f64 1 (*.f64 y z)))
(+.f64 (*.f64 y (-.f64 x y)) (+.f64 -1 (-.f64 1 (*.f64 y z))))
(+.f64 -1 (+.f64 (-.f64 1 (*.f64 y z)) (*.f64 y (-.f64 x y))))
(+.f64 -1 (+.f64 (*.f64 y (-.f64 x y)) (-.f64 1 (*.f64 y z))))
(+.f64 (-.f64 1 (*.f64 y y)) (-.f64 -1 (*.f64 y (-.f64 z x))))
(*.f64 y (-.f64 x (+.f64 y z)))
(+.f64 (-.f64 (*.f64 y (-.f64 (-.f64 x z) y)) 1) 1)
(*.f64 y (-.f64 x (+.f64 y z)))
(+.f64 (-.f64 1 (*.f64 y z)) (-.f64 (*.f64 y (-.f64 x y)) 1))
(+.f64 (+.f64 (*.f64 y (-.f64 x y)) -1) (-.f64 1 (*.f64 y z)))
(+.f64 (*.f64 y (-.f64 x y)) (+.f64 -1 (-.f64 1 (*.f64 y z))))
(+.f64 -1 (+.f64 (-.f64 1 (*.f64 y z)) (*.f64 y (-.f64 x y))))
(+.f64 -1 (+.f64 (*.f64 y (-.f64 x y)) (-.f64 1 (*.f64 y z))))
(+.f64 (-.f64 -1 (*.f64 y y)) (-.f64 1 (*.f64 y (-.f64 z x))))
(*.f64 y (-.f64 x (+.f64 y z)))
(+.f64 (-.f64 -1 (*.f64 y y)) (+.f64 (-.f64 1 (*.f64 y (-.f64 z x))) 0))
(*.f64 y (-.f64 x (+.f64 y z)))
(+.f64 (-.f64 1 (*.f64 y (-.f64 z x))) (-.f64 -1 (*.f64 y y)))
(*.f64 y (-.f64 x (+.f64 y z)))
(+.f64 (-.f64 -1 (*.f64 y z)) (-.f64 1 (*.f64 y (-.f64 y x))))
(*.f64 y (-.f64 x (+.f64 y z)))
(+.f64 (-.f64 -1 (*.f64 y z)) (+.f64 (-.f64 1 (*.f64 y (-.f64 y x))) 0))
(*.f64 y (-.f64 x (+.f64 y z)))
(+.f64 (-.f64 1 (*.f64 y (-.f64 y x))) (-.f64 -1 (*.f64 y z)))
(*.f64 y (-.f64 x (+.f64 y z)))
(*.f64 y (-.f64 (-.f64 x z) y))
(*.f64 y (-.f64 x (+.f64 y z)))
(*.f64 y (*.f64 (-.f64 (-.f64 x z) y) 1))
(*.f64 y (-.f64 x (+.f64 y z)))
(*.f64 (*.f64 y y) (-.f64 (*.f64 (/.f64 1 y) (-.f64 x z)) 1))
(*.f64 (*.f64 y y) (+.f64 (*.f64 (-.f64 x z) (/.f64 1 y)) -1))
(*.f64 y (*.f64 y (+.f64 -1 (*.f64 (-.f64 x z) (/.f64 1 y)))))
(*.f64 (*.f64 y y) (-.f64 (*.f64 (/.f64 1 y) (-.f64 x z)) (/.f64 y y)))
(*.f64 (*.f64 y y) (-.f64 (*.f64 (-.f64 x z) (/.f64 1 y)) (/.f64 y y)))
(*.f64 y (*.f64 y (-.f64 (*.f64 (-.f64 x z) (/.f64 1 y)) (/.f64 y y))))
(*.f64 (*.f64 y (-.f64 (-.f64 x z) y)) 1)
(*.f64 y (-.f64 x (+.f64 y z)))
(*.f64 (*.f64 y (-.f64 (-.f64 x z) y)) (/.f64 (*.f64 y (-.f64 (-.f64 x z) y)) (*.f64 y (-.f64 (-.f64 x z) y))))
(*.f64 y (-.f64 x (+.f64 y z)))
(*.f64 1 (*.f64 y (-.f64 (-.f64 x z) y)))
(*.f64 y (-.f64 x (+.f64 y z)))
(*.f64 (*.f64 y (-.f64 y (-.f64 x z))) -1)
(*.f64 y (-.f64 x (+.f64 y z)))
(*.f64 (*.f64 y (*.f64 (-.f64 y (-.f64 x z)) (*.f64 y (-.f64 y (-.f64 x z))))) (/.f64 1 (*.f64 y (-.f64 (-.f64 x z) y))))
(*.f64 y (-.f64 x (+.f64 y z)))
(*.f64 (*.f64 y (*.f64 (-.f64 y (-.f64 x z)) (*.f64 y (-.f64 y (-.f64 x z))))) (*.f64 (/.f64 1 (*.f64 y (-.f64 (-.f64 x z) y))) 1))
(*.f64 y (-.f64 x (+.f64 y z)))
(*.f64 (-.f64 (-.f64 x z) y) y)
(*.f64 y (-.f64 x (+.f64 y z)))
(*.f64 (/.f64 1 (*.f64 y (-.f64 (-.f64 x z) y))) (*.f64 y (*.f64 (-.f64 y (-.f64 x z)) (*.f64 y (-.f64 y (-.f64 x z))))))
(*.f64 y (-.f64 x (+.f64 y z)))
(*.f64 (*.f64 (*.f64 y (-.f64 (-.f64 x z) y)) (*.f64 (*.f64 y (-.f64 (-.f64 x z) y)) (*.f64 y (*.f64 (-.f64 y (-.f64 x z)) (*.f64 y (-.f64 y (-.f64 x z))))))) (/.f64 (/.f64 1 (*.f64 y (-.f64 (-.f64 x z) y))) (*.f64 y (*.f64 (-.f64 y (-.f64 x z)) (*.f64 y (-.f64 y (-.f64 x z)))))))
(*.f64 y (-.f64 x (+.f64 y z)))
(/.f64 (*.f64 y (-.f64 (-.f64 x z) y)) 1)
(*.f64 y (-.f64 x (+.f64 y z)))
(/.f64 (*.f64 y (-.f64 (-.f64 x z) y)) (/.f64 (*.f64 y (-.f64 (-.f64 x z) y)) (*.f64 y (-.f64 (-.f64 x z) y))))
(*.f64 y (-.f64 x (+.f64 y z)))
(/.f64 (*.f64 y (-.f64 y (-.f64 x z))) -1)
(*.f64 y (-.f64 x (+.f64 y z)))
(pow.f64 (*.f64 y (-.f64 (-.f64 x z) y)) 1)
(*.f64 y (-.f64 x (+.f64 y z)))
(neg.f64 (*.f64 y (-.f64 y (-.f64 x z))))
(*.f64 y (-.f64 x (+.f64 y z)))

eval224.0ms (2.5%)

Compiler

Compiled 7346 to 1678 computations (77.2% saved)

prune134.0ms (1.5%)

Pruning

4 alts after pruning (4 fresh and 0 done)

PrunedKeptTotal
New4244428
Fresh000
Picked101
Done303
Total4284432
Error
0.0b
Counts
432 → 4
Alt Table
Click to see full alt table
StatusErrorProgram
0.0b
(-.f64 (*.f64 x y) (*.f64 y z))
0.0b
(*.f64 (-.f64 x z) y)
29.6b
(*.f64 z (neg.f64 y))
29.4b
(*.f64 y x)
Compiler

Compiled 31 to 20 computations (35.5% saved)

localize6.0ms (0.1%)

Compiler

Compiled 8 to 4 computations (50% saved)

localize8.0ms (0.1%)

Compiler

Compiled 11 to 5 computations (54.5% saved)

localize61.0ms (0.7%)

Local error

Found 1 expressions with local error:

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

Compiled 14 to 5 computations (64.3% saved)

series2.0ms (0%)

Counts
1 → 36
Calls

9 calls:

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

rewrite99.0ms (1.1%)

Algorithm
batch-egg-rewrite
Rules
1552×rational.json-5
1550×exponential.json-3
1550×rational.json-1
1550×rational.json-2
1550×rational.json-4
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0713
15913
220713
376513
4297613
Stop Event
node limit
Counts
1 → 9
Calls
Call 1
Inputs
(*.f64 (-.f64 x z) y)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (-.f64 x z) y) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (-.f64 x z) y))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (-.f64 x z) y) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (*.f64 (-.f64 x z) y)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 0 (-.f64 -1 (*.f64 (-.f64 x z) y))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 x z) y) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 x z) y) (/.f64 (*.f64 (-.f64 x z) y) (*.f64 (-.f64 x z) y)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (-.f64 x z) y) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (*.f64 (-.f64 x z) y)))))))

simplify257.0ms (2.9%)

Algorithm
egg-herbie
Rules
940×rational.json-simplify-111
766×rational.json-simplify-104
760×rational.json-simplify-2
604×rational.json-simplify-79
584×rational.json-simplify-73
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
030783
157633
2133633
3374633
41422633
53679633
65653633
77498633
Stop Event
node limit
Counts
45 → 16
Calls
Call 1
Inputs
(*.f64 -1 (*.f64 y z))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(*.f64 y x)
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(*.f64 -1 (*.f64 y z))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(*.f64 -1 (*.f64 y z))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 (-.f64 x z) y) 0)
(+.f64 0 (*.f64 (-.f64 x z) y))
(-.f64 (*.f64 (-.f64 x z) y) 0)
(-.f64 0 (neg.f64 (*.f64 (-.f64 x z) y)))
(-.f64 (-.f64 0 (-.f64 -1 (*.f64 (-.f64 x z) y))) 1)
(/.f64 (*.f64 (-.f64 x z) y) 1)
(/.f64 (*.f64 (-.f64 x z) y) (/.f64 (*.f64 (-.f64 x z) y) (*.f64 (-.f64 x z) y)))
(pow.f64 (*.f64 (-.f64 x z) y) 1)
(neg.f64 (neg.f64 (*.f64 (-.f64 x z) y)))
Outputs
(*.f64 -1 (*.f64 y z))
(*.f64 y (neg.f64 z))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y x)
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y x)
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y x)
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 -1 (*.f64 y z))
(*.f64 y (neg.f64 z))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 -1 (*.f64 y z))
(*.f64 y (neg.f64 z))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 (-.f64 x z) y) 0)
(*.f64 y (-.f64 x z))
(+.f64 0 (*.f64 (-.f64 x z) y))
(*.f64 y (-.f64 x z))
(-.f64 (*.f64 (-.f64 x z) y) 0)
(*.f64 y (-.f64 x z))
(-.f64 0 (neg.f64 (*.f64 (-.f64 x z) y)))
(*.f64 y (-.f64 x z))
(-.f64 (-.f64 0 (-.f64 -1 (*.f64 (-.f64 x z) y))) 1)
(*.f64 y (-.f64 x z))
(/.f64 (*.f64 (-.f64 x z) y) 1)
(*.f64 y (-.f64 x z))
(/.f64 (*.f64 (-.f64 x z) y) (/.f64 (*.f64 (-.f64 x z) y) (*.f64 (-.f64 x z) y)))
(*.f64 y (-.f64 x z))
(pow.f64 (*.f64 (-.f64 x z) y) 1)
(*.f64 y (-.f64 x z))
(neg.f64 (neg.f64 (*.f64 (-.f64 x z) y)))
(*.f64 y (-.f64 x z))

localize14.0ms (0.2%)

Local error

Found 1 expressions with local error:

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

Compiled 19 to 6 computations (68.4% saved)

eval8.0ms (0.1%)

Compiler

Compiled 325 to 119 computations (63.4% saved)

prune14.0ms (0.2%)

Pruning

4 alts after pruning (0 fresh and 4 done)

PrunedKeptTotal
New31031
Fresh000
Picked011
Done033
Total31435
Error
0.0b
Counts
35 → 4
Alt Table
Click to see full alt table
StatusErrorProgram
0.0b
(-.f64 (*.f64 x y) (*.f64 y z))
0.0b
(*.f64 (-.f64 x z) y)
29.6b
(*.f64 z (neg.f64 y))
29.4b
(*.f64 y x)
Compiler

Compiled 31 to 20 computations (35.5% saved)

regimes138.0ms (1.5%)

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

4 calls:

97.0ms
z
16.0ms
x
11.0ms
y
10.0ms
(+.f64 (-.f64 (-.f64 (*.f64 x y) (*.f64 y z)) (*.f64 y y)) (*.f64 y y))
Results
ErrorSegmentsBranch
0.0b1x
0.0b1y
0.0b1z
0.0b1(+.f64 (-.f64 (-.f64 (*.f64 x y) (*.f64 y z)) (*.f64 y y)) (*.f64 y y))
Compiler

Compiled 100 to 42 computations (58% saved)

regimes244.0ms (2.7%)

Accuracy

Total -46.4b remaining (-384.9%)

Threshold costs -46.4b (-384.9%)

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

3 calls:

191.0ms
z
31.0ms
y
20.0ms
x
Results
ErrorSegmentsBranch
12.9b3x
22.4b6y
12.1b3z
Compiler

Compiled 22 to 15 computations (31.8% saved)

bsearch156.0ms (1.7%)

Algorithm
binary-search
Steps
TimeLeftRight
126.0ms
8.752864202892103e-68
1.6495877584058657e-45
29.0ms
-4.327730352602404e+86
-1.8185825917620327e+82
Results
87.0msbody2048valid
44.0ms252×body256valid
8.0ms22×body1024valid
6.0ms23×body512valid
3.0msbody1024infinite
1.0msbody512infinite
Compiler

Compiled 309 to 223 computations (27.8% saved)

simplify5.0ms (0.1%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02067
Stop Event
done
saturated
Calls
Call 1
Inputs
(*.f64 (-.f64 x z) y)
(if (<=.f64 z -224999999999999996821519226785692881248176051384836026664772765703466786491641888768) (*.f64 z (neg.f64 y)) (if (<=.f64 z 4417117661945961/883423532389192164791648750371459257913741948437809479060803100646309888) (*.f64 y x) (*.f64 z (neg.f64 y))))
(*.f64 y x)
Outputs
(*.f64 (-.f64 x z) y)
(if (<=.f64 z -224999999999999996821519226785692881248176051384836026664772765703466786491641888768) (*.f64 z (neg.f64 y)) (if (<=.f64 z 4417117661945961/883423532389192164791648750371459257913741948437809479060803100646309888) (*.f64 y x) (*.f64 z (neg.f64 y))))
(*.f64 y x)
Compiler

Compiled 36 to 21 computations (41.7% saved)

soundness449.0ms (5%)

Algorithm
egg-herbie
Rules
1136×rational.json-simplify-47
1082×rational.json-simplify-41
958×rational.json-simplify-42
882×rational.json-simplify-2
856×rational.json-simplify-45
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01143
12037
22931
33925
44825
55025
01281137
13271137
27021137
333891137
Stop Event
node limit
saturated
Compiler

Compiled 112 to 40 computations (64.3% saved)

end118.0ms (1.3%)

Compiler

Compiled 30 to 14 computations (53.3% saved)

Profiling

Loading profile data...